Skip to main content

DeepSeek Harness vs. Claude Code: What Changes With the Same Model?

Compare DeepSeek Harness vs. Claude Code across runtime control, model choice, testing, and cost, using the same Claude model and repository.
Aug 24, 2026  · 12 min read

Explore with AI

ChatGPTClaudePerplexity

Most comparisons between coding agents become a contest over speed, price, tool count, or benchmark scores. That framing misses the question that separates these two: how much of the agent runtime can a developer replace?

DeepSeek Harness and Claude Code answer that question at different layers. Harness exposes model adapters, storage, sandboxes, and the agent loop as plugins. Claude Code packages its built-in loop around Claude and adds extension points for the workflow. That boundary matters more here than comparing DeepSeek and Claude as models.

I gave both tools the same broken repository and the same Claude model to see what the runtime changed. One case study cannot rank the products, but it shows why the harness is not a background detail. I'll focus on differences in model choice, setup, verification, logs, and cost.

TL;DR

  • If the runtime is part of the work: Harness exposes the model adapter, storage, sandbox, and agent loop as replaceable plugins, with support for several model providers.
  • If the main job is application code: Claude Code packages more of the runtime and extends its workflow through Skills, hooks, MCP, and related features.
  • Same-model test: Both produced a byte-identical patch and passed the original suite. In this Windows run, Claude Code reported 55.0 seconds; Harness recorded 125.4 seconds after three approval prompts.
  • Cost: DeepSeek Harness itself has no license fee; model usage is billed by the selected provider, with infrastructure costs where applicable. Claude Code is included in paid Claude plans.
  • Quick rule: Start with Claude Code for routine application work. Start with Harness when changing or inspecting the runtime is part of the task.

Introduction to AI Agents

Learn the fundamentals of AI agents, their components, and real-world use—no coding required.
Explore Course

DeepSeek Harness vs Claude Code: Quick Comparison

Dimension

DeepSeek Harness

Claude Code

What it is

Agent runtime with replaceable parts

Packaged coding agent

License and status

MIT, developer preview, no stable release

Proprietary, production product

Models

DeepSeek, Anthropic, OpenAI, Bedrock, Vertex, Azure, local

Claude, direct or via Bedrock and Vertex

Replaceable loop

Yes, a plugin entry you can override

No, extensions attach around it

Extension unit

Cordis plugin, any runtime capability

Plugin bundling skills, hooks, agents, MCP

Run history

Append-only typed event log, replayable

JSONL transcript, checkpoints, OpenTelemetry

Surfaces

Local web UI, headless CLI, Python SDK

Terminal, IDE, desktop, web, Slack, CI

Setup

Requires provider configuration and familiarity with profiles

Lower default setup; optional permissions, hooks, MCP, and project configuration

What Is DeepSeek Harness?

DeepSeek Harness is an open-source agent harness currently in developer preview. It supplies the runtime in which models use tools and context, and it can run models from providers other than DeepSeek. Its README warns that updates may break existing setups.

If you’re interested in trying it out, I recommend starting with our DeepSeek Harness tutorial.

How DeepSeek Harness works

The agent loop is implemented as a plugin. Harness uses Cordis to compose model adapters, tools, sessions, storage, sandboxes, and the loop.

Cordis lets plugins find services and exchange events. Dependency changes load or unload plugins; hot reloads clear stale listeners and background jobs.

The default profile shows the loop as a configuration. dsh --profile headless --dump-default-config includes this entry:

- id: agent-loop
  name: '@deepseek-ai/dsh-agent-loop'
  config:
    agents: []

That entry can be replaced through cordis.patch.yml, which shows that the loop itself is not fixed.

Plugin panel showing the runtime pieces. Video by Author.

The four runtime modes

DeepSeek Harness offers four different runtime modes.

  • Standard: the full coding-agent mode
  • PTC/Code: Combines several tool calls in one TypeScript program 
  • Minimal: keeps only persistent bash and str_replace_editor
  • Creator: for inspecting and testing the runtime

DeepSeek used the Minimal mode for its benchmarks.

What Is Claude Code?

Claude Code is Anthropic's proprietary coding agent and agentic harness for local or managed use across terminal, IDE, desktop, web, Slack, and CI.

The CLI starts with claude inside a project directory. That directory becomes the default file scope, and the session reads project instructions from CLAUDE.md. Users can widen file access or add external services later.

Anthropic presents these interfaces as ways to access Claude Code. Local sessions run on your machine. Cloud sessions run in managed environments or on servers operated by your organization. Remote Control lets a browser steer local work.

The best starting points are our Claude Code tutorial and Claude Code best practices guide.

