以前 Namespace の Devin 連携(Outposts)で構築した macOS 環境が原因不明の不調に陥ってしまったため、クリーンな環境を一から新しくセットアップし直すことにしました。
Devin 標準の実行環境は Linux VM ですが、iOS アプリのビルドなど Apple Silicon の macOS が必要な場面があります。そうした外部インフラをワーカーとして繋ぎ込めるのが Outposts 機能です。
今回やってみて面白かったのは、セットアップ作業そのものを Devin に丸投げした 点です。不調な環境の再構築を手動でやるのも面倒だったので、Devin の VM 上で動くブラウザを Devin 自身に操作させ、Namespace と Devin のダッシュボードを行き来しながら設定を完了してもらいました。
前提条件
- Namespace のアカウントおよびワークスペースを作成済みであること
- Devin の組織管理者(Admin)権限があること
- 参考: Namespace 公式ドキュメント(Devin 連携)
Devin に投げたプロンプト
指示の流れはシンプルです。
- 「Outposts で Namespace の macOS 環境を新規セットアップしたい。最短の手順を説明して」
- 「その最短手順をステップごとに実行して」
Namespace へのログイン情報は、Devin の Secrets 機能にあらかじめ登録しておき、「<シークレット名>、<シークレットパスワード>を使ってログインして」と伝えました。これで平文パスワードをチャットに流さないで済みます。
実際に Devin が進めた手順
1. Namespace へのログイン
Devin は自身の VM 内で Chrome を立ち上げ、cloud.namespace.so にアクセスしてログインを進めます。
パスワード入力欄には Secrets の環境変数をそのままタイプしてくれました(Devin 側の画面やログにも平文は表示されません)。2段階認証のプッシュ通知だけ手元のスマートフォンで承認すれば、問題なくログイン完了です。
ちょっとした Tips ですが、Devin の Desktop タブはホストマシンからのクリップボード貼り付けに対応していません。長いメールアドレスや認証情報は、チャット欄で送って Devin にタイプさせるのが一番楽でした。
2. Blueprint の作成(Namespace 側)
Devin が Namespace 側で Devbox のテンプレートとなる Blueprint を作成。
メニューの Devboxes → Blueprints →「New Blueprint」から「Devin」タイプを選択。
設定値は以下のように指定しました。
3. Devin との連携(Connect with Devin)
Blueprint 作成画面にある「Connect with Devin」ボタンを押すと、Devin 側の認証画面(app.devin.ai/outposts/connect?...)へ飛びます。
「Devin マシンを動かすための認証情報を Namespace と共有する」という警告を確認して承認。Namespace 側に戻って Blueprint を保存すれば設定は完了です。
作業が終わると、Devin の Settings → Environment → Outposts 一覧に namespace-devin-macos が追加されます。
従来のセルフホスト型ワーカーのように devin worker start などの常駐プロセスを手動で起動する必要はなく、ワーカーの起動・停止は Namespace 側がよしなに管理してくれます。
4. 動作確認
新規セッションを立ち上げ、プロンプト入力欄の設定アイコンから Virtual environment → Outposts → namespace-devin-macos を選択します。
次のプロンプトを投げてみました。
What is the OS version and flavor? Run sw_vers and uname -a.
数十秒ほどで Devbox が立ち上がり、以下の結果が返ってきました。
ProductName: macOS
ProductVersion: 26.6.2
BuildVersion: 25G83
Darwin ... 25.6.0 ... RELEASE_ARM64_VMAPPLE arm64
Apple Silicon(ARM64)の macOS 環境で Devin が無事に動き始めました。
ハマりどころ:停止中 Devbox による枠の圧迫
全体としてスムーズに進みましたが、1点だけ「Waiting for outpost to provide a machine」のまま Devin が待機状態になって止まる場面がありました。
原因は Namespace 側の Devbox 同時実行上限(無料/基本枠の3台)の枯渇 です。
罠だったのは、停止(Stop)している Devbox も上限数としてカウントされる という仕様でした。過去に検証して停止したまま残っていた Devbox が3台あったため、新規マシンが起動できずに詰まっていたわけです。
面白かったのは、Devin がログからこの仕様と原因を自力で突き止め、「枠が埋まっているので、古い Devbox を削除してもよいですか?」とチャットで確認してきたことです。承諾の返事をすると、ダッシュボードから古い Devbox を自分で削除して枠を空けてくれました。
なお、詰まっている間にキューに残っていた古い検証セッションはマシンの割り当てループから復帰できなかったため、セッションを停止して新しく作り直したところ、すぐに立ち上がりました。
やってみた所感
- 導入がシンプル: Blueprint を作って Devin と認証連携し、セッション開始時に環境を選ぶだけで完了します。
- ブラウザ操作のセットアップは Devin に任せると楽: ドキュメントを読みながらダッシュボードを行き来する作業は、Devin のブラウザ操作機能と Secrets の組み合わせに丸投げするのが一番手軽でした。
- 動かない時は Devbox の台数上限を疑う: Namespace は停止中のマシンも同時実行枠を消費するため、マシンが払い出されない時はまずダッシュボードの整理から確認するのがおすすめです。


