dsh-prompt-profile
开发工具 活跃维护

dsh-prompt-profile

BrambleXu/dsh-prompt-profile

Markdown的提示配置文件,支持每轮对话独立选择模型、动态替换参数及恢复对话状态,通过参数替换与状态恢复机制实现灵活复用与精确控制,降低配置复杂度,提升交互流畅性

1
Stars 标星
0
Forks 分支
1
Watchers 关注
0
Open Issues
TypeScript
主要语言
MIT
开源协议
1.5 MB
仓库大小
1 个月前
最后推送
一键安装扩展 / 插件指令
dsh plugin --profile web add github:BrambleXu/dsh-prompt-profile
git clone https://github.com/BrambleXu/dsh-prompt-profile.git
git clone git@github.com:BrambleXu/dsh-prompt-profile.git
README.md main

dsh-prompt-profile

dsh-prompt-profile hero

MIT license Node.js ^22.19 or >=24 TypeScript 5.9 Tests with Vitest

awesome · DSH plugin · development

English | 中文

Reusable Markdown prompt profiles for DeepSeek Harness. A profile can select a provider, model, and reasoning effort for one turn, render command arguments into its body, and restore the previous selection afterward.

Why this exists 💡

Model choice and review instructions are often repeated across sessions. dsh-prompt-profile turns those combinations into small, reusable Markdown profiles that can be invoked for one turn and then leave the Agent's previous model selection intact.

Features ✨

  • Discover profiles from user and project directories, with project profiles taking precedence.
  • Substitute positional arguments into profile bodies with shell-style placeholders.
  • Select a provider, model, and reasoning effort for one turn.
  • Restore the previous Agent selection automatically or opt out per profile.
  • List available profiles and invoke nested profiles by slash-separated names.

Install 📦

dsh plugin --profile demo add ./dsh-prompt-profile

Create a user profile under ~/.dsh/prompt-profiles/ or a project profile under <repo>/.dsh/prompt-profiles/:

---
description: Deep code review
provider: deepseek
model: deepseek-reasoner
reasoningEffort: high
restore: true
---
Review $1 for correctness, regressions, and missing tests. Extra context: ${@:2}

Project profiles override user profiles with the same relative name.

Use 🚀

/prompt-profile list
/prompt-profile review src/index.ts "focus on cancellation"

Nested files use slash-separated names. For example, .dsh/prompt-profiles/review/security.md is review/security.

Supported placeholders:

Placeholder Value
$1, $2, … One positional argument
$@, @$, $ARGUMENTS All arguments
${@:N} Arguments from position N
${@:N:L} L arguments from position N

Frontmatter 🧾

Field Required Meaning
description No Text shown by /prompt-profile list
provider With model Harness provider route
model With provider Provider-owned model ID
reasoningEffort With provider and model Adapter-owned reasoning effort ID
restore No Restore the prior selection after the turn; defaults to true

Omit both provider and model to use the current agent selection.

Configure ⚙️

- id: dsh-prompt-profile
  name: dsh-prompt-profile
  config:
    userDirectory: ~/.dsh/prompt-profiles
    projectDirectory: .dsh/prompt-profiles

Develop 🧑‍💻

pnpm install
pnpm run check

Scope 🎯

Version 0.1 intentionally omits prompt chains, loops, skill injection, subagents, worktrees, and best-of-N orchestration. Those features should be added only when Harness extension points can preserve their lifecycle and durable-session semantics.

License 📄

MIT

Credits 🙏

The core idea comes from pi-prompt-template-model. This first Harness-native release focuses on the smallest useful unit: deterministic discovery, argument substitution, scoped model routing, and restoration.