Packages
Every @robota-sdk/* package with its own documentation. Each page links to the package's SPEC — its contract, invariants and design decisions. Packages marked internal are part of the monorepo but not published to npm.
@robota-sdk/agent-builtin-providers— This package is the default provider set that ships with Robota: the definitions of the built-in chat providers (anthropic, openai, gemini, gemma, qwen, deepseek), the default media provider definitions (Gemini image and Seedance video), a…@robota-sdk/agent-capability-pack— @robota-sdk/agent-capability-pack owns the additive capability-bundle contract: the ICapabilityPack shape (command modules, tools, and subagents a consumer adds to a product), the IMergedCapabilities result, and the pure mergeCapabilityPac…@robota-sdk/agent-cli— @robota-sdk/agent-cli is the robota command: an AI coding assistant for the terminal and the reference app built from the Robota libraries. The CLI owns argument parsing, the choice of presentation — the terminal UI, print mode (-p), the h…@robota-sdk/agent-command— @robota-sdk/agent-command owns the slash-command implementations for Robota agents: one command module per area (session, provider, permissions, background work, terminal, plugins, and so on), each with its own factory, plus createDefaultC…@robota-sdk/agent-command-workflows(internal) — The robota CLI's /workflows command module (internal, not published). It surfaces the DAG workflow engine inside an agent session by composing @robota-sdk/dag-framework in-process, and owns the natural-language authoring pipeline behind /w…@robota-sdk/agent-core— @robota-sdk/agent-core is the foundation package of the Robota SDK. It owns the Robota agent and its execution loop, the provider, tool and plugin contracts, message and history types, permission evaluation, the hook runner, event services…@robota-sdk/agent-executor— @robota-sdk/agent-executor owns the runtime layer for long-running Robota work: the background task manager and its state machine, snapshots, watchdogs and log pages; the shell, scheduled and tool-invocation runners; the subagent manager a…@robota-sdk/agent-file-authority— @robota-sdk/agent-file-authority owns one domain-free capability: bounded, read-only byte reads through an opaque authority rooted at one directory. Each path segment is opened relative to the retained native directory handle without follo…@robota-sdk/agent-framework— @robota-sdk/agent-framework is the assembly layer of the Robota SDK. It owns InteractiveSession, createQuery() and createAgentRuntime(), and the pieces they compose: workspace trust and project access, settings and context loading (AGENTS.…@robota-sdk/agent-gui-web(internal) — The robota GUI as a web app. A private product-shell package: the desktop app (apps/agent-app) loads its build, agent-cli serves it on robota --serve --open, and it runs in a browser for development:@robota-sdk/agent-interface-analytics— Usage and run-trace contracts for the Robota SDK: per-turn token and cost snapshots, per-source session reports and run timelines, the live prompt trace, opt-in live prompt/response/tool content, and the cross-session personal-usage report…@robota-sdk/agent-interface-command— Command contracts for the Robota SDK: what a command is, what it returns (including the host actions a session applies and the UI intents a surface renders), how it is listed to surfaces and to the model, who runs it, and the ports a comma…@robota-sdk/agent-interface-execution— Execution contract families for the Robota SDK: what a background task is and what states it moves through, how independent jobs are grouped, what a subagent is asked to do and returns, and the workspace record that shows an execution's or…@robota-sdk/agent-interface-session— Runtime session contracts for the Robota SDK: what an interactive session is and exposes, the channel a surface talks to it through, the events it emits, the handle for one turn, and the record and store port that persist it. Mostly type d…@robota-sdk/agent-interface-session-mobility— Session mobility for the Robota SDK: moving messages and files between live sessions, and moving authority over a session to another machine. Besides the contracts, the package ships the logic that must behave the same everywhere: the hand…@robota-sdk/agent-interface-transport— Transport contracts for the Robota SDK: the service/runner lifecycle every transport adapter follows, persisted transport configuration and the registry views over it, payload channels a transport can carry beside its own protocol, and the…@robota-sdk/agent-interface-tui— Terminal UI interaction contracts for the Robota SDK: how a command declares what the terminal UI should do when it is run without arguments (a picker, a wizard, or a confirmation). Type contracts only — no runtime functions, no React, no…@robota-sdk/agent-mcp— The Model Context Protocol client for the Robota SDK. It lets an agent use tools from external MCP servers while keeping three concerns separate: definitions (decoding configuration, precedence between sources, disable overlays, redacted p…@robota-sdk/agent-plugin— @robota-sdk/agent-plugin owns the ready-made plugins of the Robota SDK: ConversationHistoryPlugin, ErrorHandlingPlugin, ExecutionAnalyticsPlugin, LimitsPlugin, LoggingPlugin, PerformancePlugin, UsagePlugin and WebhookPlugin. Each extends A…@robota-sdk/agent-preset— @robota-sdk/agent-preset owns the preset contract (IPreset), the built-in presets, the instance-scoped preset registry with its precedence rules, loading of external preset files, and the output-style catalog and registry. It depends only…@robota-sdk/agent-process— @robota-sdk/agent-process is the one place the Robota SDK terminates a spawned process and its descendants (killProcessTree: SIGTERM → grace → SIGKILL, process-group aware). It has no @robota-sdk dependencies, so agent-executor, agent-tool…@robota-sdk/agent-product— @robota-sdk/agent-product owns the product-assembly kernel: the IProductProfile declaration, the IAssembledProduct result, and assembleProduct(profile), a pure, deterministic, I/O-free fold that turns a profile into runtime materials. It r…@robota-sdk/agent-provider-anthropic— This package owns AnthropicProvider, the Anthropic Claude chat provider built on the official @anthropic-ai/sdk, and its provider definition. The package README covers installation, options and usage.@robota-sdk/agent-provider-bytedance— This package owns BytedanceProvider, a ByteDance (ModelArk) video generation provider that implements IVideoGenerationProvider from @robota-sdk/agent-core over its own small HTTP client (no vendor SDK). The package README covers installati…@robota-sdk/agent-provider-gemini— This package owns GeminiProvider, the Google Gemini chat provider built on @google/genai, which also implements IImageGenerationProvider, and its provider definition. The deprecated GoogleProvider compatibility alias is available from the…@robota-sdk/agent-provider-openai— This package owns OpenAIProvider, the OpenAI chat provider built on the openai SDK, which also reaches any OpenAI-compatible endpoint through baseURL. The shared OpenAI-compatible protocol code it uses lives in @robota-sdk/agent-provider-o…@robota-sdk/agent-provider-openai-compatible— This package owns the DeepSeek, Qwen and Gemma chat providers and the shared OpenAI-compatible protocol code (its ./shared entry) that they and @robota-sdk/agent-provider-openai are built on. The package README covers installation, options…@robota-sdk/agent-provider-replay(internal) — @robota-sdk/agent-provider-replay is an internal test utility (private, not published to npm). It is a provider that answers each chat call with the next response recorded in a Robota session log, so a real conversation can run offline, de…@robota-sdk/agent-remote-pairing— Pairing and DTLS-fingerprint channel binding for Robota's peer-to-peer remote control. A host proves that a connecting peer holds a single-use pairing secret and binds that proof to the DTLS channel each side actually observes, so a signal…@robota-sdk/agent-roundtable(internal) — @robota-sdk/agent-roundtable coordinates independently constructed agents and people in one shared conversation: it selects turns, runs parallel groups, and publishes their messages in a stable order while each participant keeps its own ru…@robota-sdk/agent-session— @robota-sdk/agent-session owns the session lifecycle of the Robota SDK: permission-gated tool execution, lifecycle hooks, context-window tracking, compaction, versioned session logs and replay, and session-record persistence. Session logs…@robota-sdk/agent-session-analytics— @robota-sdk/agent-session-analytics analyzes persisted Robota session records: per-turn timing (LLM wait vs. tool execution), token usage and cost per source, cross-session personal usage, and content-free OTLP projections of that usage. I…@robota-sdk/agent-subagent-runner— @robota-sdk/agent-subagent-runner is the optional child-process runner for Robota subagents. It implements agent-executor's ISubagentRunner by starting a copy of the running program in worker mode, sending the job over a validated IPC prot…@robota-sdk/agent-tool-defaults— @robota-sdk/agent-tool-defaults owns the Robota SDK's default tool set. createDefaultTools() returns ten tools, or eight when a sandboxClient with its own file system is supplied (Glob and Grep are then left out), and adds CodebaseRetrieva…@robota-sdk/agent-tools— @robota-sdk/agent-tools owns the Robota SDK's tool implementations: the Zod tool factories, the built-in tools (Shell, Read, Write, Edit, Glob, Grep, WebFetch, WebSearch, AskUserQuestion, ToolSearch), codebase retrieval and computer-use to…@robota-sdk/agent-transport— The transport-neutral protocol layer shared by every Robota transport: the wire messages a client and a host exchange, the session bridge that applies them to a live session, and the delivery helpers (backpressure, resumable delivery, chan…@robota-sdk/agent-transport-http— The HTTP transport for the Robota SDK, built on Hono. It exposes a running agent session as HTTP routes: submit a prompt and stream the response as Server-Sent Events, run a command, abort, and read the conversation, context and execution…@robota-sdk/agent-transport-mcp— The MCP server transport for the Robota SDK. It serves one running agent session as a Model Context Protocol server — its runtime tools under their canonical names, plus a prompt-submission tool — over three carriers:@robota-sdk/agent-transport-webrtc— The WebRTC peer-to-peer transport for the Robota SDK (Node.js host side). It carries an IProtocolSession (a full interactive session is one) over an RTCDataChannel, so a remote client can drive a live session directly, peer to peer, withou…@robota-sdk/agent-transport-webrtc-web(internal) — The browser WebRTC transport peer for a Robota session — the browser mirror of the Node host transport @robota-sdk/agent-transport-webrtc. It answers the host's WebRTC offer over a native RTCPeerConnection, runs the directional-HMAC pairin…@robota-sdk/agent-transport-ws— The WebSocket transport for the Robota SDK. WsTransport serves a running session on a loopback WebSocket server that admits only connections presenting a token (minted per launch unless the host supplies one), so a local client such as a G…@robota-sdk/agent-ui-terminal— @robota-sdk/agent-ui-terminal is the React + Ink terminal UI package for the Robota SDK. It owns the Ink rendering pipeline, the session-owning TuiInteractionChannel, the full TUI attached to a daemon's session, and the supervised-session…@robota-sdk/agent-ui-web(internal) — The GUI presentation layer for a robota session — the graphical analog of @robota-sdk/agent-ui-terminal. It reconstructs conversation state from the transport-neutral TServerMessage stream and renders it as React components, and it ships t…@robota-sdk/dag-adapters-local(internal) — In-memory and file-based implementations of the DAG ports from @robota-sdk/dag-core and @robota-sdk/dag-cost, for tests, local development and single-machine deployments.@robota-sdk/dag-adapters-sqlite(internal) — SQLite-backed IStoragePort and IQueuePort for the DAG engine: a persistent backend in a single host-selected database file, with no database server to run.@robota-sdk/dag-api(internal) — The API layer of the DAG engine: design, runtime, observability and diagnostics controllers, their request/response types and service ports, and the IProblemDetails error envelope.@robota-sdk/dag-builder(internal) — Turns a declarative pipeline spec, or a workflow file read from disk, into a fully wired IDagDefinition. It only constructs definitions; it never executes them.@robota-sdk/dag-core(internal) — The single source of truth for Robota's DAG domain contracts: definition, run and task types, ports, state machines, decoding and validation. Every other dag-* package imports these contracts.@robota-sdk/dag-cost(internal) — Cost evaluation for DAG orchestration using CEL (Common Expression Language) formulas: the cost-metadata model, its storage and management ports, and the CelCostEvaluator.@robota-sdk/dag-framework(internal) — Embeddable in-process composition of the DAG engine: one createDagFramework() call wires the runtime, worker, local adapters and a node catalog. It also provides local and HTTP runtime providers.@robota-sdk/dag-node(internal) — Node-authoring infrastructure for Robota's DAG engine: the AbstractNodeDefinition base class, defineDagNode(), typed IO access, lifecycle wrappers, registries and media value objects.dag-nodes(internal) — packages/dag-nodes/ holds the node packages of Robota's DAG workflow engine: one internal package per node family, named @robota-sdk/dag-node-<folder>. The folder itself is not a package. Every node extends AbstractNodeDefinition from @rob…@robota-sdk/dag-nodes-default(internal) — The default set of DAG node definitions, assembled from the @robota-sdk/dag-node-* packages. It is a composition aggregator: import it at an application entry point or composition root.@robota-sdk/dag-orchestration-client(internal) — A thin HTTP client, DagOrchestrationHttpClient, and the request/response types for a DAG orchestration server's /v1/dag/* routes, such as apps/dag-runtime-server.@robota-sdk/dag-projection(internal) — Read models for DAG runs: run status summaries, lineage graphs with task status, and dashboard projections, built from storage by ProjectionReadModelService.@robota-sdk/dag-runtime(internal) — Run orchestration for the DAG engine: creating runs from published definitions, dispatching entry tasks, querying run status and cancelling runs, through RunOrchestratorService, RunQueryService and RunCancelService.@robota-sdk/dag-scheduler(internal) — Scheduled, batch and catch-up run triggering for the DAG engine. SchedulerTriggerService validates each request and delegates run creation to dag-runtime's RunOrchestratorService.@robota-sdk/dag-worker(internal) — Task execution for the DAG engine: WorkerLoopService processes queued tasks and RunAdvancementCoordinator is the single actor that advances runs for one queue.@robota-sdk/pack-coding— @robota-sdk/pack-coding owns createCodingPack(options), which bundles Robota's coding capability into one ICapabilityPack: the default coding tools from agent-tool-defaults, the /shell, /editor, and /git command modules from agent-command,…