跪拜 Guibai
← All articles
Frontend · Agent · DeepSeek

DeepSeek Harness vs Pi Agent: The Maintenance Burdens Decide, Not the Feature Lists

By jerrywus ·
Read original on juejin.cn ↗ Google Translate ↗ Alt translation

Choosing wrong quietly adds a second configuration job and long-term maintenance debt to your AI workflow. A repeatable pilot test based on scope discipline and recovery, run before you migrate a real project, keeps that cost visible instead of letting a feature checklist decide.

Summary

DeepSeek Harness and Pi Agent take opposite approaches to the same job: running an AI coding agent. DSH is a plugin-based runtime with a browser UI, built-in MCP client, sub-agents, planning mode, and a fail-closed approval service. Pi is a minimal terminal harness with four built-in tools and a small core you extend with TypeScript extensions, skills, and templates. Both are MIT-licensed; dsh is in developer preview and will break compatibility.

A pilot test keeps the comparison honest. Pin the model, prompt, task, and acceptance criteria, start both from the same clean worktree, and run a single frontend task like adding a price filter. Record the file scope, unrelated changes, recovery after interruption, whether dangerous operations get blocked, token cost, and time. Then add the maintenance cost: plugin upgrades, version changes, and assembling MCP integration. The decision comes down to what your team can actually maintain, not which feature list is longer.

The comparison treats a harness as a workbench, not a model. Changing the harness doesn't improve the brain; changing the model while comparing harnesses confuses the results. Security labels on a feature list are worthless: DSH's sandbox doesn't cover network or process isolation, and Pi has no built-in permissions at all.

Takeaways
— DeepSeek Harness is MIT-licensed, in developer preview with breaking changes, and is not a model; you configure the model yourself.
— Pi Agent is also MIT-licensed, a minimal terminal core with four built-in tools: read, write, edit, run commands.
— DSH ships a generic MCP client; Pi has no built-in MCP and requires extensions or documented integration.
— DSH has a fail-closed approval service, but its sandbox covers only the filesystem, leaving network and process isolation to deployment.
— Pi has no built-in permission system or sandbox; the docs recommend external containers.
— The pilot runs the exact same task, prompt, acceptance criteria, and commands from a clean worktree on both harnesses.
— Record file change count, unrelated modifications, scope discipline, long-task recovery behavior, isolation enforcement, token usage, time, and retries.
— Fix the model before comparing; if models differ, results reflect the whole stack, not just the harness.
— DSH's plugin-rich defaults can save configuration time but plugin upgrades and breaking changes add maintenance; Pi's minimal core is easy to start but you assemble MCP, approval, and isolation yourself.
Conclusions

The instruction to pin the model before comparing means most real-world harness evaluations are actually measuring model differences, and the blame or credit usually lands on the wrong component.

A feature list can claim security without evidence; the real isolation boundary always lands on the operator, either because DSH's sandbox stops at the filesystem or because Pi has none and expects containers.

The pilot's explicit inclusion of maintenance time turns the choice into a crew question: the harness with the longer feature list doesn't relieve the team of upkeep, so the winner is whatever they can actually keep running.

Concepts & terms
Harness
In the context of AI agents, a harness is the runtime and tooling environment that lets a model execute tasks: it provides tools, session management, isolation, and orchestration, separate from the model itself.
MCP (Model Context Protocol)
An open protocol for connecting AI models to external tools and data sources. A built-in MCP client in a harness lets the agent call external services without hand-coding each integration.
Skill
A packaged set of instructions or a capability module an agent can load to handle a specific type of task, often reusable across sessions and models.
Fail-closed
A security posture where access is denied by default and only explicitly allowed operations are permitted; DSH's built-in approval service applies this mode.
Source: juejin.cn ↗ Google Translate ↗ Backup ↗