specweave 1.0.586 → 1.0.588

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 (72) hide show
  1. package/bin/specweave.js +30 -0
  2. package/dist/dashboard/assets/{index-DdI7mc7Y.js → index-DH3l1QBV.js} +6 -6
  3. package/dist/dashboard/assets/index-vkwF92tD.css +1 -0
  4. package/dist/dashboard/index.html +2 -2
  5. package/dist/plugins/specweave/lib/integrations/github/github-access-error.d.ts +48 -0
  6. package/dist/plugins/specweave/lib/integrations/github/github-access-error.d.ts.map +1 -0
  7. package/dist/plugins/specweave/lib/integrations/github/github-access-error.js +69 -0
  8. package/dist/plugins/specweave/lib/integrations/github/github-access-error.js.map +1 -0
  9. package/dist/plugins/specweave/lib/integrations/github/github-client-v2.d.ts +8 -0
  10. package/dist/plugins/specweave/lib/integrations/github/github-client-v2.d.ts.map +1 -1
  11. package/dist/plugins/specweave/lib/integrations/github/github-client-v2.js +22 -2
  12. package/dist/plugins/specweave/lib/integrations/github/github-client-v2.js.map +1 -1
  13. package/dist/plugins/specweave/lib/utils/fs-native.d.ts +1 -1
  14. package/dist/plugins/specweave/lib/vendor/generators/spec/task-parser.js +38 -16
  15. package/dist/plugins/specweave/lib/vendor/generators/spec/task-parser.js.map +1 -1
  16. package/dist/plugins/specweave/lib/vendor/utils/fs-native.d.ts +1 -1
  17. package/dist/src/cli/commands/handoff.d.ts +54 -0
  18. package/dist/src/cli/commands/handoff.d.ts.map +1 -0
  19. package/dist/src/cli/commands/handoff.js +82 -0
  20. package/dist/src/cli/commands/handoff.js.map +1 -0
  21. package/dist/src/cli/helpers/init/external-import.js.map +1 -1
  22. package/dist/src/cli/helpers/init/gitignore-generator.d.ts.map +1 -1
  23. package/dist/src/cli/helpers/init/gitignore-generator.js +3 -0
  24. package/dist/src/cli/helpers/init/gitignore-generator.js.map +1 -1
  25. package/dist/src/core/hooks/handlers/hook-router.d.ts.map +1 -1
  26. package/dist/src/core/hooks/handlers/hook-router.js +5 -0
  27. package/dist/src/core/hooks/handlers/hook-router.js.map +1 -1
  28. package/dist/src/core/hooks/handlers/pre-compact.d.ts +33 -0
  29. package/dist/src/core/hooks/handlers/pre-compact.d.ts.map +1 -0
  30. package/dist/src/core/hooks/handlers/pre-compact.js +109 -0
  31. package/dist/src/core/hooks/handlers/pre-compact.js.map +1 -0
  32. package/dist/src/core/hooks/handlers/types.d.ts +1 -1
  33. package/dist/src/core/hooks/handlers/types.d.ts.map +1 -1
  34. package/dist/src/core/hooks/handlers/types.js +3 -0
  35. package/dist/src/core/hooks/handlers/types.js.map +1 -1
  36. package/dist/src/core/session/handoff-doc-format.d.ts +164 -0
  37. package/dist/src/core/session/handoff-doc-format.d.ts.map +1 -0
  38. package/dist/src/core/session/handoff-doc-format.js +292 -0
  39. package/dist/src/core/session/handoff-doc-format.js.map +1 -0
  40. package/dist/src/core/session/handoff-git-state.d.ts +49 -0
  41. package/dist/src/core/session/handoff-git-state.d.ts.map +1 -0
  42. package/dist/src/core/session/handoff-git-state.js +164 -0
  43. package/dist/src/core/session/handoff-git-state.js.map +1 -0
  44. package/dist/src/core/session/handoff-secret-scrub.d.ts +59 -0
  45. package/dist/src/core/session/handoff-secret-scrub.d.ts.map +1 -0
  46. package/dist/src/core/session/handoff-secret-scrub.js +72 -0
  47. package/dist/src/core/session/handoff-secret-scrub.js.map +1 -0
  48. package/dist/src/core/session/{handoff-context.d.ts → install-handoff-context.d.ts} +7 -3
  49. package/dist/src/core/session/install-handoff-context.d.ts.map +1 -0
  50. package/dist/src/core/session/{handoff-context.js → install-handoff-context.js} +7 -3
  51. package/dist/src/core/session/install-handoff-context.js.map +1 -0
  52. package/dist/src/core/session/work-handoff.d.ts +88 -0
  53. package/dist/src/core/session/work-handoff.d.ts.map +1 -0
  54. package/dist/src/core/session/work-handoff.js +412 -0
  55. package/dist/src/core/session/work-handoff.js.map +1 -0
  56. package/dist/src/generators/spec/task-parser.d.ts.map +1 -1
  57. package/dist/src/generators/spec/task-parser.js +38 -16
  58. package/dist/src/generators/spec/task-parser.js.map +1 -1
  59. package/dist/src/utils/fs-native.d.ts +1 -1
  60. package/package.json +2 -2
  61. package/plugins/specweave/commands/handoff.md +54 -0
  62. package/plugins/specweave/lib/integrations/github/github-access-error.js +43 -0
  63. package/plugins/specweave/lib/integrations/github/github-access-error.ts +103 -0
  64. package/plugins/specweave/lib/integrations/github/github-client-v2.js +24 -4
  65. package/plugins/specweave/lib/integrations/github/github-client-v2.ts +26 -4
  66. package/plugins/specweave/lib/vendor/generators/spec/task-parser.js +38 -16
  67. package/plugins/specweave/lib/vendor/generators/spec/task-parser.js.map +1 -1
  68. package/plugins/specweave/lib/vendor/utils/fs-native.d.ts +1 -1
  69. package/plugins/specweave/skills/handoff/SKILL.md +59 -0
  70. package/dist/dashboard/assets/index-YkogWPHY.css +0 -1
  71. package/dist/src/core/session/handoff-context.d.ts.map +0 -1
  72. package/dist/src/core/session/handoff-context.js.map +0 -1
