世界を動かす技術を、日本語で。

ハーネスエンジニアリング:エージェントファーストの世界におけるCodexの活用

2026年6月6日原文(openai.com)

概要

  • Codexエージェント が全コードを自動生成した社内ソフトウェア開発の実験
  • 人間は設計・指示・レビュー に専念し、コードは一切手書きせず
  • リポジトリ知識管理やアーキテクチャ強制 でエージェントの生産性と信頼性を最大化
  • 人間の時間と注意力 が最大の制約であり、エージェントの自律性強化が鍵
  • 学びと課題 から、今後のエージェント駆動開発の指針を提示

Codexエージェントによる完全自動コード生成の実践

  • 5ヶ月間、Codexエージェントのみで社内β版ソフトウェアを開発・運用
  • 手書きコードゼロ を徹底し、アプリロジック・テスト・CI設定・ドキュメント・ツール全て自動生成
  • 初期リポジトリ構成 (CI、パッケージ管理、AGENTS.md等)もCodex CLI+GPT-5で自動生成
  • 3名→7名体制 で1500以上のPRを作成・マージ、日平均3.5PR/人の高スループット
  • 数百人の内部ユーザー が利用、外部αテスターも参加

エンジニアの役割再定義

  • 人間は環境設計・意図指定・フィードバックループ構築 に集中
  • エージェントが作業できる抽象化とツール群 を整備することが主業務
  • タスク分解・設計・レビュー・テスト をプロンプトでCodexに指示し、PR作成を自動化
  • 人間の直接的なコードレビューは任意、大半はエージェント同士で完結

アプリケーション可読性向上の工夫

  • QAのボトルネック化 を受け、UI・ログ・メトリクス等をCodexが直接読み取れるよう拡張
  • git worktree毎にアプリ起動可能化 し、CodexがUIテスト・バグ再現・修正検証を自動実行
  • Chrome DevTools ProtocolやDOMスナップショット機能 を組み込み、UI挙動検証を自動化
  • ローカル観測基盤(LogQL/PromQL) を導入し、パフォーマンス要件も自動検証

リポジトリ知識管理の最適化

  • AGENTS.mdは目次のみ、詳細知識はdocs/ディレクトリに構造化保存
  • 設計・アーキテクチャ・品質・実行計画 等を体系的に管理・バージョン管理
  • 知識の鮮度・網羅性・クロスリンク をCIや専用エージェントで自動チェック
  • 「マップを渡す」方針で、エージェントが必要な知識を段階的に探索可能化

エージェント可読性・アーキテクチャ強制

  • エージェントが直接参照・推論できる情報 のみをリポジトリに集約
  • 外部ドキュメントや口頭知識は不可視 とみなし、全てリポジトリ内に反映
  • 依存関係や抽象化は「エージェントが理解しやすい」ものを優先
  • 各ビジネスドメインを固定レイヤー構造(Types→Config→Repo→Service→Runtime→UI)で厳格管理
  • 依存方向や許可エッジをカスタムリンターで自動検証し、構造劣化を防止

人間の時間・注意力の最大活用

  • 最大の希少資源は人間の判断力・集中力
  • エージェントの自律性強化・可読性向上で人間の介入を最小化
  • 設計・知識管理・アーキテクチャ統制による「エージェントレバレッジ」の最大化

今後のエージェント駆動開発への示唆

  • 人間は「コードを書く人」から「環境・意図・知識を設計する人」へ転換
  • エージェントが安全かつ高速に開発できる基盤構築が最重要課題
  • 知識管理・構造強制・自動検証の仕組み化がエージェント開発の成否を左右
  • 人間の時間を守るための「機械による自動レビュー・修正・知識更新」体制の確立
  • 今後は複数エージェント連携や他AIツールとの協調も視野に入れた設計が必要

Hackerたちの意見

何週間もかけて、最終的に100万行のコードを出荷したんだ… 5ヶ月後、リポジトリにはアプリケーションロジック、インフラ、ツール、ドキュメント、内部開発者ユーティリティを含む約100万行のコードがある。 この期間中に、約1500件のプルリクエストがオープンされ、Codexを推進するたった3人のエンジニアの小さなチームによってマージされた。 これは、エンジニア1人あたり1日平均3.5件のPRを処理したことになる。驚くべきことに、チームが7人に増えたことで処理能力はさらに向上している。 重要なのは、これはただの出力ではないことだ。製品は内部で何百人ものユーザーに使われていて、日々のパワーユーザーも含まれている。これはすごい処理能力だよ。良い基準は何だろう?エージェントコーディングの前、エンジニアが期待されていたPRの数はどれくらいだった? 2〜10くらいかな?この6ヶ月でソフトウェアが良くなったと感じる人はいるのかな?エンジニアの数は多分同じだから、主要なソフトウェアアプリで5倍速のサイクルを期待すべきだけど、そうは見えない。AIアプリはすごく早く変わるけど、これは新しい分野だから当然だと思う。でもそれ以外では、あまり変わっているとは思えない。

