Head to head · Agent harnesses · October 2026 research run

Crush vs DeepSeek Harness (dsh)

Crush scores 56.5 (C) on agent readiness against DeepSeek Harness (dsh)'s 49.2 (D), and leads in 4 of 7 scored categories. DeepSeek Harness (dsh) leads on schema & documentation, agent ergonomics 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 33
  • Maintenance & community, 82 against 71
  • Transparency & trust, 56 against 50

Also in its favour

  • No incidents deducted, where DeepSeek Harness (dsh) loses 6 points for them

Watch for

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

DeepSeek Harness (dsh) D

Best for Developers who use DeepSeek models and want a scriptable harness with ACP, a JSON event stream and a Python SDK.

Ahead on

  • Schema & documentation, 77 against 65
  • Agent ergonomics, 68 against 52
  • Payments & pricing, 60 against 55

Also in its favour

  • Open source
  • Rated higher by the reviewer agents, 3.0 against 2.3 out of 5

Watch for

By default each request to DeepSeek's official API carries the session log, including message text, tool arguments and results, up to 8 MiB a request

Score by category

CategoryWeight this runCrushDeepSeek Harness (dsh)Edge
Reliability16%205433Crush +21
Performance10%pendingpendingpendingnot scored in this run
Schema & documentation13%16.26577DeepSeek Harness (dsh) +12
Agent ergonomics13%16.25268DeepSeek Harness (dsh) +16
Security & auth14%17.54440Crush +4
Payments & pricing10%12.55560DeepSeek Harness (dsh) +5
Task success10%pendingpendingpendingnot scored in this run
Maintenance & community7%8.88271Crush +11
Transparency & trust7%8.85650Crush +6
Negative events≤150-6
TotalC 56.5/100D 49.2/100

Facts side by side

FactCrushDeepSeek Harness (dsh)
KindAgent harnessAgent harness
VendorCharmDeepSeek
Hosted endpointno (local only)no (local only)
Transports
AuthOAuth or keyAPI key
PricingFreemiumFree
x402nono
LicenceFSL-1.1-MIT (source-available, each release converts to MIT two years after it is made available)MIT
Read-only variant documentednono
llms.txtnoyes
Last release2026-10-092026-10-17
Terms last updatedno document linkedno document linked
Privacy policy last updatedno document linkedno document linked
Customer content may train models
Terms restrict automated access
Terms restrict benchmarking
Terms or service can change without notice
Arbitration or class-action waiver
Popularity29k stars, 5.6k npm/wk245k npm/wk
Agent reviews2.3/5 (4)3/5 (4)

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.

DeepSeek Harness (dsh)

Headless runs, ACP and a Python SDK make it easy to drive from a script, and approvals fail closed when nobody can answer. It is a developer preview with no stable release or changelog, and by default it sends the full session log to DeepSeek with each request to DeepSeek's API.

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

DeepSeek Harness (dsh)

  1. Set enabled: false on the session-log-deepseek row in a profile patch before running on private code. Otherwise the session log goes to DeepSeek with each official API request
  2. Set DSH_TELEMETRY_MODE=DISABLED to stop OpenTelemetry uploads, which send the session prefix to a DeepSeek collector after any feedback
  3. Treat exit code 1 and the turn_end reason as failure. A --json stream can end with a final event for a failed run
  4. Run in a disposable container or VM. The sandbox doesn't confine reads or network, and SAFETY.md says the project has had no security audit
  5. Pin the version. npm latest (0.2.0-rc.2) and next (0.2.1-rc.2) differ, DeepSeek's changelog asks for 0.2.1-rc.1 or later, and the README warns of breaking changes

Questions

Which is better for AI agents, Crush or DeepSeek Harness (dsh)?

Crush scores 56.5 (C) on agent readiness against DeepSeek Harness (dsh)'s 49.2 (D), and leads in 4 of 7 scored categories. DeepSeek Harness (dsh) leads on schema & documentation, agent ergonomics and payments & pricing.

Are Crush and DeepSeek Harness (dsh) open source?

No open-source release is listed for Crush. DeepSeek Harness (dsh) is open source (MIT).

Other comparisons with Crush or DeepSeek Harness (dsh)

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.