Previously sageReloadMenu only set sidebar width when collapsed (64px). When expanded, the inline width was never restored, leaving the sidebar potentially stuck at collapsed width after menu rebuild. The menu text widgets (filler class with overflow:hidden) would clip labels to ~1 char. Now both collapsed (64px) and expanded (240px) states explicitly set sidebar.el.style.width and updateSidebarIcon after menu rebuild.
Dashboard for Sage
Sage 数据看板模块,基于 bricks-framework 的 ECharts 扩展控件实现。
功能
- 今日调用笔数和交易金额 - 每10秒自动刷新 llmusage 数据
- 用户总数 - 系统中注册用户数
- 当前并发用户数 - 近5分钟内有活跃记录的用户数
- Top 3 模型排名 - 按当天调用数量和交易金额排名
目录结构
dashboard_for_sage/
├── dashboard_for_sage/
│ ├── __init__.py
│ └── init.py # 模块注册
├── wwwroot/
│ ├── index.ui # 主看板页面
│ ├── menu.ui # 菜单
│ ├── api/
│ │ ├── get_today_usage.dspy # 今日用量API
│ │ ├── get_user_stats.dspy # 用户统计API
│ │ └── get_top_models.dspy # Top模型API
│ └── scripts/
│ └── dashboard_refresh.js # 10秒自动刷新脚本
├── pyproject.toml
└── build.sh
部署
cd ~/repos/dashboard_for_sage
git pull
bash build.sh
# 设置RBAC权限(在生产服务器上执行)
cd ~/repos/sage && git pull
./py3/bin/python load_path.py
# 重启Sage
./stop.sh && ./start.sh
访问地址
/dashboard_for_sage/index.ui
Description
Languages
Python
51%
CSS
31.1%
JavaScript
15.4%
Shell
2.5%