@godv61/dsh-task-engine 0.17.0 → 0.19.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.md +10 -5
- package/docs/manual.html +5 -4
- package/lib/client.js +459 -180
- package/lib/client.js.map +4 -4
- package/lib/controller.d.ts +56 -1
- package/lib/controller.js +288 -21
- package/lib/controller.js.map +1 -1
- package/lib/dev-task.js +161 -66
- package/lib/dev-task.js.map +1 -1
- package/lib/engine.d.ts +17 -2
- package/lib/engine.js +4 -3
- package/lib/engine.js.map +1 -1
- package/lib/workflows.d.ts +47 -12
- package/lib/workflows.js +89 -19
- package/lib/workflows.js.map +1 -1
- package/package.json +6 -2
- package/skills/eng-delivery/SKILL.md +1 -1
package/lib/controller.d.ts
CHANGED
|
@@ -17,7 +17,7 @@ export interface EngConfigView {
|
|
|
17
17
|
ok: boolean;
|
|
18
18
|
/** Where the config came from: a preset default, a sound project file, or an invalid one. */
|
|
19
19
|
source: 'default' | 'project' | 'invalid';
|
|
20
|
-
/** Selected workflow id (
|
|
20
|
+
/** Selected workflow id (empty when the file lacks a `flow` field). */
|
|
21
21
|
flow: string;
|
|
22
22
|
/** The resolved workflow (preset plus the project's stage-binding override). */
|
|
23
23
|
config: WorkflowConfig;
|
|
@@ -164,6 +164,42 @@ export interface TaskLedgerEntry {
|
|
|
164
164
|
export interface TaskLedgerView {
|
|
165
165
|
tasks: TaskLedgerEntry[];
|
|
166
166
|
}
|
|
167
|
+
/** `readInit` result: the workspace's root `AGENTS.md`, or absent. */
|
|
168
|
+
export interface InitView {
|
|
169
|
+
/** Whether an AGENTS.md exists at the workspace root. */
|
|
170
|
+
exists: boolean;
|
|
171
|
+
/** Full body when `exists`, otherwise empty string. */
|
|
172
|
+
content: string;
|
|
173
|
+
/** Physical line count (0 when absent). */
|
|
174
|
+
lines: number;
|
|
175
|
+
/** Absolute AGENTS.md location when it was resolved outside the workspace root (e.g. a single child project). */
|
|
176
|
+
path?: string;
|
|
177
|
+
}
|
|
178
|
+
/** Write the workspace's root `AGENTS.md` (init apply). */
|
|
179
|
+
export interface InitWriteRequest {
|
|
180
|
+
/** Absolute workspace directory; `AGENTS.md` is written at its root. */
|
|
181
|
+
path: string;
|
|
182
|
+
/** Full AGENTS.md body. */
|
|
183
|
+
content: string;
|
|
184
|
+
}
|
|
185
|
+
/** `generateInit` request: scan the workspace and prompt the model for a draft. */
|
|
186
|
+
export interface InitGenerateRequest {
|
|
187
|
+
/** Absolute workspace directory to scan. */
|
|
188
|
+
path: string;
|
|
189
|
+
}
|
|
190
|
+
/** `generateInit` result: a model-drafted AGENTS.md body (not yet written). */
|
|
191
|
+
export interface InitDraft {
|
|
192
|
+
ok: boolean;
|
|
193
|
+
content: string;
|
|
194
|
+
lines: number;
|
|
195
|
+
error?: string;
|
|
196
|
+
}
|
|
197
|
+
/** `writeInit` result: write succeeded, or failed with the offending line count. */
|
|
198
|
+
export interface InitWriteResult {
|
|
199
|
+
ok: boolean;
|
|
200
|
+
lines: number;
|
|
201
|
+
error?: string;
|
|
202
|
+
}
|
|
167
203
|
/**
|
|
168
204
|
* Host owner of the `task-engine` Remote namespace. Discovered by the Typert
|
|
169
205
|
* Gateway through source-mode reflection (the `typertRemote` binding on the
|
|
@@ -211,6 +247,25 @@ export default class TaskEngineController extends TypertRemoteService {
|
|
|
211
247
|
* @returns the ledger entries, empty when no task records exist.
|
|
212
248
|
*/
|
|
213
249
|
readTasks(path: string): Promise<TaskLedgerView>;
|
|
250
|
+
/**
|
|
251
|
+
* Read the workspace's root `AGENTS.md` for the project-initialization tab.
|
|
252
|
+
* @param path - absolute workspace directory.
|
|
253
|
+
* @returns existence, body, and line count.
|
|
254
|
+
*/
|
|
255
|
+
readInit(path: string): Promise<InitView>;
|
|
256
|
+
/**
|
|
257
|
+
* Write the workspace's root `AGENTS.md` (init apply).
|
|
258
|
+
* @param request - workspace directory and full body.
|
|
259
|
+
* @returns `ok: false` with `lines` over the cap when the body is too long.
|
|
260
|
+
*/
|
|
261
|
+
writeInit(request: InitWriteRequest): Promise<InitWriteResult>;
|
|
262
|
+
/**
|
|
263
|
+
* Scan the workspace and prompt the default model for an AGENTS.md draft. The
|
|
264
|
+
* result is a preview only — nothing is written until {@link writeInit}.
|
|
265
|
+
* @param request - absolute workspace directory.
|
|
266
|
+
* @returns the drafted body, or `ok: false` with an error when generation fails.
|
|
267
|
+
*/
|
|
268
|
+
generateInit(request: InitGenerateRequest): Promise<InitDraft>;
|
|
214
269
|
/**
|
|
215
270
|
* Create a project- or user-level skill by writing its SKILL.md.
|
|
216
271
|
* @param request - name, description, whenToUse, body, and target level.
|
package/lib/controller.js
CHANGED
|
@@ -42,15 +42,29 @@ var __esDecorate = (this && this.__esDecorate) || function (ctor, descriptorIn,
|
|
|
42
42
|
if (target) Object.defineProperty(target, contextIn.name, descriptor);
|
|
43
43
|
done = true;
|
|
44
44
|
};
|
|
45
|
-
import { mkdirSync, readFileSync, readdirSync, rmSync, writeFileSync } from 'node:fs';
|
|
45
|
+
import { existsSync, mkdirSync, readFileSync, readdirSync, rmSync, writeFileSync } from 'node:fs';
|
|
46
46
|
import { homedir } from 'node:os';
|
|
47
47
|
import { dirname, join } from 'node:path';
|
|
48
48
|
import { fileURLToPath } from 'node:url';
|
|
49
|
+
import { createUserMessage } from '@deepseek-ai/dsh-llm';
|
|
49
50
|
import { Remote, RemoteError, TypertRemoteService } from '@deepseek-ai/dsh-typert-protocol';
|
|
50
51
|
import { validateWorkflow } from "./engine.js";
|
|
51
|
-
import {
|
|
52
|
+
import { resolveFlow } from "./workflows.js";
|
|
52
53
|
/** The one file this controller reads and writes, relative to a workspace directory. */
|
|
53
54
|
const ENGFILE = '.dsh/eng.json';
|
|
55
|
+
/** The project description file read/written at the workspace root by `init`. */
|
|
56
|
+
const INITFILE = 'AGENTS.md';
|
|
57
|
+
/** Hard line cap the init draft must satisfy before it can be written. */
|
|
58
|
+
const INIT_MAX_LINES = 200;
|
|
59
|
+
/** Hard timeout for the model-draft call; the UI reports elapsed time toward it. */
|
|
60
|
+
const INIT_GENERATE_TIMEOUT_MS = 150000;
|
|
61
|
+
/** System prompt for drafting a project AGENTS.md from a scanned snapshot. */
|
|
62
|
+
const INIT_SYSTEM_PROMPT = '你是一名工程交付助理。根据下面提供的项目快照,为该项目写一份项目级 AGENTS.md(Markdown)。'
|
|
63
|
+
+ '要求:用中文,只写骨架,不超过 200 行:项目是什么 → 怎么跑/构建 → 目录结构 → 开发约定 → 红线与坑。'
|
|
64
|
+
+ '不要客套的开头和结尾,不要复述项目快照里无关的细节,直接输出 Markdown 正文。'
|
|
65
|
+
+ '整个回答就是 AGENTS.md 的内容,不要用代码块包裹,不要附加任何说明。';
|
|
66
|
+
/** Files worth quoting into the scan snapshot (each truncated). */
|
|
67
|
+
const SCAN_KEY_FILES = ['README.md', 'package.json', 'tsconfig.json', 'tsconfig.client.json', 'pnpm-workspace.yaml', 'pyproject.toml', 'Cargo.toml', 'go.mod', '.dsh/eng.json'];
|
|
54
68
|
/** Bundled skill directory, scanned as a fallback list when no skill registry exists. */
|
|
55
69
|
const BUNDLED_SKILLS_DIR = fileURLToPath(new URL('../skills/', import.meta.url));
|
|
56
70
|
/** Bundled rule directory. */
|
|
@@ -64,6 +78,21 @@ function sanitizeName(raw) {
|
|
|
64
78
|
const cleaned = raw.trim().toLowerCase().replace(/[^0-9a-z-]+/g, '-').replace(/^-+|-+$/g, '');
|
|
65
79
|
return cleaned;
|
|
66
80
|
}
|
|
81
|
+
/** The standard preset's config; the built-in id always resolves. */
|
|
82
|
+
function standardConfig() {
|
|
83
|
+
const standard = resolveFlow('standard');
|
|
84
|
+
if (!standard.ok)
|
|
85
|
+
throw new Error('built-in "standard" preset is missing');
|
|
86
|
+
return standard.config;
|
|
87
|
+
}
|
|
88
|
+
/** Whether a bundled (core) skill already owns a name. */
|
|
89
|
+
function bundledSkillExists(name) {
|
|
90
|
+
return existsSync(join(BUNDLED_SKILLS_DIR, name, 'SKILL.md'));
|
|
91
|
+
}
|
|
92
|
+
/** Whether a bundled (core) rule already owns a name. */
|
|
93
|
+
function bundledRuleExists(name) {
|
|
94
|
+
return existsSync(join(BUNDLED_RULES_DIR, `${name}.md`));
|
|
95
|
+
}
|
|
67
96
|
/** Frontmatter-wrapped SKILL.md body. */
|
|
68
97
|
function renderSkillFile(name, description, whenToUse, content) {
|
|
69
98
|
const head = [`name: ${name}`, `description: ${description}`];
|
|
@@ -153,6 +182,9 @@ let TaskEngineController = (() => {
|
|
|
153
182
|
let _listSkills_decorators;
|
|
154
183
|
let _listRules_decorators;
|
|
155
184
|
let _readTasks_decorators;
|
|
185
|
+
let _readInit_decorators;
|
|
186
|
+
let _writeInit_decorators;
|
|
187
|
+
let _generateInit_decorators;
|
|
156
188
|
let _writeSkill_decorators;
|
|
157
189
|
let _writeRule_decorators;
|
|
158
190
|
let _readSkill_decorators;
|
|
@@ -167,6 +199,9 @@ let TaskEngineController = (() => {
|
|
|
167
199
|
_listSkills_decorators = [Remote];
|
|
168
200
|
_listRules_decorators = [Remote];
|
|
169
201
|
_readTasks_decorators = [Remote];
|
|
202
|
+
_readInit_decorators = [Remote];
|
|
203
|
+
_writeInit_decorators = [Remote];
|
|
204
|
+
_generateInit_decorators = [Remote];
|
|
170
205
|
_writeSkill_decorators = [Remote];
|
|
171
206
|
_writeRule_decorators = [Remote];
|
|
172
207
|
_readSkill_decorators = [Remote];
|
|
@@ -178,6 +213,9 @@ let TaskEngineController = (() => {
|
|
|
178
213
|
__esDecorate(this, null, _listSkills_decorators, { kind: "method", name: "listSkills", static: false, private: false, access: { has: obj => "listSkills" in obj, get: obj => obj.listSkills }, metadata: _metadata }, null, _instanceExtraInitializers);
|
|
179
214
|
__esDecorate(this, null, _listRules_decorators, { kind: "method", name: "listRules", static: false, private: false, access: { has: obj => "listRules" in obj, get: obj => obj.listRules }, metadata: _metadata }, null, _instanceExtraInitializers);
|
|
180
215
|
__esDecorate(this, null, _readTasks_decorators, { kind: "method", name: "readTasks", static: false, private: false, access: { has: obj => "readTasks" in obj, get: obj => obj.readTasks }, metadata: _metadata }, null, _instanceExtraInitializers);
|
|
216
|
+
__esDecorate(this, null, _readInit_decorators, { kind: "method", name: "readInit", static: false, private: false, access: { has: obj => "readInit" in obj, get: obj => obj.readInit }, metadata: _metadata }, null, _instanceExtraInitializers);
|
|
217
|
+
__esDecorate(this, null, _writeInit_decorators, { kind: "method", name: "writeInit", static: false, private: false, access: { has: obj => "writeInit" in obj, get: obj => obj.writeInit }, metadata: _metadata }, null, _instanceExtraInitializers);
|
|
218
|
+
__esDecorate(this, null, _generateInit_decorators, { kind: "method", name: "generateInit", static: false, private: false, access: { has: obj => "generateInit" in obj, get: obj => obj.generateInit }, metadata: _metadata }, null, _instanceExtraInitializers);
|
|
181
219
|
__esDecorate(this, null, _writeSkill_decorators, { kind: "method", name: "writeSkill", static: false, private: false, access: { has: obj => "writeSkill" in obj, get: obj => obj.writeSkill }, metadata: _metadata }, null, _instanceExtraInitializers);
|
|
182
220
|
__esDecorate(this, null, _writeRule_decorators, { kind: "method", name: "writeRule", static: false, private: false, access: { has: obj => "writeRule" in obj, get: obj => obj.writeRule }, metadata: _metadata }, null, _instanceExtraInitializers);
|
|
183
221
|
__esDecorate(this, null, _readSkill_decorators, { kind: "method", name: "readSkill", static: false, private: false, access: { has: obj => "readSkill" in obj, get: obj => obj.readSkill }, metadata: _metadata }, null, _instanceExtraInitializers);
|
|
@@ -200,7 +238,7 @@ let TaskEngineController = (() => {
|
|
|
200
238
|
const fs = this.fs();
|
|
201
239
|
const raw = await readEngText(fs, path);
|
|
202
240
|
if (raw === undefined) {
|
|
203
|
-
return { ok: true, source: 'default', flow: 'standard', config:
|
|
241
|
+
return { ok: true, source: 'default', flow: 'standard', config: standardConfig(), problems: [] };
|
|
204
242
|
}
|
|
205
243
|
let parsed;
|
|
206
244
|
try {
|
|
@@ -211,18 +249,35 @@ let TaskEngineController = (() => {
|
|
|
211
249
|
ok: false,
|
|
212
250
|
source: 'invalid',
|
|
213
251
|
flow: 'standard',
|
|
214
|
-
config:
|
|
252
|
+
config: standardConfig(),
|
|
215
253
|
problems: [`invalid JSON: ${error instanceof Error ? error.message : String(error)}`],
|
|
216
254
|
};
|
|
217
255
|
}
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
256
|
+
if (parsed.flow === undefined || parsed.flow.trim() === '') {
|
|
257
|
+
return {
|
|
258
|
+
ok: false,
|
|
259
|
+
source: 'invalid',
|
|
260
|
+
flow: '',
|
|
261
|
+
config: standardConfig(),
|
|
262
|
+
problems: ['eng.json exists but is missing a "flow" field — set it to standard|agile|minimal, or delete the file'],
|
|
263
|
+
};
|
|
264
|
+
}
|
|
265
|
+
const resolved = resolveFlow(parsed.flow, parsed.stage_bindings !== undefined ? { stage_bindings: parsed.stage_bindings } : undefined);
|
|
266
|
+
if (!resolved.ok) {
|
|
267
|
+
return {
|
|
268
|
+
ok: false,
|
|
269
|
+
source: 'invalid',
|
|
270
|
+
flow: resolved.flow,
|
|
271
|
+
config: standardConfig(),
|
|
272
|
+
problems: [`unknown flow "${resolved.flow}" (known: ${resolved.knownFlows.join(', ')})`],
|
|
273
|
+
};
|
|
274
|
+
}
|
|
275
|
+
const problems = validateWorkflow(resolved.config);
|
|
221
276
|
return {
|
|
222
277
|
ok: problems.length === 0,
|
|
223
278
|
source: problems.length === 0 ? 'project' : 'invalid',
|
|
224
|
-
flow,
|
|
225
|
-
config,
|
|
279
|
+
flow: resolved.preset.id,
|
|
280
|
+
config: resolved.config,
|
|
226
281
|
problems,
|
|
227
282
|
};
|
|
228
283
|
}
|
|
@@ -233,19 +288,19 @@ let TaskEngineController = (() => {
|
|
|
233
288
|
* `problems` filled when validation fails (nothing is written then).
|
|
234
289
|
*/
|
|
235
290
|
async write(request) {
|
|
236
|
-
|
|
291
|
+
const resolved = resolveFlow(request.flow, request.stage_bindings !== undefined ? { stage_bindings: request.stage_bindings } : undefined);
|
|
292
|
+
if (!resolved.ok) {
|
|
237
293
|
return {
|
|
238
294
|
ok: false,
|
|
239
295
|
source: 'invalid',
|
|
240
|
-
flow:
|
|
241
|
-
config:
|
|
242
|
-
problems: [`unknown flow "${
|
|
296
|
+
flow: resolved.flow,
|
|
297
|
+
config: standardConfig(),
|
|
298
|
+
problems: [`unknown flow "${resolved.flow}" (known: ${resolved.knownFlows.join(', ')})`],
|
|
243
299
|
};
|
|
244
300
|
}
|
|
245
|
-
const
|
|
246
|
-
const problems = validateWorkflow(config);
|
|
301
|
+
const problems = validateWorkflow(resolved.config);
|
|
247
302
|
if (problems.length > 0) {
|
|
248
|
-
return { ok: false, source: 'invalid', flow: request.flow, config, problems };
|
|
303
|
+
return { ok: false, source: 'invalid', flow: request.flow, config: resolved.config, problems };
|
|
249
304
|
}
|
|
250
305
|
const payload = {
|
|
251
306
|
flow: request.flow,
|
|
@@ -257,7 +312,7 @@ let TaskEngineController = (() => {
|
|
|
257
312
|
mode: 'workspace-write',
|
|
258
313
|
workspaceRoot: request.path,
|
|
259
314
|
});
|
|
260
|
-
return { ok: true, source: 'project', flow: request.flow, config, problems: [] };
|
|
315
|
+
return { ok: true, source: 'project', flow: request.flow, config: resolved.config, problems: [] };
|
|
261
316
|
}
|
|
262
317
|
/**
|
|
263
318
|
* List every skill available for stage binding by scanning the same three
|
|
@@ -272,9 +327,10 @@ let TaskEngineController = (() => {
|
|
|
272
327
|
const project = path === '' ? [] : listSkillsFromDir(join(path, '.dsh/skills'), 'project');
|
|
273
328
|
const user = listSkillsFromDir(join(dshHome(), 'skills'), 'user');
|
|
274
329
|
const bundled = listSkillsFromDir(BUNDLED_SKILLS_DIR, 'bundled');
|
|
275
|
-
//
|
|
330
|
+
// Bundled (core) entries win over user and project entries of the same name,
|
|
331
|
+
// so a project cannot shadow a shipped skill; local additions use distinct names.
|
|
276
332
|
const merged = new Map();
|
|
277
|
-
for (const entry of [...
|
|
333
|
+
for (const entry of [...project, ...user, ...bundled])
|
|
278
334
|
merged.set(entry.name, entry);
|
|
279
335
|
const skills = [...merged.values()].sort((a, b) => a.name.localeCompare(b.name));
|
|
280
336
|
return { skills };
|
|
@@ -289,9 +345,11 @@ let TaskEngineController = (() => {
|
|
|
289
345
|
const project = path === '' ? [] : scanRuleDir(join(path, '.dsh/rules'), 'project');
|
|
290
346
|
const user = scanRuleDir(join(dshHome(), 'rules'), 'user');
|
|
291
347
|
const bundled = scanRuleDir(BUNDLED_RULES_DIR, 'bundled');
|
|
292
|
-
//
|
|
348
|
+
// Bundled (core) rules win over user and project rules of the same name, so a
|
|
349
|
+
// project cannot shadow a shipped rule like `security-redlines`; local additions
|
|
350
|
+
// use distinct names.
|
|
293
351
|
const merged = new Map();
|
|
294
|
-
for (const entry of [...
|
|
352
|
+
for (const entry of [...project, ...user, ...bundled])
|
|
295
353
|
merged.set(entry.name, entry.source);
|
|
296
354
|
const rules = [...merged.entries()]
|
|
297
355
|
.map(([name, source]) => ({ name, source }))
|
|
@@ -345,6 +403,92 @@ let TaskEngineController = (() => {
|
|
|
345
403
|
}
|
|
346
404
|
return { tasks };
|
|
347
405
|
}
|
|
406
|
+
/**
|
|
407
|
+
* Read the workspace's root `AGENTS.md` for the project-initialization tab.
|
|
408
|
+
* @param path - absolute workspace directory.
|
|
409
|
+
* @returns existence, body, and line count.
|
|
410
|
+
*/
|
|
411
|
+
async readInit(path) {
|
|
412
|
+
const { root } = locateInitRoot(path);
|
|
413
|
+
const raw = await readTextAt(this.fs(), root, INITFILE);
|
|
414
|
+
if (raw === undefined)
|
|
415
|
+
return { exists: false, content: '', lines: 0 };
|
|
416
|
+
return {
|
|
417
|
+
exists: true,
|
|
418
|
+
content: raw,
|
|
419
|
+
lines: lineCount(raw),
|
|
420
|
+
...(root === path ? {} : { path: join(root, INITFILE) }),
|
|
421
|
+
};
|
|
422
|
+
}
|
|
423
|
+
/**
|
|
424
|
+
* Write the workspace's root `AGENTS.md` (init apply).
|
|
425
|
+
* @param request - workspace directory and full body.
|
|
426
|
+
* @returns `ok: false` with `lines` over the cap when the body is too long.
|
|
427
|
+
*/
|
|
428
|
+
async writeInit(request) {
|
|
429
|
+
const lines = lineCount(request.content);
|
|
430
|
+
if (lines > INIT_MAX_LINES) {
|
|
431
|
+
return { ok: false, lines, error: `AGENTS.md 为 ${lines} 行,超过上限 ${INIT_MAX_LINES} 行;请精简到项目骨架后重试。` };
|
|
432
|
+
}
|
|
433
|
+
const { root } = locateInitRoot(request.path);
|
|
434
|
+
const fs = this.fs();
|
|
435
|
+
const target = await fs.resolve(INITFILE, { cwd: root });
|
|
436
|
+
await fs.writeText(target, request.content, undefined, undefined, {
|
|
437
|
+
mode: 'workspace-write',
|
|
438
|
+
workspaceRoot: request.path,
|
|
439
|
+
});
|
|
440
|
+
return { ok: true, lines };
|
|
441
|
+
}
|
|
442
|
+
/**
|
|
443
|
+
* Scan the workspace and prompt the default model for an AGENTS.md draft. The
|
|
444
|
+
* result is a preview only — nothing is written until {@link writeInit}.
|
|
445
|
+
* @param request - absolute workspace directory.
|
|
446
|
+
* @returns the drafted body, or `ok: false` with an error when generation fails.
|
|
447
|
+
*/
|
|
448
|
+
async generateInit(request) {
|
|
449
|
+
const { root } = locateInitRoot(request.path);
|
|
450
|
+
const snapshot = scanProject(root);
|
|
451
|
+
const llm = this.ctx.get('llm');
|
|
452
|
+
if (llm === undefined) {
|
|
453
|
+
return { ok: false, content: '', lines: 0, error: 'task-engine: llm service is absent from the host composition' };
|
|
454
|
+
}
|
|
455
|
+
const defaultModel = this.ctx.get('agentDefaultModel');
|
|
456
|
+
if (defaultModel === undefined) {
|
|
457
|
+
return { ok: false, content: '', lines: 0, error: 'task-engine: agent 默认模型未配置,请先在「模型」页选择一个模型' };
|
|
458
|
+
}
|
|
459
|
+
const selection = defaultModel.currentSelection();
|
|
460
|
+
const options = {
|
|
461
|
+
provider: selection.provider,
|
|
462
|
+
model: selection.model,
|
|
463
|
+
system: INIT_SYSTEM_PROMPT,
|
|
464
|
+
messages: [createUserMessage({
|
|
465
|
+
content: [{ type: 'text', text: `请为项目 ${root} 生成 AGENTS.md。\n\n${snapshot}` }],
|
|
466
|
+
source: { kind: 'user' },
|
|
467
|
+
})],
|
|
468
|
+
temperature: 0.2,
|
|
469
|
+
signal: AbortSignal.timeout(INIT_GENERATE_TIMEOUT_MS),
|
|
470
|
+
};
|
|
471
|
+
let text = '';
|
|
472
|
+
try {
|
|
473
|
+
const stream = llm.stream(options);
|
|
474
|
+
for await (const chunk of stream) {
|
|
475
|
+
if (chunk.type === 'text-delta')
|
|
476
|
+
text += chunk.text;
|
|
477
|
+
else if (chunk.type === 'finish' && chunk.reason.kind === 'error') {
|
|
478
|
+
throw new Error(chunk.reason.failure.message);
|
|
479
|
+
}
|
|
480
|
+
}
|
|
481
|
+
}
|
|
482
|
+
catch (error) {
|
|
483
|
+
if (options.signal?.aborted === true) {
|
|
484
|
+
return { ok: false, content: '', lines: 0, error: `生成超时(超过 ${Math.round(INIT_GENERATE_TIMEOUT_MS / 1000)} 秒),请稍后重试。` };
|
|
485
|
+
}
|
|
486
|
+
return { ok: false, content: '', lines: 0, error: error instanceof Error ? error.message : String(error) };
|
|
487
|
+
}
|
|
488
|
+
const content = stripMarkdownFence(text);
|
|
489
|
+
const lines = lineCount(content);
|
|
490
|
+
return { ok: content.trim() !== '', content, lines };
|
|
491
|
+
}
|
|
348
492
|
/**
|
|
349
493
|
* Create a project- or user-level skill by writing its SKILL.md.
|
|
350
494
|
* @param request - name, description, whenToUse, body, and target level.
|
|
@@ -355,6 +499,9 @@ let TaskEngineController = (() => {
|
|
|
355
499
|
if (name === '' || request.description.trim() === '') {
|
|
356
500
|
return { ok: false, name, path: '', error: 'skill name and description must not be empty' };
|
|
357
501
|
}
|
|
502
|
+
if (bundledSkillExists(name)) {
|
|
503
|
+
return { ok: false, name, path: '', error: `"${name}" is a bundled skill and cannot be overridden; choose a distinct name` };
|
|
504
|
+
}
|
|
358
505
|
const base = request.level === 'project'
|
|
359
506
|
? join(request.path ?? '', '.dsh/skills')
|
|
360
507
|
: join(dshHome(), 'skills');
|
|
@@ -371,6 +518,9 @@ let TaskEngineController = (() => {
|
|
|
371
518
|
if (name === '' || request.content.trim() === '') {
|
|
372
519
|
return { ok: false, name, path: '', error: 'rule name and content must not be empty' };
|
|
373
520
|
}
|
|
521
|
+
if (bundledRuleExists(name)) {
|
|
522
|
+
return { ok: false, name, path: '', error: `"${name}" is a bundled rule and cannot be overridden; choose a distinct name` };
|
|
523
|
+
}
|
|
374
524
|
const base = request.level === 'project'
|
|
375
525
|
? join(request.path ?? '', '.dsh/rules')
|
|
376
526
|
: join(dshHome(), 'rules');
|
|
@@ -516,4 +666,121 @@ async function readEngText(fs, path) {
|
|
|
516
666
|
return undefined;
|
|
517
667
|
}
|
|
518
668
|
}
|
|
669
|
+
/** Directories the scan tree never descends into. */
|
|
670
|
+
const SCAN_SKIP = new Set(['node_modules', '.git', 'dist', 'build', 'coverage', 'target', '__pycache__', '.venv', 'venv', '.next', 'out', '.dsh']);
|
|
671
|
+
/** Maximum entries listed per directory in the scan tree; the rest collapse to a count line. */
|
|
672
|
+
const SCAN_MAX_ENTRIES = 40;
|
|
673
|
+
/** Maximum directory depth the scan tree renders. */
|
|
674
|
+
const SCAN_MAX_DEPTH = 3;
|
|
675
|
+
/** Render a compact directory tree (depth-bounded, skip-listed) for the model. */
|
|
676
|
+
function renderScanTree(root) {
|
|
677
|
+
const lines = [root.replace(/[\\/]+$/, '').split(/[\\/]/).pop() ?? root];
|
|
678
|
+
function walk(dir, depth, prefix) {
|
|
679
|
+
if (depth > SCAN_MAX_DEPTH)
|
|
680
|
+
return;
|
|
681
|
+
let entries;
|
|
682
|
+
try {
|
|
683
|
+
entries = readdirSync(dir, { withFileTypes: true });
|
|
684
|
+
}
|
|
685
|
+
catch {
|
|
686
|
+
return;
|
|
687
|
+
}
|
|
688
|
+
entries = entries
|
|
689
|
+
.filter(e => !SCAN_SKIP.has(e.name))
|
|
690
|
+
.sort((a, b) => (a.isDirectory() === b.isDirectory() ? a.name.localeCompare(b.name) : a.isDirectory() ? -1 : 1));
|
|
691
|
+
const shown = entries.slice(0, SCAN_MAX_ENTRIES);
|
|
692
|
+
for (const entry of shown) {
|
|
693
|
+
const isDir = entry.isDirectory();
|
|
694
|
+
lines.push(`${prefix}${isDir ? '▸ ' : ''}${entry.name}${isDir ? '/' : ''}`);
|
|
695
|
+
if (isDir)
|
|
696
|
+
walk(join(dir, entry.name), depth + 1, `${prefix} `);
|
|
697
|
+
}
|
|
698
|
+
const hidden = entries.length - shown.length;
|
|
699
|
+
if (hidden > 0)
|
|
700
|
+
lines.push(`${prefix}… (+${hidden} 项)`);
|
|
701
|
+
}
|
|
702
|
+
walk(root, 1, ' ');
|
|
703
|
+
return lines.join('\n');
|
|
704
|
+
}
|
|
705
|
+
/** Build the project snapshot fed to the model: a bounded tree plus key file bodies. */
|
|
706
|
+
function scanProject(path) {
|
|
707
|
+
const parts = [`目录结构:\n\`\`\`\n${renderScanTree(path)}\n\`\`\``];
|
|
708
|
+
for (const rel of SCAN_KEY_FILES) {
|
|
709
|
+
const raw = readResourceFile(join(path, rel));
|
|
710
|
+
if (raw === undefined || raw.trim() === '')
|
|
711
|
+
continue;
|
|
712
|
+
parts.push(`文件 ${rel}:\n\`\`\`\n${raw.slice(0, 3000)}\n\`\`\``);
|
|
713
|
+
}
|
|
714
|
+
return parts.join('\n\n');
|
|
715
|
+
}
|
|
716
|
+
/** Strip a surrounding ```markdown fence if the model wrapped the draft anyway. */
|
|
717
|
+
function stripMarkdownFence(text) {
|
|
718
|
+
const trimmed = text.trim();
|
|
719
|
+
const m = trimmed.match(/^```(?:markdown|md)?\s*\n([\s\S]*?)\n```\s*$/);
|
|
720
|
+
if (m)
|
|
721
|
+
return m[1].trimEnd();
|
|
722
|
+
return trimmed;
|
|
723
|
+
}
|
|
724
|
+
/** Count physical lines after CRLF normalization; an empty string counts as one. */
|
|
725
|
+
function lineCount(text) {
|
|
726
|
+
return text.replace(/\r\n/g, '\n').split('\n').length;
|
|
727
|
+
}
|
|
728
|
+
/** Read one workspace-relative file through the sandboxed fs, or `undefined`. */
|
|
729
|
+
async function readTextAt(fs, path, rel) {
|
|
730
|
+
try {
|
|
731
|
+
const target = await fs.resolve(rel, { cwd: path });
|
|
732
|
+
return await fs.readText(target);
|
|
733
|
+
}
|
|
734
|
+
catch {
|
|
735
|
+
return undefined;
|
|
736
|
+
}
|
|
737
|
+
}
|
|
738
|
+
/**
|
|
739
|
+
* Locate the effective `AGENTS.md` for a workspace directory. Order:
|
|
740
|
+
* workspace root → exactly one direct child project → ancestor chain. When
|
|
741
|
+
* several direct children own the file the location is ambiguous, so nothing is
|
|
742
|
+
* guessed (`undefined`), keeping the write target at the workspace root.
|
|
743
|
+
* @param path - absolute workspace directory.
|
|
744
|
+
* @returns the absolute AGENTS.md path, or `undefined` when none is discoverable.
|
|
745
|
+
*/
|
|
746
|
+
function locateInitFile(path) {
|
|
747
|
+
const rootFile = join(path, INITFILE);
|
|
748
|
+
if (existsSync(rootFile))
|
|
749
|
+
return rootFile;
|
|
750
|
+
const children = [];
|
|
751
|
+
try {
|
|
752
|
+
for (const entry of readdirSync(path, { withFileTypes: true })) {
|
|
753
|
+
if (!entry.isDirectory() || entry.name.startsWith('.'))
|
|
754
|
+
continue;
|
|
755
|
+
const child = join(path, entry.name, INITFILE);
|
|
756
|
+
if (existsSync(child))
|
|
757
|
+
children.push(child);
|
|
758
|
+
}
|
|
759
|
+
}
|
|
760
|
+
catch {
|
|
761
|
+
return undefined;
|
|
762
|
+
}
|
|
763
|
+
if (children.length === 1)
|
|
764
|
+
return children[0];
|
|
765
|
+
if (children.length > 1)
|
|
766
|
+
return undefined;
|
|
767
|
+
let current = dirname(path);
|
|
768
|
+
for (;;) {
|
|
769
|
+
const up = join(current, INITFILE);
|
|
770
|
+
if (existsSync(up))
|
|
771
|
+
return up;
|
|
772
|
+
const parent = dirname(current);
|
|
773
|
+
if (parent === current)
|
|
774
|
+
break;
|
|
775
|
+
current = parent;
|
|
776
|
+
}
|
|
777
|
+
return undefined;
|
|
778
|
+
}
|
|
779
|
+
/** Resolve the project root that owns AGENTS.md for a workspace, or the workspace itself. */
|
|
780
|
+
function locateInitRoot(path) {
|
|
781
|
+
const file = locateInitFile(path);
|
|
782
|
+
if (file !== undefined)
|
|
783
|
+
return { root: dirname(file), found: true };
|
|
784
|
+
return { root: path, found: false };
|
|
785
|
+
}
|
|
519
786
|
//# sourceMappingURL=controller.js.map
|
package/lib/controller.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"controller.js","sourceRoot":"","sources":["../src/controller.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"controller.js","sourceRoot":"","sources":["../src/controller.ts"],"names":[],"mappings":"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"}
|