ポートフォリオ → AI Control Center
完了したことと、正しくできたことは別。
AI Control Centerは、役割の分担、検証ステップ、人による承認を通じて、複数のAIコーディングエージェントを連携させるWindowsアプリケーションです。AIに証拠を示させるのが狙いです。各ステップの記録は確認した版に結びつき、テスト自体も、コードをわざと壊すことで誤りを検出できるかを証明します。
横にスワイプすると図の全体が見られます。
一人で複数のAIコーディングエージェントを使うとき、誰がどの版を確認したのか、テストが本当に誤りを検出できるのかを確かめる必要があります。
製品のルールとアーキテクチャを定義し、実装前に設計をレビューし、実際に使って成果を確認しました。コードはAIコーディングエージェントが実装しました。
まずは証拠と版を結びつける図とコードをわざと壊す検証フローへ。本ページでは設計図と日付付きのレビュー結果・制約を示しています。製品の操作デモは掲載していません。
報告書の上では、「終わった」と「正しく終わった」は見分けがつかない
AIエージェントは、目に見えるタスクを終わらせるのが得意です。常に合格するテスト、計算して画面に送ったのに誰も読まない値、その後に変更された版に付いたままのレビュー――どれも「合格」と表示されます。このプロジェクトでは、一度の点検で30件見つかりました。
だからこの製品は、ひとつの問いを軸にしています。本当に確かめるには、何が必要か?
| 避けたいリスク | AICCの対応 |
|---|---|
| 人が判断するポイントが明確でない | あなたが判断すべき場面で止まる |
| 同じ役割が作業し、合格基準も決める | 作業する役割は、決して合格基準を決めない |
| 承認が、確認した版と切り離されている | 承認は版に結びつき、内容が変われば失効する |
| 合格するテストが、失敗を検出できないかもしれない | 一度失敗させてから、はじめて合格を認める |
| 記録がアプリの中でしか読めない | 記録はプレーンテキストで手元のフォルダに。アプリなしで検証できる |
確認記録の価値は、どの版を確認したかで決まる
詳しく読む
実行中の各役割は、確認記録を残します。記録されるのは、誰が、いつ、どの内容のダイジェストに対して、どんな証拠で確認したか。承認には、必要な記録がすべて同じダイジェストにそろっていることが必要です。内容が変わると、入力が変わった記録だけが失効するので、影響のない作業はやり直しになりません。
判断の記録はハッシュチェーンとして残り、エクスポートして、アプリに依存しない単体の検証ツールで確認できます。チェーンの途中で改ざんや削除があれば検出できますが、チェーン全体が最初から書き直された場合まで検出できるとは主張していません。
合格は、一度失敗させてから、はじめて意味を持つ
- 復元は必ずコピーから行い、
git checkoutは使わない――保存前の変更をまとめて失ったことがあるため - スキップ0件は絶対のルール:空のパラメータ化テストが1件でもSKIPを出したら、実行全体を失敗にする
- 2つの層はどちらも代わりにならない:pytestは値が読まれていることを、本物のQWebEngine上のDOMチェックは表示されていることを確認する
- 「計算して画面に送ったのに、どこからも読まれない」という繰り返し起きる不具合を、専用ツールで探している
作業する役割は、決して合格基準を決めない
| 職責 | 読み取り | ファイルの書き込み | 合格基準の設定 | 承認 |
|---|---|---|---|---|
| 計画 | ● | — | ● | — |
| 作業 | ● | ● これだけ | 不可 | — |
| レビュー | ● | — | ● | — |
| 承認 | ● | — | — | ● 機械の記録は覆せない |
それぞれの役割はひとつの席で、自分の職責、自分の対話、自分に見えるルールを持ちます。エンジンは席の名前ではなく職責で仕事を割り振り、役割が自分の作業を自分で検証することを防ぎます。
- 合格基準は「作業」以外の席が決める。基準の記録と実装の記録が同じ役割から出ていれば、エンジンは拒否する
- 差し戻しは、位置ではなく職責に基づいて担当の席へ送られる
- 権限を与える職責は自動では割り当てない。あなたが配置していなければ、エンジンが代わりに選ぶことはない
内部の仕組み:Claude Codeは読み取り専用の職責をplanモードで実行し、Codexは読み取り専用のサンドボックスで実行します。書き込めるのは「作業」だけです。これらはベンダーのツール自身の権限モードで、AICCはそれを要求しているだけです。AICC自体はOSレベルのサンドボックスではありません。
多くのツールは「もっと自動化」を売る。これは、止まるように作られている。
権限は初期設定で渡さない
権限を与える職責は自動では割り当てません。あなたが配置していなければ、エンジンが代わりに選ぶことはありません。
「検証できない」は「壊れている」ではない
確認方法が宣言されていないタスクは「検証不能」になります。失敗としては扱わないので、壊れていないものを直しにエージェントを送ることはありません。
承認でチェック結果は覆せない
機械のチェックが失敗していれば、承認しても合格にはなりません。承認者は読むことはできても、結果を書き換えることはできません。
全体はグラフ。そして各ノードの中にも、同じ4つの層がある
Prompt、context、harness、loop、graph――この5つの層は、いまgraph engineeringと呼ばれています。互いに置き換わる段階ではなく、AICCの実行は毎回5つすべてを同時に使い、修正ループは1つのノードの中にあります。
各層がコードのどこにあるか
| Prompt | 何をするか、制約、成功の基準、返す形式――prompt_builder |
|---|---|
| Context | このステップに必要な分だけ:各職責には、自分のルール層と共有のプロジェクト記憶だけを渡す |
| Harness | 触れてよい範囲:CLIの実行部、プロジェクトの機密レベルと権限モード |
| Loop | ワークフロー内の修正ループ:修正は最大2回まで。その後、実行は人に戻る |
| Graph | 席の構成と9つのステップゲート。状態は実行記録、タイムライン、確認記録のチェーンに残る |
しない3つのことを、はっきり
渡されていないものは取らない
ClaudeやCodexへのログインはAICCを経由しません。AICCはベンダー自身のサインイン画面を開くだけで、ブラウザや他のアプリのキャッシュも読みません。認証情報のモジュールにAPIキーを受け取る新しい経路が加わると、テストが失敗します。
モデルを転売しない
ご自身のClaudeとCodexのアカウントを、それぞれの利用上限の範囲で使います。AICCが利用料に上乗せすることはありません。
独自のサーバーを持たない
アカウント登録は不要で、AICCのサーバーもありません。プロジェクトの記録は手元のフォルダにあるプレーンテキストで、AICC自身が最初の管理対象プロジェクトです。なお、プロンプトはClaudeやCodex自身のコマンドラインツールを通じて送信され、オプションのLINE通知とGoogle Drive連携にはそれぞれのデータの流れがあります。
できていること、証明できたこと、まだのこと
できていること
- Windowsデスクトップアプリ。以前のビルドでは、Windows上でインストール・起動・アンインストールを2回実施
- 職責に応じた権限を持つ役割、確認記録のチェーン、タイムライン、エクスポートできる判断記録
- 1人で複数のプロジェクトを並行して管理
検証済み
- AIを活用したリリース前レビューで2,219件のテストを実行:合格2,200件、失敗19件、スキップ0件。失敗はすべてリポジトリで説明
- 同じレビューで853件の意図的な破壊を実行し、検出できなかったものも公開
- 偽りの合格を30件見つけ、0件まで解消(2026年8月24日〜27日)
次のステップ
- 次のベータ版でのオーナーによる受け入れテスト
- 公開リポジトリはソースコードのみ。現在のインストーラーは、アップグレードまで含めた検証がまだ必要です。既知の制約はSECURITY.mdに記載
- ソースコードはGitHubで公開。コードを壊すツールもnegative-controlとして独立
GitHubのリポジトリと文書は英語です。