# Choose a framework

A framework is the agent software that runs inside your agent's machine. Every ready-made template is a real agent framework, pre-configured and one image pull from live. Pick one, name it, deploy. Each guide covers the image, how it works, its environment variables, and how to talk to it.

| Framework | Template ID | Runtime | Best for | LLM key |
| --- | --- | --- | --- | --- |
| [Claude Code](/content/docs/frameworks/claude-code/index.html) | claude_code | Node.js (Claude Agent SDK) | A coding agent with real bash and file tools in a persistent workspace | Your ANTHROPIC_API_KEY (required) |
| [Codex](/content/docs/frameworks/codex/index.html) | codex | Node.js (Codex CLI) | OpenAI's coding agent with shell and file tools in a persistent workspace, plus the interactive TUI in the terminal | Optional (Maritime LLM by default; your OpenAI key or ChatGPT sign-in) |
| [OpenClaw](/content/docs/frameworks/openclaw/index.html) | openclaw | Node.js | A general autonomous assistant: 100+ skills, channels, web browsing | Optional (Maritime LLM by default) |
| [Hermes](/content/docs/frameworks/hermes/index.html) | hermes | Python | A self-improving agent with persistent memory and its own full dashboard | Optional (Maritime LLM by default) |
| [ZeroClaw](/content/docs/frameworks/zeroclaw/index.html) | zeroclaw | Rust (single binary) | Ultra-light agents: <5 MB RAM, sub-second start, good for running many | Optional (Maritime LLM by default) |
| [DeepSeek Harness](/content/docs/frameworks/deepseek-harness/index.html) | dsh | Node.js (plugin runtime) | DeepSeek's agent harness with a full web workbench and session replay | None needed (Maritime LLM by default) |

## Deploying a template

In the dashboard: **New agent**, pick the template, name it. From the terminal:

```
maritime templates                       # list what's available
maritime create my-agent --template openclaw
```

## Worth knowing

- **Claude Code and Codex are chat-only**: neither has a web UI of its own, so you talk to it from the dashboard chat, the CLI, the API, or a connected channel.
- **DeepSeek Harness is version-pinned**: upstream is a fast-moving developer preview, so Maritime upgrades the image deliberately after testing.

### None of these fit?

Any Docker image that speaks a two-endpoint contract becomes a full Maritime agent: CrewAI, LangGraph, AutoGen, or your own code. See [Deploy any container](/content/docs/frameworks/custom/index.html).
