dsh-custom-mode 0.1.6-alpha.2 → 1.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/README.md +33 -31
  2. package/package.json +12 -3
package/README.md CHANGED
@@ -1,41 +1,43 @@
1
1
  # dsh-custom-mode
2
2
 
3
- The **settings-page half** of [dsh-custom-mode](https://github.com/BOWLUNA/dsh-custom-mode): a Web UI
4
- for a [DeepSeek Harness](https://github.com/deepseek-ai/deepseek-harness) (dsh) agent preset whose
5
- **system prompt is a plain file you can edit, taking effect on the next model step** no restart, no
6
- new session.
3
+ The **settings-page half** of [dsh-custom-mode](https://github.com/BOWLUNA/dsh-custom-mode) a Web UI for
4
+ [DeepSeek Harness](https://github.com/deepseek-ai/deepseek-harness) (dsh) agent modes: choose a mode's base
5
+ composition, toggle the plugin rows it mounts, and edit its **system prompt**, which is a plain file the
6
+ agent loop re-reads before every model step — **a save applies on the next step, with no restart and no new
7
+ session**. Several modes ("assistants") live side by side, each with its own prompt.
7
8
 
8
- ![Settings Custom mode](https://raw.githubusercontent.com/BOWLUNA/dsh-custom-mode/main/docs/images/01-mode-switch.png)
9
+ Searched for as: custom mode · custom prompt · system-prompt editor · multi-mode / several assistants ·
10
+ 自定义模式 · 自定义提示词 · 多助手/多模式.
9
11
 
10
- ## What is in this package, and what is not
12
+ ![Assistant manager](https://raw.githubusercontent.com/BOWLUNA/dsh-custom-mode/main/docs/images/05-assistant-manager.png)
11
13
 
12
- This package is **only the editor**: one private HTTP route plus the browser half that renders the
13
- settings section (base-mode picker, per-row plugin switches, prompt editor, mode rename).
14
+ ![Mode name and base mode](https://raw.githubusercontent.com/BOWLUNA/dsh-custom-mode/main/docs/images/01-mode-switch.png)
14
15
 
15
- The **agent preset itself is not an npm package** — it is a directory of files
16
- (`preset/agent.cordis.yml`, `prompt-reader.mjs`, `prompt-tool.mjs`, `prompt.md`) that dsh discovers
17
- under `$DSH_HOME/.agent-presets/<id>/`. It comes from the GitHub repository.
16
+ ![Plugin switches](https://raw.githubusercontent.com/BOWLUNA/dsh-custom-mode/main/docs/images/02-plugin-switches.png)
18
17
 
19
- So:
18
+ ## Install
20
19
 
21
- - **First-time install** → clone the repository and run `./install.sh`. It copies the preset *and*
22
- installs this package into your profile.
23
- - **Already have the preset, want to update the editor** → install this package directly:
20
+ ```sh
21
+ dsh plugin --profile web add dsh-custom-mode
22
+ ```
24
23
 
25
- ```sh
26
- dsh plugin --profile web add dsh-custom-mode
27
- ```
24
+ **That one command is the whole install.** The package carries the agent preset, and the host half writes it
25
+ into `$DSH_HOME/.agent-presets/` on first activation — filling in only what is missing, so a `prompt.md` you
26
+ wrote yourself is never overwritten.
28
27
 
29
- - The mode is **web-profile only**: the `agent-presets` service, which mounts presets at all, ships
30
- with dsh's `web` profile. In `tui` / `headless` this package activates but registers nothing.
28
+ To keep the source around as well, clone the repository and run `./install.sh` instead; it does the same two
29
+ things explicitly, and `./uninstall.sh` undoes them (keeping your prompt unless you pass `--purge`).
30
+
31
+ The mode is **web-profile only**: `agent-presets`, the service that mounts presets at all, ships with dsh's
32
+ `web` profile. In `tui` / `headless` this package activates but registers nothing.
31
33
 
32
34
  ## Requirements
33
35
 
34
- - `@deepseek-ai/dsh` `>=0.1.2-alpha.1` (declared as an *optional* peer: this package never imports it,
35
- it only reads the host services dsh injects)
36
- - The version mirrors **the DSH release this plugin was adapted to** (`0.1.6-alpha.1`). It is not
37
- bumped per change; see the repository README's "Versioning" section.
38
- - Source is published as-is: **no build step, no dependencies** beyond Node's standard library.
36
+ - **dsh `>=0.1.6-alpha.1`** declared in `engines.dsh` and as an *optional* peer range. This package never
37
+ imports `@deepseek-ai/dsh`; it only reads the host services dsh injects.
38
+ - **No build step, no dependencies**: the source is published as-is and uses only Node's standard library.
39
+ - The package version is its own line (`1.0.0`, `1.0.1`, …). Which dsh it supports is declared in
40
+ `engines.dsh`; see the repository README's "Versioning" section.
39
41
 
40
42
  ## Documentation
41
43
 
@@ -45,18 +47,18 @@ The full documentation is bilingual in the repository:
45
47
  [中文说明](https://github.com/BOWLUNA/dsh-custom-mode/blob/main/README.zh.md)
46
48
  - [Troubleshooting](https://github.com/BOWLUNA/dsh-custom-mode/blob/main/docs/TROUBLESHOOTING.md) —
47
49
  every failure that was actually reproduced, with symptoms, cause and a way out
48
- - [Measured behaviour](https://github.com/BOWLUNA/dsh-custom-mode/blob/main/docs/%E5%AE%9E%E6%B5%8B%E8%AE%B0%E5%BD%95.md) —
49
- the commands and raw output behind every claim
50
- - [Architecture](https://github.com/BOWLUNA/dsh-custom-mode/blob/main/docs/ARCHITECTURE.md) — why
51
- this had to be two artifacts, and how the host APIs it depends on can break
50
+ - [Measurements](https://github.com/BOWLUNA/dsh-custom-mode/blob/main/docs/MEASUREMENTS.md) — the commands
51
+ and raw output behind every claim
52
+ - [Architecture](https://github.com/BOWLUNA/dsh-custom-mode/blob/main/docs/ARCHITECTURE.md) — why this had
53
+ to be two artifacts, and which host APIs it depends on
52
54
 
53
55
  ## Security note
54
56
 
55
57
  The route this package serves runs the platform's own browser-trust check
56
58
  (`ctx.connection.requestRejection`) before anything else and **fails closed** when that service is
57
59
  unavailable. Before that check existed, the route could be read and written unauthenticated — see
58
- [SECURITY.md](https://github.com/BOWLUNA/dsh-custom-mode/blob/main/SECURITY.md) for the affected
59
- range and the mitigation.
60
+ [SECURITY.md](https://github.com/BOWLUNA/dsh-custom-mode/blob/main/SECURITY.md) for the affected range and
61
+ the mitigation.
60
62
 
61
63
  ## License
62
64
 
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "dsh-custom-mode",
3
- "version": "0.1.6-alpha.2",
4
- "description": "Settings page for the dsh-custom-mode agent preset: base-mode switching, per-row plugin switches, an editable system prompt, and mode renaming. Follows the DSH version.",
3
+ "version": "1.0.1",
4
+ "description": "Custom modes and custom prompts for DeepSeek Harness (dsh): edit a mode's system prompt on the settings page (it takes effect on the next model step), choose its base mode, switch plugins row by row, and keep several assistants side by side.",
5
5
  "license": "MIT",
6
6
  "type": "module",
7
7
  "main": "./index.mjs",
@@ -22,9 +22,18 @@
22
22
  "keywords": [
23
23
  "dsh",
24
24
  "deepseek-harness",
25
+ "dsh-plugin",
26
+ "cordis",
25
27
  "agent-preset",
28
+ "agent-mode",
29
+ "custom-mode",
30
+ "multi-mode",
31
+ "assistant",
26
32
  "system-prompt",
27
- "plugin"
33
+ "custom-prompt",
34
+ "prompt-editor",
35
+ "prompt-engineering",
36
+ "persona"
28
37
  ],
29
38
  "dsh": {
30
39
  "bundle": {