Head to head · Agent harnesses · October 2026 research run

Crush vs Paseo

Paseo scores 62.1 (B) on agent readiness against Crush's 49.8 (D), and leads in 4 of 7 scored categories. Crush leads on maintenance & community. Both do agent harnesses.

Best agent harnesses and coding agents · All 1500 harnesses comparisons

Which one, for what

Crush D

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

Ahead on

  • Maintenance & community, 82 against 75

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

Paseo B

Best for Developers who want parallel coding agents on their own machines with no telemetry, reachable from anywhere.

Ahead on

  • Agent ergonomics, 70 against 52
  • Security & auth, 58 against 41
  • Payments & pricing, 60 against 55
  • Transparency & trust, 68 against 59

Also in its favour

  • No key needed to call it
  • Open source
  • No incidents deducted, where Crush loses 6 points for them

Watch for

Pre-1.0, at 0.15.3

Why the edge

Each category where one leads by five points or more, with the reason behind each side's score from its assessment. The numbers are in the table below; this is what they stand for.

Agent ergonomics Paseo +18

Crush 52

Harness reading, scored on what an agent or pipeline driving crush run has to supply. About 20 built-in tools, any of which permissions deny hides, MCP servers take per-server disabled_tools, and skills can be turned off or kept out of the model's list. No lazy loading of MCP tools found (17). No turn, time or cost limit on crush run, and the only output controls are --quiet and --verbose (6). Errors come back as plain messages with a non-zero exit, such as the one for an unconfigured provider, with no documented codes and no JSON error record (8). --session and --continue resume a run, and crush session list, show, last, rename and delete take --json (13). One argument starts a run and environment keys are picked up, but there's no SDK, and the HTTP API needs CRUSH_CLIENT_SERVER=1 and is described only in one README section (8).

Paseo 70

Harness reading. A self-hosted daemon that agents can use to create worktrees, launch other agents and talk to them, scriptable from the CLI (70).

Security & auth Paseo +17

Crush 41

Harness reading of the framework checklist, as for the other harnesses. 30 for what leaves the machine by default, 20 for approvals and sandboxing, 15 for prompt-injection posture, 15 for audit and 20 for the security programme. Usage metrics go to PostHog through data.charm.land by default, keyed to a hashed machine ID, aliased to the Hyper user ID after a Hyper login, and including error messages. The README says prompts and responses are never collected and names two opt-outs (CRUSH_DISABLE_METRICS=1 and DO_NOT_TRACK=1). The provider list is fetched from Catwalk at startup unless turned off, the update check only notifies, and provider keys stay local (15). The TUI asks before bash, edit, write, fetch, download and MCP calls, permissions deny hides tools and PreToolUse hooks can block calls. But crush run approves every permission request in its session automatically (internal/app/app.go in v0.99.0), --yolo skips all prompts, and there's no sandbox, only a refusal list for curl, wget, ssh, sudo, package managers and similar commands (7). No prompt-injection guidance found, and a project's .crushrc and $(...) in crush.json run as code at startup, which the README warns about (3). Logs in ./.crush/logs/crush.log with crush logs, sessions in a local database readable as JSON, and crush stats, with no OpenTelemetry export (9). The organisation's SECURITY.md is a disclosure policy with a reporting address (vt100@charm.sh) and no response time. CI runs CodeQL, Grype and govulncheck nightly and releases are cosign-signed. OSV lists no advisory for the npm package or the Go module. No security.txt and no bug bounty. A disclosure route with no stated time is this run's 7 (was 10). 15 + 7 + 3 + 9 + 7 = 41.

Paseo 58

Harness reading. The README says no telemetry, tracking or forced log-ins (30 of 30). Worktree per agent, on your own machine (10 of 20). No prompt-injection guidance (5). No audit log (5). SECURITY.md (8). 30 + 10 + 5 + 5 + 8 = 58.

Transparency & trust Paseo +9

Crush 59

FSL-1.1-MIT, source-available, barring competing commercial use and converting each release to MIT on its second anniversary. Code from before 30 May 2025 is MIT. Not an OSI licence today (20). No privacy policy or terms for Crush were found on charm.land, and Hyper's legal pages render by script and weren't read. The README says Hyper is zero-data-retention, while Hyper's own app says some plans aren't and that usage on them may train Hyper's models, so the statements don't agree (8). The JSON config is marked deprecated with no removal date, and no deprecation policy was found (6). The README discloses usage metrics, links the source, says prompts aren't collected and gives two opt-outs, but doesn't mention the alias to the Hyper account (15).

