DeepSeek Harness: An Agent Runtime Where Even the Main Loop Is a Plugin
dsh is the first Agent runtime to open-source every layer down to the main loop, letting teams swap out any component without forking a codebase. For developers building internal Agent platforms or doing model evaluation research, it offers a level of control that closed products like Claude Code cannot match, though its developer-preview status and configuration complexity make it unsuitable as a drop-in replacement today.
DeepSeek Harness (dsh) is an open-source Agent runtime framework released alongside DeepSeek-V4-Pro. Its core philosophy, "Everything is a Plugin," means the model adapter, tool registry, session storage, sandbox, and the Agent main loop are all replaceable components loaded through the underlying Cordis framework. The official formula is Agent = Model + Harness, positioning dsh not as another coding assistant product but as a runtime base for assembling custom Agents.
The framework ships with four factory presets: Standard for daily development, Code/PTC for programmatic tool calling that compresses multiple rounds into one execution, Minimal for benchmarking, and Creator for building custom Agent modes. It offers three entry points—a Web UI, a headless CLI, and a Python SDK—and is model-agnostic, supporting providers from DeepSeek and OpenAI to local Ollama endpoints.
Version RC.8 makes Claude Code and Codex installable as Profile Bundles, allowing dsh to act as a scheduling layer that delegates specialized work to these sub-agents. A community plugin ecosystem has already exploded around it, with tools for file referencing, context visualization, multi-agent team orchestration, and desktop clients, though the project remains a developer preview with explicit warnings about breaking changes.
Making the Agent loop itself a plugin is the architectural decision that separates dsh from every other coding Agent. Claude Code and Codex lock their main loop; dsh treats it as just another capability seam, which means multi-agent architectures, custom scheduling, and self-modifying Agents can be built without forking.
The Cordis framework's "reversible side effects" model—where every registration automatically records its cleanup—solves the hot-reload problem that plagues plugin systems. Unloading a plugin truly removes its tools and listeners, leaving no residue.
RC.8's Claude Code and Codex integration is not about replacing those tools but about making dsh a meta-orchestrator. The architecture acknowledges that different coding Agents have different strengths and lets a team route work accordingly, which is a more pragmatic vision than trying to build one Agent to rule them all.
The community plugin ecosystem reached over 6,000 repositories within a week of launch, but the official stance that no package is more authoritative than another—combined with plugins running at host-process privilege—creates a security model that depends entirely on developer diligence.
dsh's configuration model uses whole-line patch replacement rather than deep merging, which means overriding one key in a plugin's config requires restating every other key. This design choice keeps the system predictable but makes configuration files brittle and error-prone for newcomers.