Loading...
    • Construir
    • Administración
    • Modelos y precios
    • SDKs de cliente
    • Referencia de la API
    Search...
    ⌘K
    Primeros pasos
    Introducción a ClaudeInicio rápido
    Construir con Claude
    Descripción general de funcionesUsar la API de mensajesGestionar razones de parada
    Capacidades del modelo
    Pensamiento extendidoPensamiento adaptativoEsfuerzoModo rápido (beta: vista previa de investigación)Salidas estructuradasCitasMensajes en streamingProcesamiento por lotesResultados de búsquedaRechazos en streamingSoporte multilingüeEmbeddings
    Herramientas
    Descripción generalCómo funciona el uso de herramientasHerramienta de búsqueda webHerramienta de recuperación webHerramienta de ejecución de códigoHerramienta de memoriaHerramienta BashHerramienta de uso del ordenadorHerramienta de edición de texto
    Infraestructura de herramientas
    Búsqueda de herramientasLlamada programática de herramientasStreaming detallado de herramientas
    Gestión del contexto
    Ventanas de contextoCompactaciónEdición de contextoCaché de promptsConteo de tokens
    Trabajar con archivos
    Files APISoporte de PDFImágenes y visión
    Skills
    Descripción generalInicio rápidoMejores prácticasSkills para empresasSkills en la API
    MCP
    Servidores MCP remotosConector MCP
    Ingeniería de prompts
    Descripción generalMejores prácticas de promptsHerramientas de prompts en Console
    Probar y evaluar
    Definir el éxito y crear evaluacionesUsar la herramienta de evaluación en ConsoleReducir la latencia
    Reforzar las barreras de seguridad
    Reducir alucinacionesAumentar la consistencia de salidaMitigar jailbreaksReducir la filtración de prompts
    Recursos
    Glosario
    Notas de versión
    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
    Delegar trabajo a tu agente

    Agregar archivos

    Sube archivos y móntelos en tu contenedor para leerlos y procesarlos.

    Was this page helpful?

    • Subir archivos
    • Montar archivos en una sesión
    • Múltiples archivos
    • Gestionar archivos en una sesión en ejecución
    • Listar y descargar archivos de sesión
    • Tipos de archivos compatibles
    • Rutas de archivos

    Puedes proporcionar archivos a tu agente subiéndolos a través de la Files API y montándolos en el contenedor de la sesión.

    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.

    Subir archivos

    Primero, sube un archivo usando la Files API:

    file=$(curl --fail-with-body -sS "${auth[@]}" \
      "${base_url}/files" \
      -F [email protected])
    file_id=$(jq -er '.id' <<<"${file}")
    printf 'File ID: %s\n' "${file_id}"

    Montar archivos en una sesión

    Monta los archivos subidos en el contenedor agregándolos al arreglo resources al crear una sesión:

    El mount_path es opcional, pero asegúrate de que el archivo subido tenga un nombre descriptivo para que el agente sepa qué está buscando.

    Se creará un nuevo file_id que hace referencia a la instancia del archivo en la sesión. Estas copias no cuentan contra tus límites de almacenamiento.

    Múltiples archivos

    Monta múltiples archivos agregando entradas al arreglo resources:

    Se admite un máximo de 100 archivos por sesión.

    Gestionar archivos en una sesión en ejecución

    Puedes agregar o eliminar archivos de una sesión después de su creación usando la API de recursos de sesión. Cada recurso tiene un id que se devuelve cuando se agrega (o se lista), el cual se usa para las eliminaciones.

    Lista todos los recursos de una sesión con resources.list. Para eliminar un archivo, llama a resources.delete con el ID del recurso:

    Listar y descargar archivos de sesión

    Usa la Files API para listar archivos con alcance a una sesión y descargarlos.

    Tipos de archivos compatibles

    El agente puede trabajar con cualquier tipo de archivo, incluyendo:

    • Código fuente (.py, .js, .ts, .go, .rs, etc.)
    • Archivos de datos (.csv, .json, .xml, .yaml)
    • Documentos (.txt, .md)
    • Archivos comprimidos (.zip, .tar.gz) - el agente puede extraerlos usando bash
    • Archivos binarios - el agente puede procesarlos con las herramientas adecuadas

    Rutas de archivos

    Los archivos montados en el contenedor son copias de solo lectura. El agente puede leerlos pero no puede modificar el archivo original subido. Para trabajar con versiones modificadas, el agente escribe en nuevas rutas dentro del contenedor.

    • Los archivos se montan en la ruta exacta que especifiques
    • Los directorios padre se crean automáticamente
    • Las rutas deben ser absolutas (comenzando con /)
    session=$(
      jq -n \
        --arg agent_id "${agent_id}" \
        --arg environment_id "${environment_id}" \
        --arg file_id "${file_id}" \
        '{
          agent: $agent_id,
          environment_id: $environment_id,
          resources: [
            {
              type: "file",
              file_id: $file_id,
              mount_path: "/workspace/data.csv"
            }
          ]
        }' | curl --fail-with-body -sS "${auth[@]}" "${base_url}/sessions" --json @-
    )
    session_id=$(jq -er '.id' <<<"${session}")
    "resources": [
      { "type": "file", "file_id": "file_abc123", "mount_path": "/workspace/data.csv" },
      { "type": "file", "file_id": "file_def456", "mount_path": "/workspace/config.json" },
      { "type": "file", "file_id": "file_ghi789", "mount_path": "/workspace/src/main.py" }
    ]
    resource=$(
      jq -n --arg file_id "${file_id}" '{type: "file", file_id: $file_id}' \
        | curl --fail-with-body -sS "${auth[@]}" \
            "${base_url}/sessions/${session_id}/resources" --json @-
    )
    resource_id=$(jq -er '.id' <<<"${resource}")
    printf '%s\n' "${resource_id}"  # "sesrsc_01ABC..."
    curl --fail-with-body -sS "${auth[@]}" \
      "${base_url}/sessions/${session_id}/resources" \
      | jq -r '.data[] | "\(.id) \(.type)"'
    
    curl --fail-with-body -sS "${auth[@]}" -X DELETE \
      "${base_url}/sessions/${session_id}/resources/${resource_id}" >/dev/null
    # Listar archivos asociados con una sesión
    curl -fsSL "https://api.anthropic.com/v1/files?scope_id=sess_abc123" \
      -H "x-api-key: $ANTHROPIC_API_KEY" \
      -H "anthropic-version: 2023-06-01" \
      -H "anthropic-beta: files-api-2025-04-14"
    
    # Descargar un archivo
    curl -fsSL "https://api.anthropic.com/v1/files/$FILE_ID/content" \
      -H "x-api-key: $ANTHROPIC_API_KEY" \
      -H "anthropic-version: 2023-06-01" \
      -H "anthropic-beta: files-api-2025-04-14" \
      -o output.txt