@coralai/sps-cli 0.39.0 → 0.40.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.
package/README.md CHANGED
@@ -456,6 +456,7 @@ sps project init <project> [--force]
456
456
 
457
457
  **Created directory structure:**
458
458
 
459
+ SPS management directory (`~/.coral/projects/<project>/`):
459
460
  ```
460
461
  ~/.coral/projects/<project>/
461
462
  ├── conf # Project configuration file (generated from template)
@@ -467,9 +468,21 @@ sps project init <project> [--force]
467
468
  └── deploy.sh # Deployment script template
468
469
  ```
469
470
 
471
+ Target project repo (`<PROJECT_DIR>/.claude/`, installed when the repo path exists):
472
+ ```
473
+ <PROJECT_DIR>/.claude/
474
+ ├── settings.json # Stop + UserPromptSubmit hooks (committed)
475
+ ├── settings.local.json # autoMemoryDirectory (gitignored)
476
+ ├── CLAUDE.md # Project rules skeleton
477
+ ├── hooks/
478
+ │ └── stop.sh # Default Stop hook script (marks COMPLETED-<stage>)
479
+ ├── skills/ # Empty; add project-specific skills here
480
+ └── rules/ # Empty; add path-scoped rules here
481
+ ```
482
+
470
483
  | Option | Description |
471
484
  |--------|-------------|
472
- | `--force` | Overwrite template files (conf will not be overwritten) |
485
+ | `--force` | Overwrite template files (conf will not be overwritten; `.claude/` files are preserved) |
473
486
 
474
487
  **Example:**
475
488
 
@@ -1 +1 @@
1
- {"version":3,"file":"cardMarkComplete.d.ts","sourceRoot":"","sources":["../../src/commands/cardMarkComplete.ts"],"names":[],"mappings":"AA6BA,wBAAsB,uBAAuB,CAC3C,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,MAAM,EAAE,EACrB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC7B,OAAO,CAAC,IAAI,CAAC,CAmDf"}
1
+ {"version":3,"file":"cardMarkComplete.d.ts","sourceRoot":"","sources":["../../src/commands/cardMarkComplete.ts"],"names":[],"mappings":"AAqDA,wBAAsB,uBAAuB,CAC3C,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,MAAM,EAAE,EACrB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC7B,OAAO,CAAC,IAAI,CAAC,CA2Ef"}
@@ -22,22 +22,72 @@
22
22
  * - 命令只打标签,不动卡片状态;pipeline tick 看到标签后按 YAML 推进
23
23
  * - 幂等:已有同名标签不报错
24
24
  */
25
+ import { existsSync, readFileSync } from 'node:fs';
26
+ import { resolve } from 'node:path';
25
27
  import { ProjectContext } from '../core/context.js';
26
28
  import { Logger } from '../core/logger.js';
27
29
  import { createTaskBackend } from '../providers/registry.js';
28
30
  import { ProjectPipelineAdapter } from '../core/projectPipelineAdapter.js';
