Comparison
Agent AFK vs. Claude Code
Agent AFK is a full coding agent with an interactive REPL, 23 shipped skills, and a terminal-state contract that forces every turn to end in Done, Blocked, Asking, or Interrupted. The unattended daemon is a superpower on top of that, not a substitute for it. If you live in a terminal, this page is for you.
At a glance
- Pick AFK for: unattended overnight runs with a Telegram verdict
- Pick AFK for: 23 auto-routed skills and a verdict contract in the runtime
- Keep Claude Code for: IDE-native presence (VS Code, JetBrains inline context)
- Run both: AFK imports your Claude Code setup with zero config conflict
Everything CC does in a terminal, plus unattended work it cannot match
Claude Code is a strong interactive coding agent. Agent AFK covers the same ground in a terminal, then goes further: 23 skills auto-routed by task shape, a REPL with 52 slash commands and ghost-text suggestions, cross-session SQLite memory with FTS5 search, and a verdict contract baked into the runtime code, not a prompt. Every turn ends in a named terminal state. Done requires an Evidence pointer to a file path, commit SHA, or test result. That contract is what makes unattended overnight runs actually reviewable. The honest tradeoff: AFK has no IDE extensions. If most of your work happens inside VS Code or JetBrains, Claude Code has ambient context (cursor position, open file, inline diagnostics) that a terminal-first agent does not. Terminal-first developers find they can run AFK as their primary agent. IDE-first developers probably want Claude Code for in-editor work and can reach for AFK for tasks they want to delegate.
Feature comparison
Grounded in the actual implementations, not marketing copy.
| Dimension | Claude Code | Agent AFK |
|---|---|---|
| Primary identity | Interactive coding agent. Prompt, watch, steer. IDE extensions (VS Code, JetBrains) give it ambient presence in your editor. | Interactive REPL coding agent with a cron daemon on top. 52 slash commands, ghost-text autocomplete, tool-lane visualization, and verdict cards in the REPL. Daemon for overnight and scheduled work. |
| How a turn ends | Free-form prose. You read the output to determine what happened. | One of four terminal states: Done, Blocked, Asking, or Interrupted. Done requires an Evidence pointer to a file, commit, or test result. Enforced in runtime code, not a prompt. |
| REPL / TUI features | Interactive terminal session. Tool calls displayed inline. No structured tool-lane overlay or loop-stage visualization. | Tool-lane overlay with elapsed timing and parallel x N badges. Ghost-text suggestions (deterministic + LLM tier). Loop-stage rail (Observe / Model / Choose / Act / Update). Verdict cards (Done / Blocked / Asking / Interrupted). Shell passthrough: !cmd (foreground), !&cmd (background). @filename injection into prompts. Ctrl+B backgrounds a running turn. Shift+Tab cycles permission modes without interrupting. |
| Orchestration skills | Custom slash commands (project-local .claude/ directory). Agent SDK for building autonomous agents programmatically. | 23 skills ship in the box and are auto-routed by task shape: /mint (spec, research, plan, parallel build, verify), /diagnose (parallel hypothesis fan-out into isolated worktrees), /review (parallel dimension agents: security, correctness, API compat, coverage), /ship, /fix-pr, /refactor, /shadow-verify, and more. All open source, readable, and extensible via plugins. |
| Unattended / scheduled work | Routines: cloud-scheduled tasks, GitHub-triggered runs. Survives a closed laptop because they run in Anthropic infrastructure. | Local cron daemon with Telegram push. Verdicts (not log tails) land on your phone. Reply from Telegram to answer Asking, approve, or interrupt. Requires your machine to be running. |
| IDE integration | Native VS Code and JetBrains extensions. Sees cursor position, open file, and inline diagnostics. Desktop app, web interface, and mobile. | No IDE extensions. Terminal-only. Run both if you want IDE integration and AFK capabilities. |
| Model providers | Anthropic API natively. Bedrock, Vertex AI, and Foundry via cloud integrations. | Anthropic, any OpenAI-compatible endpoint, and local models (Ollama, LM Studio, llama.cpp). Each pipeline step can target a different provider or cost tier. |
| Cross-session memory | CLAUDE.md files (4 scopes: managed, user, project, local) with upward directory walk. Delivered as user message context. | SQLite with FTS5 full-text search: a durable fact archive queryable across sessions. Survives context compaction. Delivered via system prompt for higher adherence. Separate HOT.md for hot-path context and AFK.md for project conventions. |
| Background subagent management | 20 concurrent subagents, 200 per session maximum. Excess fails immediately. | 8 concurrent subagents per fan-out, queued beyond the cap. No hard per-session ceiling. Ctrl+B and /bgsub manage live subagents from the REPL. DAG orchestration with worktree isolation per subagent. |
| Tool output handling | Truncates long tool output at the tail. | Head+tail strategy: preserves the start and end of large outputs so both context and summaries survive compaction. |
| Browser automation | No built-in browser tools. Available via MCP servers. | Built-in Playwright: open, observe, act, screenshot. Domain policy enforcement and SSRF guards included. |
| Permissions model | Per-tool prompts by default. Auto mode (classifier-reviewed) on Pro/Max/Team. bypassPermissions available. | Shift+Tab cycles three modes in the REPL without interrupting: default (path-contained), plan (propose before act), bypass (unattended work). Bypass is the mode for overnight runs. |
| Hooks / extensibility | PreToolUse, PostToolUse, Notification, Stop hooks. Custom slash commands in project-scope .claude/ directory. | PreToolUse, PostToolUse, SessionStart/End, SubagentStart/Stop hooks. Each can block, inject context, or fire custom logic. Plugin architecture for distributing skills, MCP servers, and config as installable packages. |
| MCP support | MCP client with project-scope config in .mcp.json. Stdio and HTTP transports. | 4-layer MCP config (plugin, user, project, CLI flag). Stdio, HTTP, SSE, and OAuth transports. afk mcp auth handles OAuth flows for servers that require them. |
| GitHub / cloud integration | Native GitHub integration. Routines can trigger from GitHub events. Channels: Telegram, Discord, iMessage, webhooks. | No native GitHub integration. Git operations happen through standard shell tools. Telegram bot for push notifications and interactive responses. |
| Migration path | N/A, primary tool for most users. | afk migrate imports CLAUDE.md rules, custom commands, and project context from an existing Claude Code setup. One command. Original Claude Code config is not modified. |
| Config isolation | Lives in ~/.claude/ | Lives in ~/.afk/. Fully isolated. Both tools can coexist on the same machine. |
| Backing and support | Anthropic product. SLA, enterprise procurement, near-daily releases, large community. | Apache-2.0 open source. One maintainer. No SLA. |
Where Agent AFK pulls ahead
Genuine architectural differences, not marketing claims.
A structured REPL built for agent work
AFK ships a structured TUI: 52 slash commands, ghost-text autocomplete (deterministic fast-path plus LLM tier), a tool-lane overlay that shows each tool call with elapsed time and parallel x N badges, a loop-stage rail (Observe / Model / Choose / Act / Update), and verdict cards that end every turn. Shell passthrough lets you run !cmd (foreground) or !&cmd (background) without leaving the session. @filename injects file content directly into prompts. Ctrl+B backgrounds a running turn so you can keep prompting. Shift+Tab cycles permission modes on the fly.
Every turn ends in a verdict with evidence
Done, Blocked, Asking, or Interrupted, every turn, on every surface. Done must carry an Evidence line pointing at a file path, commit SHA, test result, or trace. The protocol is a runtime code constant, not a prompt instruction, so no AFK.md can silently remove it. When you review an overnight run, you see exactly what finished and what needs attention. Each turn has a verdict and an evidence pointer.
23 skills auto-routed by task shape
/mint runs spec, research, plan, parallel build, and verify, pausing for your approval before it writes. /diagnose forks parallel hypotheses into isolated worktrees. /review dispatches agents across security, correctness, API compat, and coverage simultaneously. /fix-pr pulls review feedback and pushes the fix. Auto-routing is on by default: a failing test goes to /diagnose, a high-stakes subagent result gets /shadow-verify before you act on it. Single-line edits skip orchestration entirely. All 23 skills are open source and extensible.
Unattended work with Telegram feedback loop
The cron daemon runs tasks on a schedule or on session start. When a turn ends, the verdict (Done / Blocked / Asking) lands on your phone via Telegram. Reply from Telegram to answer an Asking question, approve a plan, or interrupt a running task. You can delegate a goal before bed and wake up to a verdict with evidence.
Cross-session SQLite memory with FTS5 search
A durable fact archive backed by SQLite with FTS5 full-text search survives context compaction and is queryable across sessions. The agent can recall decisions made three weeks ago. Memory is delivered via system prompt, which the model treats as persistent background context rather than a new conversational turn. HOT.md handles hot-path context separately.
Any model provider, including local
Anthropic and OpenAI API formats are supported natively. Point AFK at Claude, GPT-4o, Gemini, Mistral, Grok, or a local Ollama or LM Studio instance with the same configuration. Each pipeline step can target a different provider or cost tier. No feature is gated behind a specific provider.
One-command migration from Claude Code
afk migrate imports your CLAUDE.md rules, custom slash commands, and project context from an existing .claude/ directory. Your project conventions carry over. The original Claude Code config is untouched. If you want to evaluate AFK without rebuilding your project context, you do not have to.
Where Claude Code pulls ahead
Honest. Claude Code is a well-built tool with real strengths.
IDE integration
Claude Code has native extensions for VS Code and JetBrains. It sees your cursor position, open file, and inline diagnostics, context a terminal-first agent does not have. It also ships a desktop app, web interface, and mobile client. If most of your work happens inside an editor, Claude Code has ambient presence that AFK cannot replicate from a terminal.
Cloud-scheduled Routines
Routines run in Anthropic infrastructure and survive a closed laptop. They can be triggered by GitHub events or on a schedule without your machine being on. AFK's cron daemon is local: it requires your machine to be running. For teams that need cloud-resident scheduled agents, Routines are the more reliable choice today.
Native GitHub integration and Channels
Claude Code integrates directly with GitHub for PR-triggered runs and code review workflows. Channels let it push to Telegram, Discord, iMessage, or arbitrary webhooks natively. AFK's GitHub interaction happens through standard shell git commands, and its notification path is Telegram only.
Agent SDK for embedding
Claude Code ships an Agent SDK that lets you build autonomous agents programmatically, embedding the agent loop into your own product or pipeline. AFK is a developer tool, not an embeddable SDK. If you are building a product on top of an agent runtime, the Agent SDK is the more direct starting point.
Background shell lifecycle management
Claude Code can start a background process, keep it alive across tool calls, and shut it down cleanly at session end. AFK's bash execution is serial and stateless by design. That conservatism avoids a class of subtle concurrency bugs, but it is a real tradeoff for workflows that depend on long-running background processes.
Anthropic backing, SLA, and ecosystem
Claude Code is a supported Anthropic product with enterprise procurement, SLA, near-daily releases, and a large community producing tutorials, extensions, and CLAUDE.md conventions. AFK is one maintainer and an Apache-2.0 license. For teams that need vendor support or enterprise compliance, Claude Code is the practical choice.
Frequently asked questions
- Can Agent AFK replace Claude Code?
- For terminal-first developers, yes. AFK covers the same interactive coding-agent ground as Claude Code in a terminal, and adds 23 auto-routed skills, a verdict contract, SQLite cross-session memory, Telegram push, and a cron daemon for unattended work. The gap is IDE integration: AFK has no VS Code or JetBrains extension. If you work primarily in a terminal, most developers who switch find they do not need to run both. If you work primarily inside an IDE, Claude Code's ambient context is hard to replace from a terminal, and running both is the sensible setup.
- Can I use Agent AFK alongside Claude Code?
- Yes. AFK stores its configuration in ~/.afk/ and Claude Code in ~/.claude/. They are fully isolated and can coexist on the same machine. afk migrate lets you import your existing Claude Code project context into AFK in one command. Running both is a reasonable starting point while you evaluate which fits your workflow.
- Is Agent AFK free?
- Yes. Agent AFK is open source under Apache 2.0. The full runtime is free with no feature gates. You bring your own API key. Paid plans cover supported setup from the maintainer, not access to the software.
- Does Agent AFK work with local models?
- Yes. AFK supports any provider that speaks the Anthropic or OpenAI API format, including local inference servers like Ollama and LM Studio. Configure the endpoint and model in ~/.afk/ and the runtime routes requests there. No feature is gated behind a specific provider.
- What are the 23 skills? Can I add my own?
- The 23 bundled skills cover: /mint (spec to verified build), /diagnose (parallel hypothesis testing), /review (multi-dimension code review), /ship (staged commit and push), /fix-pr (pull review feedback and fix), /refactor, /shadow-verify, and others. They are auto-routed by task shape when you use the REPL. All are open source and readable. You can add your own via the plugin system or extend an existing skill without forking the runtime.
- What is the verdict contract and why does it matter?
- Every AFK turn must end in Done, Blocked, Asking, or Interrupted. Done requires an Evidence line pointing at a file path, commit SHA, or test result. This is enforced in runtime code as a constant, not a prompt instruction, so no AFK.md override can remove it. The practical effect: when you wake up to a completed overnight run, you see a list of verdicts with evidence pointers, each tied to a file, commit, or test. Blocked tells you exactly what stopped the agent. Asking means it needs a decision from you.
- How does the REPL differ from Claude Code's interactive mode?
- The AFK REPL is a structured TUI built specifically for agent work: 52 slash commands, ghost-text autocomplete (deterministic plus LLM tier), a tool-lane overlay showing each tool call with elapsed timing and parallel x N badges, a loop-stage rail (Observe / Model / Choose / Act / Update), and verdict cards at turn end. Shell passthrough (!cmd, !&cmd) lets you run shell commands without leaving the session. @filename injects file content into your prompt. Ctrl+B backgrounds a running turn so you can keep typing. Claude Code's terminal session is capable but does not have this layer of turn-level structure.
- What model providers does Agent AFK support?
- Anthropic (Claude), any OpenAI-compatible API (GPT-4o, Gemini, Mistral, Grok, etc.), and local models via compatible endpoints (Ollama, LM Studio, llama.cpp server). You can configure a different provider per surface or per task. Claude Code is Anthropic-native with additional cloud provider integrations (Bedrock, Vertex).
- Can I migrate my Claude Code setup to Agent AFK?
- Yes. Run afk migrate in a project with an existing .claude/ directory. It imports your CLAUDE.md rules, custom slash commands, and project context into the equivalent AFK.md and skill structure. The original Claude Code config is not modified.
- Does Agent AFK support MCP?
- Yes. AFK ships a full MCP client with 4-layer config resolution (plugin, user, project, CLI flag), supporting stdio, HTTP, SSE, and OAuth transports. Run afk mcp auth to complete OAuth flows for servers that require them. Claude Code supports stdio and HTTP transports with project-scope .mcp.json config.
- Which should I use?
- Use Claude Code if: you work inside VS Code or JetBrains, you need Routines running in the cloud when your laptop is closed, you want native GitHub integration, you need an Agent SDK for embedding, or you require vendor support and an SLA. Use Agent AFK if: you work primarily in a terminal, you want every turn to end in a verdict with evidence, you want 23 auto-routed orchestration skills out of the box, you need persistent cross-session memory with FTS5 search, you want Telegram push for overnight runs, or you need to run local or non-Anthropic models. Terminal-first developers find they can use AFK as their primary agent and do not need to run both.
Compare other tools
See how Agent AFK compares across the landscape.
vs. Cursor
AFK's headless terminal runtime vs. Cursor's editor-embedded AI experience.
vs. Aider
Background scheduling, skills, and memory vs. Aider's commit-loop workflow.
vs. OpenClaw
Coding-focused CLI daemon against OpenClaw's universal open-source AI assistant and 29-channel gateway.
vs. Hermes
Developer-focused orchestration vs. Hermes's self-improving learning loop and research-lab backing.
vs. Codex
Both are terminal-native coding agents. Codex brings the OpenAI ecosystem. AFK brings model freedom and no subscription.
Try Agent AFK
Open source, Apache-2.0, bring your own model. One command to migrate from Claude Code.