New:Introducing Socket Scanning for VS Code Marketplace Extensions.Learn more →
Get Started

darce-cli

Package Overview
Dependencies
Maintainers
1
Versions
45
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

darce-cli

The coding agent you can undo: 250+ models in your terminal, parallel swarms, model racing, and /undo for everything, even shell commands.

Source
npmnpm
Version
0.14.0
Version published
Weekly downloads
4.4K
Maintainers
1
Weekly downloads
 
Created
Source

Darce

The coding agent you can undo.
Darce works in your terminal with 250+ models. Every change it makes, even what its shell commands did,
rolls back with /undo. Anything risky asks first.

npm downloads MIT license Discord

Darce runs rm -rf after flagging it as destructive and asking first, then /undo restores all four deleted files and the tests pass again

npm install -g darce-cli
darce

The first run lets you try it straight away with 10 free requests, no account needed. When you want more, darce signup creates a free account (25 requests a month, no card) and keeps your history. Needs Node.js 22+.

What makes it different

  • Undo anything. Every step is a checkpoint, including files a shell command created, changed or deleted, not just the agent's own edits. /undo steps back one change; /rewind (or Esc twice) scrubs through the whole session. In a git repo it uses private refs and never touches your branch, index or stash.
  • It asks before anything risky. Every command is scored before it runs. Reading runs straight away; deleting, force-pushing, installing or piping the internet into a shell waits for you, with the reason shown.
  • Swarms. /swarm <task> has a lead agent split the work into 2-4 independent parts. Each runs as its own agent in a separate git worktree, at the same time, and the results merge back in one step (/undo reverts the lot).
  • Model derby. /derby <task> races three models on the same task in separate worktrees. Compare their diffs, test results and cost, then keep the one you'd merge.
  • 250+ coding models. Claude, GPT, Gemini, Qwen, DeepSeek, Kimi, GLM, Grok and more, live from OpenRouter, filtered to models that can actually drive an agent. Switch mid-task with Shift+↑/↓.
  • It tells you why. When a fix hinges on something you can't see in the code (a language quirk, a React rule, async ordering, SQL injection), Darce ends with a short WHY note so you spot it next time. Routine edits get none.

See what it's touching

/brain opens a live view of your project in the browser. The file Darce is working on sits in the middle, with what it imports on the left and what imports it on the right. When Darce changes a file, everything that depends on it lights up, so you can see the reach of each edit as it happens. The activity column lists every step, and the code panel shows the exact diff. It runs on your machine only.

/brain while Darce renames a function across five files: each file it edits opens in the middle with its imports on the left and its dependents highlighted on the right, the diff below, and every step listed in the activity column

/swarm splits a task into three threads that run in parallel in their own worktrees, then merges them; 17 tests pass

What else it does

  • Threads. The agent can hand research to sub-agents with their own context; several run in parallel. /threads shows what each one did.
  • See inside its head. /brain opens a live map of your codebase in the browser. Files are dots grouped by folder and wired by imports; as Darce works, reads glow, edits pulse orange and ripple out to every file that depends on them, and a timeline replays the whole session with diffs. Local only.
  • It can talk. Turn on /voice and Darce speaks up during long tasks in a natural ElevenLabs voice: "Alright, digging into that flaky checkout test", "Before I push this, can I run the migration? It can't be undone.", "Fixed it, two tests were sharing a database connection." Quick tasks stay quiet, and nothing ever waits on audio.
  • Images. Generates icons, illustrations and hero images into your project, with transparent backgrounds when you ask (GPT Image by default; Gemini and Seedream on request).
  • Resume. /resume picks up any past conversation, in this folder or any other.
  • Skills and memory. Drop a SKILL.md into .darce/skills/ to teach it your team's way of doing things; it remembers your preferences across sessions.
  • Screenshots. Paste one with Ctrl+V and Darce can see it.
  • Second opinion. /critic on has a model from another vendor review every edit.
  • Scripts and CI. darce -p "task" prints the result and exits.

Commands

