Alfred 是一个自主工程团队工具,构建在 Claude Code、Codex 和 OpenCode 之上。它旨在解决交互式编码代理在单次提示后即遗忘上下文、无法持续工作的问题,让工作在你离开键盘后仍能继续推进。
用途
Alfred 将 Claude Code、Codex 或 OpenCode 转变为规范驱动的工程团队。命名代理会规划工作、编写代码、测试、互相审查并打开拉取请求。它适用于计划功能、审查评论、后续测试、依赖升级和多仓库部署等需要持续移动的工作。Alfred 将每项工作推进到你可以阅读、差异对比和合并的拉取请求,并记住所学内容以备下次使用。
主要能力
- 自主工程工作流:规划者将请求转化为有界实现工作;架构师可将已批准的变更拆分到多个仓库;高级开发者在单个工作树中实现一个问题并打开 PR;独立审查者检查差异;测试工程师添加覆盖;修复者处理高优先级审查发现。
- 角色分工:每个角色有单一职责,稳定的角色标识符(如 planner、senior-dev、reviewer、test-engineer)控制调度和 GitHub 标签。可选主题仅更改显示名称。
- 协调层:GitHub 问题、标签、分支、评论和拉取请求构成共享协调层。Slack 为可选,支持规划、状态和受信任的控制命令,但不绕过审批门。
- 本地记忆与代码上下文:默认回忆课程存储为嵌入式 SQLite。FleetBrain 保留本地操作账本、审查队列、失败历史和工作状态。记忆候选需通过结构检查和置信度审查才能影响后续运行。操作员可以检查、拒绝、退役或回滚课程。
- 上下文控制:压缩成功的工具输出同时保留完整失败输出;通过结构优先和增量视图读取大文件;按提示预算排序和修剪回忆课程;在变更前添加上下文影响范围;在配置明确仓库范围后提供固定、校验和验证的代码库记忆 MCP 二进制文件。
- 可选附加组件:密集本地嵌入、Redis 记忆、带 pgvector 的 Postgres、Headroom 压缩或替代图工具。这些组件保持可检查和可逆。
- 本地控制界面:alfred 管理设置、健康、角色、运行、引擎、记忆和日志;alfred serve 提供回环 JSON API 和浏览器界面;Tauri 桌面应用使用相同的本地 API;Slack 提供可选协作界面。ALFRED_HOME 默认为 ~/.alfred,包含部署的运行器、状态、日志、工作树和提示覆盖。
使用方式
Alfred 开源,运行在 macOS 或 Linux 上。macOS 桌面应用(签名版)可安装或修复本地运行时并打开引导设置,主要打包目标为 Apple 芯片的 macOS。也可从下载页面下载签名的 macOS 包或 Linux 包。对于 Linux 或源码安装,以及无人值守设置,需明确提供仓库范围。在启用计划工作前,可通过干运行验证安装,干运行会解析角色并检查生命周期,而不调用引擎或更改 GitHub、Slack、git、调度器或项目文件。
适用场景
Alfred 适用于独立开发者和小团队,他们希望自主工作在检查点之间继续,同时保留对高风险操作和合并策略的明确控制。典型场景包括计划功能、审查评论、后续测试、依赖升级和多仓库部署。
限制
Alfred 以你的本地用户权限运行。仓库配置控制 Alfred 调度和索引的内容,但它不是文件系统或网络沙箱。它仅为你配置的仓库调度工作。代码变更和审查角色使用独立的工作树。在引擎工作开始前,它会检查锁、认证、磁盘空间和支出限制。它会停止重复失败的运行,而不是无限制重试。它将计划工作保持在配置的审批门后。默认情况下,它不会合并自己的 PR。它记录运行事件和验证证据以供检查。运行时网络使用可能包括配置的模型提供商、GitHub、Slack、可选遥测以及所选附加组件的下载端点。匿名聚合遥测默认启用,排除代码、提示、路径、仓库名称、分支名称和主机名,可随时禁用。代理和项目工具可以以你的用户账户权限进行其他网络调用。当需要比仓库配置更强的边界时,请使用专用操作系统账户、虚拟机或容器。
其他信息
Alfred 使用可复现测试和公共工件,而非采用声明。内存基准报告其夹具、分母、引擎、提供商和限制。存根运行验证测试框架,但不计入引擎证据。主机调度器为每次触发启动新进程。共享运行器执行预检检查,在角色需要时创建或恢复工作树,调用所选 CLI,记录事件并更新 GitHub。Alfred 不运行模型网关或长期协调器。代码采用 MIT 许可证,文档和网站内容采用 CC BY 4.0 许可证。