DeepSeek Harness “Everything Is a Plugin”: choose the right Cordis extension seam
DeepSeek Harness “Everything Is a Plugin”: choose the right Cordis extension seam Quick answer DeepSeek Harness does not treat plugins as optional add-ons around a privileged core. At the source snapshot checked for this guide—default branch master, commit 141eb6fef83422698aef7a981029e843e8161534—the model adapter, tool registry, session log, and agent loop are all Cordis plugins. A plugin…
DeepSeek Harness adopts a "Everything Is a Plugin" approach, treating plugins as integral components rather than optional extras. The model adapter, tool registry, session log, and agent loop are all Cordis plugins. Plugins contribute services, typed events, and reversible effects to a shared context, with profiles and bundles composing these plugins into a functional product.
The key principle is to use services for capabilities called directly, events for observing or intercepting behavior without importing providers, effects for actions needing to be undone upon unload, profiles for user or deployment-specific composition, and bundles for distributing reusable packages with patchable rows. The choice of plugin type should be based on ownership, lifetime, dependency, and replacement boundary, not directory name or YAML position.
DeepSeek Harness is currently in Developer Preview, with the v0.1.0-rc.8 pre-release published on August 19 and @deepseek-ai/dsh@0.1.0-rc.7 reported on npm as of August 20. This guide is aimed at agent-framework developers deciding where to add tools, policies, adapters, observers, UI surfaces, or deployment compositions within DeepSeek Harness, assuming they have a disposable evaluation environment.
It serves as an architecture map rather than a stability guarantee, and the configuration and lifecycle should be rechecked after every upgrade. The source material may change between preview candidates, so configurations should be validated post-upgrade.
Written by urgent.news from Dev.to's reporting — not their text. Machine-written — may contain errors; check the original before relying on it.