Head to head · Agent harnesses · October 2026 research run

dsh-superagent (DeepSeek) vs Droid CLI

Droid CLI scores 59.2 (C) on agent readiness against dsh-superagent (DeepSeek)'s 42.1 (E), and leads in 6 of 7 scored categories. dsh-superagent (DeepSeek) leads on payments & pricing. Both do agent harnesses.

Best agent harnesses and coding agents · All 955 harnesses comparisons

Which one, for what

dsh-superagent (DeepSeek) E

Best for Teams on github.com that want a DeepSeek Harness agent to turn allowed people's issue requests into pull requests, run on an isolated machine or OS account.

Ahead on

  • Payments & pricing, 40 against 10

Also in its favour

  • Free to start without a card
  • Open source

Watch for

Executor and main Sessions run with danger-full-access as the operator's OS user, and the docs say a worker can read the operator's home directory

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

  • Reliability, 49 against 15
  • Schema & documentation, 79 against 61
  • Agent ergonomics, 72 against 67
  • Security & auth, 63 against 33
  • Maintenance & community, 79 against 34
  • Transparency & trust, 65 against 52

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

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.

Maintenance & community Droid CLI +45

dsh-superagent (DeepSeek) 34

Published on 31 October 2026, within 30 days, read as the last published change since no tag or release was found (30). One publication, so not three releases in 90 days (0). Issues, pull requests and Discussions couldn't be read, and the README frames the code as a reference prototype adapted from an internal version (0). No official SDK or registry entry (0). Exact dependency pins and a lockfile, but no CI workflow found, and the docs pin DSH 0.2.1-rc.3 (23 October 2026) while npm latest is 0.2.1-rc.5 (29 October 2026) (4).

Droid CLI 79

The changelog's newest entry is CLI v0.236.0 of 8 October 2026, and npm and the install script served 0.237.0 on 9 October 2026 (30). 62 dated changelog entries between 11 July and 8 October 2026 (20). The public tracker had 33 open issues that are not pull requests on 9 October 2026, most with no reply, and three closed in the previous week after two or three comments. Support is also by email and Discord, where reply times are not visible (9). The Python SDK was at 0.5.0 on 24 September 2026 and the TypeScript SDK repository was last changed on 16 September 2026 (15). The npm package is published from GitHub Actions through a trusted publisher and the installer checks a checksum. There is no public CI for the CLI (5).

Reliability Droid CLI +34

dsh-superagent (DeepSeek) 15

Local-package reading, since it runs as a DSH bundle on the operator's machine. Not published to npm (private: true in package.json, and the registry has no dsh-superagent). It installs from a git clone with pnpm install && pnpm build on top of @deepseek-ai/dsh@0.2.1-rc.3, with Node 22.19+ or 24+, git 2.32+, Python 3.8+, tmux and gh 2.48+ stated, so half credit (10). A vitest suite of about 25 spec files is listed in docs/007, and pnpm check runs the typecheck, tests and build. Two spec files were read on raw.githubusercontent.com. No CI workflow was found at five common paths under .github/workflows, and the directory couldn't be listed (5). Open issues couldn't be read, because github.com and api.github.com weren't reachable from our network. Unchecked, so scored absent (0). Version 0.1.0 with no tag, release or changelog found, so no semver record (0). A research prototype, not stable (0).

Droid CLI 49

Local-package reading, as for the other closed-source harnesses. An install script that verifies a SHA-256 checksum, a PowerShell installer, a Homebrew cask and the droid npm package (Node 20 or later) with prebuilt binaries for Linux, macOS and Windows on x64 and arm64 (20). The source is not published. The public repository holds documentation only, so there is no public CI or test suite for the CLI (0). Bugs are tracked in the open at Factory-AI/factory, a repository created on 29 July 2026. On 9 October 2026 it had 33 open issues that are not pull requests, most with no reply, and three closed in the previous week with replies. Runs depend on Factory's servers, and we found no status page (10). Every release has a dated, versioned changelog entry and deprecations get their own section, but the line is 0.x with a minor version almost daily, so the version number does not signal a breaking change (9). The version is 0.237.0. The Feature Maturity page says a feature with no tag is generally available and stable, and the CLI pages carry no tag in the Markdown we read. Judgement call (10). The 99 per cent availability target on factory.com/sla is not scored on this reading.

Security & auth Droid CLI +30

