Overview of the TypeScript Agent Runner structure
mainservices/agent/. It is designed with clear architectural seams including engines/, tools/, and tracing/, all communicating via a single wire contract defined in protocol.ts.repository·main·Indexed 26 days ago
https://github.com/agenta-ai/agentaAgenta is an open-source workspace for building, running, and managing AI agents. It supports interactive chat and autonomous background agents with built-in observability, team collaboration, and model harnesses. The documentation covers architectural design for public edge, cross-service, and in-service interfaces, as well as guides for database migrations using Alembic and the generation of Python and TypeScript client packages.
services/agent/. It is designed with clear architectural seams including engines/, tools/, and tracing/, all communicating via a single wire contract defined in protocol.ts.Agenta is an open-source workspace for building, running, and sharing specialized agents. Key features include:
The Agenta agent workflow stack is composed of several layers: a Python service, a Node runner, a sandboxed harness, a browser client, the vault, and a trace pipeline. Because these components interact across different processes and services, they rely on specific contracts (interfaces).
Interfaces are categorized by their blast radius:
The sessions domain serves as the durable coordination layer for agent sessions in Agenta. It is divided into several sub-domains that manage state, live streams, event records, human-in-the-loop interactions, and file system mounts.
| Sub-domain | Responsibility | Storage |
|---|---|---|
| states | Manages durable SDK SessionRecord and sandbox resume pointers. | Postgres (session_states) |
| streams | Handles live control, ownership, heartbeats, and liveness for ACP streams. | Postgres (session_streams) + Redis |
| records | Manages append-only persisted session stream contents (events). | Tracing DB (records) |
| interactions | Manages Human-in-the-loop (HITL) requests like approvals, inputs, and tool confirmations. | Postgres (interactions) |
| mounts | Provides durable object-store mounts for agent working directories. | Postgres (mounts) |
The Stateless Playground is a project-level feature in Agenta that provides a playground experience without being bound to a specific application.
Key characteristics include:
The SDK local tools feature allows standalone Agenta Python SDK users to run an agent's tools during a fully local execution. This setup requires no Agenta backend service and no sandbox-agent sidecar.
It works by resolving an agent's tool references into runnable specifications and supplying the necessary secrets, all without calling the Agenta service. This feature is designed to work in conjunction with the LocalBackend engine, which moves the agent runtime into the SDK to run a harness on the user's own machine.
The @agenta/* packages are internal workspace packages within the Agenta monorepo. They provide shared utilities, UI components, and entity definitions used across the platform.
Available Packages:
@agenta/shared: Shared utilities, state atoms, and API helpers (Active).@agenta/ui: Shared UI components including tables, selection systems, and presentational components (Active).@agenta/entities: Entity definitions and data fetching atoms (Planned).Agenta is an open-source workspace designed for building and running specialized AI agents. It allows you to build agents through conversation, connect them to various applications, and deploy them to run either interactively with your team or as background agents triggered by schedules or events.
Key capabilities include:
AGENTS.md, skills, and MCP (Model Context Protocol) servers.The AI Services workspace defines a REST API designed for "tool call" shaped AI services. This allows agents to interact with specific AI-driven tools as part of their workflow.
Currently, the implementation includes a single tool:
tools.agenta.api.refine_prompt: A tool that calls a deployed prompt within an internal Agenta organization.Note: For the refine_prompt tool, Bedrock credentials are managed within the Agenta app configuration rather than through backend environment variables.
The HTTP (remote) MCP transport is a design feature in Agenta that enables Model Context Protocol (MCP) servers to be accessed over HTTP rather than via stdio. This approach is intended to be simpler than stdio because it avoids launching child processes, managing command/args/npx bootstrapping, and handling per-process scoped environment variables.
Key characteristics include:
transport: "http", url, and named secrets for serialization to the /run wire.The Build-kit tools cleanup is a design initiative to redesign the playground build kit (the 'inside' tool set used by a playground agent to build itself). The goal is to execute verdicts from the builder tooling review and port the agent-creation-lab playbook into the inside skills.
Key objectives include:
discover_tools, discover_triggers) via a hard migration.overlay.py.test_run) to run as server-side handlers on the existing tool-call plane, registered through the platform catalog.op_catalog.py.