> ## Documentation Index
> Fetch the complete documentation index at: https://docs.devin.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# 宣言的設定への移行

> 従来の環境セットアップから宣言的ブループリントへ移行します。Devin が移行作業の大部分を処理できます。

宣言的構成 (ブループリント) は、次世代の環境セットアップ方式です。バージョン管理でき、組み合わせて使え、自動で更新されます。このガイドでは、従来の対話型ウィザードから移行する手順を説明します。

<Warning>
  従来の環境セットアップは廃止予定です。次の 2 つの日付にご注意ください。

  * **2026 年 6 月 30 日:** すべての組織が宣言的構成 (ブループリント) に移行します。従来の構成は削除されず、必要に応じてそこへ復元できます。
  * **2026 年 7 月 31 日:** 従来のマシン構成は、この日まで参照情報として引き続き利用できるため、移行を完了するまで内容を確認したり、そこへ復元したりできます。7 月 31 日を過ぎると削除されます。

  中断を避けるため、2026 年 6 月 30 日までに移行してください。さらに時間が必要な Enterprise のお客様は、アカウントチームにお問い合わせください。
</Warning>

<div id="why-migrate">
  ## 移行する理由
</div>

従来のセットアップウィザードでは、Devin の環境は手動で構成されたスナップショットであるため、時間の経過とともに実態とずれていく可能性があります。依存関係は古くなり、設定を変更するたびにウィザードを再実行する必要があり、バージョン履歴も残りません。こうした課題は、宣言的構成で解決できます。

* **自動更新**: リポジトリ が変更されると ブループリント が再ビルドされるため、依存関係を最新の状態に保てます
* **バージョン管理**: 環境構成をコードと一緒に管理でき、完全な変更履歴を残せます
* **組み合わせ可能**: Enterprise、org、repo の ブループリント をきれいに重ねて適用できます
* **再現可能**: 同じ ブループリント からは、どの build でも同じ結果が得られます
* **より高速なセッション**: リポジトリ のクローンや依存関係のインストールが済んだスナップショットが事前に build されるため、セッション開始後すぐに作業に入れます

<Info>
  従来のセットアップは 2026 年 6 月 30 日までは引き続き利用でき、その後 2026 年 7 月 31 日までは移行のために利用できます。それまでであれば、組織をこれに復元することもできます。
</Info>

<div id="before-you-start">
  ## 始める前に
</div>

<AccordionGroup>
  <Accordion title="組織が対象かどうかを確認する">
    **Machine Configuration** ページ (従来のセットアップページ) に、**"Switch to declarative environment configuration"** と表示されたバナーがあるか確認してください。表示されていれば、その組織は対象です。

    バナーが表示されない場合は、その組織ではまだ宣言的構成が有効になっていません。段階的にロールアウトされています。Enterprise 管理者に連絡するか、サポートにお問い合わせください。
  </Accordion>

  <Accordion title="移行できるユーザー">
    移行には **組織管理者** 権限 (`ManageOrgSettings`) が必要です。組織管理者でない場合、移行ページに「管理者アクセスが必要です」というメッセージが表示されます。
  </Accordion>

  <Accordion title="元に戻せますか？">
    はい、2026年7月31日までは可能です。既存のスナップショットは保持されるため、それまでであれば復元して組織をその状態に戻せます。6月30日以降は、すべての組織が宣言的構成に移行しますが、2026年7月31日までは従来のマシン構成に戻すことができます。
  </Accordion>
</AccordionGroup>

<div id="migration-steps">
  ## 移行手順
</div>

<div id="1-go-to-the-migration-page">
  ### 1. 移行ページに移動する
</div>

**Settings > Environment migration** に移動するか、Machine Configuration ページに表示されているバナーの **Get started** をクリックします。

<div id="2-enable-declarative-configuration">
  ### 2. 宣言的な設定を有効にする
</div>

**組織で有効にする** をクリックします。これにより、組織では新しいセッションにブループリントベースのスナップショットが使用されるようになります。

<Info>既存のスナップショットには影響しません。元に戻す必要が生じた場合に備えて保持されます。</Info>

<div id="3-let-devin-generate-your-blueprints">
  ### 3. Devin にブループリントを生成させる
</div>

**作業は Devin が代行します。**

**Start migration** をクリックし、最初に移行するリポジトリを選択します。すべてを一度に移行する必要はありません。最もよく使うリポジトリから始めてください。

移行を開始すると、Devin は **2 つのセッション** を作成します。

* ブループリントを作成する、新しい宣言的環境上で動作する**メイン セッション**
* 現在インストールされているもの (言語のバージョン、システムパッケージ、実行中のサービスなど) を確認するために Devin が利用する、既存のスナップショット上で動作する**ヘルパー セッション**

Devin は既存のスナップショットを調べ、どのツールや依存関係がインストールされているかを把握したうえで、対応するブループリント構成を生成します。結果は **Settings > Environment > Blueprints** ページに表示されます。

<Tip>
  既存のスナップショットは、これまでに構成してきたあらゆるものが詰まった「ブラック ボックス」です。Devin はそのスナップショットを調査し、インストールされているものを整理して、自動的に再現可能なブループリントとして書き出します。
</Tip>

<div id="4-review-and-adjust">
  ### 4. 確認して調整する
</div>

Devinがブループリントを生成したら、次の作業を行います。

