返回资讯中心
外部精选
大数据
#数据科学#机器学习

What I’ve Learned About DeepSeek Harness

KDnuggets team member Shittu Olumide tested out DeepSeek Harness. Here's what he found.

KDnuggetsShittu Olumide2026/9/24 · 2026/9/2412 分钟阅读

以下正文同步自 KDnuggets,版权归原站所有,已转换为易读排版。

Let's put this plainly: this isn't a coding agent you point at a repository and use today. It's the machinery a coding agent gets assembled from.

This isn't DeepSeek's first time choosing open infrastructure over a walled garden either, and that history is worth a beat. DeepSeek-R1 landed in January 2025 as the first open, MIT-licensed frontier-class reasoning model from outside the usual US labs, trained for a fraction of what comparable Western models cost, and it reset a lot of assumptions about who gets to ship frontier AI in the open. Harness reads like the same instinct applied one layer up the stack: instead of open weights alone, open agent infrastructure, published at the same time as the announcement rather than teased ahead of it.

Since it ships as a real npm package, you can install directly:

npx --yes @deepseek-ai/dsh --version

That returned 0.1.5-rc.2, matching the version history on the project's actual GitHub releases page, confirming this was a genuine, current install. Here's what the real help output actually shows:

Commands: web [options] [args...] boot the web profile (alias of --profile web) plugin [options] [args...] manage a profile's plugins by forwarding the remaining arguments to pnpm in the profile directory

Examples: dsh --profile web boot the web profile (same as: dsh web) dsh --profile headless "run the tests" answer one task, print the result, and exit dsh --profile tui --patch ./extra.yml boot a custom profile with one extra overlay dsh plugin --profile tui add install a plugin into the tui profile

--profile web boots the browser UI, --profile headless answers one task and exits, and there's also tui and rescue profiles — each one just a different stack of mounted plugins under the same launcher. dsh plugin add treats installing a new capability as an ordinary package install rather than a special, separate mechanism.

The most concrete thing I found came from one flag: --dump-default-config, which prints the entire composed plugin tree for a profile before it boots. Running it against the default web profile printed 152 separately named, independently swappable plugins. A representative slice of the actual output:

  • id: ui-approval name: '@deepseek-ai/dsh-client-ui-approval'
  • id: ui-subagent name: '@deepseek-ai/dsh-client-ui-subagent'
  • id: ui-schedule name: '@deepseek-ai/dsh-client-ui-schedule' disabled: true
  • id: ui-plan name: '@deepseek-ai/dsh-client-ui-plan'
  • id: agent-presets name: '@deepseek-ai/dsh-agent-presets' config: default: standard

Everything from the sidebar and chat window down to the approval prompt, the sub-agent panel, and the scheduling UI (shipped but disabled: true by default) is its own installable package with its own id. That's not a marketing claim anymore once you've watched it print — it's a genuinely fine-grained plugin architecture, down to individual UI panels most tools would treat as one monolithic frontend.

I also tried the one-shot headless path with no model key configured:

npx --yes @deepseek-ai/dsh --profile headless "say hello"

It failed immediately with a clean, specific error: MISSING_CREDENTIAL: llm-deepseek: no API key for provider route "deepseek-official", telling me exactly which environment variable to set or where the web UI's Models page would store it instead. It's the kind of error message that tells you someone thought about the failure case on purpose rather than letting a stack trace do the talking.

The genuinely distinctive bet here isn't the plugin count — it's that the agent loop is one of the plugins. In a tool like Codex CLI, changing how the core reasoning loop behaves means editing a compiled Rust binary. In dsh, the loop lives in an ordinary package you swap from config, the same way you'd swap a UI panel. That's a real architectural difference, not just a rebranding of "extensible," and it's the reason people building agent infrastructure specifically are paying attention.

None of that makes it something to recommend broadly yet. It's explicitly, repeatedly a developer preview — the project says so louder than most — and an ecosystem still assembling itself. One independent plugin directory listed 94 plugins across four categories as of its first snapshot: useful, but young.

If you build agent infrastructure, or you're the kind of developer who wants to swap out a session store or a sandboxing backend without forking anything, this is worth a real look today — the architecture is sound, and it's genuinely running, not vaporware. If what you actually want is a daily-driver coding agent to replace Claude Code or Codex in your workflow tomorrow morning, this isn't it yet, and the project isn't pretending otherwise.

正文由 探How 从来源站点 RSS 同步,内容未经改写;遇到排版缺失或需要图片、视频时请以原文为准。

打开原文
去社区讨论 →