Introduction¶
DeepSeek Harness handles entire tasks with a single model by default. This plugin introduces Codex and Claude Code as subagents, supporting read/write separation and parallel execution, and addresses the limitations of a single model in specific tool chains (such as code review and test execution).
Plugin Positioning¶
- Name:
dsh-preset-codex-claude - Author: Magica-Chen
- Category: Workflow
- Description: DeepSeek Harness agent preset: Codex and Claude Code as delegation subagents at read-only and full-access tiers.
Core Features¶
This plugin provides the following capabilities:
- Subagent support: Introduces Codex and Claude Code as subagents.
- Permission tiers: Each vendor provides two levels: read-only and full access.
- Parallel execution: Supports running two subagents simultaneously within the same session.
- Official implementation: Uses the official @deepseek-ai/dsh-subagent-codex and @deepseek-ai/dsh-subagent-claude-code providers, with no secondary wrapping.
- Lightweight: As a declaration layer, it registers four providers and four tools.
Installation and Activation¶
Installation consists of two steps and must be performed in the following order:
- Install the provider packages into the DSH installation directory (note: not into a profile, but into the root of the dsh installation).
After upgrading DSH, rerun this step because the upgrade clears dependencies.
DSH_INSTALL="$(dirname "$(dirname "$(readlink -f "$(command -v dsh)")")")"
npm install --no-save --prefix "$DSH_INSTALL" \
@deepseek-ai/dsh-subagent-codex@0.2.0-rc.2 \
@deepseek-ai/dsh-subagent-claude-code@0.2.0-rc.2
- Install the preset into the Profile.
dsh plugin --profile web add github:Magica-Chen/dsh-preset-codex-claude
After installation, restart dsh and create a new session to activate the plugin.
Typical Usage¶
In a DSH session, delegation can be performed through the following four tools:
subagent_codex: Codex full-access modesubagent_codex_readonly: Codex read-only mode (inherits user configuration)subagent_claude_code: Claude Code full-access modesubagent_claude_readonly: Claude Code hard read-only mode
Example usage:
subagent_codex task="Run the test suite and fix the two failures in parser.js"
subagent_claude_code task="Review the diff on this branch for security issues"
All subagents are started as independent processes and do not inherit the current session context, so prompts must be self-contained.
Permissions and Limitations¶
The plugin defines clear permission boundaries and restrictions:
- Claude read-only mode (
subagent_claude_readonly): This is a hard block. This mode cannot run tests or builds (including Bash commands) unlessbypassPermissionsis used. - Claude full-access mode (
subagent_claude_code): UsesbypassPermissions, allowing file read/write and command execution. - Codex read-only mode (
subagent_codex_readonly): This is advisory, not a hard block, and directly inherits the user’s~/.codexconfiguration. - Codex full-access mode (
subagent_codex): Usesdangerously-bypass-approvals-and-sandbox.
Because the subagents declare NO_START_CAPABILITIES, toolFilter and persona cannot be used.
Notes¶
- Version matching: The provider packages must match the DSH host version. A version mismatch causes silent delegation invocation failures.
- Process-level caching: If preset loading fails, the error is cached for the entire process lifecycle; only restarting dsh clears it.
- Single call: Delegation calls are “one-shot” and do not expose a mode for continuing the conversation.
- Session isolation: Existing sessions do not automatically apply newly installed presets; a new session must be created.
- Profile requirement: The
dsh webprofile is required.
Conclusion¶
This plugin provides official integrations for Codex and Claude Code in the DSH ecosystem, suitable for developers who need fine-grained permission controls and parallel processing of different code tools.