DreamsTOF/dsh-prompt-customizer ↗★ 0
dsh-prompt-customizer
System-prompt & tool customizer for DeepSeek Harness with a settings-panel UI: block / replace / inject prompt sections by name, and hide tools from the model catalog by exclude/include. Config lives in the dsh settings document (namespace prompt-customizer).
安装
$
npx -p @deepseek-ai/dsh dsh plugin --profile web add github:DreamsTOF/dsh-prompt-customizer说明文档
阅读完整 README ↗Usage
Prompt sections tab
Each row shows a prompt section with:
- A checkbox to block/unblock it.
- A replace button to edit its text (the original text is pre-filled).
- ↑/↓ arrows and a drag handle to reorder it.
- The
#Nbadge shows the section's virtual order (0-based position).
The 注入新段 (Inject section) box at the bottom adds a brand-new section by name, order, and text.
Tools tab
Toggle tools to hide them (blacklist), or switch to whitelist mode to keep only the checked tools.
Presets tab
- Save current as preset — capture the current sections/tools customization.
- Apply — activate a preset (overrides same-name sections, adds preset-only sections, disables current sections outside the preset).
- Export — download the preset as JSON.
- Import — load a preset JSON file (same-name presets are skipped).
Configuration
The plugin stores its config in the dsh settings document under the prompt-customizer namespace (~/.dsh/settings.yaml). You can edit it directly:
prompt-customizer:
# Block these prompt sections by name.
sections:
- plugin:some-plugin
# Replace a section's text by name (original order kept).
replace:
system: 'You are a helpful coding assistant.'
# Inject / override sections (name + order + text).
inject:
- name: tool:read
order: 0
text: ''
# Tool catalog filtering.
tools:
exclude: []
include: []
| Field | Type | Description |
|---|---|---|
sections | string[] | Prompt section names to block. |
replace | Record | Replacement text per section name. |
inject | {name, order, text}[] | Sections to inject or override (order controls splice position). |
tools.exclude | string[] | Tool names to hide. |
tools.include | string[] | When non-empty, keep only these tools (wins over exclude). |