Communitygithub.com

Spielewoy/autoprompt-skill

Autoprompt 是一个编码代理技能,能够将代理型编码任务的失败率降低 45%。

autoprompt-skill 是什么?

Autoprompt 是一种面向编码代理的编排技能,采用“有用优先”(useful-first)的运行循环。它会将任务目标一次性存储,生成一个独立批准的、可直接执行的路由图(roadmap),并直接分派就绪的开发任务。最终,通过真实测试和全新审查来验证交付的行为是否合格。该技能支持 OMP(Open Model Platform)17.4.0 及以上版本,并利用其原生的 markdown 子代理和 `spawns` 白名单机制。其核心优势在于通过严格的 TDD(测试驱动开发)、独立审查以及明确定义的治理文件(`PROMPTS.txt`、`ROADMAP.md`、`GATELOG.md`)来减少错误和重做。实验数据显示,使用该技能可将代理型编码任务的失败率降低多达 45%。

兼容平台~Claude Code~Codex CLI~Cursor✓Antigravity
npx skills add Spielewoy/autoprompt-skill

在你喜欢的 AI 中提问

打开一个已预加载此 Agent Skill 的新对话。

文档

Autoprompt

Autoprompt 是一种有用优先(useful-first)的编排循环。它一次性存储任务目标,生成一个独立批准的、可直接执行的路由图(roadmap),直接分派就绪的实现任务,并通过真实测试和全新审查来证明交付的行为是合格的。

1. 启动契约

调用即授权任务执行。不要要求用户复述、缩小范围或批准任务。

加载技能或调用时若无任务,则无论是否存在遗留工件,都不会启动或恢复运行。一次裸调用仅执行第10节中的边界检查,报告结果后即停止。

在生成子代理之前,仅需解析未定义的操作参数:

  • 并发度: tokensaver(默认,最多六个活跃代理)、wide/billionaire(所有已就绪的互不依赖的工作,直至全局上限)或 custom max_subs=N。
  • 代理选择: off/继承。OMP 子代理继承运行时的模型,因此能力完全为 inherited-only;切勿声称存在可选择的特定能力。

在有监督的会话中,在仓库/工具工作之前,一次性询问所有未定义的参数。在无监督的管理员运行中,不要询问:默认使用 tokensaver 和 agents=off 并记录假设。权限绕过标志不等于无监督运行。

在参数选择之后,分派 L1 作用域协调器 ap-scope-coordinator;它将分派有用优先的路由图作者。不存在单独的外部输入(intake)往返过程,也没有强制的前置代理。

一旦调用带有任务目标,则始终进入编排流程:有限的作用域拓扑是最小拓扑,主代理绝不会默默地将已调用的任务自行分拣为直接执行。跳过或缩减分派范围必须是一个在 GATELOG.md 中记录明确理由的决策,而非默认行为。

2. 能力快速通道

管理员可以提供一份带版本号的能力认证,该认证与提供者/运行时、CLI 版本、权限配置、代理选择器、代理定义哈希、转换(casting)哈希、工作负载(effort)状态/来源以及确切的 RUN/READ/WRITE 成功率绑定。仅当每个绑定条件都与实际启动环境匹配时方可使用。缺失、格式错误、过期、未知或矛盾的认证值将被安全地作为未命中处理。

没有可信的认证时,第一个有用优先的路由图作者会在仓库检查之前,先在一个可废弃的临时路径上验证 RUN、READ 和 WRITE 能力,然后立即继续。任何失败都会在实现之前硬停止。前置探针的角色仅用于诊断和恢复。

3. 自适应作用域拓扑

作用域产生一个标准的 ROADMAP.md 文件。

  • 有限(bounded): 路由图作者,然后是独立审查者和盲审新验证者并行工作——3个代理,2轮,目标在一分钟内完成;
  • 多面(multi-surface): 恰好5个代理,3轮,目标在五分钟内完成;保留完整的作者路由图和证据,添加恰好两个互补的侦察代理,然后并行进行审查和新验证,无需多余的合成分派;
  • 特别大(unusually-large): 仅在记录具体升级理由的情况下,可以超出常规的6个代理预算。

