sandbox
Enterprise AI Agent Sandbox
Un marco de seguridad para integrar ejecución en sandbox en flujos de trabajo de IA agéntica. Coloca el conector en cualquier carpeta donde se ejecuten Claude Code, Codex, Cursor u otros agentes de IA: todos los comandos privilegiados se escalan a un aprobador humano, se ejecutan fuera del contexto del agente y la salida se devuelve al modelo para que pueda continuar.
Arquitectura
El Conector de Carpeta integra el sandbox en tu proyecto:
Los hooks de Claude Code interceptan llamadas a herramientas, escalan operaciones privilegiadas a un aprobador humano y devuelven la salida capturada dentro de una decisión
denypara que la herramienta nunca se ejecute con privilegios de agenteEl servidor MCP (
run_privileged,check_request,sandbox_status) proporciona el mismo bucle a través del Model Context Protocol — funciona con Claude Code, Codex, Cursor, WindsurfLa cola de carpeta (
.sandbox/escalations/) es el bus: las operaciones atómicas de archivos (os.replace,os.rename) coordinan la aprobación entre cuatro procesos no relacionados (subproceso de hook, servidor MCP, terminal de aprobador, panel de control)El motor de políticas clasifica comandos de shell, escrituras de archivos, solicitudes de red y lecturas: cuatro desencadenantes de escalación con humano en el bucle como nivel superior.
Related MCP server: Approval Gate
Inicio Rápido
# Install the connector
python -m pip install -e ".[dev]"
# Initialize a folder
sandbox init . --claude --mcp
# In one terminal: watch for escalations
sandbox watch .
# In another: use Claude Code or the MCP tools as normal
# Privileged commands will appear in the `watch` terminal for approvalCómo Funciona
El agente intenta ejecutar un comando — el hook PreToolUse de Claude Code lo intercepta
El hook clasifica y escala — los comandos de shell que no están en la lista de permitidos van a la cola de carpeta
Un humano aprueba en
sandbox watch— el aprobador ejecuta el comando fuera del agenteLa salida regresa al modelo — envuelta en
permissionDecision:"deny"con stdout en la cadena de razónEl agente continúa — recibió el resultado, nunca tuvo privilegio en sí mismo
El canal MCP funciona de manera idéntica: run_privileged devuelve un resultado de herramienta con la salida capturada.
Hitos
✅ Hito 0 — Fundamentos (correcciones de errores, contención de rutas, rehidratación de auditoría)
✅ Hito 1 — El bucle (hook PreToolUse, cola de carpeta, aprobación CLI)
✅ Hito 2 — Canal MCP (run_privileged, check_request, sandbox_status)
✅ Hito 3 — Registro de carpeta (originales restaurables, auditoría encadenada, PostToolUse)
✅ Hito 4 — Otros desencadenantes (clasificador completo, decisiones recordadas, contexto SessionStart)
✅ Hito 5 — Superficies (rutas REST, desinstalación, documentación)
Todos los hitos completados. Consulta docs/CONNECTOR.md para la referencia técnica completa.
Pruebas
# Run all tests (117 passing)
python -m pytest -q
# Test the loop with a real hook subprocess and background approver
python -m pytest tests/integration/test_connector_loop.py -v
# Test the MCP channel
python -m pytest tests/integration/test_mcp_tools.py -vEstructura del Proyecto
src/sandbox/
├── connector/ # Folder connector (queue, hooks, policy, MCP)
├── launcher/ # M1 jailed launcher (job objects, jail, shims)
├── audit/ # Chained audit log with tamper detection
├── broker/ # Non-AI privilege executor
├── fs/ # Path containment and validation
├── agents/ # Multi-agent sandbox orchestrator
├── api/ # FastAPI routes and WebSocket
└── ...Decisiones Clave de Diseño
La carpeta es el bus: Las operaciones atómicas de archivos en NTFS coordinan cuatro procesos independientes (sin estado en memoria, sin puertos abiertos, sobrevive a reinicios)
denylleva la salida: La herramienta nunca se ejecuta en el agente; la salida se pega de nuevo en la cadena de razónAprobación primero en CLI: Sin interfaz gráfica, funciona a través de SSH, sin dependencia de navegador
Cierre ante fallos: Los errores internos bloquean en lugar de permitir silenciosamente
Autoprotección no removible:
.sandbox/**en denegaciones de escritura y\.sandboxen denegaciones de shell se reinyectan en cada carga de políticas: el agente no puede eliminar sus propias restricciones
Licencia
[Por determinar]
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceHuman-in-the-Loop authorization gateway for AI Agents. Securely pause MCP workflows and route high-risk actions to human approvers via Slack or Email.1171MIT
- AlicenseNot gradedqualityCmaintenanceProvides a human approval gate for AI agents, enabling interactive inline cards for approving, editing, or rejecting actions before they are executed.MIT
- AlicenseNot gradedqualityCmaintenancePauses AI agent execution and routes approval requests to humans via Slack or email, with cryptographically signed proof of the human's decision.197MIT
- AlicenseAqualityCmaintenanceEnables AI agents to securely use real secrets (API keys, database passwords) by requiring human approval for each release, ensuring secrets never enter the model's context.2Apache 2.0
Related MCP Connectors
Runtime permission, approval, and audit layer for AI agent tool execution.
Human-in-the-loop for AI coding agents — ask questions, get approvals via Slack.
Human-in-the-loop for AI agents. Submit choices, get a human decision.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/Boredem125/architecture-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server