ningbainb/deepseek-harness-desktop--packages-dsh-personal-prompt491

@ningbainb/dsh-personal-prompt

Owner-safe Personal Prompt profiles for DeepSeek Harness using the official SystemPrompt section and variable contracts.

包名
@ningbainb/dsh-personal-prompt
版本
0.1.0
许可证
BSD-3-Clause
最近更新
2026年9月12日

安装

$npx -p @deepseek-ai/dsh dsh plugin --profile web add github:ningbainb/deepseek-harness-desktop#f30137e7d72942d2cd851a0fa0713f596ed06ad6&path:packages/dsh-personal-prompt

@ningbainb/dsh-personal-prompt

English | 中文

Owner-safe Personal Prompt profiles for DeepSeek Harness.

Manage preferences under Personal preferences / Response preferences in the Dock. Create, edit and save from one action bar; priority settings and model-visible previews expand on demand. Global/workspace configuration and storage formats are unchanged.

The package stores a versioned personal-prompt settings namespace and contributes one official SystemPrompt.section plus the matching SystemPrompt.variable. Effective profiles resolve in fixed order: session > workspace > global. The first UI exposes global and workspace profiles; session scope remains in the schema for forward compatibility.

Prompt content is user data, not a tool or policy definition. It is wrapped in a `` boundary, capped at 8,000 model-visible characters, and never written to diagnostics. A missing or corrupt settings value, unknown session scope, unavailable user-scope service, or non-local session owner degrades to no Personal Prompt while the agent continues normally.

The persisted settings value follows the schema in src/core/config.ts. For example, a global profile is represented as:

{
  "version": 1,
  "enabled": true,
  "activeProfileId": "writing",
  "profiles": [
    {
      "id": "writing",
      "name": "Writing preference",
      "content": "Answer in concise English.",
      "enabled": true,
      "scope": "global",
      "updatedAt": 1788796800000
    }
  ]
}

Workspace profiles require workspaceId; session profiles require sessionId. An omitted version is accepted only while reading the legacy settings shape and is normalized to version 1 before use. Persistence uses strict version 1 validation. Resolution first chooses the most specific matching scope, then the active profile in that scope when present, otherwise the newest enabled profile with a stable ID tie-break. A language or style preference is model context, not a guarantee that the selected Provider will follow it.