@xth26/dsh-plan-build-mode 0.2.0 → 0.2.2
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.
- package/README.md +26 -1
- package/README.zh.md +26 -1
- package/lib/index.d.ts +2 -0
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +30 -0
- package/lib/index.js.map +1 -1
- package/lib/types.d.ts +8 -0
- package/lib/types.d.ts.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -66,15 +66,37 @@ pnpm link --global @xth26/dsh-plan-build-mode
|
|
|
66
66
|
Then start DSH with that profile. The `dsh.bundle.patch` field in the plugin's
|
|
67
67
|
`package.json` makes the patch apply automatically.
|
|
68
68
|
|
|
69
|
+
## Updating
|
|
70
|
+
|
|
71
|
+
For `0.x` versions, the semver range `^0.1.0` only matches `0.1.x` and will **never** auto-update to `0.2.0`. Always bump the declaration explicitly and restart the DSH process:
|
|
72
|
+
|
|
73
|
+
```bash
|
|
74
|
+
# Bump the installed version in the target profile
|
|
75
|
+
# (run this outside a sandboxed agent session; the profile directory is not writable from DSH)
|
|
76
|
+
dsh plugin --profile dsh-tui add @xth26/dsh-plan-build-mode@0.2.2
|
|
77
|
+
|
|
78
|
+
# Restart the DSH process that uses that profile
|
|
79
|
+
# (old Node process still holds the previous plugin code in memory)
|
|
80
|
+
Stop-Process -Name dsh -Force # PowerShell
|
|
81
|
+
# or: taskkill /IM dsh.exe /F # CMD
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
Then start `dsh web` or `dsh tui` again. To always pull the latest published version:
|
|
85
|
+
|
|
86
|
+
```bash
|
|
87
|
+
dsh plugin --profile dsh-tui add @xth26/dsh-plan-build-mode@latest
|
|
88
|
+
```
|
|
89
|
+
|
|
69
90
|
## Usage
|
|
70
91
|
|
|
71
|
-
| Command | Effect |
|
|
92
|
+
| Command / Gesture | Effect |
|
|
72
93
|
|---|---|
|
|
73
94
|
| `/plan-build` | Toggle between Plan and Build modes |
|
|
74
95
|
| `/plan-build status` | Show the current mode |
|
|
75
96
|
| `/plan-build switch plan` | Enter Plan mode (read-only) |
|
|
76
97
|
| `/plan-build switch build` | Enter Build mode (writable) |
|
|
77
98
|
| `/plan-build switch` | Same as `/plan-build`; toggles between modes |
|
|
99
|
+
| `ctrl+shift+b` (dsh-tui only) | Toggle between Plan and Build modes; configurable via `tuiShortcut` |
|
|
78
100
|
|
|
79
101
|
## Configuration
|
|
80
102
|
|
|
@@ -86,8 +108,11 @@ Then start DSH with that profile. The `dsh.bundle.patch` field in the plugin's
|
|
|
86
108
|
buildSandbox: workspace-write
|
|
87
109
|
denyWriteTools: true
|
|
88
110
|
section: true
|
|
111
|
+
tuiShortcut: ctrl+shift+b
|
|
89
112
|
```
|
|
90
113
|
|
|
114
|
+
`planSandbox` and `buildSandbox` must differ. `tuiShortcut` is ignored by `dsh web`; set it to an empty string to disable the TUI shortcut.
|
|
115
|
+
|
|
91
116
|
## Plan mode: command-line Python for inspection
|
|
92
117
|
|
|
93
118
|
While Plan mode is read-only and blocks `write`/`edit` tools, it is **encouraged** to run short, read-only command-line Python snippets to inspect data and validate assumptions. For example:
|
package/README.zh.md
CHANGED
|
@@ -63,15 +63,37 @@ pnpm link --global @xth26/dsh-plan-build-mode
|
|
|
63
63
|
|
|
64
64
|
然后启动 DSH。插件 `package.json` 里的 `dsh.bundle.patch` 会自动生效。
|
|
65
65
|
|
|
66
|
+
## 更新
|
|
67
|
+
|
|
68
|
+
对于 `0.x` 版本,semver 范围 `^0.1.0` 只会匹配 `0.1.x`,**永远不会**自动更新到 `0.2.0`。升级时必须显式提升声明并重启 DSH 进程:
|
|
69
|
+
|
|
70
|
+
```bash
|
|
71
|
+
# 在目标 profile 中提升已安装版本
|
|
72
|
+
# (这条命令需要在非沙箱的终端里执行;DSH agent 无法写入 profile 目录)
|
|
73
|
+
dsh plugin --profile dsh-tui add @xth26/dsh-plan-build-mode@0.2.2
|
|
74
|
+
|
|
75
|
+
# 重启使用该 profile 的 DSH 进程
|
|
76
|
+
# (旧的 Node 进程仍缓存着旧插件代码)
|
|
77
|
+
Stop-Process -Name dsh -Force # PowerShell
|
|
78
|
+
# 或: taskkill /IM dsh.exe /F # CMD
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
然后重新启动 `dsh web` 或 `dsh tui`。如果想始终安装最新发布版本:
|
|
82
|
+
|
|
83
|
+
```bash
|
|
84
|
+
dsh plugin --profile dsh-tui add @xth26/dsh-plan-build-mode@latest
|
|
85
|
+
```
|
|
86
|
+
|
|
66
87
|
## 使用
|
|
67
88
|
|
|
68
|
-
| 命令 | 效果 |
|
|
89
|
+
| 命令 / 快捷键 | 效果 |
|
|
69
90
|
|---|---|
|
|
70
91
|
| `/plan-build` | 在 Plan 与 Build 模式之间切换 |
|
|
71
92
|
| `/plan-build status` | 显示当前模式 |
|
|
72
93
|
| `/plan-build switch plan` | 进入 Plan 模式(只读) |
|
|
73
94
|
| `/plan-build switch build` | 进入 Build 模式(可写) |
|
|
74
95
|
| `/plan-build switch` | 同 `/plan-build`,切换当前模式 |
|
|
96
|
+
| `ctrl+shift+b`(仅 dsh-tui) | 在 Plan 与 Build 模式之间切换;可通过 `tuiShortcut` 配置 |
|
|
75
97
|
|
|
76
98
|
## 配置
|
|
77
99
|
|
|
@@ -83,8 +105,11 @@ pnpm link --global @xth26/dsh-plan-build-mode
|
|
|
83
105
|
buildSandbox: workspace-write
|
|
84
106
|
denyWriteTools: true
|
|
85
107
|
section: true
|
|
108
|
+
tuiShortcut: ctrl+shift+b
|
|
86
109
|
```
|
|
87
110
|
|
|
111
|
+
`planSandbox` 和 `buildSandbox` 必须不同。`tuiShortcut` 对 `dsh web` 无效;留空字符串可禁用 dsh-tui 的快捷键。
|
|
112
|
+
|
|
88
113
|
## Plan 模式:命令行 Python 做数据检查
|
|
89
114
|
|
|
90
115
|
Plan 模式只读并拦截 `write`/`edit` 工具,但**鼓励**在命令行里跑简短、只读的 Python 片段来读数据和验证假设。例如:
|
package/lib/index.d.ts
CHANGED
|
@@ -26,11 +26,13 @@ export declare const Config: z<Schemastery.ObjectS<{
|
|
|
26
26
|
buildSandbox: z<"read-only" | "workspace-write" | "danger-full-access", "read-only" | "workspace-write" | "danger-full-access">;
|
|
27
27
|
denyWriteTools: z<boolean, boolean>;
|
|
28
28
|
section: z<boolean, boolean>;
|
|
29
|
+
tuiShortcut: z<string, string>;
|
|
29
30
|
}>, Schemastery.ObjectT<{
|
|
30
31
|
planSandbox: z<"read-only" | "workspace-write" | "danger-full-access", "read-only" | "workspace-write" | "danger-full-access">;
|
|
31
32
|
buildSandbox: z<"read-only" | "workspace-write" | "danger-full-access", "read-only" | "workspace-write" | "danger-full-access">;
|
|
32
33
|
denyWriteTools: z<boolean, boolean>;
|
|
33
34
|
section: z<boolean, boolean>;
|
|
35
|
+
tuiShortcut: z<string, string>;
|
|
34
36
|
}>>;
|
|
35
37
|
/**
|
|
36
38
|
* Plugin entry point.
|
package/lib/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAClD,OAAO,CAAC,MAAM,0BAA0B,CAAA;AAmBxC,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAA;AAErD,0BAA0B;AAC1B,eAAO,MAAM,IAAI,wBAAwB,CAAA;AACzC,8CAA8C;AAC9C,eAAO,MAAM,MAAM,8CAA+C,CAAA;AAClE,4BAA4B;AAC5B,eAAO,MAAM,MAAM
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAClD,OAAO,CAAC,MAAM,0BAA0B,CAAA;AAmBxC,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAA;AAErD,0BAA0B;AAC1B,eAAO,MAAM,IAAI,wBAAwB,CAAA;AACzC,8CAA8C;AAC9C,eAAO,MAAM,MAAM,8CAA+C,CAAA;AAClE,4BAA4B;AAC5B,eAAO,MAAM,MAAM;;;;;;;;;;;;GAcjB,CAAA;AAEF;;;;GAIG;AACH,wBAAgB,KAAK,CAAC,GAAG,EAAE,OAAO,EAAE,MAAM,GAAE,mBAAwB,GAAG,IAAI,CAyI1E"}
|
package/lib/index.js
CHANGED
|
@@ -33,6 +33,7 @@ export const Config = z.object({
|
|
|
33
33
|
]).required(false),
|
|
34
34
|
denyWriteTools: z.boolean().default(true),
|
|
35
35
|
section: z.boolean().default(true),
|
|
36
|
+
tuiShortcut: z.string().default('ctrl+shift+b'),
|
|
36
37
|
});
|
|
37
38
|
/**
|
|
38
39
|
* Plugin entry point.
|
|
@@ -47,6 +48,7 @@ export function apply(ctx, config = {}) {
|
|
|
47
48
|
}
|
|
48
49
|
const denyWriteTools = config.denyWriteTools !== false;
|
|
49
50
|
const enableSection = config.section !== false;
|
|
51
|
+
const tuiShortcut = config.tuiShortcut ?? 'ctrl+shift+b';
|
|
50
52
|
ctx.effect(() => {
|
|
51
53
|
const disposers = [];
|
|
52
54
|
// Align existing sessions on load (resumed sessions may already have
|
|
@@ -126,6 +128,34 @@ export function apply(ctx, config = {}) {
|
|
|
126
128
|
},
|
|
127
129
|
}));
|
|
128
130
|
});
|
|
131
|
+
// TUI-only keyboard shortcut that toggles Plan/Build mode. It is ignored
|
|
132
|
+
// by `dsh web`; it only registers when dsh-tui's shortcut registry is
|
|
133
|
+
// composed, and it skips registration when the configured combo is blank.
|
|
134
|
+
if (tuiShortcut.trim() !== '') {
|
|
135
|
+
const tuiShortcuts = ctx.get('tuiShortcuts');
|
|
136
|
+
if (tuiShortcuts !== undefined) {
|
|
137
|
+
const disposeShortcut = tuiShortcuts.register(tuiShortcut, {
|
|
138
|
+
description: 'Toggle OpenCode Plan/Build mode',
|
|
139
|
+
handler() {
|
|
140
|
+
const agent = ctx.agents.currentInitiator();
|
|
141
|
+
if (agent === undefined)
|
|
142
|
+
return;
|
|
143
|
+
const active = isPlanModeActive(agent.session.events, planSandbox);
|
|
144
|
+
const next = active ? 'build' : 'plan';
|
|
145
|
+
setPlanBuildMode(agent, next, planSandbox, buildSandbox);
|
|
146
|
+
// Best-effort echo the same confirmation the slash command shows.
|
|
147
|
+
const commands = ctx.get('commands');
|
|
148
|
+
if (commands !== undefined) {
|
|
149
|
+
const signal = new AbortController().signal;
|
|
150
|
+
Promise.resolve()
|
|
151
|
+
.then(() => commands.execute(agent, '/plan-build status', [], signal))
|
|
152
|
+
.catch(() => { });
|
|
153
|
+
}
|
|
154
|
+
},
|
|
155
|
+
}, ctx);
|
|
156
|
+
disposers.push(disposeShortcut);
|
|
157
|
+
}
|
|
158
|
+
}
|
|
129
159
|
return () => {
|
|
130
160
|
for (const dispose of disposers)
|
|
131
161
|
dispose();
|
package/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAGH,OAAO,CAAC,MAAM,0BAA0B,CAAA;AAWxC,OAAO,EACL,qBAAqB,EACrB,oBAAoB,EACpB,gBAAgB,EAChB,cAAc,EACd,gBAAgB,EAChB,WAAW,GACZ,MAAM,cAAc,CAAA;AAGrB,0BAA0B;AAC1B,MAAM,CAAC,MAAM,IAAI,GAAG,qBAAqB,CAAA;AACzC,8CAA8C;AAC9C,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,QAAQ,EAAE,OAAO,EAAE,cAAc,CAAU,CAAA;AAClE,4BAA4B;AAC5B,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC;IAC7B,WAAW,EAAE,CAAC,CAAC,KAAK,CAAC;QACnB,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC;QACpB,CAAC,CAAC,KAAK,CAAC,iBAAiB,CAAC;QAC1B,CAAC,CAAC,KAAK,CAAC,oBAAoB,CAAC;KAC9B,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC;IAClB,YAAY,EAAE,CAAC,CAAC,KAAK,CAAC;QACpB,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC;QACpB,CAAC,CAAC,KAAK,CAAC,iBAAiB,CAAC;QAC1B,CAAC,CAAC,KAAK,CAAC,oBAAoB,CAAC;KAC9B,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC;IAClB,cAAc,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;IACzC,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/lib/types.d.ts
CHANGED
|
@@ -29,5 +29,13 @@ export interface PlanBuildModeConfig {
|
|
|
29
29
|
* @default true
|
|
30
30
|
*/
|
|
31
31
|
section?: boolean;
|
|
32
|
+
/**
|
|
33
|
+
* Optional TUI keyboard shortcut combo (e.g. `ctrl+shift+b`) that toggles
|
|
34
|
+
* Plan/Build mode when `dsh-tui` is loaded. Set to an empty string to
|
|
35
|
+
* disable. Bare keys are not allowed; the combo must include `ctrl` or
|
|
36
|
+
* `alt`. This shortcut is ignored by `dsh web`.
|
|
37
|
+
* @default 'ctrl+shift+b'
|
|
38
|
+
*/
|
|
39
|
+
tuiShortcut?: string;
|
|
32
40
|
}
|
|
33
41
|
//# sourceMappingURL=types.d.ts.map
|
package/lib/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAA;AAE3D,OAAO,QAAQ,gCAAgC,CAAC;CAG/C;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC;;;OAGG;IACH,WAAW,CAAC,EAAE,WAAW,CAAA;IACzB;;;OAGG;IACH,YAAY,CAAC,EAAE,WAAW,CAAA;IAC1B;;;OAGG;IACH,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,CAAA;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAA;AAE3D,OAAO,QAAQ,gCAAgC,CAAC;CAG/C;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC;;;OAGG;IACH,WAAW,CAAC,EAAE,WAAW,CAAA;IACzB;;;OAGG;IACH,YAAY,CAAC,EAAE,WAAW,CAAA;IAC1B;;;OAGG;IACH,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB;;;;;;OAMG;IACH,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB"}
|