Loading...
    • Bangun
    • Admin
    • Model & harga
    • Client SDK
    • Referensi API
    Search...
    ⌘K
    Log in
    Mengakses GitHub
    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
    • 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
    • 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
    Bangun/Delegasikan pekerjaan ke agen Anda

    Mengakses GitHub

    Hubungkan agen Anda ke repositori GitHub untuk melakukan cloning, membaca, dan 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=$(ant beta:agents create \
      --name "Code Reviewer" \
      --model '{id: claude-opus-4-7}' \
      --system "You are a code review assistant with access to GitHub." \
      --mcp-server '{type: url, name: github, url: https://api.githubcopilot.com/mcp/}' \
      --tool '{type: agent_toolset_20260401}' \
      --tool '{type: mcp_toolset, mcp_server_name: github}' \
      --transform id --format yaml)

    Kemudian buat sesi yang memasang repositori GitHub:

    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",
            },
        ],
    )

    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:

    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",
        },
    ]

    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.

    # List resources on the session
    listed = client.beta.sessions.resources.list(session.id)
    repo_resource_id = listed.data[0].id
    print(repo_resource_id)  # "sesrsc_01ABC..."
    
    # Rotate the authorization token
    client.beta.sessions.resources.update(
        repo_resource_id,
        session_id=session.id,
        authorization_token="ghp_your_new_github_token",
    )

    Membuat pull request

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

    client.beta.sessions.events.send(
        session.id,
        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.",
                    },
                ],
            },
        ],
    )

    Was this page helpful?

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