dsh-code 1.0.6 → 1.2.0
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.en.md +123 -26
- package/README.md +124 -27
- package/bin/deepseek.mjs +283 -35
- package/cordis.patch.yml +97 -0
- package/lib/index.mjs +5008 -881
- package/lib/session-query.mjs +150 -0
- package/lib/startup.mjs +4 -4
- package/lib/{theme-DCT8Y2xf.mjs → theme-7u5Qo3dF.mjs} +657 -20
- package/lib/types/app.d.ts +106 -62
- package/lib/types/authorization-panel.d.ts +3 -3
- package/lib/types/git-workflow.d.ts +91 -2
- package/lib/types/i18n.d.ts +39 -0
- package/lib/types/index.d.ts +100 -1
- package/lib/types/input-split.d.ts +1 -1
- package/lib/types/kernel-panels.d.ts +107 -29
- package/lib/types/language-panel.d.ts +12 -0
- package/lib/types/locales/en.d.ts +450 -0
- package/lib/types/locales/zh.d.ts +9 -0
- package/lib/types/mentions.d.ts +7 -3
- package/lib/types/models.d.ts +14 -0
- package/lib/types/panel-accent.d.ts +28 -0
- package/lib/types/rainbow.d.ts +69 -0
- package/lib/types/render/animations.d.ts +42 -0
- package/lib/types/render/editor.d.ts +4 -3
- package/lib/types/render/ime-cursor.d.ts +60 -0
- package/lib/types/render/inspector.d.ts +26 -0
- package/lib/types/render/lines.d.ts +21 -1
- package/lib/types/render/markdown.d.ts +1 -1
- package/lib/types/render/projection.d.ts +130 -4
- package/lib/types/render/status.d.ts +9 -9
- package/lib/types/render/text.d.ts +6 -0
- package/lib/types/render/usage.d.ts +113 -0
- package/lib/types/session-directory.d.ts +17 -0
- package/lib/types/session-query.d.ts +92 -0
- package/lib/types/startup.d.ts +1 -1
- package/lib/types/terminal-title.d.ts +66 -0
- package/lib/types/theme-panel.d.ts +2 -2
- package/lib/types/theme.d.ts +271 -52
- package/lib/types/update-panel.d.ts +49 -0
- package/lib/types/update.d.ts +75 -0
- package/lib/types/version.d.ts +4 -3
- package/package.json +246 -90
- package/src/app.ts +1369 -509
- package/src/approval.ts +166 -166
- package/src/authorization-panel.ts +19 -16
- package/src/editor-keys.ts +371 -371
- package/src/git-workflow.ts +229 -3
- package/src/i18n.ts +68 -0
- package/src/index.ts +534 -80
- package/src/input-split.ts +3 -3
- package/src/internals.ts +5 -0
- package/src/kernel-panels.ts +554 -86
- package/src/keyboard.ts +5 -4
- package/src/language-panel.ts +53 -0
- package/src/locales/en.ts +489 -0
- package/src/locales/zh.ts +488 -0
- package/src/mentions.ts +8 -4
- package/src/models.ts +264 -212
- package/src/panel-accent.ts +41 -0
- package/src/presets.ts +1 -1
- package/src/provider-settings.ts +1 -1
- package/src/rainbow.ts +208 -0
- package/src/render/animations.ts +104 -6
- package/src/render/editor.ts +25 -24
- package/src/render/export.ts +116 -95
- package/src/render/ime-cursor.ts +147 -0
- package/src/render/inspector.ts +42 -0
- package/src/render/lines.ts +628 -415
- package/src/render/markdown.ts +15 -3
- package/src/render/projection.ts +572 -21
- package/src/render/status.ts +59 -39
- package/src/render/text.ts +14 -0
- package/src/render/tool-preview.ts +77 -77
- package/src/render/usage.ts +430 -0
- package/src/render/width.ts +2 -2
- package/src/session-directory.ts +8 -6
- package/src/session-query.ts +239 -0
- package/src/startup.ts +3 -3
- package/src/subagents.ts +229 -229
- package/src/terminal-title.ts +190 -0
- package/src/theme-panel.ts +17 -21
- package/src/theme.ts +281 -33
- package/src/update-panel.ts +256 -0
- package/src/update.ts +126 -0
- package/src/version.ts +58 -20
- package/src/whale-glyph.ts +23 -23
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Child-process adapter for the launcher update pipeline. The launcher
|
|
3
|
+
* (bin/deepseek.mjs) stays the single owner of update semantics — plan,
|
|
4
|
+
* guards, and the aligned install sequence — so the TUI only spawns
|
|
5
|
+
* `update --json` (read-only probe) and `update --apply` (streamed run)
|
|
6
|
+
* and never re-implements version-line decisions.
|
|
7
|
+
*/
|
|
8
|
+
import { type ChildProcess } from 'node:child_process';
|
|
9
|
+
/** Spawn double acceptable to the adapter (tests inject an EventEmitter). */
|
|
10
|
+
export type SpawnLike = (command: string, args: readonly string[], options: {
|
|
11
|
+
readonly stdio: readonly string[];
|
|
12
|
+
readonly windowsHide: boolean;
|
|
13
|
+
}) => ChildProcess;
|
|
14
|
+
/** Structured `update --json` payload; mirrors the launcher buildUpdateStatus. */
|
|
15
|
+
export interface LauncherUpdateStatus {
|
|
16
|
+
readonly code: {
|
|
17
|
+
readonly running: string;
|
|
18
|
+
readonly latest: string | null;
|
|
19
|
+
};
|
|
20
|
+
readonly host: {
|
|
21
|
+
readonly installed: string | null;
|
|
22
|
+
readonly targetLine: string | null;
|
|
23
|
+
};
|
|
24
|
+
readonly profile: {
|
|
25
|
+
readonly spec: string | null;
|
|
26
|
+
readonly mounted: string | null;
|
|
27
|
+
readonly localCheckout: boolean;
|
|
28
|
+
};
|
|
29
|
+
readonly plan: {
|
|
30
|
+
readonly dshSpec: string;
|
|
31
|
+
readonly codeSpec: string;
|
|
32
|
+
readonly pluginSpecs: readonly string[];
|
|
33
|
+
};
|
|
34
|
+
readonly blockers: {
|
|
35
|
+
readonly registry: string | null;
|
|
36
|
+
readonly downgrade: boolean;
|
|
37
|
+
readonly localCheckout: readonly string[] | null;
|
|
38
|
+
};
|
|
39
|
+
readonly upToDate: boolean;
|
|
40
|
+
/** True when this install is newer than npm latest (apply would downgrade). */
|
|
41
|
+
readonly aheadOfRegistry?: boolean;
|
|
42
|
+
}
|
|
43
|
+
/** Exact specs the TUI confirmed; apply must install these, not re-query latest. */
|
|
44
|
+
export interface LauncherUpdatePlan {
|
|
45
|
+
readonly dshSpec: string;
|
|
46
|
+
readonly codeSpec: string;
|
|
47
|
+
readonly pluginSpecs: readonly string[];
|
|
48
|
+
}
|
|
49
|
+
/** The launcher entrypoint that ships beside this bundle (lib/../bin). */
|
|
50
|
+
export declare function launcherUpdateCommand(args: readonly string[], moduleUrl?: string): {
|
|
51
|
+
readonly command: string;
|
|
52
|
+
readonly args: string[];
|
|
53
|
+
};
|
|
54
|
+
/**
|
|
55
|
+
* Split a streamed chunk sequence into complete display lines: CR is
|
|
56
|
+
* stripped, a chunk boundary may split a line, and the trailing partial
|
|
57
|
+
* stays pending until its newline arrives (npm writes whole lines, but a
|
|
58
|
+
* pipe may cut anywhere). Blank lines carry no progress information and
|
|
59
|
+
* are dropped so the panel budget is not spent on gaps.
|
|
60
|
+
*/
|
|
61
|
+
export declare function createLineSplitter(onLine: (line: string) => void): (chunk: string) => void;
|
|
62
|
+
/**
|
|
63
|
+
* Probe the aligned update status. Read-only: `update --json` never
|
|
64
|
+
* installs anything. The probe is bounded (npm view may hang on a broken
|
|
65
|
+
* network) and resolves with the parsed status.
|
|
66
|
+
*/
|
|
67
|
+
export declare function probeLauncherUpdate(spawnProcess?: SpawnLike): Promise<LauncherUpdateStatus>;
|
|
68
|
+
/**
|
|
69
|
+
* Run the aligned update (`update --apply`) as a child process and stream
|
|
70
|
+
* its sanitized progress lines to the caller. Resolves with the child
|
|
71
|
+
* exit code (0 success); rejects only when the process could not start.
|
|
72
|
+
* No timeout: an npm install may legitimately take minutes.
|
|
73
|
+
*/
|
|
74
|
+
export declare function applyPlanArgs(plan: LauncherUpdatePlan): string[];
|
|
75
|
+
export declare function applyLauncherUpdate(onLine: (line: string) => void, spawnProcess?: SpawnLike, plan?: LauncherUpdatePlan): Promise<number>;
|
package/lib/types/version.d.ts
CHANGED
|
@@ -3,9 +3,10 @@
|
|
|
3
3
|
export declare const DSH_CODE_VERSION: string;
|
|
4
4
|
/**
|
|
5
5
|
* Resolve the running dsh CLI host's version from its entry file
|
|
6
|
-
* (`process.argv[1]`, e.g. `.../@deepseek-ai/dsh/lib/bin.js`
|
|
7
|
-
*
|
|
8
|
-
*
|
|
6
|
+
* (`process.argv[1]`, e.g. `.../@deepseek-ai/dsh/lib/bin.js` or a PATH
|
|
7
|
+
* symlink `.../bin/dsh` → that file). Only a manifest literally named
|
|
8
|
+
* `@deepseek-ai/dsh` counts, so an unrelated entry (vitest, a plain node
|
|
9
|
+
* script) resolves to undefined instead of faking a kernel version.
|
|
9
10
|
*/
|
|
10
11
|
export declare function resolveDshHostVersion(entry?: string | undefined): string | undefined;
|
|
11
12
|
/**
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "dsh-code",
|
|
3
3
|
"description": "DeepSeek Harness CLI core bundle: interactive coding terminal, durable sessions, and model management for dsh --profile cli",
|
|
4
|
-
"version": "1.0
|
|
4
|
+
"version": "1.2.0",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|
|
7
7
|
"deepseek": "./bin/deepseek.mjs",
|
|
@@ -14,17 +14,21 @@
|
|
|
14
14
|
"types": "./lib/types/index.d.ts",
|
|
15
15
|
"default": "./lib/index.mjs"
|
|
16
16
|
},
|
|
17
|
-
"./
|
|
18
|
-
"types": "./lib/types/startup.d.ts",
|
|
19
|
-
"default": "./lib/startup.mjs"
|
|
20
|
-
},
|
|
17
|
+
"./cordis.patch.yml": "./cordis.patch.yml",
|
|
21
18
|
"./invariant": {
|
|
22
19
|
"types": "./lib/types/invariant.d.ts",
|
|
23
20
|
"default": "./lib/invariant.mjs"
|
|
24
21
|
},
|
|
25
|
-
"./
|
|
22
|
+
"./package.json": "./package.json",
|
|
23
|
+
"./session-query": {
|
|
24
|
+
"types": "./lib/types/session-query.d.ts",
|
|
25
|
+
"default": "./lib/session-query.mjs"
|
|
26
|
+
},
|
|
26
27
|
"./src/*": "./src/*",
|
|
27
|
-
"./
|
|
28
|
+
"./startup": {
|
|
29
|
+
"types": "./lib/types/startup.d.ts",
|
|
30
|
+
"default": "./lib/startup.mjs"
|
|
31
|
+
}
|
|
28
32
|
},
|
|
29
33
|
"files": [
|
|
30
34
|
"lib",
|
|
@@ -54,18 +58,24 @@
|
|
|
54
58
|
"scripts": {
|
|
55
59
|
"build": "tsdown && tsc -p tsconfig.json",
|
|
56
60
|
"test": "vitest run",
|
|
61
|
+
"test:coverage": "vitest run --coverage",
|
|
57
62
|
"typecheck": "tsc -p tsconfig.json --noEmit",
|
|
63
|
+
"typecheck:tests": "tsc -p tsconfig.test.json --noEmit",
|
|
64
|
+
"lint": "eslint .",
|
|
65
|
+
"lint:fix": "eslint . --fix",
|
|
66
|
+
"verify": "pnpm lint && pnpm typecheck && pnpm typecheck:tests && pnpm test",
|
|
58
67
|
"gen:whale": "tsx scripts/gen-whale-glyph.ts",
|
|
59
68
|
"prepare": "pnpm build",
|
|
60
|
-
"prepublishOnly": "pnpm typecheck && pnpm test && pnpm build"
|
|
69
|
+
"prepublishOnly": "pnpm typecheck && pnpm typecheck:tests && pnpm test && pnpm build"
|
|
61
70
|
},
|
|
62
71
|
"engines": {
|
|
63
72
|
"node": "^22.19 || >=24"
|
|
64
73
|
},
|
|
65
74
|
"dependencies": {
|
|
66
|
-
"@deepseek-ai/dsh-authorization": "0.1.5-rc.
|
|
67
|
-
"@deepseek-ai/dsh-
|
|
68
|
-
"@deepseek-ai/dsh-util-values": "0.1.5-rc.
|
|
75
|
+
"@deepseek-ai/dsh-authorization": "0.1.5-rc.2",
|
|
76
|
+
"@deepseek-ai/dsh-tool-session-query": "0.1.5-rc.2",
|
|
77
|
+
"@deepseek-ai/dsh-util-values": "0.1.5-rc.2",
|
|
78
|
+
"@deepseek-ai/dsh-web-fetch-http": "0.1.5-rc.2",
|
|
69
79
|
"@deepseek-ai/schemastery": "^3.18.2",
|
|
70
80
|
"chalk": "^5.6.2",
|
|
71
81
|
"commander": "^15.0.0",
|
|
@@ -75,94 +85,240 @@
|
|
|
75
85
|
"peerDependencies": {
|
|
76
86
|
"@deepseek-ai/cordis": "^4.0.2",
|
|
77
87
|
"@deepseek-ai/cordis-plugin-loader": "^1.0.3",
|
|
78
|
-
"@deepseek-ai/dsh-
|
|
79
|
-
"@deepseek-ai/dsh-agent": "0.1.5-rc.
|
|
80
|
-
"@deepseek-ai/dsh-agent-
|
|
81
|
-
"@deepseek-ai/dsh-
|
|
82
|
-
"@deepseek-ai/dsh-cmdline": "0.1.5-rc.
|
|
83
|
-
"@deepseek-ai/dsh-code-runtime-worker-thread": "0.1.5-rc.
|
|
84
|
-
"@deepseek-ai/dsh-commands": "0.1.5-rc.
|
|
85
|
-
"@deepseek-ai/dsh-compaction": "0.1.5-rc.
|
|
86
|
-
"@deepseek-ai/dsh-cordis-host-runner": "0.1.5-rc.
|
|
87
|
-
"@deepseek-ai/dsh-credentials": "0.1.5-rc.
|
|
88
|
-
"@deepseek-ai/dsh-file-reference-local": "0.1.5-rc.
|
|
89
|
-
"@deepseek-ai/dsh-goal": "0.1.5-rc.
|
|
90
|
-
"@deepseek-ai/dsh-
|
|
91
|
-
"@deepseek-ai/dsh-
|
|
92
|
-
"@deepseek-ai/dsh-
|
|
93
|
-
"@deepseek-ai/dsh-
|
|
94
|
-
"@deepseek-ai/dsh-
|
|
95
|
-
"@deepseek-ai/dsh-
|
|
96
|
-
"@deepseek-ai/dsh-
|
|
97
|
-
"@deepseek-ai/dsh-
|
|
98
|
-
"@deepseek-ai/dsh-
|
|
99
|
-
"@deepseek-ai/dsh-
|
|
100
|
-
"@deepseek-ai/dsh-
|
|
101
|
-
"@deepseek-ai/dsh-
|
|
102
|
-
"@deepseek-ai/dsh-
|
|
103
|
-
"@deepseek-ai/dsh-
|
|
104
|
-
"@deepseek-ai/dsh-
|
|
105
|
-
"@deepseek-ai/dsh-
|
|
88
|
+
"@deepseek-ai/dsh-agent": "0.1.5-rc.2",
|
|
89
|
+
"@deepseek-ai/dsh-agent-default-model": "0.1.5-rc.2",
|
|
90
|
+
"@deepseek-ai/dsh-agent-presets": "0.1.5-rc.2",
|
|
91
|
+
"@deepseek-ai/dsh-attachment": "0.1.5-rc.2",
|
|
92
|
+
"@deepseek-ai/dsh-cmdline": "0.1.5-rc.2",
|
|
93
|
+
"@deepseek-ai/dsh-code-runtime-worker-thread": "0.1.5-rc.2",
|
|
94
|
+
"@deepseek-ai/dsh-commands": "0.1.5-rc.2",
|
|
95
|
+
"@deepseek-ai/dsh-compaction": "0.1.5-rc.2",
|
|
96
|
+
"@deepseek-ai/dsh-cordis-host-runner": "0.1.5-rc.2",
|
|
97
|
+
"@deepseek-ai/dsh-credentials": "0.1.5-rc.2",
|
|
98
|
+
"@deepseek-ai/dsh-file-reference-local": "0.1.5-rc.2",
|
|
99
|
+
"@deepseek-ai/dsh-goal": "0.1.5-rc.2",
|
|
100
|
+
"@deepseek-ai/dsh-hooks-claude-code": "0.1.5-rc.2",
|
|
101
|
+
"@deepseek-ai/dsh-hooks-codex": "0.1.5-rc.2",
|
|
102
|
+
"@deepseek-ai/dsh-invariants": "0.1.5-rc.2",
|
|
103
|
+
"@deepseek-ai/dsh-jobs": "0.1.5-rc.2",
|
|
104
|
+
"@deepseek-ai/dsh-llm": "0.1.5-rc.2",
|
|
105
|
+
"@deepseek-ai/dsh-llm-retry": "0.1.5-rc.2",
|
|
106
|
+
"@deepseek-ai/dsh-lsp": "0.1.5-rc.2",
|
|
107
|
+
"@deepseek-ai/dsh-lsp-stdio": "0.1.5-rc.2",
|
|
108
|
+
"@deepseek-ai/dsh-mcp-client": "0.1.5-rc.2",
|
|
109
|
+
"@deepseek-ai/dsh-permission-presets": "0.1.5-rc.2",
|
|
110
|
+
"@deepseek-ai/dsh-plan-mode": "0.1.5-rc.2",
|
|
111
|
+
"@deepseek-ai/dsh-sandbox-policy": "0.1.5-rc.2",
|
|
112
|
+
"@deepseek-ai/dsh-schedule": "0.1.5-rc.2",
|
|
113
|
+
"@deepseek-ai/dsh-session": "0.1.5-rc.2",
|
|
114
|
+
"@deepseek-ai/dsh-session-persistence": "0.1.5-rc.2",
|
|
115
|
+
"@deepseek-ai/dsh-session-persistence-jsonl": "0.1.5-rc.2",
|
|
116
|
+
"@deepseek-ai/dsh-session-projection": "0.1.5-rc.2",
|
|
117
|
+
"@deepseek-ai/dsh-session-query": "0.1.5-rc.2",
|
|
118
|
+
"@deepseek-ai/dsh-session-query-sqlite": "0.1.5-rc.2",
|
|
119
|
+
"@deepseek-ai/dsh-session-reference": "0.1.5-rc.2",
|
|
120
|
+
"@deepseek-ai/dsh-session-title": "0.1.5-rc.2",
|
|
121
|
+
"@deepseek-ai/dsh-skill": "0.1.5-rc.2",
|
|
122
|
+
"@deepseek-ai/dsh-subagent": "0.1.5-rc.2",
|
|
123
|
+
"@deepseek-ai/dsh-terminal": "0.1.5-rc.2",
|
|
124
|
+
"@deepseek-ai/dsh-terminal-bash": "0.1.5-rc.2",
|
|
125
|
+
"@deepseek-ai/dsh-time-context": "0.1.5-rc.2",
|
|
126
|
+
"@deepseek-ai/dsh-tmux-context": "0.1.5-rc.2",
|
|
127
|
+
"@deepseek-ai/dsh-token-meter": "0.1.5-rc.2",
|
|
128
|
+
"@deepseek-ai/dsh-tool-lsp": "0.1.5-rc.2",
|
|
129
|
+
"@deepseek-ai/dsh-tool-terminal": "0.1.5-rc.2",
|
|
130
|
+
"@deepseek-ai/dsh-user-approval": "0.1.5-rc.2",
|
|
131
|
+
"@deepseek-ai/dsh-user-questions": "0.1.5-rc.2"
|
|
106
132
|
},
|
|
107
133
|
"peerDependenciesMeta": {
|
|
108
|
-
"@deepseek-ai/cordis": {
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
"@deepseek-ai/
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
"@deepseek-ai/dsh-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
"@deepseek-ai/dsh-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
"@deepseek-ai/dsh-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
"@deepseek-ai/dsh-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
"@deepseek-ai/dsh-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
"@deepseek-ai/dsh-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
"@deepseek-ai/dsh-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
"@deepseek-ai/dsh-
|
|
136
|
-
|
|
137
|
-
|
|
134
|
+
"@deepseek-ai/cordis": {
|
|
135
|
+
"optional": true
|
|
136
|
+
},
|
|
137
|
+
"@deepseek-ai/cordis-plugin-loader": {
|
|
138
|
+
"optional": true
|
|
139
|
+
},
|
|
140
|
+
"@deepseek-ai/dsh-agent": {
|
|
141
|
+
"optional": true
|
|
142
|
+
},
|
|
143
|
+
"@deepseek-ai/dsh-agent-default-model": {
|
|
144
|
+
"optional": true
|
|
145
|
+
},
|
|
146
|
+
"@deepseek-ai/dsh-agent-presets": {
|
|
147
|
+
"optional": true
|
|
148
|
+
},
|
|
149
|
+
"@deepseek-ai/dsh-attachment": {
|
|
150
|
+
"optional": true
|
|
151
|
+
},
|
|
152
|
+
"@deepseek-ai/dsh-cmdline": {
|
|
153
|
+
"optional": true
|
|
154
|
+
},
|
|
155
|
+
"@deepseek-ai/dsh-code-runtime-worker-thread": {
|
|
156
|
+
"optional": true
|
|
157
|
+
},
|
|
158
|
+
"@deepseek-ai/dsh-commands": {
|
|
159
|
+
"optional": true
|
|
160
|
+
},
|
|
161
|
+
"@deepseek-ai/dsh-compaction": {
|
|
162
|
+
"optional": true
|
|
163
|
+
},
|
|
164
|
+
"@deepseek-ai/dsh-cordis-host-runner": {
|
|
165
|
+
"optional": true
|
|
166
|
+
},
|
|
167
|
+
"@deepseek-ai/dsh-credentials": {
|
|
168
|
+
"optional": true
|
|
169
|
+
},
|
|
170
|
+
"@deepseek-ai/dsh-file-reference-local": {
|
|
171
|
+
"optional": true
|
|
172
|
+
},
|
|
173
|
+
"@deepseek-ai/dsh-goal": {
|
|
174
|
+
"optional": true
|
|
175
|
+
},
|
|
176
|
+
"@deepseek-ai/dsh-hooks-claude-code": {
|
|
177
|
+
"optional": true
|
|
178
|
+
},
|
|
179
|
+
"@deepseek-ai/dsh-hooks-codex": {
|
|
180
|
+
"optional": true
|
|
181
|
+
},
|
|
182
|
+
"@deepseek-ai/dsh-invariants": {
|
|
183
|
+
"optional": true
|
|
184
|
+
},
|
|
185
|
+
"@deepseek-ai/dsh-jobs": {
|
|
186
|
+
"optional": true
|
|
187
|
+
},
|
|
188
|
+
"@deepseek-ai/dsh-llm": {
|
|
189
|
+
"optional": true
|
|
190
|
+
},
|
|
191
|
+
"@deepseek-ai/dsh-llm-retry": {
|
|
192
|
+
"optional": true
|
|
193
|
+
},
|
|
194
|
+
"@deepseek-ai/dsh-lsp": {
|
|
195
|
+
"optional": true
|
|
196
|
+
},
|
|
197
|
+
"@deepseek-ai/dsh-lsp-stdio": {
|
|
198
|
+
"optional": true
|
|
199
|
+
},
|
|
200
|
+
"@deepseek-ai/dsh-mcp-client": {
|
|
201
|
+
"optional": true
|
|
202
|
+
},
|
|
203
|
+
"@deepseek-ai/dsh-permission-presets": {
|
|
204
|
+
"optional": true
|
|
205
|
+
},
|
|
206
|
+
"@deepseek-ai/dsh-plan-mode": {
|
|
207
|
+
"optional": true
|
|
208
|
+
},
|
|
209
|
+
"@deepseek-ai/dsh-sandbox-policy": {
|
|
210
|
+
"optional": true
|
|
211
|
+
},
|
|
212
|
+
"@deepseek-ai/dsh-schedule": {
|
|
213
|
+
"optional": true
|
|
214
|
+
},
|
|
215
|
+
"@deepseek-ai/dsh-session": {
|
|
216
|
+
"optional": true
|
|
217
|
+
},
|
|
218
|
+
"@deepseek-ai/dsh-session-persistence": {
|
|
219
|
+
"optional": true
|
|
220
|
+
},
|
|
221
|
+
"@deepseek-ai/dsh-session-persistence-jsonl": {
|
|
222
|
+
"optional": true
|
|
223
|
+
},
|
|
224
|
+
"@deepseek-ai/dsh-session-projection": {
|
|
225
|
+
"optional": true
|
|
226
|
+
},
|
|
227
|
+
"@deepseek-ai/dsh-session-query": {
|
|
228
|
+
"optional": true
|
|
229
|
+
},
|
|
230
|
+
"@deepseek-ai/dsh-session-query-sqlite": {
|
|
231
|
+
"optional": true
|
|
232
|
+
},
|
|
233
|
+
"@deepseek-ai/dsh-session-reference": {
|
|
234
|
+
"optional": true
|
|
235
|
+
},
|
|
236
|
+
"@deepseek-ai/dsh-session-title": {
|
|
237
|
+
"optional": true
|
|
238
|
+
},
|
|
239
|
+
"@deepseek-ai/dsh-skill": {
|
|
240
|
+
"optional": true
|
|
241
|
+
},
|
|
242
|
+
"@deepseek-ai/dsh-subagent": {
|
|
243
|
+
"optional": true
|
|
244
|
+
},
|
|
245
|
+
"@deepseek-ai/dsh-terminal": {
|
|
246
|
+
"optional": true
|
|
247
|
+
},
|
|
248
|
+
"@deepseek-ai/dsh-terminal-bash": {
|
|
249
|
+
"optional": true
|
|
250
|
+
},
|
|
251
|
+
"@deepseek-ai/dsh-time-context": {
|
|
252
|
+
"optional": true
|
|
253
|
+
},
|
|
254
|
+
"@deepseek-ai/dsh-tmux-context": {
|
|
255
|
+
"optional": true
|
|
256
|
+
},
|
|
257
|
+
"@deepseek-ai/dsh-token-meter": {
|
|
258
|
+
"optional": true
|
|
259
|
+
},
|
|
260
|
+
"@deepseek-ai/dsh-tool-lsp": {
|
|
261
|
+
"optional": true
|
|
262
|
+
},
|
|
263
|
+
"@deepseek-ai/dsh-tool-terminal": {
|
|
264
|
+
"optional": true
|
|
265
|
+
},
|
|
266
|
+
"@deepseek-ai/dsh-user-approval": {
|
|
267
|
+
"optional": true
|
|
268
|
+
},
|
|
269
|
+
"@deepseek-ai/dsh-user-questions": {
|
|
270
|
+
"optional": true
|
|
271
|
+
}
|
|
138
272
|
},
|
|
139
273
|
"devDependencies": {
|
|
140
|
-
"@deepseek-ai/dsh-agent-presets": "0.1.5-rc.
|
|
141
|
-
"@deepseek-ai/dsh-attachment": "0.1.5-rc.
|
|
142
|
-
"@deepseek-ai/dsh-
|
|
143
|
-
"@deepseek-ai/dsh-
|
|
144
|
-
"@deepseek-ai/dsh-credentials": "0.1.5-rc.
|
|
145
|
-
"@deepseek-ai/dsh-
|
|
146
|
-
"@deepseek-ai/dsh-
|
|
147
|
-
"@deepseek-ai/dsh-
|
|
148
|
-
"@deepseek-ai/dsh-jobs": "0.1.5-rc.
|
|
149
|
-
"@deepseek-ai/dsh-llm-retry": "0.1.5-rc.
|
|
150
|
-
"@deepseek-ai/dsh-
|
|
151
|
-
"@deepseek-ai/dsh-
|
|
152
|
-
"@deepseek-ai/dsh-
|
|
153
|
-
"@deepseek-ai/dsh-
|
|
154
|
-
"@deepseek-ai/dsh-
|
|
155
|
-
"@deepseek-ai/dsh-
|
|
156
|
-
"@deepseek-ai/dsh-
|
|
157
|
-
"@deepseek-ai/dsh-session-
|
|
158
|
-
"@deepseek-ai/dsh-
|
|
159
|
-
"@deepseek-ai/dsh-
|
|
160
|
-
"@deepseek-ai/dsh-
|
|
274
|
+
"@deepseek-ai/dsh-agent-presets": "0.1.5-rc.2",
|
|
275
|
+
"@deepseek-ai/dsh-attachment": "0.1.5-rc.2",
|
|
276
|
+
"@deepseek-ai/dsh-commands": "0.1.5-rc.2",
|
|
277
|
+
"@deepseek-ai/dsh-compaction": "0.1.5-rc.2",
|
|
278
|
+
"@deepseek-ai/dsh-credentials": "0.1.5-rc.2",
|
|
279
|
+
"@deepseek-ai/dsh-goal": "0.1.5-rc.2",
|
|
280
|
+
"@deepseek-ai/dsh-hooks-claude-code": "0.1.5-rc.2",
|
|
281
|
+
"@deepseek-ai/dsh-hooks-codex": "0.1.5-rc.2",
|
|
282
|
+
"@deepseek-ai/dsh-jobs": "0.1.5-rc.2",
|
|
283
|
+
"@deepseek-ai/dsh-llm-retry": "0.1.5-rc.2",
|
|
284
|
+
"@deepseek-ai/dsh-lsp": "0.1.5-rc.2",
|
|
285
|
+
"@deepseek-ai/dsh-lsp-stdio": "0.1.5-rc.2",
|
|
286
|
+
"@deepseek-ai/dsh-mcp-client": "0.1.5-rc.2",
|
|
287
|
+
"@deepseek-ai/dsh-permission-presets": "0.1.5-rc.2",
|
|
288
|
+
"@deepseek-ai/dsh-plan-mode": "0.1.5-rc.2",
|
|
289
|
+
"@deepseek-ai/dsh-sandbox-policy": "0.1.5-rc.2",
|
|
290
|
+
"@deepseek-ai/dsh-schedule": "0.1.5-rc.2",
|
|
291
|
+
"@deepseek-ai/dsh-session-persistence": "0.1.5-rc.2",
|
|
292
|
+
"@deepseek-ai/dsh-session-persistence-jsonl": "0.1.5-rc.2",
|
|
293
|
+
"@deepseek-ai/dsh-session-projection": "0.1.5-rc.2",
|
|
294
|
+
"@deepseek-ai/dsh-session-query": "0.1.5-rc.2",
|
|
295
|
+
"@deepseek-ai/dsh-session-query-sqlite": "0.1.5-rc.2",
|
|
296
|
+
"@deepseek-ai/dsh-session-reference": "0.1.5-rc.2",
|
|
297
|
+
"@deepseek-ai/dsh-session-title": "0.1.5-rc.2",
|
|
298
|
+
"@deepseek-ai/dsh-settings": "0.1.5-rc.2",
|
|
299
|
+
"@deepseek-ai/dsh-skill": "0.1.5-rc.2",
|
|
300
|
+
"@deepseek-ai/dsh-subagent": "0.1.5-rc.2",
|
|
301
|
+
"@deepseek-ai/dsh-terminal": "0.1.5-rc.2",
|
|
302
|
+
"@deepseek-ai/dsh-terminal-bash": "0.1.5-rc.2",
|
|
303
|
+
"@deepseek-ai/dsh-time-context": "0.1.5-rc.2",
|
|
304
|
+
"@deepseek-ai/dsh-tmux-context": "0.1.5-rc.2",
|
|
305
|
+
"@deepseek-ai/dsh-token-meter": "0.1.5-rc.2",
|
|
306
|
+
"@deepseek-ai/dsh-tool-lsp": "0.1.5-rc.2",
|
|
307
|
+
"@deepseek-ai/dsh-tool-terminal": "0.1.5-rc.2",
|
|
308
|
+
"@deepseek-ai/dsh-tool-todo": "0.1.5-rc.2",
|
|
309
|
+
"@deepseek-ai/dsh-user-approval": "0.1.5-rc.2",
|
|
310
|
+
"@deepseek-ai/dsh-user-questions": "0.1.5-rc.2",
|
|
311
|
+
"@types/js-yaml": "^4.0.9",
|
|
161
312
|
"@types/node": "^24.0.0",
|
|
162
313
|
"@types/react": "~18.3.1",
|
|
314
|
+
"@vitest/coverage-v8": "^3.2.7",
|
|
315
|
+
"eslint": "^10.10.0",
|
|
316
|
+
"eslint-plugin-react-hooks": "^7.1.1",
|
|
317
|
+
"js-yaml": "^4.3.1",
|
|
163
318
|
"tsdown": "^0.22.2",
|
|
164
319
|
"tsx": "^4.22.4",
|
|
165
320
|
"typescript": "^5.9.0",
|
|
321
|
+
"typescript-eslint": "^8.70.0",
|
|
166
322
|
"vitest": "^3.0.0"
|
|
167
323
|
}
|
|
168
324
|
}
|