章节 01
导读 / 主楼:Agentic Agnostic Workflow Environment:打破AI编程助手厂商锁定的开源框架
一个工具无关的AI编程代理工作流框架,支持Claude Code、Codex CLI、Cursor、Windsurf等多种工具,基于开放标准实现一次配置、处处运行。
正文
一个工具无关的AI编程代理工作流框架,支持Claude Code、Codex CLI、Cursor、Windsurf等多种工具,基于开放标准实现一次配置、处处运行。
章节 01
一个工具无关的AI编程代理工作流框架,支持Claude Code、Codex CLI、Cursor、Windsurf等多种工具,基于开放标准实现一次配置、处处运行。
章节 02
~/.claude/CLAUDE.md、项目级的/CLAUDE.md、覆盖层的/.claude/CLAUDE.md,以及一系列技能文件和知识文档。这套系统工作得很好,但完全是Claude Code的形状——切换到Codex CLI或Cursor意味着复制、重新格式化、重新调研哪些约定可以迁移。\n\nAAWE的核心目标就是将工作流与具体工具解耦。\n\n## 核心设计理念\n\nAAWE围绕开放标准构建,充分利用了社区已有的共识:\n\n- AGENTS.md:最初由OpenAI为Codex CLI创建,2025年12月捐赠给Linux基金会\n- agentskills.io:Anthropic于2025年12月发布的多厂商技能规范\n- design.md:Google Stitch于2026年推出的设计文档标准\n\n当某个工具需要标准未涵盖的功能时,集成方式是一个轻量级的适配器,始终委托回厂商无关的核心,从不成为第二真相来源。\n\n### 关键设计原则\n\n单一真相来源(DRY原则)\n\n规则和项目知识只存在于一个文件中(AGENTS.md),不会在CLAUDE.md、GEMINI.md、.cursorrules、.windsurfrules之间重复。每个其他规则文件要么是薄适配器,要么就是漂移本身。\n\n抽象与适配器模式\n\nAGENTS.md定义了契约——项目是什么、如何构建、适用什么规则。每个AI工具都是该接口背后的实现。切换工具只需将实现指向同一接口。当工具尚未原生支持AGENTS.md时(如Claude Code、Gemini CLI),集成是一个3行文件的适配器(CLAUDE.md、GEMINI.md),委托回真相来源。\n\n基于覆盖层的就近解析\n\n三级结构——用户级(~/.agents/)、项目级(/)、项目用户级(/.agents/,gitignored)——最具体的实例获胜。这与Claude Code最终收敛的模型相同,但被提升到了工具中立的规范。\n\n组合优于修改\n\n技能遵循开放的agentskills.io规范。实时知识库(docs/Articles/ + docs/Decisions/)是任何人都可以用自选工具渲染的普通Markdown。渲染工具是装饰;契约才是内容。\n\n依赖倒置\n\n工具依赖于厂商无关的核心,而不是反过来。核心对任何具体工具都一无所知。\n\n命名空间扩展性\n\n当工具需要开放标准未涵盖的功能(如Claude Code的allowed-tools、Cursor的globs)时,它进入技能frontmatter中的x-:命名空间——从不在技能正文中。不理解该命名空间的工具会忽略它;技能在其他地方继续工作。\n\n## 双技能架构\n\n整个系统以两个技能的形式交付,分别负责环境的创建和维护:\n\n### agentic-environment-bootstrap(工具包)\n\n启动厂商无关的环境。检测机器上已安装的工具,迁移~/.claude/CLAUDE.md中已有的优质内容,连接符号链接/适配器,并在需要时为项目生成AGENTS.md / DESIGN.md / ARCHITECTURE.md的脚手架。\n\n### agentic-environment-doctor(工具包)\n\n逆转漂移。清点每个配置和技能文件,按领域聚类规则,标记重复、膨胀的文件、陈旧的文章和部分启动。提出逐块批准的调和差异——从不自行破坏。\n\nBootstrap创造,Doctor修复。 在新机器上运行一次bootstrap;每当系统滑脱时运行doctor(给它一年时间,它一定会滑脱)。\n\n## 快速开始\n\n你需要:\n\n- 任何可以调用技能的AI编程代理(Claude Code、Codex CLI、OpenCode、Hermes等)\n- 几秒钟时间\n\nbash\ngit clone https://github.com/JuanColilla/Agentic-Agnostic-Workflow-Environment.git\ncd Agentic-Agnostic-Workflow-Environment\n\n# 使两个技能对你的代理可用。路径因工具而异;\n# 这是每个支持工具都会解析到的厂商无关位置。\nmkdir -p ~/.agents/skills\ncp -R skills/agentic-environment-bootstrap ~/.agents/skills/\ncp -R skills/agentic-environment-doctor ~/.agents/skills/\n\n# 然后,在你选择的代理中运行:\n# \"在这台机器上运行agentic-environment-bootstrap技能\"\n\n\nbootstrap技能会检测你已安装的AI工具,从~/.claude/CLAUDE.md(或你最初使用的任何专有文件)迁移仍然相关的内容,在~/.agents/中组装厂商无关的核心,并将每个检测到的工具连接到它。从那一刻起,打开任何这些代理都会读取相同的AGENTS.md和相同的技能池。\n\n对于项目,在项目根目录内运行bootstrap;它会生成AGENTS.md、可选的DESIGN.md / ARCHITECTURE.md骨架,以及工具适配器。\n\n## 技术架构亮点\n\nAAWE不是产品,而是一个软件工程框架。它依靠经典概念保持系统小巧、可预测和诚实:\n\n- 经典软件工程模式:单例、抽象、适配器、组合、依赖倒置\n- 开放标准优先:AGENTS.md、agentskills.io、design.md\n- 零厂商锁定:核心对任何具体工具一无所知\n- 渐进式采用:可以逐步迁移现有配置\n- 社区驱动:Apache 2.0许可,欢迎分叉、修改和商业使用\n\n## 与现有方案的对比\n\n| 特性 | 厂商原生方案 | AAWE |\n|------|-------------|------|\n| 配置位置 | 各工具专有路径 | ~/.agents/统一路径 |\n| 技能格式 | 工具特定 | agentskills.io标准 |\n| 切换成本 | 高(需重新配置) | 低(适配器自动处理) |\n| 知识文档 | 工具特定格式 | 纯Markdown,任意工具可读 |\n| 厂商依赖 | 深度绑定 | 核心零依赖 |\n| 扩展机制 | 工具特定 | x-:命名空间标准扩展 |\n\n## 适用场景\n\nAAWE特别适合以下场景:\n\n1. 多工具用户:同时使用Claude Code、Codex CLI、Cursor等多种AI编程助手\n2. 团队标准化:希望团队使用不同工具但保持统一的项目约定\n3. 厂商顾虑:担心单一厂商锁定,希望保持迁移灵活性\n4. 开源偏好:倾向于基于开放标准构建工作流\n5. 长期项目:需要维护数年,期间AI工具格局可能大幅变化\n\n## 结语\n\nAgentic Agnostic Workflow Environment代表了一种重要的理念转变:AI编程助手应该是可替换的实现,而不是绑定的工作流。在AI工具快速迭代的今天,这种厂商无关的架构设计为开发者提供了宝贵的灵活性和未来保障。\n\n项目采用Apache 2.0许可,完全开源,欢迎社区贡献。如果你也在使用多种AI编程工具,或者担心厂商锁定问题,AAWE值得你认真考虑。毕竟,在这个AI工具百花齐放的时代,一次编写,处处运行的理念比以往任何时候都更加珍贵。章节 03
Agentic Agnostic Workflow Environment:打破AI编程助手厂商锁定的开源框架\n\n随着Claude Code、Codex CLI、Cursor、Windsurf、Gemini CLI等AI编程助手的蓬勃发展,开发者面临着一个甜蜜的烦恼:每个工具都有自己的配置格式、规则文件和工作流程。当你想从一个工具切换到另一个时,往往需要重新学习、重新配置,甚至重写大量项目文档。今天介绍的 Agentic Agnostic Workflow Environment(以下简称AAWE)正是为解决这一痛点而生的开源框架。\n\n项目背景与动机\n\n项目作者Juan Colilla在使用Claude Code的过程中深刻体会到厂商锁定的代价。尽管他认为Claude Code是当时市场上最适合自己工作流的代理工具,但也观察到了一些令人担忧的趋势:\n\n- 定价压力推动用户向更昂贵的层级迁移\n- 所谓的"改进"悄然增加了每次任务的token消耗\n- 功能设计有意无意地将用户锚定在单一厂商的生态中\n\n与此同时,开源权重模型能力不断提升,许多模型已经可以在普通专业硬件上本地运行。继续为单一厂商的锁定支付成本,已经不再值得。\n\n作者之前的配置完全是Claude Code形态的:全局的~/.claude/CLAUDE.md、项目级的/CLAUDE.md、覆盖层的/.claude/CLAUDE.md,以及一系列技能文件和知识文档。这套系统工作得很好,但完全是Claude Code的形状——切换到Codex CLI或Cursor意味着复制、重新格式化、重新调研哪些约定可以迁移。\n\nAAWE的核心目标就是将工作流与具体工具解耦。\n\n核心设计理念\n\nAAWE围绕开放标准构建,充分利用了社区已有的共识:\n\n- AGENTS.md:最初由OpenAI为Codex CLI创建,2025年12月捐赠给Linux基金会\n- agentskills.io:Anthropic于2025年12月发布的多厂商技能规范\n- design.md:Google Stitch于2026年推出的设计文档标准\n\n当某个工具需要标准未涵盖的功能时,集成方式是一个轻量级的适配器,始终委托回厂商无关的核心,从不成为第二真相来源。\n\n关键设计原则\n\n单一真相来源(DRY原则)\n\n规则和项目知识只存在于一个文件中(AGENTS.md),不会在CLAUDE.md、GEMINI.md、.cursorrules、.windsurfrules之间重复。每个其他规则文件要么是薄适配器,要么就是漂移本身。\n\n抽象与适配器模式\n\nAGENTS.md定义了契约——项目是什么、如何构建、适用什么规则。每个AI工具都是该接口背后的实现。切换工具只需将实现指向同一接口。当工具尚未原生支持AGENTS.md时(如Claude Code、Gemini CLI),集成是一个3行文件的适配器(CLAUDE.md、GEMINI.md),委托回真相来源。\n\n基于覆盖层的就近解析\n\n三级结构——用户级(~/.agents/)、项目级(/)、项目用户级(/.agents/,gitignored)——最具体的实例获胜。这与Claude Code最终收敛的模型相同,但被提升到了工具中立的规范。\n\n组合优于修改\n\n技能遵循开放的agentskills.io规范。实时知识库(docs/Articles/ + docs/Decisions/)是任何人都可以用自选工具渲染的普通Markdown。渲染工具是装饰;契约才是内容。\n\n依赖倒置\n\n工具依赖于厂商无关的核心,而不是反过来。核心对任何具体工具都一无所知。\n\n命名空间扩展性\n\n当工具需要开放标准未涵盖的功能(如Claude Code的allowed-tools、Cursor的globs)时,它进入技能frontmatter中的x-:命名空间——从不在技能正文中。不理解该命名空间的工具会忽略它;技能在其他地方继续工作。\n\n双技能架构\n\n整个系统以两个技能的形式交付,分别负责环境的创建和维护:\n\nagentic-environment-bootstrap(工具包)\n\n启动厂商无关的环境。检测机器上已安装的工具,迁移~/.claude/CLAUDE.md中已有的优质内容,连接符号链接/适配器,并在需要时为项目生成AGENTS.md / DESIGN.md / ARCHITECTURE.md的脚手架。\n\nagentic-environment-doctor(工具包)\n\n逆转漂移。清点每个配置和技能文件,按领域聚类规则,标记重复、膨胀的文件、陈旧的文章和部分启动。提出逐块批准的调和差异——从不自行破坏。\n\nBootstrap创造,Doctor修复。 在新机器上运行一次bootstrap;每当系统滑脱时运行doctor(给它一年时间,它一定会滑脱)。\n\n快速开始\n\n你需要:\n\n- 任何可以调用技能的AI编程代理(Claude Code、Codex CLI、OpenCode、Hermes等)\n- 几秒钟时间\n\nbash\ngit clone https://github.com/JuanColilla/Agentic-Agnostic-Workflow-Environment.git\ncd Agentic-Agnostic-Workflow-Environment\n\n使两个技能对你的代理可用。路径因工具而异;\n这是每个支持工具都会解析到的厂商无关位置。\nmkdir -p ~/.agents/skills\ncp -R skills/agentic-environment-bootstrap ~/.agents/skills/\ncp -R skills/agentic-environment-doctor ~/.agents/skills/\n\n然后,在你选择的代理中运行:\n\"在这台机器上运行agentic-environment-bootstrap技能\"\n\n\nbootstrap技能会检测你已安装的AI工具,从~/.claude/CLAUDE.md(或你最初使用的任何专有文件)迁移仍然相关的内容,在~/.agents/中组装厂商无关的核心,并将每个检测到的工具连接到它。从那一刻起,打开任何这些代理都会读取相同的AGENTS.md和相同的技能池。\n\n对于项目,在项目根目录内运行bootstrap;它会生成AGENTS.md、可选的DESIGN.md / ARCHITECTURE.md骨架,以及工具适配器。\n\n技术架构亮点\n\nAAWE不是产品,而是一个软件工程框架。它依靠经典概念保持系统小巧、可预测和诚实:\n\n- 经典软件工程模式:单例、抽象、适配器、组合、依赖倒置\n- 开放标准优先:AGENTS.md、agentskills.io、design.md\n- 零厂商锁定:核心对任何具体工具一无所知\n- 渐进式采用:可以逐步迁移现有配置\n- 社区驱动:Apache 2.0许可,欢迎分叉、修改和商业使用\n\n与现有方案的对比\n\n| 特性 | 厂商原生方案 | AAWE |\n|------|-------------|------|\n| 配置位置 | 各工具专有路径 | ~/.agents/统一路径 |\n| 技能格式 | 工具特定 | agentskills.io标准 |\n| 切换成本 | 高(需重新配置) | 低(适配器自动处理) |\n| 知识文档 | 工具特定格式 | 纯Markdown,任意工具可读 |\n| 厂商依赖 | 深度绑定 | 核心零依赖 |\n| 扩展机制 | 工具特定 | x-:命名空间标准扩展 |\n\n适用场景\n\nAAWE特别适合以下场景:\n\n1. 多工具用户:同时使用Claude Code、Codex CLI、Cursor等多种AI编程助手\n2. 团队标准化:希望团队使用不同工具但保持统一的项目约定\n3. 厂商顾虑:担心单一厂商锁定,希望保持迁移灵活性\n4. 开源偏好:倾向于基于开放标准构建工作流\n5. 长期项目:需要维护数年,期间AI工具格局可能大幅变化\n\n结语\n\nAgentic Agnostic Workflow Environment代表了一种重要的理念转变:AI编程助手应该是可替换的实现,而不是绑定的工作流。在AI工具快速迭代的今天,这种厂商无关的架构设计为开发者提供了宝贵的灵活性和未来保障。\n\n项目采用Apache 2.0许可,完全开源,欢迎社区贡献。如果你也在使用多种AI编程工具,或者担心厂商锁定问题,AAWE值得你认真考虑。毕竟,在这个AI工具百花齐放的时代,一次编写,处处运行的理念比以往任何时候都更加珍贵。