1. 项目概述:从重复纠正到智能协作的进化

如果你用过Claude Code、Cursor这类AI编程助手超过一周,大概率会和我有同样的感受:它确实能帮你写代码,但你也得像个复读机一样,一遍又一遍地纠正它。周一你刚说完“测试里别用Mock数据库,用内存数据库”,周五它又给你生成了一堆Mock。你每次开启新会话,都得重新解释一遍项目的命名规范、代码风格、甚至是你个人的编码偏好。这种“金鱼记忆”式的交互,让AI助手本该带来的效率提升大打折扣,大量时间被浪费在重复沟通上。

这正是我深度使用AI编程助手几个月后遇到的核心瓶颈。直到我发现了 Pro Workflow ,一个开源的Claude Code插件,它彻底改变了我和AI协作的模式。它的核心思想很简单,却极其强大: 让AI助手拥有“记忆” 。它通过一个本地的SQLite数据库,记录下你每一次的纠正、每一次的解释、每一次的规则。当下一次会话开始时,这些“记忆”会被自动加载,AI助手会基于你过去的指导来生成代码。这意味着,你的每一次纠正都不是徒劳的,而是在为未来的高效协作“投资”。

想象一下,经过50次会话后,Claude已经熟知了你项目的技术栈、代码规范、甚至是你对特定问题的处理习惯。它不再需要你反复提醒,生成的代码越来越贴合你的预期,你的角色从“监工”逐渐转变为“架构师”和“审核者”。Pro Workflow通过一套精密的技能、代理、命令和钩子脚本体系,将这种“自我纠正循环”变成了现实。它不仅仅是一个插件,更像是一个为你和AI助手量身定制的“协作操作系统”,涵盖了从任务拆解、并行开发、代码审查到成本监控的完整开发生命周期。

2. 核心设计理念:构建可积累的智能工作流

Pro Workflow的设计哲学深深植根于对AI辅助编程痛点的深刻洞察。它不是简单地将一堆功能堆砌在一起,而是围绕几个核心原则构建了一个有机的、可进化的系统。

2.1 核心理念:从“纠正”到“规则”的转化

传统AI编程助手的交互是线性的、无状态的。你输入指令,它生成代码,你纠正错误,然后循环往复。Pro Workflow引入了一个关键的中间层: 规则引擎 。它的核心工作流可以概括为“观察-学习-应用”的闭环。

  1. 观察与捕获 :当你使用 /learn-rule 命令,或在日常对话中用特定格式(如 [LEARN] 块)指出一个错误时,Pro Workflow的钩子脚本会捕获这个交互。
  2. 学习与抽象 :系统(或由你确认)会将这个具体的纠正案例,抽象成一条可复用的规则。例如,从“这次别用 console.log ”抽象为“生产代码中禁止使用 console.log ,应使用日志库”。
  3. 存储与索引 :这条规则会被结构化地存入SQLite数据库,并利用FTS5(全文搜索)建立索引。这意味着规则可以通过关键词(如“测试”、“数据库”、“日志”)被快速检索。
  4. 应用与预防 :在每次会话开始时, SessionStart 钩子会自动加载所有相关的、或全局的规则,并将其作为上下文的一部分提供给Claude。这样,在Claude生成代码之前,它就已经“知道”了你的偏好和禁忌。

这个过程的威力在于 复合效应 。初期你可能需要手动创建几条核心规则,但随着使用,系统会自动建议从常见纠正中提取规则。几十个会话后,你的规则库已经相当丰富,Claude犯重复错误的概率会急剧下降。这就像是为AI助手编写了一本不断完善的、专属项目的“编码规范手册”。

2.2 架构解析:模块化与事件驱动

