by ZSeven-W
DeepSeek Harness (DSH) plugin: dispatch work to DSH agents from Claude Code / Codex — native subagent progress, in-host worker sessions with per-tier presets, and a multimodal bridge that lends the text-only harness vision and image generation.
# Add to your Claude Code skills
git clone https://github.com/ZSeven-W/dsh-crewdsh-crew is an open-source ai agents skill for AI coding assistants such as Claude Code, Codex CLI, and ChatGPT, built by ZSeven-W. DeepSeek Harness (DSH) plugin: dispatch work to DSH agents from Claude Code / Codex — native subagent progress, in-host worker sessions with per-tier presets, and a multimodal bridge that lends the text-only harness vision and image generation. It has 56 GitHub stars.
dsh-crew's catalog security scan is still queued. You can run an instant dependency and prompt-injection check now with the "Scan for vulnerabilities" button above.
Clone the repository with "git clone https://github.com/ZSeven-W/dsh-crew" and add it to your Claude Code skills directory (see the Installation section above).
dsh-crew is primarily written in JavaScript. It is open-source under ZSeven-W on GitHub, so you can review or fork the full source.
Yes. SkillsLLM lists many other AI Agents skills you can browse and compare side by side. Open the AI Agents category from the badge at the top of this page, or use the Related Skills and comparison links further down to weigh dsh-crew against similar tools.
No comments yet. Be the first to share your thoughts!
Unlocks once the catalog security scan passes (runs nightly).
The deep catalog scan for this skill is still queued. Run an instant dependency check now instead.
DSH Crew is a plugin for DeepSeek Harness (DSH) — an open-source agent harness. It makes DSH agents dispatchable from Claude Code and Codex: the orchestrator keeps its own model, the work runs on a real DSH agent with that harness's tools, sandbox, presets and session history, and the host still shows it as a native subagent with live progress.
What runs the work is a DSH agent, not a bare model call. Tiers (flash / pro) select how much capability that agent gets from the harness's configured roster — DeepSeek V4 Flash and V4 Pro today — so a change of model in DSH needs no change here.
Workers appear as regular subagents in Claude Code / Codex — dispatch count, running step, tool calls and token usage all show up in the host's own task panel, plus a claude-hud statusline segment: ⚙dsh 1▶pro 2m14s 21.7k/606 ✓3.
flash for mechanical work, pro for reasoning, effort from off to max. tier_policy can clamp every dispatch to one tier at the tool layer, and escalate_on_failure retries a failed flash run once on pro — based on evidence, not on guessing difficulty up front.
With the bundle installed in a DSH profile, each worker is a first-class DSH session: visible in the Web UI, grouped by working directory, mounted with the Agent preset you choose per tier. Without DSH running, dispatch falls back to a standalone DSH runtime, so CI and headless environments still work.
DSH's models are text-only. describe_image and generate_image borrow the eyes and brush of the CLIs you already have — Claude, Codex, Grok, Antigravity — or of any OpenAI-compatible API you configure. Pasted images stay visible in the conversation and reach the model as text.
Bring your own endpoint (Base URL + API key + models) or a local command template. Each provider has a connectivity test that checks reachability and auth, then makes one real vision call so you find out now, not mid-task.
The settings page installs and updates the Claude Code plugin and the Codex role files for you — marketplace registration, permission allowlist, HUD wiring, absolute paths rendered for this machine — and restores them just as easily. Every settings file is backed up first.
Claude Code / Codex (orchestrator, keeps its own model)
└─ ds-flash / ds-pro ← native subagent shell (progress shows in the host's task UI)
└─ MCP: dsh_run_worker(tier, effort, cwd)
├─ hub reachable → session inside DSH (visible in the Web UI, grouped by cwd)
└─ otherwise → dsh-jsonrpc-agent runtime (worker.cordis.yml)
└─ DeepSeek V4 Flash / Pro (DSH SDK, event stream → progress and token stats)
Dispatch fans out. Below, eighteen workers translate this README in parallel: the host counts them as its own subagents, while the harness runs them as real sessions.
Install into a DSH profile from npm:
dsh plugin --profile web add @zseven-w/dsh-crew@latest
dsh web
Or, for local development straight from the source tree:
dsh plugin --profile web add link:/path/to/dsh-crew
dsh web
The link: protocol symlinks the profile dependency to this repository, so rebuilds are visible immediately.
In hub mode — the installation above — workers run inside the DSH instance and use the DeepSeek credentials it is already configured with. Nothing else to set up.
Only the standalone fallback needs a key of its own: dispatching from Claude Code / Codex with no DSH instance running launches a worker runtime as a separate process. Obtain an API key from platform.deepseek.com and write it to ~/.config/dsh-crew/.env:
DEEPSEEK_API_KEY=sk-...
node scripts/smoke.mjs
The smoke test dispatches one cheap job through whichever path is available — the hub when a DSH instance is running, standalone otherwise — and prints which one it used. Within about ten seconds you should see smoke test passed — configuration OK. On failure the reason is printed, scoped to the path that was tested.
Then open Settings → DSH Crew and install the Claude Code / Codex integrations with one click.
flash is fast and cheap (simple tasks), pro reasons harder (complex problems). Today they map to DeepSeek V4 Flash and V4 Pro; swap models in DSH and nothing changes here.off = no reasoning, high = high reasoning investment, max = maximum reasoning investment.One-click installation (choose one):
node src/install/cli.mjs allBoth do the same thing: register local marketplace (parent directory dsh-plugins/ as marketplace root) + claude plugin install + MCP tool permission allowlist + claude-hud worker status segment config (auto-backup settings.json before changes, idempotent). Restart the session after installation for changes to take effect.
⚙dsh 1▶pro 2m14s 21.7k/606 ✓3 (current tier / elapsed time / token usage / completion count)
statusline/statusline.sh or statusline/worker-segment.sh can be independently integratedMCP_TOOL_TIMEOUT adjustable), long tasks can have orchestrator use dsh_spawn_worker + dsh_worker_result(wait_seconds) pollingclaude --plugin-dir /path/to/dsh-crew to temporarily loadThese override the global defaults for the current session only, and are enforced at the tool layer rather than by prompting:
| Command | What it does |
|---|---|
/dsh-crew:config |
Show or set this session's defaults: tier=flash|pro, effort=off|high|max, mode=auto|hub|standalone, timeout=<seconds>, policy=auto|flash-only|pro-only, escalate=true|false, reset |
/dsh-crew:on · /dsh-crew:off |
Turn dispatch for this session on or off (off is a hard switch: the tool refuses) |
/dsh-crew:status |
Live status of worker jobs: tier, progress, tokens, current tool |