Introduction¶
The core philosophy of DeepSeek Harness (DSH) is “everything is a plugin.” When developing web applications based on React and Tailwind, developers often need to switch frequently between code editors, design tools, and the terminal. The dsh-opendesigner plugin provides a local-first visual editor with a constrained tool surface, allowing an Agent or developer to work directly on designs inside the DSH environment.
Plugin Overview¶
This plugin is maintained by aa2246740 and addresses the lack of visual design capabilities in the DSH environment. It allows direct local editing of React and Tailwind components, and saves designs into the project directory.
Core Features¶
- Local visual editing: Supports local editing of React + Tailwind components.
- Path jail: All file operations are restricted to the project root directory to prevent path escapes.
- Destructive write approval: Destructive writes require approval through a trusted host/UI channel. A model-returned
approve: truedoes not count as approval, andautoApprovedoes not relax the path jail restrictions. - Save mechanism: Saving a design writes to
.designer/canvas.json. - Apply to project: Available only when an Agent batch has file diffs.
- Mock mode: Falls back to mock behavior when no API key is present.
Installation and Enabling¶
Ensure the environment meets the following requirements:
- The official
dshmust be available onPATH(if not, you can usenpx @deepseek-ai/dsh) andpnpmmust be installed. - Node.js version must be 22.14 or newer.
Run the installation command:
dsh plugin --profile web add github:aa2246740/dsh-opendesigner
The installation command runs pnpm under $DSH_HOME/profiles/web and writes the profile configuration. After installation, you must restart the Host and then refresh the page. Find the plugin in Host Settings → Plugins and enable it.
Typical Usage¶
- Debug source code via overlay:
# overlay.yml
- insert:
- id: dsh-opendesigner
name: /absolute/path/to/dsh-opendesigner/dist/plugin.js
pnpm dsh web --patch /absolute/path/to/overlay.yml
- Preview a design:
npm install
npm run build
npm test
OPENDESIGNER_PROJECT_ROOT=/absolute/path/to/your-react-app npm run preview
The default project is `examples/programmer-page`; visit `http://127.0.0.1:4173/`.
- Remove the plugin:
dsh plugin --profile web remove dsh-opendesigner
Notes and Use Cases¶
- Installation timing:
dsh plugin addonly writes to the profile; it does not hot-attach the currently running process. - Configuration pitfall:
dsh.bundleis captured at startup. Do not manually write the sameinsertentry in the profile’scordis.patch.yml, otherwise it may be mounted twice. - Feature limitation: The
dsh.client web-shellfeature is currently unavailable. - Security: Do not put API keys into the repository.
This plugin provides secure local design capabilities through path jail and approval channels. For more details, refer to the plugin directory: https://www.skillhub.cn/plugins/aa2246740/dsh-opendesigner or the GitHub repository: https://github.com/aa2246740/dsh-opendesigner