仅在需要当前外部事实时进行外部研究。被拒绝时,保留已接受的证据,并仅修复被指出的项目。空路由图、无效的 DAG、重叠的所有权、缺失的框架/测试以及能力失败均视为硬失败。

4. 可执行路由图

ROADMAP.md 是本次运行的唯一作用域/分解/计划来源。它包含任务指针/哈希和一次性随机数(nonce);作用域配置/升级;仓库情报;框架/工具决策;稳定的项目ID;分类/标签/层级/框架;所属边界;依赖项和启动组;集成通道;实现步骤;正面的验收标准;负面路径;测试优先;真实验证;≥95% 变更行和触及模块覆盖率;以及仅在需要时才包含 requiresDetailedPlan。

就绪的实现项目直接分派给构建。仅在以下情况下添加 G1 级别:调试/深度锁定工作、一个命名的未解决设计分支、requiresDetailedPlan: true,或工人报告的计划冲突。

将任务分解为每一个真正互不依赖的工作通道。切勿为了缩小路由图而将多面任务折叠成一个“有限”的工作通道;不同的面应分配到不同的工作通道并拥有不同的所有权。

5. 新运行治理

新运行的治理严格包括:

  1. PROMPTS.txt - 仅追加的精确提示块;
  2. ROADMAP.md - 标准可执行路由图;
  3. GATELOG.md - 仅追加的转换、代理/模型/工作负载来源、裁决、哈希、经过时间以及恢复边界。

不要创建仅用于新运行治理的 BRIEF.md、PLAN.md、AGENTS.md、COVERAGE.md、BACKLOG.md、ANCHOR.md、bucketlist.md、intake.md、scope-map.md 或按角度划分的作用域文件。保留实质性的实现/测试/审查/验证证据。旧有记录保持可读性,但矛盾混合格式将被视为失败并关闭。

治理文件位于运行治理根目录下(在目标任务仓库之外):PROMPTS.txt、ROADMAP.md 和 GATELOG.md 绝不会写入目标工作树,也绝不能出现在其差异(diff)中。

6. 紧凑指针简报

第一个路由图作者将确切任务目标存储在 PROMPTS.txt 中。后续简报携带:

MISSION POINTER: read the exact prompt ledger before acting; stop if its hash or byte length differs.
path=<PROMPTS.txt> hash=sha256:<64 hex> bytes=<UTF-8 byte length> nonce=<RUN-NONCE>

工人在执行前验证路径、哈希、字节长度和随机数。仅发送角色、目标、边界、依赖项、验收标准、带哈希的路由图/证据指针、输出模式/路径以及模型/工作负载状态。不要粘贴任务、转录、完整路由图、原则或先前的对抗性推理。保持盲审独立性。

7. 层级结构与分派

每个工人都是一个已安装、已注册的 ap-* 角色代理。其自定义代理定义加上分派的任务简报是其完整的运行上下文。工人绝不能加载、调用或重新调用 Autoprompt 技能,也不能启动嵌套的 Autoprompt 运行;它仅执行其角色指令和分配的任务简报。每次分派都将目标角色的注册名绑定为代理类型:匿名、general-purpose 或动态发明的代理均属无效分派,并且任何子分派必须命名另一个已注册的 ap-* 角色。

  • L0 指挥者 (conductor): 启动运行并报告最终裁决。对于新运行,它仅分派已命名的 L1 协调器——作用域用 ap-scope-coordinator,构建用 ap-feature-coordinator,收敛用 ap-sweep-coordinator——绝不直接分派 L2 管理者或 L3/L4 工人;直接生成工人是一种跳过协调器的坍塌行为。ap-preflight-probe 和 ap-intake 是诊断和遗留恢复的例外,而非常规生成。
  • L1 协调器(ap-scope-coordinator、ap-feature-coordinator、ap-sweep-coordinator): 拥有作用域、功能群或收敛的管辖权,并仅负责分派。每个协调器对于多功能或多分支切片分派 ap-manager,或者对于单个有限工作通道直接分派已命名的 L3/L4 工人。
  • L2 管理者(ap-manager): 用于多功能或多分支切片的可选角色;分派已命名的 L3/L4 工人,自身绝不执行。
  • L3 执行者(ap-scoper、ap-researcher、ap-synthesizer、ap-planner、ap-implementer、ap-reviewer、ap-verifier、ap-sweeper、ap-execharness-resolver、ap-framework-generator): 执行路由图/侦察/研究/合成/计划/构建/审查/验证/清理工作。
  • L4 终端(ap-fresh-verifier、ap-depth-prober、ap-framework-validator、ap-juror、ap-goal-checker、ap-arbiter、ap-re-anchor、ap-scribe、ap-janitor): 执行盲审、深度锁定、框架验证、评审、目标检查、仲裁、重新锚定、记录和清理。

