# Agent-Computer Interface
Navigation: [[sources/_index]] | [[entities/_index]] | [[concepts/_index]]
## 定義
人間向けのGUI(グラフィカルユーザーインターフェース)やCLI(コマンドラインインターフェース)とは異なり、大規模言語モデル(LLM)エージェントの認知的特性・能力・制約に合わせて特別に設計されたコンピュータ対話の抽象化インターフェース層。[[@2024__NeurIPS__SWE-agent - Agent-Computer Interfaces Enable Automated Software Engineering]]によって提唱された。
## 4大設計原則
1. **単純で理解しやすいアクション(Simple & Easy)**: 複雑なフラグやオプションを排し、LMがプロンプト内の簡潔な説明だけで誤りなく扱えるコマンド体系にする。
2. **コンパクトで高効率な操作(Compact & Efficient)**: 検索・ファイル特定・編集・保存という一連の手続きを最小限のアクションに集約し、1ターンで実質的な進捗を生む。
3. **簡潔かつ実質的な状態フィードバック(Informative but Concise)**: 装飾や過剰な出力を抑制し、最新状態(編集後のファイルプレビュー等)をノイズなしで返す。
4. **エラー連鎖を防ぐガードレール(Guardrails for Recovery)**: 構文チェックや静的解析(リンター)を実行前に挟み、壊れた編集をブロックして早期回復を支援する。
## 横断的知見
- **人間向けUIメタファーの罠**: 人間向けUIに倣った逐次結果確認型検索(Iterative Search)は、エージェントが律儀に全件めくり続ける暴走を引き起こし、検索機能が全くない場合よりも性能を落とすことがSWE-agentのアブレーションで判明した。
- **重み不変の性能向上**: モデルのファインチューニングを行わずとも、ACIの洗練(100行ビューア、リンターガードレール、観測折りたたみ)のみでSWE-benchの解決率を64%相対向上(11.0%→18.0%)させられる。
## 未解決の問い
- Python以外の静的型付け言語(Rust, C++, Java)や、フロントエンド開発のような視覚的フィードバックが不可欠な領域において、最適なACIの抽象レベルはどうあるべきか。
- 単一エージェント向けのACI設計原則は、マルチエージェント間の協調インターフェース(Agent-Agent Interface)へどのように拡張できるか。
## 関連
- ソース: [[@2024__NeurIPS__SWE-agent - Agent-Computer Interfaces Enable Automated Software Engineering]]
- 実装システム: [[SWE-agent]]
- 関連概念: [[SWEエージェントの情報信号]]
## 出典
- [[@2024__NeurIPS__SWE-agent - Agent-Computer Interfaces Enable Automated Software Engineering]]