【免费下载链接】Axl
Axl 是一个 local-first 的 AI 编程代理框架(agent harness):一个 daemon 拥有整个编码会话,终端、Web 和移动客户端都只是它的"窗口"。本文带你解读 Axl 路线图(ROADMAP.md):五大产品支柱、一键导入旧配置的 adoption 编译器、用户驱动的子代理设计,以及三级学习循环的未来规划,帮你快速看懂这个开源项目的完整走向。
什么是 Axl 路线图:一份"活的产品计划"
Axl 的核心主张只有一句话:
Axl adapts to your setup instead of asking you to adapt to it.(Axl 适应你的环境,而不是要求你适应它。)
大多数 agent 框架要求用户迁移配置、学习新语法、绑定某个订阅或客户端;Axl 则选择直接支持你已有的工具、习惯与模型。它的名字也呼应了架构——一个运行时让多个模型和生态系统保持在稳定的轨道上。
Axl 吉祥物是一只像素风的六角恐龙(axolotl),会随会话状态做出不同反应:
路线图本身在 ROADMAP.md 中明确标注为"living product plan and delivery snapshot"——它记录产品意图、候选设计和实施顺序,但不是唯一的事实来源;当前代码、测试和架构文档才是判断现状的依据。
五大产品支柱一览
路线图在 ROADMAP.md 中列出了支撑整个产品的五大支柱:
| # | 支柱 | 一句话概括 |
|---|---|---|
| 1 | Adoption(采纳) | 一条命令导入 OpenCode、DSH、Claude Code 等生态资源 |
| 2 | Useful defaults(有用的默认值) | 不改配置就能得到一个能干的 agent |
| 3 | Visible learning(可见的学习) | 每次学习到的改动都有证据、有记录、可回滚 |
| 4 | Extensibility(可扩展性) | 内核之外的一切都可以替换或禁用 |
| 5 | One runtime(单一运行时) | 终端/Web/移动/IDE 客户端共享同一个 daemon 的状态 |
支柱一:Adoption —— 不替换,而是"收养"
这是 Axl 最具差异化的设计。传统做法是让你把旧配置迁到新的格式里,Axl 则通过adoption 编译器把现有资源转换成原生扩展:
- 首次启动时扫描已知配置位置(不执行发现的代码),列出你已有的插件、agent、MCP 服务器数量;
- 运行
/adopt交互式审查,或直接axl install安装; - 转换完成后生成带来源证明(provenance)、测试记录和 lockfile 的原生副本,原始安装永远不被修改。
支柱二:有用的默认值
Axl 有很多设置,但没有一个是"第一次使用"所必需的。功能在你需要时才出现——adoption 扫描本身就是 onboarding,没有设置向导,也没有问卷调查。部分依赖稀缺资源的默认项(如语音模型)保持关闭,零配置不等于默认替你订阅服务。
支柱三:可见的学习
纠正和反复出现的偏好可以沉淀为规则,但每一条学到的变更必须基于用户证据、被完整记录、且可一键回滚。这是后文"学习循环"的核心。
支柱四:内核之外皆可替换
side conversation、plan 模式、insights、浏览器支持、mission control……所有内核外的第一方功能都是原生扩展,与第三方扩展使用同一套公开 API。禁用的功能不占用任何 prompt token、UI 或后台工作。
支柱五:一个运行时,跨越客户端与模型
终端、Web、移动端、IDE 都是同一个 daemon 状态的投影;模型侧则通过 provider 适配器和 entitlement 池让用户保留自己偏好的模型与账号。更多架构细节见 CODE_STRUCTURE.md 与 docs/architecture/decisions.md。
Adoption 编译器:如何把别人的插件"编译"成 Axl 原生的
Adoption 本质上是一个有界的小模型工作流,完整管道定义在 ROADMAP.md:
- 抓取并锁定源(按不可变版本或 commit);
- 检查源而不执行它;
- 提示转换模型,在隔离的 staging 目录中生成原生输出;
- 类型检查 + 在隔离环境中跑上游测试;
- 失败时允许一次修复提示,然后停止;
- 向用户展示完整 diff、权限、检查结果和未支持行为;
- 审批通过后原子激活。
几个值得新手记住的设计细节:
- 🔒转换隔离:转换 worker 只能读锁定的源码、只能写 staging 目录,无网络、无主机凭据——因为"读进来的源码是敌意输入";
- 🏷️四个兼容级别:
native(原样导入)、adapted(等价翻译)、isolated(兼容进程隔离执行)、unsupported(无等价物)。级别之间绝不静默替换; - 📦
adoption.json溯源文件:记录源生态、版本、内容哈希、许可证、转换器版本、转换模型与设置、验证结果等; - 🔄安全更新:
/adopt update做三方合并(旧上游、新上游、本地转换产物),本地修复以 overlay 补丁形式保留,冲突时停下来交人工审查。
v1 明确不追求"确定性翻译框架"这类重型机制,而是复用上游已有测试;同时路线图设定了硬性门槛——语料库中至少 90% 的包能以主入口面转换激活,80% 的面达到native或adapted级别。
子代理:默认关闭,四种权限显式发放
Axl 路线图对子代理(subagents)的立场非常鲜明:普通 agent 默认拿不到任何子代理工具,委派能力只来自显式的生成权限(spawn authority),绝不由模型自行决定。
谁可以创建子会话?
ROADMAP.md 中定义了恰好四种生成权限:
| 权限持有者 | 典型场景 |
|---|---|
| 用户 | /subagents显式创建、/btw侧边对话 |
| 脚本 | workflow 用普通代码控制扇出 |
| 目标(goal) | 在预算内生成测试、评审、并行尝试 |
| 系统 | /adopt等显式操作使用的有界内部 worker |
子代理本质上是一个带父节点的完整子会话:有自己的模型、thinking 级别、工具集、事件日志和树节点;预算从父级滚存(子代理永远花不掉父级没有的钱),权限只能收窄不能放大。每个后端共享统一生命周期:start / send / interrupt / status / wait / snapshot / resume / dispose。
/btw:不打断主任务的侧边对话
/btw会开出一条"侧信道分支":它看得到主 agent 做过的一切,能立即回答,但主 agent 永远看不见它;它的结论只会以显式事件的形式注入主分支。侧边线程还会被排除在主分支的 compaction 之外,保持启动廉价且缓存友好。
Agent 定义:写个 Markdown 就能造一个代理
.axl/agents/(项目级)或~/.axl/agents/(全局)下的 Markdown 文件——YAML frontmatter 加提示词正文——即可定义一个可复用的 agent:模型、thinking 级别、工具集、执行约束(如sandbox-only)都是数据,改完下次生成即生效。
学习循环:三级阶梯与"证据门禁"
Axl 的学习系统(ROADMAP.md)是一架三级阶梯,每级有独立的审批控制:
tier 1 instructions 只改受管的 AGENTS.md 区块 默认 auto tier 2 skills and hooks 起草技能、提示模板、hooks 默认 manual tier 3 extensions 生成原生扩展 默认 manual关键规则:
- 📚证据来源严格限定:只接受显式用户纠正、重复偏好、跨会话稳定结果等用户起源证据;仓库文件、工具输出、网页内容、模型自己的建议都不能直接变成全局规则;
- 🧾学习账本(learning ledger):位于
~/.axl/learn/,append-only,记录每次变更的层级、来源、证据、置信度和生效时间,支撑/learn diff、/learn why <rule>、/learn rollback命令; - 📉回归追踪:每次变更后对比会话前后的摩擦、工具错误率、成本、满意度指标。指标变差,tier 1 的自动变更会被自动回滚并记账;
- ⚠️可执行代码永不自动激活:即使是 tier 3 设为 auto,生成的 hooks 和扩展也必须经历隔离区、能力清单、类型检查、完整 diff、显式审批才能启用;
- 🔍Insights 引擎:
/insights扫描全部会话日志,产出确定性统计 + 模型生成的面向(facet),带时间衰减和周环比分析——但报告本身只算"候选生成器",不算证据。
换句话说:Axl 对自己的学习系统采用与对待其他一切相同的标准——有日志、可逆、按证据判断。
交付节奏:15 个阶段,前 4 个已完成
路线图的下半部分是带完成状态的技术交付清单(ROADMAP.md)。目前Phase 0–4 已完成,关键里程碑包括:
- ✅Phase 1 协议与事件日志:JSONL append-only 日志成为唯一事实来源,支持崩溃恢复、确定性回放和树重建;
- ✅Phase 2 模型基础:provider 契约、凭据隔离、
off到max七级 thinking 级别; - ✅Phase 3 最小内核:agent 循环、工具派发、
bash/read/edit最小工具面; - ✅Phase 4 守护进程 + 沙箱 + Dogfood 门禁:单 daemon 权威架构落地,Bubblewrap/Seatbelt 沙箱就绪,并通过了"Axl 用 Axl 构建 Axl"的 dogfood 验证——确定性回放可逐字节复现完整会话。
尚未交付的重点阶段一览:
| 阶段 | 内容 |
|---|---|
| Phase 8 | 子会话契约、goal 模式、/subagents、/btw、plan 模式 |
| Phase 10 | Adoption 编译器 + 兼容性目录 |
| Phase 11 | Insights 引擎 + 证据门禁的学习账本 |
| Phase 12 | 云部署(AWS/Azure/GCP/K8s)+ 订阅池(subscription pooling) |
| Phase 13 | 远程 Web、移动端、IDE 投影、无头自动化 |
其中 Phase 12 的订阅池值得一提:把个人订阅、工作账号、API key 等授权方式编组成池,配额耗尽时溢出到下一成员,且每次切换都会记录原因和缓存重预热成本,绝不静默降级。
明确不做的事:Non-goals 同样是产品决策
ROADMAP.md 列出了一张"拒绝清单",读起来非常有个性:
- ❌ 默认模型驱动的子代理(delegation 永远是用户调用的);
- ❌ adoption 稳定之前的插件市场;
- ❌ 自造 workflow 语言、第二种 skill 格式、第二层 provider 抽象;
- ❌ 自动生成代码的自动激活;
- ❌ 未经许可把历史会话注入 prompt 的"环境记忆"系统。
这张清单解释了 Axl 与"Claude Code 克隆"的区别:它押注的是采纳现有生态 + 跨客户端单会话 + 树形会话 + 可见决策。
总结:一份"诚实"的 AI 编程代理路线图
Axl 路线图最值得新手学习的地方,不在于它规划了多少功能,而在于它把约束写得和功能一样具体:默认不给模型委派权、学习必须留证据、沙箱不可用就拒绝运行、生成代码永不自动激活。五大支柱——adoption、有用的默认值、可见的学习、可扩展性、单一运行时——共同指向同一个产品论点:让工具适应你,而不是你迁就工具。
📖 想深入可以继续读:
- 完整路线图:ROADMAP.md
- 项目总览与快速开始:README.md
- 仓库结构边界:CODE_STRUCTURE.md
- 人类命令平面(
/adopt等命令的守护进程所有权):docs/architecture/human-command-plane.md - 扩展 API 与宿主实现:packages/extensions/
- 模型与 provider 适配层:packages/ai/
- 吉祥物设定:docs/mascot/ART.md
【免费下载链接】Axl
相关推荐
如何制定产品路线图:Teamlead Roadmap产品决策与战略规划完整指南
如何制定产品路线图:Teamlead Roadmap产品决策与战略规划完整指南 产品路线图是团队领导者和产品经理必备的战略规划工具,它能帮助团队明确未来发展方向
文档知识库10分钟上手unconfig:提升你的工具开发效率终极指南
10分钟上手unconfig:提升你的工具开发效率终极指南 在现代前端开发中,配置文件管理是一个既关键又复杂的问题。unconfig作为一个通用的配置加载解决方
如何10分钟跑起 ArtCraft:Rust + Tauri 本地构建 AI 创作桌面应用完整指南
如何10分钟跑起 ArtCraft:Rust + Tauri 本地构建 AI 创作桌面应用完整指南 ArtCraft 是一款面向艺术家、设计师与影视创作者的 A
人工智能AI 应用媒体生成桌面应用
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考