dsh-superagent (DeepSeek) 33

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 superagent profile is created from DSH's Web template, and DSH documents that shipped profiles mount session-log-deepseek, enabled by default, which adds the session log to each official DeepSeek API request, up to 8 MiB. dsh-superagent's docs don't mention it, and its Sessions read issue, pull request and chat text and the repository. Setup and worker shells drop variables named KEY, PASSWORD, SECRET or TOKEN, and GH_TOKEN and GITHUB_TOKEN are removed from git (8). Both presets run danger-full-access without approval as the operator's OS user. docs/006 says the account wrappers don't isolate the process, a worker can run programs by path and read the operator's home directory, and recommends a dedicated OS account. The gate, observe default, blocked commands and no auto-merge as the agent account narrow what it does, not what it can do (6). docs/002 says messages, comments and quoted documents are inputs to a decision and can't change allowed lists, rules or Mandates, bots can never make explicit requests, and prompt edits don't change the gate. Workers with full access still read untrusted Thread text, and no further guidance on that was found (7). Decisions are recorded with reasons, Ticket details show the Trigger, Decision, scope and Policy version, the host records the prompt revisions each Session used, and every GitHub message starts with an automated-agent line by default (12). No SECURITY.md (404 at the root and in .github), no security.txt on www.deepseek.com (404), no bug bounty or advisory found. NVD has no record for the prototype. The CVEs against DSH itself are on the deepseek-harness listing (0).

Droid CLI 63

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. The agent loop runs locally and the docs say no copy of the repository is uploaded or indexed. Prompts and context go to the model endpoints. Usage metrics go to Factory's collector by default, with no opt-out in the pages read outside an airgapped deployment, and message content is never sent to it. The security page says code is not used as training data. Zero data retention is listed as a Business plan item. Headless runs use a long-lived fk- key (17). droid exec is read-only by default, autonomy has four levels, permission rules allow, ask or block commands, and an OS sandbox confines commands with Seatbelt or bubblewrap and a network proxy. The sandbox is off by default and --skip-permissions-unsafe skips every prompt (16). The sandbox page names prompt injection and states what the sandbox does not stop, MCP approvals are bound to the server's command or URL, and Droid Shield scans commits for secrets. The Agent Safety page was not read (9). An organisation audit log, OpenTelemetry export and session tags exist, with audit logging listed from the Business plan up (10). A disclosure address (security@factory.com), SOC 2 and ISO 42001 named on the security page, and Security sections in the changelog. No security.txt, no bug bounty and no published advisories were found, and the trust centre was not readable (11).

Payments & pricing dsh-superagent (DeepSeek) +30

dsh-superagent (DeepSeek) 40

Self-hosted rule, as for the other open-source harnesses. No payment protocol (0). Free under MIT with nothing to buy (20). No card for the software (20). An agent can't get started alone, because the setup needs a person to create a dedicated GitHub user account, accept the repository invitation and run auth login for the wrappers, which SETUP.md lists as operator steps. 0, as the other harnesses that need an account were read (0). The model provider is a separate purchase.

Droid CLI 10

Harness reading of the published rubric. This is paid, closed software tied to a subscription, so the self-hosted rule does not apply. No payment protocol (0). Plan prices are public, $20, $100 and $200 a month for individuals and $60 a team plus $40 a seat for Teams, but included usage is given only as rolling rate limits and multiples of Pro (10). No free tier or trial was found on the pricing pages. Using your own model key is free up to an allowance, but only on a paid plan (0). A person signs in through a browser to subscribe and to create the API key. The Service Accounts API can issue keys only inside an existing organisation (0).

Schema & documentation Droid CLI +18

dsh-superagent (DeepSeek) 61

Framework reading, as for deepseek-harness. No OpenAPI or JSON Schema is published. docs/006 documents the Management API's routes, fields, block shapes and refusals in tables, and the code validates settings with zod (12). Markdown docs in the repository, readable raw, and a SETUP.md written for a coding agent. No llms.txt (5). Nine numbered documents read in order, each stating purpose, limits and what not to do, such as never rerunning the profile-creation command for an upgrade (17). Closed sets for accept mode (off, observe, auto), admission cells, Source states, health states and listen (12). A worked curl example, refusals as 400, 404, 409 and 500 with issues, setup or code, a troubleshooting table and status exit codes 0 to 3 (13). package.json says 0.1.0 and pins an engines.dsh range, but no changelog or tags were found (2).

Droid CLI 79

Framework reading. The docs index links an OpenAPI file for the Factory public API, which we did not open, and the headless mode has a documented JSON-RPC surface with named methods. droid exec --list-tools --output-format json and droid rules check --json give machine-readable output. We found no published schema for the settings file (15). docs.factory.com/llms.txt lists a Markdown copy of every page (10). The overview says when to use the CLI, and the autonomy table says what each level allows, blocks and suits (16). Autonomy levels, output formats, sandbox modes and MCP server fields are enumerated with types and defaults (12). Examples on every page read, exit codes 0, 1 and 2, and a JSON result with is_error and subtype, with no error catalogue (11). A changelog by CLI version with dates and an RSS feed, 236 entries back to 30 September 2025 (15).

