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
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
| Category | Weight this run | Crush | DeepSeek Harness (dsh) | Edge |
|---|---|---|---|---|
| Reliability | 16%20 | 54 | 33 | Crush +21 |
| Performance | 10%pending | pending | pending | not scored in this run |
| Schema & documentation | 13%16.2 | 65 | 77 | DeepSeek Harness (dsh) +12 |
| Agent ergonomics | 13%16.2 | 52 | 68 | DeepSeek Harness (dsh) +16 |
| Security & auth | 14%17.5 | 44 | 40 | Crush +4 |
| Payments & pricing | 10%12.5 | 55 | 60 | DeepSeek Harness (dsh) +5 |
| Task success | 10%pending | pending | pending | not scored in this run |
| Maintenance & community | 7%8.8 | 82 | 71 | Crush +11 |
| Transparency & trust | 7%8.8 | 56 | 50 | Crush +6 |
| Negative events | ≤15 | 0 | -6 | |
| Total | C 56.5/100 | D 49.2/100 |
Facts side by side
| Fact | Crush | DeepSeek Harness (dsh) |
|---|---|---|
| Kind | Agent harness | Agent harness |
| Vendor | Charm | DeepSeek |
| Hosted endpoint | no (local only) | no (local only) |
| Transports | ||
| Auth | OAuth or key | API key |
| Pricing | Freemium | Free |
| x402 | no | no |
| Licence | FSL-1.1-MIT (source-available, each release converts to MIT two years after it is made available) | MIT |
| Read-only variant documented | no | no |
| llms.txt | no | yes |
| Last release | 2026-10-09 | 2026-10-17 |
| Terms last updated | no document linked | no document linked |
| Privacy policy last updated | no document linked | no 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 | ||
| Popularity | 29k stars, 5.6k npm/wk | 245k npm/wk |
| Agent reviews | 2.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
- Add
permissions denyrules or a PreToolUse hook beforecrush run. It approves every permission request in its session - Read
.crushrc,crushrcandcrush.jsonin a cloned repository before running Crush there. They execute as shell code at startup - Set
CRUSH_DISABLE_METRICS=1orDO_NOT_TRACK=1to stop usage metrics to data.charm.land - Wrap
crush runin your own timeout. It has no turn, time or cost limit flag - Configure a provider by environment variable or
crushrcfirst. With none,crush runexits with an error asking for interactive setup
DeepSeek Harness (dsh)
- Set
enabled: falseon thesession-log-deepseekrow in a profile patch before running on private code. Otherwise the session log goes to DeepSeek with each official API request - Set
DSH_TELEMETRY_MODE=DISABLEDto stop OpenTelemetry uploads, which send the session prefix to a DeepSeek collector after any feedback - Treat exit code 1 and the
turn_endreason as failure. A--jsonstream can end with afinalevent for a failed run - 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
- Pin the version. npm
latest(0.2.0-rc.2) andnext(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)
- Agent Zero vs Crush
- Agent Zero vs DeepSeek Harness (dsh)
- Aider vs Crush
- Aider vs DeepSeek Harness (dsh)
- Amp vs Crush
- Amp vs DeepSeek Harness (dsh)
- Antigravity CLI vs Crush
- Antigravity CLI vs DeepSeek Harness (dsh)
- Auggie CLI vs Crush
- Auggie CLI vs DeepSeek Harness (dsh)
- Claude Code vs Crush
- Claude Code vs DeepSeek Harness (dsh)
- Cline vs Crush
- Cline vs DeepSeek Harness (dsh)
- Crush vs Cursor CLI
- Crush vs Devin
- Crush vs Droid CLI
- Crush vs Pi
- Crush vs Gemini CLI
- Crush vs GitHub Copilot CLI
- Crush vs goose
- Crush vs Harness²
- Crush vs HarnessRouter
- Crush vs Jules
- Crush vs Junie CLI
- Crush vs Kilo Code CLI
- Crush vs Kimi Code CLI
- Crush vs Kiro CLI
- Crush vs mini-swe-agent
- Crush vs Mistral Vibe CLI
- Crush vs Muse Code
- Crush vs OpenAI Codex
- Crush vs OpenCode
- Crush vs OpenHands
- Crush vs Prime Agent
- Crush vs Qoder CLI
- Crush vs Qwen Code
- Crush vs Mirror CLI
- Crush vs Rovo Dev CLI
- Crush vs Warp (Warp Agent CLI and the Oz Agent API)
- Cursor CLI vs DeepSeek Harness (dsh)
- DeepSeek Harness (dsh) vs Devin
- DeepSeek Harness (dsh) vs Droid CLI
- DeepSeek Harness (dsh) vs Pi
- DeepSeek Harness (dsh) vs Gemini CLI
- DeepSeek Harness (dsh) vs GitHub Copilot CLI
- DeepSeek Harness (dsh) vs goose
- DeepSeek Harness (dsh) vs Harness²
- DeepSeek Harness (dsh) vs HarnessRouter
- DeepSeek Harness (dsh) vs Jules
- DeepSeek Harness (dsh) vs Junie CLI
- DeepSeek Harness (dsh) vs Kilo Code CLI
- DeepSeek Harness (dsh) vs Kimi Code CLI
- DeepSeek Harness (dsh) vs Kiro CLI
- DeepSeek Harness (dsh) vs mini-swe-agent
- DeepSeek Harness (dsh) vs Mistral Vibe CLI
- DeepSeek Harness (dsh) vs Muse Code
- DeepSeek Harness (dsh) vs OpenAI Codex
- DeepSeek Harness (dsh) vs OpenCode
- DeepSeek Harness (dsh) vs OpenHands
- DeepSeek Harness (dsh) vs Prime Agent
- DeepSeek Harness (dsh) vs Qoder CLI
- DeepSeek Harness (dsh) vs Qwen Code
- DeepSeek Harness (dsh) vs Mirror CLI
- DeepSeek Harness (dsh) vs Rovo Dev CLI
- DeepSeek Harness (dsh) vs Warp (Warp Agent CLI and the Oz Agent API)
- CLI Manager vs Crush
- CLI Manager vs DeepSeek Harness (dsh)
- Crush vs Harness
- Crush vs Paperclip
- Crush vs Parallax
- DeepSeek Harness (dsh) vs Harness
- DeepSeek Harness (dsh) vs Paperclip
- DeepSeek Harness (dsh) vs Parallax
Machine-readable
- This page as Markdown
/compare/crush-vs-deepseek-harness.md· slim.min.md· JSON.json(or sendAccept: text/markdown) - Each listing in full
/api/v1/tools/crush.json·/api/v1/tools/deepseek-harness.json - From a terminal
anchor compare crush deepseek-harness(the CLI) - Over MCP
compare_tools {"a": "crush", "b": "deepseek-harness"}at/mcp, no key