Apidog CLI から開始されたすべての編集操作は、デフォルトで AI / AI Agents によって開始されたものとして扱われます。AI Branch は、Apidog プロジェクト内で AI Agents に分離された編集ブランチを提供するために設計されています。AI Branch を使用すると、AI はメインブランチや標準のスプリントブランチを直接変更することなく、プロジェクトリソースを作成および更新できます。変更が完了した後、ユーザーはクライアントまたは CLI で差分を確認し、その結果を直接、またはマージリクエストを通じてターゲットブランチにマージできます。AI Branch が必要な理由#
AI によって開始される編集は予測できない場合があり、一方で Apidog CLI は幅広い編集機能を提供します。AI Branch は、このような比較的リスクの高い AI 起点の編集操作向けに設計されており、AI Agents が制御された範囲内でプロジェクトリソースを編集できるようにします。また、Apidog 2.8.31 以降にアップグレードし、必要に応じて Project Settings -> Feature Settings -> External AI Edit Permissions で、メインブランチ、標準のスプリントブランチ、および一般ブランチに対する直接編集権限を有効にすることもできます。有効にすると、これらの権限により、通常は AI Branch を必要とする直接編集の制限がバイパスされます。AI Branch とは#
AI Branch は、特殊なスプリントブランチです。標準のスプリントブランチと同様に、プロジェクトリソースへの変更を保存します。ただし、デフォルトでは CLI ベースの編集など、外部 AI 操作を目的としており、変更がマージされる前に人による確認ステップを保持します。1.
分離された編集: CLI から API、ドキュメント、データモデル、テストシナリオなどのリソースに加えられた変更は AI Branch に保存され、メインブランチやソースブランチには直接影響しません。
2.
明確なソース: AI Branch は Apidog クライアントで直接作成することはできません。CLI または MCP ソースから作成する必要があります。AI Branch はソースブランチを記録し、通常はそのソースブランチへマージされるため、AI によって生成された変更のコンテキストを理解しやすくなります。
3.
人による確認: AI Branch 内の変更は、マージ前にユーザーによって確認される必要があります。ユーザーは差分を確認し、リソース範囲を選択し、直接マージするかマージリクエストを作成するかを選択できます。
4.
数量制限なし: 現時点では、作成できる AI Branch の数に有効な制限はありません。AI Agents は、業務ドメイン、イテレーション、または機能ごとにデータを処理するために AI Branch を使用できます。
5.
自動アーカイブ: プロジェクトコラボレーション中に AI Branch が制御不能に増加することを防ぐため、各 AI Branch はソースブランチと 24 時間ごとに比較されます。差分が見つからない場合、自動 的にアーカイブされます。アーカイブされた AI Branch は Apidog でいつでも復元できます。また、Apidog CLI から新しい AI Branch を制限なく再作成できます。
AI Branch は、外部 AI または CLI 操作による書き込み結果を保存するために使用されます。通常のクライアント内編集、マージ、およびユーザーによるレビューは、引き続きプロジェクトメンバー権限とブランチ保護ルールに従います。
ユースケース#
AI Branch は、ブランチの分離と人による確認を維持しながら、AI がプロジェクトリソースのメンテナンスに参加する必要がある場合に適しています。| シナリオ | 説明 |
|---|
| コードから API ドラフトを生成する | コードを読み取った後、AI は AI Branch 内で HTTP API エンドポイントを作成または更新します。ユーザーはマージ前に変更を確認します。 |
| API リソースを一括整理する | AI は、現在のコラボレーションブランチに直接影響を与えることなく、API ディレクトリの調整、説明の追加、データモデルやレスポンスコンポーネントの更新を行えます。 |
| 自動テストのドラフトを生成する | AI は、テスターによる後続の確認のために、AI Branch 内でテストシナリオ、テストケース、またはテストデータを作成できます。 |
| API ドキュメントの不足を補完する | AI は、バグレポート、API 実装、または OpenAPI ファイルに基づいて不足しているフィールドを補完できます。 |
| CI/CD で一括書き込みする | 自動化ワークフローは、生成された結果を AI Branch に書き込み、マージ前にユーザーレビューを待機できます。 |
基本ワークフロー#
一般的な AI Branch のワークフローは次のとおりです。1
AI Branch を作成し、その基準となるソースブランチを指定します。
2
編集が必要なリソースを AI Branch にインポートするか、AI Branch 内で新しいリ ソースを作成します。
3
AI Agent、CLI、または自動化スクリプトが AI Branch 内のリソースを変更します。
4
ユーザーは AI Branch とソースブランチの差分を確認し、マージするリソース範囲を確認します。
5
ターゲットブランチの保護ルールに応じて、直接マージするか、マージリクエストを作成します。
AI Branch を作成する#
AI Branch を作成するには、branch create --type ai を使用します。従来の sprint-branch および sb エントリポイントも引き続き互換性がありますが、統一された branch エントリポイントの使用を推奨します。| コマンド | 説明 | 例 |
|---|
branch create --type ai | AI Branch を作成します。 | apidog branch create --project <projectId> --type ai --name "ai/20260312-from-main-userRegister" --from main |
branch list --type ai | プロジェクト内の AI Branch を表示します。 | apidog branch list --project <projectId> --type ai |
branch list --type all | プロジェクト内のすべてのブランチタイプを表示します。 | apidog branch list --project <projectId> --type all |
branch get --type ai | 指定した AI Branch の詳細(ブランチタイプやソース情報を含む)を表示します。 | apidog branch get <branchName> --project <projectId> --type ai |
例: ユーザー登録 API 用の AI Branch を作成するAI Branch の命名形式は ai/YYYYMMDD-from-sourceBranch-featureOrModule を推奨します。例: ai/20260312-from-main-userRegister。明確な名前により、チームはブランチのソース、目的、作成時刻を理解しやすくなります。
AI Branch 内でリソースを編集する#
CLI がプロジェクトリソースを書き込む際、ブランチパラメータを使用して、それらのリソースを AI Branch に書き込むことができます。パラメータはリソースコマンドによって若干異なります。使用前に、対応するコマンドヘルプと JSON Schema を確認してください。| リソースタイプ | 一般的なコマンド | 例 |
|---|
| HTTP API エンドポイント | endpoint create, endpoint update | apidog endpoint create --project <projectId> --branch <aiBranchName> --file ./endpoint.json |
| データモデル | schema create, schema update | apidog schema update <schemaId> --project <projectId> --branch <aiBranchName> --file ./schema.json |
| Markdown ドキュメント | doc create, doc update | apidog doc create --project <projectId> --branch <aiBranchName> --file ./doc.json |
| テストシナリオ | test-scenario create, test-scenario update | apidog test-scenario update <scenarioId> --project <projectId> --branch <aiBranchName> --file ./scenario.json |
| テストスイート | test-suite create, test-suite update | apidog test-suite create --project <projectId> --branch <aiBranchName> --file ./suite.json |
| テストデータ | test-data create, test-data update | apidog test-data create --project <projectId> --branch <aiBranchName> --file ./test-data.json |
複雑なリソースを作成または更新する場合は、まず cli-schema を使用してデータ構造を確認および検証することを推奨します。ソースブランチからリソースをインポートする#
AI Branch が既存リソースを変更する必要がある場合は、まず branch pick-to を使用して、ソースブランチから AI Branch にリソースをインポートします。インポート後、AI は AI Branch 内でそれらのリソースの編集を続行できます。| コマンド | 説明 | 例 |
|---|
branch pick-to | ソースブランチからターゲット AI Branch にリソースをインポートします。 | apidog branch pick-to --project <projectId> --from <sourceBranchName> --to <aiBranchName> --endpoint-ids <ids> |
例: エンドポイントをインポートし、AI に変更させるpick-to は、コマンドで明示的に指定されたリソースのみをインポートします。ディレクトリ、データモデル、レスポンスコンポーネント、またはその他の関連リソースが必要な場合は、インポート前にリソース範囲を確認してください。
AI Branch の変更を表示する