cairn
开源后台 Agent 系统,通过自建 GitHub App 让 AI 在你仓库里独立完成代码任务,全
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
开源后台 Agent 系统,通过自建 GitHub App 让 AI 在你仓库里独立完成代码任务,全
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
Cairn 标志
凌晨两点,你正忙着修一个祖传 Bug,突然 PM 甩来一个需求:「这个模块重构一下,下周一要上线。」你心里清楚,如果现在动手,睡眠没了;如果不动手,下周一的deadline 就是给自己挖的坑。
Cairn 就是来解决这个矛盾的——它是一个开源的后台 Agent 系统,专门替你在后台跑代码任务。你告诉它想做什么,它就默默去干:读代码、改文件、开分支、提 PR,全程不需要你在电脑前盯着。
这个项目被开发者描述为「开源版的 Codex、Jules 或 Cursor 后台 Agent」。开发者 cairn-dev 给它的定位很清晰:不是 Copilot 那种实时补全工具,而是能够独立完成整个软件工程任务的幕后工作者。
图1:Cairn Web UI 任务看板,支持实时查看 Agent 工作日志
Cairn 的架构可以用「指挥 — 执行 — 存储」三层来理解:
前端基于 Next.js + TypeScript + Tailwind CSS,跑在 5173 端口;后端用 FastAPI + SQLite,跑在 8000 端口。Web UI 提供了任务创建、看板视图(KanbanBoard)和实时日志查看功能。界面风格参考 Linear 的深色极简设计语言。
Web UI 允许用户:
Agent 层是 Cairn 的核心。项目采用混合架构:
cairn_utils/agents/llm_consts.py 定义了 ChatAnthropic、ChatOpenAI、ChatGemini 封装类,手动处理工具调用langgraph_utils.py 实现状态机式的 Agent 流程控制项目支持三大模型提供商:
| 提供商 | 模型数 | 代表模型 |
|---|---|---|
| Anthropic | 4个 | Claude Sonnet 4, Claude 3.7 Sonnet, Claude 3.5 Sonnet |
| OpenAI | 5个 | GPT-4.1, GPT-4o, GPT-4, GPT-3.5-Turbo |
| 8个 | Gemini 2.5 Flash, Gemini 2.5 Pro, Gemini 1.5 Pro |
cairn_utils/toolbox.py 定义了 Cairn 的工具箱基类。核心工具包括:
read_file_from_repo() / batch_update_files() — GitHub API 驱动search_repo_code() — 语义搜索 + 模糊匹配create_branch_from_default() — 自动创建工作分支get_directory_structure() — 理解仓库全貌工具层还包含模糊匹配(fuzzywuzzy)和差异对比(diff-match-patch)能力,让 Agent 能够理解「修改这个函数」这类模糊指令。
Cairn 实现了三种专用 Agent,覆盖不同复杂度的任务:
| Agent | 定位 | 输出 | 适用场景 |
|---|---|---|---|
| SWE Agent | 单一任务执行 | PR(分支+代码) | 简单、自包含的子任务 |
| PM Agent | 产品经理式委托 | 任务分解 + SWE 执行 | 稍复杂的多步骤任务 |
| Fullstack Planner | 全栈规划 | 并行子任务列表 + 跨任务协调 | 全栈或跨模块大型任务 |
图2:SWE Agent 专为自包含的子任务设计,适合 Bug 修复和小功能开发
这是 Cairn 与其他 AI 编程工具最大的不同——它不需要你把代码上传到任何第三方服务。
整个系统的安全模型建立在自托管 GitHub App 之上:
这种设计的好处:隐私安全(代码不经过第三方服务器)、权限可控(精确到仓库级别)、审计透明(所有操作记录在 GitHub 日志中)。
git clone git@github.com:cairn-dev/cairn.git
cd cairn
python -m venv cairn-env && source cairn-env/bin/activate
pip install -r requirements.txt
cd frontend && npm install && cd ..
# 配置 .env 和 repos.json
./run.sh
⚠️ 局限性:
docker run 快速部署
图3:Fullstack Planner Agent 协调多个并行子任务
Cairn 是一个活跃开发的开源项目(最近更新于 2025 年 7 月),核心技术栈是 Python(后端推理)和 TypeScript/Next.js(前端界面)。可以从以下方向参与:
本报告由 PIFS 自动分析系统生成,数据来源:GitHub API(2026-07-14)