Built-in loop and extensions

Anthropic describes Claude Code as the agentic harness around Claude, with a repeating context, action, and verification loop. Users can steer it during a run.

Claude Code stores sessions locally and compacts older contexts as the window fills. CLAUDE.md and auto memory carry selected instructions and project details across sessions. Subagents use separate context windows and return summaries to the parent session.

How Claude Code's extension layer works

Claude Code supports several extension mechanisms. CLAUDE.md, skills, hooks, MCP, subagents, plugins, Agent Teams, and the Agent SDK all extend its workflow.

These extensions operate around Claude Code's built-in loop. Hooks can enforce tool-call rules, while the Agent SDK provides tools and context management in code.

DeepSeek Harness vs Claude Code: Architecture and Control

DeepSeek Harness exposes lower-level runtime parts for replacement. Claude Code keeps its built-in loop fixed and supports extensions around it.

Replaceable runtime versus packaged agent

DeepSeek Harness treats the runtime as configurable infrastructure: model adapters, storage, sandboxes, and the loop can be replaced through profile entries. Claude Code keeps its built-in loop fixed and extends the workflow around it.

DeepSeek Harness can use that mechanism to swap model providers or other runtime parts. The word “plugin” also has a different scope here: 

  • Claude Code plugins bundle features around the loop.
  • DeepSeek Harness plugins can define parts of the runtime itself.

Model support and provider choice

DeepSeek Harness supports more model providers. It runs DeepSeek, Anthropic, OpenAI, cloud providers, and compatible local endpoints. Claude Code runs… well, Claude. In other words, DeepSeek Harness can host Claude, but Claude Code cannot host DeepSeek. 

That is what let me hold the model constant in testing. Comparing a DeepSeek model in Harness against Claude in Claude Code changes two variables at once.

Provider choice adds credential and endpoint setup, including exact model IDs. Claude Code controls the model family and most request behavior.

Changing the provider does not guarantee identical behavior. Models may support different tool formats, context sizes, or reasoning controls. Harness keeps the surrounding plugin setup available, but the provider adapter still has to match the selected endpoint.

Session logs and run traceability

DeepSeek Harness records prompts, context injections, tool calls, and permission decisions in an append-only event stream. Its trajectory view shows where each record came from and supports resume, fork, search, and replay.

Claude Code stores JSONL transcripts, supports resume and fork, and emits OpenTelemetry traces. 

Both expose session history, but DeepSeek Harness puts more of the runtime path in the UI.

Trajectory view reconstructing one full run. Video by Author.

Execution environments and permissions

DeepSeek Harness uses bubblewrap or Landlock on Linux, Seatbelt on macOS, and an ACL-restricted token on Windows. If the sandbox cannot start, Harness stops the command. Claude Code offers permission modes plus allow, ask, and deny rules. In this run, the Windows sandbox shaped the verification path and timing.

The access labels differ, so matching the two settings exactly was not possible.

  • DeepSeek Harness permission presets include read-only, workspace-write, and danger-full-access

  • Claude Code separates automatic edits, manual approval, planning, and rule-based command access. It also snapshots files before edits for rollback without Git. 

On current Pro, Max, and Team sessions in the terminal and VS Code, Auto mode is Claude Code's built-in starting mode. A classifier reviews actions in the background. The test explicitly used acceptEdits, so its permission behavior reflects the test configuration rather than the current default.

That distinction matters when comparing approval counts.

Execution location differs, too. Harness primarily runs on the machine that hosts its Web UI or a headless process. Claude Code can run locally, in Anthropic-managed cloud environments, or on self-hosted infrastructure. Remote Control adds a browser interface while execution stays local.

Testing DeepSeek Harness vs Claude Code Hands-On

To see whether those runtime differences affected execution, I gave both tools the same one-line TypeScript bug. If you only want the timed result, this is the section to read.

Test setup: same model, repository, and prompt

I wrote a TypeScript habit-streak library with one faulty line. It measured calendar days by rounding elapsed milliseconds. 

  • A completion at 23:50 followed by one at 00:10 looked like the same day.
  • A completion at 08:00 followed by 20:00 the next day looked like a missed day. 

Ten fixed tests exposed three failures.

Each fresh clone had dependencies installed before the timed run. Both agents received the same instruction and used Claude Sonnet 5. The repository and prompt were fixed; tools, permissions, and sandbox behavior remained specific to each product.

The permission configurations were not equivalent. DeepSeek Harness started in workspace-write, but its Windows sandbox could not start. The Web UI requested approval, and I granted danger-full-access three times. Claude Code used accept-edits and could run only the test command through bash.

