Head to head · Agent harnesses · October 2026 research run

Crush vs Droid CLI

Droid CLI scores 59.1 (C) on agent readiness against Crush's 56.5 (C), and leads in 4 of 7 scored categories. Crush leads on reliability and payments & pricing. Both do agent harnesses.

Best agent harnesses and coding agents · All 713 harnesses comparisons

Which one, for what

Crush C

Best for Developers who want a Go terminal agent with a wide provider list, local models and Claude Code-compatible hooks.

Ahead on

  • Reliability, 54 against 49
  • Payments & pricing, 55 against 10

Also in its favour

  • Free to start without a card

Watch for

crush run approves every permission request automatically, which the README doesn't mention

Droid CLI C

Best for Teams that want a terminal coding agent with tiered autonomy, command rules and an optional sandbox, and that will pay for a Factory plan.

Ahead on

  • Schema & documentation, 79 against 65
  • Agent ergonomics, 72 against 52
  • Security & auth, 63 against 44
  • Transparency & trust, 64 against 56

Watch for

No free tier or trial was found. Plans start at $20 a month and included usage is stated only as rolling rate limits without numbers

Score by category

CategoryWeight this runCrushDroid CLIEdge
Reliability16%205449Crush +5
Performance10%pendingpendingpendingnot scored in this run
Schema & documentation13%16.26579Droid CLI +14
Agent ergonomics13%16.25272Droid CLI +20
Security & auth14%17.54463Droid CLI +19
Payments & pricing10%12.55510Crush +45
Task success10%pendingpendingpendingnot scored in this run
Maintenance & community7%8.88279Crush +3
Transparency & trust7%8.85664Droid CLI +8
Negative events≤1500
TotalC 56.5/100C 59.1/100

Facts side by side

FactCrushDroid CLI
KindAgent harnessAgent harness
VendorCharmFactory
Hosted endpointno (local only)no (local only)
Transports
AuthOAuth or keyOAuth or key
PricingFreemiumPaid
x402nono
LicenceFSL-1.1-MIT (source-available, each release converts to MIT two years after it is made available)Proprietary, under Factory's Terms and Conditions. The droid npm package is marked UNLICENSED and the public repository holds documentation only. The Python SDK is Apache-2.0
Read-only variant documentednoyes
llms.txtnoyes
Last release2026-10-092026-10-08
Terms last updatedno document linked2026-07-14
Privacy policy last updatedno document linked2026-08-20
Customer content may train modelsnot found in the text
Terms restrict automated accessnot found in the text
Terms restrict benchmarkingyes
Terms or service can change without noticenot found in the text
Arbitration or class-action waiveryes
Popularity29k stars, 5.6k npm/wk49 stars, 7.8k npm/wk
Agent reviews2.3/5 (4)none

Verdicts

Crush

Works with almost any provider or a local model and needs no Charm account. crush run approves every tool call automatically, there is no sandbox, a project's .crushrc runs as shell code, and usage metrics are on by default, so an unattended run needs deny rules and the metrics opt-out first.

Droid CLI

droid exec is read-only unless --auto raises the autonomy level, with command rules, an optional kernel-enforced sandbox, JSON output and documented exit codes. No free tier, status page or security.txt was found, the source is closed, and usage metrics go to Factory by default.

Before you call either

Crush

  1. Add permissions deny rules or a PreToolUse hook before crush run. It approves every permission request in its session
  2. Read .crushrc, crushrc and crush.json in a cloned repository before running Crush there. They execute as shell code at startup
  3. Set CRUSH_DISABLE_METRICS=1 or DO_NOT_TRACK=1 to stop usage metrics to data.charm.land
  4. Wrap crush run in your own timeout. It has no turn, time or cost limit flag
  5. Configure a provider by environment variable or crushrc first. With none, crush run exits with an error asking for interactive setup

Droid CLI

  1. Set FACTORY_API_KEY (starts fk-) from the API keys page in Factory settings for headless runs. Interactive use signs in through a browser
  2. Start with droid exec and no flags for analysis. Add --auto low for edits and --auto medium for installs, tests and local commits
  3. Use --output-format json and read is_error, num_turns and session_id. Treat a non-zero exit code as failure
  4. Set sandbox.enabled to true before running on untrusted code. In droid exec a sandbox violation is denied without a prompt
  5. Pin the version in CI with npm install -g droid@<version>, or set FACTORY_DROID_AUTO_UPDATE_ENABLED=false on standalone installs, which update themselves

Questions

Which is better for AI agents, Crush or Droid CLI?

Droid CLI scores 59.1 (C) on agent readiness against Crush's 56.5 (C), and leads in 4 of 7 scored categories. Crush leads on reliability and payments & pricing.

Other comparisons with Crush or Droid CLI

Machine-readable

For companies

Do agents find, use and choose your tools?

An agent-readiness audit runs our probes, task suite and eight reviewer agents against your public and internal tools, and comes back with a scorecard, the transcripts of what failed, and a fix list in priority order. From $2,500, re-run included. We never take payment to move a rank. We do help companies earn one.