package/bin/specweave.js CHANGED
@@ -377,6 +377,36 @@ program
377
377
  await createIncrementCommand(options);
378
378
  });
379
379
 
380
+ // Handoff command - Assemble a portable cross-tool work-handoff doc + diff
381
+ program
382
+ .command('handoff [incrementId]')
383
+ .description('Write a portable, secret-scrubbed work-handoff doc + diff so you can resume in another AI tool')
384
+ .option('--reason <reason>', 'Why you are handing off (e.g. "out of tokens")')
385
+ .option('--summary <summary>', 'Short summary of where things stand')
386
+ .option('--next <next>', 'The exact next step for the resuming agent')
387
+ .option('--gotcha <gotcha>', 'A gotcha / warning for the next agent')
388
+ .option('--decision <decision>', 'A key decision (repeatable)', (val, acc) => { (acc || []).push(val); return acc || [val]; }, [])
389
+ .option('--inline', 'Embed the full scrubbed doc body in the paste-prompt (cross-machine resume)')
390
+ .option('--clipboard', 'Alias for --inline')
391
+ .option('--non-specweave', 'Force the .handoff/ fallback even inside a SpecWeave workspace')
392
+ .option('--out <path>', 'Override the doc output path')
393
+ .option('--json', 'Output the full result as JSON (for programmatic use)')
394
+ .action(async (incrementId, options) => {
395
+ const { handoffCommand } = await import('../dist/src/cli/commands/handoff.js');
396
+ await handoffCommand({
397
+ incrementId,
398
+ reason: options.reason,
399
+ summary: options.summary,
400
+ next: options.next,
401
+ gotcha: options.gotcha,
402
+ decision: options.decision,
403
+ inline: options.inline || options.clipboard,
404
+ nonSpecweave: options.nonSpecweave,
405
+ out: options.out,
406
+ json: options.json,
407
+ });
408
+ });
409
+
380
410
  // Next ID command - Return the next available increment number
381
411
  program
382
412
  .command('next-id')