This narrow task used only local code and tests. The agents needed to find and edit one faulty line, then run the suite. Dependencies were installed before timing, although Harness chose to run npm install again.

Test results: identical patch, different approval paths

Claude Code reported 55.0 seconds. It ran the suite, found the bug, edited one source file, and reran the tests. Ten of ten passed.

In this Windows test, DeepSeek Harness took 125.4 seconds. It found the same unused daysBetween helper, made the same edit, and ran the original suite successfully. 

The diffs were byte identical:

-import { DAY_MS } from './dates.js';
+import { daysBetween } from './dates.js';
 
 function gapInDays(earlier: number, later: number): number {
-  return Math.round((later - earlier) / DAY_MS);
+  return daysBetween(earlier, later);
 }

The approval path and repeated shell work explain most of the timing gap.

Why DeepSeek Harness took longer on Windows

DeepSeek Harness's workspace-write sandbox could not start on Windows, so the Web UI requested a wider permission mode three times. After approval, Harness ran the original suite, edited src/streak.ts, and ran the suite again. Ten of ten tests passed.

The result says nothing about Harness on Linux or macOS. Because both runs used the same model ID, the timing gap cannot come from a model-family difference. The different permissions and tool paths still shaped each run.

Claude Code and DeepSeek Harness results showing the same patch and ten passing tests

Both runs reached ten passing tests. Image by Author.

What the same-model test isolates

The shared model ID did not make the requests identical. Each product supplied its own system prompt, tool descriptions, context, and permission rules. Any of those inputs could affect the next model response. 

The setup, therefore, better controls the model family than a DeepSeek-model-versus-Claude comparison, but it does not isolate every variable.

I also ran only one timed trial per configuration. Repeated runs in a random order would be needed before treating the timing or tool counts as stable performance measurements.

DeepSeek Harness vs Claude Code: Cost, Benchmarks, and Test Limits

One Windows case study cannot settle the broader performance or pricing comparison. It does show why benchmark details matter.

Benchmark caveat: DeepSeek used Minimal mode

DeepSeek's published scores used Minimal mode, not the Standard mode used in this comparison. Independent tests using another harness reported lower results. I did not reproduce those tests. Minimal-mode results do not establish Standard-mode performance and do not measure Claude Code.

Cost: API charges versus Claude subscriptions

DeepSeek Harness has no license fee, but model and infrastructure costs still apply. DeepSeek's API uses peak and off-peak pricing. Claude Code is included in paid Claude plans. Check Anthropic's pricing page before budgeting.

The Harness run cost about $0.11 at Anthropic API list rates. Claude Code displayed $0.349 while using subscription credentials. Because those figures come from different billing systems, they are not a direct price comparison.

Claude's individual plans list Pro at $20 per month and Max tiers at $100 or $200 per month, while DeepSeek Harness has no matching subscription; the model provider sends the bill. Local models remove API charges but still use the machine's compute resources.

Teams should also account for hosted sandboxes and self-hosted compute when those services sit outside the model bill. Those costs do not appear in the Harness license.

Stability: developer preview versus production product

Harness was still in release candidate status during testing. Teams should pin package versions because updates may break profiles or saved sessions; Claude Code is already in production.

Limitations of DeepSeek Harness vs Claude Code

Neither system covers every workflow. The limits come from different parts of their design.

DeepSeek Harness limitations

Harness exposes more runtime parts, but that also leaves more setup and testing to the user:

  • The project remains in developer preview, and updates may break profiles or saved sessions

  • Provider credentials, model IDs, and endpoint rules require manual configuration

  • Its workspace-write sandbox failed to start in this Windows case study and required three danger-full-access approvals

  • The current Python SDK has no Windows wheel

The sandbox finding applies only to the Windows run described earlier. I did not repeat the test on Linux or macOS.

The release notes for v0.1.0-rc.7 mention a persistent Bash latency fix and a node-pty upgrade for broader PTY compatibility. That makes this observation both version- and Windows-specific.

Claude Code limitations

Claude Code handles more runtime decisions, but its fixed boundaries rule out some experiments:

  • It runs Claude models and does not provide a route for other model families

  • Its built-in session loop is not exposed as a replaceable component

  • Claude Code requires paid access or separately billed API credits, both with usage limits

  • Long sessions may compact older context, so persistent rules belong in CLAUDE.md

These limits matter most when a task requires another model provider or a custom loop.

DeepSeek Harness vs. Claude Code: Which Should You Choose?

Put the model names aside for a moment. Is your task to finish the application code, or to change the runtime doing the work?

