AI CodingはOS進化の道を辿り直している
UnixはフラットファイルからKubernetesまで50年かかった。AI Codingは同じ旅を10倍速で進んでいる。完全なロードマップ — 既に起きたこと、今壊れていること、次に来ること、そしてパスが分岐する場所。
Knowledge Comicシリーズ — 最大の技術的深度、最小の言葉。
主張
AI Codingツールは新しいアーキテクチャを発明していない。OSの概念を10倍速で再発見している。しかも同じ順序で。
これは比喩ではない。構造的予測フレームワークだ。
完全タイムライン
Unix / OS 進化 AI Coding 進化
(1969 — 2020、約50年) (2022 — 203?、約10年)
═══════════════════ ═══════════════════
Phase 1: シングルプロセス Phase 1: シングルセッション
───────────────────── ────────────────────
1969 Unix V1 2022 Q4 ChatGPT + code
1つのターミナル 1つのcontext window
一度に1プロセス 1つの会話
ed/exエディタ Chatがインターフェース
フラットファイルシステム 永続化なし
Phase 2: マルチプロセス Phase 2: マルチエージェント
────────────────────── ─────────────────────
1975 fork() + exec() 2025 Q3 Sub-agents (Task tool)
バックグラウンドプロセス (&) バックグラウンドタスク
Pipes (A | B) Agent → 結果 → main
シグナルハンドリング 専門化agents
ジョブ制御 (fg, bg, jobs) Explore、code-reviewer等
Phase 3: IPCとマルチユーザー Phase 3: Agent Teamsとメッセージング
─────────────────────────── ───────────────────────────────
1980 BSDソケット 2026 Q1 Agent Teams ■ 今ここ
TCP/IPスタック SendMessage(mailbox)
Named pipes、メッセージキュー 共有タスクリスト
マルチユーザーログイン Team Lead + teammates
NFS(共有ファイルシステム) 共有ファイルシステム
Phase 4: メモリ管理 Phase 4: Context管理
────────────────── ─────────────────
1985 仮想メモリ (デマンドページング) 2026 Q1 Context Compaction
Swap to disk CMS checkpoint(swap to JSON)
ページテーブル 1M context window
メモリ保護 Effort tuning(リソース割当)
OOM killer Max turnsリミット
Phase 5: ファイルシステムの成熟 Phase 5: 状態永続化のアップグレード
──────────────────────────── ──────────────────────────────────
1990 ext2 → ext3(ジャーナリング) 2026 H2 ??? 予測
ファイルロック (flock) アトミックなチェックポイント書き込み
アクセス制御 (ACLs) メッセージ配信保証
/proc(プロセス内省) 並行エージェント状態アクセス
シンボリックリンク Agent内省API
fsck(ファイルシステムチェック) 状態ガベージコレクション
Phase 6: データベース層 Phase 6: クエリ可能なAgentヒストリー
───────────────────── ─────────────────────────────────
1995 Berkeley DB(組み込み) 2027 H1 ??? 予測
Syslog(集中ログ) 組み込みDBでagent状態管理
LDAP(ディレクトリサービス) 決定ごとの監査証跡
cron(スケジュールタスク) クロスセッション学習
スケジュールagent実行
Phase 7: 標準化 Phase 7: Agentプロトコル標準
────────── ──────────────────────────
1998 POSIX標準 2027 H2 ??? 予測
RPM、dpkg(パッケージ管理) Agentインターフェース標準
共有ライブラリ (.so) Skillマーケットプレイス
FHS(ディレクトリ標準) Skillバージョン管理 + 依存関係
man pages Agent能力発見
Phase 8: 仮想化 Phase 8: Agentサンドボックス
──────────── ────────────────────────
2003 VMware、Xen 2028 ??? 予測
仮想ファイルシステム サンドボックス化agent環境
リソース隔離 エージェントごとのトークン予算
スナップショット + リストア Agent状態スナップショット
chroot → jails → cgroups 能力ベースのセキュリティ
Phase 9: コンテナとクラウド Phase 9: ポータブルAgentプラットフォーム
──────────────────────── ──────────────────────────────────
2013 Docker 2029 ??? 予測
コンテナイメージ Agent定義(ポータブル)
Registry (Docker Hub) Agentレジストリ
Cloud-native (12-factor) プロバイダー非依存agents
CI/CDパイプライン Agent CI/CD
Phase 10: オーケストレーション Phase 10: Agentオーケストレーション
────────────────────────── ─────────────────────────────
2014 Kubernetes 2030 ??? 予測
サービスメッシュ (Istio) Agent mesh
オートスケーリング オートスケーリングagentプール
ローリングアップデート ホットスワップagent能力
ヘルスチェック + 自己修復 Agent健全性 + 自動復旧
証拠:Phase 1-4は既に起きた
Phase 1 → 2: シングルからマルチへ
Unix 1975:
$ command1 → 実行、終了
$ command1 & → バックグラウンド
$ command1 | command2 → 出力をpipe
Claude Code 2025:
"このタスクをやって" → 実行、終了
Task(run_in_background=true) → バックグラウンド
Task(prompt="...") → result → main → 出力をpipe
Sub-agentsはprocesses。Task toolはfork()。結果のコールバックはpipe。
Phase 2 → 3: マルチプロセスからIPCへ
Unix 1980:
socket() → bind() → listen() → accept()
send(fd, message) → recv(fd, buffer)
Claude Code 2026:
TeamCreate(team_name="dev")
SendMessage(recipient="backend-dev", content="APIの準備はできた?")
// メッセージがinboxes/backend-dev.jsonに書き込まれる
SendMessageはsocket write。InboxはMessage queue。Mailboxは/var/spool/mail。
Phase 3 → 4: IPCからメモリ管理へ
Unix 1985:
プロセスが物理メモリより多くのRAMを必要とする
→ Page fault → ページをdiskにswap → 必要なページをload
→ プロセスはそれが起きたことを知らない
Claude Code 2026:
Agentがwindow容量より多くのcontextを必要とする
→ Context Compaction → 古いcontextを要約
→ CMS: context全体をcheckpointにswap → 新プロセス
→ 新しいイテレーションは前のものの存在を知らない
Context Compactionはdemand paging。CMSはswap。Checkpointはswap file。
Phase 5は今壊れている
Phase 3-4にいる(Agent Teams + Context Compactionが着地したばかり)。Phase 5の問題は既に見えている:
問題1: 非アトミック書き込み
Unix(ジャーナリング前):
書き込み中の停電 → ファイル破損
再起動時fsck → 回復できるかも
AI Coding(現在):
Agentがcheckpoint.json書き込み中にクラッシュ → JSON破損
Resume → パースエラー → 最初からやり直し
fsck相当のものが存在しない
問題2: ファイルロックなし
Unix(flock前):
2つのプロセスが同じファイルに書き込み → データ破損
レースコンディション → サイレントなデータ損失
AI Coding(現在):
2つのteammateが同じtaskをTaskUpdate → 後の書き込みが勝つ
MVCCなし、ロックなし、衝突検出なし
レースコンディション → サイレントな状態破損
問題3: 配信保証なし
Unix(reliable sockets前):
send()が成功を返す → しかし受信者は死んでいるかも
アプリケーション層にACKメカニズムなし
AI Coding(現在):
SendMessageがsuccess: trueを返す → 常に
受信者プロセスが10分前に死んでいても
メッセージはinboxes/name.jsonに → 永遠に孤児
問題4: ガベージコレクションなし
Unix(tmpwatch/systemd-tmpfiles前):
/tmpが孤児ファイルで埋まる
死んだプロセスがpidファイルを残す
自動クリーンアップなし
AI Coding(現在):
~/.claude/teams/に死んだteam configsが蓄積
inboxes/に死んだagentsからの未読メッセージ
.cms-iterate/backups/が無限に成長
クリーンアップメカニズムなし
問題5: 内省なし
Unix(/proc前):
「プロセス1234は何をしている?」→ 標準的な方法なし
ps(1)がカーネルメモリを直接パース
AI Coding(現在):
「Teammate backend-devは何をしている?」→ APIなし
idle notifications(4フィールド)のみ
agentの現在のcontextや進捗を検査不可
Leadはpeer-to-peer通信に対して盲目
これらの問題のすべてが1985-1995年のUnixで解決された。 解決策は既知。AI Codingエコシステムがまだ構築していないだけ。
パスが分岐する場所
マッピングは1:1ではない。5つの根本的な違いがAI Codingを異なる進化に導く:
分岐1: カーネルが信頼できない
従来のOS:
カーネルは決定論的
同じ入力 → 同じ出力 → 常に
カーネルはtrusted computing base
カーネル上のすべてが信頼不要
AI OS:
"カーネル"(モデル)は確率的
同じプロンプト → 異なる出力 → 常に
モデルは幻覚し、忘れ、劣化する
カーネル自体が監視を必要とする
影響: AI OSはすべての層で防御的アーキテクチャが必要。ストレージ層がtrust anchor — 幻覚しない唯一のコンポーネント — になる。Phase 5-6がAI OSでは従来のOSより重要になる。
分岐2: すべてのCPUサイクルにコストがかかる
従来のOS:
ハードウェア購入後CPUサイクルは実質無料
リソース管理は遅く到来(cgroups: 2006)
サイクルの浪費に金銭的痛みなし
AI OS:
すべてのトークン = API呼び出し = お金
暴走agentはサイクルではなくドルを燃やす
リソース管理はPhase 8ではなく今必要
影響: トークン予算とコスト追跡がOS歴史のリソース隔離より早く到来。おそらくPhase 6、Phase 8ではない。
分岐3: 初日からマルチベンダー
従来のOS:
マシンごとに1つのカーネル(LinuxかWindows)
標準化はPhase 7(POSIX, 1998)
単一ベンダーが数十年支配
AI OS:
複数モデルが同時利用可能
Claude + GPT + Geminiが既に共存
MCPが既にinteropの試み(Phase 3!)
影響: 「POSIX moment」がより早く到来。Agentプロトコル標準化はPhase 6かもしれない、Phase 7ではなく。
分岐4: Agentが協調を推論できる
従来のOS:
プロセスは愚かな実行者
IPCは機械的(パイプを通るバイト列)
交渉やプロトコル適応が不可能
協調には厳格な仕様が必要
AI OS:
Agentはcontextを理解する
メッセージは自然言語
AgentはAPI契約を即座に交渉可能
協調は創発的になり得る
影響: ネットワーキング/オーケストレーションフェーズ(8-10)はTCP/IPよりも人間の組織に近い形になる。セマンティックルーティング — 「認証を処理できる人に送って」対「192.168.1.5:8080に送って」。
分岐5: ハードウェア境界なし
従来のOS:
物理マシンに縛られる
スケーリング = より多くのハードウェア
Dockerの存在理由は「私のマシンでは動く」
クラウドはパラダイムシフト
AI OS:
初日からAPIベース
スケーリング = より多くのAPI呼び出し
「私のマシンでは動く」は問題にならない
既にcloud-native
影響: コンテナ/クラウドフェーズ(9-10)は圧縮されるか大きく異なる。AIの「Docker moment」は環境のパッケージングではなく、agent能力のパッケージングかもしれない。
分岐を加味した修正予測
Phase 5 (2026 H2) ストレージアップグレード ← OSと同じ、より緊急
Phase 6 (2027 H1) DB + コスト追跡 ← 統合:DB + リソース管理(早期化)
Phase 6.5 (2027 H2) プロトコル標準 ← OSより早い(マルチベンダー圧力)
Phase 7 (2028) Agentサンドボックス ← OSと類似
Phase 8 (2028-29) ポータブルAgents ← 圧縮:ハードウェア境界なし
Phase 9 (2029-30) セマンティックオーケストレーション ← 分岐:K8sではなく市場
Phase 10 (2030+) 自律Agent組織 ← 新規:OS相当なし
Phase 10はアナロジーが完全に崩壊する場所。 従来のOSはプロセスが組織を形成し、自らの目標を設定し、互いを雇用/解雇できる地点に到達しなかった。AI agentsはできる。未踏の領域。
我々が先行構築できるもの
Phase 何 今構築可能? 方法
───── ──── ────────── ────
5 アトミックチェックポイント書込 ✅ 100% SQLite WALモード
5 メッセージ配信保証 ✅ 100% SQLiteキューテーブル + ACK
5 並行状態アクセス ✅ 100% SQLite行レベルロック
5 状態ガベージコレクション ✅ 100% DB上のクリーンアップクエリ
5 Agent内省 ✅ 80% ステータステーブル + heartbeat
6 クエリ可能な履歴 ✅ 100% iteration/decisionテーブルでSQL
6 監査証跡 ✅ 100% モデル決定ごとにINSERT
6 クロスセッション学習 ✅ 90% Self-Evolving Loop + DBクエリ
6 トークンコスト追跡 ✅ 100% agentごとquery()ごとのカウンター
6 スケジュールagent実行 ✅ 100% cron + IterationEngine
6.5 Agentインターフェース標準 ⚠️ 50% 我々のを定義、業界強制は不可
6.5 Skillマーケットプレイス ⚠️ 60% 既にskillsシステムあり
6.5 クロスプロバイダーinterop ⚠️ 30% 他ベンダーの参加が必要
7 サンドボックス環境 ⚠️ 60% Dockerラッパーでagents
7 トークン予算 ✅ 80% Budgetクラス + per-query tracking
7 Agentスナップショット ⚠️ 50% Checkpoint + contextダンプ
8 ポータブルagent定義 ⚠️ 40% .claude/agents/がスタート
8 Agentレジストリ ❌ 20% エコシステムが必要
9 セマンティックオーケストレーション ❌ 10% 時期尚早
10 自律agent組織 ❌ 5% 未踏領域
Phase 5-6は今日90%以上構築可能。 プラットフォームより12-18ヶ月先行。
具体的な次のステップ
今(2026 Q1):
Agent Teams安定化 + IterationEngine完成(SDK移行)
└── Checkpointクラスが永続化を抽象化
└── 背後がJSONでもDBでもインターフェース不変
次(2026 H2):
Phase 5のSQLiteバックエンド
├── iterationsテーブル(checkpoint.jsonを置換)
├── messagesテーブル(inboxes/*.jsonを置換)
├── agent_stateテーブル(team configを置換)
├── decisionsテーブル(監査証跡 — Phase 6プレビュー)
└── WALモードON、アトミック書き込み、並行アクセス
その後(2027 H1):
Phase 6機能をDB上に構築
├── クロスセッション学習クエリ
├── agentごとのトークンコスト追跡
├── スケジュール実行(cron + IterationEngine)
└── Agent内省API
2027 H2:
Phase 6.5 — agentインターフェース仕様を公開
├── 我々のagentプロトコルをドキュメント化
├── ストレージ層をオープンソース化
└── 他ツールに採用を呼びかけ
2028:
Phase 7 — agentサンドボックス
├── Docker-wrapped agent実行
├── トークン予算の強制
└── Agentスナップショット + リストア
原則
歴史は繰り返さないが、韻を踏む。旋律を知っていれば、先に歌える。
Unix進化パスは50年の旋律。AI Codingは10倍のテンポで同じ曲をハミングしている。音符は同じ。順序は同じ。問題は同じ。
唯一の問題は:各音符が鳴るのを待つか、それが到来する前に歌うか。
関連記事
- Agent Teamsが存在する前に、私たちはそれを作っていた — CMSがAgent Teamsに6ヶ月先行
- ユーザーランドハックからSDKネイティブへ — IterationEngine移行ブループリント
- Agent Teams:Meshトポロジーと5つの死に方 — Phase 3の障害モード
- マルチエージェントアーキテクチャ:並列実行パターン — Phase 2の基礎