eVi vs Claude Code — feature comparison

How eVi's capabilities line up against the full Claude Code docs surface (reviewed 2026-06-16, eVi 0.33.0). eVi is local-first, single-user, privacy-first, so a number of Claude Code's cloud/enterprise features are intentionally out of scope rather than "missing".

Legend: ✅ have · ⚠️ partial · ❌ gap (buildable, on the roadmap) · 🚫 not planned (philosophy mismatch / separate big track).

Core

Claude CodeeVi equivalentStatus
Agentic loop + built-in toolsevi/llm/agent.py; 20+ tools✅
Common workflows (explore/fix/refactor/test)chat, evi review, recipes✅
Interactive mode + keyboard shortcutsprompt_toolkit REPL (tab-complete, history, keybindings.toml)✅
Goals/goal, agent.goal✅
Scheduled tasksscheduler (APScheduler), evi scheduled✅
Voice dictationSTT + voice loop✅

Sessions & conversation

Claude CodeeVi equivalentStatus
Name / resume / branch / switchevi sessions (list/show/resume/continue/fork/title); edit/branch/reroll✅
Checkpointing (rewind edits + convo)file rewind (Ph 64) + convo edit/branch/reroll✅
Continue / resume / forkevi sessions continue / fork (Ph 71)✅
Remote control (drive from a phone)remote-backend mode + multi-machine⚠️ no cross-device session handoff
Deep links (open from a URL)—🚫 niche

Permissions & safety

Claude CodeeVi equivalentStatus
Permission modes (ask/accept-edits/plan/yolo)auto.mode (Ph 66)✅
Fine-grained allow/deny rulesauto.rules (Ph 66)✅
Auto-mode config (trusted dirs / domains)auto.trusted_dirs + trusted_domains (Ph 77)✅
Sandboxed bash/code[tools] sandbox (Ph 67)✅
Security / vuln reviewguardrails, security.yml (pip/cargo audit), review --multi✅
Content moderation / safety filterguardrails.toml — regex (block/redact) + LLM-judge + offline ML classifier + dedicated guard model (Llama Guard / ShieldGemma) on input/output✅ (no in-harness equivalent in Claude Code)

Extension & customization

Claude CodeeVi equivalentStatus
CLAUDE.md / memoryEVI.md/AGENTS.md project context + memory (+ tags)✅
Nested CLAUDE.md (large codebases)merges EVI.md/AGENTS.md up the tree (Ph 76)✅
SkillsSkillStore✅
Subagentsdelegate_* + parallel_research (Ph 61)✅
Output styles[llm] output_style (Ph 69)✅
Hooks (incl. HTTP hooks)hooks.toml (command/url; tool + lifecycle events: user_prompt_submit/before_compact/stop/session_start/session_end; conditional arg_match)✅
Status line[statusline] (Ph 72)✅
Keybindingskeybindings.toml + evi keybindings (Ph 82)✅
Skills tool-scoping (allowed/disallowed-tools)SKILL.md allowed-tools/disallowed-tools → evi/skillscope.py scopes the toolset while a skill is active✅
Custom slash commands~/.evi/commands frontmatter/$ARGS/@file/namespacing (Ph 62)✅
Nested skills (subfolders)recursive SKILL.md scan✅
/add-dir (extra working dirs)/add-dir → session trusted_dirs✅
!cmd shell passthrough!cmd in the REPL (output folded into context)✅
AskUserQuestion (clarifying Qs)ask_user tool (interactive-only; graceful no-op in web/headless)✅

Plugins & MCP

