gsd-lite 0.3.14 → 0.3.16

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (42) hide show
  1. package/.claude-plugin/marketplace.json +1 -1
  2. package/.claude-plugin/plugin.json +1 -1
  3. package/.mcp.json +0 -0
  4. package/README.md +0 -0
  5. package/agents/debugger.md +0 -0
  6. package/agents/executor.md +0 -0
  7. package/agents/researcher.md +0 -0
  8. package/agents/reviewer.md +0 -0
  9. package/commands/prd.md +1 -1
  10. package/commands/resume.md +0 -0
  11. package/commands/start.md +1 -1
  12. package/commands/status.md +0 -0
  13. package/commands/stop.md +0 -0
  14. package/hooks/context-monitor.js +0 -0
  15. package/hooks/gsd-auto-update.cjs +23 -0
  16. package/hooks/gsd-context-monitor.cjs +0 -0
  17. package/hooks/gsd-session-init.cjs +22 -10
  18. package/hooks/gsd-statusline.cjs +0 -0
  19. package/hooks/hooks.json +0 -0
  20. package/install.js +0 -0
  21. package/launcher.js +0 -0
  22. package/package.json +1 -1
  23. package/references/anti-rationalization-full.md +0 -0
  24. package/references/evidence-spec.md +0 -0
  25. package/references/execution-loop.md +0 -0
  26. package/references/git-worktrees.md +0 -0
  27. package/references/questioning.md +0 -0
  28. package/references/review-classification.md +0 -0
  29. package/references/state-diagram.md +0 -0
  30. package/references/testing-patterns.md +0 -0
  31. package/src/schema.js +0 -0
  32. package/src/server.js +0 -0
  33. package/src/tools/orchestrator.js +0 -0
  34. package/src/tools/state.js +0 -0
  35. package/src/tools/verify.js +0 -0
  36. package/src/utils.js +0 -0
  37. package/uninstall.js +0 -0
  38. package/workflows/debugging.md +0 -0
  39. package/workflows/deviation-rules.md +0 -0
  40. package/workflows/research.md +0 -0
  41. package/workflows/review-cycle.md +0 -0
  42. package/workflows/tdd-cycle.md +0 -0
@@ -13,7 +13,7 @@
13
13
  "name": "gsd",
14
14
  "source": "./",
15
15
  "description": "AI orchestration tool — GSD management shell + Superpowers quality core. 5 commands, 4 agents, 5 workflows, MCP server, context monitoring.",
