← All projects

karta

A Managed Agent Harness Platform - Heroku, but for harness applications. A harness-native Python data plane (`karta-python`) in the request path, paired with a Rails control plane (`karta-web`) for identity, keys, and audit.

Karta is a Managed Agent Harness Platform - Heroku, but for harness applications. An agent harness is the agent runtime itself - Claude Code, OpenCode, deepagents - and a harness application is just a folder that configures one, a .claude/ directory and a CLAUDE.md. Karta runs and manages those applications rather than reimplementing agent capabilities, adding the pieces real products need around them: multi-user sessions, multi-agent routing, participant-aware messaging, HTTP deployment, multi-tenancy, policy enforcement, and lifecycle hooks. The bet is that the next generation of agentic apps will be assembled from harnesses that already exist, and what's missing is the platform around them.

It ships as a monorepo split across two planes that deploy independently. The data plane, on PyPI as karta-python, sits in the request path - sandboxes, harnesses, sessions, gateway, instance manager, request-time budget enforcement. The control plane, karta-web in Rails, handles identity, organizations, per-org API keys, usage metering, and an immutable audit log. The two halves talk over a service-token channel so customer keys are validated centrally while agent execution stays in the runtime, closing the full self-serve loop from sign-up to metered agent execution. It is the active flagship of the work.

Agent execution can run locally or on a managed cloud runtime, with each session isolated in its own microVM on AWS Bedrock AgentCore. Both paths sit behind a single execution-backend seam, so local development stays identical to production while the cloud path adds durable per-session workspaces, per-user credential isolation, and hosted MCP gateways. That managed path now runs live in production, end to end: a product's API key drives an agent turn inside its own isolated microVM, and the work is metered and budget-capped as it runs — then the agent's replies stream back into the product's own UI over HTTP. Each user's workspace is durable: their files persist not just from one session to the next but across new deploys of the app, and concurrent sessions reconcile cleanly — so the per-user filesystem keeps building up while compute stays ephemeral and per-session.

It now has a public face under its own brand: a landing page that walks the folder → git push → chat-widget story, a dedicated documentation site, and an early-access waitlist — now live at karta.sh, invite-only ahead of launch. That chat widget is a real drop-in: any product can embed a Karta-backed chat surface with a publishable key, in plain JavaScript or as a React component, with the agent's replies streaming straight into the page.