DeepSeek's official agent harness (dsh) launched Aug 13. Orbital was dispatching it as a sub-agent within 3 hours, and shipped this full integration the same night.
The receipts: dsh 0.1.0-rc.6 hit npm at 12:35 UTC, Aug 13. Orbital's first verified end-to-end dispatch — real DeepSeek model, bash tool writing files into a project workspace — ran at 14:53 UTC, 2h18m later, over Orbital's existing ACP transport with zero new transport code (probe scripts preserved at tests/manual/dsh/). The production integration below was built in 5 hours that night (about 2 of them active — a usage-limit outage ate the middle 3).
DeepSeek Harness as a first-class sub-agent
- One-click install. Orbital downloads and installs dsh itself (
npm ciagainst a committed lockfile — exact-pinned, reproducible) with live streamed progress on the settings card. First agent Orbital installs on your behalf; no CLI setup. - Key management. dsh has no credential store of its own, so Orbital keeps your DeepSeek API key in the system keychain — write-only fields, masked display, never returned by any API. One checkbox reuses your global DeepSeek provider key (copied server-side; the key never travels through the browser). Optional region-locked base URL supported.
- Same project, same everything. dsh dispatches like Claude Code and Codex:
@dshin chat or manager delegation, briefed with the project's real context, working in the project workspace, with its own per-project MEMORY.md that it maintains across dispatches — and across daemon restarts. - Tool activity capsules. dsh's ACP adapter ships no tool events ("committed answers only"), so Orbital adds a composition-local plugin that emits standard ACP
tool_callframes from the harness's own event bus — your capsule showsbash · 3.2s-style rows per invocation, same as Claude Code. The same fix repaired Cursor's previously empty tool capsules. - Model + permission mode in Settings (
deepseek-v4-flash/deepseek-v4-pro,workspace-write/danger-full-access) — applied per spawn, and dsh's own sandbox enforces workspace containment (verified: outside-workspace writes fail cleanly withOperation not permitted). - Honest by design. dsh turns run silently (activity appears post-hoc — labeled as such in the UI), session resume degrades to an honest fresh session (upstream
dsh-acphas nosession/loadyet; we've specified the PR), and credential pills now say "API key saved" instead of pretending key-agents "log in".
Also in this release
- DeepSeek and every other agent now show their vendor marks on the settings cards (previously chat-only).
- The
@-mention dropdown picks up freshly installed agents immediately (previously required a page reload). - Removed the legacy hand-rolled
acptransport (superseded by the real ACP SDK client). - Manifests can declare platform gates (
setup.orbital_install.platforms); dsh installs on macOS + Linux.
Known issues
- Windows: dsh install is gated off (untested npm
.binshim story) — the card says "not yet supported on this platform". Everything else works on Windows. - Windows installer is unsigned — expect the SmartScreen warning; choose "More info → Run anyway".
- macOS .dmg is Developer-ID signed and notarized — no Gatekeeper bypass needed.
- dsh session resume across daemon restarts is intentionally a fresh session (see above); dsh's own MEMORY.md carries practical continuity.
Install
Download below: Orbital-0.9.0-macOS.dmg (Apple Silicon) or Orbital-Setup-0.9.0.exe (Windows 10/11). Bring your own API key. To try dsh: Settings → Sub-agents → DeepSeek Harness → Install, paste your DeepSeek key (or reuse your provider key), then @dsh <task> in any project.