# LLMネイティブソフトウェア
## 定義
LLM ネイティブソフトウェアとは、実績のある中核機能を維持しながら、ユーザーが自然言語で要求した機能を LLM によって拡張コードへ変換し、その拡張を実行・再読み込み・共有できるソフトウェアである。従来の「すべてのユーザーに同じ機能を提供する」設計から、ユーザーごとの需要曲線の長い尾を、ユーザー自身が作る小さな拡張で埋める設計へ重心を移す。(Source: [[@2026__jeremymorrell.dev__Extensible Software in the age of LLMs]])
## 特徴
- **意図から拡張へ**: ユーザーの要求をツール・コマンド・イベント・UIなどのコードへ変換する
- **中核と拡張の分離**: 本体の信頼性・責任・互換性を維持し、個別要求は拡張へ逃がす
- **再読み込み可能性**: 生成したコードを本体の再デプロイなしで試し、修正し、反映する
- **共有可能性**: 個人向けの拡張をパッケージとして他のユーザーへ渡す
- **低い作者コスト**: 専門的な API 調査や定型コードの作成を LLM が補助する
- **安全境界の必要性**: 生成能力が増えるほど、権限・資源・データアクセスの制限が重要になる
## 例
記事は [[Pi]] を、安定したフックを通じて TypeScript 拡張を作成・再読み込みできる例として挙げる。AI エージェントのツール、コマンド、イベント、UIを本体へ直接追加するのではなく、拡張エコシステムへ移す設計である。
想定される利用例には、読書管理アプリの電子書籍端末連携、arXiv 論文の収集・要約・タグ付け、特定サイト向けパーサー、企業内データのカスタムビュー、サポート画面への顧客情報追加、オブザーバビリティデータの独自変換・可視化がある。
## 従来の拡張モデルとの差
プラグインやマクロ自体は新しい概念ではない。LLM ネイティブソフトウェアの差分は、拡張の作者が専門開発者に限定されず、ユーザーの自然言語要求から拡張が生成される点にある。また、拡張を配布するアプリケーションがローカルソフトウェアに限られず、ウェブのマルチテナント実行基盤へ広がる点にも特徴がある。
この差分は「生成されたコードを信頼してよい」という意味ではない。LLM は作者コストを下げるが、実行時の安全性・監査・テスト・ロールバックを代替しない。
## 安全な実行
LLM ネイティブソフトウェアは、ユーザーコードへ認証情報や広い `fetch` を与えるのではなく、承認済みの狭い関数やデータ参照をケイパビリティとして渡す必要がある。[[Capability-based Security]] と [[Extension Interface Model]] は、必要な作用だけを明示的に与えるための既存の設計語彙を提供する。
ウェブ上で実行する場合は、V8 Isolate、MicroVM、WASM + WASIなどの分離プリミティブに加えて、CPU・メモリ・ネットワーク・ログの制限、テナント分離、監査、観測可能性を設計する必要がある。(Source: [[@2026__jeremymorrell.dev__Extensible Software in the age of LLMs]])
## 横断的知見
- LLM ネイティブソフトウェアは「ユーザーがコードを書く量を増やす」概念ではなく、「本体が吸収していた需要の長い尾を、拡張の共有層へ移す」製品境界の変更である。(Source: [[@2026__jeremymorrell.dev__Extensible Software in the age of LLMs]])
- [[AIネイティブ開発]] が開発者の作業プロセスを LLM 前提へ変える概念であるのに対し、LLM ネイティブソフトウェアは利用者向け製品の振る舞いを LLM 前提へ変える概念である。前者は開発文化、後者は製品アーキテクチャを主な対象とする。(Source: [[@2026__Boris Tane Blog__The Software Development Lifecycle Is Dead]], [[@2026__jeremymorrell.dev__Extensible Software in the age of LLMs]])
## 未解決の問い
- 自然言語から生成された拡張の安全性・正確性・保守性を、ユーザーにどのように説明するか。
- 拡張のテストケース、権限要求、データフロー、費用上限を生成時にどこまで自動推定できるか。
- 本体 API の変更で共有拡張が壊れた場合、互換性・所有者・責任を誰が引き受けるか。
- 参加者の少数が拡張の大半を作る参加不均衡を、共有エコシステムの品質管理へどう反映するか。
- 専門職の個人データを扱う拡張で、生成コードの監査とプライバシー保護をどう両立するか。
## 関連
- ソース: [[@2026__jeremymorrell.dev__Extensible Software in the age of LLMs]]
- 概念: [[ウェブ拡張型ソフトウェア]] / [[AIネイティブ開発]] / [[バイブコーディング]] / [[Extension Interface Model]] / [[Capability-based Security]]
- エンティティ: [[Pi]] / [[Dynamic Workers]] / [[Cloudflare OS]]
## 出典
- [[@2026__jeremymorrell.dev__Extensible Software in the age of LLMs]]
- [[@2026__Boris Tane Blog__The Software Development Lifecycle Is Dead]]