Zenreiを日々どう回すか。覚えることは実質2つ——ふだんは何もしない、たまったら判を押す。それだけで成立するように設計されています。
導入
decisions/*.md をZenreiが読めるようになり、push のたびに索引が自動更新される。決定ファイルはまだ無くてよい--root でパスを渡すだけclaude mcp add zenrei --scope user --transport http \ https://<あなたのZenrei>/mcp --header "Authorization: Bearer <トークン>"Cursor等でも同じリモートMCPを登録できる(ツール非依存)
decisions/ に置いてコミットする。効果を最初のセッションから体感できる日常
各リポジトリのCLAUDE.md(エージェント向け指示書)に次の3行を入れておくと、エージェントが自分でループを回します。
## 意思決定メモリ(zenrei) - 作業開始時に get_context(scope: このリポジトリ名)で決定済み事項を把握すること - 設計・方針を提案する前に check_proposal で照合すること - 決定が必要な新しい論点は record_decision で起票する(承認するのは人間)
get_context を呼び、決定済み事項と「してはいけないこと」を読み込むcheck_proposal で照合。却下済み・保留中に当たれば、蒸し返しはここで止まるrecord_decision で起票する。作られるのは承認待ち(pending)の候補まで。エージェントは勝手に決めないあなたの仕事は承認だけ。週に1回、承認キューを開いて本文を読み、「承認する/却下する」を押す(=リポジトリへのstatus変更コミット)。pendingのまま放置しても害はありません——「まだ決定ではない」として配信されるだけです。
基準
迷ったらこの一問——「エージェントがこれを知らずに、望まない提案をしてくる可能性があるか?」 Yesなら記録します。
作法
check_proposal がエージェントに返すのは主にタイトルと理由。この2つに投資してください。
## 理由 には結論の言い換えではなく、判断の根拠を書く## 再検討条件 を書く。これがあると却下は議論の打ち切りではなく、条件付きの前例になる——条件成立を示した再提案は歓迎できるファイルを書き換えて歴史を消さない。必ず新しい決定で上書きします。却下→採用のような引き戻しができないのは意図的な仕様です——「一度却下され、状況が変わって覆された」という履歴全体が前例だからです。
supersedes: [旧id] 付きのpendingになる。エージェントなら record_decision の supersedes 指定)追加
--root に追加)decisions/*.md に移す。全部移そうとしない応急
| 決定が索引に出ない | frontmatterの不備が原因のことが多い。管理画面の「同期」にエラー内容(どのファイル・何が悪いか)が表示される。直してpushすれば自動で索引に入る |
|---|---|
| pushしたのに反映されない | webhookの取りこぼし。毎日の自動フル再同期で自己修復されるほか、管理画面の「同期」からいつでも再同期できる |
| 承認ボタンがエラーになる | GitHub上のstatusが既に変わっている(手動編集と競合)。同期後にリロードすれば解消 |
| 蒸し返しを取りこぼした | 照合は決定論的な字句一致のみ(設計どおり)。取りこぼした実例をメモしておく——それが照合強化(埋め込み検索)を導入するかの判断材料になる |
| エージェントがツールを呼ばない | そのリポジトリのCLAUDE.mdに運用3行が入っているか確認 |
禁忌
status: accepted のファイルを直接作らせる — 承認フローの意味がなくなる。起票は必ず record_decision(pending)経由で