Choose DeepSeek Harness if the runtime itself is the project. It fits cross-provider tests, custom loops or sandboxes, and work that depends on detailed execution traces. Its prerelease status also means taking responsibility for version changes and configuration testing.

Choose Claude Code if you are working in an existing codebase and want the agent to inspect files, edit code, and run the project's checks with less runtime setup. In this Windows test, it ran the original suite without the three full-access approvals Harness needed.

Use both if that split reflects real work. A team could use Claude Code for daily coding and Harness for experiments on prompts, tools, or the agent loop.

Final Thoughts

Both tools can inspect a repository, edit files, and run commands. What separates them is ownership of the runtime: Harness exposes its parts as plugins, while Claude Code packages the built-in loop and lets you extend the workflow around it.

If I had to choose a starting point based on this test, I would begin with Claude Code for routine application work. I would begin with Harness when changing or inspecting the runtime, which is the reason for the task. This is one Windows case study with prerelease Harness, not a permanent ranking.

For nearby comparisons, our pieces on Grok Build, Cursor, OpenCode, Codex, and other Claude Code alternatives.

DeepSeek Harness vs Claude Code FAQs

Can DeepSeek Harness reuse Claude Code project instructions?

Yes. Harness reads CLAUDE.md and AGENTS.md, so repository instructions can carry over. Claude Code Skills remain separate.

Can DeepSeek Harness run Claude Code or Codex as a subagent?

Yes. Prerelease builds include optional subagent provider bundles for Claude Code and Codex. Pin the Harness version before relying on their configuration.

Does Claude Code let you swap in a different model?

No, it runs Claude only. Harness can host Claude, but Claude Code can't host DeepSeek.

What platforms currently support DeepSeek Harness's Python SDK?

The current wheel supports Linux on x64 or arm64 and recent arm64 macOS releases. There is no Windows wheel, and the example composition uses full filesystem access.

Does Claude Code have platform restrictions like Harness's Python SDK?

Not exactly. It does not have a native Windows sandbox, so it needs WSL2 for /sandbox on Windows, but the CLI itself runs on macOS, Linux, and Windows.

Can DeepSeek Harness’s Code mode run Python programs?

Not with the shipped backend. PTC (also called Code) mode recognizes program languages, but the documented code runtime currently provides a TypeScript backend.

Can DeepSeek Harness run local models?

Yes. Add a custom provider that exposes an OpenAI-compatible endpoint, such as a local Ollama or vLLM server, then register the model ID in DeepSeek Harness.


Khalid Abdelaty's photo
Author
Khalid Abdelaty
LinkedIn

I’m a data engineer and community builder who works across data pipelines, cloud, and AI tooling while writing practical, high-impact tutorials for DataCamp and emerging developers.

Topics

Top AI Courses

Track

AI Agent Fundamentals

6 hr
Discover how AI agents can change how you work and deliver value for your organization!
See DetailsRight Arrow
Start Course
See MoreRight Arrow
Related

blog

DeepSeek vs. Claude: Comparing Two Leading AI Models

Explore how DeepSeek and Claude differ in reasoning, coding, language generation, and pricing to find the right AI model for your workflow.
Vinod Chugani's photo

Vinod Chugani

9 min

blog

Claude Opus 4.7 vs DeepSeek V4: Which Model Should You Use?

Compare Anthropic's Claude Opus 4.7 and DeepSeek V4 on benchmarks, pricing, agentic coding, and reasoning. Find out which model fits your workflow.
Tom Farnschläder's photo

Tom Farnschläder

12 min

blog

DeepSeek V3 vs R1: A Guide With Examples

Learn the differences between DeepSeek-R1 and DeepSeek-V3 to choose the right model for your needs.
François Aubry's photo

François Aubry

8 min

blog

DeepSeek vs. OpenAI: Comparing the New AI Titans

Exploring the strengths, weaknesses, cost efficiencies, and safety protocols of DeepSeek-R1 and OpenAI’s o1 models.
Vinod Chugani's photo

Vinod Chugani

7 min

Tutorial

DeepSeek Harness Tutorial: Getting Started with the Most Popular Open-Source AI Agent

Learn how to set up and test DeepSeek Harness, an open-source AI coding agent with plugin support, web search, vision, DeepSeek models, Gemini, ModLens, third-party models, and agentic workflows.
Abid Ali Awan's photo

Abid Ali Awan

Tutorial

DeepSeek API: A Guide With Examples and Cost Calculations

Learn how to use the DeepSeek API, including model selection, parameter management, cost optimization, context caching, and chain-of-thought optimization.
Dr Ana Rojo-Echeburúa's photo

Dr Ana Rojo-Echeburúa

See MoreSee More