Skip to content

非公式本サイトは非公式の日本語ドキュメントであり、Cloudflare 公式サイトではありません。最新情報はdevelopers.cloudflare.comをご確認ください。

リポジトリのインポート

最終更新 Markdown で表示Agent セットアップ

Artifacts の外にすでに基準となるリポジトリがある場合は、既存リポジトリをインポートして、Artifacts のリポジトリとして使い始められます。

次のような用途に向いています。

  • エージェントが fork する基準リポジトリ
  • 新しいセッションやユーザー向けのテンプレートリポジトリ
  • ワークフロー全体で使う、共有プロンプトや設定のリポジトリ

Artifacts は、公開 HTTPS リモートを REST API または Workers binding でインポートします。インポート後のリポジトリには通常の Artifacts リモート URL が付き、他のリポジトリと同じように clone、fork、リポジトリスコープのトークン発行ができます。

先に Namespaces を確認し、インポート作業全体で同じ名前空間名を使ってください。

公開 HTTPS リポジトリのインポート

この例では、公開 GitHub リポジトリを default 名前空間にインポートします。他の公開 HTTPS Git リモートでも、同じ流れで使えます。

Artifacts > Edit 権限のある Cloudflare API トークン を使います。

この例では、返却フィールドの取り出しに jq を使います。

export ACCOUNT_ID="<YOUR_ACCOUNT_ID>"
export ARTIFACTS_NAMESPACE="default"
export ARTIFACTS_REPO="workers-sdk-baseline"
export CLOUDFLARE_API_TOKEN="<YOUR_API_TOKEN>"
export ARTIFACTS_BASE_URL="https://api.cloudflare.com/client/v4/accounts/$ACCOUNT_ID/artifacts/namespaces/$ARTIFACTS_NAMESPACE"
IMPORT_RESPONSE=$(curl --silent --request POST "$ARTIFACTS_BASE_URL/repos/$ARTIFACTS_REPO/import" \
  --header "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
  --header "Content-Type: application/json" \
  --data '{
     "url": "https://github.com/cloudflare/workers-sdk",
     "branch": "main",
     "depth": 100
   }')

if ! printf '%s' "$IMPORT_RESPONSE" | jq -e '.success == true' > /dev/null; then
  printf '%s\n' "$IMPORT_RESPONSE" | jq .
  exit 1
fi

export ARTIFACTS_REMOTE=$(printf '%s' "$IMPORT_RESPONSE" | jq -r '.result.remote')
export ARTIFACTS_TOKEN=$(printf '%s' "$IMPORT_RESPONSE" | jq -r '.result.token')

応答には、新しい Artifacts リポジトリのメタデータが含まれます。result.remoteresult.token も含まれます。

リクエストが失敗した場合、このチェックは API 応答を表示し、空の値をエクスポートする前に終了します。

トークンの有効期限は、?expires= サフィックスに直接エンコードされます。

result.token はシークレットとして扱ってください。ログに出したり、ワークフローで必要でない限り、長期間使うリモート URL に保存したりしないでください。

このリクエストが返ったあとでも、インポートが進行中のことがあります。後続の REST 呼び出しが 409 Conflict を返す場合は、少し待ってから再試行してください。

インポートしたリポジトリを使う

インポートが終わったら、他の Artifacts リポジトリと同じように使えます。

  • 安定した基準として残し、エージェント作業用に fork する
  • リポジトリスコープのトークンで clone し、直接 Git アクセスする
  • 固定テンプレートにしたい場合は読み取り専用にする

エンドポイントの詳細は REST API を参照してください。認証の詳細は Authentication を参照してください。

役に立ちましたか?