Pro Workflow的架构清晰地区分了“做什么”和“怎么做”,采用了高度模块化的设计。

  • 技能 :这是“做什么”的原子能力。例如,“自我纠正循环”是一个技能,“智能提交”是另一个技能。每个技能都是独立的、可复用的逻辑单元,描述了要完成的一项具体任务或要遵循的一种模式。
  • 代理 :这是“谁来做”。代理是拥有特定角色和权限的AI实例。例如, planner 代理负责拆解任务(只读模式,防止它直接修改代码), reviewer 代理负责代码审查(自带检查清单)。你可以将不同的技能分配给最适合的代理来执行。
  • 命令 :这是用户与系统交互的入口。例如, /develop 命令触发一个多阶段开发流程, /wrap-up 命令启动会话收尾程序。命令通常是一个复杂工作流的快捷方式,背后会调用一个或多个代理和技能。
  • 钩子脚本 :这是“在什么时候做”。Pro Workflow定义了24个关键事件,如 SessionStart PreToolUse PostToolUse PermissionDenied 等。在这些事件触发时,对应的钩子脚本会执行。这是实现自动化、无感化集成的关键。例如, PostToolUse (Edit) 钩子会在每次编辑后自动检查代码中是否遗留了 console.log 或明文密码。

这种架构的优势在于极强的可扩展性和灵活性。你可以像搭积木一样,组合不同的技能和代理,通过命令来触发,并由事件系统在恰当的时机自动执行相关逻辑。它把零散的、手动的操作,编织成了一个自动化的、智能的工作流网络。

2.3 上下文工程:在有限的“记忆”里做文章

所有AI模型都有上下文窗口限制。Pro Workflow的“上下文工程”技能提供了一套系统的方法来管理这个宝贵资源,其核心是 Write/Select/Compress/Isolate 四步法。

  1. Write :有策略地向上下文中写入内容。不是一股脑塞进所有文件,而是优先写入架构图、核心接口、当前任务相关的规则。
  2. Select :在需要引用时,精准选择相关的代码片段或文档部分,而不是整个文件。Pro Workflow的搜索和规则加载机制帮助实现了这一点。
  3. Compress :当上下文接近饱和时,对非核心但仍有用的信息进行压缩。例如,将一段复杂的业务逻辑总结成几句话的描述。
  4. Isolate :将探索性、实验性的工作隔离到并行的Git工作树中,避免其污染主会话的上下文。这通过 /parallel 命令和 worktree 代理来实现。

更重要的是,Pro Workflow v3.2 引入了 Compact Guard 功能。Claude Code在上下文过长时会自动进行“压缩”,这可能导致关键信息丢失。Compact Guard 会在压缩前( PreCompact 钩子)主动将最重要的状态信息(如当前任务目标、已加载的核心规则)保存起来,并在压缩后( PostCompact 钩子)重新注入一个精简的摘要,从而在压缩周期中保护了工作流的连续性。

3. 核心功能深度解析与实战配置

Pro Workflow的功能集非常庞大,但我们可以将其核心价值归纳为几个关键场景。理解这些场景下的功能如何协同工作,比单纯记忆命令列表更重要。

3.1 自我纠正与持久化记忆

这是Pro Workflow的基石。实现它主要依靠两个部分:数据库和钩子。

数据库层 :项目使用SQLite,这是轻量级、零配置的完美选择。它本地存储,无需网络,速度极快。 src/ 目录下的TypeScript代码负责与数据库交互,定义了“学习记录”的数据结构,通常包含规则内容、创建时间、相关关键词、触发次数等字段。FTS5全文搜索扩展使得 /search testing 这样的模糊查询变得高效。

钩子层 :多个钩子共同构建了学习循环。

  • UserPromptSubmit 钩子:分析你的提示,如果检测到纠正性语言(如“不要”、“应该”、“错误”),会提示你是否将其保存为规则。
  • PostToolUseFailure 钩子:当工具调用失败(如测试运行失败)时,自动分析失败原因,并建议创建一条防止此类失败的规则。
  • Stop 钩子:在会话结束时,会自动扫描会话记录,提取所有被 [LEARN] 标记的文本块,并将其存入数据库。

