用途
这个技能在执行开始的那一刻,把隐含的意图变成明确、可追踪的产物。它创建一个轻量级的意图契约,在工作进行中监视范围漂移,并用简短的结算记录来结束每一个意图。
适用范围(重要)
这个技能仅用于编码任务,专为会修改可执行代码的实现类工作设计。
不要将它用于通用智能体活动,例如:
- 广泛研究
- 仅规划的对话
- 仅文档的工作
- 没有编码实现的操作/管理任务
对于琐碎的修改(例如简单的重命名或拼写修正),跳过完整的意图框架。
触发条件
在非平凡编码工作从规划转向执行时激活。常见线索包括:
- 用户说:“go ahead”、“implement this”、“let's start building”
- 智能体即将从讨论进入代码修改
工作流
阶段 1:意图捕获
在执行开始时,输出:
## Intent Frame #N
**Outcome:** [One sentence. What does done look like?]
**Approach:** [How we will implement it. Key decisions.]
**Constraints:** [Out-of-scope boundaries.]
**Success criteria:** [How we verify completion.]
**Estimated complexity:** [Small / Medium / Large]
规则:
- 每个字段保持 1-2 句话。
- 当已批准的计划或明确的继续指令已经覆盖了框架的目标、方法、约束和成功标准时,复用当前的批准即可。输出框架是为了可追溯性,然后继续。
- 仅当不存在当前批准、框架增加了实质性决策或假设、或者范围/约束发生变化时,才询问:“这是否准确描述了我们要做的事情?在我开始之前有什么需要调整的吗?”
- 在实质性决策未解决之前,不要继续推进。
阶段 2:意图监控
在执行期间,于自然边界处监控漂移:
- 在接触新区域/文件之前
- 在开始新的逻辑工作单元之前
- 当当前操作感觉偏离主题时
漂移示例:
- 在所述范围之外工作
- 没有明确转向就改变方法
- 约束之外的新功能/重构
- 解决与所述目标不同的问题
检测到时,输出:
## Intent Check #N
This looks like it may be moving outside the stated intent.
**Stated outcome:** [From active frame]
**Current action:** [What is happening]
**Question:** Is this a deliberate pivot or accidental scope creep?
如果用户已经指示了转向,就更新当前意图框架,并在持续约束下继续。否则询问这个明显的转向是否有意。如果不是,回到原始范围。
阶段 3:意图结算
当当前意图下的工作结束时,输出:
## Intent Resolution #N
**Outcome:** [Fulfilled / Partially fulfilled / Pivoted / Abandoned]
**What was delivered:** [Brief actual output]
**Pivots:** [Any acknowledged changes, or None]
**Open items:** [Remaining in-scope items, or None]
如果会话突然结束,结算是首选但可选的。
多意图会话
一个会话可以包含多个意图框架。
规则:
- 在开启下一个意图之前,先结算当前意图。
- 如果用户在任务中途改变方向,将当前意图结算为 Abandoned 或 Pivoted,然后开启新框架。
- 漂移检查始终针对当前活跃的框架。
- 在会话内按顺序编号框架(#1、#2……)。
- 持续约束会延续;框架本地选择不会。用户的禁止事项、安全/隐私限制、授权边界、仓库限制以及明确的“不要”指令持续有效,直到用户撤销它们。本地实现选择仅在新目标仍依赖它时才延续;否则重新陈述或询问。
Entire CLI 集成
Entire CLI:https://github.com/entireio/cli
当工具访问可用时,在激活时检测 Entire:
entire status 2>/dev/null
如果成功,且活跃主机适配器记录对话生命周期事件,就说明意图记录预计会出现在会话转录中。不要从 entire status 推断完整的转录覆盖;在依赖它进行 learning-aggregator --deep 之前,检查可用的会话/检查点状态。
如果不可用或失败,则静默继续。不要阻塞执行,也不要就安装问题进行纠缠。
Copilot/chat 回退:如果命令执行不可用,跳过检测并在聊天输出中继续相同的意图工作流。
意图框架如何变成学习信号
当活跃主机适配器捕获消息事件时,每个 Intent Frame 和 Intent Check 都会出现在 Entire 的会话转录中。按节奏,learning-aggregator --deep 可以读取可用的转录并提取:
- 被结算为 Abandoned 或 Pivoted 的框架 → 潜在的规划缺口
- 在相似上下文中反复触发的漂移信号 → 潜在的范围定义问题
- 由漂移检查检测到的约束违反 → 可提升为项目指令文件的模式
你不需要为此做任何特别的事情——意图块是结构化的(## Intent Frame #N、## Intent Check、## Intent Resolution),可以从转录中解析。
护栏
- 保持轻量;避免长篇大论。
- 不要在琐碎任务上过度触发。
- 不要对每一个小步骤都打断。
- 将已确认的转向视为有效。
- 保持精确的结构化块标题/字段以便解析。
与其他技能的互操作
将本技能用作非平凡编码工作的前端对齐层:
- plan-interview(可选,用于需求塑造)
- intent-framed-agent(执行契约 + 范围漂移监控)
- context-surfing(可选上下文质量监控,用于 Large、长时间运行或明确上下文敏感的执行)
- simplify-and-harden(完成后的质量/安全审查)
- self-improvement(捕获重复模式并提升为持久规则)
与 context-surfing 的关系
当 context-surfing 被激活时,两个技能在执行期间都处于活动状态。它们监控不同的失败模式:
- intent-framed-agent 监控范围漂移——智能体是否在做正确的事情?当工作移出所述目标时,它会触发结构化的 Intent Check。
- context-surfing 监控上下文质量漂移——智能体是否仍然有能力做好它?当智能体自身的连贯性下降(幻觉、矛盾、含糊其辞)时,它会触发。
它们是互补的,而不是冗余的。一个智能体可以完全在范围内,同时其上下文质量下降。反过来,范围漂移也可以发生在上下文质量完美的情况下。Intent Check 会与 context-surfing 的波监控同时触发。
优先级规则:如果两个技能同时触发(Intent Check 和 context-surfing 漂移退出同时发生),漂移退出优先。上下文退化会使范围检查不可靠——先解决上下文问题,然后在下一个会话中恢复范围监控。
节奏分离:Intent Check 在范围边界处触发——在接触新区域/文件之前、在开始新的逻辑工作单元之前、当当前操作感觉偏离主题时。context-surfing 的预提交锚点检查在产生副作用的动作时刻触发——特定的工具调用、写入、提交、提交级输出。不要在同一个节拍中同时运行两者:如果 Intent Check 刚刚触发并干净地解决,那么同一个工作单元内的下一个副作用动作不需要新的锚点检查——你已经重新着地了。
这个技能产出什么
- 意图框架产物——被 context-surfing 作为波锚点的一部分消费,并在漂移退出时逐字复制到交接文件中。
- 意图结算——标志任务完成,从而触发 simplify-and-harden。
- 漂移观察——如果范围漂移模式反复出现,可以作为学习记录到 self-improvement。
安装
gh skill install pskoett/pskoett-skills
gh skill install pskoett/pskoett-skills intent-framed-agent
使用 Agent Skills CLI 的回退方式:
npx skills add pskoett/pskoett-skills/skills/intent-framed-agent