Transparency & trust Droid CLI +13

dsh-superagent (DeepSeek) 52

MIT, Copyright (c) 2026 DeepSeek Harness Team (30). The prototype has no data statement of its own. DeepSeek Harness's privacy policy (last updated 20 September 2026) names Hangzhou DeepSeek Artificial Intelligence Co., Ltd., says session logs are collected with official model services and may be used to train models with a right to opt out, and says custom model services aren't stored server-side. It agrees with DSH's session-log README, but neither is referred to from the prototype (12). No deprecation policy. The README says the published code differs from DeepSeek's internal version, and docs/006 warns that database migrations are one-way (3). Telemetry and the session-log upload are disclosed with opt-outs in DSH's own reference pages, not in this repository (6).

Droid CLI 65

Closed source under terms from The San Francisco AI Factory, Inc., last updated 14 July 2026. The npm package is marked UNLICENSED and the Python SDK is Apache-2.0 (15). The Data Flows page says where code, prompts and telemetry go in each deployment pattern, and the privacy policy (20 August 2026) lists service providers with the place of processing and keeps personal data up to 10 years after last use. Retention of Factory's operational logs is left to the trust centre, which we could not read, and whether session transcripts are stored in Factory's cloud on individual plans was not established (17). The terms promise commercially reasonable efforts to give 60 days' notice of major changes, the changelog has Deprecations sections, and the old command lists are deprecated but still honoured. A model retirement appeared in the changelog on the day it took effect, 11 August 2026 (12). The telemetry reference documents each metric and what reaches Factory, and telemetry.granularity can strip user identity. Metrics to Factory are on by default, with no opt-out found outside an airgapped deployment (11).

Score by category

CategoryWeight this rundsh-superagent (DeepSeek)Droid CLIEdge
Reliability16%201549Droid CLI +34
Performance10%pendingpendingpendingnot scored in this run
Schema & documentation13%16.26179Droid CLI +18
Agent ergonomics13%16.26772Droid CLI +5
Security & auth14%17.53363Droid CLI +30
Payments & pricing10%12.54010dsh-superagent (DeepSeek) +30
Task success10%pendingpendingpendingnot scored in this run
Maintenance & community7%8.83479Droid CLI +45
Transparency & trust7%8.85265Droid CLI +13
Negative events≤1500
TotalE 42.1/100C 59.2/100

Facts side by side

Factdsh-superagent (DeepSeek)Droid CLI
KindAgent harnessAgent harness
VendorDeepSeekFactory
Hosted endpointno (local only)no (local only)
Transports
AuthTokenOAuth or key
PricingFreePaid
x402nono
LicenceMITProprietary, 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-312026-10-08
Terms last updatedno document linked2026-07-14
Privacy policy last updated2026-09-202026-08-20
Customer content may train modelsnot read yetnot found in the text
Terms restrict automated accessnot read yetnot found in the text
Terms restrict benchmarkingnot read yetyes
Terms or service can change without noticenot read yetnot found in the text
Arbitration or class-action waivernot read yetyes
Popularitynone49 stars, 7.8k npm/wk

How the scores have moved

Verdicts

dsh-superagent (DeepSeek)

The authorization design is careful, with allowed lists, Mandates and a Policy enforced in code, proactive work only recorded by default and auto-merge off. Executors run every command without approval under the operator's OS user, and the README calls it a research prototype with no release, changelog or security policy.

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

dsh-superagent (DeepSeek)

  1. Run it under a dedicated OS account holding only the agent's credentials. Executors run commands without approval and can read the operator's home directory
  2. Set enabled: false on the session-log-deepseek row of the superagent profile before using DeepSeek's official API on private code
  3. Keep the accept mode at observe and the allowed list short until the recorded Decisions look right
  4. Wait for scripts/dsh-superagent status to stop exiting 1 after any save that answers restarting: true before the next request
  5. Send x-orchestrator-request: 1 and a loopback Host to the Management API, and send revision with each PUT, since a stale one gets 409

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, dsh-superagent (DeepSeek) or Droid CLI?

Droid CLI scores 59.2 (C) on agent readiness against dsh-superagent (DeepSeek)'s 42.1 (E), and leads in 6 of 7 scored categories. dsh-superagent (DeepSeek) leads on payments & pricing.

Are dsh-superagent (DeepSeek) and Droid CLI open source?

dsh-superagent (DeepSeek) is open source (MIT). No open-source release is listed for Droid CLI.

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