The full upstream README, mirrored here for reference. Install config, tool schemas, adoption signals, and an original overview live on the Ag Bash listing page.
Ag-Bash is a production-grade, sandboxed Bash environment designed specifically for AI agents. It provides a virtualized Unix-like experience entirely in-process, featuring an in-memory filesystem, integrated runtimes for Python and JavaScript, and full support for modern agentic protocols.
This repository is organized into a modular monorepo to support independent versioning and consumption of core engine components and protocol adapters.
| Package | Version | Description |
|---|---|---|
@ag-bash/bash | Core Engine: The virtual shell, filesystem, and sandboxed runtimes. | |
@ag-bash/mcp-server | MCP Server: A standalone Model Context Protocol server for seamless agent integration. | |
@ag-bash/agent-bridge | Agent Bridge: Terminal UI bridge for AI agent communication. |
| Feature | Description |
|---|---|
| ExecutionPipeline | The composable 6-stage pipeline (normalize, parse, transform, sandbox, interpret, persist) is now the sole execution engine. The legacy monolith path has been removed. |
| Fork-Speculation | bash.fork() creates isolated copy-on-write branches; bash.speculate() runs N candidates in parallel and keeps the winner. Core moat for agentic workflows. |
| Observations at Source | Every command produces typed Observation objects with code and confidence fields, surfacing issues without blocking execution. |
| True Streaming | bash.execStream() yields stdout/stderr chunks via AsyncGenerator as statements produce output, byte-identical to buffered exec. |
| RunLoop v2 | Extended with mode, healer, and memory configuration. AgentMemory now persists across sessions. |
| MCP 2025-06-18 | Protocol bumped to latest spec with back-compat preserved for 2024-11-05 clients. Code Mode slice for structured output. |
| Destructive Detection | AST-based gate detects rm -rf /, fork bombs, and decode-pipe-to-shell patterns structurally. Default policy: WARN. |
| OTEL at Exec Level | Optional AgBashTracer wraps each exec() call in an OpenTelemetry span. Zero overhead when @opentelemetry/api is absent. |
Requires Node.js >=20.6.0. For full ESM-hook security hardening, Node.js >=23.5 is recommended.
Subpath imports for tree-shaking and targeted use:
If you are building an application and want to embed a sandboxed shell:
For human-in-the-loop debugging and interactive use, install the Ag-Bash suite globally.
To provide a bash environment to your agent (e.g., in Claude Desktop or Cursor):
Then, add the server to your MCP configuration:
ServiceContainer, restructured BashOptions API with grouped sub-objects, and zero singletons.head -N patterns and truncates upstream output.any types from core services, interpreter, and error hierarchy (unknown throughout).ag-hover, ag-explain), symbol discovery, and persistent project management.tool:start, tool:progress, and tool:end hooks.InMemoryFs, OverlayFs (COW), or ReadWriteFs.jq, sqlite3, python3 (WASM), and js-exec (QuickJS).| Version | Codename | Highlights |
|---|---|---|
| v6.0 | Pipeline | ExecutionPipeline default, fork-speculation, streaming, OTEL, destructive gate, Node >=20.6 |
| v5.0 | Hardened | Lazy ServiceContainer, defense-in-depth default ON, SSRF prevention, ASTCache 64-bit FNV-1a |
| v4.1 | Runtime | Introduced Agent RunLoop, Trap signal handlers, Self-Healing recovery, and OpenTelemetry spans (default/extended in v6.0) |
| v3.0 | Breaking Redesign | ServiceContainer DI, new BashOptions grouped API, zero singletons |
| v2.x | Nexus Prime | Agentic tools (ag-hover, ag-explain), MCP integration, Planning Mode |
| v1.x | Genesis | Initial release, core interpreter, in-memory filesystem, basic builtins |
See the CHANGELOG for detailed release notes.
Apache-2.0