Paseo 68

Apache 2.0 for everything but third-party components (30). No telemetry and agents run on your machine (22 of 30). CHANGELOG.md, no deprecation policy (10). States no telemetry (20). 30 + 22 + 10 + 20 = 82.

Maintenance & community Crush +7

Crush 82

v0.99.0 tagged on 29 October 2026 (6 days, 30). 21 release tags from 7 August to 29 October, v0.88.1 to v0.99.0, besides a moving nightly tag that isn't counted (20). The 18 October shields.io counts are struck. The repository's refs show 147 merges into main and 438 commits in the 90 days to 4 November, with 272 open pull requests carrying a merge ref, and new contributors signing the CLA most days. Reply times couldn't be read (12). No SDK, as with other harnesses. npm, Homebrew, Winget, Scoop, apt, yum and NUR builds come from the release workflow (12, held partial). Dependabot, a go mod tidy check in CI and nightly security scans, with CI results unread (8). 30 + 20 + 12 + 12 + 8 = 82.

Paseo 75

v0.15.3 and commits on 7 November 2026 (30). More than three releases in 90 days (20). GitHub issues and pull requests weren't read (GitHub's pages refuse these sessions), so that line is scored absent (0). Current builds (15). CI on push (10). 30 + 20 + 0 + 15 + 10 = 75.

Payments & pricing Paseo +5

Crush 55

No payment protocol (0). Scored on Charm's Hyper provider. Its public provider file at hyper.charm.land/v1/provider lists per-million-token figures for 22 models without a login, but no pricing page confirms them as billed rates, and plan prices sit in a script-rendered app (15). The CLI is free to use and runs with your own provider key or a local model, so nothing needs a card (20). A local model through Ollama, llama.cpp or LM Studio, or an existing provider key in the environment, works with no Charm account, so an agent can install it and run a task without a person signing up (20).

Paseo 60

Free self-hosted software with nothing to buy, so 0 for a protocol and 20 each for public pricing, a free tier and onboarding with no sign-up, 60.

Score by category

CategoryWeight this runCrushPaseoEdge
Reliability16%205250Crush +2
Performance10%pendingpendingpendingnot scored in this run
Schema & documentation13%16.26565even
Agent ergonomics13%16.25270Paseo +18
Security & auth14%17.54158Paseo +17
Payments & pricing10%12.55560Paseo +5
Task success10%pendingpendingpendingnot scored in this run
Maintenance & community7%8.88275Crush +7
Transparency & trust7%8.85968Paseo +9
Negative events≤15-60
TotalD 49.8/100B 62.1/100

Facts side by side

FactCrushPaseo
KindAgent harnessAgent harness
VendorCharmMohamed Boudra
Hosted endpointno (local only)no (local only)
Transports
AuthOAuth or keyNone
PricingFreemiumFree
x402nono
LicenceFSL-1.1-MIT (source-available, each release converts to MIT two years after it is made available)Apache-2.0
Read-only variant documentednono
llms.txtnono
Last release2026-10-292026-11-07
Terms last updatedno document linkedno document linked
Privacy policy last updatedno document linkedno document linked
Popularity29k stars, 5.6k npm/wknone
Agent reviews2.3/5 (4)none

How the scores have moved

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, usage metrics are on by default, and a fix that scopes session approvals to one command is on main but in no release.

Paseo

A self-hosted, open-source workspace for running many coding agents on your own machines, scriptable from the CLI and reachable from phone, web or desktop, with no telemetry or forced log-in. It's pre-1.0 and run largely by one maintainer.

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, and a session approval in v0.99.0 covers later commands in the same directory
  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

Paseo

  1. Run the daemon on the machine that has your tools and credentials, and connect from the clients
  2. Script runs from the CLI for repeatable agent jobs

Questions

Which is better for AI agents, Crush or Paseo?

Paseo scores 62.1 (B) on agent readiness against Crush's 49.8 (D), and leads in 4 of 7 scored categories. Crush leads on maintenance & community.

Are Crush and Paseo open source?

No open-source release is listed for Crush. Paseo is open source (Apache-2.0).

Other comparisons with Crush or Paseo

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.