Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
agent-framework-claude encapsula el SDK del agente de Claude como ClaudeAgent. Usa el entorno de ejecución del agente administrado de Claude, las sesiones, el modelo de permisos, las herramientas integradas y la compatibilidad con MCP, a la vez que expone las interfaces de ejecución y de transmisión en flujo de Agent Framework.
Esta integración se diferencia del proveedor de modelos de Anthropic, que utiliza Claude como modelo subyacente de un agente de Agent Framework que pertenece a la aplicación.
Prerequisites
- Instale y configure la CLI de Claude Code.
- Seleccione un modelo de Claude y un modo de permisos.
- Ejecute el agente en un directorio de trabajo restringido al habilitar herramientas de archivo o shell.
Instalar el paquete
pip install agent-framework-claude --pre
Configuration
| Variable | propósito |
|---|---|
CLAUDE_AGENT_MODEL |
Modelo de Claude usado por el entorno de ejecución administrado. |
CLAUDE_AGENT_PERMISSION_MODE |
Modo de permiso predeterminado para herramientas integradas y MCP. |
CLAUDE_AGENT_CLI_PATH |
Ruta de acceso explícita opcional a la CLI de Claude Code. |
CLAUDE_AGENT_CWD |
Directorio de trabajo expuesto al tiempo de ejecución. |
CLAUDE_AGENT_MAX_TURNS |
Número máximo opcional de turnos de agente. |
CLAUDE_AGENT_MAX_BUDGET_USD |
Presupuesto de coste opcional para una ejecución. |
Crea un ClaudeAgent
ClaudeAgent admite ejecuciones de streaming y normales y puede exponer las herramientas de funciones de Agent Framework.
async def non_streaming_example() -> None:
"""Example of non-streaming response."""
print("=== Non-streaming Example ===")
agent = ClaudeAgent(
name="BasicAgent",
instructions="You are a helpful assistant. Keep responses concise.",
tools=[get_weather],
)
async with agent:
query = "What's the weather in Seattle?"
print(f"User: {query}")
result = await agent.run(query)
print(f"Agent: {result.text}\n")
async def streaming_example() -> None:
"""Example of streaming response."""
print("=== Streaming Example ===")
agent = ClaudeAgent(
name="StreamingAgent",
instructions="You are a helpful assistant.",
tools=[get_weather],
)
async with agent:
query = "What's the weather in Paris?"
print(f"User: {query}")
print("Agent: ", end="", flush=True)
async for chunk in agent.run(query, stream=True):
if chunk.text:
print(chunk.text, end="", flush=True)
print("\n")
Se muestran ejemplos adicionales:
- Herramientas integradas de archivos y shell de Claude.
- Control interactivo de permisos.
- Servidores MCP locales y remotos.
- Persistencia y reanudación de la sesión.
- Captura de direcciones URL y varias reglas de permisos.
Consideraciones sobre permisos
- Comience con el modo de permisos menos permisivo del SDK de Claude Agent que permita realizar la tarea.
- Requerir aprobación explícita para las operaciones de shell, archivo, red u otras operaciones de efecto secundario.
- No exponga credenciales a través de variables de entorno ni archivos legibles en el directorio de trabajo del agente.