DeepSeek Harness 人机命令与交互技巧

人类命令 vs 模型工具

dsh 有一个很多人用不上的能力:人类命令。

人类命令 模型工具
触发 你手动打/xxx 模型自己决定调用
面向 人 模型
进日志 不会成为模型消息 会进日志
平面 命令平面(UI 适配器 + 命令插件) 工具注册表

官方定义:

人类命令:以斜杠开头的指令,由面向人类的适配器通过ctx.commands 解释并执行,不会成为模型消息。它既不同于面向模型的工具,也不同于通过ctx.shell 执行 shell 命令。

命令平面:由 UI 适配器和命令插件负责的发现、解析、分发、取消与结果渲染机制。除非处理器另行改变持久领域,否则命令输出属于 UI 状态。

关键理解:命令输出是 UI 状态,不是会话内容。所以一条命令的结果不会污染模型上下文——这正是它该有的行为。

内置的人类命令

命令 作用
/goal 观察或更改当前目标(由dsh-command-goal 提供)
/plan 计划模式相关
plugin(子命令形式) 插件管理(用--profile plugin 选择)

命令平面带来的好处

  1. 零上下文成本:你手动触发,不占模型 token;
  2. 可取消:命令平面负责取消;
  3. 结果只到 UI:不污染会话。

交互技巧清单

技巧 效果
先/plan 再开工 少返工
用 restriction 收窄工具集 Agent 不会尝试被禁操作
用@ 引用会话(若客户端支持) 找回历史结论
长任务放后台 不阻塞
完成后归档会话 列表可扫读

事件层的拦截能力

除了命令,dsh 还有更底层的拦截点(如果你写插件):

想拦截 用什么
请求 agent/request(waterfall,须next())
工具执行 tools/pre-execute、tools/post-execute
轮次 agent/turn-stopping(serial,无next())
输入接纳 agent/pre-step(可改写或拒绝已领取消息)

不用插件也能受益的思路:让懂 dsh 的人写一个小插件做审计日志,你就有了完整的 Agent 行为审计能力。

https://www.wanxiangyundang.top/read/dsh-guide/commands

posted @ 2026-10-28 10:18  半抹灯芯  阅读(20)  评论(0)    收藏  举报