Loading...
    • Bangun
    • Admin
    • Model & harga
    • Client SDK
    • Referensi API
    Search...
    ⌘K
    Langkah pertama
    Pengenalan ClaudeMulai Cepat
    Membangun dengan Claude
    Ikhtisar fiturMenggunakan Messages APIMenangani alasan berhenti
    Kemampuan model
    Pemikiran mendalamPemikiran adaptifUpayaMode cepat (beta: pratinjau riset)Output terstrukturKutipanStreaming PesanPemrosesan batchHasil pencarianPenolakan streamingDukungan multibahasaEmbeddings
    Alat
    IkhtisarCara kerja penggunaan alatAlat pencarian webAlat pengambilan webAlat eksekusi kodeAlat memoriAlat BashAlat penggunaan komputerAlat editor teks
    Infrastruktur alat
    Pencarian alatPemanggilan alat terprogramStreaming alat terperinci
    Manajemen konteks
    Jendela konteksPemadatanPengeditan konteksCaching promptPenghitungan token
    Bekerja dengan file
    Files APIDukungan PDFGambar dan visi
    Skills
    IkhtisarMulai CepatPraktik terbaikSkills untuk enterpriseSkills di API
    MCP
    Server MCP jarak jauhKonektor MCP
    Rekayasa prompt
    IkhtisarPraktik terbaik promptingAlat prompting Console
    Uji dan evaluasi
    Tentukan keberhasilan dan bangun evaluasiMenggunakan Alat Evaluasi di ConsoleMengurangi latensi
    Perkuat penjaga
    Kurangi halusinasiTingkatkan konsistensi outputMitigasi jailbreakKurangi kebocoran prompt
    Sumber daya
    Glosarium
    Catatan rilis
    Claude Platform
    Console
    Log in
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...

    Solutions

    • AI agents
    • Code modernization
    • Coding
    • Customer support
    • Education
    • Financial services
    • Government
    • Life sciences

    Partners

    • Amazon Bedrock
    • Google Cloud's Vertex AI

    Learn

    • Blog
    • Catalog
    • Courses
    • Use cases
    • Connectors
    • Customer stories
    • Engineering at Anthropic
    • Events
    • Powered by Claude
    • Service partners
    • Startups program

    Company

    • Anthropic
    • Careers
    • Economic Futures
    • Research
    • News
    • Responsible Scaling Policy
    • Security and compliance
    • Transparency

    Learn

    • Blog
    • Catalog
    • Courses
    • Use cases
    • Connectors
    • Customer stories
    • Engineering at Anthropic
    • Events
    • Powered by Claude
    • Service partners
    • Startups program

    Help and security

    • Availability
    • Status
    • Support
    • Discord

    Terms and policies

    • Privacy policy
    • Responsible disclosure policy
    • Terms of service: Commercial
    • Terms of service: Consumer
    • Usage policy
    Delegasikan pekerjaan ke agen Anda

    Mengakses GitHub

    Hubungkan agen Anda ke repositori GitHub untuk melakukan cloning, membaca, dan membuat pull request.

    Was this page helpful?

    • GitHub MCP dan Sumber Daya Sesi
    • Izin token
    • Beberapa repositori
    • Mengelola repositori pada sesi yang sedang berjalan
    • Membuat pull request

    Anda dapat memasang repositori GitHub ke container sesi Anda dan terhubung ke GitHub MCP untuk membuat pull request.

    Repositori GitHub di-cache, sehingga sesi mendatang yang menggunakan repositori yang sama akan dimulai lebih cepat.

    Semua permintaan Managed Agents API memerlukan header beta managed-agents-2026-04-01. SDK menetapkan header beta secara otomatis.

    GitHub MCP dan Sumber Daya Sesi

    Pertama, buat agen yang mendeklarasikan server GitHub MCP. Definisi agen menyimpan URL server tetapi tidak menyimpan token autentikasi:

    agent_id=$(curl -fsS https://api.anthropic.com/v1/agents \
      -H "x-api-key: $ANTHROPIC_API_KEY" \
      -H "anthropic-version: 2023-06-01" \
      -H "anthropic-beta: managed-agents-2026-04-01" \
      -H "content-type: application/json" \
      --data @- <<JSON | jq -r '.id'
    {
      "name": "Code Reviewer",
      "model": "claude-sonnet-4-6",
      "system": "You are a code review assistant with access to GitHub.",
      "mcp_servers": [
        {
          "type": "url",
          "name": "github",
          "url": "https://api.githubcopilot.com/mcp/"
        }
      ],
      "tools": [
        {"type": "agent_toolset_20260401"},
        {
          "type": "mcp_toolset",
          "mcp_server_name": "github"
        }
      ]
    }
    JSON
    )

    Kemudian buat sesi yang memasang repositori GitHub:

    resources[].authorization_token mengautentikasi operasi clone repositori dan tidak ditampilkan kembali dalam respons API.

    Izin token

    Saat menyediakan token GitHub, gunakan izin minimum yang diperlukan:

    TindakanCakupan yang diperlukan
    Clone repositori privatrepo
    Membuat PRrepo
    Membaca isurepo (privat) atau public_repo
    Membuat isurepo (privat) atau public_repo

    Gunakan personal access token berbutir halus dengan izin minimum yang diperlukan. Hindari penggunaan token dengan akses luas ke akun GitHub Anda.

    Beberapa repositori

    Pasang beberapa repositori dengan menambahkan entri ke array resources:

    Mengelola repositori pada sesi yang sedang berjalan

    Setelah sesi dibuat, Anda dapat mencantumkan sumber daya repositorinya dan merotasi token otorisasinya. Setiap sumber daya memiliki id yang dikembalikan pada saat pembuatan sesi (atau melalui resources.list) yang Anda gunakan untuk pembaruan. Repositori dilampirkan selama masa hidup sesi; untuk mengubah repositori mana yang dipasang, buat sesi baru.

    Membuat pull request

    Dengan server GitHub MCP, agen dapat membuat branch, melakukan commit perubahan, dan mendorongnya:

    session_id=$(curl -fsS https://api.anthropic.com/v1/sessions \
      -H "x-api-key: $ANTHROPIC_API_KEY" \
      -H "anthropic-version: 2023-06-01" \
      -H "anthropic-beta: managed-agents-2026-04-01" \
      -H "content-type: application/json" \
      --data @- <<JSON | jq -r '.id'
    {
      "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"
        }
      ]
    }
    JSON
    )
    resources='[
      {
        "type": "github_repository",
        "url": "https://github.com/org/frontend",
        "mount_path": "/workspace/frontend",
        "authorization_token": "ghp_your_github_token"
      },
      {
        "type": "github_repository",
        "url": "https://github.com/org/backend",
        "mount_path": "/workspace/backend",
        "authorization_token": "ghp_your_github_token"
      }
    ]'
    # List resources on the session
    repo_resource_id=$(curl -fsS "https://api.anthropic.com/v1/sessions/$session_id/resources" \
      -H "x-api-key: $ANTHROPIC_API_KEY" \
      -H "anthropic-version: 2023-06-01" \
      -H "anthropic-beta: managed-agents-2026-04-01" \
      -H "content-type: application/json" | jq -r '.data[0].id')
    echo "$repo_resource_id"  # "sesrsc_01ABC..."
    
    # Rotate the authorization token
    curl -fsS "https://api.anthropic.com/v1/sessions/$session_id/resources/$repo_resource_id" \
    # ...
      -o /dev/null \
      --data @- <<JSON
    {
      "authorization_token": "ghp_your_new_github_token"
    }
    JSON
    curl -fsS "https://api.anthropic.com/v1/sessions/$session_id/events" \
      -H "x-api-key: $ANTHROPIC_API_KEY" \
      -H "anthropic-version: 2023-06-01" \
      -H "anthropic-beta: managed-agents-2026-04-01" \
      -H "content-type: application/json" \
      -o /dev/null \
      --data @- <<JSON
    {
      "events": [
        {
          "type": "user.message",
          "content": [
            {
              "type": "text",
              "text": "Fix the type error in src/utils.ts, commit it to a new branch, and push it."
            }
          ]
        }
      ]
    }
    JSON