Claude CodeeVi equivalentStatus
Plugins (bundle commands/skills/agents/hooks)evi plugin add/init/list/remove; bundles commands+skills+hooks+MCP+subagent profiles; installs from dir / git / .zip / URL; bin/ on PATH✅
Plugin scaffoldingevi plugin init <name> (starter command + skill)✅
Plugin marketplaces / discoveryevi plugin search/install + [plugins] index_urls (curated index)✅
MCP client (connect to servers)MCPManager, mcp.json✅
MCP server (publish eVi's tools)evi mcp serve (stdio + HTTP)✅
Managed MCP (allowlists + output cap)per-tool allow on publish + tools.mcp_allow (Ph 78) + tools.mcp_max_output_chars✅

Platforms

Claude CodeeVi equivalentStatus
CLITyper CLI✅
Desktop appTauri desktop (menus/tray/updater)✅
WebFastAPI + SSE web UI✅
Headless / print modeevi run (Ph 65)✅
VS Code / JetBrains extensions—🚫 separate track
Mobile / web cloud platform—🚫 local-first
Computer usecomputer tool✅
Chrome / browser automation—🚫 deferred for MCP browser servers
Slack integration—❌ integrations backlog

Review · planning · orchestration

Claude CodeeVi equivalentStatus
Code review (multi-agent)evi review --multi (Ph 70)✅
Run agents in parallelparallel_research (Ph 61)✅
Worktrees (isolate parallel sessions)git worktrees + [worktree] base_ref default✅
Dynamic workflows (script many subagents)recipes + workflows + ultracode✅ TOML DAG + fixed pipeline
Agent teams (shared task list)evi team — lead decomposes, teammates claim+drain (evi/teams.py)✅
Agent view (live dispatch dashboard)Dispatch panel + GET /api/dispatch/stream (SSE, busy dots)✅
Ultrareview (CI gate)evi review --multi --exit-code / --json + /ultrareview✅ local
Ultraplan (cloud)local plan mode🚫 cloud

Automation & triggers

Claude CodeeVi equivalentStatus
Routines (schedule / webhook trigger)scheduler + evi routine webhook→recipe (Ph 73)✅
Channels (push alerts into a session)POST /api/session/{id}/channel — note by default, or run:true drives a live agent turn✅
GitHub Actions / GitLab CIpackaged evi-run composite action + ready examples/github/pr-review.yml✅

Config · models · cost

Claude CodeeVi equivalentStatus
Settings (global + project)config + profiles + .evi.toml (Ph 74) + settings UI✅
Env vars / .claude dirEVI_* env + ~/.evi✅
Model config / aliases / fast modemodel picker, routing, fast_mode✅
Fallback model[llm] fallback_models (retry the turn down the chain)✅
Extended thinking on/offreasoning_effort off/low/medium/high/max (/effort)✅
Transcript retention (cleanupPeriodDays)tools.cleanup_period_days + evi sessions purge✅
Prompt cachingcache_prompt✅
Context window displayusage chip + status line⚠️ no interactive sim
Cloud backends (Bedrock/Vertex/Foundry)openai_compat (covers gateways/proxies)🚫 by design
Cost management / analytics dashboardstoken usage shown🚫 local = free

SDK & programmatic

Claude CodeeVi equivalentStatus
Headless modeevi run --format json (Ph 65)✅
Custom tools@tool decorator✅
File checkpointingevi rewind (Ph 64)✅
Structured outputs/json + JSON-Schema (/schema, evi run --schema)✅
Batch APIevi batch <file> → JSONL (parallel)✅
Evalsevi eval (assertions + LLM-as-judge; --eval on a schedule)✅
Usage analyticsevi stats (local; sessions/tools/by-category/busy days)✅ local-only
Transcript search (Ctrl+R / resume)evi sessions search <query> (snippets)✅
Responses API built-in tools[llm] responses_tools (web_search/code_interpreter/…)✅ opt-in
Multi-user / teams[web] multi_user + users.json (per-user tokens + isolated sessions/transcripts/memory)✅ opt-in
Federation (agent↔agent across machines)evi peer / delegate_peer / /api/federate✅ eVi-unique
Permissions SDKpermission policy (Ph 66)✅
Public Agent SDK (library)evi.sdk — curated re-export + build_agent() + examples (sdk.md)✅
Session storage (S3/Redis)local JSONL transcripts🚫 local-first
OpenTelemetry / monitoringopt-in crash reporting (Sentry-compatible)⚠️ no metrics/traces
Tool search (1000s of tools)[tools] tool_search defers the long tail behind a search_tools meta-tool✅ opt-in

Org / enterprise / compliance

Claude CodeeVi equivalentStatus
Admin setup, server-managed settings, team onboarding—🚫 single-user
Authentication (accounts/SSO)web auth token; local backends need none🚫 local
ZDR / legal / data-usageprivate by design (everything local)🚫 N/A

Summary — specialty SLMs + opencode/Cursor gleanings (0.34.0)

Beyond Claude Code, eVi pulled in the genuinely-local wins from opencode and Cursor and added small specialty models:

Summary — S/M parity batch (0.33.0)

✅ Closed in 0.33.0 (the "close every buildable small/medium gap" pass):

✅ Already shipped (0.31.0 → 0.32.0): the full Phase 75–94 roadmap (plugin skills/hooks/MCP/subagent-profiles, nested project context, trusted dirs/domains, MCP allowlist, keybindings, channels, packaged CI action, cross-device handoff, context-window breakdown, OpenTelemetry, fine-tune export, voice engines, CodeQL + gitleaks, Docker→GHCR, sigstore signing), plus evi:// deep links, the plugin marketplace index, and the public Agent SDK (evi.sdk; see sdk.md).

⚠️ Deferred (need an architectural addition or are low-value), not philosophy gaps:

🚫 Not planned (by design): cloud/enterprise backends (Bedrock/Vertex/Foundry), IDE extensions, mobile, agentic browser, hosted session storage, cost/analytics dashboards, accounts/SSO/admin — eVi is local-first and single-user.

Edit on GitHub ↗