agtx
agtx 是一款专为开发者设计的多会话 AI 编程终端管理器。它不仅仅是一个简单的命令行工具,更像是一个智能的“看板指挥官”,能够自主协调 Claude、Codex、Gemini、Cursor 等多种主流 AI 编程助手协同工作。
传统 AI 编程工具通常一次只能处理一个任务,而 agtx 解决了单一代理效率瓶颈和上下文切换繁琐的问题。它允许用户在一个终端看板中定义多个任务,随后由内置的“编排器(Orchestrator)”自动接管:根据任务阶段智能分配不同的 AI 模型(例如让 Gemini 负责调研、Claude 负责编码、Codex 负责审查),并在独立的 Git 工作区和 tmux 窗口中并行执行。这意味着开发者只需按下按键,即可让多个 AI 代理自主完成从规划、实现到代码审查的全流程,最终交付待合并的代码。
agtx 特别适合需要高效管理复杂开发流程的软件工程师和技术团队。其独特亮点在于支持基于规范(Spec-driven)的插件系统,可灵活集成 GSD、Spec-kit 等工作流方法,并提供统一的多项目仪表盘。通过自动化调度与并行处理,agtx 让开发者能从繁琐的操作中解放出来,专注于核心架构设计与决策,显著提升研发效能。
使用场景
某全栈开发团队需要在两天内为一个电商后台同时实现“用户画像分析”、“推荐算法接入”和“前端看板重构”三个高复杂度模块。
没有 agtx 时
- 单线程瓶颈:开发者只能串行工作,先让 Claude 写后端,等完成后才能切换上下文让 Gemini 查资料,最后再手动调用 Codex 审查,耗时极长。
- 上下文割裂:在不同 AI 工具间切换时,需反复复制粘贴代码和需求文档,极易丢失关键信息或产生理解偏差。
- 并行管理混乱:若尝试手动开启多个终端窗口运行不同 Agent,难以统一监控进度,且容易因 Git 分支冲突导致代码覆盖。
- 人工协调成本高:开发者需时刻盯着每个任务的完成状态,手动判断何时该进入“代码审查”阶段,无法真正脱手去处理架构设计。
使用 agtx 后
- 自动化流水线:只需在 Kanban 看板添加任务,agtx 的编排器自动分配:Gemini 负责调研算法文档,Claude 并行编写核心逻辑,Codex 同步进行代码审查。
- 无缝上下文继承:agtx 为每个任务创建独立的 Git worktree 和 tmux 窗口,Agent 间自动共享规格说明书(Spec),确保信息流转零损耗。
- 真·并行执行:三个模块的开发任务在后台同时跑动,互不干扰,开发者回来时直接面对的是三个已解决冲突、待合并的成熟分支。
- 智能状态推进:编排器自动检测任务阶段,当编码完成时自动触发审查流程,无需人工干预,让开发者专注于最终的业务验收。
agtx 将原本需要数天的人工串行协作,转变为多模型自主并行的自动化交付流,让开发者从“监工”回归到“架构师”角色。
运行环境要求
- Linux
- macOS
未说明
未说明

