DSH入门

第 3 章 第一次任务:把需求说清楚

约 4 分钟 · 1,857 字 · 12 个小节

本章你会学会

  • 用“目标 + 输入 + 约束 + 验收”描述任务;
  • 让 Agent 先计划、再执行;
  • 检查工具调用和文件改动;
  • 给出有效反馈;
  • 用 present 交付最终文件。

3.1 好任务的四个要素

很多人觉得 Agent“不好用”,其实是因为任务说得太模糊。

一个好任务至少包含四件事:[1]

要素 回答什么问题 例子
目标 最终要得到什么? 一份 summary.md
输入 从哪里拿材料? notes/ 下的三篇文章
约束 不能做什么?有什么规则? 不改原文件;中文;保留链接
验收 怎么算完成? 三个标题都在;每篇 3–5 句;能打开

反例

帮我整理一下笔记。

问题:

  • 哪些笔记?
  • 整理成什么?
  • 能不能改原文件?
  • 什么算整理好?

正例

请阅读 notes/ 下的三篇 Markdown 文章,合并成一份 notes/summary.md。
要求:
1. 保留每篇的标题和原文链接;
2. 每篇写 3–5 句摘要;
3. 不要修改原文件;
4. 先给我一个执行计划,我确认后再写。
完成后告诉我你读了哪些文件、写了哪个文件,并检查 summary.md 是否存在。

区别不是“更长”,而是信息完整。


3.2 先计划,再执行

对稍微复杂一点的任务,建议先让 Agent 进入“计划”状态。

你可以直接说:

先不要改文件。请给我一个 3–5 步的计划,说明你准备读什么、写什么、怎么验证。

观察它的计划是否:

  • 覆盖了所有输入;
  • 说明了输出位置;
  • 包含验证步骤;
  • 没有偷偷扩大范围。

如果计划不对,先改计划,不要让它直接开干。


3.3 看工具调用

Agent 执行时,会显示工具卡片。你要重点看:

工具 你要关注什么
读文件 读的是不是正确的文件
写文件 写到了哪里,是否覆盖了原文件
运行命令 命令是否会删除/重置/推送
搜索网页 来源是否可靠
子代理 它派出去做了什么

一个实用习惯:

看到“写入/删除/覆盖/重置/推送”这类词,先停一下。


3.4 迭代:给具体反馈

Agent 第一版不完美很正常。有效反馈要具体:

模糊反馈

不太好,重写。

具体反馈

第二段太长了,压缩到 3 句以内。
保留原来的三个小标题,不要合并。
把原文链接放到每段末尾,不要放在开头。

具体反馈 = 指出位置 + 指出问题 + 给出标准。


3.5 验收:不要只看“完成了”

Agent 说“完成了”,不等于真的完成。你要检查:

  • 文件是否存在;
  • 内容是否符合要求;
  • 原文件有没有被改;
  • 链接是否可点;
  • 有没有遗漏输入;
  • 有没有引入不存在的事实。

可以要求它给出证据:

请列出你实际读取的文件、写入的文件,以及你用来验证的检查项。
不要只告诉我“已完成”。

3.6 交付:present 是什么

当任务产出是一个文件时,Agent 可能会调用 present。

present 的准确含义是:

把已经存在的文件声明为本次任务的最终交付物,让界面生成文件卡片,用户可以预览或用默认应用打开。

它:

  • 不创建文件;
  • 不上传文件;
  • 不复制文件内容;
  • 只记录路径和说明;
  • 文件内容不会进入模型上下文。

如果 Agent 直接说“文件在 notes/summary.md”,也可以;present 只是让交付更直观。


3.7 一个完整的第一次任务

第一步:准备

在工作区建:

notes/
  a.md
  b.md
  c.md

第二步:发任务

请阅读 notes/ 下的三篇文章,合并成 notes/summary.md。
要求:
1. 保留标题和原文链接;
2. 每篇 3–5 句摘要;
3. 不改原文件;
4. 先给计划,我确认后再执行;
5. 完成后检查 summary.md 是否存在,并告诉我你读了哪些文件。

第三步:看计划

确认它没有漏文件、没有要改原文件。

第四步:批准执行

观察工具卡片:读了三个文件,写了一个新文件。

第五步:验收

打开 summary.md,检查标题、链接、摘要长度。

第六步:迭代

如果第二篇太短,直接说:

第二篇摘要加到 4 句,保留原有链接,其他不动。

常见坑

  • 任务太大:一次只做一件可验收的事。
  • 没有验收标准:Agent 不知道什么算好。
  • 不看工具调用:它可能改了不该改的文件。
  • 只说“重写”:给具体位置和标准。
  • 把“完成”当“正确”:要检查证据。

小结

  • 好任务 = 目标 + 输入 + 约束 + 验收。
  • 复杂任务先计划,再执行。
  • 看工具卡片,尤其是写、删、跑命令。
  • 反馈要具体;验收要看证据。
  • present 是交付声明,不是上传。

第一部分练习

  1. 用“目标 + 输入 + 约束 + 验收”重写一个你最近想让 AI 做的任务。
  2. 在一个测试文件夹里,让 Agent 只读列出文件,并说明用了哪些工具。
  3. 让它生成一个 summary.md,然后检查原文件是否被改动。
  4. 用一句具体反馈让它修改摘要,而不是说“重做”。

参考

  1. DeepSeek Harness 快速开始
  2. DeepSeek Harness GitHub 仓库

链接均为公开来源;产品行为可能随版本变化。

↑