前言¶
DeepSeek Harness (DSH) 的设计理念是「一切皆插件」。在开发智能体时,追踪行为与成就(Achievements)通常需要编写重复逻辑或依赖特定环境。agpa-dsh-plugin 插件旨在解决跨工具共享成就引擎的问题,无需在 DSH 侧重新实现成就逻辑,而是通过桥接现有的 AGPA 引擎,实现统一的成就数据存储与跨代理触发。
插件概况¶
- 名称:agpa-dsh-plugin
- 作者:eiainano
- 许可证:MIT
- 核心价值:为 DSH 提供原生的
achievement_*工具外壳,直接调用 AGPA MCP 引擎,并自动从 DSH 会话事件中捕获数据。
核心功能¶
- 原生
achievement_*工具外壳
插件注册了 7 个原生工具,如achievement_stats。这些工具仅作为薄外壳,将参数原样转发至 AGPA MCP 服务器。 - MCP 桥接
插件包含一个零运行时依赖的 MCP-over-stdio 客户端(src/agpa-bridge.ts),用于连接 AGPA 引擎。 - 自动事件跟踪
订阅 DSH 的session/event,将file.create、file.write、command.run、tool.complete等事件规范化,并自动触发agpa-hook auto进行处理。 - 跨代理成就支持
由于 AGPA 引擎和数据存储(~/.agent-achievements)是共享的,在 DSH 中触发的成就也会在 Claude Code 等其他工具中生效。 - 模型工作流手册
插件附带skills/agpa/SKILL.md,指导模型何时进行跟踪、轮询或宣布解锁。
安装与启用¶
- 添加插件到配置文件
dsh plugin --profile web add agpa-dsh-plugin
- 安装模型工作流手册
cp -r ~/.dsh/profiles/web/node_modules/agpa-dsh-plugin/skills/agpa ~/.agents/skills/
- 验证安装
重启 DSH 后,检查配置树中是否出现agpa行:
dsh --profile web --dump-config | grep -A3 agpa
典型用法¶
- 获取 AGPA 统计信息:
achievement_stats tool_source=dsh
- 事件标记:
通过 DSH 触发的事件会被标记为tool_source:'dsh',存储在共享的~/.agent-achievements中。 - 关联键:
事件跟踪的关联键位于result.data.message.source.callId。
环境变量配置¶
插件依赖以下环境变量进行配置与调试:
AGPA_MCP_CMD:AGPA MCP 启动命令(默认:npx -y -p @eiainano/agpa@0.1.10 agpa-mcp)。AGPA_AUTOTRACK=1:启用自动事件跟踪,每个规范化事件会启动一个agpa-hook auto进程。AGPA_HOOK_CMD:覆盖 ingest 命令(默认:npx -y -p @eiainano/agpa@0.1.10 agpa-hook auto)。AGPA_DEBUG=1:打印调试信息(MCP stderr、事件类型、规范化载荷)。DSH_AGENTS_HOME:技能根目录(默认:~/.agents)。
适用场景与注意事项¶
- 运行环境:需要 Node.js 版本 >= 22。
- 当前状态:Phase 1(工具外壳 + 桥接)和 Phase 2(自动事件跟踪)已验证并实现;Phase 3(可选的客户端组件)尚未实现。
- 权限注意:插件以当前 DSH 进程的权限运行,安装前请检查源码与许可证。
- Node 版本管理:Managed Node 运行时版本更新可能会影响全局安装,需注意路径配置。
总结¶
该插件通过桥接 AGPA 引擎,实现了 DSH 与其他智能体工具之间的成就数据互通,减少了重复开发。更多细节与源码请访问:GitHub。