实操配置心得

初期不要贪多。建议先从最让你头疼的3-5个重复问题开始。例如,为你的项目创建第一条规则: 在编写单元测试时,使用内存数据库(如SQLite :memory: 或测试容器),禁止使用Mock模拟数据库连接 。将这条规则通过 /learn-rule 命令保存。你会立即在接下来的测试编写任务中看到效果。规则描述要具体、可操作,避免模糊的“写好代码”这类表述。

3.2 智能多阶段开发流程

/develop 命令是Pro Workflow的旗舰功能,它将一个复杂的特性开发分解为有门控的多个阶段,通常由 orchestrator 代理来协调。

  1. 研究阶段 orchestrator 会调用 scout 代理(在独立工作树中)去探索可行性、调研库的API、评估不同方案。 scout 是“信心门控”的,只有它认为方案可行时,才会将研究报告提交回来。
  2. 计划阶段 :基于研究报告, orchestrator 会与 planner 代理协作,将特性拆解成具体的、可执行的任务清单,并估算每个任务所需的上下文和可能的风险。
  3. 实施阶段 orchestrator 根据任务清单,在主线或新的并行工作树中逐步实施。 PreToolUse 钩子会在此阶段检查质量门禁(如是否有足够的测试)。
  4. 审查阶段 :实现完成后, orchestrator 将代码交给 reviewer 代理进行审查。 reviewer 会依据内置的检查清单(安全性、性能、代码风格)和已加载的项目规则提出修改意见。

关键技巧

使用 /parallel 命令在“研究”或“实施”大型模块时创建并行工作树。这能让你的主会话上下文保持干净,专注于当前的核心任务。 orchestrator 可以同时管理多个工作树中的代理进度。记住,工作树是廉价的,混乱的上下文是昂贵的。

3.3 成本感知与优化

随着AI编码的深入,token消耗成本不容忽视。Pro Workflow的 Cost Tracker MCP Audit 功能提供了清晰的洞察。

  • Cost Tracker :它并非直接调用计费API,而是通过估算上下文窗口使用量、输入/输出token数量(基于模型上下文长度和消息历史进行启发式估算),来提供相对的成本趋势和对比。例如,它会告诉你“本次会话的估算token消耗比平均高30%,主要原因是引入了三个大型的第三方库API文档”。
  • MCP Audit :这是很多用户忽略的“隐形成本”。每个MCP服务器在每次请求时都可能产生大量的token开销(用于构造工具调用参数和解析结果)。MCP Audit功能会分析你已配置的MCP服务器,评估其token效率,并提示冗余或低效的配置。它的核心建议是: 从3个最核心的MCP开始(如 context7 查文档、 playwright 做浏览器测试、 GitHub 管理仓库),仅在有明确、频繁需求时才添加新的

配置建议

定期运行 /mcp-audit 。我发现自己曾同时加载了 filesystem github git 三个与代码仓库相关的MCP,它们功能重叠,造成了不必要的开销。审计后,我移除了 filesystem ,因为 github MCP在大多数场景下已足够。这个简单的调整,让我的平均会话token使用下降了约15%。

3.4 权限调优与安全防护

频繁弹出的权限请求(“是否允许运行此命令?”)会严重打断心流。Pro Workflow的 Permission Tuner 通过分析 PermissionDenied 钩子记录的历史拒绝模式,来帮你优化权限规则。

例如,如果你多次拒绝过 rm -rf node_modules 这类危险命令,但经常允许 rm -rf dist rm -rf .next (构建输出目录),Permission Tuner 就会学习到模式,并建议生成一条更智能的规则: 允许删除以 dist , .next , .nuxt , build 结尾的目录,但拒绝删除 node_modules , .git 等核心目录 。你可以将这些建议规则整合进 settings.json permissionRules 部分,从而实现更精细、更自动化的安全控制。

