The simplest way to run AI agents.

One native binary. Your own API key. Linux and macOS.

No account, no telemetry, nothing hosted for you.

klawed - coffee-briefsonnet-4.5
❯Draft a market brief on specialty-coffee subscriptions from the sample figures in brief.md, then build me a one-page dashboard.
▸thinking
Every number I need is in brief.md. I will hand the extraction to a subagent so the raw notes stay out of this context, then build the dashboard from its summary.
●Readbrief.md✓
todo
▶Extract the headline figures
○Build dashboard.html
○Check the figures and summarise
◎Scope the brief
●Subagentmarket-scout - pull the headline figures✓
●Writedashboard.html +214✓
todo
▶Build dashboard.html
○Check the figures and summarise
◎Scope the brief
◎Extract the headline figures
●Bashpython3 tools/check_figures.py dashboard.html✓
└7 figures - 2 tables - 1 chart - no dangling references
=^..^=
Done. The dashboard is one page: the headline figures first, then the channel mix. Every number traces back to brief.md.
┌───────────────────────┬───────┬───────┬─────────┐
│ Metric │ 2025 │ 2026e │ Change │
├───────────────────────┼───────┼───────┼─────────┤
│ Subscribers │ 6.8M │ 8.9M │ +31% │
│ Average monthly spend │ $24 │ $26 │ +8% │
│ Annual churn │ 7.1% │ 6.4% │ -0.7 pt │
│ Market value │ $2.4B │ $3.1B │ +29% │
└───────────────────────┴───────┴───────┴─────────┘
Channel mix, 2026e
Direct ████████████░░░░░░░░░░ 54%
Retail ██████░░░░░░░░░░░░░░░░ 27%
Gifting ████░░░░░░░░░░░░░░░░░░ 19%
❯
NORMALready12.4k tok100%
localhost:18080
Specialty coffee market briefcoffee-brief
Draft a market brief on specialty-coffee subscriptions from the sample figures in brief.md, then build me a one-page dashboard.
▸thinking
Every number I need is in brief.md. I will hand the extraction to a subagent so the raw notes stay out of this context, then build the dashboard from its summary.
Readbrief.mdrunningok
TodoWriteExtract the headline figuresrunningupdated
▶Extract the headline figures
○Build dashboard.html
○Check the figures and summarise
◎Scope the brief
Subagentmarket-scout - pull the headline figuresrunningok
Writedashboard.html +214runningok
TodoWriteBuild dashboard.htmlrunningupdated
▶Build dashboard.html
○Check the figures and summarise
◎Scope the brief
◎Extract the headline figures
Bashpython3 tools/check_figures.py dashboard.htmlrunningok
✓7 figures - 2 tables - 1 chart - no dangling references
Done. The dashboard is one page: the headline figures first, then the channel mix. Every number traces back to brief.md.
Metric20252026eChange
Subscribers6.8M8.9M+31%
Average monthly spend$24$26+8%
Annual churn7.1%6.4%-0.7 pt
Market value$2.4B$3.1B+29%
# Channel mix, 2026e
Direct   ████████████░░░░░░░░░░  54%
Retail   ██████░░░░░░░░░░░░░░░░  27%
Gifting  ████░░░░░░░░░░░░░░░░░░  19%
Message klawed
Send
One native binary
Compiled C11, self-contained. Untar and run.
Any provider
OpenAI, Anthropic, Bedrock, DeepSeek, Kimi, Z.AI, or anything OpenAI-compatible.
Built-in tools
Read, Write, Edit, Bash, Grep, Glob, TODO, Subagent.
Subagents
Delegation in a fresh context, on a model of its own.
Memory
Persistent across sessions, with automatic compaction. A session runs indefinitely.
Browser client
Free and self-hosted: the same agent, on any screen.

Running it

export OPENAI_API_KEY="sk-..."
klawed --model gpt-5.4 "explain how the request path is wired up"

Providers, tools, commands, keys and the browser client are in the docs.

The same agent, in your browser.

klawed ships a web client, and you host it. Run one command, pick a folder, and you have a thread - the agent, its tools and its memory, reached from any browser. Free and ungated: nothing of ours in the middle.

  • A thread per folder, each backed by its own agent that keeps working with the tab closed.
  • Reads the same ~/.klawed/config.json as the terminal, so providers and settings are set up once.
  • The phone and tablet client is the same page, laid out for a small touch screen.
klawed --web-server 8080

Binding it, credentials and the API are in the web client docs.