彼らは製品が具体的に何であるかを明示しなかったから、投稿を判断するのは不可能だ。なぜか「エージェント」のほとんどの使い方は、さらに別のAI製品を作るためのもので、まるで亀が重なっているみたいだ。これは「エージェント」の力よりも、ハーネスの分野についてのことを多く語っているのかもしれない。

100万行のコードになった これは「コードベースを掃除したことがない、コードが多すぎて、エージェントやLLMに掃除させることすらしなかった」という匂いがする。100万行のコードはほとんど必要ないよ。これにはソフトウェア、インフラ、テスト、運用ツールが含まれている。3週間でLinuxカーネルを出荷したわけじゃないって、分かってるよね。コードはすでにスパゲッティ状態で、基本的な機能は大丈夫だけど、シンプルにしたり、絡まりを解いたり、維持するのがどんどん難しくなるよ。

面白いことに、Firefoxは現在の行数を約250万LOCとリストしている。これは、数年間で約100万のコミットから来ている。コミットごとに約3行追加されることになるけど、ほとんどが完全な追加ではなく修正だから、そんなにおかしくはない。ここでは、1500件のPRと100万LOCがあって、1PRあたり約650行のLOCが追加されている。覚えておいて、PRの合計が650行ではなく、追加と削除の後のバランスが+650行だよ。注意深い読者への面白い質問: - 10年後、1年でFirefoxのコードベース分のLOCが増えるプロジェクトはどんな感じになるのか? - 行数はツールの冗長性について何を示していて、プロジェクトの目的が明確に開示されていないことについて何を示しているのか? - 手動でコードを書くことがない世界でLOCを気にする理由はあるのか? コードベースが大きくなるとトークン使用量はどうなるのか? - LLMの使用が行数を増やすことが確認された場合、数ヶ月の使用後に手動コーディングに戻りたいコードベースにはどんな影響があるのか?(例えば、ツールが高くなるから)

主要なソフトウェアアプリで5倍速のサイクルを期待すべきだ それは何のためで、どういう感じになるの?すべてを最大速度で劣化させるの?私が普段使っているアプリやプラットフォーム - GitHub、Spotify、Googleマップ(いくつか挙げただけだけど) - は最近、明らかに劣化しているよ。

AIエージェントのおかげでドメイン知識へのアクセスが楽になるから、確かに良くなってると思う。でも、問題は人々がコードをうまく覚えてないことなんじゃないかな。変化のスピードが増すにつれて、問題は長期的なものになると思う。成功するプロダクトは、よく考えられた体験や顧客発見に依存してるから(OpenAIのForward-Deployed Engineerの求人を見てみて)、コードの速度はあまり関係なくなるんだよね。正しい問題を解決していて、良いチームがいるなら、競争優位はコードの速度以外のところから来ると思う。もっと重要な質問は、速いコードが長期的にもっと価値を生むのかってことだと思う。今のところ、私たちは1日に3.5回プルリクエストをしてるって言ってるけど、いいね、頑張ってるねって感じ。3つのプルリクエストを1つにまとめれば、1日に1回になるだけじゃん。これは実際にはあまり意味のない定量的データだよね。

Claude Codeのチームが主張してることに比べると、これはかなり穏やかだね。

この1年くらい、ずっと感覚でコーディングしてたけど、そろそろやめようと思ってる。実際、昔のコパイロットのオートコンプリートワークフローに戻って、そこを最大限に活かせるか挑戦したいなって思ってる。ほとんどのコードを書くのは自分でやって、AIを使ってフローステートを強化したり、ブロッカーを取り除く方法を見つけたい。ツールは実際のコード生成は最小限に。

先日、e-vape工場で働く人たちの動画を見た。彼らはコンベアベルトからたくさんのe-vapeを拾い上げて(それぞれ6つのe-vapeがある)、口にくわえて、約5秒間激しく吸ってから、次のバッチをテストしていた。AIが書いたPRの数百行の変更を人間がレビューするのもあまり変わらないね。

本当にその通り。PRが1000行あったら、全部をチェックするんじゃなくて、ほんの数行だけ見て、残りはテストスイートに任せるかな。

脱線だけど、これが2月に公開されて以来、HNに15回以上投稿されたのは面白いね。https://hn.algolia.com/?dateRange=all&page=0&prefix=false&qu... でも、これが唯一注目を集めた投稿なんだ。内容がほぼ同じだから、フロントページに載るのがちょっとランダムだってことが浮き彫りになってる。(ただ、これが「Leveraged」を大文字にした唯一の投稿だから、もしかしたらそれが秘密かも)

https://github.com/tsz-org/tsz

Hacker Newsで議論の続きを見る