Framework preview

Open-source workspace foundation

The open-source foundation behind Claxedo.

A TypeScript workspace and integration layer around existing coding-agent harnesses: runtime, normalized events, extensions, relay, connections, WorkGraph, and deployment contracts.

Harness neutralExplicit placement boundaries

01 · The essential path

Bring a harness into a real workspace.

Create an Agent Runtime, open a session against an authenticated harness, subscribe to normalized events, and start a turn — the whole essential path through the public API.

See it in action
const runtime = createAgentRuntime({
  store: createMemoryRuntimeStore(),
  harnesses: [harnessFactory(pick)],
})

const session = await runtime.sessions.create({
  directory: dir,
  harness: { id: pick.id, access: pick.access },
  model: { providerID: pick.id, modelID: "default" },
})

const events = runtime.events.subscribe({ sessionId: session.id })
await runtime.turns.start({ sessionId: session.id, agent: "", text: prompt })

02 · Continuity

State crosses reconnect boundaries deliberately.

Workspace runtime, relay, and client contracts keep sessions, terminals, files, processes, and events behind explicit placement boundaries.

CLIENTauthenticated connection RELAYverified forwarding WORKSPACE HOST

03 · Bring your existing stack

Keep the harnesses and tools you already use.

Claude CodeChat UI + terminal
CodexChat UI + terminal
Gemini CLITerminal
OpenCodeChat UI + terminal
Any agent CLIFirst-class terminal
More through ACPBring a compatible agent
More agents via ACPMCP serversSkillsYour AI providerYour sandbox provider

04 · Capability catalog

Compose the workspace layer you need.

Each capability is a composable TypeScript package with its own documented boundary. Take one, or the whole workspace layer.

@claxedo/workspace-runtimeWorkspace runtime

One host contract for sessions, terminals, files, processes, and git — the same surface whether the workspace runs locally or on a machine you control.

Read the contract
@claxedo/agent-sdk-runtimeAgent runtime

The AgentRuntime facade over coding-agent harnesses — create sessions, start turns, and stream session events through one API across Claude Code, Codex, OpenCode, and more.

Read the contract
@claxedo/agent-event-runtimeNormalized events

A single event vocabulary across supported harness adapters, so clients read one stream instead of every harness's native protocol.

Read the contract
@claxedo/workspace-relayRelay

Authenticated reach to a workspace host without opening a public inbound port — verified forwarding between client and host.

Read the contract
@claxedo/connectionsConnections

Capability-scoped access to external systems — each connection grants only the access a turn actually needs.

Read the contract
@claxedo/channelsChannels

Route GitHub, Slack, Telegram, Discord, and WhatsApp messages into agent sessions, with dedup, session resolution, and approval bridging.

Read the contract
@claxedo/agent-extensionsExtensions

Skills, MCP servers, plugins, and instructions resolved through explicit scopes, then synced into each workspace or sandbox.

Read the contract
@claxedo/workgraphWorkGraph

Durable Streams, Tasks, and Attempts with decisions and evidence, so work outlives any single session or reconnect.

Read the contract
@claxedo/mcpMCP server

An MCP server and CLI that exposes Claxedo documents, WorkGraph, processes, logs, sessions, and browser tools to any MCP client.

Read the contract

05 · Architecture + placement

One workspace model. Explicit boundaries.

Local and connected compositions decide where clients, coordination, model execution, and tools run. Each package documents its own boundary so product composition does not become an implicit framework promise.

CLIENTDesktop / Web
COORDINATIONServer / Relay
EXECUTIONWorkspace Host