安全模式 /safe-mode 命令是一个总开关。开启后,它会强化所有破坏性操作的确认步骤,并为 planner scout 等代理施加更严格的“只读”或“需批准”限制,非常适合在探索未知代码库或进行重大重构时使用。

4. 从零开始:安装、配置与核心工作流实战

4.1 环境准备与安装

Pro Workflow的安装非常灵活,支持多种AI编码环境。

对于Claude Code用户(推荐) : 这是最原生的体验。在Claude Code的聊天窗口中直接输入插件安装命令即可。

/plugin marketplace add rohitg00/pro-workflow
/plugin install pro-workflow@pro-workflow

安装完成后,Claude Code会自动识别并加载插件。你可以在设置中看到 pro-workflow 的相关配置项。

对于Cursor用户 : Cursor同样支持类似的插件系统。

/add-plugin pro-workflow

跨平台支持(通过SkillKit) : 如果你使用其他AI编码代理(如Windsurf、Codex CLI等),可以通过SkillKit这个通用CLI工具来安装和适配。

# 安装SkillKit(如果尚未安装)
npm install -g skillkit

# 通过SkillKit安装Pro Workflow
npx skillkit install pro-workflow

# 为特定代理(如Cursor)翻译配置
npx skillkit translate pro-workflow --agent cursor

SkillKit就像一个“适配器”,它会将Pro Workflow的技能和配置转换成目标代理能理解的格式。

手动安装(高级用户) : 如果你想深入了解其结构或进行定制,可以克隆仓库并手动复制模板。

git clone https://github.com/rohitg00/pro-workflow.git /tmp/pw
cp -r /tmp/pw/templates/split-claude-md/* ./.claude/
cd ~/.claude/plugins/*/pro-workflow
npm install
npm run build

手动安装能让你接触到最原始的技能、钩子脚本和配置模板,适合深度定制。

4.2 初始配置与核心设置

安装后,首要任务是配置 settings.json 。项目根目录下的 settings.example.json 是一个功能齐全的模板。我建议先复制一份,然后根据你的需求调整。

关键配置项解析

  1. permissionRules (权限规则) :这是保障安全的核心。模板中已经预置了一些明智的规则。你需要根据你的工作习惯增删。例如,如果你经常需要清理Docker,可以添加 "allow": ["docker system prune -f"] 。规则支持通配符和正则表达式,可以实现非常精细的控制。
  2. outputStyle (输出风格) :定义Claude回复的格式。你可以设置为 "concise" (简洁)、 "detailed" (详细)或 "educational" (教育性,会解释原因)。初期建议用 "detailed" ,熟悉后切换到 "concise" 以节省上下文。
  3. autoCompact (自动压缩) :设置上下文长度阈值。例如, “threshold”: 120000 表示当上下文token数超过12万时,触发压缩提醒。配合 compactGuard 使用,可以平衡上下文容量和信息保留。
  4. spinnerVerbs (等待动词) :这是一个有趣的个性化设置。它定义了Claude在“思考”时显示的动态动词。你可以把它改成任何你喜欢的词数组,比如 ["正在构思", "努力编码", "检查规范", "优化逻辑"] ,让交互更有趣。

MCP服务器配置 mcp-config.example.json 提供了推荐的MCP服务器列表。我强烈建议遵循 “从3个开始” 的原则。我的基础配置是:

  • context7 : 用于实时查询项目文档、库API,不可或缺。
  • playwright : 进行端到端测试,比用文字描述浏览器行为高效得多。
  • github : 管理Issue、查看PR、搜索代码历史。

只有在需要执行特定任务时(比如需要连接Jira),才临时添加对应的MCP,任务完成后记得注释掉或移除,以保持上下文清洁。

4.3 核心工作流实战演练

假设我们现在要为一个Node.js后端项目添加用户认证功能。让我们用Pro Workflow来走一遍标准流程。

