aoci-spec/aoci-code
A persistent, Git-versioned map of your whole codebase and database schema that coding agents read before they touch anything. Local-first MCP server + CLI in Go: a governed repository index of code knowledge that gives Claude Code, Codex, Cursor, and opencode long-term context, memory, and code intelligence.
AOCI-CODE – AIコーディングエージェントのための永続的でGitバージョン管理されたコードベースインデックス
概要
AOCI-CODEは、ソフトウェアプロジェクトのプレーンテキストインデックスを作成する、軽量なGoベースのコマンドラインツールおよびローカルMCP (Model-Control-Protocol) サーバーです。このインデックスは、各ソースファイルの目的、依存関係、提供される公開シンボル、および自明ではない制約を記録します。インデックスはコードの隣に配置され、Gitでバージョン管理され、コードの変更に応じて自動的に更新されます。
AIエージェントにとっての重要性
- 一括理解 – LLMベースのコーディングアシスタント(Claude Code, Cursor, OpenCode, Codexなど)は、AOCIインデックスを読み込むことで、リポジトリを繰り返しスキャンすることなく、一度のパスでプロジェクト全体を把握できます。
- 迅速な引き継ぎ – 新しい開発者や新しいエージェントがコードベースを引き継ぐ際、既存のインデックスをエージェントに指定するだけで、各ファイルの役割、契約、制約を即座に理解できます。
- 継続的なメンテナンス – MCPサーバーがリポジトリを監視し、変更後に影響を受けるエントリにフラグを立て、エージェントがそれを更新することで、インデックスが実際のコードと常に同期されます。
- ローカルのみ、プライバシー優先 – すべての処理は開発者のマシン上で行われ、ソースコードや認証情報が外部に送信されることはありません。
コアコンセプト
| コンセプト | 説明 |
|---|---|
| FRAS エントリ | ファイルごとに1行:F (機能/目的), R (必要な読み取り), A (利用可能なシンボル), S (安全制約)。例:atomic.go[CG9L]: F:Provides durable replace CAS … |
ルートファイル (aoci.txt) |
現在の「CognitionSet」に属するインデックスファイルを宣言します。 |
メタファイル (aoci.meta.txt) |
タグ辞書、FRASルール、作成制約を保持します。 |
コードファイル (aoci.code.txt) |
ソースファイルに対してモデルが生成したFRASエントリ。 |
データベースファイル (aoci.database.txt) |
MySQL/PostgreSQL/openGauss用のオプションのテーブルレベルエントリ。 |
| MCP サーバー | コーディングエージェントとインデックスの間を仲介し、init, scan, maintain などを処理するローカルプロセス。 |
標準的なワークフロー
- インストール バイナリ(署名済みリリースをダウンロードするか
make build)。 - 初期化 リポジトリ:
aoci init --locale en-US --agent codex。これにより、設定ファイル、.gitignoreエントリ、空のインデックススケルトンが書き込まれます。 - スキャン リポジトリ:
aoci scan。エージェントが管理対象ファイルを読み取り、モデルがFRASエントリを書き込み、インデックスファイルが作成されます。 - UIの起動 (オプション):
aoci ui --detach --json– インデックスの健全性、カバレッジ率、保留中の更新を表示するWebパネルを提供します。 - 通常開発。コードやテストが変更されると、MCPサーバーが影響を受けるエントリにフラグを立て、エージェントが自動的に更新します。
- 整合性の検証:いつでも
aoci verifyまたはaoci checkを実行します。
サポート環境
- OS – Linux, macOS, Windows (シングルバイナリ、CGO不要)。
- エージェント – MCPプロトコルを話せるすべてのLLMベースのコーディングエージェント(Codex, Claude Code, Cursor, OpenCodeなど)。
- データベース – MySQL, PostgreSQL, openGauss 6.0.5 (テーブルレベルの認識はオプション)。
AIツールチェーンへの適合
AOCI-CODEは、LLMモデルとコードベースの間に位置します:
LLM model → (writes) → AOCI index (plain-text) → MCP server → Coding agent → Code / Tests
モデルは簡潔なFRASエントリを生成するだけで済み、エージェントはインデックスを使用して変更を計画するため、コンテキストサイズが削減され、リポジトリの繰り返しスキャンが不要になります。
はじめに(クイックスタート)
# 1. 署名済みリリースをダウンロードするか、ソースからビルド
# 2. バイナリを安定した絶対パス(例: /usr/local/bin/aoci)に配置
# 3. プロジェクトルートで実行:
aoci init --locale en-US --agent codex
aoci scan
# 4. エージェントにUIを起動してインデックスを構築させる
AOCI MCPサーバーが接続されていることを確認してから、このプロジェクトのAOCIインデックスを構築してください。
UIは http://127.0.0.1:8080/#/project のようなリンクを返し、カバレッジ、保留中の更新、FRASエントリの検索可能なビューを表示します。
ライセンスとステータス
- バージョン – v0.1.0-rc17 (リリース候補版)。
- ライセンス – Fair Source License 1.1 + MIT (FSL-1.1-MIT)。
- 成熟度 – 初期段階ですが、最大70万行の商用コードベースですでに使用されています。
関連
- プロジェクト
- プロジェクト
- Dispatch
- プロジェクト
- プロジェクト