Agent Skill - 执行上下文记忆机制

📅 2026/7/2 3:01:52
Agent Skill - 执行上下文记忆机制
Agent Skill - 执行上下文记忆机制1. 关于 Agent Skill 执行上下文2. 为什么需要上下文记忆3. 如何实现上下文记忆3.1. Skill Registry最轻量立即可做3.2. Hook 系统需要内核支持4. 相关资料1. 关于 Agent Skill 执行上下文Agent Skill 执行上下文即技能在执行过程中必须感知的信息如当前执行的状态、步骤等一旦突然停止下次执行可以知道上一次执行状态和步骤确保重试不会造成脏数据等。2. 为什么需要上下文记忆Skill 本身是怎么做记忆是做过什么——两者配合才能完成真正的 Agent 行为。Skill 本质上是指令文件SKILL.md告诉 Agent 某类任务的标准化操作流程。但它本身是无状态的——就像一个空壳工具说明书。记忆对 Skill 的三个价值上下文延续 — 同一个 skill 多次使用时能引用之前的结论、数据、决策个性化适配 — 不同用户偏好不同比如你习惯飞书报告格式记忆了就不需要每次都指定状态追踪 — 一个完整任务可能分多轮完成先查日志 → 再分析 → 再写报告记忆串联这些步骤。3. 如何实现上下文记忆3.1. Skill Registry最轻量立即可做在 workspace 中维护一个 skill 状态文件每次 skill 执行前后自动读写{ my-skill-name: { last_run: 2026-07-01T19:00:0008:00, total_runs: 6, last_result: { records: 2011, users: 24, violations: 1632, top_risk_users: [you.wangmsxf.com, ke.peng01], feishu_doc: https://feishu.cn/docx/IXfcdCGczoz1ZyxnRG4cTJbEnE3 }, active_context: { pending_issues: [sudo -i not in whitelist, password plaintext], whitelist_count: 272 } } }在 SKILL.md 中增加一个步骤# 执行前 ### 1. 加载技能上下文 读取 skills/registry.json 中对应技能的 active_context了解上次遗留的问题和状态。 ## 执行后 ### 8. 保存技能上下文 将本次运行结果摘要更新到 skills/registry.json保留 pending_issues 供下次引用。3.2. Hook 系统需要内核支持借鉴 Claude Code 的 onActivate / onDeactivate在 Skill.md 中声明钩子---- name: my-skill-name context: fork hooks: onActivate: scripts/pre-flight.sh onDeactivate: scripts/post-flight.sh onActivateSubagent: true ---内核实现思路解析 SKILL.md frontmatter发现 hooks 字段onActivateskill 激活时自动执行预置脚本校验环境、准备数据、记录 traceonDeactivateskill 完成后执行清理写入结果、释放临时资源、更新 registrycontext: fork onActivateSubagent在隔离子 agent 中执行不污染主会话OpenClaw 中已有基础设施sessions_spawn → 对应 context: forkexec → 对应 onActivate/onDeactivate 脚本执行cron → 对应定时触发的 skill 执行需要在 skill 匹配层 加一个中间件解析 frontmatter 钩子并触发对应动作。4. 相关资料https://agentskills.io/home