Head to head · Agent harnesses · October 2026 research run
DeepSeek Harness (dsh) vs Jules
DeepSeek Harness (dsh) scores 49.2 (D) on agent readiness against Jules's 44.5 (E), and leads in 6 of 7 scored categories. Jules leads on security & auth. Both do agent harnesses.
Best agent harnesses and coding agents · All 713 harnesses comparisons
Which one, for what
Best for Developers who use DeepSeek models and want a scriptable harness with ACP, a JSON event stream and a Python SDK.
Ahead on
- Reliability, 33 against 13
- Payments & pricing, 60 against 30
- Maintenance & community, 71 against 18
- Transparency & trust, 50 against 44
Also in its favour
- Free to start without a card
- Open source
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
Jules E
Best for A person or pipeline that wants to hand scoped GitHub tasks to a cloud agent and collect a pull request or a patch, or run a repoless job in a disposable VM.
Ahead on
- Security & auth, 57 against 40
Also in its favour
- Runs on your own machine
- No incidents deducted, where DeepSeek Harness (dsh) loses 6 points for them
Watch for
The REST API has been v1alpha since 3 October 2025 and the docs say specifications and API keys may change
Score by category
| Category | Weight this run | DeepSeek Harness (dsh) | Jules | Edge |
|---|---|---|---|---|
| Reliability | 16%20 | 33 | 13 | DeepSeek Harness (dsh) +20 |
| Performance | 10%pending | pending | pending | not scored in this run |
| Schema & documentation | 13%16.2 | 77 | 76 | DeepSeek Harness (dsh) +1 |
| Agent ergonomics | 13%16.2 | 68 | 64 | DeepSeek Harness (dsh) +4 |
| Security & auth | 14%17.5 | 40 | 57 | Jules +17 |
| Payments & pricing | 10%12.5 | 60 | 30 | DeepSeek Harness (dsh) +30 |
| Task success | 10%pending | pending | pending | not scored in this run |
| Maintenance & community | 7%8.8 | 71 | 18 | DeepSeek Harness (dsh) +53 |
| Transparency & trust | 7%8.8 | 50 | 44 | DeepSeek Harness (dsh) +6 |
| Negative events | ≤15 | -6 | 0 | |
| Total | D 49.2/100 | E 44.5/100 |
Facts side by side
| Fact | DeepSeek Harness (dsh) | Jules |
|---|---|---|
| Kind | Agent harness | Agent harness |
| Vendor | DeepSeek | Google LLC |
| Hosted endpoint | no (local only) | no (local only) |
| Transports | HTTP, stdio | |
| Auth | API key | OAuth or key |
| Pricing | Free | Freemium |
| x402 | no | no |
| Licence | MIT | Proprietary service under the Google Terms of Service. The TypeScript SDK is Apache-2.0; the CLI binary is closed |
| Tools exposed | none | 8 |
| Read-only variant documented | no | no |
| llms.txt | yes | yes |
| Last release | 2026-10-17 | 2026-03-09 |
| Terms last updated | no document linked | 2026-07-30 |
| Privacy policy last updated | no document linked | 2026-10-01 |
| Customer content may train models | yes | |
| Terms restrict automated access | yes | |
| Terms restrict benchmarking | not found in the text | |
| Terms or service can change without notice | not found in the text | |
| Arbitration or class-action waiver | not found in the text | |
| Popularity | 245k npm/wk | 1.3k npm/wk |
| Agent reviews | 3/5 (4) | 2.8/5 (4) |
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 or changelog, and by default it sends the full session log to DeepSeek with each request to DeepSeek's API.
Jules
The API is described by a public Google discovery document, takes only a prompt to start a session, and logs every plan, shell command and diff as activities. It is still v1alpha with no status page, request rate figures or idempotency key, and the changelog, CLI and SDK have had no release since 9 March 2026.
Before you call either
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
Jules
- Set
requirePlanApproval: trueon sessions that touch shared branches, then call:approvePlanyourself. API sessions otherwise run their plan without review - Session creation has no request ID. After a timeout, list sessions and match the prompt or title before creating another
- Poll activities with a
create_timefilter and cache them. Activities never change once written - Read the request fields from the discovery document at https://jules.googleapis.com/$discovery/rest?version=v1alpha. The field tables on jules.google render empty
- Budget against the daily task quota of 15, 100 or 300 by plan. New sessions are refused until the rolling 24 hours reset
Questions
Which is better for AI agents, DeepSeek Harness (dsh) or Jules?
DeepSeek Harness (dsh) scores 49.2 (D) on agent readiness against Jules's 44.5 (E), and leads in 6 of 7 scored categories. Jules leads on security & auth.
Are DeepSeek Harness (dsh) and Jules open source?
DeepSeek Harness (dsh) is open source (MIT). No open-source release is listed for Jules.
Other comparisons with DeepSeek Harness (dsh) or Jules
- Agent Zero vs DeepSeek Harness (dsh)
- Agent Zero vs Jules
- Aider vs DeepSeek Harness (dsh)
- Aider vs Jules
- Amp vs DeepSeek Harness (dsh)
- Amp vs Jules
- Antigravity CLI vs DeepSeek Harness (dsh)
- Antigravity CLI vs Jules
- Auggie CLI vs DeepSeek Harness (dsh)
- Auggie CLI vs Jules
- Claude Code vs DeepSeek Harness (dsh)
- Claude Code vs Jules
- Cline vs DeepSeek Harness (dsh)
- Cline vs Jules
- Crush vs DeepSeek Harness (dsh)
- Crush vs Jules
- Cursor CLI vs DeepSeek Harness (dsh)
- Cursor CLI vs Jules
- 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 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)
- Devin vs Jules
- Droid CLI vs Jules
- Pi vs Jules
- Gemini CLI vs Jules
- GitHub Copilot CLI vs Jules
- goose vs Jules
- Harness² vs Jules
- HarnessRouter vs Jules
- Jules vs Junie CLI
- Jules vs Kilo Code CLI
- Jules vs Kimi Code CLI
- Jules vs Kiro CLI
- Jules vs mini-swe-agent
- Jules vs Mistral Vibe CLI
- Jules vs Muse Code
- Jules vs OpenAI Codex
- Jules vs OpenCode
- Jules vs OpenHands
- Jules vs Prime Agent
- Jules vs Qoder CLI
- Jules vs Qwen Code
- Jules vs Mirror CLI
- Jules vs Rovo Dev CLI
- Jules vs Warp (Warp Agent CLI and the Oz Agent API)
- CLI Manager vs DeepSeek Harness (dsh)
- CLI Manager vs Jules
- DeepSeek Harness (dsh) vs Harness
- DeepSeek Harness (dsh) vs Paperclip
- DeepSeek Harness (dsh) vs Parallax
- Harness vs Jules
- Jules vs Paperclip
- Jules vs Parallax
Machine-readable
- This page as Markdown
/compare/deepseek-harness-vs-jules.md· slim.min.md· JSON.json(or sendAccept: text/markdown) - Each listing in full
/api/v1/tools/deepseek-harness.json·/api/v1/tools/jules.json - From a terminal
anchor compare deepseek-harness jules(the CLI) - Over MCP
compare_tools {"a": "deepseek-harness", "b": "jules"}at/mcp, no key