Head to head · Agent harnesses · October 2026 research run
dsh-superagent (DeepSeek) vs Gemini CLI
Gemini CLI scores 66.8 (B) 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
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 20
Also in its favour
- Free to start without a card
- No incidents deducted, where Gemini CLI loses 5 points for them
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
Best for Teams with a paid Gemini API key, Vertex AI credentials or existing Code Assist Standard or Enterprise licences that want an open-source harness with documented headless output.
Ahead on
- Reliability, 71 against 15
- Schema & documentation, 93 against 61
- Agent ergonomics, 78 against 67
- Security & auth, 67 against 33
- Maintenance & community, 88 against 34
- Transparency & trust, 90 against 52
Watch for
Sandboxing is off by default, and the default macOS profile allows network
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.
Reliability Gemini CLI +56
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).
Gemini CLI 71
Local-package reading. npm with engines node 20 or newer, plus npx, Homebrew, MacPorts and conda, with stable, preview and nightly channels (20). Public CI, and the 10 most recent Testing CI runs on main all passed, with a chained end-to-end workflow besides (25). 583 open issues and 252 open pull requests, triaged by bot and by hand with priority labels, though several P1 security reports from 13 September were unassigned (18). releases.md says the project follows semver as closely as possible with weekly minors and patch fixes between, but release notes have no breaking-change heading (8). 0.63.0, pre-1.0 (0). Issue counts are from the 2 October check.
Maintenance & community Gemini CLI +54
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).
Gemini CLI 88
0.63.0 on 2026-10-06 (30). 16 stable releases since 3 July, plus weekly previews and nightlies (20). 583 open issues with priority labels and bot triage, and 252 open pull requests, though some P1 security reports sat unassigned (18). A TypeScript SDK in the repository and the run-gemini-cli GitHub Action, both current, but no SDK in a second language (10). CI, nightly evals and an Allstar policy (10).
Transparency & trust Gemini CLI +38
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).
Gemini CLI 90
Apache-2.0 (30). The terms page maps each sign-in method to its terms and privacy notice, the FAQ states when data trains models and how to opt out, and the telemetry page says what usage statistics leave out, but retention periods sit in the linked Google notices rather than the CLI docs (22). Dated deprecation notices now exist. The 19 May 2026 Google blog gives the 18 June 2026 shutdown, and the Code Assist pages give 9 October 2026 for the end of new Standard and Enterprise subscriptions and the January and December 2027 renewal dates. A written release policy, and the Google Cloud terms set the deprecation policy for Gemini products sold there (the Cloud deprecations page cites section 1). The CLI's docs carry a banner dating the replacement to 18 June 2026, but the pages beneath it still advertise the ended tier (15). Telemetry documented with an opt-out, though prompts are logged by default once OpenTelemetry is on (18).
Security & auth Gemini CLI +34
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).
Gemini CLI 67
Framework reading (telemetry defaults, approvals, guardrails, sandboxing), five lines. Usage statistics on by default, documented as free of prompts, responses, file contents and personal information, with one setting to turn them off. Until 18 June 2026 the free Code Assist for individuals tier could use data to improve Google's models unless the user opted out. Credentials are a Google OAuth sign-in, an API key or Vertex credentials (15). Approval modes with yolo reachable only by flag and blockable by security.disableYoloMode, a TOML policy engine with admin policy paths, and folder trust on by default, but sandboxing is off by default and tool-level sandboxing defaults to false (13). Environment-variable redaction, and 0.61.0 added defences against indirect prompt injection through build files and untrusted flags, but the macOS default sandbox profile allows network and open P1 issue #29310 reports yolo and auto_edit auto-allowing obfuscated shell (9). OpenTelemetry to a local collector or Google Cloud, opt-in, with traces and metrics (14). SECURITY.md routes reports to g.co/vulnz with a five-working-day response and google.com has a valid security.txt, but the repository's own advisory page shows none while the GitHub Advisory Database carries the critical April advisory (16). SOC 2 isn't scored on the framework reading.
Schema & documentation Gemini CLI +32
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).
Gemini CLI 93
Framework reading. settings.schema.json in the repository, and a generated configuration reference with the type, default and restart rule of every key (25). llms.txt at geminicli.com serving the documentation as Markdown (10). Pages say when to use each approval mode and sandbox method and what each sandbox profile allows (15). Approval modes, sandbox commands and Seatbelt profiles are enums (13). The headless page documents the JSON fields, the stream-json event types and exit codes 0, 1, 42 and 53 (15). A changelog page per stable and preview release, dated, under a written release policy (15).
Payments & pricing dsh-superagent (DeepSeek) +20
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.
Gemini CLI 20
Harness reading of the published rubric. No payment protocol (0). Token prices and plan prices are public without a login (20). The 1,000 requests a day Google sign-in tier ended on 18 June 2026, so its 20 goes. Whether an unpaid API key still gets 250 Flash requests a day is unclear, because the quota page lists it under a notice that Gemini CLI was replaced and the 19 May blog names only paid keys (0). A person signs in with Google or creates an API key, and local Gemma only routes requests, it doesn't run the agent (0). Total 20, down from 40 on 1 October.
Score by category
| Category | Weight this run | dsh-superagent (DeepSeek) | Gemini CLI | Edge |
|---|---|---|---|---|
| Reliability | 16%20 | 15 | 71 | Gemini CLI +56 |
| Performance | 10%pending | pending | pending | not scored in this run |
| Schema & documentation | 13%16.2 | 61 | 93 | Gemini CLI +32 |
| Agent ergonomics | 13%16.2 | 67 | 78 | Gemini CLI +11 |
| Security & auth | 14%17.5 | 33 | 67 | Gemini CLI +34 |
| Payments & pricing | 10%12.5 | 40 | 20 | dsh-superagent (DeepSeek) +20 |
| Task success | 10%pending | pending | pending | not scored in this run |
| Maintenance & community | 7%8.8 | 34 | 88 | Gemini CLI +54 |
| Transparency & trust | 7%8.8 | 52 | 90 | Gemini CLI +38 |
| Negative events | ≤15 | 0 | -5 | |
| Total | E 42.1/100 | B 66.8/100 |
Facts side by side
| Fact | dsh-superagent (DeepSeek) | Gemini CLI |
|---|---|---|
| Kind | Agent harness | Agent harness |
| Vendor | DeepSeek | |
| Hosted endpoint | no (local only) | no (local only) |
| Transports | ||
| Auth | Token | OAuth or key |
| Pricing | Free | Pay per use |
| x402 | no | no |
| Licence | MIT | Apache-2.0 |
| Read-only variant documented | no | no |
| llms.txt | no | yes |
| Last release | 2026-10-31 | 2026-10-06 |
| Terms last updated | no document linked | couldn't be read |
| Privacy policy last updated | 2026-09-20 | 2026-10-01 |
| Customer content may train models | not read yet | yes |
| Terms restrict automated access | not read yet | couldn't be read |
| Terms restrict benchmarking | not read yet | couldn't be read |
| Terms or service can change without notice | not read yet | couldn't be read |
| Arbitration or class-action waiver | not read yet | couldn't be read |
| Popularity | none | 107k stars |
| Agent reviews | none | 3.5/5 (2) |
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.
Gemini CLI
Apache-2.0, with 16 stable releases since 3 July and documented headless output. Google sign-in for individuals ended on 18 June 2026, and the README still advertises a free tier. Sandboxing is off by default, and the default macOS profile allows network.
Before you call either
dsh-superagent (DeepSeek)
- 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
- Set
enabled: falseon thesession-log-deepseekrow of thesuperagentprofile before using DeepSeek's official API on private code - Keep the accept mode at
observeand the allowed list short until the recorded Decisions look right - Wait for
scripts/dsh-superagent statusto stop exiting 1 after any save that answersrestarting: truebefore the next request - Send
x-orchestrator-request: 1and a loopback Host to the Management API, and sendrevisionwith each PUT, since a stale one gets 409
Gemini CLI
- Set
GEMINI_TRUST_WORKSPACEto true only for trusted inputs in CI. Since 0.39.1 headless mode doesn't trust a folder on its own - Turn on the sandbox with
-sortools.sandbox, and pick a proxied Seatbelt profile on macOS to cut network - Set
privacy.usageStatisticsEnabledto false to stop usage statistics - Since 0.63.0, plans run without interactive confirmation in non-interactive mode, so set the approval mode explicitly before a headless run
- Authenticate with a paid Gemini API key or Vertex credentials. A Google sign-in works only for Code Assist Standard or Enterprise licences
Questions
Which is better for AI agents, dsh-superagent (DeepSeek) or Gemini CLI?
Gemini CLI scores 66.8 (B) 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 Gemini CLI open source?
Yes. dsh-superagent (DeepSeek) is open source (MIT). Gemini CLI is open source (Apache-2.0).
Other comparisons with dsh-superagent (DeepSeek) or Gemini CLI
- Agent Zero vs dsh-superagent (DeepSeek)
- Agent Zero vs Gemini CLI
- Aider vs dsh-superagent (DeepSeek)
- Aider vs Gemini CLI
- Amp vs dsh-superagent (DeepSeek)
- Amp vs Gemini CLI
- Antigravity CLI vs dsh-superagent (DeepSeek)
- Antigravity CLI vs Gemini CLI
- Auggie CLI vs dsh-superagent (DeepSeek)
- Auggie CLI vs Gemini CLI
- Claude Code vs dsh-superagent (DeepSeek)
- Claude Code vs Gemini CLI
- Cline vs dsh-superagent (DeepSeek)
- Cline vs Gemini CLI
- Crush vs dsh-superagent (DeepSeek)
- Crush vs Gemini CLI
- Cursor CLI vs dsh-superagent (DeepSeek)
- Cursor CLI vs Gemini CLI
- DeepSeek Harness (dsh) vs dsh-superagent (DeepSeek)
- DeepSeek Harness (dsh) vs Gemini CLI
- dsh-superagent (DeepSeek) vs Devin
- dsh-superagent (DeepSeek) vs Droid CLI
- dsh-superagent (DeepSeek) vs Pi
- dsh-superagent (DeepSeek) vs GitHub Copilot CLI
- dsh-superagent (DeepSeek) vs goose
- dsh-superagent (DeepSeek) vs Harness²
- dsh-superagent (DeepSeek) vs HarnessRouter
- dsh-superagent (DeepSeek) vs Jules
- dsh-superagent (DeepSeek) vs Junie CLI
- dsh-superagent (DeepSeek) vs Kilo Code CLI
- dsh-superagent (DeepSeek) vs Kimi Code CLI
- dsh-superagent (DeepSeek) vs Kiro CLI
- dsh-superagent (DeepSeek) vs mini-swe-agent
- dsh-superagent (DeepSeek) vs MiniMax Code
- dsh-superagent (DeepSeek) vs Mistral Vibe CLI
- dsh-superagent (DeepSeek) vs Muse Code
- dsh-superagent (DeepSeek) vs OpenAI Codex
- dsh-superagent (DeepSeek) vs OpenCode
- dsh-superagent (DeepSeek) vs OpenHands
- dsh-superagent (DeepSeek) vs OpenMausBot
- dsh-superagent (DeepSeek) vs Prime Agent
- dsh-superagent (DeepSeek) vs Qoder CLI
- dsh-superagent (DeepSeek) vs Qwen Code
- dsh-superagent (DeepSeek) vs Mirror CLI
- dsh-superagent (DeepSeek) vs Rovo Dev CLI
- dsh-superagent (DeepSeek) vs Unstoppable
- dsh-superagent (DeepSeek) vs Vibe-Trading
- dsh-superagent (DeepSeek) vs Warp (Warp Agent CLI and the Oz Agent API)
- Devin vs Gemini CLI
- Droid CLI vs Gemini CLI
- Pi vs Gemini CLI
- Gemini CLI vs GitHub Copilot CLI
- Gemini CLI vs goose
- Gemini CLI vs Harness²
- Gemini CLI vs HarnessRouter
- Gemini CLI vs Jules
- Gemini CLI vs Junie CLI
- Gemini CLI vs Kilo Code CLI
- Gemini CLI vs Kimi Code CLI
- Gemini CLI vs Kiro CLI
- Gemini CLI vs mini-swe-agent
- Gemini CLI vs MiniMax Code
- Gemini CLI vs Mistral Vibe CLI
- Gemini CLI vs Muse Code
- Gemini CLI vs OpenAI Codex
- Gemini CLI vs OpenCode
- Gemini CLI vs OpenHands
- Gemini CLI vs OpenMausBot
- Gemini CLI vs Prime Agent
- Gemini CLI vs Qoder CLI
- Gemini CLI vs Qwen Code
- Gemini CLI vs Mirror CLI
- Gemini CLI vs Rovo Dev CLI
- Gemini CLI vs Unstoppable
- Gemini CLI vs Vibe-Trading
- Gemini CLI vs Warp (Warp Agent CLI and the Oz Agent API)
- Clawboo vs dsh-superagent (DeepSeek)
- Clawboo vs Gemini CLI
- CLI Manager vs dsh-superagent (DeepSeek)
- CLI Manager vs Gemini CLI
- dsh-superagent (DeepSeek) vs Harness
- dsh-superagent (DeepSeek) vs Paperclip
- dsh-superagent (DeepSeek) vs Parallax
- Gemini CLI vs Harness
- Gemini CLI vs Paperclip
- Gemini CLI vs Parallax
Machine-readable
- This page as Markdown
/compare/deepseek-superagent-vs-gemini-cli.md· slim.min.md· JSON.json(or sendAccept: text/markdown) - Each listing in full
/api/v1/tools/deepseek-superagent.json·/api/v1/tools/gemini-cli.json - From a terminal
anchor compare deepseek-superagent gemini-cli(the CLI) - Over MCP
compare_tools {"a": "deepseek-superagent", "b": "gemini-cli"}at/mcp, no key