Back to home

CouplingArtist

dsh-global-prompt

一个 DeepSeek Harness 可安装插件: 在 Web 设置界面直接编辑用户全局指令文件 ($DSH_HOME/AGENTS.md), 不必再手动打开 .dsh 目录修改 AGENTS.md。

Stars
0
Language
TypeScript
Created
Aug 16, 2026
Updated
Aug 16, 2026

Introduction

dsh-global-prompt

一个 DeepSeek Harness 可安装插件: 在 Web 设置界面直接编辑用户全局指令文件 ($DSH_HOME/AGENTS.md), 不必再手动打开 .dsh 目录修改 AGENTS.md。

alt text

行为

  • 设置对话框新增一个 全局指令 分区页: 多行编辑器 + 保存按钮 + 文件路径显示 + 字符数统计。
  • 文件不存在时显示空编辑器, 首次保存即创建文件。
  • 写入采用 UTF-8 无 BOM 编码。
  • AGENTS.md 文件本身是唯一真源: 设置页与外部编辑读写同一份文件, 无第二份数据。
  • 生效时机遵循系统机制 (触摸驱动刷新): 新会话第一步读到最新内容; 已打开会话在其下一次成功文件工具调用或新一轮时重新读取。
  • 接口仅允许本机回环访问; 请求体上限 1 MiB。

安装

# 在 dsh CLI 所在环境 (仓库检出目录可用 pnpm dsh)
dsh plugin --profile web add E:\path\to\dsh-global-prompt

# 重启 dsh web 使新插件生效
dsh web

打开 http://127.0.0.1:3080 → 设置 → 全局指令。

卸载

# 在 dsh CLI 所在环境 (仓库检出目录可用 pnpm dsh)
dsh plugin --profile web remove dsh-global-prompt

# 重启 dsh web 使卸载插件生效
dsh web

开发

pnpm install
pnpm test         # vitest: store (13) + editor (7)
pnpm typecheck
pnpm build        # lib/index.js (host) + lib/client.js (client bundle)

结构

文件职责
src/store.ts接缝 1: 用户全局指令文件的读写语义 (被单测覆盖)
src/index.tsHost 插件: 注册 GET/PUT /api/global-prompt 路由
src/client/GlobalPromptEditor.tsx接缝 2: 编辑器组件 (被单测覆盖)
src/client/api.ts编辑器的 HTTP 实现 (由安装验证覆盖)
src/client/index.tsxClient 插件: 注册 settings.section 分区
cordis.patch.ymlbundle 层: 插入 global-prompt