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:

  1. 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
  1. 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 mode
  • subagent_codex_readonly: Codex read-only mode (inherits user configuration)
  • subagent_claude_code: Claude Code full-access mode
  • subagent_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) unless bypassPermissions is used.
  • Claude full-access mode (subagent_claude_code): Uses bypassPermissions, 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 ~/.codex configuration.
  • Codex full-access mode (subagent_codex): Uses dangerously-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 web profile 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.