「その提案、前例があります」
Zenreiは、AI駆動開発のための意思決定メモリ。 採用・却下・保留の決定をgitで記録し、MCP経由ですべてのAIエージェントに配ります。 エージェントが却下済みの設計を蒸し返したら——止まります。
↑ 実際の運用リポジトリに記録されている決定と、実際の応答。
課題
優秀なエージェントほど、良かれと思って提案してきます——3週間前にあなたが却下したのと同じ設計を。 記録がなければ、議論は何度でも最初からやり直しです。
仕組み
決定は各リポジトリの decisions/*.md(公開仕様のfrontmatter付きMarkdown)。
Zenreiはそれを索引し、MCPの5ツールで全エージェントに配信します。
書き込みは常にgitのコミット——Zenreiがデータを所有することはありません。
軽さ
決定をCLAUDE.mdに書き溜める方式は、全文が毎セッション注入されるため、記録するほどトークン課金が増えエージェントが遅くなります。 Zenreiは逆の構造です——プロンプトに常駐するのは運用3行だけ。決定本体は、必要な時にツール応答として要約されて返ります(get_contextは12件×1行、check_proposalは上位5件・理由300字まで)。
| 決定22件(本文1.5万字) | 決定1,000件(本文74万字) | |
| 全文注入方式 | 約1万トークン/セッション | 数十万トークン/セッション |
| Zenrei(応答) | 約1,900字 | 約1,800字——ほぼ不変 |
実測値。応答サイズは設計上の上限を持つため、決定数に比例しません。 照合そのものはLLMを使わない決定論的処理(1,000件で44ms)なので、Zenrei側のAI原価もゼロです。
場面
こんな覚えがあれば、Zenreiの出番です。
Zenreiの索引は全リポジトリを跨いで1つ。別プロジェクトで働くエージェントも、組織全体の前例に当たります。
技術選定・構成・ポリシーの前例が組織の共有財産になる。合わせるにせよ逸脱するにせよ、「前例を知った上で」の判断になります。
3週間前に却下した設計を、新しいセッションのエージェントがまた提案してくる——冒頭のデモの場面です。記録がある限り、何度でも同じ場所で止まります。
search_decisions で理由・日付・経緯リンクごと返ってきます。git logを掘るより速く、しかも「結論と理由」だけに要約済みです。
再検討条件つきで保留した案は、条件が成立したとき堂々と再提案できます。却下や保留が議論の打ち切りではなく条件付きの前例になる——実際の運用でも「実需要の確認」を条件に保留した機能が、需要発生とともに正式に復活しています。
Claude Code・Cursor・CI、どれも同じMCPを叩くだけ。エージェントを替えても決定は残り、同じように配信されます。
状態
すべての決定はステータスを持ち、check_proposal の応答はこの判に従います。
道具
| check_proposal | 提案を過去の決定と照合。「2026-07-08に却下済み。理由: …」を返す看板機能 |
|---|---|
| search_decisions | キーワード・ステータス・スコープ・期間で決定を検索 |
| record_decision | 決定候補の起票。作れるのは pending まで |
| list_pending | 承認待ち・保留中の一覧 |
| get_context | セッション開始時に注入する「決定済み事項・してはいけないこと」のパック |
5つで照合・検索・起票・一覧・文脈注入のすべてを覆う。ツールを増やす提案は、まず疑う——これ自体もZenreiに決定として記録されている。
導入
ローカル版とホスト版は同じ照合エンジン・同じ5ツールで動きます。 応答は一字一句同じ。違うのは「決定をどこから読み、どこへ書くか」だけです。
ローカル版
1人・オフライン・永久無料(MIT)
decisions/*.md を直接スキャン。保存した瞬間に反映--root で並べたリポジトリclaude mcp add zenrei --scope user -- \ npx -y zenrei --root /path/to/repo
ホスト版 Free
1人・GitHub連携
ホスト版 Team
チームで回す
ローカル版・決定フォーマット・データの取り出しには永久に課金しません。 決定はいつでもあなたのgitの中にあり、乗り換えも離脱もデータ移行なしで済みます。 Team(準備中)は「組織で回す仕組み」に対してのみ課金します。
原則
正はリポジトリ内のmd。Zenreiをやめても、決定の全履歴はあなたの手元にそのまま残る。
AIは候補を起票するだけ。承認フローを経ていないものを「決定」として配信しない。
Claude Code・Cursor・CI、どこからでも同じMCPを叩ける。特定IDEに吸収されない。
frontmatter 5キーのプレーンな仕様。既存のADRからはメタデータを足すだけで移行できる。
立場
エージェント記憶レイヤーは「何が起きたか」をファジーに思い出します。 Zenreiが答えるのは別の問い——「何が決定済みで、何をしてはいけないか」。
仕様
decisions/2026-08-08-no-database-in-m0.md --- id: 2026-08-08-no-database-in-m0 status: rejected date: 2026-08-08 scope: [zenrei] supersedes: [] --- # M0でデータベース(SQLite等)を導入する案 ## 決定 却下。M0はDBを持たず、mdファイルをスキャンして索引する。 ## 理由 数百ファイル規模ならフルスキャンで十分速く、DBは 「mdが正なのにDBが古い」という新しい故障モードを持ち込むだけ。 ## 再検討条件 索引構築が体感で遅くなった場合(目安: 1秒超)。
実在の決定ファイル。この「再検討条件」があるから、却下は議論の打ち切りではなく、条件付きの前例になる。