人工干预与上下文修改
Memfit 的 Agent 执行过程不是黑盒。你可以在计划、工具调用、SKILL 执行、输出整理等阶段主动干预,让它停下来、改方向、补充约束,或调整后续上下文。
【配图:任务执行流,标注计划、Review、工具调用、观察结果、最终回复,以及可干预位置】
什么时候需要人为干预
出现这些情况时,不要等任务跑完:
| 现象 | 建议动作 |
|---|---|
| 计划里出现无关步骤 | 在 Review 中拒绝或要求修改计划。 |
| 工具参数范围过大 | 修改参数,缩小路径、目标、时间范围或数量。 |
| Agent 误解了任务目标 | 立即补充一句明确约束。 |
| 输出格式开始偏离 | 追加固定模板或字段要求。 |
| 上下文里混入无关资料 | 删除局部上下文,或把长期规则和临时资料分开。 |
在 Review 中干预
当 Agent 准备执行高影响操作时,Memfit 会根据配置触发 Review。Review 是最适合干预的节点,因为此时操作还没有真正执行。
你可以做三类动作:
| 动作 | 适合场景 |
|---|---|
| 允许 | 计划、工具、参数都符合预期。 |
| 拒绝 | 方向错误、风险过高、参数范围过大。 |
| 补充要求后继续 | 大方向正确,但需要限制边界或调整输出。 |
【配图:Review 面板,标注允许、拒绝、补充要求的位置】
补充要求示例:
可以继续,但只允许读取文件,不要修改文件。
扫描范围限制在 src/auth 和 src/session。
输出必须包含证据路径,不要给无法定位的泛泛建议。
修改全局上下文
全局上下文适合放“长期稳定、后续任务都要遵守”的规则。它会影响当前会话后续的 Agent 行为,也更容易形成稳定缓存。
适合放入全局上下文的内容:
- 团队编码规范
- 固定输出格式
- 项目背景和边界
- 安全合规要求
- 不允许执行的操作
【配图:全局上下文编辑入口,标注长期规则、项目背景、权限边界】
示例:
全局规则:
1. 所有代码审计结论必须给出文件路径和函数名。
2. 未经确认不要修改文件。
3. 安全风险需要按 High / Medium / Low 分级。
4. 输出中文,避免无证据推测。
全局上下文不要放频繁变化的大段日志、临时报错或一次性文件内容。这类内容会让后续任务变重,也会降低缓存稳定性。
修改部分上下文
部分上下文适合只影响当前任务或当前阶段。它可以是一次补充说明、一个局部文件、一段错误日志、一个临时目标。
适合放入部分上下文的内容:
| 内容 | 示例 |
|---|---|
| 本轮目标 | “这次只排查登录失败问题。” |
| 临时报错 | “以下是刚才的构建错误。” |
| 局部文件 | “只参考这个配置文件。” |
| 输出要求 | “本轮只输出修复步骤,不要改代码。” |
【配图:局部上下文编辑入口,标注本轮任务、临时日志、局部约束】
示例:
本轮只处理登录接口。
忽略支付和订单模块。
如果需要读取文件,优先看 routes/auth.ts、services/session.ts。
全局上下文与部分上下文怎么选
| 判断问题 | 选择 |
|---|---|
| 这条规则以后每次都要遵守吗? | 放全局上下文。 |
| 这条信息只对当前任务有用吗? | 放部分上下文。 |
| 它是否很大、很临时、经常变化? | 放部分上下文,用完移除。 |
| 它是否能帮助缓存稳定命中? | 放全局上下文,但保持精简。 |
一个实用原则:长期规则放全局,临时证据放局部。
干预执行中的任务
如果 Agent 已经进入执行过程,可以通过后续消息直接修正方向。写法要短、明确、可执行。
好的干预:
暂停当前方向。不要继续分析全项目。
改为只检查 auth middleware 的鉴权绕过风险。
先输出你准备读取的文件列表,等我确认后再继续。
不够好的干预:
你看着办,别跑偏。
干预后如何验证
干预完成后,看三件事:
- 下一轮计划是否采纳了你的新边界。
- 工具调用参数是否变小、变准。
- 最终输出是否按你指定的格式组织。