快速开始
agtx
一个在终端看板上管理其他编码智能体的AI助手 - 添加任务,按下一键。编排智能体会接手、规划,并将其委派给多个并行运行的编码智能体。等你回来时,更改已准备好合并。
让不同的AI编码智能体在同一个任务上自主协作,实现自动会话切换和上下文感知—— 例如:Gemini → 研究 | Claude → 实现 | Codex → 审查
为什么选择agtx?
AI编码工具通常只提供一个智能体、一项任务和一个终端。而agtx则为你提供一个多编码智能体并行工作的看板——每个智能体都在自己的Git工作树中,各自独立地运行在tmux窗口里,通过由编排智能体管理的规范驱动型工作流自主完成任务。
有了编排智能体,你甚至无需亲自管理看板。一个AI智能体会接管任务、分配工作,并确保通过规划、实施、审查及解决冲突来完成任务——让你可以专注于更重要的事情:研究、定义任务以及合并代码变更。
[!TIP] 请查看贡献指南部分,或浏览
good first issues,参与其中,成为我们的贡献者⭐️
特性
- 编排智能体:一个专门的AI智能体,通过MCP自主管理你的看板——委派给编码智能体、推进各个阶段、检查合并冲突(实验性功能)
- 多智能体任务生命周期:为每个工作流阶段配置不同的智能体——例如,用Gemini进行研究、用Claude实现、用Codex进行审查——并实现智能体的自动切换
- 并行执行:每个任务都有自己的Git工作树和tmux窗口——你可以同时运行任意数量的智能体
- 规范驱动插件:可接入GSD、Spec-kit、OpenSpec、BMAD、Superpowers——或者只需一个TOML文件即可自定义
- 多项目仪表盘:通过一个统一的TUI管理所有项目的智能体会话
- 兼容工具:Claude Code | Codex | Gemini CLI | OpenCode | Cursor Agent | Copilot
[!NOTE] 如果你只需要一个普通的编码智能体会话管理器,具备完全的人工干预控制,并且不涉及自动的规范驱动技能执行和任务推进编排呢?
那就选择**
void插件**,享受完全由人工控制的看板式编码智能体界面吧。
快速开始
# 安装
curl -fsSL https://raw.githubusercontent.com/fynnfluegge/agtx/main/install.sh | bash
# 在任何git仓库中运行
cd your-project && agtx
# 仪表盘模式——管理所有项目
agtx -g
# 编排模式——让AI帮你管理看板
agtx --experimental
[!NOTE] 请将
.agtx/添加到项目的.gitignore文件中,以避免提交工作树和本地任务数据。
# 从源码安装
cargo build --release
cp target/release/agtx ~/.local/bin/
要求
- tmux — 智能体会话运行在一个专用的tmux服务器中
- gh(可选) — GitHub命令行工具,用于PR操作
使用方法
键盘快捷键
| 键 | 功能 |
|---|---|
h/l 或 ←/→ |
在列之间移动 |
j/k 或 ↑/↓ |
在任务之间移动 |
o |
创建新任务 |
R |
进入研究模式 |
↩ |
打开任务(查看智能体会话) |
m |
将任务推进到下一个工作流阶段 |
r |
恢复任务(从审查回到运行)/退回(从运行回到计划) |
p |
切换到下一阶段(仅限循环插件:审查→计划) |
d |
显示git差异 |
x |
删除任务 |
/ |
搜索任务 |
P |
选择规范驱动的工作流插件 |
O |
切换编排智能体(实验性功能) |
e |
切换项目侧边栏 |
q |
退出 |
任务创建向导
按o键创建新任务。向导会引导你完成以下步骤:
- 标题 — 输入简短的任务名称
- 插件 — 选择一个工作流插件(如果只有一个选项,则自动跳过)
- 提示 — 编写详细的任务描述,并插入内联引用
智能体的配置是在项目级别通过config.toml文件进行的(而非针对每个任务)。
任务描述编辑器
在编写任务描述时,你可以内联引用文件、技能和其他任务:
| 键 | 功能 |
|---|---|
# 或 @ |
模糊搜索并插入文件路径 |
/ |
模糊搜索并插入智能体技能或命令(位于行首或空格后) |
! |
模糊搜索并插入任务引用(位于行首或空格后) |
智能体会话功能
- 当任务从“审查”状态转为“运行”状态时,会话会自动恢复
- 整个任务生命周期中都会保留完整的对话上下文
- 可在任务弹出窗口中查看智能体的实时输出
- 自动解决合并冲突:当审查任务处于空闲状态时,agtx会检查其与默认分支之间的合并冲突。若检测到冲突,智能体将被自动指示去解决这些冲突。
配置
配置文件位置:~/.config/agtx/config.toml
工作树基础分支
agtx为每个任务创建一个新的Git工作树。默认情况下,它会按照以下顺序自动检测基础分支:main、master,最后是当前分支。你可以覆盖此设置,强制指定特定的基础分支(例如dev或develop)。
全局工作树的默认设置可以在以下位置进行配置:
# ~/.config/agtx/config.toml
[worktree]
base_branch = "dev"
项目配置
每个项目的设置可以放在项目根目录下的 .agtx/config.toml 文件中:
# 创建新任务工作树时使用的基分支(可选)
base_branch = "dev"
# 从项目根目录复制到每个新工作树的文件列表(用逗号分隔)
# 路径是相对路径,并保留目录结构
copy_files = ".env, .env.local, web/.env.local"
# 工作树创建并完成文件复制后,在工作树内部运行的 Shell 命令
init_script = "scripts/init_worktree.sh"
# 在工作树被移除之前,在工作树内部运行的 Shell 命令
cleanup_script = "scripts/cleanup_worktree.sh"
base_branch 控制新任务工作树是从哪个分支创建的。如果未指定或为空,agtx 会自动检测 main、master 分支,或者回退到当前分支。
这些选项会在从待办事项列表进入研究/规划/执行阶段的过程中运行,即在工作树创建之后、代理会话开始之前。
当一个任务工作树被移除时,cleanup_script 会首先运行(当前工作目录设置为工作树的根目录)。如果该脚本退出状态码非零,则工作树的移除会被中止,并记录错误信息(强制清理流程会在记录错误后继续执行)。脚本会接收到以下环境变量:
AGTX_PROJECT_PATHAGTX_WORKTREE_PATHAGTX_TASK_IDAGTX_TASK_SLUGAGTX_TASK_BRANCH(如果可用)
按阶段的代理配置
默认情况下,所有阶段都使用 default_agent。你可以在全局或项目级别为特定阶段覆盖代理:
# ~/.config/agtx/config.toml
default_agent = "claude"
[agents]
research = "gemini"
planning = "claude"
running = "claude"
review = "codex"
# .agtx/config.toml(项目级覆盖 — 优先于全局配置)
[agents]
running = "codex"
插件
将任何基于规范的框架接入任务生命周期。定义命令、提示和工件——agtx 会处理阶段间的流转、工件轮询、工作树同步、代理切换以及自主执行。
按 P 键可以切换插件。默认附带 7 个内置插件:
| 插件 | 描述 |
|---|---|
| void | 纯代理会话 - 不提供提示或技能,任务描述已预填在输入中 |
| agtx(默认) | 内置工作流,包含各阶段的技能和提示 |
| gsd | Get Shit Done - 结构化的规范驱动开发,支持交互式规划 |
| spec-kit | GitHub 的 Spec-Driven Development - 规范直接转化为可执行工件 |
| openspec | OpenSpec - 轻量级的 AI 辅助规范框架 |
| bmad | BMAD Method - 基于 AI 的敏捷开发,具有结构化阶段 |
| superpowers | Superpowers - 头脑风暴、计划制定、测试驱动开发及子代理驱动的开发 |
代理兼容性
命令以标准格式编写一次,然后根据不同的代理自动转换:
| 标准格式(plugin.toml) | Claude / Gemini | Codex | OpenCode | Cursor |
|---|---|---|---|---|
/agtx:plan |
/agtx:plan |
$agtx-plan |
/agtx-plan |
/agtx-plan |
| Claude | Codex | Gemini | OpenCode | Cursor | Copilot | |
|---|---|---|---|---|---|---|
| agtx | ✅ | ✅ | ✅ | ✅ | ✅ | 🟡 |
| gsd | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ |
| spec-kit | ✅ | ✅ | ✅ | ✅ | ✅ | 🟡 |
| openspec | ✅ | ✅ | ✅ | ✅ | ✅ | 🟡 |
| bmad | ✅ | ✅ | ✅ | ✅ | ✅ | 🟡 |
| superpowers | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ |
| void | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
✅ 技能、命令和提示完全支持 · 🟡 仅支持提示,无交互式技能支持 · ❌ 不支持
创建插件
将你的插件放置在项目根目录下的 .agtx/plugins/<name>/plugin.toml 中(或放在 ~/.config/agtx/plugins/<name>/plugin.toml 中以供全局使用)。它会自动出现在插件选择器中。
最小示例——一个使用自定义斜杠命令的插件:
name = "my-plugin"
description = "我的自定义工作流"
[commands]
research = "/my-plugin:research {task}"
planning = "/my-plugin:plan"
running = "/my-plugin:execute"
review = "/my-plugin:review"
[prompts]
planning = "任务:{task}"
完整参考,包含所有可用字段:
name = "my-plugin"
description = "我的自定义工作流"
# 工作树创建后、代理启动前在工作树内运行的 Shell 命令。
# {agent} 会被替换为代理名称(claude、codex、gemini 等)。
init_script = "npm install --prefix .my-plugin --{agent}"
# 限制支持的代理类型(空或省略表示支持所有代理)。
supported_agents = ["claude", "codex", "gemini", "opencode"]
# 需要从项目根目录复制到每个工作树的额外目录。
# 代理配置目录(.claude、.gemini、.codex、.github/agents、.config/opencode)总是会自动复制。
copy_dirs = [".my-plugin"]
# 从项目根目录复制到每个工作树的单独文件。
# 与 .agtx/config.toml 中的项目级 copy_files 合并。
copy_files = ["PROJECT.md", "REQUIREMENTS.md"]
# 如果为真,则启用通过 `p` 键进行“评审 → 规划”阶段切换。
# 每次循环都会递增阶段计数器({phase} 占位符)。
# 适用于多里程碑的工作流(例如:规划 → 执行 → 评审 → 下一里程碑)。
cyclic = false
# 表示阶段已完成的工件文件。
# 当检测到这些文件时,任务会显示勾号而不是加载动画。
# 支持单层目录通配符(例如:“specs/*/plan.md”)。
# 使用 {phase} 可实现周期感知路径(替换为当前周期编号)。
# 对于未指定的阶段,则不会显示完成标志。
[artifacts]
research = ".my-plugin/research.md"
planning = ".my-plugin/{phase}/plan.md"
running = ".my-plugin/{phase}/summary.md"
review = ".my-plugin/{phase}/review.md"
# 每个阶段通过 tmux 发送给代理的斜杠命令。
# 以标准格式书写(Claude/Gemini 风格):/namespace:command
# 自动根据代理类型转换:
# Claude/Gemini:/my-plugin:plan(保持不变)
# OpenCode:/my-plugin-plan(冒号变为短横线)
# Codex:$my-plugin-plan(斜杠变为美元符号,冒号变为短横线)
# 对于未指定的阶段,则回退到代理原生的 agtx 技能调用
# (例如,Claude 使用 /agtx:plan,Codex 使用 $agtx-plan)。
# 设置为空字符串表示跳过该阶段的命令发送。
# 使用 {phase} 可实现周期感知命令(替换为当前周期编号)。
# 使用 {task} 可以将任务描述内联进去。
[commands]
preresearch = "/my-plugin:research {task}" # 仅在尚未存在研究工件时使用
research = "/my-plugin:discuss {phase}"
planning = "/my-plugin:plan {phase}"
running = "/my-plugin:execute {phase}"
review = "/my-plugin:review {phase}"
# 作为任务内容发送的提示模板。
# {task} = 任务标题 + 描述,{task_id} = 唯一的任务 ID,{phase} = 周期编号。
# 对于未指定的阶段,则不发送提示(由技能或命令自行处理指令)。
[prompts]
research = "任务:{task"
# 在向 tmux 窗格发送提示之前需要等待的文本模式。
# 当某个命令会触发必须先出现的交互式提示时非常有用。
# 每 500 毫秒轮询一次,超时时间为 5 分钟。
[prompt_triggers]
research = "你想构建什么?"
# 在一个阶段完成后,从工作树复制回项目根目录的文件/目录。
# 当检测到阶段工件时自动触发(从加载图标变为勾号)。
# 适用于在不同工作树之间共享研究相关工件(规格、计划等)。
[copy_back]
research = ["PROJECT.md", "REQUIREMENTS.md", ".my-plugin"]
# 自动关闭在提示触发前出现的交互式提示。
# 每条规则在所有检测模式都出现且窗格状态稳定时生效。
# 响应是换行分隔的按键序列(例如,“2\nEnter”会发送“2”然后按 Enter 键)。
[[auto_dismiss]]
detect = ["映射代码库", "跳过映射", "输入选择"]
response = "2\nEnter"
每个阶段转换时会发生什么:
- 命令通过 tmux 发送给代理(例如
/my-plugin:plan)。 - 如果设置了 prompt_trigger,agtx 会等待该提示触发器在 tmux 窗格中出现。
- 提示会被发送,其中
{task}、{task_id}和{phase}会被替换。 - agtx 会轮询 工件 文件——一旦找到,加载图标就会变成勾号。
- 如果配置了 copy_back,完成时会将工件从工作树复制到项目根目录。
- 如果代理看起来处于空闲状态(15 秒内无输出),加载图标会变成暂停图标。
阶段门控: 某个阶段是否可以直接从待办列表进入,取决于插件配置。如果某个阶段的命令或提示中包含 {task},则可以接收任务上下文,并可从待办列表访问。如果两者都不包含 {task},则该阶段依赖于前一阶段,直到前一阶段的工件存在才会被解锁。例如,OpenSpec 的 /opsx:propose {task} 允许直接从待办列表进入规划阶段,但 /opsx:apply(不含 {task})会阻止从待办列表进入执行阶段,直到提案工件生成。
预研究回退: 当在任务上按下 R 键时,如果配置了 preresearch 且项目根目录中尚未存在 copy_back 中的研究工件,则会使用 preresearch 命令代替 research。这允许插件在切换到常规研究命令处理后续任务之前,先运行一次性的项目初始化操作(如 /gsd:new-project)。如果插件根本没有研究命令(如 OpenSpec),按下 R 键时会显示警告。
循环工作流: 当 cyclic = true 时,在评审阶段按下 p 键会将任务返回到规划阶段,并递增阶段计数器。这支持多里程碑的工作流,其中每个周期(规划 → 执行 → 评审)都会在单独的 {phase} 目录中生成工件。
自定义技能: 如果你的插件提供了自己的技能文件,请将其放置在插件目录中:
.agtx/plugins/my-plugin/
├── plugin.toml
└── skills/
├── agtx-plan/SKILL.md
├── agtx-execute/SKILL.md
└── agtx-review/SKILL.md
这些文件会覆盖内置的 agtx 技能,并自动部署到每个代理的本地发现路径(.claude/commands/、.codex/skills/、.gemini/commands/ 等)中的每个工作树。
工作原理
架构
┌─────────────────────────────────────────────────────────┐
│ agtx TUI │
├─────────────────────────────────────────────────────────┤
│ 待办列表 │ 规划 │ 执行 │ 评审 │ 完成 │
│ ┌─────┐ │ ┌─────┐ │ ┌─────┐ │ ┌─────┐ │ │
│ │任务1│ │ │任务2│ │ │任务3│ │ │任务4│ │ │
│ └─────┘ │ └─────┘ │ └─────┘ │ └─────┘ │ │
└─────────────────────────────────────────────────────────┘
│ │
▼ ▼
┌─────────────────────────────────────────────────────────┐
│ tmux 服务器 “agtx” │
│ ┌────────────────────────────────────────────────────┐ │
│ │ 会话: “my-project” │ │
│ │ ┌────────┐ ┌────────┐ ┌────────┐ │ │
│ │ │窗口: │ │窗口: │ │窗口: │ │ │
│ │ │task2 │ │task3 │ │task4 │ │ │
│ │ │(Claude)│ │(Claude)│ │(Claude)│ │ │
│ │ └────────┘ └────────┘ └────────┘ │ │
│ └────────────────────────────────────────────────────┘ │
│ ┌────────────────────────────────────────────────────┐ │
│ │ 会话: “other-project” │ │
│ │ ┌───────────────────┐ │ │
│ │ │ 窗口: │ │ │
│ │ │ some_other_task │ │ │
│ │ └───────────────────┘ │ │
│ └────────────────────────────────────────────────────┘ │
└─────────────────────────────────────────────────────────┘
│ │
▼ ▼
┌───────────────────────────┐
│ Git 工作树 │
│ .agtx/worktrees/task2/ │
│ .agtx/worktrees/task3/ │
│ .agtx/worktrees/task4/ │
└───────────────────────────┘
Tmux 结构
- 服务器:所有会话都在名为
agtx的专用 tmux 服务器上运行。 - 会话:每个项目都有自己的 tmux 会话(以项目命名)。
- 窗口:每个任务在项目的会话中都有自己的窗口。
# 列出所有会话
tmux -L agtx list-sessions
# 列出所有会话中的窗口
tmux -L agtx list-windows -a
# 连接到 agtx 服务器
tmux -L agtx attach
数据存储
- 数据库:
~/Library/Application Support/agtx/(macOS)或~/.local/share/agtx/(Linux)。 - 配置文件:
~/.config/agtx/config.toml。 - 工作树:每个项目中的
.agtx/worktrees/。 - Tmux:专用服务器
agtx及其按项目划分的会话。
协调代理(实验性)
按下
O键后即可离开。回来时,更改已准备好合并。
协调代理是一个 AI 代理,能够 驱动其他 AI 代理完成任务。你只需将任务分类到规划或执行阶段——协调代理会接管剩余流程,推动每个任务依次经过各个阶段,直到进入评审阶段,供你合并。
agtx --experimental # 然后按下 O 键
它的工作方式:
- 监控规划和执行阶段的任务。
- 在各阶段完成后自动推进任务(规划 → 执行 → 评审)。
- 尊重插件的阶段规则——在每次转换前检查
allowed_actions。 - 检测卡住的任务(超过 1 分钟未产生阶段工件)并读取代理窗格内容以诊断原因。
- 对卡住的代理进行提醒,自动回答 CLI 提示,或在需要人工干预时向你汇报具体原因。
你负责分类,它负责执行。 将任务从待办列表移至规划或执行阶段——剩下的就由协调代理来完成。最终是否合并,由你决定。
MCP 集成
编排器通过 模型上下文协议 (MCP) 与 agtx 进行通信。agtx 自带一个内置的 MCP 服务器 (agtx serve),它通过标准输入输出以 JSON-RPC 的形式将看板展示为一组工具。
┌─────────────-┐ MCP (stdio) ┌──────────────┐ SQLite ┌─────┐
│ 编排器 │ ←─────────────────→ │ MCP 服务器 │ ←────────────→ │ DB │
│ (Claude Code)│ │ (agtx serve) │ └──┬──┘
└──────┬───────┘ └──────────────┘ │
│ 空闲时推送通知 │
┌──────┴───────┐ │
│ TUI (agtx) │ ←───────────────────────────────────────────────────--─┘
└──────────────┘
编排器可用的 MCP 工具:
| 工具 | 描述 |
|---|---|
list_tasks |
列出所有任务,可按状态筛选 |
get_task |
获取任务详情,包括有效状态转换的 allowed_actions |
move_task |
排队执行状态转换(TUI 会完整地执行所有副作用) |
get_transition_status |
检查排队中的状态转换是否已完成或出错 |
check_conflicts |
对默认分支进行非破坏性的合并冲突检测 |
get_notifications |
手动获取待处理的通知(备用方式——通常会自动推送) |
read_pane_content |
读取任务代理 tmux 窗格的最后 N 行内容 |
send_to_task |
向任务代理窗格发送消息(仅限“规划中”或“运行中”状态的任务) |
工作流程:
- 当你按下
O键时,TUI 会通过claude mcp add-json --scope local将 MCP 服务器注册到编排器代理。 - 编排器会在空闲时接收到推送到其 tmux 窗格的阶段完成通知。
- 它会调用
get_task检查allowed_actions,然后调用move_task来推进任务。 - TUI 处理状态转换请求,执行所有副作用(切换代理、部署技能、发送提示),并更新数据库。
- 如果某个任务在没有产生阶段成果的情况下空闲超过 1 分钟,编排器就会收到通知——它会使用
read_pane_content读取窗格内容,然后要么通过send_to_task提醒代理,要么调用带有escalate_to_user参数的move_task来将其标记为你需要关注的任务。 - 被升级的任务会在看板上显示一个
⚠标记;打开任务弹出窗口即可查看原因并取消标记。 - 当编排器停止时,MCP 注册会被清理。
贡献
我们欢迎各种贡献!无论是修复 bug、开发新插件、集成新代理,还是改进文档。
完整的指南请参阅 CONTRIBUTING.md。以下是简要说明:
# 克隆并创建分支
git clone https://github.com/<you>/agtx && cd agtx
# 构建并测试
cargo build && cargo test --features test-mocks
适合初学者的贡献
不知道从哪里开始?这里有一些建议:
- 编写插件 — 只需要一个
plugin.toml文件即可。完整的参考请见 创建插件。 - 添加新代理 — 集成你喜欢的 AI 编程 CLI。关于代理的结构,请参阅 架构文档。
- 改进文档 — 发现了不清楚的地方吗?帮助他人,把它改得更清晰吧。
- 报告 bug — 在 GitHub 问题页面 上提交一个问题。提供复现步骤会非常有帮助。
- 浏览开放问题 — 查看带有
good first issue标签的问题,这些都是适合初学者的任务。
开发
完整的架构文档和开发模式请参阅 CLAUDE.md。
# 构建
cargo build
# 运行测试(包含基于模拟的测试)
cargo test --features test-mocks
# 构建发布版本
cargo build --release
版本历史
v0.1.82026/04/04v0.1.72026/03/29v0.1.62026/03/21v0.1.52026/03/18v0.1.42026/03/14v0.1.32026/03/07v0.1.22026/03/03v0.1.12026/03/02v0.1.02026/02/28v0.0.32026/02/23v0.0.22026/02/21v0.0.12026/02/14常见问题
相似工具推荐
openclaw
OpenClaw 是一款专为个人打造的本地化 AI 助手,旨在让你在自己的设备上拥有完全可控的智能伙伴。它打破了传统 AI 助手局限于特定网页或应用的束缚,能够直接接入你日常使用的各类通讯渠道,包括微信、WhatsApp、Telegram、Discord、iMessage 等数十种平台。无论你在哪个聊天软件中发送消息,OpenClaw 都能即时响应,甚至支持在 macOS、iOS 和 Android 设备上进行语音交互,并提供实时的画布渲染功能供你操控。 这款工具主要解决了用户对数据隐私、响应速度以及“始终在线”体验的需求。通过将 AI 部署在本地,用户无需依赖云端服务即可享受快速、私密的智能辅助,真正实现了“你的数据,你做主”。其独特的技术亮点在于强大的网关架构,将控制平面与核心助手分离,确保跨平台通信的流畅性与扩展性。 OpenClaw 非常适合希望构建个性化工作流的技术爱好者、开发者,以及注重隐私保护且不愿被单一生态绑定的普通用户。只要具备基础的终端操作能力(支持 macOS、Linux 及 Windows WSL2),即可通过简单的命令行引导完成部署。如果你渴望拥有一个懂你
stable-diffusion-webui
stable-diffusion-webui 是一个基于 Gradio 构建的网页版操作界面,旨在让用户能够轻松地在本地运行和使用强大的 Stable Diffusion 图像生成模型。它解决了原始模型依赖命令行、操作门槛高且功能分散的痛点,将复杂的 AI 绘图流程整合进一个直观易用的图形化平台。 无论是希望快速上手的普通创作者、需要精细控制画面细节的设计师,还是想要深入探索模型潜力的开发者与研究人员,都能从中获益。其核心亮点在于极高的功能丰富度:不仅支持文生图、图生图、局部重绘(Inpainting)和外绘(Outpainting)等基础模式,还独创了注意力机制调整、提示词矩阵、负向提示词以及“高清修复”等高级功能。此外,它内置了 GFPGAN 和 CodeFormer 等人脸修复工具,支持多种神经网络放大算法,并允许用户通过插件系统无限扩展能力。即使是显存有限的设备,stable-diffusion-webui 也提供了相应的优化选项,让高质量的 AI 艺术创作变得触手可及。
everything-claude-code
everything-claude-code 是一套专为 AI 编程助手(如 Claude Code、Codex、Cursor 等)打造的高性能优化系统。它不仅仅是一组配置文件,而是一个经过长期实战打磨的完整框架,旨在解决 AI 代理在实际开发中面临的效率低下、记忆丢失、安全隐患及缺乏持续学习能力等核心痛点。 通过引入技能模块化、直觉增强、记忆持久化机制以及内置的安全扫描功能,everything-claude-code 能显著提升 AI 在复杂任务中的表现,帮助开发者构建更稳定、更智能的生产级 AI 代理。其独特的“研究优先”开发理念和针对 Token 消耗的优化策略,使得模型响应更快、成本更低,同时有效防御潜在的攻击向量。 这套工具特别适合软件开发者、AI 研究人员以及希望深度定制 AI 工作流的技术团队使用。无论您是在构建大型代码库,还是需要 AI 协助进行安全审计与自动化测试,everything-claude-code 都能提供强大的底层支持。作为一个曾荣获 Anthropic 黑客大奖的开源项目,它融合了多语言支持与丰富的实战钩子(hooks),让 AI 真正成长为懂上
ComfyUI
ComfyUI 是一款功能强大且高度模块化的视觉 AI 引擎,专为设计和执行复杂的 Stable Diffusion 图像生成流程而打造。它摒弃了传统的代码编写模式,采用直观的节点式流程图界面,让用户通过连接不同的功能模块即可构建个性化的生成管线。 这一设计巧妙解决了高级 AI 绘图工作流配置复杂、灵活性不足的痛点。用户无需具备编程背景,也能自由组合模型、调整参数并实时预览效果,轻松实现从基础文生图到多步骤高清修复等各类复杂任务。ComfyUI 拥有极佳的兼容性,不仅支持 Windows、macOS 和 Linux 全平台,还广泛适配 NVIDIA、AMD、Intel 及苹果 Silicon 等多种硬件架构,并率先支持 SDXL、Flux、SD3 等前沿模型。 无论是希望深入探索算法潜力的研究人员和开发者,还是追求极致创作自由度的设计师与资深 AI 绘画爱好者,ComfyUI 都能提供强大的支持。其独特的模块化架构允许社区不断扩展新功能,使其成为当前最灵活、生态最丰富的开源扩散模型工具之一,帮助用户将创意高效转化为现实。
markitdown
MarkItDown 是一款由微软 AutoGen 团队打造的轻量级 Python 工具,专为将各类文件高效转换为 Markdown 格式而设计。它支持 PDF、Word、Excel、PPT、图片(含 OCR)、音频(含语音转录)、HTML 乃至 YouTube 链接等多种格式的解析,能够精准提取文档中的标题、列表、表格和链接等关键结构信息。 在人工智能应用日益普及的今天,大语言模型(LLM)虽擅长处理文本,却难以直接读取复杂的二进制办公文档。MarkItDown 恰好解决了这一痛点,它将非结构化或半结构化的文件转化为模型“原生理解”且 Token 效率极高的 Markdown 格式,成为连接本地文件与 AI 分析 pipeline 的理想桥梁。此外,它还提供了 MCP(模型上下文协议)服务器,可无缝集成到 Claude Desktop 等 LLM 应用中。 这款工具特别适合开发者、数据科学家及 AI 研究人员使用,尤其是那些需要构建文档检索增强生成(RAG)系统、进行批量文本分析或希望让 AI 助手直接“阅读”本地文件的用户。虽然生成的内容也具备一定可读性,但其核心优势在于为机器
LLMs-from-scratch
LLMs-from-scratch 是一个基于 PyTorch 的开源教育项目,旨在引导用户从零开始一步步构建一个类似 ChatGPT 的大型语言模型(LLM)。它不仅是同名技术著作的官方代码库,更提供了一套完整的实践方案,涵盖模型开发、预训练及微调的全过程。 该项目主要解决了大模型领域“黑盒化”的学习痛点。许多开发者虽能调用现成模型,却难以深入理解其内部架构与训练机制。通过亲手编写每一行核心代码,用户能够透彻掌握 Transformer 架构、注意力机制等关键原理,从而真正理解大模型是如何“思考”的。此外,项目还包含了加载大型预训练权重进行微调的代码,帮助用户将理论知识延伸至实际应用。 LLMs-from-scratch 特别适合希望深入底层原理的 AI 开发者、研究人员以及计算机专业的学生。对于不满足于仅使用 API,而是渴望探究模型构建细节的技术人员而言,这是极佳的学习资源。其独特的技术亮点在于“循序渐进”的教学设计:将复杂的系统工程拆解为清晰的步骤,配合详细的图表与示例,让构建一个虽小但功能完备的大模型变得触手可及。无论你是想夯实理论基础,还是为未来研发更大规模的模型做准备