Introduction¶
In DeepSeek Harness (DSH), Agent presets need to be determined before the session starts. Current practices usually involve manually selecting in the Web UI’s preset selector. If you want to achieve the same switch in a new session using a slash command, dsh-gamemode provides an entry point.
Below is an introduction to its capabilities, installation methods, usage, and limitations.
What is it¶
dsh-gamemode is a DSH slash command plugin: /gamemode 1 is used to one-click switch to the “Creative Mode” built into DeepSeek Harness (cordis Agent preset). The maintainer is XCNXNXNX.
It solves a specific problem: switching the current live agent to a target Agent preset and recording this choice before the session has begun.
Core Features¶
dsh-gamemode supports the following commands and recording behaviors:
-
Supports
/gamemode 1or/gamemode creative, switching to Creative mode (cordispreset). -
Supports
/gamemode 0or/gamemode survival, switching to Survival mode (standardpreset). -
Supports
/gamemodeto view the current session preset. -
Performs the same operation as the Web UI preset selector:
recompose live agentto the target preset’sstanding mount. -
Records
agent-preset/selectedso thatresume/forkcan rebuild the same combination. -
Package declares
dsh.bundle, andcordis.patch.ymlautomatically inserts the plugin line.
From the plugin’s behavior, the core actions are:
ctx.agentPresets.recompose(agent.ctx, presetId)
agent.session.append('agent-preset/selected', { agentPreset })
The first sentence re-mounts the current live agent to the target preset’s standing mount; the second sentence persists the selection so that resume / fork can rebuild the same combination.
Installation and Activation¶
In an environment with a profile named web, use the following installation command:
dsh plugin --profile web add dsh-gamemode
If your profile name is not web, you need to replace web in the command with your own profile name.
After installation, the package declarations dsh.bundle and cordis.patch.yml will be automatically inserted into the plugin lines.
Typical Usage¶
First, create or confirm a new session, then execute the switch command before sending the first message.
| Command | Action |
|---|---|
/gamemode 1 (or /gamemode creative) |
Switch to Creative mode (cordis preset) |
/gamemode 0 (or /gamemode survival) |
Switch to Survival mode (standard preset) |
/gamemode |
View current session preset |
Limitations are consistent with the official interface: Agent presets can only be switched when the session has not yet started (there is no turn/start yet); presets are locked after the conversation begins. The reason is that history is generated under the old combination.
Therefore, the typical steps are:
-
Create a new session.
-
Execute
/gamemode 1before sending the first message. -
If you need to switch back to Survival mode, execute
/gamemode 0. -
Use
/gamemodeto view the current session preset.
Applicable Scenarios and Notes¶
Suitable for DSH users who need to switch between standard and cordis before starting a new session. If you are already in a conversation, this plugin cannot change the preset corresponding to the already generated history.
Notes before use:
-
The plugin runs with the current
dshprocess permissions. You should check the source code, dependencies, and license before installing. -
The license is
BSD-3-Clause. -
@deepseek-ai/cordis,@deepseek-ai/dsh-agent-presets, and@deepseek-ai/dsh-commandsinpeerDependenciesare marked asoptional. -
If building locally, the build command is:
bash scripts/build.sh
To install/inject the generated package, you can use the DSH plugin toolchain, for example dev_inject_plugin.
Conclusion¶
The value of dsh-gamemode does not lie in adding a new set of preset systems, but rather in turning the existing preset switching path in DSH into a slash command: before a new session starts, use /gamemode 1 to switch to cordis, use /gamemode 0 to switch to standard, and use /gamemode to view the current selection.
Links:
- GitHub:
https://github.com/XCNXNXNX/dsh-gamemode - Directory page: URL not confirmed, so not listed here.