项目预览
项目数据
项目介绍
Star 增长趋势
本站每日记录该项目 GitHub 星标变化,观测越久曲线越完整
数据来源:GitHub API 逐日快照 · 收录于 2026-09-28 · 当前星标 ★ 1899
使用教程
ℹ 本教程由 AI 依据该项目 README 整理,个别步骤可能需要按你的环境微调。
环境要求
- Git(scan 的文件清单来自 Git,仓库需可被 Git 识别)
- Go 工具链(仅从源码编译时需要,产物为 CGO-free 单二进制)
- 支持 MCP 的编码代理宿主:Claude Code、Codex、Cursor、opencode 等
- 可选数据库:PostgreSQL、MySQL,或受限的 openGauss 6.0.5
安装与启动步骤
-
1获取 aoci 可执行文件
从 GitHub Releases 下载对应操作系统与 CPU 架构的发布包并按 Release 页说明校验;没有匹配包时再从官方仓库源码编译。
mkdir -p build CGO_ENABLED=0 go build -o build/aoci ./cmd/aoci -
2放到固定绝对路径
把 aoci(Windows 为 aoci.exe)放在一个稳定的绝对路径下,之后 MCP 配置都引用该路径,移动会导致连接失效。
./build/aoci --version -
3初始化并集成 MCP
init 会写入 aoci.txt、aoci.meta.txt、aoci.code.txt、AGENTS.md 等认知资产,并为当前宿主写 MCP 配置;Cursor 等不写项目配置的宿主会返回需你手动粘贴的配置。
aoci init -
4运行 scan
scan 以 Git 作为文件清单来源,因此不能把 init 写入的认知资产加进忽略列表,被忽略的文件会被静默跳过导致索引建不出来。
aoci scan -
5重启编码代理
索引通过 AOCI 的 MCP 工具写入,而执行 init 的会话还没加载刚写好的 MCP 服务器,必须重启;能动态加载 MCP 的宿主可能不需要。
-
6让代理构建索引
重启后先让代理确认 MCP 已连接,再要求它为本项目构建 AOCI 索引;如需数据库认知,按文档声明数据源并在宿主环境提供连接串变量。
-
7打开 AOCI 面板
代理会在后台执行 ui 命令并给出面板链接,用于查看索引与执行其他面板操作。
aoci ui --detach --json -
8运行基础诊断
capabilities 查看能力,doctor 做环境体检;另一个快速验证是仓库内 examples/minimal-repository 的示例走查。
"$AOCI" --repo . capabilities "$AOCI" --repo . doctor
关键配置
| 配置项 | 必填 | 说明 | 示例 |
|---|---|---|---|
MCP 配置中的 command | 是 | 宿主启动 AOCI MCP 服务器所用的 aoci 绝对路径 | /your/path/aoci |
overview_delivery.chunk_tokens | 否 | Overview 交付的唯一分块大小设置,默认 7000,有效范围 4000-24000 | 7000 |
数据库连接串环境变量 | 否 | 数据库索引所需连接串由宿主环境提供,AOCI 本身不存凭据 | postgres://user:password@localhost:5432/mydb |
如何确认成功
运行 aoci doctor 与 capabilities,确认 mcp_service_version 和 runtime_repository_root 与预期一致。
常见问题
Q:为什么 init 之后必须重启代理?
A:索引由 AOCI 的 MCP 工具写入,而执行 init 的那个会话还没加载刚写入的 MCP 服务器;能动态加载 MCP 的宿主可能无需重启。
Q:scan 之后索引建不起来怎么办?
A:检查 aoci.txt、aoci.meta.txt、aoci.code.txt、AGENTS.md 是否被 .gitignore 或 .git/info/exclude 忽略;被忽略的资产会被静默跳过,索引无法构建。
Q:怎么确认宿主连的是哪个 aoci?
A:看 aoci_overview 或 aoci_maintain 响应中的 cognition_receipt.mcp_service_version 与 runtime_repository_root,再和宿主配置里的 command 路径核对。
Q:能接管多大的代码库?
A:实际限制是索引大小而非行数,约 50 万行以内可一次性建索引,已有 70 万行商业系统配合约 30 万 token 索引在做开发。
Q:支持哪些数据库?
A:PostgreSQL 和 MySQL,另外支持受限的 openGauss 6.0.5;连接串通过宿主环境变量提供。
注意事项
- 升级或回滚后要重新核对运行中的 MCP 进程,仅替换磁盘上的二进制不会改变已运行的进程。
- AOCI 不存储数据库凭据,连接串环境变量由宿主环境提供。
- 索引与代码同仓存放并由 Git 版本管理,换人、换代理或开新会话只需读一次索引即可接续。
- 上下文被压缩后,代理需要按规则重新加载并重新完成一次完整 Overview 交付。
核心亮点
- 本地优先 + Git 版本化,索引随仓库演进可追溯、可回滚
- 通过 MCP 协议统一接入 Claude Code、Codex、Cursor、opencode 等主流代理
- 同时覆盖代码结构与数据库 schema,提供跨会话的长期记忆与代码智能
不足之处
- 项目早期,生态与集成案例有限
- 索引维护与多代理协同的实际效果需更多验证
适用场景
- 让 Claude Code 在大型仓库中改代码前先读取完整索引,减少盲改
- 团队用 Git 管理 AI 的代码知识库,随代码提交同步更新上下文
- 为 Cursor/Codex 提供跨会话的长期项目记忆,避免重复解释架构
替代项目
Sourcegraph、Continue、Aider
上一篇:AnyJev
下一篇:openharness
同类项目推荐
handmux
开源
手机远程操控终端,随时盯紧 AI 编程任务
A mobile vibe-coding cockpit — built on tmux: drive your live session, Claude Code ···
kani
开源
轻量框架,快速构建工具调用型AI应用
kani (カニ) is a highly hackable microframework for tool-calling language models. (N···
refiners
开源
简化扩散模型适配,快速实现 ControlNet、LoRA 等定制。
Refiners (discontinued early 2025) was a microframework on top of PyTorch with first···
langfun
开源
用面向对象方式写 LLM 应用,提示词变可复用类
OO for LLMs
openai-dotnet
开源
官方 .NET 库,几行代码接入 OpenAI 各类接口
The official .NET library for the OpenAI API
chatbot
开源
像搭网站一样搭聊天机器人,轻松搞定复杂多轮对话。
framework to build chatbot which could handle complex multi-turn conversation by eng···
genai-cookbook
开源
照着做,快速搭出大模型应用原型
A mixture of Gen AI cookbook recipes for Gen AI applications.
Awesome-Agent-Harness
开源
一张地图看懂LLM Agent框架设计,选型不迷路
The first survey dedicated to LLM agent harnesses — 168 references, 34 evidence-cod···
apowerb
开源
把 AI Agent 从原型编排到上生产运维
The open-source agentic framework to build, orchestrate, and operate production AI a···