1. **Settings > Environment > Blueprints** に移動し、生成された内容を確認します
2. ビルドのステータスを確認します。**Success** と表示されていることを確認してください。
3. テスト用のセッションを開始して、すべてが正しく動作することを確認します:
   * リポジトリがクローンされ、依存関係がインストールされていることを確認します
   * lint、test、build コマンドを実行してみます
   * カスタムツールやランタイムが利用可能であることを確認します

不足しているものがあれば、ブループリントを直接編集してください。`initialize` ステップ、`maintenance` コマンド、または `Knowledge` エントリを追加できます。

<div id="rolling-back">
  ## ロールバック
</div>

問題が発生した場合は、2026年7月31日までであれば、いつでも元に戻せます。

1. **Settings > Environment migration** に移動します
2. **Revert to classic** をクリックします
3. 組織はすぐに以前のスナップショットを使用する状態に戻ります

既存のスナップショットはそのまま完全に保持されます。失われるものはありません。準備ができたらいつでも、再度移行を試せます。

<Info>
  2026年6月30日以降は、すべての組織が宣言的構成で稼働しますが、従来のマシン構成は削除される2026年7月31日まで、復元先として引き続き利用できます。さらに時間が必要なEnterpriseのお客様は、アカウントチームにお問い合わせください。
</Info>

<div id="mapping-classic-setup-steps-to-blueprints">
  ## 従来のセットアップ手順とブループリントの対応
</div>

ブループリントを手動で記述したい場合 (またはその対応関係を把握したい場合) 、従来のウィザードの各手順は次のように対応します。

| 従来のセットアップ手順 | ブループリントでの対応                      | 注記                                                             |
| ----------- | -------------------------------- | -------------------------------------------------------------- |
| Git pull    | *自動*                             | ブループリントが git clone と pull を自動的に処理します                           |
| Secrets     | ブループリントエディタの Secrets タブ          | 各ブループリントエディタ内の **Secrets** タブで設定します                            |
| 依存関係のインストール | `initialize`                     | 1回限りのセットアップ: 言語ランタイム、システムパッケージ、グローバルツール                        |
| 依存関係の維持管理   | `maintenance`                    | セッション開始時に Agent に提示される依存関係コマンド: `npm install`、`pip install` など |
| Lint        | `knowledge` (`name: lint`)       | 参照用のみで、ビルド時には実行されません                                           |
| Test        | `knowledge` (`name: test`)       | 参照用のみで、ビルド時には実行されません                                           |
| アプリの実行      | `knowledge` (`name: dev-server`) | 参照用のみで、ビルド時には実行されません                                           |
| 補足事項        | `knowledge`                      | Devin 向けの自由記述エントリ                                              |

<div id="example">
  ### 例
</div>

**従来のセットアップ:**

* 依存関係をインストール: `nvm use 20 && npm install`
* 依存関係を更新: `npm install`
* Lint を実行: `npm run lint`
* テストを実行: `npm test`
* アプリを起動: `npm run dev`

**対応するブループリント:**

```yaml theme={null}
initialize: |
  curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash
  source ~/.bashrc
  nvm install 20

maintenance: |
  npm install

knowledge:
  - name: lint
    contents: npm run lint
  - name: test
    contents: npm test
  - name: dev-server
    contents: npm run dev
```

<div id="troubleshooting">
  ## トラブルシューティング
</div>

<AccordionGroup>
  <Accordion title="ビルドに失敗する">
    具体的なエラーはビルドログを確認してください。主な原因は次のとおりです。

    * 従来のセットアップ用ターミナルでは動作していたコマンドが、ビルド環境では動作しない (例：`-y` フラグが必要な対話型プロンプト)
    * シークレットが不足している (ブループリント editor 内の **Secrets** タブでシークレットが設定されていることを確認してください)
    * ブループリント のコマンドと元のコマンドを比較して、違いを確認する
  </Accordion>

  <Accordion title="セッションで依存関係が不足している">
    `maintenance` セクションに、従来の **Maintain Dependencies** ステップと同じ依存関係のインストールコマンドが含まれていることを確認してください。`npm install` や `pip install -r requirements.txt` のようなコマンドは
    `initialize` ではなく `maintenance` に記述する必要があります。
  </Accordion>

  <Accordion title="Devin が lint や test の方法を認識しない">
    `knowledge` セクションに、正しいコマンドを持つ `lint` と `test` という名前のアイテムがあることを確認してください。Devin は作業内容を検証する際にこれらの名前を参照します。
  </Accordion>

  <Accordion title="カスタムのシェルプロファイルの変更が適用されない">
    従来のセットアップで `~/.bashrc`、`~/.profile`、またはその他のシェル設定を変更していた場合は、それらを `initialize` に移してください。

    ```yaml theme={null}
    initialize: |
      echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.bashrc
      echo 'export NODE_ENV=development' >> ~/.bashrc
    ```
  </Accordion>

  <Accordion title="Git pull が動作しない">
    Blueprints はビルド中に `git clone` を自動的に実行します。リポジトリ が clone されない場合は、それらが **Settings > Environment > Blueprints** ページに追加されていることと、Devin が Git 統合を通じてアクセスできることを確認してください。
  </Accordion>
</AccordionGroup>

<div id="related-pages">
  ## 関連ページ
</div>

* [宣言的環境設定](/ja/onboard-devin/environment/blueprints)
* [ブループリント リファレンス](/ja/onboard-devin/environment/blueprint-reference)
* [テンプレートライブラリ](/ja/onboard-devin/environment/templates)