第1步:启动智能开发流程 在项目根目录,输入:

/develop add user authentication with JWT and role-based access control

orchestrator 代理会被触发。它会首先进入 研究阶段 ,自动创建一个并行工作树,派遣 scout 代理去调研Node.js下常用的JWT库(如 jsonwebtoken passport-jwt )、密码哈希库(如 bcrypt )、以及RBAC的实现模式。几分钟后,它会带回一份简洁的报告,比较不同方案的优劣。

第2步:审查计划并实施 研究阶段结束后, orchestrator 会生成一个详细的 实施计划 ,可能包括:

  1. 安装必要的依赖包。
  2. 创建用户模型和数据库迁移。
  3. 实现注册、登录、JWT签发与验证的中间件。
  4. 实现基于角色的权限检查中间件。
  5. 为以上功能编写单元和集成测试。

这个计划会呈现在你面前等待确认。确认后,进入 实施阶段 orchestrator 会按部就班地执行每个子任务。在此过程中, PreToolUse (Bash) 钩子会在运行 npm install 前检查 package.json 变更; PostToolUse (Edit) 钩子会在每次编辑后扫描是否有硬编码的密钥(通过LLM Gate的Secret Detection)。

第3步:代码审查与提交 所有代码生成完毕后,进入 审查阶段 reviewer 代理会运行代码,检查安全漏洞(如JWT密钥强度、密码哈希次数)、代码风格一致性,并运行测试套件。它会生成一个审查报告。

通过审查后,使用 /commit 命令。这是一个“智能提交”流程:

  1. 质量门禁 :自动运行测试、lint检查。如果失败,提交会被阻止。
  2. 暂存区审查 :Claude会展示diff,并建议将一些自动生成的样板代码(如多余的注释、临时日志)从提交中移除( /deslop 技能在此发挥作用)。
  3. 生成提交信息 :基于改动内容,自动生成符合Conventional Commits规范(如 feat(auth): add JWT-based authentication and RBAC )的提交信息。

第4步:会话收尾与学习 功能完成并提交后,运行:

/wrap-up

这个命令会执行“收尾仪式”:

  • 总结本次会话的变更。
  • 提示你从本次会话中提取1-2条最重要的经验作为规则保存(例如:“在JWT中间件中,必须从HTTP头 Authorization: Bearer <token> 中提取令牌”)。
  • 将本次会话的统计数据(用时、编辑次数、规则触发次数)存入数据库。
  • 生成一个简短的“交接文档”,便于你或你的队友下次接手。

至此,一个完整的、由AI辅助但由你掌控的闭环开发流程就结束了。你不仅完成了功能,还让AI助手变得更了解你的项目。

5. 高级技巧、问题排查与社区智慧

5.1 高级使用模式

  1. 代理团队协同 :对于极其复杂的任务,可以手动组建“代理团队”。例如,你可以同时启动一个 planner 、一个 implementor 和一个 reviewer ,让它们通过共享的任务列表和消息通道进行协作。这模拟了一个微型的开发团队,适合模块边界清晰的大型项目。
  2. 上下文分割 :对于大型单体仓库,可以使用“分割内存”模式。在项目根目录创建 CLAUDE.md 定义全局规则,在子目录(如 frontend/ backend/ )创建各自的 CLAUDE_SUBDIR.md ,存放目录特定的规则和上下文。Pro Workflow的 ContextLoading 技能会智能地合并这些文件。
  3. 利用LLM Gates进行自动化审查 :v3.2引入的 type: "prompt" 钩子是游戏规则改变者。例如,你可以配置一个 PreToolUse (Bash) 钩子,在 git commit 前,将暂存区的diff发送给一个小型LLM(或Claude自身)进行快速审查,询问“这次提交是否引入了任何明显的安全漏洞或逻辑错误?”,根据回答决定是否阻断提交。

5.2 常见问题与解决方案

