{
  "title": "ファイルシステムはデータベースである：エージェントに新しいストレージプリミティブが必要な理由",
  "excerpt": "RAGパイプラインはエージェントにメモリを与えた。しかし次世代のエージェントインフラは、まったく異なるプリミティブへと収束しつつある。それが仮想ファイルシステムだ。MintlifyのChromaFsから、TursoのAgentFS、BoxのエンタープライズVFSレイヤーまで、そのパターンは明白だ。ファイルシステムはエージェント認知のユニバーサルインターフェースになりつつあり、データベースは静かにその基盤へと変わっていく。",
  "content_html": "<p>エージェントインフラの世界で興味深いことが起きている。それは多くの人が予想していたものではない。過去2年間、エージェントに知識へのアクセスを与えるための支配的なパラダイムはRetrieval-Augmented Generation（RAG）だった。ドキュメントを埋め込み、ベクターデータベースに保存し、推論時にモデルがクエリを実行する。RAGは機能した。十分に使えるものだった。しかし「十分に使える」には賞味期限があり、2026年にはその期限が切れようとしている。</p><p>業界全体で新しいパターンが浮上しており、複数の方向から同時に収束している。Mintlifyは全RAGパイプラインを仮想ファイルシステムに置き換え、セッション作成時間が46秒から100ミリ秒に短縮された[1]。TursoはAgentFSを構築した。SQLiteをバックエンドとするファイルシステムで、各エージェントにコピーオンライトのサンドボックスを提供する[2]。エンタープライズコンテンツの巨人であるBoxは、プラットフォーム全体をAIエージェント向けの仮想ファイルシステムレイヤーとして再定位すると発表した[3]。そしてByteDanceはOpenVikingをオープンソース化した。エージェントのメモリ、リソース、スキルをすべて階層的なファイルシステムとして整理するコンテキストデータベースだ[4]。</p><p>これらはニッチな実験ではない。根本的な変化のシグナルだ。<strong>ファイルシステムはエージェント認知のユニバーサルインターフェースになりつつあり、データベースは静かにその基盤へと変わっていく。</strong></p><h2>RAGが壁にぶつかった理由</h2><p>RAGは2023年における正しい答えだった。大量のドキュメントがあり、コンテキストウィンドウが限られたモデルがあり、クエリ時に関連するチャンクを浮上させる方法が必要だった。ベクター埋め込みと類似検索はその問題をエレガントに解決した。</p><p>しかしエージェントはチャットボットではない。エージェントは一つの質問をして去るわけではない。探索する。ファイルを読み、参照を発見し、それを追い、別のファイルを読み、コマンドを実行し、出力を書く。これは検索の問題ではない。ナビゲーションの問題だ。</p><p>RAGパイプラインが苦手とする理由は三つある。第一に、設計上ステートレスであること。すべてのクエリは独立しており、「今このディレクトリを見ていたから、隣のファイルを見せて」という概念がない。第二に、構造をフラット化すること。セクション、ページ、コード例の明確な階層を持つドキュメントサイトが、組織的なコンテキストを失った匿名の512トークンチャンクに切り刻まれる。第三に、スケールでコストがかかること。埋め込み計算、ベクターインデックスのメンテナンス、リランキングはすべてレイテンシとコストを加算し、コーパスが成長するにつれて複利的に増大する。</p><p>ファイルシステムはこの三つすべてを解決する。本質的にステートフルだ（エージェントには作業ディレクトリがある）。構造を保持する（ディレクトリ、サブディレクトリ、ファイル）。そして操作がシンプルなので高速だ：<code>ls</code>、<code>cat</code>、<code>grep</code>、<code>find</code>。これらは新しい抽象化ではない。コンピューティングで最も実績のあるインターフェースだ。</p><h2>収束：四つのアプローチ、一つのパターン</h2><p>この瞬間を重要にしているのは、ファイルシステムパターンが非常に異なるコンテキストで独立して浮上していることだ。</p><p><strong>MintlifyのChromaFs</strong>はおそらく最も示唆に富む例だ。Mintlifyは何千もの企業のドキュメントアシスタントを支えている。元のアーキテクチャは教科書通りのRAGだった。ドキュメントをチャンク化し、埋め込み、クエリ時に取得する。ChromaFsに置き換えたとき、結果は劇的だった。ChromaFsはUNIXコマンドをインターセプトしてChromaデータベースクエリに変換する仮想ファイルシステムだ。セッション作成は46秒から100ミリ秒へ、460倍の改善。会話あたりの限界コストは$0.0137から実質ゼロに低下した[1]。重要な洞察：エージェントはすでにファイルシステムのナビゲート方法を知っている。<code>cat /auth/oauth.mdx</code>の使い方を教えることは、適切なベクタークエリの組み立て方を教えることと比べて些細なことだ。</p><p><strong>TursoのAgentFS</strong>は別の問題に取り組む：エージェントの分離と監査可能性だ。各エージェントはコピーオンライトセマンティクスを持つSQLiteバックエンドのファイルシステムを持つ。ホストファイルシステムは読み取り専用のベースレイヤーで、エージェントはSQLiteデルタレイヤーに書き込む。すべてのファイル操作、ツール呼び出し、状態変化が記録される。エージェントランタイム全体、ファイル、状態、履歴が単一のポータブルSQLiteファイルに収まる[2]。これは単なるファイルシステムではない。監査可能で再現可能な実行環境だ。</p><p><strong>BoxのエンタープライズVFS</strong>は戦略的に最も重要だ。Box CEOのAaron Levieは明確に述べている：エージェントがエンタープライズでナレッジワークを行うにはファイルシステムが必要だ[3]。しかしBoxが売り込んでいるのは文字通りのファイルシステムではない。オブジェクトストレージ、リレーショナルデータベース、または自社コンテンツプラットフォームでバックアップできる「動的データデリバリーコントラクト」だ。ファイルシステムはインターフェースであり、バッキングストアはデータに合ったものが何でも使える。Boxの戦略で興味深いのはガバナンスレイヤーだ：コンテンツプラットフォームからエージェントへ自動的に引き継がれる権限、監査証跡、コンプライアンス境界。</p><p><strong>ByteDanceのOpenViking</strong>はパターンを最も遠くまで推し進める。標準的なファイルシステムセマンティクスを使用して<code>viking://</code>プロトコルの下にすべてのエージェントコンテキスト、メモリ、リソース、スキル、知識を整理する。エージェントは<code>ls</code>と<code>find</code>でナビゲートする。しかし巧妙な部分は階層型アクセスモデルだ：すべてのコンテキストは三つのレイヤーに処理される。L0は素早い取得のための一文の要約。L1は計画のためのコア情報を含む概要。L2は詳細な読み込みのための完全なコンテンツ[4]。エージェントはL0から始め、より多くが必要なときにL1に掘り下げ、詳細な作業をするときだけL2をロードする。LoCoMoベンチマークでは、トークン消費量が2,460万から420万に削減され、タスク完了率が52%に向上した[4]。</p><h2>インターフェースとしてのファイルシステム、基盤としてのデータベース</h2><p>四つすべてをつなぐパターンは、私が<strong>VFS二重性</strong>と呼ぶものだ：ファイルシステムがインターフェースとして勝ち、データベースが基盤として勝つ。これはどちらかを選ぶ問題ではない。レイヤードアーキテクチャだ。</p><p>ファイルシステムがインターフェースとして勝つ理由は明快だ。LLMはインターネットで訓練されており、インターネットはファイル、ディレクトリ、パス、コマンドラインツールで考える開発者によって構築されている。モデルはこれらのプリミティブに対して異常に有能だ。なぜなら開発者がコードベースをナビゲートし、ファイルを読み、シェルコマンドを実行する何十億もの例を見てきたからだ。エージェントにファイルシステムを与えることは、そのトレーニングデータが生きている場所でエージェントと出会うことだ。</p><p>データベースが基盤として勝つ理由も同様に明確だ。エージェントのメモリを共有、監査、複数のエージェントによるクエリ、または同時実行下での信頼性が必要になった瞬間、データベースの保証が必要になる。ACIDトランザクション、アクセス制御、セマンティック検索、バージョン履歴：これらはデータベースが数十年かけて解決してきた難しい問題だ。文字通りのファイルシステムの上にこれらを再実装することは苦痛への道だ。</p><p>VFSパターンは両方を提供する。エージェントはファイルとディレクトリを見る。システムはテーブル、インデックス、アクセス制御リストを見る。ChromaFsはすべてをChromaに保存するがファイルとして公開する。AgentFSはすべてをSQLiteに保存するがPOSIXファイルシステムとして公開する。OpenVikingは独自のストレージエンジンを使用するが<code>viking://</code>パスとして公開する。Boxはエンタープライズコンテンツプラットフォームを使用するがナビゲート可能なツリーとして公開する。</p><h2>VFSは本当にネイティブファイルシステムに勝てるのか？</h2><p>これらすべてに対する自然な反論は：なぜ本物のファイルシステムを使わないのか？POSIXはそこにある。すべてのオペレーティングシステムに付属している。なぜ抽象化レイヤーを追加するのか？</p><p>この質問に実証的に答えたかったので、私は<a href=\"https://github.com/subramanya1997/markdownfs\">markdownfs</a>を構築した。エージェントワークロード専用に設計されたRustによるゼロから作った仮想ファイルシステムだ[6]。完全なUNIX系コマンドセット（<code>ls</code>、<code>cat</code>、<code>grep</code>、<code>find</code>、<code>chmod</code>、<code>chown</code>）、コンテンツアドレッサブルストレージを使ったGitスタイルのバージョニング、マルチユーザー権限管理をサポートし、三つのアクセス方法を公開する：CLI/REPL、HTTP/REST API、そしてClaudeやCursorのようなエージェントが直接接続できるMCPサーバー。</p><p>アーキテクチャはシンプルだ：SHA-256ハッシュを使ったコンテンツアドレッサブルblobストアでバックアップされたインメモリinodeテーブル、安全な同時アクセスのための<code>tokio::RwLock</code>。ファイルは自動的に重複排除される。バージョン管理はGitと同じcommit/revertモデルを使用するが、ファイルシステムレベルで行われる。永続化はアトミックなbincodeスナップショットで処理される。</p><p>標準的なエージェント操作（ファイル作成、読み取り、書き込み、ディレクトリリスト、grep、find、移動、コピー、削除）でmarkdownfsをネイティブファイルシステムと比較ベンチマークしたところ、markdownfsは全体的に平均約<strong>130倍高速</strong>だった。理由は偶発的なものではなく構造的なものだ。インメモリ操作はディスクI/Oを完全に排除する。コンテンツアドレッサブルストレージは重複ファイルを一度だけ保存する。ゼロコピー読み取りはシリアライゼーションオーバーヘッドなしにエージェントがデータを取得できることを意味する。そしてファイルシステム状態全体が単一プロセスに存在するため、システムコール境界を越える必要がない。</p><p>エージェントが最も頻繁に実行する操作では比較が特に際立っている：</p><table><thead><tr><th>操作</th><th>VFSが勝つ理由</th></tr></thead><tbody><tr><td><strong>繰り返し読み取り</strong>（エージェントがコンテキストを再読み込み）</td><td>インメモリ、ゼロコピー。ディスクシーク不要、ページキャッシュミス不要。</td></tr><tr><td><strong>ファイル横断grep</strong>（エージェントがパターンを検索）</td><td>すべてのコンテンツがインメモリ。ディレクトリトラバーサル不要、ファイルハンドル管理不要。</td></tr><tr><td><strong>高速ファイル作成</strong>（エージェントが作業成果物を生成）</td><td>ファイルシステムジャーナリング不要、ディスク上のinode割り当て不要、fsync不要。</td></tr><tr><td><strong>ディレクトリリスト</strong>（エージェントが構造を探索）</td><td>BTreeMapルックアップ対readdirシステムコール。</td></tr></tbody></table><p>しかしパフォーマンスは本当の議論ではない。本当の議論はネイティブファイルシステムが<em>できないこと</em>だ。POSIXファイルシステムにはセマンティック検索の概念がない。組み込みのバージョニングがない（それにはGitが必要だ）。階層型アクセスモデルがない（ファイル全体を取得するかゼロかだ）。コンテンツ重複排除がない。エージェント操作の監査証跡がない。そして決定的に、MCPインターフェースがない。つまりエコシステムが収束しつつある標準プロトコルを通じてエージェントがアクセスできない。</p><p>VFSは単に高速なだけではない。より豊かなプリミティブだ。<code>ls</code>と<code>cat</code>の親しみやすいインターフェースを提供しながら、エージェントが実際に必要とする機能を追加する：バージョニング、権限管理、検索、重複排除、MCPまたはHTTPを通じたプロトコルネイティブアクセス。</p><h2>RAGにとっての意味</h2><p>明確にしておくと、RAGは死んでいない。ベクター検索は、エージェントが何を探しているか本当にわからないファジーなセマンティッククエリには依然として価値がある。しかし正直な評価は、RAGは過剰適用されてきたということだ。チームがRAGパイプラインを展開した多くのユースケース、ドキュメント取得、コードベースナビゲーション、エンタープライズナレッジ管理は、ファイルシステムインターフェースの方がより良く対応できる。</p><p>証拠は印象的だ。Mintlifyの460倍の高速化はRAGをファイルシステムに置き換えることで実現した。補強ではなく[1]。Lettaの研究では、シンプルなファイルシステム操作を使用するエージェントがメモリベンチマークで74%の精度を達成し、専門的な取得ツールと競争力があることが示されている。そしてエージェント型キーワード検索アプローチは、ベクターデータベースなしでRAGパフォーマンスの90%以上を達成できる[5]。</p><p>将来はおそらくハイブリッドになるだろう。オープンエンドなセマンティック検索にはRAG。構造化されたナビゲーションとタスク実行にはファイルシステム。しかし重力の中心はファイルシステムに向かってシフトしており、戦略的な意味は重大だ。</p><h2>戦略的必要性</h2><p>エージェントインフラを構築しているなら、VFS戦略が必要だ。その理由を説明する。</p><p><strong>SaaS企業向け</strong>：Boxからの教訓は、ファイルシステムがエージェントの統合サーフェスになりつつあるということだ。プラットフォームのコンテンツがファイルシステムとしてナビゲートできなければ、エージェントはあなたを迂回する。ファイルシステム的なインターフェースを通じてデータを公開するSaaS企業はエージェントワークフローの一部になる。そうでない企業はエージェントに見えなくなり、つまりユーザーにも見えなくなる。</p><p><strong>インフラベンダー向け</strong>：データベースはなくならない。ファイルシステムの下に移動するだけだ。これは実際にデータベース企業にとって良いニュースだ。TursoはこれをSQLiteの上にAgentFSを構築することで理解した。エージェントが起動するたびに新しいデータベースが作成される。世界がより多くのエージェントを実行するほど、世界はより多くのデータベースを必要とする。しかしデータベースはファイルシステム抽象化の背後に消える必要がある。</p><p><strong>エンタープライズ向け</strong>：ガバナンスの話が重要だ。Boxの売り込みは本当にはファイルシステムについてではない。コンテンツがVFSレイヤーを通じてアクセスされるとき、権限モデル、監査証跡、コンプライアンスインフラが自動的にエージェントに拡張されるという事実についてだ[3]。これはすべてのCISOが尋ねている質問への答えだ：「セキュリティの悪夢を作らずにエージェントがコンテンツにアクセスできるようにするにはどうすればよいか？」</p><h2>統一レイヤー</h2><p>エージェントインフラスタックは明確なフェーズで進化してきた：ツール（MCP）、スキル、コンテキストグラフ。仮想ファイルシステムはこのアークに三つすべての<strong>デリバリーメカニズム</strong>として適合する。MCPツールはファイルシステムを通じて呼び出される。スキルはファイルとして保存される。コンテキストグラフはディレクトリツリーとしてナビゲートされる。ファイルシステムはこれらのレイヤーを置き換えない。単一の親しみやすいインターフェースの背後にそれらを統一する。</p><p>これが本当の洞察だ。ファイルシステムは新しいアイデアではない。コンピューティングで最も古い抽象化だ。しかしそれがまさにエージェントに機能する理由だ。四半期ごとに新しいパラダイムを発明している世界では、最も強力な動きは私たちが持つ最も実証済みのインターフェースに立ち返り、その背後にモダンなデータベースを置くことかもしれない。</p><p>これを理解している企業、Mintlify、Turso、Box、ByteDanceは新しいものを構築しているのではない。古いものを認識し、新しい仕事を与えているのだ。</p><h2>参考文献</h2><p>[1] <a href=\"https://www.mintlify.com/blog/how-we-built-a-virtual-filesystem-for-our-assistant\">Mintlify. (2026年4月2日). <em>How we built a virtual filesystem for our Assistant</em>. Mintlify Blog.</a></p><p>[2] <a href=\"https://turso.tech/blog/agentfs\">Turso. (2026). <em>The Missing Abstraction for AI Agents: The Agent Filesystem</em>. Turso Blog.</a></p><p>[3] <a href=\"https://www.blocksandfiles.com/ai-ml/2026/03/09/box-pitches-virtual-filesystem-layer-for-ai-agents/5208017\">Blocks and Files. (2026年3月9日). <em>Box pitches 'virtual filesystem' layer for AI agents</em>. Blocks and Files.</a></p><p>[4] <a href=\"https://github.com/volcengine/OpenViking\">Volcengine. (2026). <em>OpenViking: An open-source context database for AI Agents</em>. GitHub.</a></p><p>[5] <a href=\"https://signals.aktagon.com/articles/2026/02/keyword-search-is-all-you-need-achieving-rag-level-performance-without-vector-databases-using-agentic-tool-use/\">Signals. (2026年2月). <em>Keyword Search is All You Need: Achieving RAG-Level Performance Without Vector Databases Using Agentic Tool Use</em>. Signals.</a></p><p>[6] <a href=\"https://github.com/subramanya1997/markdownfs\">Subramanya N. (2026). <em>markdownfs: A high-performance, concurrent markdown database built in Rust</em>. GitHub.</a></p>",
  "source_hash": "sha256:ea80be6a7f1e92f4b1cd368f4ce0178d49cbe7579c9693b08d174d40c5961953",
  "model": "claude-sonnet-4-6",
  "generated_at": "2026-04-13T19:27:15.785228+00:00"
}