用途:harness-planner 是 deep-research-agents 项目中 Planner 角色的选择流程,用于为自主续跑(autonomous continuation run)挑选下一个任务,并写出计划产物。提示词 agent/harness/planner-prompt.md 是契约,本技能描述的是方法。
主要能力与流程:
- 建立状态:运行 bash agent/init.sh 解析依赖闭包,确定真正未被阻塞的任务;读取 agent/harness/horizon.json,把其头部作为默认选择,偏离时需写明理由。
- 构建候选集:候选须满足 status 非 completed、depends_on 中所有 id 均 completed、不在提示词附加的 in-flight 排除列表、且推进 agent/vision.md 中至少一个 facet 或 outcome。若集合为空,正确输出是完整定义一个新功能。
- 评分:依次按愿景对齐、类别平衡(对照 agent/categories.json 权重,纠正最大偏差)、优先级(仅作平局裁决)。常见模式包括 ship 后锁定(用 eval 锁定刚交付的行为)与解除最广阻塞。
- 规模:一个任务一个 pull request,须在 agent/harness-config.json 的上限内;若超出则计划为拆分,所选任务为第一片,并在 alternatives_considered 中说明。
- 写可被打破的约束:execution_constraints 需可被 diff 证伪,例如“仅 src/lib/** 与 src/eval/** 可改”“无新依赖”“npm run verify 必须通过”“不得修改 hybrid search 权重”;principles 须引用 AGENTS.md、.agents/rules/ 或 agent/vision.md 的真实文本。
- 持久化:将计划 JSON 与叙述文件写入 agent/harness/artifacts.json 指定路径,再用新切片与每步理由更新 agent/harness/horizon.json。除此之外不写任何内容,不写源码、测试或 feature_list.json。
适用场景:作为 Planner persona 运行时,或需要决定自主续跑下一步做什么时。
限制:资料未提供具体安装命令、收费、平台与效果信息;使用依赖项目内既有文件与脚本。