问题现象 可能原因 解决方案
安装后命令不生效 插件未正确加载或权限问题 1. 在Claude Code中检查插件列表,确认 pro-workflow 已启用。
2. 运行 /doctor 命令进行健康检查,它会诊断常见配置问题。
3. 检查 ~/.claude 目录的权限,确保Claude有读写权限。
/search 找不到已保存的规则 数据库文件路径错误或损坏 1. 默认数据库通常在 ~/.claude/pro-workflow/learnings.db 。确认文件存在。
2. 尝试运行 /list 命令,如果也没输出,可能是数据库连接问题。可以尝试重启Claude Code。
3. 极端情况下,可以删除数据库文件(先备份),插件会在下次启动时重建。
钩子脚本没有执行 钩子事件未注册或脚本有错误 1. 检查 config.json 中钩子事件的绑定是否正确。
2. 查看Claude Code的开发者控制台(如果有)或日志文件,寻找钩子执行时的错误信息。
3. 确保钩子脚本文件具有可执行权限( chmod +x )。
权限弹窗过于频繁 默认权限规则太严格,或 permissionRules 配置不匹配 1. 运行 /permission-tuner ,分析最近的拒绝记录,采纳其生成的优化建议。
2. 仔细审查 settings.json 中的 permissionRules ,根据你的工作流放宽对常用安全命令的限制(如对 rm -rf dist/* 的允许)。
并行工作树混乱 多个工作树未妥善管理 1. 使用 git worktree list 查看所有工作树。
2. Pro Workflow的钩子会跟踪工作树创建和删除,但手动创建的工作树需要手动清理。
3. 养成使用 /wrap-up 的习惯,它有助于理清会话边界。
Token消耗估算不准 Cost Tracker是启发式估算,非精确计量 Cost Tracker的目的是提供 相对趋势 优化提示 ,而非精确账单。关注它提示的“比平均高XX%”以及“主要开销来自MCP: XXX”这类信息,用于优化工作习惯,不要纠结于绝对数值。

5.3 来自社区的实践真知

Pro Workflow的文档和社区讨论中散落着许多宝贵的经验,我将其总结为几条最高原则:

  • 规则的质量高于数量 :十条精准、具体的规则,胜过一百条模糊的规则。规则应描述“做什么”和“为什么”,而不仅仅是“不要做什么”。例如,“使用 const 声明不会重新赋值的变量,以提高代码可读性和防止意外修改”比“多用const”要好得多。
  • 信任检查点,而非每一行代码 :不要试图监控AI生成的每一行代码,这会让你精疲力尽。设定好质量门禁(测试、lint、审查),然后在检查点进行集中审查。Pro Workflow的 /commit 前的门禁和 reviewer 代理就是为此而生。
  • 将AI视为初级开发者 :给它清晰、无歧义的任务描述(像写PRD一样),提供充足的上下文(规则、架构图),并定义明确的完成标准。你越是能像对待一位聪明但缺乏经验的同事那样与它协作,效果就越好。
  • 定期“修剪”规则库 :随着项目演进,一些早期规则可能过时或矛盾。每隔一段时间,使用 /search 浏览规则,合并相似的,删除过时的,保持规则库的简洁和一致。
  • 从社区获取灵感 :关注项目GitHub的Issues和Discussions,以及SkillKit官网。其他开发者分享的规则模板、技能组合和配置技巧,常常能给你带来意想不到的启发。

Pro Workflow的本质,是将人类开发者的 意图 经验 ,通过一种机器可理解、可持久化的方式,注入到AI协作的循环中。它没有取代开发者,而是放大了开发者的杠杆。你不再是在重复地纠正错误,而是在系统地培训一个越来越懂你的合作伙伴。这种从“即时对话”到“持续关系”的转变,才是AI编程助手进入生产力深水区的关键一步。开始积累你的第一条规则吧,五十个会话后,你会回来感谢这个决定。

更多推荐