URL: https://openai.com/index/harness-engineering/ ## 概要 OpenAIが提唱する「ハーネス・エンジニアリング(Harness Engineering)」は、人間が直接コードを書くのではなく、AIエージェント(Codex)がすべてのコードを記述・維持することを前提とした新しい開発パラダイムである。「Code-First」から「Harness-First」への転換を意味する。 ## ハーネス・エンジニアリングの核心 - **エージェント・ファースト**: エージェントが自律的に作業を進めることを前提にシステムを設計する。 - **ハーネス(馬具・基盤)の構築**: 人間の役割は、エージェントが正確かつ安全に作業できる「環境(ハーネス)」を整えることにシフトする。 - **意図(Intent)の形式化**: 自然言語によるドキュメントやプロンプトを通じて、ソフトウェアの設計意図をエージェントに伝える。 ## ハーネスの構成要素 エージェントが自律的に動くための「地図」と「感覚」を、以下のようなコンポーネントで提供する。 - **`docs/` ディレクトリ**: システムの正典(System of Record)として機能する構造化されたドキュメント。 - **`AGENTS.md`**: エージェントが最初に読み、システム全体の構造や真実のソース(Source of Truth)を把握するための「地図」。 - **可観測性スタック**: Chrome DevTools Protocol、ローカルのログ、メトリクスなど、エージェントがアプリケーションの状態を把握するためのツール。 - **機械的制約の強制**: カスタムリンターや構造テスト(Structural Tests)を用いて、アーキテクチャの一貫性を機械的に担保する。 ## エンジニアの役割の変容 エンジニアの仕事は「コードを書くこと」から「エージェントに有用な仕事をさせること」へ変わる。 - **スキャフォールディング(足場)の設計**: エージェントが作業しやすい環境やツールの構築。 - **目標の分解**: 大きな目標を、エージェントが実行可能なビルディングブロックに分割。 - **フィードバックループの構築**: プルリクエスト(PR)のレビューや、ドキュメントの更新を通じて「人間の感性(Human Taste)」をシステムに還元する。 ## 実績と数値 (OpenAIの事例) - **100万行のコード生成**: アプリケーションロジックからテスト、CI設定まで、すべてをCodexが生成。 - **開発効率**: 従来の10分の1の時間で構築。 - **チームスループット**: 3人のエンジニアで5ヶ月間に1,500件のPRを処理(1人1日平均3.5件のPR)。 ## 課題と展望 - **コンテキスト管理**: エージェントに与える情報の粒度と量の最適化。 - **AIスロップ(Slop)の回避**: コードの品質低下やドリフトを防ぎ、長期的なアーキテクチャの一貫性を維持すること。 - **人間が最も価値を発揮する領域**: どこで人間の判断(Taste)が最大のレバレッジを生むかの特定。