31
+ /**
32
+ * Read the per-slot current-card marker that the worker manager writes on
33
+ * each dispatch. Returns { cardId, stage } or null if unreadable.
34
+ *
35
+ * Why: when a single claude process is reused across cards, its env vars
36
+ * (SPS_CARD_ID/SPS_STAGE) are frozen at spawn — they always point to the
37
+ * first card. The marker file is the authoritative "current card" source.
38
+ */
39
+ function readCurrentCardMarker(project, slot) {
40
+ const home = process.env.HOME || '';
41
+ const markerPath = resolve(home, '.coral', 'projects', project, 'runtime', `worker-${slot}-current.json`);
42
+ if (!existsSync(markerPath))
43
+ return null;
44
+ try {
45
+ const raw = readFileSync(markerPath, 'utf-8');
46
+ const parsed = JSON.parse(raw);
47
+ if (!parsed.cardId)
48
+ return null;
49
+ return { cardId: String(parsed.cardId), stage: String(parsed.stage ?? '') };
50
+ }
51
+ catch {
52
+ return null;
53
+ }
54
+ }
29
55
  export async function executeCardMarkComplete(project, positionals, flags) {
30
56
  const log = new Logger('card-mark-complete', project);
31
57
  const jsonOutput = !!flags.json;
32
- const seq = positionals[0];
58
+ // Resolve seq and stage.
59
+ //
60
+ // Priority order (seq):
61
+ // 1. Positional arg (explicit CLI usage)
62
+ // 2. runtime/worker-<SPS_WORKER_SLOT>-current.json (hook usage — reliable
63
+ // across claude process reuse)
64
+ //
65
+ // We intentionally DO NOT fall back to $SPS_CARD_ID because it's frozen at
66
+ // subprocess spawn time and causes the wrong card to be marked when the
67
+ // claude process is reused for the next card.
68
+ let seq = positionals[0];
69
+ const stageFromFlag = typeof flags.stage === 'string' ? flags.stage : undefined;
70
+ let stageFromMarker;
33
71
  if (!seq) {
34
- console.error('Usage: sps card mark-complete <project> <seq> [--stage <name>]');
35
- process.exit(2);
72
+ const slot = process.env.SPS_WORKER_SLOT;
73
+ if (!slot) {
74
+ console.error('Usage: sps card mark-complete <project> <seq> [--stage <name>]');
75
+ console.error(' (when called without seq, SPS_WORKER_SLOT env is required)');
76
+ process.exit(2);
77
+ }
78
+ const marker = readCurrentCardMarker(project, slot);
79
+ if (!marker) {
80
+ console.error(`No current-card marker found at runtime/worker-${slot}-current.json`);
81
+ console.error('Either pass <seq> explicitly, or ensure the worker manager wrote the marker before dispatch.');
82
+ process.exit(2);
83
+ }
84
+ seq = marker.cardId;
85
+ if (marker.stage)
86
+ stageFromMarker = marker.stage;
36
87
  }
37
- // Resolve stage: --stage flag > $SPS_STAGE env > 'develop' (default)
38
- const stageFromFlag = typeof flags.stage === 'string' ? flags.stage : undefined;
88
+ // Resolve stage: --stage flag > marker file > $SPS_STAGE env > 'develop'
39
89
  const stageFromEnv = process.env.SPS_STAGE;
40
- const stage = stageFromFlag || stageFromEnv || 'develop';
90
+ const stage = stageFromFlag || stageFromMarker || stageFromEnv || 'develop';
41
91
  let ctx;
42
92
  try {
43
93
  ctx = ProjectContext.load(project);
@@ -1 +1 @@
1
- {"version":3,"file":"cardMarkComplete.js","sourceRoot":"","sources":["../../src/commands/cardMarkComplete.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cardMarkComplete.js","sourceRoot":"","sources":["../../src/commands/cardMarkComplete.ts"],"names":[],"mappings":"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"}
@@ -13,6 +13,9 @@
13
13
  * @layer command
14
14
  * @boundedContext taskManagement
15
15
  */
16
+ import { mkdirSync, mkdtempSync, rmSync, writeFileSync } from 'node:fs';
17
+ import { tmpdir } from 'node:os';
18
+ import { resolve } from 'node:path';
16
19
  import { afterEach, beforeEach, describe, expect, it, vi } from 'vitest';
17
20
  // Mock dependencies BEFORE importing the module under test.
18
21
  const addLabelMock = vi.fn(async () => { });
@@ -86,9 +89,54 @@ describe('executeCardMarkComplete', () => {
86
89
  ok: true, seq: '5', stage: 'integrate', label: 'COMPLETED-integrate',
87
90
  });
88
91
  });
89
- it('exits with code 2 when seq missing', async () => {
92
+ it('exits with code 2 when seq missing AND SPS_WORKER_SLOT not set', async () => {
93
+ delete process.env.SPS_WORKER_SLOT;
90
94
  const { executeCardMarkComplete } = await import('./cardMarkComplete.js');
91
95
  await expect(executeCardMarkComplete('p', [], {})).rejects.toThrow('exit:2');
92
96
  });
97
+ describe('current-card marker fallback (claude process reuse)', () => {
98
+ const originalHome = process.env.HOME;
99
+ const originalSlot = process.env.SPS_WORKER_SLOT;
100
+ let tmpHome;
101
+ beforeEach(() => {
102
+ tmpHome = mkdtempSync(resolve(tmpdir(), 'sps-marker-'));
103
+ mkdirSync(resolve(tmpHome, '.coral', 'projects', 'p', 'runtime'), { recursive: true });
104
+ process.env.HOME = tmpHome;
105
+ process.env.SPS_WORKER_SLOT = 'worker-1';
106
+ });
107
+ afterEach(() => {
108
+ rmSync(tmpHome, { recursive: true, force: true });
109
+ if (originalHome !== undefined)
110
+ process.env.HOME = originalHome;
111
+ else
112
+ delete process.env.HOME;
113
+ if (originalSlot !== undefined)
114
+ process.env.SPS_WORKER_SLOT = originalSlot;
115
+ else
116
+ delete process.env.SPS_WORKER_SLOT;
117
+ });
118
+ it('reads seq + stage from marker file when seq omitted', async () => {
119
+ const markerPath = resolve(tmpHome, '.coral', 'projects', 'p', 'runtime', 'worker-worker-1-current.json');
120
+ writeFileSync(markerPath, JSON.stringify({ cardId: '99', stage: 'review', dispatchedAt: new Date().toISOString() }));
121
+ const { executeCardMarkComplete } = await import('./cardMarkComplete.js');
122
+ await executeCardMarkComplete('p', [], {});
123
+ expect(addLabelMock).toHaveBeenCalledWith('99', 'COMPLETED-review');
124
+ });
125
+ it('does NOT fall back to $SPS_CARD_ID env (prevents mis-marking on reuse)', async () => {
126
+ // No marker file written → must fail, not silently use stale env.
127
+ process.env.SPS_CARD_ID = '1';
128
+ const { executeCardMarkComplete } = await import('./cardMarkComplete.js');
129
+ await expect(executeCardMarkComplete('p', [], {})).rejects.toThrow('exit:2');
130
+ expect(addLabelMock).not.toHaveBeenCalled();
131
+ delete process.env.SPS_CARD_ID;
132
+ });
133
+ it('explicit seq still takes precedence over marker', async () => {
134
+ const markerPath = resolve(tmpHome, '.coral', 'projects', 'p', 'runtime', 'worker-worker-1-current.json');
135
+ writeFileSync(markerPath, JSON.stringify({ cardId: '99', stage: 'review' }));
136
+ const { executeCardMarkComplete } = await import('./cardMarkComplete.js');
137
+ await executeCardMarkComplete('p', ['42'], { stage: 'develop' });
138
+ expect(addLabelMock).toHaveBeenCalledWith('42', 'COMPLETED-develop');
139
+ });
140
+ });
93
141
  });
94
142
  //# sourceMappingURL=cardMarkComplete.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"cardMarkComplete.test.js","sourceRoot":"","sources":["../../src/commands/cardMarkComplete.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cardMarkComplete.test.js","sourceRoot":"","sources":["../../src/commands/cardMarkComplete.test.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"doctor.d.ts","sourceRoot":"","sources":["../../src/commands/doctor.ts"],"names":[],"mappings":"AAgCA,UAAU,WAAW;IACnB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS,CAAC;CACpC;AAkBD,wBAAsB,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAmQtF"}
1
+ {"version":3,"file":"doctor.d.ts","sourceRoot":"","sources":["../../src/commands/doctor.ts"],"names":[],"mappings":"AA+CA,UAAU,WAAW;IACnB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS,CAAC;CACpC;AAkBD,wBAAsB,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAmQtF"}
@@ -20,13 +20,30 @@
20
20
  */
21
21
  import { execSync } from 'node:child_process';
22
22
  import { appendFileSync, existsSync, mkdirSync, readdirSync, readFileSync, writeFileSync } from 'node:fs';
23
- import { resolve } from 'node:path';
23
+ import { dirname, resolve } from 'node:path';
24
+ import { fileURLToPath } from 'node:url';
24
25
  import { resolveGitlabProjectId } from '../core/config.js';
25
26
  import { ProjectContext } from '../core/context.js';
26
27
  import { Logger } from '../core/logger.js';
27
28
  import { checkPathExists } from '../core/paths.js';
28
29
  import { RuntimeStore } from '../core/runtimeStore.js';
29
30
  import { createIdleWorkerSlot, writeState } from '../core/state.js';
31
+ // ─── Template Dir resolution (mirrors projectInit.ts) ────────────
32
+ const __dirname = dirname(fileURLToPath(import.meta.url));
33
+ function findTemplateDir() {
34
+ const npmPath = resolve(__dirname, '..', '..', 'project-template');
35
+ if (existsSync(npmPath))
36
+ return npmPath;
37
+ const srcPath = resolve(__dirname, '..', '..', '..', 'project-template');
38
+ if (existsSync(srcPath))
39
+ return srcPath;
40
+ const HOME = process.env.HOME || '/home/coral';
41
+ const legacyPath = resolve(HOME, 'jarvis-skills', 'coding-work-flow', 'project-template');
42
+ if (existsSync(legacyPath))
43
+ return legacyPath;
44
+ return npmPath;
45
+ }
46
+ const TEMPLATE_DIR = findTemplateDir();
30
47
  /**
31
48
  * conf fields that CLI providers require.
32
49
  * Each entry maps the canonical CLI field → fallback ~/.coral/env field name.
@@ -355,59 +372,25 @@ function checkCliConfFields(ctx, checks, fixes, doFix) {
355
372
  }
356
373
  /**
357
374
  * Generate project-level CLAUDE.md content.
358
- * This file is committed to the repo and inherited by all worktrees.
359
- * Task-specific info (seq, branch) is injected via prompt at worker launch time.
375
+ *
376
+ * Reads the canonical template from `<TEMPLATE_DIR>/.claude/CLAUDE.md` so the
377
+ * content stays in sync with `sps project init`. Falls back to a minimal
378
+ * inline default if the template is missing (shouldn't happen in a well-built
379
+ * npm package, but keeps doctor --fix non-fatal).
360
380
  */
361
- function generateWorkerRules(ctx) {
381
+ function generateWorkerRules(_ctx) {
382
+ const templatePath = resolve(TEMPLATE_DIR, '.claude', 'CLAUDE.md');
383
+ if (existsSync(templatePath)) {
384
+ return readFileSync(templatePath, 'utf-8');
385
+ }
362
386
  return `# Worker Rules (auto-generated by sps doctor --fix)
363
- #
364
- # This file defines rules for the Claude Code worker operating in this
365
- # repository.
366
- #
367
- # You may edit this file to add project-specific coding standards,
368
- # architecture constraints, testing requirements, etc.
369
- # SPS will NOT overwrite this file once it exists.
370
387
 
371
388
  ## Scope
372
389
  - ONLY work in the current working directory
373
390
  - Do NOT read or modify files outside this directory
374
- - Do NOT explore the system, home directory, or other projects
375
-
376
- ## Workflow
377
- 1. Read the task description from your prompt
378
- 2. Implement the changes in this directory
379
- 3. Self-test your changes
380
- 4. git add, commit, and push to the current branch
381
- 5. Verify all changes are pushed
382
- 6. Output "done" when finished
383
-
384
- ## Commit Rules
385
- - Commit frequently (every meaningful change)
386
- - Push after each commit
387
- - Use conventional commit messages (feat:, fix:, refactor:, etc.)
388
-
389
- ## Forbidden
390
- - No PLAN.md, TODO.md, TASKLIST.md, ROADMAP.md, NOTES.md
391
- - No local planning files of any kind
392
- - No changes outside task scope
393
- - Do NOT explore ~/.coral/projects or other system directories
394
-
395
- ## SPS Memory
396
- This project uses SPS persistent memory at ~/.coral/memory/.
397
- Before starting work, read the project memory index:
398
- cat ~/.coral/memory/projects/${ctx.config.PROJECT_NAME}/MEMORY.md 2>/dev/null
399
- When you discover project conventions, architecture decisions, or lessons learned,
400
- write them as memory files. See the sps-memory skill for format and rules.
401
391
 
402
392
  ## Project-Specific Rules
403
- # Add your project's coding standards, architecture constraints,
404
- # testing requirements, and other conventions below:
405
- #
406
- # Examples:
407
- # - Language: TypeScript strict mode
408
- # - Test framework: vitest, 80%+ coverage required
409
- # - Architecture: src/modules/<domain>/ structure
410
- # - Linting: eslint + prettier, must pass before commit
393
+ # Add your project's coding standards here.
411
394
  `;
412
395
  }
413
396
  /**
@@ -415,35 +398,23 @@ write them as memory files. See the sps-memory skill for format and rules.
415
398
  * If --fix, generate missing files and commit them.
416
399
  */
417
400
  /**
418
- * Default .claude/settings.json content. Wires Claude Code native hooks to
419
- * SPS subcommands so the pipeline gets signals (COMPLETED-<stage> label) and
420
- * skill hints without each user writing custom shell.
401
+ * Default .claude/settings.json content.
402
+ *
403
+ * Reads the canonical template from `<TEMPLATE_DIR>/.claude/settings.json` so
404
+ * it stays in sync with `sps project init`. Falls back to a minimal inline
405
+ * default if the template is missing.
421
406
  */
422
407
  function generateClaudeHookSettings() {
423
- return JSON.stringify({
408
+ const templatePath = resolve(TEMPLATE_DIR, '.claude', 'settings.json');
409
+ if (existsSync(templatePath)) {
410
+ return readFileSync(templatePath, 'utf-8');
411
+ }
412
+ return `${JSON.stringify({
424
413
  hooks: {
425
- Stop: [
426
- {
427
- hooks: [
428
- {
429
- type: 'command',
430
- command: 'sps hook stop',
431
- },
432
- ],
433
- },
434
- ],
435
- UserPromptSubmit: [
436
- {
437
- hooks: [
438
- {
439
- type: 'command',
440
- command: 'sps hook user-prompt-submit',
441
- },
442
- ],
443
- },
444
- ],
414
+ Stop: [{ hooks: [{ type: 'command', command: 'bash "$CLAUDE_PROJECT_DIR"/.claude/hooks/stop.sh' }] }],
415
+ UserPromptSubmit: [{ hooks: [{ type: 'command', command: 'sps hook user-prompt-submit' }] }],
445
416
  },
446
- }, null, 2) + '\n';
417
+ }, null, 2)}\n`;
447
418
  }
448
419
  function checkWorkerRulesFiles(ctx, checks, fixes, doFix, gitignoreModified = false) {
449
420
  const repoDir = ctx.paths.repoDir;
@@ -482,6 +453,19 @@ function checkWorkerRulesFiles(ctx, checks, fixes, doFix, gitignoreModified = fa
482
453
  writeFileSync(claudeSettings, generateClaudeHookSettings());
483
454
  created.push('.claude/settings.json');
484
455
  }
456
+ // Install the hook script referenced by settings.json. Without this, the
457
+ // Stop hook command `bash $CLAUDE_PROJECT_DIR/.claude/hooks/stop.sh` fails.
458
+ const stopHookSrc = resolve(TEMPLATE_DIR, '.claude', 'hooks', 'stop.sh');
459
+ const stopHookDst = resolve(repoDir, '.claude', 'hooks', 'stop.sh');
460
+ if (!existsSync(stopHookDst) && existsSync(stopHookSrc)) {
461
+ mkdirSync(resolve(repoDir, '.claude', 'hooks'), { recursive: true });
462
+ writeFileSync(stopHookDst, readFileSync(stopHookSrc, 'utf-8'));
463
+ try {
464
+ execSync(`chmod +x "${stopHookDst}"`, { timeout: 2000 });
465
+ }
466
+ catch { /* non-fatal */ }
467
+ created.push('.claude/hooks/stop.sh');
468
+ }
485
469
  if (created.length > 0 || gitignoreModified) {
486
470
  try {
487
471
  const filesToAdd = [...created];
@@ -1 +1 @@
1
- {"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../src/commands/doctor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../src/commands/doctor.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"projectInit.d.ts","sourceRoot":"","sources":["../../src/commands/projectInit.ts"],"names":[],"mappings":"AA6CA,wBAAsB,kBAAkB,CACtC,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC7B,OAAO,CAAC,IAAI,CAAC,CA6Uf"}
1
+ {"version":3,"file":"projectInit.d.ts","sourceRoot":"","sources":["../../src/commands/projectInit.ts"],"names":[],"mappings":"AA2GA,wBAAsB,kBAAkB,CACtC,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC7B,OAAO,CAAC,IAAI,CAAC,CA4Vf"}
@@ -18,7 +18,7 @@
18
18
  * @outputs 初始化后的项目目录和配置文件
19
19
  * @workflow 1. 查找模板目录 → 2. 创建项目目录 → 3. 复制模板文件 → 4. 写入配置
20
20
  */
21
- import { chmodSync, existsSync, mkdirSync, writeFileSync } from 'node:fs';
21
+ import { appendFileSync, chmodSync, cpSync, existsSync, mkdirSync, readFileSync, rmSync, writeFileSync } from 'node:fs';
22
22
  import { dirname, resolve } from 'node:path';
23
23
  import { createInterface } from 'node:readline';
24
24
  import { fileURLToPath } from 'node:url';
@@ -41,7 +41,66 @@ function findTemplateDir() {
41
41
  return legacyPath;
42
42
  return npmPath; // default, will fail gracefully below
43
43
  }
44
- const _TEMPLATE_DIR = findTemplateDir();
44
+ const TEMPLATE_DIR = findTemplateDir();
45
+ /**
46
+ * Install the bundled `.claude/` preset (hooks, settings, CLAUDE.md skeleton)
47
+ * into the target project repo. Non-destructive: skips any file that already
48
+ * exists, so running `sps project init --force` won't clobber user edits.
49
+ *
50
+ * The template lives at `<TEMPLATE_DIR>/.claude/` and is shipped with the npm
51
+ * package via the `files` field in package.json.
52
+ */
53
+ function installClaudePreset(projectDir, projectName, log) {
54
+ const templateClaude = resolve(TEMPLATE_DIR, '.claude');
55
+ if (!existsSync(templateClaude)) {
56
+ log.warn(`Template .claude/ not found at ${templateClaude}, skipping preset install`);
57
+ return;
58
+ }
59
+ if (!existsSync(projectDir)) {
60
+ log.info(`Project repo ${projectDir} does not exist yet — skipping .claude/ install`);
61
+ return;
62
+ }
63
+ const targetClaude = resolve(projectDir, '.claude');
64
+ const preExisted = existsSync(targetClaude);
65
+ // Copy recursively, without clobbering existing files.
66
+ cpSync(templateClaude, targetClaude, {
67
+ recursive: true,
68
+ force: false,
69
+ errorOnExist: false,
70
+ });
71
+ // Materialize settings.local.json from template (substitute __PROJECT__).
72
+ const settingsLocalTmpl = resolve(targetClaude, 'settings.local.json.template');
73
+ const settingsLocal = resolve(targetClaude, 'settings.local.json');
74
+ if (existsSync(settingsLocalTmpl) && !existsSync(settingsLocal)) {
75
+ const content = readFileSync(settingsLocalTmpl, 'utf-8').replace(/__PROJECT__/g, projectName);
76
+ writeFileSync(settingsLocal, content);
77
+ }
78
+ // Remove the template so users don't accidentally edit it thinking it's live.
79
+ if (existsSync(settingsLocalTmpl)) {
80
+ rmSync(settingsLocalTmpl);
81
+ }
82
+ // Ensure hook scripts are executable (cpSync preserves mode, but play safe).
83
+ const stopHook = resolve(targetClaude, 'hooks', 'stop.sh');
84
+ if (existsSync(stopHook)) {
85
+ try {
86
+ chmodSync(stopHook, 0o755);
87
+ }
88
+ catch { /* non-fatal */ }
89
+ }
90
+ // Append .claude/settings.local.json to .gitignore (idempotent).
91
+ const gitignore = resolve(projectDir, '.gitignore');
92
+ const entry = '.claude/settings.local.json';
93
+ let existing = '';
94
+ if (existsSync(gitignore))
95
+ existing = readFileSync(gitignore, 'utf-8');
96
+ if (!existing.split('\n').some(line => line.trim() === entry)) {
97
+ const prefix = existing && !existing.endsWith('\n') ? '\n' : '';
98
+ appendFileSync(gitignore, `${prefix}${entry}\n`);
99
+ }
100
+ log.ok(preExisted
101
+ ? `Refreshed .claude/ preset in ${projectDir} (existing files preserved)`
102
+ : `Installed .claude/ preset into ${projectDir}`);
103
+ }
45
104
  export async function executeProjectInit(project, flags) {
46
105
  const log = new Logger('project-init', project);
47
106
  if (!project) {
@@ -346,6 +405,21 @@ stages:
346
405
  mkdirSync(memoryDir, { recursive: true });
347
406
  log.ok(`Created project memory at ${memoryDir}`);
348
407
  }
408
+ // Install Claude preset into the target project repo (if it exists).
409
+ // Read PROJECT_DIR from the generated conf (covers both interactive and
410
+ // existing-conf paths; no need to thread projectDir through local scope).
411
+ try {
412
+ const confContent = readFileSync(confDst, 'utf-8');
413
+ const match = confContent.match(/export\s+PROJECT_DIR=["']?([^"'\n]+)/);
414
+ const projectDir = match?.[1]?.trim();
415
+ if (projectDir) {
416
+ installClaudePreset(projectDir, project, log);
417
+ }
418
+ }
419
+ catch (err) {
420
+ const msg = err instanceof Error ? err.message : String(err);
421
+ log.warn(`Could not install Claude preset (non-fatal): ${msg}`);
422
+ }
349
423
  log.ok(`Project ${project} initialized at ${instanceDir}`);
350
424
  console.log('\n Next steps:\n');
351
425
  console.log(` 1. Create pipeline config:`);
@@ -1 +1 @@
1
- {"version":3,"file":"projectInit.js","sourceRoot":"","sources":["../../src/commands/projectInit.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"projectInit.js","sourceRoot":"","sources":["../../src/commands/projectInit.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=projectInit.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"projectInit.test.d.ts","sourceRoot":"","sources":["../../src/commands/projectInit.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,126 @@
1
+ /**
2
+ * @module projectInit.test
3
+ * @description `.claude/` 预设安装逻辑的单元测试
4
+ *
5
+ * @author eddy
6
+ * @organization wykj
7
+ * @ownership wykj/eddy
8
+ *
9
+ * @created 2026-04-20
10
+ * @updated 2026-04-20
11
+ *
12
+ * @role test
13
+ * @layer command
14
+ * @boundedContext system
15
+ *
16
+ * 只测 installClaudePreset 的行为(复制、占位符替换、gitignore 追加、幂等)。
17
+ * 交互式 init 流程不测,因为要 mock stdin/readline,成本高收益低。
18
+ */
19
+ import { cpSync, existsSync, mkdirSync, mkdtempSync, readFileSync, rmSync, writeFileSync } from 'node:fs';
20
+ import { tmpdir } from 'node:os';
21
+ import { join, resolve } from 'node:path';
22
+ import { afterEach, beforeEach, describe, expect, it } from 'vitest';
23
+ function tempDir() {
24
+ return mkdtempSync(join(tmpdir(), 'sps-initclaude-test-'));
25
+ }
26
+ /**
27
+ * Reproduce the template structure that ships with sps-cli. Tests don't
28
+ * depend on a real coding-work-flow/project-template — they build a fake one
29
+ * in tmp so the test is self-contained and portable.
30
+ */
31
+ function makeFakeTemplate(dir) {
32
+ const tmpl = join(dir, '.claude');
33
+ mkdirSync(join(tmpl, 'hooks'), { recursive: true });
34
+ mkdirSync(join(tmpl, 'skills'), { recursive: true });
35
+ writeFileSync(join(tmpl, 'settings.json'), JSON.stringify({ hooks: {} }, null, 2));
36
+ writeFileSync(join(tmpl, 'settings.local.json.template'), '{"autoMemoryDirectory":"~/.coral/projects/__PROJECT__/memory"}\n');
37
+ writeFileSync(join(tmpl, 'CLAUDE.md'), '# Test CLAUDE.md\n');
38
+ writeFileSync(join(tmpl, 'hooks', 'stop.sh'), '#!/bin/bash\necho hi\n');
39
+ writeFileSync(join(tmpl, 'skills', '.gitkeep'), '');
40
+ }
41
+ // Pull the function under test out by duplicating its essential logic here.
42
+ // The real function is wired to findTemplateDir() which resolves to the shipped
43
+ // project-template. For unit testing, we re-implement the body with an explicit
44
+ // template path argument so we can point it at a fake template.
45
+ function installClaudePresetForTest(templateDir, projectDir, projectName) {
46
+ const templateClaude = resolve(templateDir, '.claude');
47
+ if (!existsSync(templateClaude) || !existsSync(projectDir))
48
+ return;
49
+ cpSync(templateClaude, resolve(projectDir, '.claude'), {
50
+ recursive: true, force: false, errorOnExist: false,
51
+ });
52
+ const settingsLocalTmpl = resolve(projectDir, '.claude', 'settings.local.json.template');
53
+ const settingsLocal = resolve(projectDir, '.claude', 'settings.local.json');
54
+ if (existsSync(settingsLocalTmpl) && !existsSync(settingsLocal)) {
55
+ const content = readFileSync(settingsLocalTmpl, 'utf-8').replace(/__PROJECT__/g, projectName);
56
+ writeFileSync(settingsLocal, content);
57
+ }
58
+ if (existsSync(settingsLocalTmpl))
59
+ rmSync(settingsLocalTmpl);
60
+ const gitignore = resolve(projectDir, '.gitignore');
61
+ const entry = '.claude/settings.local.json';
62
+ let existing = '';
63
+ if (existsSync(gitignore))
64
+ existing = readFileSync(gitignore, 'utf-8');
65
+ if (!existing.split('\n').some(l => l.trim() === entry)) {
66
+ const prefix = existing && !existing.endsWith('\n') ? '\n' : '';
67
+ writeFileSync(gitignore, existing + prefix + entry + '\n');
68
+ }
69
+ }
70
+ describe('installClaudePreset', () => {
71
+ let dir;
72
+ let templateRoot;
73
+ let projectRoot;
74
+ beforeEach(() => {
75
+ dir = tempDir();
76
+ templateRoot = join(dir, 'template');
77
+ projectRoot = join(dir, 'project');
78
+ mkdirSync(templateRoot, { recursive: true });
79
+ mkdirSync(projectRoot, { recursive: true });
80
+ makeFakeTemplate(templateRoot);
81
+ });
82
+ afterEach(() => {
83
+ rmSync(dir, { recursive: true, force: true });
84
+ });
85
+ it('copies the full .claude/ tree into the target project', () => {
86
+ installClaudePresetForTest(templateRoot, projectRoot, 'my-project');
87
+ expect(existsSync(join(projectRoot, '.claude', 'settings.json'))).toBe(true);
88
+ expect(existsSync(join(projectRoot, '.claude', 'CLAUDE.md'))).toBe(true);
89
+ expect(existsSync(join(projectRoot, '.claude', 'hooks', 'stop.sh'))).toBe(true);
90
+ expect(existsSync(join(projectRoot, '.claude', 'skills', '.gitkeep'))).toBe(true);
91
+ });
92
+ it('substitutes __PROJECT__ in settings.local.json and removes the template', () => {
93
+ installClaudePresetForTest(templateRoot, projectRoot, 'my-app');
94
+ const settingsLocal = join(projectRoot, '.claude', 'settings.local.json');
95
+ expect(existsSync(settingsLocal)).toBe(true);
96
+ expect(readFileSync(settingsLocal, 'utf-8')).toContain('~/.coral/projects/my-app/memory');
97
+ const tmpl = join(projectRoot, '.claude', 'settings.local.json.template');
98
+ expect(existsSync(tmpl)).toBe(false);
99
+ });
100
+ it('appends .claude/settings.local.json to .gitignore when absent', () => {
101
+ installClaudePresetForTest(templateRoot, projectRoot, 'p');
102
+ const gi = readFileSync(join(projectRoot, '.gitignore'), 'utf-8');
103
+ expect(gi.trim().split('\n')).toContain('.claude/settings.local.json');
104
+ });
105
+ it('does NOT duplicate the .gitignore entry if it already exists', () => {
106
+ writeFileSync(join(projectRoot, '.gitignore'), 'node_modules\n.claude/settings.local.json\n');
107
+ installClaudePresetForTest(templateRoot, projectRoot, 'p');
108
+ const lines = readFileSync(join(projectRoot, '.gitignore'), 'utf-8')
109
+ .split('\n').filter(l => l.trim() === '.claude/settings.local.json');
110
+ expect(lines.length).toBe(1);
111
+ });
112
+ it('does NOT overwrite user-edited CLAUDE.md on re-run', () => {
113
+ mkdirSync(join(projectRoot, '.claude'), { recursive: true });
114
+ writeFileSync(join(projectRoot, '.claude', 'CLAUDE.md'), '# My customized rules\n');
115
+ installClaudePresetForTest(templateRoot, projectRoot, 'p');
116
+ // cpSync with force:false preserves existing content
117
+ expect(readFileSync(join(projectRoot, '.claude', 'CLAUDE.md'), 'utf-8'))
118
+ .toBe('# My customized rules\n');
119
+ });
120
+ it('is a no-op when project directory does not exist', () => {
121
+ const missing = join(dir, 'does-not-exist');
122
+ expect(() => installClaudePresetForTest(templateRoot, missing, 'p')).not.toThrow();
123
+ expect(existsSync(join(missing, '.claude'))).toBe(false);
124
+ });
125
+ });
126
+ //# sourceMappingURL=projectInit.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"projectInit.test.js","sourceRoot":"","sources":["../../src/commands/projectInit.test.ts"],"names":[],"mappings":"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"}
@@ -85,5 +85,12 @@ export declare class WorkerManagerImpl implements WorkerManager {
85
85
  cleanup(): void;
86
86
  private reject;
87
87
  private log;
88
+ /**
89
+ * Atomically write the per-slot "current card" marker file that Stop hooks
90
+ * consult to know which card is currently being worked on. Uses tmp +
91
+ * renameSync for POSIX-atomic swap so the hook never reads a half-written
92
+ * file. Path: <runtime-dir>/worker-<slot>-current.json.
93
+ */
94
+ private writeCurrentCardFile;
88
95
  }
89
96
  //# sourceMappingURL=worker-manager-impl.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"worker-manager-impl.d.ts","sourceRoot":"","sources":["../../src/manager/worker-manager-impl.ts"],"names":[],"mappings":"AAkBA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,KAAK,EAAE,eAAe,EAAoB,MAAM,uBAAuB,CAAC;AAC/E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,KAAK,EAAC,YAAY,EACvB,eAAe,EAAE,cAAc,EAAC,iBAAiB,EAAC,kBAAkB,EACpE,gBAAgB,EAAE,iBAAiB,EAAE,cAAc,EAAE,eAAe,EAAc,kBAAkB,EACpG,aAAa,EACb,cAAc,EACf,MAAM,qBAAqB,CAAC;AAI7B,MAAM,WAAW,iBAAiB;IAChC,UAAU,EAAE,iBAAiB,CAAC;IAC9B,eAAe,EAAE,eAAe,CAAC;IACjC,YAAY,EAAE,YAAY,GAAG,IAAI,CAAC;IAClC,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;CACpB;AA2BD,qBAAa,iBAAkB,YAAW,aAAa;IACrD,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAoB;IAC/C,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAkB;IAClD,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAsB;IACnD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IACnC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;IACpC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAA4B;IAC1D,OAAO,CAAC,QAAQ,CAAC,WAAW,CAA6B;IACzD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAqC;IAC9D,wEAAwE;IACxE,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAsC;gBAE3D,IAAI,EAAE,iBAAiB;IAU7B,GAAG,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,eAAe,CAAC;IAatD,MAAM,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,eAAe,CAAC;IAc5D,MAAM,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC;IA+BvD,OAAO,CAAC,KAAK,EAAE,YAAY,GAAG,cAAc,EAAE;IA2B9C,OAAO,CAAC,OAAO,EAAE,kBAAkB,GAAG,IAAI;IAIpC,SAAS,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;IAMnD,OAAO,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC;IASnD,OAAO,CAAC,QAAQ,EAAE,eAAe,EAAE,GAAG,OAAO,CAAC,cAAc,CAAC;YAsErD,eAAe;YAoFf,UAAU;IA6CxB;;;;;;;;;;;OAWG;IACH,OAAO,CAAC,oBAAoB;IA2F5B;;;OAGG;IACH,OAAO,CAAC,iBAAiB;IAiCzB,iFAAiF;IACjF,OAAO,CAAC,kBAAkB;IAiB1B;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAgC1B;;;OAGG;IACH,OAAO,CAAC,eAAe;IAkDvB;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAgBzB;;OAEG;IACH,OAAO,CAAC,UAAU;IAalB;;OAEG;IACH,OAAO,CAAC,UAAU;IAWlB,OAAO,CAAC,EAAE;IACV,OAAO,CAAC,EAAE;IAEV,OAAO,CAAC,YAAY;IAIpB,OAAO,CAAC,SAAS;IAwBjB,OAAO,CAAC,kBAAkB;IAQ1B,OAAO,CAAC,cAAc;IAatB,OAAO,CAAC,gBAAgB;IAcxB,OAAO,CAAC,YAAY;IA8BpB,OAAO,CAAC,mBAAmB;IAS3B,OAAO,CAAC,SAAS;IAQjB,OAAO,IAAI,IAAI;IAgBf,OAAO,CAAC,MAAM;IAId,OAAO,CAAC,GAAG;CACZ"}
1
+ {"version":3,"file":"worker-manager-impl.d.ts","sourceRoot":"","sources":["../../src/manager/worker-manager-impl.ts"],"names":[],"mappings":"AAoBA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,KAAK,EAAE,eAAe,EAAoB,MAAM,uBAAuB,CAAC;AAC/E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,KAAK,EAAC,YAAY,EACvB,eAAe,EAAE,cAAc,EAAC,iBAAiB,EAAC,kBAAkB,EACpE,gBAAgB,EAAE,iBAAiB,EAAE,cAAc,EAAE,eAAe,EAAc,kBAAkB,EACpG,aAAa,EACb,cAAc,EACf,MAAM,qBAAqB,CAAC;AAI7B,MAAM,WAAW,iBAAiB;IAChC,UAAU,EAAE,iBAAiB,CAAC;IAC9B,eAAe,EAAE,eAAe,CAAC;IACjC,YAAY,EAAE,YAAY,GAAG,IAAI,CAAC;IAClC,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;CACpB;AA2BD,qBAAa,iBAAkB,YAAW,aAAa;IACrD,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAoB;IAC/C,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAkB;IAClD,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAsB;IACnD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IACnC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;IACpC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAA4B;IAC1D,OAAO,CAAC,QAAQ,CAAC,WAAW,CAA6B;IACzD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAqC;IAC9D,wEAAwE;IACxE,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAsC;gBAE3D,IAAI,EAAE,iBAAiB;IAU7B,GAAG,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,eAAe,CAAC;IAatD,MAAM,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,eAAe,CAAC;IAc5D,MAAM,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC;IA+BvD,OAAO,CAAC,KAAK,EAAE,YAAY,GAAG,cAAc,EAAE;IA2B9C,OAAO,CAAC,OAAO,EAAE,kBAAkB,GAAG,IAAI;IAIpC,SAAS,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;IAMnD,OAAO,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC;IASnD,OAAO,CAAC,QAAQ,EAAE,eAAe,EAAE,GAAG,OAAO,CAAC,cAAc,CAAC;YAsErD,eAAe;YA2Ff,UAAU;IA6CxB;;;;;;;;;;;OAWG;IACH,OAAO,CAAC,oBAAoB;IA2F5B;;;OAGG;IACH,OAAO,CAAC,iBAAiB;IAiCzB,iFAAiF;IACjF,OAAO,CAAC,kBAAkB;IAiB1B;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAgC1B;;;OAGG;IACH,OAAO,CAAC,eAAe;IAkDvB;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAgBzB;;OAEG;IACH,OAAO,CAAC,UAAU;IAalB;;OAEG;IACH,OAAO,CAAC,UAAU;IAWlB,OAAO,CAAC,EAAE;IACV,OAAO,CAAC,EAAE;IAEV,OAAO,CAAC,YAAY;IAIpB,OAAO,CAAC,SAAS;IAwBjB,OAAO,CAAC,kBAAkB;IAQ1B,OAAO,CAAC,cAAc;IAatB,OAAO,CAAC,gBAAgB;IAcxB,OAAO,CAAC,YAAY;IA8BpB,OAAO,CAAC,mBAAmB;IAS3B,OAAO,CAAC,SAAS;IAQjB,OAAO,IAAI,IAAI;IAgBf,OAAO,CAAC,MAAM;IAId,OAAO,CAAC,GAAG;IAEX;;;;;OAKG;IACH,OAAO,CAAC,oBAAoB;CAc7B"}
@@ -14,6 +14,8 @@
14
14
  * @boundedContext worker-lifecycle
15
15
  */
16
16
  import { execFileSync } from 'node:child_process';
17
+ import { renameSync, writeFileSync } from 'node:fs';
18
+ import { dirname, resolve } from 'node:path';
17
19
  import { createIdleWorkerSlot, readState, writeState } from '../core/state.js';
18
20
  // ─── Timeout Defaults ──────────────────────────────────────────
19
21
  const DEFAULT_TIMEOUTS = {
@@ -229,6 +231,11 @@ export class WorkerManagerImpl {
229
231
  };
230
232
  if (cardTitle)
231
233
  extraEnv.SPS_CARD_TITLE = cardTitle;
234
+ // Atomically write per-slot "current card" marker. Env vars are frozen
235
+ // at subprocess spawn; when the same claude process is reused for the
236
+ // next card, its env still points to the first card. Stop hooks must
237
+ // read this file (not env) to know the current card.
238
+ this.writeCurrentCardFile(slot, taskId, stageName);
232
239
  const session = resumeSessionId
233
240
  ? await this.agentRuntime.resumeRun(slot, prompt)
234
241
  : await this.agentRuntime.startRun(slot, prompt, tool, cwd, { extraEnv });
@@ -677,5 +684,26 @@ export class WorkerManagerImpl {
677
684
  return { accepted: false, slot: null, workerId: null, rejectReason: reason };
678
685
  }
679
686
  log(msg) { process.stderr.write(`[worker-manager] ${msg}\n`); }
687
+ /**
688
+ * Atomically write the per-slot "current card" marker file that Stop hooks
689
+ * consult to know which card is currently being worked on. Uses tmp +
690
+ * renameSync for POSIX-atomic swap so the hook never reads a half-written
691
+ * file. Path: <runtime-dir>/worker-<slot>-current.json.
692
+ */
693
+ writeCurrentCardFile(slot, cardId, stage) {
694
+ try {
695
+ const runtimeDir = dirname(this.stateFile);
696
+ const finalPath = resolve(runtimeDir, `worker-${slot}-current.json`);
697
+ const tmpPath = `${finalPath}.tmp`;
698
+ const payload = JSON.stringify({ cardId, stage, dispatchedAt: new Date().toISOString() });
699
+ writeFileSync(tmpPath, payload);
700
+ renameSync(tmpPath, finalPath);
701
+ }
702
+ catch (err) {
703
+ // Non-fatal: hook will fall through to error if file missing, which is
704
+ // preferable to silently mis-marking a card.
705
+ this.log(`Failed to write current-card marker for ${slot}:${cardId} — ${err instanceof Error ? err.message : String(err)}`);
706
+ }
707
+ }
680
708
  }
681
709
  //# sourceMappingURL=worker-manager-impl.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"worker-manager-impl.js","sourceRoot":"","sources":["../../src/manager/worker-manager-impl.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"worker-manager-impl.js","sourceRoot":"","sources":["../../src/manager/worker-manager-impl.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@coralai/sps-cli",
3
- "version": "0.39.0",
3
+ "version": "0.40.1",
4
4
  "description": "SPS CLI — AI-driven development pipeline orchestrator",
5
5
  "type": "module",
6
6
  "main": "dist/main.js",
@@ -0,0 +1,49 @@
1
+ # Project Rules (Claude Code Worker)
2
+
3
+ <!--
4
+ This file is auto-generated by `sps project init` / `sps doctor --fix`.
5
+ Edit it to add project-specific rules. SPS will not overwrite it once it exists.
6
+ -->
7
+
8
+ ## Scope
9
+
10
+ - Work only in the current project directory.
11
+ - Do NOT read or modify files outside this directory.
12
+ - Do NOT explore `~/.coral/projects/...` or other system paths.
13
+
14
+ ## SPS Pipeline Context
15
+
16
+ This project is driven by SPS (Smart Pipeline System). Each card is a task.
17
+ When you are launched as a worker, the following env vars identify your task:
18
+
19
+ - `$SPS_PROJECT` — project name
20
+ - `$SPS_CARD_ID` — card sequence number
21
+ - `$SPS_CARD_TITLE` — card title (for logging)
22
+ - `$SPS_STAGE` — pipeline stage name (e.g. `develop`, `qa`)
23
+ - `$SPS_WORKER_SLOT` — worker slot name
24
+
25
+ ## Completion protocol
26
+
27
+ - When you finish the task, Claude's **Stop hook** runs automatically
28
+ (via `.claude/hooks/stop.sh`) and tags the card `COMPLETED-<stage>`.
29
+ - You do NOT need to manually update card state, move the card between
30
+ columns, or commit on behalf of the pipeline.
31
+ - If you declare "done" without actually implementing the work, the pipeline
32
+ will still advance. The user relies on your honesty here.
33
+
34
+ ## Memory
35
+
36
+ - Claude's **auto memory** is enabled and stored under
37
+ `~/.coral/projects/$SPS_PROJECT/memory/`. You write to `MEMORY.md` there
38
+ to persist knowledge across sessions.
39
+ - Use `sps memory add <project> --type ...` to write structured SPS memories
40
+ (conventions, decisions, lessons) for the human to curate.
41
+
42
+ ## Git (if the project uses git)
43
+
44
+ - Claude handles all git operations itself (commit, push, etc.).
45
+ - SPS does NOT intervene in git workflows or conflict resolution.
46
+
47
+ ## Project-specific rules
48
+
49
+ <!-- Add your own conventions, architecture notes, and constraints below. -->
@@ -0,0 +1,48 @@
1
+ #!/bin/bash
2
+ # SPS Pipeline Worker — Stop hook
3
+ #
4
+ # Triggered when Claude finishes its current turn. The pipeline depends on
5
+ # Phase 1 to advance card state. Phase 2+ is user-customizable.
6
+ #
7
+ # Env vars (set by SPS worker at spawn time, FROZEN for the process lifetime):
8
+ # SPS_PROJECT Project name (stable across card reuse)
9
+ # SPS_WORKER_SLOT Worker slot (stable across card reuse)
10
+ # SPS_CARD_ID Card sequence — NOTE: stale when claude is reused for
11
+ # the next card. Do NOT use for mark-complete.
12
+ # SPS_STAGE Pipeline stage — also stale on reuse.
13
+ # SPS_CARD_TITLE Card title (optional)
14
+ #
15
+ # Claude-native env also available:
16
+ # CLAUDE_PROJECT_DIR, CLAUDE_SESSION_ID
17
+
18
+ set -e
19
+
20
+ # ─── Phase 1: SPS official action (do NOT remove) ────────────────────
21
+ # Mark the card complete so pipeline can advance state.
22
+ # We call mark-complete WITHOUT a seq — the command reads the per-slot
23
+ # current-card marker file (written by the worker manager on each dispatch)
24
+ # to get the authoritative current card. This is the only way to be correct
25
+ # when the same claude process handles multiple cards in sequence.
26
+ if [ -n "$SPS_PROJECT" ] && [ -n "$SPS_WORKER_SLOT" ]; then
27
+ sps card mark-complete "$SPS_PROJECT"
28
+ fi
29
+
30
+ # ─── Phase 2: User-customizable actions (edit as needed) ────────────
31
+
32
+ # Example: record the session transcript location for later audit.
33
+ # if [ -n "$CLAUDE_SESSION_ID" ] && [ -n "$SPS_CARD_ID" ]; then
34
+ # echo "$CLAUDE_SESSION_ID" >> "$CLAUDE_PROJECT_DIR/.sps/session-log.txt"
35
+ # fi
36
+
37
+ # Example: third-party knowledge base capture.
38
+ # if command -v your-kb-cli &>/dev/null; then
39
+ # your-kb-cli capture --project "$SPS_PROJECT" --session "$CLAUDE_SESSION_ID"
40
+ # fi
41
+
42
+ # Example: notify on completion.
43
+ # sps notify matrix "[$SPS_PROJECT] seq $SPS_CARD_ID ($SPS_STAGE) done"
44
+
45
+ # Example: post-task CI trigger.
46
+ # curl -sfX POST "$CI_WEBHOOK" -d "{\"project\":\"$SPS_PROJECT\",\"card\":\"$SPS_CARD_ID\"}"
47
+
48
+ exit 0
File without changes
@@ -0,0 +1,32 @@
1
+ {
2
+ "$schema": "https://json.schemastore.org/claude-code-settings.json",
3
+ "hooks": {
4
+ "Stop": [
5
+ {
6
+ "hooks": [
7
+ {
8
+ "type": "command",
9
+ "command": "bash \"$CLAUDE_PROJECT_DIR\"/.claude/hooks/stop.sh"
10
+ }
11
+ ]
12
+ }
13
+ ],
14
+ "UserPromptSubmit": [
15
+ {
16
+ "hooks": [
17
+ {
18
+ "type": "command",
19
+ "command": "sps hook user-prompt-submit"
20
+ }
21
+ ]
22
+ }
23
+ ]
24
+ },
25
+ "attribution": {
26
+ "commit": "",
27
+ "pr": ""
28
+ },
29
+ "companyAnnouncements": [
30
+ "🔧 SPS Pipeline Worker — completion is declared via Stop hook \u2192 COMPLETED-<stage> label"
31
+ ]
32
+ }
@@ -0,0 +1,3 @@
1
+ {
2
+ "autoMemoryDirectory": "~/.coral/projects/__PROJECT__/memory"
3
+ }
File without changes