In the plugin ecosystem of DeepSeek Harness (DSH), subagent tasks typically use a one-shot delegation model. If you need to maintain long-term context with Codex, or want DSH to act only as a passthrough layer without intervening in intermediate reasoning, dsh-subagent-codex-plus offers a direct-connection solution based on a “true gateway.”
Plugin Positioning¶
This plugin is maintained by february2015 and is derived from the official @deepseek-ai/dsh-subagent-codex. It retains the official one-click delegation capability and adds a persistent direct-connection gateway layer on top of it. In this mode, DSH no longer runs an intermediate model, but instead passes byte streams directly between the user and the Codex session.
Similar to its sibling plugin dsh-subagent-pi, the two share the same underlying architecture and differ only in their direct connection targets (Codex versus Pi), so their feature mappings correspond one to one.
Core Features¶
1. True Gateway Direct Connection¶
Use a local command to bind the current DSH session 1:1 to a persistent Codex thread.
* Command: /codex-lock
* Feature: DSH acts only as a passthrough layer. After binding, input goes directly to Codex.
* Persistence: After closing or restarting DSH, reopening the session automatically reconnects to the same Codex thread without manual intervention.
* Limitation: A single Codex thread can be bound to only one DSH session.
2. Continuous Conversation: Queue and Direct Insertion¶
- Automatic Queuing: When Codex is processing, new messages are automatically added to a queue.
- Native Management: Queued messages immediately appear in the native editor’s queue strip, supporting viewing, editing, deletion, and steering.
- Execution Order: After the current turn completes, queued messages are executed in order.
- Direct Insertion: Use the floating panel to insert a message directly, prioritizing it for the next turn.
3. Real-Time Intermediate Output¶
Codex’s execution progress (reasoning summaries, message deltas, tool calls, and status events) is displayed in the DSH session in near real time, not just the final answer. By default, the output is read-only and does not enter DSH’s model context.
* Heartbeat Mechanism: Long-running tool calls display a heartbeat (for example, Executing <tool>), and show elapsed runtime when it exceeds 1 minute, preventing the interface from appearing frozen.
4. Status Display¶
After successful binding, the session header shows a CDX-xxxx indicator (including a status color dot and a thread ID prefix), and the editor dock bar displays “Codex Direct · …”. When unbound, the interface remains clean.
5. Image/Attachment Passthrough¶
Supports directly pasting or uploading images to Codex. If the Codex model itself has vision capabilities, it processes them normally. In fallback cases, the TeamAI skill ocgw-vision handles them.
6. Coexistence of Delegation and Gateway¶
A single DSH conversation can contain multiple model-triggered “one-shot delegation” runs, as well as at most one user-attached gateway session. You can freely switch between them.
Installation and Enablement¶
After confirming the path is correct, use the following commands to install the plugin and start the corresponding Profile:
dsh plugin --profile <name> add /path/to/dsh-subagent-codex-plus
dsh --profile <name>
Typical Usage¶
- Open any DSH session (the current directory is the project directory).
- Enter
/codex-lock. After successful binding, the header shows theCDX-xxxxindicator, and input from the text box is sent directly to Codex. - While Codex is processing, new messages automatically enter the queue and appear in the native message queue strip, supporting editing, deletion, and steering. They are executed in order after the current turn ends.
- Enter
/codex-unlockto disconnect. The Codex thread is retained and can be re-bound at any time.
Applicable Scenarios and Notes¶
- Applicable Scenarios: Suitable for developers who need to maintain long conversation context with Codex and require fine-grained control over the conversation flow (via queue steering).
- Version Dependency: The plugin depends on the DeepSeek Harness client runtime and connection components (
dsh-client-*). - Permissions: The plugin runs with the permissions of the current DSH process. It is recommended to review the source code and license before installation.
Summary¶
dsh-subagent-codex-plus provides DSH users with the ability to establish persistent, controllable conversations with Codex. If you are accustomed to Pi’s direct-connection experience but need to use the Codex model, or if you need DSH to act as a pure passthrough gateway, this plugin offers a direct solution.