fff122/dsh-prompt-presets
Local reusable prompt presets for DeepSeek Harness.
이것은 DeepSeek Harness(DSH) 플러그인입니다. 이 사이트는 GitHub README, 설치 정보, 유지보수 상태, 공개 보안 시그널을 모아 보여줍니다.
dsh-prompt-presets
A local prompt preset plugin for DeepSeek Harness. It stores reusable prompt templates, supports {{variable}} placeholders, and renders a finished prompt when the Agent supplies values.
Preset data stays in the current working directory under .dsh/prompt-presets/presets.json. The plugin does not send templates or variables over the network.
Quick install
Requirements
You need Node.js 22 or newer, pnpm, and a DeepSeek Harness installation that supports JavaScript or TypeScript plugins.
Step 1: Download and build
Copy and run:
git clone https://github.com/fff122/dsh-prompt-presets.git
cd dsh-prompt-presets
pnpm install
pnpm build
Step 2: Create the plugin configuration
Run this command from the repository root:
cat > prompt-presets.patch.yml <<EOF
- insert:
- id: dsh-prompt-presets
name: '$PWD/dist/src/index.js'
EOF
The plugin path is absolute because the Harness patch loader requires an absolute path.
Step 3: Start Harness with the plugin
If Harness is installed as a command:
dsh web --patch "$PWD/prompt-presets.patch.yml"
Otherwise, run:
npx @deepseek-ai/dsh web --patch "$PWD/prompt-presets.patch.yml"
Verify the installation
Ask the Agent:
保存一个名为 meeting-summary 的提示词模板:总结 {{topic}},面向 {{audience}},语气保持简洁。标签用 work。
Then ask:
应用 meeting-summary,topic 是产品发布会,audience 是工程团队。
If the plugin is loaded, the Agent can use preset_save and preset_apply to save and render the template.
Available tools
| Tool | Purpose |
|---|---|
preset_save | Save a new preset or update an existing preset with the same name. |
preset_list | List saved presets, optionally filtered by tags. |
preset_apply | Replace {{variable}} placeholders with supplied values. |
preset_delete | Delete a preset by name. |
Template behavior
Variable names use letters, digits, and underscores, and must start with a letter or underscore. Spaces inside braces are allowed, so {{topic}} and {{ topic }} refer to the same variable. Variables are returned in first-seen order.
If a variable is missing, preset_apply leaves its placeholder in the rendered text and lists the name in missing. This makes it possible to review an incomplete prompt without losing the original placeholder.
Strings are inserted as-is. Numbers and booleans use their text form, while arrays and objects are inserted as compact JSON.
Updating the plugin
From the cloned repository:
git pull
pnpm install
pnpm build
Restart Harness with the same patch command after rebuilding.
Development
Run the complete package quality gate from the repository root:
pnpm run format:check
pnpm run typecheck
pnpm run test
pnpm run build
The implementation is split into small modules:
src/
index.ts # Harness entry point and tool registration
preset-schema.ts # Preset types, validation, and template rendering
preset-store.ts # Local persistence, filtering, updating, and deletion
test/
index.test.ts
mount.test.ts
preset-schema.test.ts
preset-store.test.ts
For the plugin model and patch overlay format, see the official DeepSeek Harness plugin guide.
보안 및 설치 증거
이 점수는 공개 저장소 메타데이터와 이 사이트에 등록된 설치 증거에만 기반하며, 코드 보안 감사와 다릅니다.
공개 플러그인 카탈로그에서 왔으며, 공개 GitHub 저장소로 연결됩니다.
저장소가 MIT 라이선스를 선언했습니다.
최근 180일 내 코드 업데이트가 있습니다.
재현 가능한 정확한 설치 메타데이터가 아직 등록되지 않았습니다. 저장소 설명에 따라 직접 확인하세요.
검사한 패키지 메타데이터에 설치 라이프사이클 스크립트가 선언되지 않았습니다.