Agents Observe
为 Claude Code 会话和多智能体运行提供实时可观测面板,让子代理、工具调用与 token 开销一目了然。
技能本身是薄封装:仅通过 cli.sh 调用本地 node 脚本,数据默认存本地 SQLite/日志,无外发凭证或隐匿上传迹象;但可观测性会捕获全部工具调用与完整 payload(含命令、文件内容)并落盘,敏感数据处置与用户确认机制未在 SKILL.md 中说明,stop/restart 等外部副作用无确认步骤,扣分至 15。
SKILL.md 指令自洽,明确退出码分支(health exit 1 提示 start)、禁止 -f 防挂起、debug 流程结构化;但依赖 Docker/Node/bash,未覆盖脚本缺失、node 不存在、CLAUDE_SESSION_ID 为空等异常输入,属'主路径可信但边界薄弱',静态上限内给 10。
命令清单清晰(view/stats/status/start/stop/restart/logs/debug),触发语义明确、适用 Claude Code 会话管理场景;但未声明不适用边界,无中文支持说明,多平台浏览器打开依赖环境判断有不确定性,给 9。
MIT 许可、package. 版本 0.9.12、release 工作流自动从 CHANGELOG 提取说明、README 详尽含故障排查;但发布者身份未经验证,维护责任与更新路径仅隐含于仓库,SKILL.md 自身无版本/变更记录,给 10。
核心任务(查看/管理观测服务器、打开仪表盘、诊断问题)指令完整可直接执行,边际价值明确;但静态评审无法验证输出实际可用性,效果承诺依赖未在本次范围评估的 observe_cli.mjs 与服务端,给 6。
仓库含测试配置、fresh-install 集成测试 harness 和 release CI,可审计材料较充分;但所选 skill 关键路径(cli.sh→observe_cli.mjs)未见专门测试覆盖,无第三方执行证据,静态上限内给 4。
- 本评审为纯静态源码评审,未执行任何脚本,所有评分置信度低。
- 观测系统会捕获完整工具调用 payload(含命令与文件内容)并存储在本地 SQLite,用户应知晓敏感信息落盘风险。
- 服务器依赖 Docker、Node 与 bash;若缺失这些依赖插件将无法正常加载。
- 发布者身份未经 FollowSkills 注册表验证,维护责任与更新路径仅隐含于仓库。
- stop/restart 等有外部副作用的命令在 SKILL.md 中无用户确认要求。
- SKILL.md 的目标脚本 observe_cli.mjs 位于 skill 目录之外(hooks/scripts/),其质量与安全不在本次评分范围内。
这个 Skill 能做什么,适合哪些场景?
Agents Observe 是一个实时可观测性仪表盘,用于监控 Claude Code 与 Codex 代理的会话。它通过 Claude Code hooks 捕获每个事件(工具调用、提示、子代理生命周期),经 CLI 脚本 POST 到基于 SQLite 的 API 服务器,再通过 WebSocket 推送到 React 仪表盘。用户可以实时查看完整的代理层级、展开任意事件的完整载荷、按代理或工具类型过滤,并对历史会话进行完整回放。第 0.9.7 版起还提供 token 用量与成本分解。整个服务以 Docker 容器运行,通过 /observe 技能统一管理。
安装为 Claude Code 插件后,hooks 在每个 Claude Code 事件触发时运行 observe_cli.mjs,把原始事件打包(含代理类别感知的元数据标志)并 POST 到服务器;服务器解析结构化字段(事件类型、工具名、代理 ID、父子关系)写入 SQLite,并转发给订阅该会话的 WebSocket 客户端。React 前端首次加载用 REST 拉取历史事件,之后靠 WebSocket 增量更新,客户端合并 PreToolUse 与 PostToolUse 为单行展示。/observe 技能通过 scripts/cli.sh 提供子命令:view(在浏览器打开当前会话)、stats(打开统计弹窗)、status/start/stop/restart(管理 Docker 服务器)、logs-server/logs-cli/logs-mcp(查看各日志)、debug(按顺序检查健康状态、Docker 日志、MCP 日志、CLI 日志并给出诊断建议)。
- 运行多代理并行任务的开发者,需要实时观察协调者派生的代码审查、测试、文档子代理各自在做什么
- 调试场景:某个子代理做了错误编辑或破坏性命令,需要按事件时间线回溯完整载荷
- 关注成本的用户想查看每个会话的 token 用量与成本分解
- 插件安装或事件采集出现问题时,用 /observe debug 自动诊断服务器健康、端口冲突、Docker 崩溃循环等
- 想在会话结束后浏览历史会话(带可读名称如 twinkly-hugging-dragon)并分析代理长期行为模式的团队
这个 Skill 有哪些优点和局限?
- 实时 WebSocket 推送,可看到 PreToolUse → PostToolUse 的完整工具调用及结果
- 展示完整代理层级,能看出哪个子代理由哪个父代理派生
- 支持完整会话回放、多维度过滤搜索、token 用量与成本统计
- 提供 /observe debug 一键式结构化诊断流程
- 升级插件自动保留 SQLite 数据库,旧版本数据会自动迁移
- 强依赖 Docker、Node.js 和 Bash,缺一插件即无法正常加载
- hooks 与 $CLAUDE_SESSION_ID 等机制绑定 Claude Code,移植到其他代理框架需要改造(Codex 支持仍在路线图中,尚未完成)
- 仓库未声明测试覆盖情况与支持的平台范围,除 README 截图与演示外缺少独立评测证据
- 服务器端口若 4981 被占用会自动改用空闲端口,URL 可能随之变化
- 仓库未列出 Topics,也未见 star 数等社区热度指标
如何安装这个 Skill?
插件方式(推荐):依次运行 claude plugin marketplace add simple10/agents-observe 和 claude plugin install agents-observe,之后启动 claude,插件会自动启动 MCP 服务器并捕获事件。前置条件:主机需安装 Docker、Node.js 和 Bash。独立安装(开发用):git clone https://github.com/simple10/agents-observe.git,安装 just 后运行 just start(Docker)或 just install && just dev(开发模式),并把 .claude/settings. 中的 hooks 复制到目标项目的 Claude Code 设置中。数据默认存于 ~/.claude/plugins/data/agents-observe-agents-observe/(插件)或 ~/.agents-observe/(独立运行),可用 AGENTS_OBSERVE_LOCAL_DATA_ROOT 环境变量重定向。
如何使用这个 Skill?
在 Claude Code 中使用斜杠命令:/observe status 查看服务器健康与版本;/observe view 在默认浏览器打开当前会话面板(默认 http://localhost:4981);/observe stats 打开当前会话的统计弹窗;/observe start|stop|restart 管理服务器;/observe logs-server|logs-cli|logs-mcp 查看日志;/observe debug 做完整诊断。独立部署可用 just health 检查、just test-event 发送测试事件验证链路,开发面板在 http://localhost:5174。
这个 Skill 与同类方案有什么区别?
作者在 README 中列出了相关项目:simple10/agent-super-spy(可本地或远程运行的完整代理可观测栈)、disler/claude-code-hooks-multi-agent-observability(本项目灵感来源)、matt1398/claude-devtools(针对 Claude 会话文件的本地可视化工具)。与它们相比,Agents Observe 的差异化在于插件化一键安装与实时 WebSocket 流式面板。