Managed Agentsエージェントコンテキストの管理
GitHubへのアクセス
エージェントをGitHubリポジトリに接続して、クローン、読み取り、プルリクエストの作成を行います。
GitHubリポジトリをセッションのサンドボックスにマウントし、プルリクエストを作成するためにGitHub MCPに接続できます。
GitHubリポジトリはキャッシュされるため、同じリポジトリを使用する以降のセッションはより速く起動します。
GitHub MCPとセッションリソース
まず、GitHub MCPサーバーを宣言するエージェントを作成します。エージェント定義にはサーバーURLが含まれますが、認証トークンは含まれません。
CLI
ant apply code-reviewer.mdcode-reviewer.md
---
name: Code Reviewer
model: claude-opus-5-5
mcp_servers:
- type: url
name: github
url: https://api.githubcopilot.com/mcp/
tools:
- type: agent_toolset_20260401
- type: mcp_toolset
mcp_server_name: github
---
You are a code review assistant with access to GitHub.次に、GitHubリポジトリをマウントするセッションを作成します。limitedの環境では、エージェントがallowed_hostsに含まれていないホストのMCPサーバーを宣言している場合、セッションの作成は400エラーで失敗します。環境のネットワーク設定でallow_mcp_servers: trueを設定すると、このチェックが無効になります。
Python
session = client.beta.sessions.create(
agent=agent.id,
environment_id=environment.id,
resources=[
{
"type": "github_repository",
"url": "https://github.com/org/repo",
"mount_path": "/workspace/repo",
"authorization_token": "ghp_your_github_token",
},
],
)github_repository リソースは以下のフィールドを受け付けます。
| フィールド | 説明 |
|---|---|
type | 必須。"github_repository" である必要があります。 |
url | 必須。https://github.com/<owner>/<repo> 形式のリポジトリのHTTPS URL(.git サフィックスなし)。SSH URLを含むその他の形式は invalid_request_error で拒否されます。 |
authorization_token | 必須。リポジトリのクローンに使用されるGitHubトークン。APIレスポンスにはエコーされません。トークンの権限を参照してください。 |
mount_path | 任意。リポジトリをクローンする /workspace 配下のディレクトリ。デフォルトは /workspace/<repo-name> です。 |
checkout | 任意。チェックアウトするブランチ({"type": "branch", "name": "main"})またはコミット({"type": "commit", "sha": "..."})。デフォルトはリポジトリのデフォルトブランチです。 |
リポジトリをマウントすると、そのルートの .claude/skills ディレクトリに保存されているスキルも読み込まれます。スキルはセッションごとに1回、セッション開始時にチェックアウトされたリポジトリの状態から検出されます。GitHubリポジトリからスキルを読み込むを参照してください。
トークンの権限
GitHubトークンを提供する際は、必要最小限の権限を使用してください。
| アクション | 必要なスコープ |
|---|---|
| プライベートリポジトリのクローン | repo |
| PRの作成 | repo |
| Issueの読み取り | repo(プライベート)または public_repo |
| Issueの作成 | repo(プライベート)または public_repo |
複数のリポジトリ
resources 配列にエントリを追加することで、複数のリポジトリをマウントできます。
Python
resources = [
{
"type": "github_repository",
"url": "https://github.com/org/frontend",
"mount_path": "/workspace/frontend",
"authorization_token": "ghp_your_github_token",
},
{
"type": "github_repository",
"url":