opencode-subagent-magazine
Hotakus · Hotakus/opencode-subagent-magazine
Cung cấp thanh bên TUI thời gian thực để giám sát trạng thái, lượng token sử dụng, chi phí và tiến độ của các sub-agent trong OpenCode.
OpenCode TUI 插件 · 实时子代理监控 · 侧边栏可视化 / Real-time Sub-Agent Monitor Sidebar Plugin for OpenCode TUI
Xem trước
Bạn có thể làm gì với nó
- Giám sát trạng thái, lượng token và chi phí sử dụng của sub-agent theo thời gian thực.
- Nhanh chóng truy cập thông tin chi tiết và cuộc trò chuyện của các sub-agent cụ thể.
- Quản lý và xóa các mục sub-agent bị kẹt hoặc đã hoàn thành.
Kiểm tra an toàn
Không thấy dấu hiệu rủi ro trong các file đã quét.
Quét tự động các file trong repo. Luôn xem lại code trước khi chạy.
Trích từ README
如果你觉得这个插件不错的话,可以帮我点点小星星 ⭐,谢谢!
对 Token 缓存可视化感兴趣吗?可以试试 opencode-visual-cache 这个插件!
1. 图片展示
折叠态 · 简洁概览👇
展开态 · 详细信息👇
2. 功能
- 实时状态:运行中(呼吸动画)、已完成、错误,彩色圆点一目了然
- Token & 费用追踪:每个子代理的 Token 消耗和费用汇总,标题栏全局显示
- 展开详情:点击展开查看 agent 类型、状态、耗时、Token、费用、模型、进度,字段值右对齐
- 一键进入会话:展开后点
→ 进入会话跳转子代理的完整对话 - 会话 ID 展示:展开明细显示子代理 Session ID,点击弹窗查看完整 ID 便于复制
- 手动标记完成:展开区右侧
- 标记完成按钮可手动终结卡住的僵尸条目;/subagent-clear-running批量清理 - 状态字段显示:展开区
状态: 运行中/已完成/错误,颜色与圆点一致,一目了然 - 折叠面板:标题栏点击折叠/展开,状态持久化,重启后保持
- 滚动回顶/回底:列表底部
↑ 回顶/↓ 回底按钮一键跳转到最新条目位置,方向随排序自适应 - 可配置排序:
/subagent-order支持「降序(最新在前)」和「升序(最早在前)」两种排列方式 - 翻页模式切换:
/subagent-scroll可选「滚轮翻页」或「点击 more 翻页」,解决侧边栏与全局滚动冲突 - TTL 自动清理:可配置数据保留期限(3/7/14/30 天/无期限),每次访问自动续期,过期自动清除
- 手动清除条目:
/subagent-clear-entries清除当前会话所有记录,防止历史条目扫描重建 - 语言适配:支持
/subagent-lang运行时切换中/英文,偏好持久化 - 可切换边框:
/subagent-border控制面板外边框显隐(默认隐藏),开启后与缓存统计面板风格统一 - 多实例安全:多开 TUI 时条目不再互相覆盖(原子合并写入)
- 漏事件兜底:周期性校正 + 历史扫描 + 发现轮询,掉事件的子代理也能恢复显示
- 条目显示开关:
/subagent-cost控制列表内条目费用(4 位小数,默认关;展开区始终显示);/subagent-time、/subagent-tokens控制耗时与 Token(默认开,保持原有显示) - 耗时格式:
/subagent-time-format可选 short(默认)/ decimal / clock / compact / seconds - 设置菜单:
/subagent-sections打开原生循环设置菜单(V2);/subagent-config查看当前设置摘要 - 斜杠命令:
/subagent-lang/subagent-max/subagent-order/subagent-scroll/subagent-ttl/subagent-clear-entries/subagent-session/subagent-version/subagent-clear-running/subagent-border/subagent-config/subagent-sections/subagent-cost/subagent-time/subagent-tokens/subagent-time-format动态配置
3. 安装
本插件同时支持 opencode 1.x 与 2.x。
3.1 opencode 2.x
opencode 2.x 的 TUI 插件由 cli.json 的 plugins 管理;添加条目后,下次启动 opencode 时会自动安装并加载。
创建或编辑 ~/.config/opencode/cli.json,在 plugins 数组中追加以下条目:
{
"plugins": [
{
"package": "opencode-subagent-magazine@latest",
"options": {
"enabled": true
}
}
]
}
若文件中已有其他插件或配置,只需在现有 plugins 数组末尾追加这个对象条目。
注意:不要使用
opencode plugin add安装本插件。该命令会把条目写入opencode.jsonc(用于 server 插件),而本插件是 TUI 插件,会导致 server 插件加载报错:Plugin must export a default definition with an id and an effect or setup function.如果已经用该命令安装过,请:
- 打开
~/.config/opencode/opencode.jsonc,从plugins数组中删除本插件条目- 按上述方式在
cli.json的plugins中声明- 重启 opencode
排障:若插件未生效,可清理插件缓存后重启。V2 缓存在
~/.cache/opencode/npm,V1 在~/.cache/opencode/packages。
3.2 opencode 1.x
方式一:命令安装(推荐)
在 OpenCode 中按 Ctrl + P 打开命令面板,搜索 install plugin,输入:
opencode-subagent-magazine@latest
回车即可完成安装与配置。
方式二:手动安装
- 安装插件
npm install -g opencode-subagent-magazine@latest
- 配置 TUI 插件 —— 创建或编辑
~/.config/opencode/tui.jsonc:
{
"$schema": "https://opencode.ai/tui.json",
"plugin": ["opencode-subagent-magazine@latest"]
}
3.3 重启 OpenCode
进入任意 session,侧边栏即可看到子代理监控面板。
4. 使用指南
4.1 斜杠命令
插件支持通过斜杠命令或命令面板(Ctrl + P)动态调整配置,所有设置即时生效并持久化:
| 命令 | 功能 | 使用方式 |
|---|---|---|
/subagent-lang | 切换显示语言 | 从列表选择中文或 English,界面即时切换,无需重启 |
/subagent-max | 调整最大可见条目数 | 输入数字(默认 10),控制面板最多显示多少个子代理条目 |
/subagent-order | 切换排序方式 | 选择「降序(最新在前)」或「升序(最早在前)」,即时重排并跳转到最新条目 |
/subagent-scroll | 切换翻页模式 | 选择「滚轮翻页」或「点击 more 翻页」,解决与全局滚动冲突 |
/subagent-ttl | 设置数据保留期限 | 选择 3 天 / 7 天 / 14 天 / 30 天 / 无期限,控制 KV 自动清理间隔 |
/subagent-clear-entries | 清除当前会话记录 | 确认后删除所有子代理记录,阻止扫描重建历史条目 |
/subagent-session | 查看当前会话 ID | 弹出当前 OpenCode 会话 ID |
/subagent-version | 查看插件版本 | 弹出当前插件版本号 |
/subagent-clear-running | 批量清理僵尸条目 | 一键将所有运行中的条目标记为完成,清理卡住的旧数据 |
/subagent-border | 开关面板边框 | 切换面板外边框显隐(默认隐藏),即时生效并持久化 |
/subagent-config | 查看设置摘要 | 弹窗列出语言、条目数、排序、翻页、保留期、边框与各显示开关的当前值 |
/subagent-sections | 打开设置菜单 | 原生选择列表逐项修改,修改后自动回到菜单(Esc 关闭) |
/subagent-cost | 开关条目费用 | 列表内条目费用显示(4 位小数,默认关;展开区始终显示) |
/subagent-time | 开关条目耗时 | 列表内耗时显示(默认开) |
/subagent-tokens | 开关条目 Token | 列表内 Token 显示(默认开) |
/subagent-time-format | 切换耗时格式 | short(默认 45.32s / 112m35s)/ decimal / clock / compact / seconds |
4.2 键盘 & 鼠标
| 操作 | 说明 |
|---|---|
| 点击标题栏 | 折叠 / 展开面板 |
| 点击条目行 | 展开 / 收起详情 |
滚轮 / 点击 ↑ more ↓ more | 翻页查看更多子代理(/subagent-scroll 切换翻页模式) |
点击 ↑ 回顶 / ↓ 回底 | 跳转到最新条目位置(方向随排序自适应) |
点击 → 进入会话 | 跳转子代理完整对话 |
点击 ses_xxx… ⎘ | 弹窗显示完整 Session ID,可手动复制 |
点击 - 标记完成 | 手动终结该条目(仅运行中时显示) |
4.3 状态颜色
| 颜色 | 含义 |
|---|---|
| 🟢 绿色 | 已完成 |
| 🟡 黄色(呼吸动画) | 运行中 |
| 🔴 红色 | 错误 |
5. 更新
由于 OpenCode 已知问题 #6774,插件缓存会锁死在首次安装时的版本,不会自动检测 npm 上的新版本。
更新步骤:
1. 清除 OpenCode 插件缓存
# Windows
Remove-Item -Recurse -Force "$env:USERPROFILE\.cache\opencode\packages\opencode-subagent-magazine@latest"
# macOS / Linux
rm -rf ~/.cache/opencode/packages/opencode-subagent-magazine@latest
2. 重新安装插件
在 OpenCode 中按 Ctrl + P → install plugin → opencode-subagent-magazine@latest → 回车
3. 重启 OpenCode
6. 语言设置
6.1 运行时切换(推荐)
在 TUI 中输入 /subagent-lang,从弹窗选择「中文」或「English」即可即时切换,无需重启。偏好会自动持久化,下次启动自动恢复。
6.2 自动检测
默认自动检测系统语言。若不符合预期,用 /subagent-lang 手动切换一次即可,偏好会被记住。
7. 兼容性
代码完全模型无关,支持所有 OpenCode 兼容的 AI 模型(DeepSeek / Claude / GPT 等)。 Token 数据和子代理信息均通过 OpenCode SDK 标准接口获取。
8. License
MIT