Skip to main content
Karta runs agents that are defined for a supported harness. The agent stays in that harness’s native project layout; Karta detects the layout, packages it as a release, and runs each turn through that harness. Use this page to choose the --harness value for karta create, or to check whether an existing agent project can be brought to Karta without changing its file format.

Current harnesses

For current version availability and exposed capabilities, use the public dashboard catalog at /harnesses.

Create a starter

karta create writes the native instruction file and marker directory for the selected harness. If you already have an agent project, keep its existing layout and run karta setup --enable from that folder.

Detection rules

Karta detects the harness from the folder layout. If a folder has markers for more than one harness, declare the harness explicitly in karta.toml:
Mixed markers are allowed when you declare the harness, but they are harder for teammates and CI to reason about. Prefer one harness layout per agent project.

What changes on Karta

Karta does not translate your agent into a Karta-specific agent format. The harness still owns the agent loop, tools, MCP connections, context, memory format, skills, sub-agents, and conversation history. Karta adds release packaging, durable kartas, sessions, identity, isolation, metering, budgets, webhooks, audit, and API surfaces around that harness-native project.

Agent structure

See the file layout for each supported harness.

karta.toml

Declare the harness and deploy settings when auto-detection is not enough.