Loading...
  • Construir
  • Administración
  • Modelos y precios
  • SDKs de cliente
  • Referencia de API
Search...
⌘K
Log in
Acceder a 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
Construir/Delegar trabajo a tu agente

Acceso a GitHub

Conecta tu agente a repositorios de GitHub para clonar, leer y crear pull requests.

Puedes montar un repositorio de GitHub en el contenedor de tu sesión y conectarte al GitHub MCP para crear pull requests.

Los repositorios de GitHub se almacenan en caché, por lo que las sesiones futuras que usen el mismo repositorio se inician más rápido.

Todas las solicitudes a la API de Managed Agents requieren el encabezado beta managed-agents-2026-04-01. El SDK establece el encabezado beta automáticamente.

GitHub MCP y recursos de sesión

Primero, crea un agente que declare el servidor GitHub MCP. La definición del agente contiene la URL del servidor pero no el token de autenticación:

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 --raw-output)

Luego crea una sesión que monte el repositorio de 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",
        },
    ],
)

El resources[].authorization_token autentica la operación de clonación del repositorio y no se devuelve en las respuestas de la API.

Permisos del token

Al proporcionar un token de GitHub, utiliza los permisos mínimos requeridos:

AcciónAlcances requeridos
Clonar repositorios privadosrepo
Crear PRsrepo
Leer issuesrepo (privado) o public_repo
Crear issuesrepo (privado) o public_repo

Usa tokens de acceso personal de grano fino con los permisos mínimos requeridos. Evita usar tokens con acceso amplio a tu cuenta de GitHub.

Múltiples repositorios

Monta múltiples repositorios agregando entradas al 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",
    },
]

Gestión de repositorios en una sesión en ejecución

Después de crear una sesión, puedes listar sus recursos de repositorio y rotar sus tokens de autorización. Cada recurso tiene un id que se devuelve en el momento de la creación de la sesión (o a través de resources.list) que usas para las actualizaciones. Los repositorios están adjuntos durante toda la vida útil de la sesión; para cambiar qué repositorios están montados, crea una nueva sesión.

# 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",
)

Creación de pull requests

Con el servidor GitHub MCP, el agente puede crear ramas, confirmar cambios y enviarlos:

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 y recursos de sesión
  • Permisos del token
  • Múltiples repositorios
  • Gestión de repositorios en una sesión en ejecución
  • Creación de pull requests