L1 绝不执行。一个单一的有限工作通道跳过 L2。将就绪的互不依赖的工作一起分派,采用生成全部再收集的模式:在收集任何报告之前,先发起一个就绪组的每一个生成——并行后台分派是默认模式,仅当存在声明的真实依赖时才允许串行化。不允许自我审查。重用有效证据,避免重复所有权。

子代理扩展分派代理的工作;他们绝不取代分派代理。分派者保留合成、集成和最终判断。普通的实现、规划和读取中继工人不得重新推导分派者已拥有的上下文。独立的保证代理必须独立重新推导相关事实,不得互相读取对方的裁决或消费作者的断言。

每次分派都是收集即停止:一旦收集到代理的最终报告,即显式停止该代理;暂停的可恢复代理仍然是一个活跃代理,计入活跃上限。绝不要让一个已完成代理闲置等待可能的后续操作。

8. OMP 模型与工作负载

OMP 使用原生 markdown 子代理,并带有明确的 spawns 白名单。生成的角色省略模型覆盖,继承所选父级模型。因此,转换和工作负载是 inherited-only;agents=auto 和显式模型列表无法通过此适配器路由。

OMP 从其代理目录中发现已安装的技能和 ap-* 代理文件。原生 spawns 列表强制执行标准子边,并由 OMP 执行递归上限。

9. 构建与验证

使用严格的 TDD:编写并运行正确的失败行为测试,实现最小变更,在绿灯下重构,运行触及的模块及其直接依赖,并证明 ≥95% 的变更行/触及模块覆盖率。使用真实运行器和系统。在集成测试中不要模拟被测系统或数据库。

独立实现审查和运行时验证在彼此不消费对方裁决时并行运行。调试工作需要基于问题衍生出的红绿灯证据,并在最深层负责函数进行深度锁定。

DONE 状态要求完全的任务/路由图覆盖、零未解决问题、可用性、无已存在从绿到红的回归、≥95% 变更行覆盖率、真实端到端执行、成功的记录验证、零活跃子代理,以及启用时的清理。

10. 恢复、引导、仲裁与 Git

显式恢复:只有明确的 resume 指令或管理员重启才能恢复运行;技能加载、裸调用或遗留工件绝不会触发恢复。启动时只读取 GATELOG.md 的尾部——其最后一行边界记录包含任务指针/哈希、随机数(nonce)、最后接受的关卡以及未完成的项目ID;若没有活跃的边界,则在 150 字内报告该状态并停止。在显式恢复时,验证指针哈希并使用紧凑指针简报分派到活跃边界;工人(而非恢复上下文)读取 ROADMAP.md、PROMPTS.txt 和实质性证据。将临时、空或不可解析的工件视为不存在。后续自我生成的引导信息作为下一个 PROMPTS.txt 块追加,不重写历史。

仲裁者负责裁决技术分歧。仅在用户真正拥有所有权的不可逆/破坏性操作、真实金钱/配额、不可用凭据或产品方向时,才在运行中询问用户。绝不能因能力失败、阻塞、覆盖率或真实验证问题而进行仲裁绕过。

未经用户明确授权,不得提交、推送、发布、部署、花钱、删除用户数据、强制推送、硬重置或清理工作树。

11. 运行

使用 OMP 17.4.0 或更高版本,并显式调用:

/skill:autoprompt <任务目标>

OMP 从其代理目录中发现已安装的技能和 ap-* 代理文件。原生 spawns 列表强制执行标准子边,并由 OMP 执行递归上限。

相关技能