Introduction¶
A common dilemma when running agent coding sessions is this: running the strongest model at every step yields good results but is costly and slow; using cheap models throughout fails when handling hard tasks like planning and architecture design. Manually switching models between sessions is also troublesome and interrupts the train of thought.
oh-my-dsh solves this problem: it performs model stratification within a single DeepSeek Harness (DSH) session. Use a strong model for planning and a cheap model for daily execution. Vision understanding and image generation each take their own channel. No manual switching of sessions or editing of YAML is required throughout. Below is an introduction to its features, installation, and typical usage.
What is it¶
oh-my-dsh is a DSH plugin maintained by llmpolska, licensed under MIT, currently version 0.1.0. One-sentence positioning: A hierarchical model routing plugin for DeepSeek Harness. It splits every session into “think” and “build” tiers, automatically delegates the vision model to describe images in the background, and uses a regular chat model to generate images. All is configured via the settings page.
The plugin is compatible with all DSH surfaces: DSH Desktop, the standalone web profile (dsh web), and the terminal (dsh --profile tui).
Core Features¶
Think/Build Stratification¶
In auto mode, the plan mode runs the strong model (think tier), while daily execution runs the cheap model (build tier). You can override by session using /omd strong|cheap. think/build are also available as aliases.
Visual Delegation¶
Paste an image (e.g., a website screenshot) and say “build this frontend”. The flow is as follows:
- The message appears in the chat immediately, with the image preserved as is.
- The vision model describes the image in the background. Descriptions are cached by SHA256; the same image won’t be called repeatedly.
- The current turn is still executed by the work tier (think/build): its first request waits for the description to complete, then answers based on the description. The vision model never executes turns; the session model never switches.
- In subsequent turns, the image part in history is replaced by the description, so pure text models won’t error due to not supporting image content.
Image Generation¶
Provides the omd_image tool and /omd image <prompt> command to generate images using the configured chat model, saving them to ./oh-my-dsh-images/. The image generation provider is taken from registered providers. The plugin infers the base URL and reuses that provider’s API key.
High-risk Operation Protection & Auto-upgrade on Failure¶
During execution in the build tier, the plugin rejects rm -rf, sudo, force pushing, and credential/key file editing until the session upgrades to the think tier. Additionally, recurring model step errors trigger a temporary upgrade to the think tier.
Advisor, Reviewer, and Sub-agent Stratification¶
omd_advisor and omd_review are used for on-demand consultation with the think tier, suitable for asking once before risk decisions or high-risk merges. omd_worker dispatches bounded task packages to sub-agents in the specified tier.
System Prompt Sections & Settings Page¶
A system prompt is injected into each session, describing the stratification structure, /omd command mappings, and routing rules. The configuration entry point is the “oh my dsh” tab in the DSH Desktop settings, where you can configure providers, models, inference intensity, guard, and upgrade parameters, including routing mode, models for think/build/vision tiers, and image generation provider/model/size/output directory.
Installation and Enablement¶
Requirements: DeepSeek Harness Desktop or dsh CLI, plus a network connection. The dsh plugin command manages pnpm itself, so no extra installation is needed.
Install it into every surface you use (each profile is independent):
# DSH Desktop Desktop app (settings page is in this profile)
dsh plugin --profile desktop add github:llmpolska/oh-my-dsh#v0.1.0
# Standalone web app (dsh web)
dsh plugin --profile web add github:llmpolska/oh-my-dsh#v0.1.0
# Terminal (TUI)
dsh plugin --profile tui add github:llmpolska/oh-my-dsh#v0.1.0
The #v0.1.0 suffix fixes the release tag. This package has no build steps (no prepare script), pnpm installs directly, no allowBuilds configuration needed; the install command also automatically activates the plugin as a profile layer.
After installation, a full restart is required: quit DSH Desktop with Cmd+Q and restart, or restart the dsh process. Refreshing the window is not enough; the plugin’s host part loads when the profile starts.
Another common pitfall: only new sessions will receive the plugin presets; existing sessions retain their original presets. Therefore, you must create a new session to use the /omd command and omd_* tools.
Offline or Local Development Installation¶
First pack, then install:
cd oh-my-dsh
pnpm pack # Generates oh-my-dsh-0.1.0.tgz
dsh plugin --profile <profile> add ./oh-my-dsh-0.1.0.tgz
Local path installation mounts the repository as a link; changes to lib/ take effect after restarting the app, suitable for development and debugging.
Typical Usage¶
Common slash commands are as follows:
/omd status
/omd strong | cheap | auto | off # Override session tier (think/build aliases also available)
/omd plan # auto + plan mode + think header
/omd models # List registered providers and models
/omd set <think|build|vision> <provider> <model> [off|high|max]
/omd subagent <inherit|cheap|strong>
/omd advisor <question> # Consult think tier once
/omd review <focus> # Think tier review
/omd image <prompt> # Generate image (saved to ./oh-my-dsh-images)
There are seven tools exposed to the agent: omd_status, omd_route, omd_configure, omd_advisor, omd_review, omd_worker, omd_image.
A reproducible example: Paste a website screenshot and say “build this frontend”. The vision model generates a description in the background, the work tier answers based on the description, and the session model itself does not switch.
Support Status by Surface¶
| Surface | Settings UI | /omd & omd_* Tools | Visual Description | Image Generation |
|---|---|---|---|---|
| DSH Desktop | Supported | Supported | Supported | Supported |
dsh web (web profile) |
Supported | Supported | Supported | Supported |
| TUI / headless | No settings UI | Supported (agent plane process-level activation) | Not Supported (no image prompts) | Supported |
The plugin is a single codebase: the settings page belongs to the web platform’s client part. Endpoints and visual wrappers are mounted on surfaces with a web server. The agent plane (roles, tools, guard, history cleaning) is activated via preset on the web surface, and process-level activated in TUI.
Use Cases and Notes¶
Target Audience: Developers who want to run planning and execution on different tiers of models in DSH; people who frequently paste screenshots for agents to replicate frontends; people who want to generate images on the fly in coding sessions.
Notes before use:
- The plugin runs with the current dsh process’s permissions. It is recommended to check the source code and license before installing any third-party plugin. This plugin is MIT licensed, and the source code is available on GitHub.
- After installation, you must completely restart DSH Desktop or the
dshprocess; simply refreshing the window is insufficient. - You must create a new session to obtain the
/omdcommand andomd_*tools; old sessions will not work. - The TUI surface has no settings UI and no visual description (it does not process image prompts), but the
/omdcommand and image generation are available. - The plugin directory page cited in this article comes from the independent community site skillhub.cn and has no official affiliation with DeepSeek / Hypersphere.
Conclusion¶
oh-my-dsh turns “when to use a strong model vs. a cheap model” into a configuration: the think tier handles planning and hard debugging, the build tier handles daily execution, visual delegation and image generation each take their own channel, and high-risk operations are blocked in the build tier. For users who want to reduce DSH session costs without sacrificing planning quality, it is worth installing and trying.
- Directory page: https://www.skillhub.cn/plugins/llmpolska/oh-my-dsh
- GitHub: https://github.com/llmpolska/oh-my-dsh