16
- "version": "0.3.14",
16
+ "version": "0.3.16",
17
17
  "keywords": [
18
18
  "orchestration",
19
19
  "mcp",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "gsd",
3
- "version": "0.3.14",
3
+ "version": "0.3.16",
4
4
  "description": "AI orchestration tool for Claude Code — GSD management shell + Superpowers quality core",
5
5
  "author": {
6
6
  "name": "sdsrss",
package/.mcp.json CHANGED
File without changes
package/README.md CHANGED
File without changes
File without changes
File without changes
File without changes
File without changes
package/commands/prd.md CHANGED
@@ -1,5 +1,5 @@
1
1
  ---
2
- description: Start project from requirements document or description text
2
+ description: "Start project from requirements document or description text. Use when: (1) user provides a requirements doc, PRD, spec file, or design document, (2) user pastes a detailed feature description or task list, (3) user says '按这个需求做' or 'here\\'s what I need built', (4) user has a clear written specification ready to plan and execute"
3
3
  argument-hint: File path to requirements doc, or inline description text
4
4
  ---
5
5
 
File without changes
package/commands/start.md CHANGED
@@ -1,5 +1,5 @@
1
1
  ---
2
- description: Interactive project start — discuss requirements, research, plan, then auto-execute
2
+ description: "Interactive project start — discuss requirements, research, plan, then auto-execute. Use when: (1) user wants to implement a new feature or complex functionality, (2) user wants to research/analyze a technology then build something, (3) user describes a multi-step task that needs planning and decomposition, (4) user says '帮我做/实现/开发/搞一个...' or 'let\\'s build/create/implement...', (5) task is too complex for a single-shot response and needs phased execution"
3
3
  argument-hint: Optional feature or project description
4
4
  ---
5
5
 
File without changes
package/commands/stop.md CHANGED
File without changes
File without changes
@@ -286,3 +286,26 @@ module.exports = {
286
286
  compareVersions,
287
287
  shouldSkipUpdateCheck,
288
288
  };
289
+
290
+ // ── CLI Entry Point (for background auto-install) ─────────
291
+ if (require.main === module) {
292
+ checkForUpdate({ install: true, verbose: false })
293
+ .then((result) => {
294
+ if (result?.updated) {
295
+ const notifPath = path.join(stateDir, 'update-notification.json');
296
+ fs.mkdirSync(stateDir, { recursive: true });
297
+ const tmpPath = notifPath + `.${process.pid}.tmp`;
298
+ fs.writeFileSync(
299
+ tmpPath,
300
+ JSON.stringify({
301
+ from: result.from,
302
+ to: result.to,
303
+ at: new Date().toISOString(),
304
+ }) + '\n',
305
+ );
306
+ fs.renameSync(tmpPath, notifPath);
307
+ }
308
+ })
309
+ .catch(() => {})
310
+ .finally(() => process.exit(0));
311
+ }
File without changes
@@ -1,7 +1,9 @@
1
1
  #!/usr/bin/env node
2
2
  // GSD-Lite SessionStart hook
3
- // 1. Auto-registers statusLine in settings.json if not already configured.
4
- // 2. Checks for updates and notifies user (no download in hook context).
3
+ // 1. Cleans up stale temp files (throttled to once/day).
4
+ // 2. Auto-registers statusLine in settings.json if not already configured.
5
+ // 3. Shows notification if a previous background auto-update completed.
6
+ // 4. Spawns background auto-update (detached, non-blocking).
5
7
  // Idempotent: skips if statusLine already points to gsd-statusline, preserves
6
8
  // third-party statuslines.
7
9
 
@@ -64,15 +66,25 @@ setTimeout(() => process.exit(0), 4000).unref();
64
66
  }
65
67
  } catch { /* silent */ }
66
68
 
67
- // ── Phase 3: Auto-update check (notify only, no download) ──
68
- // checkForUpdate handles throttling internally via shouldCheck()
69
+ // ── Phase 3: Show notification from previous background auto-install ──
69
70
  try {
70
- const { checkForUpdate } = require('./gsd-auto-update.cjs');
71
- const result = await checkForUpdate({ install: false });
72
- if (result?.updateAvailable) {
73
- console.log(
74
- `\n📦 GSD-Lite v${result.to} available (current: v${result.from}). Run: gsd update`
75
- );
71
+ const notifPath = path.join(claudeDir, 'gsd', 'runtime', 'update-notification.json');
72
+ if (fs.existsSync(notifPath)) {
73
+ const notif = JSON.parse(fs.readFileSync(notifPath, 'utf8'));
74
+ console.log(`✅ GSD-Lite auto-updated: v${notif.from} → v${notif.to}`);
75
+ fs.unlinkSync(notifPath);
76
76
  }
77
+ } catch { /* silent */ }
78
+
79
+ // ── Phase 4: Spawn background auto-update (non-blocking) ──
80
+ // Detached child handles check + download + install; throttled by shouldCheck()
81
+ try {
82
+ const { spawn } = require('node:child_process');
83
+ const child = spawn(
84
+ process.execPath,
85
+ [path.join(__dirname, 'gsd-auto-update.cjs')],
86
+ { detached: true, stdio: 'ignore' },
87
+ );
88
+ child.unref();
77
89
  } catch { /* silent — never block session start */ }
78
90
  })().catch(() => {});
File without changes
package/hooks/hooks.json CHANGED
File without changes
package/install.js CHANGED
File without changes
package/launcher.js CHANGED
File without changes
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "gsd-lite",
3
- "version": "0.3.14",
3
+ "version": "0.3.16",
4
4
  "description": "AI orchestration tool for Claude Code — GSD management shell + Superpowers quality core",
5
5
  "type": "module",
6
6
  "bin": {
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
package/src/schema.js CHANGED
File without changes
package/src/server.js CHANGED
File without changes
File without changes
File without changes
File without changes
package/src/utils.js CHANGED
File without changes
package/uninstall.js CHANGED
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes