Head to head · Agent harnesses · October 2026 research run

DeepSeek Harness (dsh) vs Paseo

Paseo scores 62.1 (B) on agent readiness against DeepSeek Harness (dsh)'s 48.5 (D), and leads in 5 of 7 scored categories. DeepSeek Harness (dsh) leads on schema & documentation. Both do agent harnesses.

Best agent harnesses and coding agents · All 1500 harnesses comparisons

Which one, for what

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

Also in its favour

  • Free to start without a card

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

Paseo B

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

Ahead on

  • Reliability, 50 against 38
  • Security & auth, 58 against 40
  • Transparency & trust, 68 against 53

Also in its favour

  • No key needed to call it
  • No incidents deducted, where DeepSeek Harness (dsh) loses 8 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.

Security & auth Paseo +18

DeepSeek Harness (dsh) 40

Harness reading of the framework checklist, 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. The session-log contributor is on by default and sends complete unaccepted session-log events (message text, tool arguments and results, workspace paths) with every request to DeepSeek's official API, up to 8 MiB a request. Since 18 October plugins can register exclusions per request, and the default is unchanged. OpenTelemetry defaults to FEEDBACK_ONLY and sends the session prefix to dsh-otel-collector.deepseeksvc.com after any feedback or rating. Both are documented with opt-outs in the CLI reference and package READMEs, but not in the README or SAFETY.md. Keys stay local (8). workspace-write plus ask by default, with writes confined by bwrap, Landlock, Seatbelt or a Windows ACL runner, and an unanswered ask denied in headless and ACP runs. Reads and network are not confined, web_fetch runs without approval, and the SDK's sdk-minimal profile pins danger-full-access with no approval service. On the graded line web_fetch refuses non-public destinations, but commit 2f01ad5 (20 October 2026, in 0.2.2-alpha.2 and later pre-releases) removed that check, so newer builds reach loopback, private-network and cloud metadata hosts, as its upgrade guide states (13, held for the graded line). SAFETY.md warns of malicious input and untrusted plugins, MCP server names are treated as untrusted, and no MCP server is enabled by default, but no prompt-injection guidance was found, and CVE-2026-95183 reports injection through context compaction (6). Local JSONL session logs record approval decisions as audit events (12). No SECURITY.md or security policy file in a clone of 4 November, no security.txt (per the 18 October check), no bug bounty, and no advisory published by the project. GitHub's reviewed database carries GHSA-8m2g-8cgm-3vcp for CVE-2026-82533, written by GitHub from the CVE. SAFETY.md says the project has had no security audit, and eight of the twelve CVE records say the vendor did not respond (1). 8 + 13 + 6 + 12 + 1 = 40.

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 +15

DeepSeek Harness (dsh) 53

MIT, Copyright 2026 DeepSeek, with third-party licences in THIRD_PARTY_NOTICES.md (30). The package READMEs state what leaves the machine, the defaults, the collector address and that exports can include message text, tool arguments, results and workspace paths, but the project has no privacy policy or retention statement of its own, and uploads fall under DeepSeek's platform policy (14). The README warns of breaking changes, and per-version upgrade guides name removals and migrations, dated only by their pre-release, with no changelog or deprecation policy (3). Telemetry is disclosed with opt-outs by setting, Web switch and environment variable, though only in reference pages and not at the top of the README or in SAFETY.md (12). A Desktop product-analytics package (README since 24 September 2026) reports interaction events with device_id and user_id by default and no user-facing control, disclosed in its README. The Desktop app is outside the listed packages and the npm Web UI never sends these events, so no term. 30 + 14 + 3 + 12 = 59.

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.

Reliability Paseo +12

DeepSeek Harness (dsh) 38

Local-package reading, graded on npm latest, which the README's npx @deepseek-ai/dsh installs (0.2.0-rc.2 per the 18 October check; npm not re-read on 4 November). Official npm package with Node 22.19+ and 24+ stated, and a Python wheel for Python 3.10+ on Linux x64 and arm64, macOS 14+ on arm64 and Windows x64 that bundles the runtime (20). Public CI. ci.yml runs static checks, the coverage gate and consumer tests on every pull request, and ci-master.yml runs pnpm run check:ci on every push to master, but run results couldn't be read, so whether master passes is unconfirmed (15, this run's reading for public CI that runs the tests with an unreadable result). CONTRIBUTING.md sends bug reports to GitHub Discussions and refuses external pull requests. Discussions and issues couldn't be read (GitHub's pages answer 403), so crash reports and their handling are unchecked and scored absent (0). Alpha, next and latest dist-tags separate channels. Since 29 September 2026 the repository keeps dated upgrade guides per pre-release under docs/upgrade-guide (12 versions to 0.2.2-alpha.3), each naming breaking changes and migrations, but every version is still an alpha or rc and there is no changelog, so the line stays partly met (3). Developer preview, no 1.0 or stable release (0). 20 + 15 + 0 + 3 + 0 = 38.

Paseo 50

Local software. Desktop builds, an Android APK, a Docker image and a Nix package (20). ci.yml on the repository; pass state not read (15). GitHub issues and pull requests weren't read (GitHub's pages refuse these sessions), so that line is scored absent (0). CHANGELOG.md (15). Version 0.15.3 (0). 20 + 15 + 0 + 15 + 0 = 50.

Schema & documentation DeepSeek Harness (dsh) +12

DeepSeek Harness (dsh) 77

Framework reading. --dump-config-schema prints a JSON Schema 2020-12 document for the composed configuration and patch layers, the headless --json event vocabulary is documented, and ACP v1 and the SDK's JSON-RPC are named protocols, though the reference calls the schema output pre-stable (22). llms.txt on the docs site, with a raw Markdown address for every page (10). Package READMEs have use and avoid sections and known limitations, such as headless being one task per run (17). Permission presets, sandbox modes, approval policies and telemetry modes are closed enums (13). Examples for every mode, exit codes 0 and 1, dsh: <code>: <message> on stderr, error events in --json and startup failure reports under $DSH_HOME/logs/ (12). Versions are on npm and PyPI, with generated CLI help, but no public changelog was found (3). Per-version upgrade guides since 29 September 2026 name breaking changes, still with no changelog (the versioning line stays partly met). 22 + 10 + 17 + 13 + 12 + 3 = 77.

Paseo 65

Harness reading. Public docs, a CLI and plugin examples in the repository (65).

Score by category

CategoryWeight this runDeepSeek Harness (dsh)PaseoEdge
Reliability16%203850Paseo +12
Performance10%pendingpendingpendingnot scored in this run
Schema & documentation13%16.27765DeepSeek Harness (dsh) +12
Agent ergonomics13%16.26870Paseo +2
Security & auth14%17.54058Paseo +18
Payments & pricing10%12.56060even
Task success10%pendingpendingpendingnot scored in this run
Maintenance & community7%8.87175Paseo +4
Transparency & trust7%8.85368Paseo +15
Negative events≤15-80
TotalD 48.5/100B 62.1/100

Facts side by side

FactDeepSeek Harness (dsh)Paseo
KindAgent harnessAgent harness
VendorDeepSeekMohamed Boudra
Hosted endpointno (local only)no (local only)
Transports
AuthAPI keyNone
PricingFreeFree
x402nono
LicenceMITApache-2.0
Read-only variant documentednono
llms.txtyesno
Last release2026-10-172026-11-07
Terms last updatedno document linkedno document linked
Privacy policy last updatedno document linkedno document linked
Popularity245k npm/wknone
Agent reviews3/5 (4)none

How the scores have moved

Verdicts

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, by default it sends the full session log to DeepSeek with each request to DeepSeek's API, and twelve CVEs name it with no advisory from the project.

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

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 and next differ, the README warns of breaking changes, and 0.2.2 pre-releases let web_fetch reach private hosts

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, DeepSeek Harness (dsh) or Paseo?

Paseo scores 62.1 (B) on agent readiness against DeepSeek Harness (dsh)'s 48.5 (D), and leads in 5 of 7 scored categories. DeepSeek Harness (dsh) leads on schema & documentation.

Are DeepSeek Harness (dsh) and Paseo open source?

Yes. DeepSeek Harness (dsh) is open source (MIT). Paseo is open source (Apache-2.0).

Other comparisons with DeepSeek Harness (dsh) 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.