💻 VS Code DevContainerを使わなくなった私の、LLMエージェント向け開発環境

🔗 元記事: Zenn - kenfdev

🔖 はてブ: はてなブックマーク

📅 ブックマーク日時: 2026-07-08 22:09 (UTC)

👥 はてブ数: 128 users

TL;DR

  • VS Code + DevContainer は便利だったが、LLMエージェント中心の開発スタイルでは全く使わなくなった
  • LLMエージェントに作業を任せる時間が増え、VS Code よりも SSHで入れる開発環境のほうが重要になった
  • 「1プロジェクト1コンテナ」ではなく、「組織のドメインごとに1つの開発コンテナ」という感覚で運用
  • Orca(Agent Development Environment)からSSHでコンテナに接続し、remote worktreeとagent terminalを使用
  • secretは物理ファイルに残さず、1Passwordの op CLI経由で必要なときに注入

なぜDevContainerから離れたのか

開発スタイルの変化

以前はDevContainerが最高だと思っていたが、LLMエージェントに実装や調査を任せるようになって、「自分がVS Codeでコードを書く」ことが激減。 そうなると重要なのは:

VS Code + DevContainer を中心に据え続けるのは、これらの要件に対してだんだん合わなくなってきた。

worktree × DevContainerのつらみ

LLMエージェントを使うと git worktree を多用する(タスクごとに切ってagentを走らせる)が、DevContainerと組み合わせると:

新しいアプローチ:長生きする開発マシン

1プロジェクト1コンテナをやめる

代わりに組織のドメイン(顧客・契約・事業・権限の範囲)ごとに1つの開発コンテナを持つ:

判断基準は「同じshell history、同じgh認証、同じpackage cache、同じLLM agentの実行権限を共有してよいか」

コンテナをSSHできるマシンとして扱う

OrcaというADE(Agent Development Environment)を使用。Orcaの SSH worktrees機能でSSH targetを登録すると、remote host上にgit worktreeを作り、agentもremote host上で動かせる。 エディタ、diff、browserは手元に残しつつ、実行環境だけSSH先に寄せる。

secret管理

物理ファイルにsecretを残さず、基本的に1Passwordの op CLI経由で必要なときに注入。

まとめ:マインドシフトの核心

「プロジェクトごとに毎回作られる開発環境」から「LLMエージェントが安定して入れる、自分用の開発マシン」へ。 これが、DevContainerから離れる根本的な理由。 コンテナを隔離された作業ディレクトリではなく、操作履歴・キャッシュ・生成ファイルが溜まる開発マシンとして扱う思想への転換。