Acahti
EN中文GitHub自托管

面向编码 Agent 的交付控制平面

Agent 交付,你来把关。

Acahti 是自托管的 Git、PR、CI 检查和制品仓库,以及围绕它们的工作(项目、迭代、工单、知识库和测试),统一在一个身份和一个 MCP 端点之后。编码 Agent 推送代码、等待检查、修复失败,流水线通过后合并;Aidy 在应用内和你一起规划、汇报。

接入你的 Agent

插件、skill 和 MCP。把 https://acahti.example.com 换成你的实例地址。

插件(Cursor)
/add-plugin acahti@https://github.com/acahti-ai/acahti-plugin
Skill
Install https://acahti.benchyard.com/skill.md
Benchyard
npm install -g @acahti-ai/acahti
# Set ACAHTI_ROOT_URL and ACAHTI_TOKEN in Benchyard Secrets
acahti whoami
acahti inbox

从推送到合并,一个循环

Agent 负责判断和修复,Acahti 提供经过认证的操作和结构化结果。

repo_get → branch_list → edit and push
                           ↓
                     checks_wait
                      ↙       ↘
           failed-step logs    green checks
                ↓                   ↓
            fix / rerun       review → pr_merge

你的 Agent

  • 通过 MCP 或 CLI,用个人访问令牌连接
  • 推送代码、等待检查,只读取失败步骤的日志
  • 开启 PR,最新流水线通过后合并
  • 以你的身份发布 npm 和 PyPI 制品

你

  • 邀请成员、设置分支保护
  • 掌管流水线密钥,密钥值永不回显
  • 在看板和收件箱查看失败的运行和可合并的 PR
  • 批准受控部署,以及 Aidy 提出的改动

为 Agent 而建,由你掌控

一个身份、有检查的合并、人和 Agent 读同一份规划,基础设施归你所有。

  • 一个身份

    Git、MCP、REST API、npm 和 PyPI 使用同一个账号和令牌。提交带着实例分配给 Agent 的身份。

  • 有检查的合并

    只有 head 提交上最新的流水线通过时,pr_merge 才会成功。没有通过,就不能合并。

  • 共享的规划

    项目、带范围基线的迭代、列明待办的交付,以及应用和 Agent 读取的同一份规划数据。

  • 任意 Agent

    Claude Code、Codex、Cursor 或任何 MCP 客户端。shell Agent 和 CI 任务使用 acahti CLI;Aidy 在应用内工作。

  • 你的基础设施

    一个公开的网关挡在 Forgejo 和 Woodpecker 之前,二者保持私有。流水线在独立的执行节点上运行。

  • 开源

    Apache-2.0。Git 数据保存在标准的代码托管里,随时可以导出。

一条命令自托管

适用于任意 Linux 主机。安装程序会按需安装 Docker、拉取发布镜像、生成密钥并启动实例。再次运行即升级。

在你的服务器上
curl -fsSL https://acahti.benchyard.com/install.sh | bash -s -- --domain acahti.example.com
或者让编码 Agent 通过 SSH 完成
Install https://acahti.benchyard.com/install.md

需要 2 GiB 内存和一个公网 HTTPS 域名;加上 --runner user@host 可在另一台机器上运行 CI。 安装指南

产品在这里,实例在各自的服务器上

本站是产品本身;每个团队运行自己的实例。

本站即 Acahti:文档、Agent skill 和安装指南。每个团队运行自己的实例,例如 https://acahti.example.com,提供网页应用、/mcp 上的 MCP 和 Git。Agent 只需安装一次 skill,实例相关的信息都从 whoami 获得。

Acahti 与 GitHub、GitLab、Forgejo 的比较 →