资讯动态

自改进 Agent 技能解析:Farm 仓库 self-improving-agent 的多记忆架构与自我进化闭环

发布时间:2026/10/13 16:09:21 来源:尧图企业网站定制
前端构建构建工具开发工具【免费下载链接】farmExtremely fast Vite-compatible web build tool written in Rust项目地址https://gitcode.com/gh_mirrors/fa/farm点击查看免费下载本篇技术指南以 Farm 开源仓库.claude/skills/self-improving-agent/SKILL.md中的 self-improving-agent 技能文档为核心系统讲解如何为 Claude Code 类 AI 编码 Agent 构建一套从每次交互中学习的通用自改进系统。读完本文你将掌握多记忆架构语义 / 情景 / 工作记忆的设计原理、四阶段自改进流程、hooks 自动触发机制、进化标记与自我修正的落地写法并能在本地 Claude Code 环境中完成整套技能的安装与配置。一、技能定位一套通用型自我进化系统self-improving-agent 不是只针对某种特定任务如 PRD 编写的单点优化工具而是一套从所有技能经验中学习的通用系统。其 frontmatter 元信息见 SKILL.md给出了它的完整定义nameself-improving-agentdescription基于多记忆架构语义 情景 工作记忆持续进化代码库的通用自改进 Agent通过 hooks 在技能完成 / 出错时自动触发自我修正allowed-toolsRead, Write, Edit, Bash, Grep, Glob, WebSearch即该技能运行时允许调用的工具集合metadata.hooks定义了before_start、after_complete、on_error三组生命周期钩子分别由session-logger自动与create-pr需确认等触发器响应。该技能实现了一条完整的反馈闭环核心能力包括多记忆架构Semantic Memory语义记忆 Episodic Memory情景记忆 Working Memory工作记忆自我修正检测并修复技能指导中的错误自我验证周期性校验技能内容的准确性Hooks 集成在技能事件before_start、after_complete、on_error上自动触发进化标记带有来源归因的可追溯变更记录。二、设计的研究基础从 2025 年终身学习研究到工程实践SKILL.md 明确说明该技能设计参考了 2025 年前后关于 LLM Agent 记忆机制与终身学习的公开研究并将研究洞见直接映射为工程能力研究主题核心洞见在本技能中的应用SimpleMem高效终身记忆面向 LLM Agent 的高效终身记忆模式积累系统pattern accumulation多记忆机制综述Semantic Episodic语义记忆与情景记忆互补世界知识规则 具体经验事例双通道存储终身学习连续任务流学习在持续任务流中不断学习从每一次技能使用中学习Evo-Memory测试时终身学习测试/运行时的实时适应实时调整与自我修正需要说明的是这些研究仅作为设计思路的来源文章正文以仓库内实际实现为准该技能真正可复用的价值在于把终身学习这一抽象概念落地为可执行的目录结构、JSON/YAML 数据模板和 hooks 脚本。三、自改进闭环总览整个系统围绕一个闭环运转SKILL.md 给出了完整的架构图┌─────────────────────────────────────────────────────────────────┐ │ UNIVERSAL SELF-IMPROVEMENT │ ├─────────────────────────────────────────────────────────────────┤ │ │ │ Skill Event → Extract Experience → Abstract Pattern → Update │ │ │ │ │ │ │ │ ▼ ▼ ▼ ▼ │ │ ┌─────────────────────────────────────────────────────┐ │ │ │ MULTI-MEMORY SYSTEM │ │ │ ├─────────────────────────────────────────────────────┤ │ │ │ Semantic Memory │ Episodic Memory │ Working Memory │ │ │ │ (Patterns/Rules) │ (Experiences) │ (Current) │ │ │ │ memory/semantic/ │ memory/episodic/ │ memory/working/│ │ │ └─────────────────────────────────────────────────────┘ │ │ │ │ ┌─────────────────────────────────────────────────────┐ │ │ │ FEEDBACK LOOP │ │ │ │ User Feedback → Confidence Update → Pattern Adapt │ │ │ └─────────────────────────────────────────────────────┘ │ │ │ └─────────────────────────────────────────────────────────────────┘其数据流可概括为技能事件发生 → 提取经验 → 抽象为模式 → 更新技能 → 整合记忆 → 收集用户反馈 → 更新置信度 → 调整模式形成持续进化的环路。配套的 references/appendix.md 还给出了自动工作流集成示意任意技能运行 → 工作流编排器workflow-orchestrator→ 后台运行 self-improving-agent → 以先询问模式触发 create-pr → 自动记录 session-logger。四、何时激活自动触发与手动触发双通道4.1 自动触发通过 hooks技能事件由 hooks 自动捕获详见 SKILL.md事件触发器动作before_start任意技能启动记录会话开始after_complete任意技能完成提取模式、更新技能on_errorBash 返回非零退出码捕获错误上下文触发自我修正4.2 手动触发当自动链路未命中时可以通过自然语言显式触发支持中英文指令自我进化、self-improve、从经验中学习分析今天的经验、总结教训直接请求改进某个具体技能。4.3 进化优先级矩阵并非所有新知识都值得立即写入技能文件。SKILL.md 提供了一张优先级矩阵用于判断出现可复用的新知识时该更新谁、以什么优先级更新触发器目标技能优先级动作发现新的 PRD 模式prd-planner高加入质量检查清单架构取舍得到澄清architecting-solutions高加入决策模式学到 API 设计规则api-designer高更新模板发现调试修复方法debugger高加入反模式清单评审清单存在缺口code-reviewer高新增清单项性能 / 安全洞见performance-engineer、security-auditor高加入模式库UI/UX 规格问题prd-planner、architecting-solutions高补充视觉规格要求React / 状态模式debugger、refactoring-specialist中加入模式库测试策略改进test-automator、qa-expert中更新方法CI/部署修复deployment-engineer中加入故障排查该矩阵的价值在于只有可复用的新知识才触发进化并且明确写入目标技能文件的具体章节质量清单、决策模式、反模式等避免无差别的全局扩散。五、多记忆架构语义、情景与工作记忆多记忆架构是整个技能系统的存储基石。三种记忆各司其职语义记忆沉淀可跨场景复用的抽象规则情景记忆保存具体发生了什么工作记忆承载当前会话的即时上下文。5.1 语义记忆Semantic Memory存储可跨上下文复用的抽象模式与规则主文件为memory/semantic-patterns.json。SKILL.md 给出了标准结构{ patterns: { pattern_id: { id: pat-2025-01-11-001, name: Pattern Name, source: user_feedback|implementation_review|retrospective, confidence: 0.95, applications: 5, created: 2025-01-11, category: prd_structure|react_patterns|async_patterns|..., pattern: One-line summary, problem: What problem does this solve?, solution: { ... }, quality_rules: [ ... ], target_skills: [ ... ] } } }每个 pattern 记录五个关键维度来源用户反馈 / 实现评审 / 复盘、置信度confidence01、应用次数applications、问题-解决方案对以及目标技能列表。这使每条经验都可以被追溯、量化和定向推送。在 Farm 仓库中该文件已实际落地为 .claude/skills/self-improving-agent/memory/semantic-patterns.json当前包含10 条已沉淀的模式meta 中total_patterns: 10、version: 1.0.0、last_updated: 2025-01-12覆盖 8 个类别prd_structure、prd_quality、react_patterns、async_patterns、ui_patterns、architecture、development、debugging。举几个真实示例prd_document_separation置信度 0.95复杂 PRD 应拆分为{name}-notes.md思考过程、{name}-task-plan.md项目追踪、{name}-prd.md产品需求、{name}-tech.md技术设计四个文件各司其职、避免单文件过长state_monitoring_over_callbacks置信度 0.90副作用触发优先采用直接状态监控如usePrevioususeEffect检测状态变化而非层层透传的回调链回调仅用于跨组件边界state_machine_over_booleans置信度 0.85多阶段异步操作用状态机表达Idle / Waiting / Running而非布尔标志以避免竞态条件measurable_success_criteria置信度 0.90验收标准必须包含具体数值与时延如95 分位 API 响应 500ms以支持可验证性click_time_vs_open_time_computation置信度 0.85可变状态应在动作时刻计算而非渲染/初始化时刻避免陈旧快照。这些文件本身就是技能已被该 Agent 使用并沉淀经验的实证读者可以直接打开查看完整字段写法作为新增 pattern 的参照。5.2 情景记忆Episodic Memory存储具体经验与发生过程按日期 技能命名按年分目录组织memory/episodic/ ├── 2025/ │ ├── 2025-01-11-prd-creation.json │ ├── 2025-01-11-debug-session.json │ └── 2025-01-12-refactoring.json单条 episode 的 JSON 结构以 debugger 技能为例如下{ id: ep-2025-01-11-001, timestamp: 2025-01-11T10:30:00Z, skill: debugger, situation: User reported data not refreshing after form submission, root_cause: Empty callback in onRefresh prop, solution: Implement actual refresh logic in callback, lesson: Always verify callbacks are not empty functions, related_pattern: callback_verification, user_feedback: { rating: 8, comments: This was exactly the issue } }情景记忆的关键设计是episode 与 pattern 通过related_pattern字段建立关联具体经验是抽象模式的证据样本模式库则是经验的总结论。用户反馈rating comments也会直接写入 episode作为后续置信度调整的输入。5.3 工作记忆Working Memory承载当前会话的即时上下文memory/working/ ├── current_session.json # 当前会话活动数据 ├── last_error.json # 用于自我修正的错误上下文 └── session_end.json # 会话结束标记其中last_error.json是自我修正链路的输入源当 Bash 返回非零退出码时on_error 钩子把错误上下文写入该文件供修正流程读取定位是哪条技能指导导致了失败。六、自改进四阶段流程SKILL.md 将整个学习过程划分为四个可执行的阶段见 SKILL.md。Phase 1经验提取Experience Extraction任意技能完成后按固定模板提取结构化经验What happened: skill_used: {which skill} task: {what was being done} outcome: {success|partial|failure} Key Insights: what_went_well: [what worked] what_went_wrong: [what didnt work] root_cause: {underlying issue if applicable} User Feedback: rating: {1-10 if provided} comments: {specific feedback}Phase 2模式抽象Pattern Abstraction把具体经验转化为可复用模式SKILL.md 给出了映射示例具体经验抽象模式目标技能用户忘了保存 PRD 笔记始终把思路持久化到文件prd-planner代码评审漏掉了 SQL 注入新增安全清单项code-reviewer回调是空的没有生效校验回调实现debuggerNet APY 位置表述含糊UI 规格需给出精确的相对位置prd-planner抽象规则决定模式提升到什么等级、写入哪个章节If experience_repeats 3 times: pattern_level: critical action: Add to skills Critical Mistakes section If solution_was_effective: pattern_level: best_practice action: Add to skills Best Practices section If user_rating 7: pattern_level: strength action: Reinforce this approach If user_rating 4: pattern_level: weakness action: Add to What to Avoid section注意抽象规则的四个判断维度重复次数 ≥ 3升级为关键错误方案有效沉淀为最佳实践用户评分决定是强化还是规避。这避免了单次偶发经验过度泛化的问题。Phase 3技能更新Skill Updates更新技能文件时必须携带进化标记evolution markers保证每一次变更都可溯源!-- Evolution: 2025-01-12 | source: ep-2025-01-12-001 | skill: debugger -- ## Pattern Added (2025-01-12) **Pattern**: Always verify callbacks are not empty functions **Source**: Episode ep-2025-01-12-001 **Confidence**: 0.95 ### Updated Checklist - [ ] Verify all callbacks have implementations - [ ] Test callback execution paths当修复的是错误指导时使用修正标记correction markers必须记录之前是什么、为什么修正!-- Correction: 2025-01-12 | was: Use callback chain | reason: caused stale refresh -- ## Corrected Guidance Use direct state monitoring instead of callback chains: typescript // ✅ Do: Direct state monitoring const prevPendingCount usePrevious(pendingCount);仓库配套提供了可直接套用的模板文件[templates/pattern-template.md](https://link.gitcode.com/i/d54768983c653c1d6aa5ee7150a48b8f)新增模式名称 / 上下文 / 指导 / 示例 / 置信度与 [templates/correction-template.md](https://link.gitcode.com/i/bf7b09d7ea9306e8a49242b93dbaf5f9)修正问题摘要 / 旧指导 / 修正指导 / 根因 / 后续动作。 ### Phase 4记忆整合Memory Consolidation 四步收尾动作 1. 更新语义记忆memory/semantic-patterns.json 2. 存储情景记忆memory/episodic/YYYY-MM-DD-{skill}.json 3. 基于应用次数与反馈更新模式置信度 4. 淘汰过期模式低置信度、近期无应用。 ## 七、自我修正Self-Correctionon_error 钩子 自我修正链路由 on_error 钩子驱动见 [SKILL.md](https://link.gitcode.com/i/67167f79592ac43982615e1405e28a0c#L272-L313)触发条件包括 - Bash 命令返回非零退出码 - 按技能指导操作后测试失败 - 用户反馈指导产生了错误结果。 标准修正工作流为四步Detect ErrorCapture error context from working/last_error.jsonIdentify which skill guidance was followedVerify Root CauseWas the skill guidance incorrect?Was the guidance misinterpreted?Was the guidance incomplete?Apply CorrectionUpdate skill file with corrected guidanceAdd correction marker with reasonUpdate related patterns in semantic memoryValidate FixTest the corrected guidanceAsk user to verify一个完整示例见 [SKILL.md](https://link.gitcode.com/i/67167f79592ac43982615e1405e28a0c#L303-L313) markdown !-- Correction: 2025-01-12 | was: useMemo for claimable ids | reason: stale data at click time -- ## Self-Correction: Click-Time Computation **Issue**: Using useMemo for claimable IDs caused stale data **Fix**: Compute at click time for always-fresh data **Pattern**: click_time_vs_open_time_computation值得注意的设计细节在 frontmatter 注释中SKILL.mdon_error 钩子刻意只把错误记入会话日志避免无限递归——自我修正的实际动作由其他技能debugger、code-reviewer完成自己的工作来触发形成有界的修正回路而非自循环。八、自我验证Self-Validation周期性验证技能准确性时使用 references/appendix.md 中的验证报告模板核心检查项为示例能编译或运行检查清单与当前仓库约定一致外部引用仍然有效没有重复或冲突的指导。仓库同时提供了轻量版模板 templates/validation-template.md日期 / 范围 / 检查项 / 发现 / 动作与 appendix 中的完整报告模板按需选用。九、Hooks 集成在 Claude Code 设置中接线自动触发的落地依赖 Claude Code 的 hooks 机制。将以下配置加入本地设置文件~/.claude/settings.json见 SKILL.md{ hooks: { PreToolUse: [ { matcher: Bash|Write|Edit, hooks: [ { type: command, command: bash ${SKILLS_DIR}/self-improving-agent/hooks/pre-tool.sh \$TOOL_NAME\ \$TOOL_INPUT\ } ] } ], PostToolUse: [ { matcher: Bash, hooks: [ { type: command, command: bash ${SKILLS_DIR}/self-improving-agent/hooks/post-bash.sh \$TOOL_OUTPUT\ \$EXIT_CODE\ } ] } ], Stop: [ { matcher: , hooks: [ { type: command, command: bash ${SKILLS_DIR}/self-improving-agent/hooks/session-end.sh } ] } ] } }使用前将${SKILLS_DIR}替换为你的实际 skills 路径。三个钩子的职责分别是PreToolUse监听 Bash/Write/Edit 工具调用前的输入、PostToolUse监听 Bash 执行后的输出与退出码、Stop在会话结束时标记结束。这套配置对应的脚本在 Farm 仓库中已完整实现位于 .claude/skills/self-improving-agent/hooks/pre-tool.sh接收工具名与输入参数向 stderr 输出[self-improving-agent] PreToolUse: {tool_name}若有输入则追加输出Input: {tool_input}post-bash.sh接收工具输出与退出码输出[self-improving-agent] PostToolUse: exit{exit_code}并透传输出内容session-end.sh输出[self-improving-agent] Session ended会话结束标记。三个脚本均使用#!/usr/bin/env bashset -euo pipefail开头采用${1:-默认值}方式兜底缺参保证在工具链未传参数时也能安全退出——这也是把它们接入自动钩子前值得注意的健壮性细节。十、最佳实践DO 与 DONTSKILL.md 用正反对照清单约束了什么时候该进化、什么时候不该进化应当做DO✅ 从每一次技能交互中学习✅ 在正确的抽象层级上提取模式✅ 同时更新多个相关技能✅ 追踪置信度与应用次数✅ 主动向用户征求对改进的反馈✅ 使用进化/修正标记保证可追溯✅ 在大范围应用前先验证指导。不要做DONT❌ 从单次经验过度泛化❌ 不做置信度追踪就更新技能❌ 忽略负面反馈❌ 做出破坏既有功能的改动❌ 创建互相矛盾的模式❌ 在不理解上下文的情况下更新技能。十一、快速上手与配套资源11.1 五步快速上手任意技能完成后该 Agent 会自动执行见 SKILL.md分析发生了什么提取模式与洞见更新相关技能文件记录到记忆以供后续参考汇报摘要给用户。11.2 安装方式仓库中 README.md 提供了软链接安装方式在你的本地环境执行ln -s ~/path/to/agent-playbook/skills/self-improving-agent ~/.claude/skills/self-improving-agent随后按上文第九节接线 hooks 即可开启自动捕获。该技能基于 MIT 协议发布。11.3 配套资源清单资源位置用途技能主文档.claude/skills/self-improving-agent/SKILL.md完整架构、流程与 hooks 配置使用说明.claude/skills/self-improving-agent/README.md特性总览、安装、触发方式、示例学习记忆文件.claude/skills/self-improving-agent/memory/semantic-patterns.json10 条已沉淀模式的真实样例钩子脚本.claude/skills/self-improving-agent/hooks/pre-tool / post-bash / session-end 实现模式模板templates/pattern-template.md新增模式的标准结构修正模板templates/correction-template.md修正错误指导的标准结构验证模板templates/validation-template.md校验技能准确性的轻量模板附录.claude/skills/self-improving-agent/references/appendix.md记忆目录结构、验证报告、指标样例、人机协作反馈模板11.4 人机协作Human-in-the-Loop系统不是单向的Agent 自己进化而是保留人工确认环节。appendix 提供了会话结束后的反馈收集模板典型形态为本次会话更新了哪些技能、提取了哪些模式、各模式置信度如何并邀请用户对改进打分1-10。反馈的接入规则明确正向反馈评分 ≥ 7提升模式置信度扩展到相关技能中性反馈评分 46保留模式继续积累数据仅限当前技能负向反馈评分 ≤ 3降低置信度、修订模式从活跃模式中移除。这保证了置信度数值如新模式初始 0.85、被反复验证的模式升至 0.95始终有真实的用户反馈作为依据而不是自我标榜的静态数字。结语self-improving-agent 的核心工程价值可以浓缩为三点以多记忆架构区分规则与经验、以四阶段流程把经验转化为带置信度的可追溯模式、以 hooks 实现从错误中自我修正的闭环。这套设计不依赖特定业务场景适用于任何需要Agent 越用越准的编码协作仓库。若要在 Farm 仓库中实际启用直接按 SKILL.md 接线 hooks 并从 semantic-patterns.json 的 10 条既有模式开始积累即可。赞分享前端构建构建工具开发工具【免费下载链接】farmExtremely fast Vite-compatible web build tool written in Rust项目地址https://gitcode.com/gh_mirrors/fa/farm点击查看免费下载相关推荐Farm 仓库里的 Self-Improving Agent多记忆架构驱动的技能自进化系统解析Farm 仓库里的 Self Improving Agent多记忆架构驱动的技能自进化系统解析 本文基于 farm 仓库中的 README.md https:前端构建构建工具开发工具AI Agent 自我进化系统设计指南以 farm 仓库 self-improving-agent Skill 为例解析 multi-memory 终身学习架构AI Agent 自我进化系统设计指南以 farm 仓库 self improving agent Skill 为例解析 multi memory 终身学习架前端构建构建工具开发工具Self-Improving Agent 附录深度解析自校验、多记忆架构与人机协同反馈闭环Self Improving Agent 附录深度解析自校验、多记忆架构与人机协同反馈闭环 导读 本文以仓库中 self improving agent 技能前端构建构建工具开发工具上一篇BioGPT在华为昇腾NPU上的极致性能医疗AI推理速度提升300%下一篇如何快速部署whisper-large-v3-turbo8倍速语音识别终极指南创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价 →
↑