COGOドキュメント
COGOは、1つのロジックの上に3つの顔を持ちます:すべての人のための Webビューア、あなたの エージェントのための MCPサーバー、パワーユーザーのための CLI — すべて同じ単一のGo バイナリです。
| 顔 | 対象 | 方法 |
|---|---|---|
| Webビューア | すべての人 | cogo serve -http :8080 → ブラウザ(Vault · Freshness · Pack · Graph · Review · Guard · Veracity) |
| MCP | あなたのエージェント(Claude、Codex、Cursor、Gemini…) | cogo serve(stdio)またはHTTP経由の /mcp — ツール:pack search open capture verify archive restore remove guard xray |
| CLI | パワーユーザー | cogo add · pack · search · stale · verify · lint · agents |
色はどう計算されるか
Section titled “色はどう計算されるか”confidence = min( evidence , freshness , weakest dependency , contradiction )ノートが緑になるのは、何ひとつそれを押し下げないときだけです:観察された証拠、合格した
チェック、新鮮であること、すべての依存先が緑で、矛盾がないこと。すべての色は color_reason を
伴うため、なぜそうなったのかを常に監査できます。
- 証拠が上限を決めます:観察されたもの(ログ、コマンド、テスト、ファイル)は緑に到達でき、 伝聞や推論は黄が上限、証拠がなければ赤です。
- 鮮度はタイプごとに減衰します:コマンドは30日、アーキテクチャの決定は180日。
- ノートを編集すると色が変わります — それこそが要点です。 ビューアは入力中にライブで色を 再計算します:観察された証拠を加えれば緑に近づき、主張を変えれば「要再検証」にリセットされ、 verify(「確認した」)を押せば緑になります。
ノートの解剖図
Section titled “ノートの解剖図”---id: fisherboy-redis-hostnametype: bug # decision|bug|runbook|architecture|constraint|command|mistakeproject: fisherboyevidence: - kind: direct_log # observed → can reach green ref: "api log 2026-06-27T14:03Z: connect OK to redis:6379"check: test: "read the worker's effective env; probe connectivity to fisherboy-redis:6379" status: not_run # passed | failed | not_runlast_verified: 2026-06-27depends_on: [fisherboy-redis-topology]# ---- computed by COGO · do not edit ----confidence: yellowcolor_reason: "observed evidence but the check has not passed"---
## ClaimThe worker probably fails because it can't resolve Redis's internal hostname.Markdownのボールトが唯一の真実の源です:ポータブルで、diff可能で、ツールより長生きします。 それ以外はすべて薄いクライアントか、再構築可能なキャッシュです。
Webビューア
Section titled “Webビューア”タブ — インターフェースはスペイン語なので、画面に実際に表示される名前はこうです:
Vault(それぞれの色を伴うノート。BM25検索、フィルタ、作成日の範囲、ページ送り)、
Vigencia(有効期限 — 期限切れ、または期限が近いもの。再検証ボタン付き)、
Agentes(エージェント — 起動時にエージェントが読む AGENTS.md / CLAUDE.md を作成・
バージョン管理)、Grafo(グラフ — ノートの関係と、赤の伝播)、Revisión(レビュー —
リンク切れ、期限切れ、矛盾)、Guard、Veracidad(真実性)。
GitHubリポジトリを接続してビューアから閲覧することもできます。従来のファイルツリーか、 信頼度で色分けされたグラフマップで、コードのどの部分に検証済みの知識があるかが分かります。
運用に関わるものはすべてケバブメニューにあります(ターミナル不要):MCP接続(アプリごとに 名前付きトークンを発行・失効。期限と読み取り専用モードあり)、ゴミ箱、MCP監査(どの トークンがどのツールを、いつ、どのIPから呼んだか。ダウンロードと削除が可能)、根拠のルート、 エクスポート(バックアップ)、エージェント向け指示、設定・AIモデル。
Guard、ステップバイステップ
Section titled “Guard、ステップバイステップ”Guardはひとつの問いに答えます:「このモデルのターンは私を押し込もうとしているか?」
- マンデートを宣言します(一度だけ):あなたの目標とレッドライン(「署名済みの別のオファー なしには辞職しない」)。ボールトに保存されます。マンデートがなければ、操作と正当な説得は 区別できません — その場合COGOは判定なしでテクニックに名前を付けるだけです。
- ターンを貼り付けます(それ以前の会話も、1行につき1メッセージ:
U:あなた、M:モデル)→ 色付きのレントゲン写真:緑 — シグナルなし;黄 — 説得が存在する、または レッドラインに触れている;赤 — 機構がある、または領収書がある。 - 領収書が最大の武器です:COGOはトランスクリプトを見ているため、モデルが自分の発言を 否定したとき(「辞職しろとは言っていない」)、COGOは実際にそう言ったターンを見つけ、 両方の引用を並べて見せます。ガスライティングは、あなたの言葉対モデルの言葉であることを やめます。
- 検出されたすべての戦術は、そのクリティカルな問いと対抗策とともに届きます — エンジンは モデルを検閲しません:あなたに免疫を付けます。見せるのはCOGO、決めるのはあなたです。
その背後にあるオントロジー:6つの攻撃的分野から蒸留された 108の操作テクニック — 説得 (Cialdini、Kahneman)、警察・軍の尋問(Reidテクニック、Army FM 2-22.3、Scharff)、交渉 (Harvard、Voss)、強制と思想改造(Lifton、Biderman)、感情的操作(ガスライティング、DARVO、 FOG)、レトリック / プロパガンダ(Frankfurt、Grice、Walton) — それぞれに実在の出典、 チャットでの現れ方、対抗策が付いています。
Veracity:堅実か、煙か?
Section titled “Veracity:堅実か、煙か?”Guardの双子です。Guardが*「押し込もうとしているか?」と問うのに対し、Veracity タブ
(MCPツール xray)は「この回答は持ちこたえるか?」*と問います。モデルの回答を貼り付けると、
COGOはそれを文ごとに、決定論的に、モデルなしでレントゲンにかけます:コミットメント
(ぼかしているか、強く断言しているか)、証拠(観察、伝聞、なし)、そして反証可能か
(事実の衣をまとった意見か)を測定します。根拠のない強い主張は赤になり、観察された証拠を伴う
堅実な主張はより良い色になります。設計ドキュメント:
docs/motor-veracidad.md。
再確認される根拠
Section titled “再確認される根拠”ノートの根拠は印象ではなく、COGOが再び検証しに行ける参照です。ローカルパスに加えて、二つの スキームがそれを長持ちさせます。
evidence: - kind: command_output ref: github://acme/api@main/internal/db.go:88 # blobのSHAに固定 - kind: direct_log ref: artifact://9f2a… # 内容アドレス指定、不変GitHub参照はファイルのblob SHAに固定されます。これにより、あなたのコードの作業コピーを 持たないホスト型インスタンスでも色エンジンが牙を取り戻し、gitに固定された鮮度が有効に なります。引用されたファイルが変わらない限りノートは緑のままで、変われば黄色に落ちます。 固定コミットを引用すれば、根拠は不変になります。
成果物(stash)は内容のSHA-256の下に、ディスクまたはCloudflare R2へ保存されます。鍵が
ハッシュそのものなので、verify は腐る引用を信じる代わりにハッシュを再計算します。
保存前に秘密情報スキャナーが走り、既定では保存を拒否するため、漏れた資格情報が永久化
されることはありません。
複数のエージェント、一つのvault
Section titled “複数のエージェント、一つのvault”HTTP上のMCPとトークンを使えば、異なるマシンのエージェントが一つのvaultを共有します。
recallはvaultを保管庫からチャネルへ変えるカーソルです。引数なしで呼ぶと、プロジェクトを 支える記憶(マンデート、緑の決定)とカーソルが返ります。そのカーソルをsinceとして返せば、 変わった分だけが得られます。leaseは、移行・デプロイ・一括編集といった危険で非冪等な作業の前に、リソースへ期限付きの 権利を取ります。二つのエージェントが同時に実行しないためです。- すべてのノートに誰が記録したかが残り、ビューアはエージェントで絞り込めます。
- 監査ログは、どのトークンがどのツールを、いつ、どのIPから呼んだかを記録します。ダウンロード でき、1件ずつでも全体でも削除できます。
cogo init # create a vaultcogo add nota.md # validate, compute the color, store (stdin if no file)cogo pack "redis" # build a colored context for a topic (degrades red)cogo search "worker" # list: color · id · summary (no bodies)cogo stale # what is expired or about to expirecogo verify <id> # "I checked it": revalidate and re-colorcogo lint # broken links, expired notes, contradictions (if a model is set)cogo agents --claude # generate the CLAUDE.md/AGENTS.md that teaches an agent the protocolcogo serve -http :8080 # web viewer + MCP server over HTTPcogo serve # MCP server over stdioオプションのアクセサリー(既定ではオフ)
Section titled “オプションのアクセサリー(既定ではオフ)”COGOは、これらが何もなくても100%決定論的でスタンドアロンです。各アクセサリーは環境変数で 有効化され、中核に触れることは決してありません:
| アクセサリー | 有効化 | 用途 |
|---|---|---|
| AIモデル(OpenRouter、Ollama、DeepSeek…) | COGO_LLM_BASE_URL + COGO_LLM_MODEL(またはGUIのSettings) | ノート間の矛盾の検出 + Guardのオプション層 |
| 独立した強い審判 | COGO_LLM_STRONG_BASE_URL + COGO_LLM_STRONG_MODEL | Guardのスティールマンが提案者と脳を共有しないように |
| Anonimalスクラブ | ANONIMAL_URL | シークレット / PIIをボールトに入れないために |
| Lockatusログイン(OIDC) | AUTH_MODE=federado | Escribaスイートとの連携 |