前言¶
DeepSeek Harness(DSH)采用插件化架构,允许开发者扩展其功能。在智能体开发过程中,调试特定步骤或重试已完成的操作是常见需求。dsh-session-rerun 旨在解决这一痛点,提供一种在不影响原始会话数据的前提下,检查历史步骤并重新执行的能力。
插件简介¶
这是一个 DeepSeek Harness 的 Web 插件,由用户 liuyangdongdong 维护。它主要用于检查和重放已完成的会话步骤,帮助开发者分析模型回复、工具调用结果以及执行过程中的耗时。
核心功能¶
- 会话时间线分组:按回合和步骤对持久会话时间线进行分组,便于梳理交互过程。
- 详细状态展示:显示模型回复、工具调用、技能使用、失败状态以及每一步的经过时间。
- 文件引用标记:在步骤右侧显示脚本和 Markdown 文件名的紧凑徽章,方便定位相关文件。
- 顶层步骤重放:在不修改源会话的情况下,在新会话中重放选定的顶层步骤。
- 子代理步骤重放:通过新主会话在原始工作区中重放选定的子代理步骤。新主会话仅重建委托调用,等待新子代理结果并继续执行。
安装与启用¶
安装插件需要使用 DeepSeek Harness 的命令行工具。
- 安装插件:
npx @deepseek-ai/dsh plugin --profile web add github:liuyangdongdong/dsh-session-rerun
- 启动 Web 界面:
npx @deepseek-ai/dsh web
- 安装或替换插件后,必须重启已运行的 Web 进程才能使插件生效。
典型用法¶
在 Web 界面中,插件会展示会话的历史步骤。开发者可以点击特定的步骤进行重放:
* 对于普通步骤,新代理将接收到选中步骤之前的持久历史记录和该步骤记录的用户输入。
* 对于子代理步骤,插件会创建新的主会话和子会话,子会话重放选中的步骤,主会话则重建委托调用并等待子会话结果。
适用场景与注意事项¶
适用场景¶
- 需要回溯已完成的会话并验证结果。
- 需要调整特定步骤的输入或参数。
- 需要分析工具调用的具体参数和返回值。
注意事项¶
- 数据安全:插件从不修改源会话,重放操作会生成全新的会话。
- 嵌套限制:故意不支持嵌套子代理重放。
- 步骤完整性:重放的步骤必须存在,并且拥有匹配的
step/end事件。 - 开发者预览:DeepSeek Harness 处于开发者预览阶段,对等依赖版本可能需要随上游发布而移动。
总结¶
dsh-session-rerun 为 DeepSeek Harness 用户提供了检查和重放历史会话步骤的实用工具。通过清晰的界面展示和灵活的重放机制,它有助于提升智能体开发和调试的效率。