CommandWhat it does
/undoUndo the last change, including what shell commands did (/u)
/rewindScrub through every change and rewind files and conversation (also Esc twice)
/diffEvery file Darce changed this session
/swarm <task>Split a task into parallel agents, each in its own worktree, then merge
/derby [--models a,b,c] <task>Race models on a task and apply the best result
/threads [n]This session's threads, or one thread's steps and report
/model [search]Pick or search models (Ctrl+P)
/mode auto|ask|plan|fullApproval mode (Shift+Tab cycles)
/resumeContinue a past conversation
/why on|offWHY notes (on by default)
/brainLive map of your codebase while Darce works (opens in your browser)
/voice on|offDarce talks you through long tasks (voices: erik, joe, zara, callum, charlotte)
/critic on|off [model]Second-opinion review of every edit
/security [changes]Security review of the project or your uncommitted changes
/memory [forget <text>]What Darce remembers about you and this project
/skillsAvailable skills
/suggest on|offPredict your next prompt (Tab accepts)
/compact, /clear, /costShrink context, start over, session costs
/debugTiming of requests, tools and waits in this session
/login, /account, /logoutSign in, plan and usage, switch accounts
/communityJoin the Discord

Keys: Esc stops Darce without quitting, Shift+Enter adds a line, Up/Down walks history, Ctrl+R searches it, Ctrl+O shows a step's full output.

Safety

ModeRead-only stepsEdits and builds in the projectNetwork, installs, unknown commandsDestructive (rm -rf, sudo, force-push…)
auto (default)runrunaskask
askrunaskaskask
planrunblockedblockedblocked
fullrunrunrunrun
  • Commands Darce runs don't see environment variables that look like credentials (*_KEY, *_TOKEN, *_SECRET, DATABASE_URL…). Allow one with "passEnv": ["GH_TOKEN"] in ~/.darcerc.
  • Known secret formats are redacted from tool output before anything reaches a model.
  • Scripts the rules would run unasked (npm run x, node scripts/x.js, make y) get a second look first: Darce reads the real package.json script, and asks a fast classifier (TypeSafe Jev, via api.darce.dev) whether running it changes anything outside your machine, given the command, the script line and the start of the file it runs. It can only make Darce more careful. Turn it off with "riskCheck": false.
  • A repository's own .darcerc, instruction files and skills can't change your approval mode, endpoints or keys, and your own skills take precedence over a repository's.
  • Your key, history and sessions are stored readable only by you.

Models

The picker (/model) opens with your recent models, then OpenRouter's live most-popular ranking. It lists models that can drive a coding agent: tool calling, a 64k+ context, current generation. Any other model still works by name:

/model sonnet-5.5        # switch by name
/model kimi              # search; switches if there's one match
darce --model openai/gpt-5.6-sol

Pricing

StarterBuilderPower
PriceFree$15/month$65/month
Requests25/month500/month2,500/month
ModelsFast open models (Qwen, DeepSeek, Gemini Flash…)Most models, including Claude SonnetEvery model, including Opus

Every plan gets every feature. Upgrade with /upgrade or at cli.darce.dev; cancel any time.

Config

Everything is optional; darce sets up ~/.darcerc on first run.

{
  "mode": "auto",
  "router": { "default": "anthropic/claude-haiku-5.5" },
  "gears": ["qwen/qwen3-coder-next", "qwen/qwen3-coder", "deepseek/deepseek-v4-pro", "anthropic/claude-sonnet-5.5"],
  "derbyModels": ["anthropic/claude-sonnet-5.5", "openai/gpt-5.6-sol", "google/gemini-3.1-pro-preview"],
  "critic": false,
  "why": true,
  "passEnv": ["GH_TOKEN"]
}

Skills

A skill is a folder with a SKILL.md:

---
name: deploy
description: How this team deploys the API. Use when asked to ship or release.
---
1. Run `make test`.
2. ...

Darce looks in ~/.darce/skills/ and ~/.claude/skills/ first, then the project's .darce/skills/ and .claude/skills/, and installed Claude Code plugins.

Community

Darce is built in public by one developer. Questions, ideas, bugs, or something you built with it: join the Discord or type /community inside Darce. See CHANGELOG.md for what's new.

Contributing

git clone https://github.com/AmerSarhan/darce-cli.git
cd darce-cli
npm install
npm run dev     # run from source
npm test        # the test suite
npm run build

Issues and pull requests are welcome. Good first issues are labelled good first issue.

Star History Chart

MIT License · cli.darce.dev

Keywords

coding-agent

FAQs

Package last updated on 09 Oct 2026

Related posts