ai-spector 0.5.2 → 0.5.4

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 (84) hide show
  1. package/README.md +9 -3
  2. package/dist/cli.js +121 -0
  3. package/dist/cli.js.map +1 -1
  4. package/dist/commands/hooks-constants.d.ts +2 -0
  5. package/dist/commands/hooks-constants.d.ts.map +1 -0
  6. package/dist/commands/hooks-constants.js +2 -0
  7. package/dist/commands/hooks-constants.js.map +1 -0
  8. package/dist/commands/hooks.d.ts +24 -0
  9. package/dist/commands/hooks.d.ts.map +1 -0
  10. package/dist/commands/hooks.js +208 -0
  11. package/dist/commands/hooks.js.map +1 -0
  12. package/dist/commands/index.d.ts.map +1 -1
  13. package/dist/commands/index.js +28 -0
  14. package/dist/commands/index.js.map +1 -1
  15. package/dist/commands/init.d.ts.map +1 -1
  16. package/dist/commands/init.js +20 -0
  17. package/dist/commands/init.js.map +1 -1
  18. package/dist/commands/lang-queue.d.ts +16 -0
  19. package/dist/commands/lang-queue.d.ts.map +1 -0
  20. package/dist/commands/lang-queue.js +72 -0
  21. package/dist/commands/lang-queue.js.map +1 -0
  22. package/dist/commands/lang.d.ts.map +1 -1
  23. package/dist/commands/lang.js +7 -0
  24. package/dist/commands/lang.js.map +1 -1
  25. package/dist/commands/setup.d.ts +26 -0
  26. package/dist/commands/setup.d.ts.map +1 -0
  27. package/dist/commands/setup.js +284 -0
  28. package/dist/commands/setup.js.map +1 -0
  29. package/dist/lang/diff.d.ts +12 -0
  30. package/dist/lang/diff.d.ts.map +1 -0
  31. package/dist/lang/diff.js +71 -0
  32. package/dist/lang/diff.js.map +1 -0
  33. package/dist/lang/paths.d.ts +16 -0
  34. package/dist/lang/paths.d.ts.map +1 -0
  35. package/dist/lang/paths.js +32 -0
  36. package/dist/lang/paths.js.map +1 -0
  37. package/dist/lang/queue-store.d.ts +25 -0
  38. package/dist/lang/queue-store.d.ts.map +1 -0
  39. package/dist/lang/queue-store.js +208 -0
  40. package/dist/lang/queue-store.js.map +1 -0
  41. package/dist/lang/queue-types.d.ts +122 -0
  42. package/dist/lang/queue-types.d.ts.map +1 -0
  43. package/dist/lang/queue-types.js +2 -0
  44. package/dist/lang/queue-types.js.map +1 -0
  45. package/dist/lang/queue.d.ts +17 -0
  46. package/dist/lang/queue.d.ts.map +1 -0
  47. package/dist/lang/queue.js +364 -0
  48. package/dist/lang/queue.js.map +1 -0
  49. package/dist/lang/sections.d.ts +26 -0
  50. package/dist/lang/sections.d.ts.map +1 -0
  51. package/dist/lang/sections.js +85 -0
  52. package/dist/lang/sections.js.map +1 -0
  53. package/dist/util/git-diff.d.ts +4 -0
  54. package/dist/util/git-diff.d.ts.map +1 -1
  55. package/dist/util/git-diff.js +35 -0
  56. package/dist/util/git-diff.js.map +1 -1
  57. package/dist/util/prompt.d.ts +4 -0
  58. package/dist/util/prompt.d.ts.map +1 -0
  59. package/dist/util/prompt.js +29 -0
  60. package/dist/util/prompt.js.map +1 -0
  61. package/package.json +1 -1
  62. package/scaffold/.ai-spector/.docflow/translation-queue/change-history.json +4 -0
  63. package/scaffold/.ai-spector/.docflow/translation-queue/changes/.gitkeep +0 -0
  64. package/scaffold/.ai-spector/.docflow/translation-queue/failed.json +4 -0
  65. package/scaffold/.ai-spector/.docflow/translation-queue/fingerprints.json +4 -0
  66. package/scaffold/.ai-spector/.docflow/translation-queue/pending.json +4 -0
  67. package/scaffold/.ai-spector/.docflow/translation-queue/resolved.json +4 -0
  68. package/scaffold/cursor/WORKFLOW.md +12 -3
  69. package/scaffold/cursor/rules/ai-spector-after-doc-edit.mdc +73 -0
  70. package/scaffold/cursor/skills/README.md +3 -0
  71. package/scaffold/cursor/skills/_skill-router.md +3 -0
  72. package/scaffold/cursor/skills/ai-spector/SKILL.md +7 -1
  73. package/scaffold/cursor/skills/ai-spector/references/cli-reference.md +478 -0
  74. package/scaffold/cursor/skills/ai-spector/references/generate-workflow.md +45 -6
  75. package/scaffold/cursor/skills/ai-spector/references/graph.md +14 -20
  76. package/scaffold/cursor/skills/ai-spector-generate-basic-design/references/runbook.md +1 -1
  77. package/scaffold/cursor/skills/ai-spector-generate-srs/references/runbook.md +1 -1
  78. package/scaffold/cursor/skills/ai-spector-graph/SKILL.md +1 -0
  79. package/scaffold/cursor/skills/ai-spector-graph/references/impact.md +4 -0
  80. package/scaffold/cursor/skills/ai-spector-lang-status/SKILL.md +84 -23
  81. package/scaffold/cursor/skills/ai-spector-resolve-translation/SKILL.md +37 -0
  82. package/scaffold/cursor/skills/ai-spector-resolve-translation/references/runbook.md +134 -0
  83. package/scaffold/cursor/skills/ai-spector-setup/SKILL.md +33 -0
  84. package/scaffold/cursor/skills/ai-spector-setup/references/runbook.md +91 -0
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/commands/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/commands/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAC/E,OAAO,EACL,qBAAqB,EACrB,mBAAmB,GACpB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAChE,OAAO,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACvE,OAAO,EACL,yBAAyB,EAEzB,kBAAkB,GACnB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAE1D,OAAO,EACL,mBAAmB,GAEpB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,aAAa,EACb,sBAAsB,EACtB,qBAAqB,GACtB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,yBAAyB,EAAE,MAAM,kBAAkB,CAAC;AA0B7D,MAAM,CAAC,KAAK,UAAU,QAAQ,CAC5B,OAAqB,EAAE;IAEvB,MAAM,KAAK,GAAG,MAAM,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACnD,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACxF,MAAM,KAAK,GAAsB,EAAE,CAAC;IACpC,IAAI,MAAM,GAAG,KAAK,CAAC;IAEnB,MAAM,MAAM,GAAG,CAAC,IAAqB,EAAE,EAAE;QACvC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjB,IAAI,IAAI,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;YAC7B,MAAM,GAAG,IAAI,CAAC;QAChB,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,KAAK,IAAI,CAAC;IAC1C,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC;IACxC,IAAI,SAAS,IAAI,QAAQ,EAAE,CAAC;QAC1B,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAC;IACjE,CAAC;IAED,MAAM,QAAQ,GAAG,CAAC,QAAQ,CAAC;IAC3B,MAAM,OAAO,GAAG,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;IAE7C,IAAI,SAAS,GAA6B,IAAI,CAAC;IAE/C,IAAI,QAAQ,EAAE,CAAC;QACb,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,oBAAoB,CAAC,WAAW,CAAC,CAAC;YACzD,MAAM,SAAS,CAAC,KAAK,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;YAC1C,MAAM,KAAK,GAAG,QAAQ,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;YAC5E,MAAM,KAAK,GAAG,qBAAqB,CAAC,QAAQ,CAAC,CAAC;YAC9C,MAAM,SAAS,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,mBAAmB,EAAE,CAAC,CAAC;YAC1D,SAAS,GAAG,KAAK,CAAC,mBAAmB,EAAE,CAAC;YAExC,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,EAAE,iCAAiC,CAAC,CAAC;YACvE,MAAM,KAAK,GAAG,MAAM,QAAQ,CAA0B,SAAS,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC;gBAC5E,OAAO,EAAE,CAAC;gBACV,QAAQ,EAAE,EAAE;gBACZ,KAAK,EAAE,EAAE;aACV,CAAC,CAAC,CAAC;YACJ,MAAM,QAAQ,GAAI,KAAK,CAAC,QAAoC,IAAI,EAAE,CAAC;YACnE,QAAQ,CAAC,eAAe,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;YACpD,QAAQ,CAAC,gBAAgB,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;YACrD,KAAK,CAAC,QAAQ,GAAG,QAAQ,CAAC;YAC1B,MAAM,SAAS,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;YAElC,MAAM,CAAC;gBACL,EAAE,EAAE,iBAAiB;gBACrB,KAAK,EAAE,8BAA8B;gBACrC,MAAM,EAAE,IAAI;gBACZ,MAAM,EAAE,GAAG,QAAQ,CAAC,SAAS,CAAC,MAAM,eAAe,KAAK,eAAe,KAAK,CAAC,KAAK,EAAE;aACrF,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,CAAC;gBACL,EAAE,EAAE,iBAAiB;gBACrB,KAAK,EAAE,8BAA8B;gBACrC,MAAM,EAAE,QAAQ;gBAChB,MAAM,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;aACzD,CAAC,CAAC;QACL,CAAC;QAED,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,IAAI,CAAC;gBACH,MAAM,OAAO,GAAG,eAAe,CAAC,aAAa,CAAC,CAAC;gBAC/C,MAAM,cAAc,GAAG,aAAa,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;gBACtF,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,IAAI,SAAS,EAAE,CAAC;oBAC3C,MAAM,QAAQ,GAAG,MAAM,iBAAiB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;oBACtD,sGAAsG;oBACtG,MAAM,mBAAmB,GAAG,aAAa,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC;oBACjF,MAAM,eAAe,GAAG,QAAQ,CAAC,mBAAmB,EAAE,CAAC,KAAK,CAAC,MAAM,CACjE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,UAAU,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CACrF,CAAC;oBACF,IAAI,KAAK,GAAG,CAAC,CAAC;oBACd,KAAK,MAAM,IAAI,IAAI,cAAc,EAAE,CAAC;wBAClC,KAAK,MAAM,OAAO,IAAI,eAAe,EAAE,CAAC;4BACtC,MAAM,YAAY,GAAG,OAAO,IAAI,CAAC,IAAI,IAAI,OAAO,CAAC,EAAE,EAAE,CAAC;4BACtD,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC;gCAC1C,QAAQ,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;gCAC7F,KAAK,EAAE,CAAC;4BACV,CAAC;4BACD,kGAAkG;4BAClG,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC;4BACvD,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,CAC7B,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,eAAe,IAAI,CAAC,CAAC,IAAI,KAAK,YAAY,CAC7D,CAAC;4BACF,IAAI,CAAC,UAAU,EAAE,CAAC;gCAChB,QAAQ,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE,YAAY,EAAE,EAAE,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC;4BAClF,CAAC;wBACH,CAAC;oBACH,CAAC;oBACD,MAAM,SAAS,CAAC,KAAK,CAAC,KAAK,EAAE,QAAQ,CAAC,mBAAmB,EAAE,CAAC,CAAC;oBAC7D,SAAS,GAAG,QAAQ,CAAC,mBAAmB,EAAE,CAAC;oBAC3C,MAAM,CAAC;wBACL,EAAE,EAAE,gBAAgB;wBACpB,KAAK,EAAE,kCAAkC;wBACzC,MAAM,EAAE,IAAI;wBACZ,MAAM,EAAE,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,KAAK,gBAAgB;qBACnF,CAAC,CAAC;gBACL,CAAC;qBAAM,CAAC;oBACN,MAAM,CAAC;wBACL,EAAE,EAAE,gBAAgB;wBACpB,KAAK,EAAE,kCAAkC;wBACzC,MAAM,EAAE,SAAS;wBACjB,MAAM,EAAE,cAAc,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,yBAAyB,CAAC,CAAC,CAAC,sBAAsB;qBACzF,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,CAAC;oBACL,EAAE,EAAE,gBAAgB;oBACpB,KAAK,EAAE,kCAAkC;oBACzC,MAAM,EAAE,QAAQ;oBAChB,MAAM,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;iBACzD,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,CAAC,MAAM,EAAE,CAAC;YAC/B,MAAM,aAAa,GAAG,IAAI,CACxB,WAAW,EACX,8CAA8C,CAC/C,CAAC;YACF,IAAI,CAAC;gBACH,IAAI,CAAC,CAAC,MAAM,UAAU,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC;oBACvC,MAAM,CAAC;wBACL,EAAE,EAAE,iBAAiB;wBACrB,KAAK,EAAE,yBAAyB;wBAChC,MAAM,EAAE,SAAS;wBACjB,MAAM,EAAE,MAAM,aAAa,sDAAsD;qBAClF,CAAC,CAAC;gBACL,CAAC;qBAAM,CAAC;oBACN,MAAM,GAAG,GAAG,MAAM,QAAQ,CAAU,aAAa,CAAC,CAAC;oBACnD,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,IAAI,CAAC,yBAAyB,CAAC,GAAwB,CAAC,EAAE,CAAC;wBACrF,MAAM,CAAC;4BACL,EAAE,EAAE,iBAAiB;4BACrB,KAAK,EAAE,yBAAyB;4BAChC,MAAM,EAAE,SAAS;4BACjB,MAAM,EAAE,0CAA0C;yBACnD,CAAC,CAAC;oBACL,CAAC;yBAAM,CAAC;wBACN,MAAM,aAAa,CAAC;4BAClB,IAAI,EAAE,WAAW;4BACjB,aAAa,EAAE,IAAI;4BACnB,SAAS,EAAE,KAAK,CAAC,KAAK;4BACtB,QAAQ,EAAE,KAAK;yBAChB,CAAC,CAAC;wBACH,SAAS,GAAG,MAAM,QAAQ,CAAoB,KAAK,CAAC,KAAK,CAAC,CAAC;wBAC3D,MAAM,EAAE,GAAG,qBAAqB,CAAC,GAAwB,CAAC,CAAC;wBAC3D,MAAM,CAAC;4BACL,EAAE,EAAE,iBAAiB;4BACrB,KAAK,EAAE,yBAAyB;4BAChC,MAAM,EAAE,IAAI;4BACZ,MAAM,EAAE,GAAG,EAAE,CAAC,QAAQ,eAAe,EAAE,CAAC,QAAQ,cAAc,EAAE,CAAC,MAAM,gBAAgB;yBACxF,CAAC,CAAC;oBACL,CAAC;gBACH,CAAC;YACH,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,CAAC;oBACL,EAAE,EAAE,iBAAiB;oBACrB,KAAK,EAAE,yBAAyB;oBAChC,MAAM,EAAE,QAAQ;oBAChB,MAAM,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;iBACzD,CAAC,CAAC;YACL,CAAC;QACH,CAAC;aAAM,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YAC1B,MAAM,CAAC;gBACL,EAAE,EAAE,iBAAiB;gBACrB,KAAK,EAAE,yBAAyB;gBAChC,MAAM,EAAE,SAAS;gBACjB,MAAM,EAAE,cAAc;aACvB,CAAC,CAAC;YACH,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,IAAI,CAAC;oBACH,SAAS,GAAG,CAAC,MAAM,iBAAiB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,mBAAmB,EAAE,CAAC;gBAC3E,CAAC;gBAAC,MAAM,CAAC;oBACP,SAAS,GAAG,IAAI,CAAC;gBACnB,CAAC;YACH,CAAC;QACH,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,gBAAgB,IAAI,CAAC,MAAM,EAAE,CAAC;YACtC,IAAI,CAAC;gBACH,MAAM,SAAS,GAAG,MAAM,mBAAmB,CAAC;oBAC1C,WAAW;oBACX,SAAS,EAAE,KAAK,CAAC,KAAK;iBACvB,CAAC,CAAC;gBACH,IAAI,SAAS,CAAC,MAAM,EAAE,CAAC;oBACrB,SAAS,GAAG,MAAM,QAAQ,CAAoB,KAAK,CAAC,KAAK,CAAC,CAAC;oBAC3D,MAAM,KAAK,GAAG,MAAM,qBAAqB,CAAC,WAAW,EAAE,SAAS,CAAC,YAAY,CAAC,CAAC;oBAC/E,MAAM,CAAC;wBACL,EAAE,EAAE,qBAAqB;wBACzB,KAAK,EAAE,iCAAiC;wBACxC,MAAM,EAAE,IAAI;wBACZ,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,MAAM,aAAa,KAAK,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM;qBAC3E,CAAC,CAAC;gBACL,CAAC;qBAAM,CAAC;oBACN,MAAM,CAAC;wBACL,EAAE,EAAE,qBAAqB;wBACzB,KAAK,EAAE,iCAAiC;wBACxC,MAAM,EAAE,SAAS;wBACjB,MAAM,EAAE,SAAS,CAAC,MAAM;qBACzB,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,CAAC;oBACL,EAAE,EAAE,qBAAqB;oBACzB,KAAK,EAAE,iCAAiC;oBACxC,MAAM,EAAE,QAAQ;oBAChB,MAAM,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;iBACzD,CAAC,CAAC;YACL,CAAC;QACH,CAAC;aAAM,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACjC,MAAM,CAAC;gBACL,EAAE,EAAE,qBAAqB;gBACzB,KAAK,EAAE,iCAAiC;gBACxC,MAAM,EAAE,SAAS;gBACjB,MAAM,EAAE,sBAAsB;aAC/B,CAAC,CAAC;QACL,CAAC;QAED,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,IAAI,CAAC;gBACH,MAAM,QAAQ,GAAG,MAAM,iBAAiB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBACtD,MAAM,SAAS,GAAG,MAAM,kBAAkB,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;gBAClE,MAAM,SAAS,CAAC,KAAK,CAAC,KAAK,EAAE,QAAQ,CAAC,mBAAmB,EAAE,CAAC,CAAC;gBAC7D,SAAS,GAAG,QAAQ,CAAC,mBAAmB,EAAE,CAAC;gBAC3C,MAAM,CAAC;oBACL,EAAE,EAAE,eAAe;oBACnB,KAAK,EAAE,4BAA4B;oBACnC,MAAM,EAAE,IAAI;oBACZ,MAAM,EAAE,GAAG,SAAS,CAAC,WAAW,sBAAsB;iBACvD,CAAC,CAAC;YACL,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,CAAC;oBACL,EAAE,EAAE,eAAe;oBACnB,KAAK,EAAE,4BAA4B;oBACnC,MAAM,EAAE,QAAQ;oBAChB,MAAM,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;iBACzD,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,IAAI,CAAC;gBACH,MAAM,IAAI,GAAG,MAAM,iBAAiB,CAAC;oBACnC,WAAW;oBACX,SAAS,EAAE,KAAK,CAAC,KAAK;iBACvB,CAAC,CAAC;gBACH,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;oBAChB,SAAS,GAAG,MAAM,QAAQ,CAAoB,KAAK,CAAC,KAAK,CAAC,CAAC;gBAC7D,CAAC;gBACD,MAAM,CAAC;oBACL,EAAE,EAAE,iBAAiB;oBACrB,KAAK,EAAE,sCAAsC;oBAC7C,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS;oBACtC,MAAM,EAAE,IAAI,CAAC,MAAM;iBACpB,CAAC,CAAC;YACL,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,CAAC;oBACL,EAAE,EAAE,iBAAiB;oBACrB,KAAK,EAAE,sCAAsC;oBAC7C,MAAM,EAAE,QAAQ;oBAChB,MAAM,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;iBACzD,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,IAAI,CAAC;gBACH,MAAM,QAAQ,GAAG,MAAM,iBAAiB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBACtD,MAAM,GAAG,GAAG,oBAAoB,CAAC,QAAQ,CAAC,CAAC;gBAC3C,MAAM,SAAS,CAAC,KAAK,CAAC,KAAK,EAAE,QAAQ,CAAC,mBAAmB,EAAE,CAAC,CAAC;gBAC7D,SAAS,GAAG,QAAQ,CAAC,mBAAmB,EAAE,CAAC;gBAC3C,MAAM,CAAC;oBACL,EAAE,EAAE,iBAAiB;oBACrB,KAAK,EAAE,gCAAgC;oBACvC,MAAM,EAAE,IAAI;oBACZ,MAAM,EAAE,GAAG,GAAG,CAAC,aAAa,mBAAmB;iBAChD,CAAC,CAAC;YACL,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,CAAC;oBACL,EAAE,EAAE,iBAAiB;oBACrB,KAAK,EAAE,gCAAgC;oBACvC,MAAM,EAAE,QAAQ;oBAChB,MAAM,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;iBACzD,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,YAAY,IAAI,CAAC,MAAM,EAAE,CAAC;YAClC,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC;oBACjC,SAAS,EAAE,KAAK,CAAC,KAAK;oBACtB,UAAU,EAAE,KAAK,CAAC,MAAM;oBACxB,YAAY,EAAE,KAAK,CAAC,QAAQ;oBAC5B,SAAS,EAAE,KAAK,CAAC,iBAAiB;iBACnC,CAAC,CAAC;gBACH,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC;gBAC5D,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACtB,MAAM,CAAC;wBACL,EAAE,EAAE,gBAAgB;wBACpB,KAAK,EAAE,gBAAgB;wBACvB,MAAM,EAAE,QAAQ;wBAChB,MAAM,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE;qBACpC,CAAC,CAAC;gBACL,CAAC;qBAAM,CAAC;oBACN,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,MAAM,CAAC,CAAC,MAAM,CAAC;oBACjE,MAAM,CAAC;wBACL,EAAE,EAAE,gBAAgB;wBACpB,KAAK,EAAE,gBAAgB;wBACvB,MAAM,EAAE,IAAI;wBACZ,MAAM,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,KAAK,YAAY,CAAC,CAAC,CAAC,IAAI;qBACpD,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,CAAC;oBACL,EAAE,EAAE,gBAAgB;oBACpB,KAAK,EAAE,gBAAgB;oBACvB,MAAM,EAAE,QAAQ;oBAChB,MAAM,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;iBACzD,CAAC,CAAC;YACL,CAAC;QACH,CAAC;aAAM,CAAC;YACN,MAAM,CAAC;gBACL,EAAE,EAAE,gBAAgB;gBACpB,KAAK,EAAE,gBAAgB;gBACvB,MAAM,EAAE,SAAS;gBACjB,MAAM,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,mBAAmB;aACpE,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,IAAI,OAAO,EAAE,CAAC;QACZ,MAAM,UAAU,GAAG,mBAAmB,CAAC,WAAW,CAAC,CAAC;QACpD,IAAI,CAAC;YACH,IAAI,CAAC,CAAC,MAAM,UAAU,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC;gBACpC,MAAM,CAAC;oBACL,EAAE,EAAE,YAAY;oBAChB,KAAK,EAAE,uCAAuC;oBAC9C,MAAM,EAAE,SAAS;oBACjB,MAAM,EAAE,WAAW,UAAU,4BAA4B;iBAC1D,CAAC,CAAC;YACL,CAAC;iBAAM,CAAC;gBACN,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAkB,UAAU,CAAC,CAAC;gBAC3D,IAAI,CAAC,SAAS,EAAE,CAAC;oBACf,IAAI,CAAC;wBACH,SAAS,GAAG,CAAC,MAAM,iBAAiB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,mBAAmB,EAAE,CAAC;oBAC3E,CAAC;oBAAC,MAAM,CAAC;wBACP,SAAS,GAAG,IAAI,CAAC;oBACnB,CAAC;gBACH,CAAC;gBACD,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;gBAC3C,MAAM,MAAM,GAA2B,EAAE,CAAC;gBAE1C,KAAK,MAAM,IAAI,IAAI,CAAC,KAAK,EAAE,aAAa,CAAU,EAAE,CAAC;oBACnD,MAAM,SAAS,GAAG,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,aAAa,CAAC;oBACzD,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;oBACzC,IAAI,CAAC,MAAM,EAAE,CAAC;wBACZ,SAAS;oBACX,CAAC;oBAED,6EAA6E;oBAC7E,oFAAoF;oBACpF,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,kBAAkB;oBAChD,MAAM,KAAK,GAAG,aAAa,CAAC,SAAS,CAAC;oBACtC,MAAM,QAAQ,GAAsD,EAAE,CAAC;oBACvE,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;wBACzB,MAAM,QAAQ,GAAG,GAAG,QAAQ,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;wBAC5C,MAAM,SAAS,GAAG,MAAM,qBAAqB,CAC3C,WAAW,EACX,QAAQ,EACR,MAAM,CAAC,IAAI,IAAI,SAAS,CACzB,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;wBAClB,QAAQ,CAAC,IAAI,CAAC,GAAG,SAAS,CAAC,CAAC;oBAC9B,CAAC;oBACD,gFAAgF;oBAChF,+EAA+E;oBAC/E,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;wBAC1B,MAAM,WAAW,GAAG,MAAM,qBAAqB,CAC7C,WAAW,EACX,QAAQ,EACR,MAAM,CAAC,IAAI,IAAI,SAAS,CACzB,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;wBAClB,sEAAsE;wBACtE,MAAM,OAAO,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;wBAC1E,QAAQ,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,CAAC;oBAC5B,CAAC;oBAED,MAAM,CAAC,SAAS,CAAC,GAAG,sBAAsB,CAAC,QAAQ,CAAC,CAAC;oBACrD,MAAM,KAAK,GAAG,MAAM,aAAa,CAAC;wBAChC,IAAI;wBACJ,MAAM;wBACN,WAAW;wBACX,KAAK,EAAE,QAAQ;wBACf,KAAK,EAAE,SAAS;wBAChB,SAAS;qBACV,CAAC,CAAC;oBACH,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,EAAE,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC;oBAC7D,MAAM,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;oBACnD,MAAM,SAAS,CAAC,OAAO,EAAE,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;gBACnD,CAAC;gBAED,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,EAAE,iCAAiC,CAAC,CAAC;gBACvE,MAAM,KAAK,GAAG,MAAM,QAAQ,CAA0B,SAAS,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC;oBAC5E,OAAO,EAAE,CAAC;oBACV,KAAK,EAAE,EAAE;iBACV,CAAC,CAAC,CAAC;gBACJ,MAAM,UAAU,GAAI,KAAK,CAAC,KAAiC,IAAI,EAAE,CAAC;gBAClE,UAAU,CAAC,SAAS,GAAG,SAAS,CAAC;gBACjC,UAAU,CAAC,YAAY,GAAG,MAAM,CAAC;gBACjC,KAAK,CAAC,KAAK,GAAG,UAAU,CAAC;gBACzB,MAAM,SAAS,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;gBAElC,MAAM,CAAC;oBACL,EAAE,EAAE,YAAY;oBAChB,KAAK,EAAE,uCAAuC;oBAC9C,MAAM,EAAE,IAAI;oBACZ,MAAM,EAAE,YAAY,MAAM,CAAC,GAAG,IAAI,GAAG,uBAAuB,MAAM,CAAC,WAAW,IAAI,GAAG,EAAE;iBACxF,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,CAAC;gBACL,EAAE,EAAE,YAAY;gBAChB,KAAK,EAAE,uCAAuC;gBAC9C,MAAM,EAAE,QAAQ;gBAChB,MAAM,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;aACzD,CAAC,CAAC;QACL,CAAC;IACH,CAAC;SAAM,CAAC;QACN,MAAM,CAAC;YACL,EAAE,EAAE,YAAY;YAChB,KAAK,EAAE,uCAAuC;YAC9C,MAAM,EAAE,SAAS;YACjB,MAAM,EAAE,SAAS,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,6BAA6B,CAAC,CAAC,CAAC,yBAAyB;SAC/F,CAAC,CAAC;IACL,CAAC;IAED,IAAI,CAAC;QACH,MAAM,WAAW,GAAG,MAAM,yBAAyB,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;QAChF,IAAI,WAAW,CAAC,OAAO,EAAE,CAAC;YACxB,MAAM,CAAC;gBACL,EAAE,EAAE,mBAAmB;gBACvB,KAAK,EAAE,mBAAmB;gBAC1B,MAAM,EAAE,SAAS;gBACjB,MAAM,EAAE,WAAW,CAAC,UAAU,IAAI,iBAAiB;aACpD,CAAC,CAAC;QACL,CAAC;aAAM,CAAC;YACN,MAAM,CAAC;gBACL,EAAE,EAAE,mBAAmB;gBACvB,KAAK,EAAE,mBAAmB;gBAC1B,MAAM,EAAE,IAAI;gBACZ,MAAM,EAAE,GAAG,WAAW,CAAC,YAAY,cAAc,WAAW,CAAC,QAAQ,cAAc,WAAW,CAAC,QAAQ,cAAc,WAAW,CAAC,MAAM,SAAS;aACjJ,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,CAAC;YACL,EAAE,EAAE,mBAAmB;YACvB,KAAK,EAAE,mBAAmB;YAC1B,MAAM,EAAE,QAAQ;YAChB,MAAM,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;SACzD,CAAC,CAAC;IACL,CAAC;IAED,iBAAiB,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IAEjC,IAAI,MAAM,EAAE,CAAC;QACX,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC;QACvD,MAAM,IAAI,KAAK,CACb,2BAA2B,KAAK,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,EAAE,qDAAqD,CACjH,CAAC;IACJ,CAAC;IAED,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;AAC3B,CAAC;AAED,SAAS,iBAAiB,CAAC,KAAwB,EAAE,MAAe;IAClE,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;IACrC,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;IACrC,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;QACtB,MAAM,IAAI,GAAG,CAAC,CAAC,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;QAC1E,OAAO,CAAC,GAAG,CAAC,KAAK,IAAI,IAAI,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;QACjD,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC;YACb,KAAK,MAAM,IAAI,IAAI,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;gBACxC,OAAO,CAAC,GAAG,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC;YAC/B,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,IAAI,MAAM,EAAE,CAAC;QACX,OAAO,CAAC,GAAG,CAAC,8DAA8D,CAAC,CAAC;QAC5E,OAAO,CAAC,GAAG,CAAC,+DAA+D,CAAC,CAAC;IAC/E,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC;QAC9C,OAAO,CAAC,GAAG,CACT,6GAA6G,CAC9G,CAAC;QACF,OAAO,CAAC,GAAG,CACT,+FAA+F,CAChG,CAAC;IACJ,CAAC;AACH,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAWA,MAAM,WAAW,WAAW;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,uEAAuE;IACvE,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;CACtB;AAED,yDAAyD;AACzD,wBAAsB,mBAAmB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAE5E;AAED,gFAAgF;AAChF,wBAAsB,qBAAqB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAU9E;AAsBD,wBAAsB,OAAO,CAAC,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CA4E9D"}
1
+ {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAYA,MAAM,WAAW,WAAW;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,uEAAuE;IACvE,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;CACtB;AAED,yDAAyD;AACzD,wBAAsB,mBAAmB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAE5E;AAED,gFAAgF;AAChF,wBAAsB,qBAAqB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAU9E;AAsBD,wBAAsB,OAAO,CAAC,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CA8F9D"}
@@ -2,6 +2,7 @@ import { mkdir, readdir, writeFile } from "node:fs/promises";
2
2
  import { join, resolve } from "node:path";
3
3
  import { packageBundleRoot, scaffoldBundleRoot, scaffoldCursorBundleRoot, } from "../config/load.js";
4
4
  import { copyTree, pathExists, readJson, writeJson } from "../util/fs.js";
5
+ import { ensureGitRepository, installGitHooks } from "./hooks.js";
5
6
  import { ensureAiSpectorGitignore } from "../util/gitignore.js";
6
7
  /** Copy bundled scaffold/cursor/ -> project .cursor/. */
7
8
  export async function copyCursorToProject(projectRoot) {
@@ -84,14 +85,33 @@ export async function runInit(opts) {
84
85
  index: { lastRunAt: null },
85
86
  });
86
87
  const gitignorePath = await ensureAiSpectorGitignore(root);
88
+ let gitInitialized = false;
89
+ let hookPath;
90
+ try {
91
+ gitInitialized = await ensureGitRepository(root);
92
+ hookPath = await installGitHooks(root);
93
+ }
94
+ catch {
95
+ hookPath = undefined;
96
+ }
87
97
  console.log(`Initialized AI Spector project at ${root}`);
88
98
  console.log("");
89
99
  console.log(` languages -> ${langCodes.join(", ")}`);
90
100
  console.log(` gitignore -> ${gitignorePath} (npx ai-spector block added/updated)`);
101
+ if (gitInitialized) {
102
+ console.log(` git -> initialized new repository at ${root}`);
103
+ }
104
+ if (hookPath) {
105
+ console.log(` git hook -> ${hookPath} (pre-commit: validate + translation + impact)`);
106
+ }
107
+ else {
108
+ console.log(" git hook -> not installed (run: npx ai-spector hooks install)");
109
+ }
91
110
  console.log(` templates -> ${projectTemplates} (SRS / basic / detail design)`);
92
111
  console.log(` cursor -> ${join(root, ".cursor")} (from scaffold/cursor/)`);
93
112
  console.log("");
94
113
  console.log("Next steps (Cursor):");
114
+ console.log(" 0. Re-audit setup: npx ai-spector setup --check");
95
115
  console.log(" 1. Open this folder in Cursor");
96
116
  console.log(" 2. Enable all npx ai-spector skills (.cursor/skills/ -- see README.md)");
97
117
  console.log(" 3. Add files under docs/data-source/");
@@ -1 +1 @@
1
- {"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7D,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EACL,iBAAiB,EACjB,kBAAkB,EAClB,wBAAwB,GACzB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1E,OAAO,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;AAUhE,yDAAyD;AACzD,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,WAAmB;IAC3D,MAAM,QAAQ,CAAC,wBAAwB,EAAE,EAAE,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC,CAAC;AAC3E,CAAC;AAED,gFAAgF;AAChF,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAAC,WAAmB;IAC7D,MAAM,QAAQ,GAAG,kBAAkB,EAAE,CAAC;IACtC,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,QAAQ,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;IACjE,KAAK,MAAM,GAAG,IAAI,OAAO,EAAE,CAAC;QAC1B,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC1B,SAAS;QACX,CAAC;QACD,MAAM,QAAQ,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,WAAW,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;IACxE,CAAC;IACD,MAAM,mBAAmB,CAAC,WAAW,CAAC,CAAC;AACzC,CAAC;AAED,MAAM,eAAe,GAA2B;IAC9C,EAAE,EAAE,SAAS;IACb,EAAE,EAAE,UAAU;IACd,EAAE,EAAE,UAAU;IACd,EAAE,EAAE,YAAY;IAChB,EAAE,EAAE,SAAS;IACb,EAAE,EAAE,QAAQ;IACZ,EAAE,EAAE,QAAQ;IACZ,EAAE,EAAE,QAAQ;IACZ,EAAE,EAAE,SAAS;IACb,EAAE,EAAE,YAAY;CACjB,CAAC;AAEF,SAAS,oBAAoB,CAAC,KAAe;IAC3C,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QAC1B,IAAI;QACJ,KAAK,EAAE,eAAe,CAAC,IAAI,CAAC,IAAI,IAAI;KACrC,CAAC,CAAC,CAAC;AACN,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,OAAO,CAAC,IAAiB;IAC7C,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACrC,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,EAAE,aAAa,EAAE,qBAAqB,CAAC,CAAC;IAEhE,IAAI,MAAM,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;QAC5C,MAAM,IAAI,KAAK,CACb,gCAAgC,MAAM,6CAA6C,CACpF,CAAC;IACJ,CAAC;IAED,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IACxF,MAAM,SAAS,GAAG,oBAAoB,CAAC,SAAS,CAAC,CAAC;IAElD,MAAM,qBAAqB,CAAC,IAAI,CAAC,CAAC;IAElC,mFAAmF;IACnF,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,EAAE,aAAa,EAAE,qBAAqB,CAAC,CAAC;IACpE,MAAM,cAAc,GAAG,MAAM,QAAQ,CAA0B,UAAU,CAAC,CAAC;IAC3E,MAAM,SAAS,CAAC,UAAU,EAAE,EAAE,GAAG,cAAc,EAAE,SAAS,EAAE,CAAC,CAAC;IAE9D,MAAM,gBAAgB,GAAG,IAAI,CAAC,IAAI,EAAE,aAAa,EAAE,WAAW,CAAC,CAAC;IAChE,MAAM,KAAK,CAAC,gBAAgB,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACnD,MAAM,QAAQ,CAAC,IAAI,CAAC,iBAAiB,EAAE,EAAE,WAAW,CAAC,EAAE,gBAAgB,CAAC,CAAC;IAEzE,MAAM,QAAQ,GAAG;QACf,mBAAmB;QACnB,sBAAsB;QACtB,+BAA+B;QAC/B,8BAA8B;QAC9B,4BAA4B;QAC5B,mBAAmB;QACnB,oBAAoB;QACpB,WAAW;QACX,eAAe;KAChB,CAAC;IACF,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;QACzB,MAAM,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAClD,CAAC;IAED,kCAAkC;IAClC,KAAK,MAAM,IAAI,IAAI,SAAS,EAAE,CAAC;QAC7B,MAAM,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,YAAY,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACtE,MAAM,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,qBAAqB,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAC/E,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,YAAY,IAAI,CAAC,IAAI,WAAW,CAAC,CAAC;QAC7D,IAAI,CAAC,CAAC,MAAM,UAAU,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC;YACjC,MAAM,SAAS,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;QAC/B,CAAC;IACH,CAAC;IAED,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,EAAE,iCAAiC,CAAC,CAAC;IAChE,MAAM,SAAS,CAAC,SAAS,EAAE;QACzB,OAAO,EAAE,CAAC;QACV,aAAa,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QACvC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE;QACpD,KAAK,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE;KAC3B,CAAC,CAAC;IAEH,MAAM,aAAa,GAAG,MAAM,wBAAwB,CAAC,IAAI,CAAC,CAAC;IAE3D,OAAO,CAAC,GAAG,CAAC,qCAAqC,IAAI,EAAE,CAAC,CAAC;IACzD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,OAAO,CAAC,GAAG,CAAC,kBAAkB,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACtD,OAAO,CAAC,GAAG,CAAC,kBAAkB,aAAa,uCAAuC,CAAC,CAAC;IACpF,OAAO,CAAC,GAAG,CAAC,kBAAkB,gBAAgB,gCAAgC,CAAC,CAAC;IAChF,OAAO,CAAC,GAAG,CAAC,kBAAkB,IAAI,CAAC,IAAI,EAAE,SAAS,CAAC,0BAA0B,CAAC,CAAC;IAC/E,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC;IACpC,OAAO,CAAC,GAAG,CAAC,iCAAiC,CAAC,CAAC;IAC/C,OAAO,CAAC,GAAG,CAAC,0EAA0E,CAAC,CAAC;IACxF,OAAO,CAAC,GAAG,CAAC,wCAAwC,CAAC,CAAC;IACtD,OAAO,CAAC,GAAG,CAAC,gEAAgE,CAAC,CAAC;IAC9E,OAAO,CAAC,GAAG,CAAC,oCAAoC,CAAC,CAAC;IAClD,OAAO,CAAC,GAAG,CAAC,4FAA4F,CAAC,CAAC;IAC1G,OAAO,CAAC,GAAG,CAAC,mEAAmE,CAAC,CAAC;IACjF,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,OAAO,CAAC,GAAG,CAAC,kFAAkF,CAAC,CAAC;AAClG,CAAC"}
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ export interface LangQueueOptions {
2
+ root?: string;
3
+ lang?: string;
4
+ json?: boolean;
5
+ limit?: number;
6
+ }
7
+ export declare function runLangQueueScan(opts?: LangQueueOptions): Promise<void>;
8
+ export declare function runLangQueuePending(opts?: LangQueueOptions): Promise<void>;
9
+ export declare function runLangQueueResolved(opts?: LangQueueOptions): Promise<void>;
10
+ export declare function runLangQueueFailed(opts?: LangQueueOptions): Promise<void>;
11
+ export declare function runLangQueueFail(jobId: string, opts?: LangQueueOptions & {
12
+ reason?: string;
13
+ message?: string;
14
+ }): Promise<void>;
15
+ export declare function runLangQueueRetry(jobId: string, opts?: LangQueueOptions): Promise<void>;
16
+ //# sourceMappingURL=lang-queue.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lang-queue.d.ts","sourceRoot":"","sources":["../../src/commands/lang-queue.ts"],"names":[],"mappings":"AAmBA,MAAM,WAAW,gBAAgB;IAC/B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,wBAAsB,gBAAgB,CAAC,IAAI,GAAE,gBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC,CAYjF;AAED,wBAAsB,mBAAmB,CAAC,IAAI,GAAE,gBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC,CAWpF;AAED,wBAAsB,oBAAoB,CAAC,IAAI,GAAE,gBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC,CAcrF;AAED,wBAAsB,kBAAkB,CAAC,IAAI,GAAE,gBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC,CAcnF;AAED,wBAAsB,gBAAgB,CACpC,KAAK,EAAE,MAAM,EACb,IAAI,GAAE,gBAAgB,GAAG;IAAE,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAO,GAClE,OAAO,CAAC,IAAI,CAAC,CASf;AAED,wBAAsB,iBAAiB,CACrC,KAAK,EAAE,MAAM,EACb,IAAI,GAAE,gBAAqB,GAC1B,OAAO,CAAC,IAAI,CAAC,CAQf"}
@@ -0,0 +1,72 @@
1
+ import { resolve } from "node:path";
2
+ import { loadDocflowConfig } from "../config/load.js";
3
+ import { ensureQueueDir, loadFailedQueue, loadPendingQueue, loadResolvedQueue, retryFailedJob, } from "../lang/queue-store.js";
4
+ import { failPendingJob, filterJobsByLang, formatFailedTable, formatPendingTable, formatResolvedTable, reconcileTranslationQueue, } from "../lang/queue.js";
5
+ export async function runLangQueueScan(opts = {}) {
6
+ const { root: projectRoot, config } = await loadDocflowConfig(opts.root ? resolve(opts.root) : undefined);
7
+ const result = await reconcileTranslationQueue(projectRoot, config);
8
+ if (result.skipped) {
9
+ console.log(`Translation queue: skipped (${result.skipReason})`);
10
+ return;
11
+ }
12
+ console.log(`Translation queue: ${result.pendingCount} pending, +${result.enqueued} enqueued, ${result.resolved} resolved, ${result.failed} failed`);
13
+ }
14
+ export async function runLangQueuePending(opts = {}) {
15
+ const projectRoot = resolve(opts.root ?? (await loadDocflowConfig()).root);
16
+ const paths = await ensureQueueDir(projectRoot);
17
+ const pending = await loadPendingQueue(paths);
18
+ const jobs = filterJobsByLang(pending.jobs, opts.lang);
19
+ if (opts.json) {
20
+ console.log(JSON.stringify({ jobs }, null, 2));
21
+ return;
22
+ }
23
+ console.log(formatPendingTable(jobs));
24
+ }
25
+ export async function runLangQueueResolved(opts = {}) {
26
+ const projectRoot = resolve(opts.root ?? (await loadDocflowConfig()).root);
27
+ const paths = await ensureQueueDir(projectRoot);
28
+ const resolved = await loadResolvedQueue(paths.resolved);
29
+ let jobs = resolved.jobs;
30
+ if (opts.limit && opts.limit > 0) {
31
+ jobs = jobs.slice(-opts.limit);
32
+ }
33
+ if (opts.json) {
34
+ console.log(JSON.stringify({ jobs }, null, 2));
35
+ return;
36
+ }
37
+ console.log(formatResolvedTable(jobs));
38
+ }
39
+ export async function runLangQueueFailed(opts = {}) {
40
+ const projectRoot = resolve(opts.root ?? (await loadDocflowConfig()).root);
41
+ const paths = await ensureQueueDir(projectRoot);
42
+ const failed = await loadFailedQueue(paths.failed);
43
+ let jobs = failed.jobs;
44
+ if (opts.limit && opts.limit > 0) {
45
+ jobs = jobs.slice(-opts.limit);
46
+ }
47
+ if (opts.json) {
48
+ console.log(JSON.stringify({ jobs }, null, 2));
49
+ return;
50
+ }
51
+ console.log(formatFailedTable(jobs));
52
+ }
53
+ export async function runLangQueueFail(jobId, opts = {}) {
54
+ const projectRoot = resolve(opts.root ?? (await loadDocflowConfig()).root);
55
+ const reason = (opts.reason ?? "dismissed");
56
+ const message = opts.message ?? "Manually dismissed";
57
+ const ok = await failPendingJob(projectRoot, jobId, reason, message);
58
+ if (!ok) {
59
+ throw new Error(`Pending job not found: ${jobId}`);
60
+ }
61
+ console.log(`Moved job ${jobId} to failed (${reason})`);
62
+ }
63
+ export async function runLangQueueRetry(jobId, opts = {}) {
64
+ const projectRoot = resolve(opts.root ?? (await loadDocflowConfig()).root);
65
+ const paths = await ensureQueueDir(projectRoot);
66
+ const job = await retryFailedJob(paths, jobId);
67
+ if (!job) {
68
+ throw new Error(`Failed job not found: ${jobId}`);
69
+ }
70
+ console.log(`Moved job ${jobId} back to pending`);
71
+ }
72
+ //# sourceMappingURL=lang-queue.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lang-queue.js","sourceRoot":"","sources":["../../src/commands/lang-queue.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"lang.d.ts","sourceRoot":"","sources":["../../src/commands/lang.ts"],"names":[],"mappings":"AAmBA,MAAM,WAAW,cAAc;IAC7B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,qEAAqE;IACrE,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,wBAAsB,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,GAAE,cAAmB,GAAG,OAAO,CAAC,IAAI,CAAC,CAuCvF"}
1
+ {"version":3,"file":"lang.d.ts","sourceRoot":"","sources":["../../src/commands/lang.ts"],"names":[],"mappings":"AAoBA,MAAM,WAAW,cAAc;IAC7B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,qEAAqE;IACrE,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,wBAAsB,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,GAAE,cAAmB,GAAG,OAAO,CAAC,IAAI,CAAC,CAgDvF"}
@@ -1,6 +1,7 @@
1
1
  import { mkdir, writeFile } from "node:fs/promises";
2
2
  import { join, resolve } from "node:path";
3
3
  import { loadDocflowConfig } from "../config/load.js";
4
+ import { addLangToPendingJobs, reconcileTranslationQueue } from "../lang/queue.js";
4
5
  import { pathExists, readJson, writeJson } from "../util/fs.js";
5
6
  const LANGUAGE_LABELS = {
6
7
  en: "English",
@@ -40,10 +41,16 @@ export async function runLangAdd(code, opts = {}) {
40
41
  // Add translationOf edges to graph
41
42
  const existingLangCodes = config.languages.map((l) => l.code);
42
43
  await registerTranslationEdges(projectRoot, config.paths.graph, code, existingLangCodes);
44
+ const updatedConfig = { ...config, languages: [...config.languages, newLang] };
45
+ await addLangToPendingJobs(projectRoot, code, updatedConfig);
46
+ const queueResult = await reconcileTranslationQueue(projectRoot, updatedConfig);
43
47
  console.log(`Added language: ${label} (${code})`);
44
48
  console.log(` docs/srs/${code}/`);
45
49
  console.log(` docs/basic-design/${code}/`);
46
50
  console.log(` translationOf edges registered in graph`);
51
+ if (!queueResult.skipped) {
52
+ console.log(` translation queue: ${queueResult.pendingCount} pending, +${queueResult.enqueued} enqueued`);
53
+ }
47
54
  console.log(`Run 'npx ai-spector index' to refresh the full graph.`);
48
55
  }
49
56
  async function registerTranslationEdges(projectRoot, graphRelPath, langCode, existingLangCodes) {
@@ -1 +1 @@
1
- {"version":3,"file":"lang.js","sourceRoot":"","sources":["../../src/commands/lang.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lang.js","sourceRoot":"","sources":["../../src/commands/lang.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,26 @@
1
+ export type SetupStepStatus = "ok" | "missing" | "warning";
2
+ export interface SetupStep {
3
+ id: string;
4
+ label: string;
5
+ status: SetupStepStatus;
6
+ detail?: string;
7
+ fix?: string;
8
+ }
9
+ export interface SetupAudit {
10
+ projectRoot: string;
11
+ ready: boolean;
12
+ steps: SetupStep[];
13
+ }
14
+ export interface SetupOptions {
15
+ root?: string;
16
+ languages?: string[];
17
+ yes?: boolean;
18
+ force?: boolean;
19
+ installDep?: boolean;
20
+ skipInit?: boolean;
21
+ json?: boolean;
22
+ }
23
+ export declare function auditSetup(projectRoot: string): Promise<SetupAudit>;
24
+ export declare function runSetupCheck(opts?: SetupOptions): Promise<SetupAudit>;
25
+ export declare function runSetup(opts?: SetupOptions): Promise<SetupAudit>;
26
+ //# sourceMappingURL=setup.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../../src/commands/setup.ts"],"names":[],"mappings":"AAeA,MAAM,MAAM,eAAe,GAAG,IAAI,GAAG,SAAS,GAAG,SAAS,CAAC;AAE3D,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,eAAe,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,UAAU;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,OAAO,CAAC;IACf,KAAK,EAAE,SAAS,EAAE,CAAC;CACpB;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAiCD,wBAAsB,UAAU,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CAmHzE;AA+CD,wBAAsB,aAAa,CAAC,IAAI,GAAE,YAAiB,GAAG,OAAO,CAAC,UAAU,CAAC,CAShF;AAED,wBAAsB,QAAQ,CAAC,IAAI,GAAE,YAAiB,GAAG,OAAO,CAAC,UAAU,CAAC,CA6F3E"}
@@ -0,0 +1,284 @@
1
+ import { mkdir } from "node:fs/promises";
2
+ import { join, resolve } from "node:path";
3
+ import { createRequire } from "node:module";
4
+ import { loadDocflowConfig } from "../config/load.js";
5
+ import { runInit } from "./init.js";
6
+ import { ensureGitRepository, installGitHooks } from "./hooks.js";
7
+ import { runSyncCursor } from "./sync-cursor.js";
8
+ import { pathExists, readJson } from "../util/fs.js";
9
+ import { ensureAiSpectorGitignore } from "../util/gitignore.js";
10
+ import { isInteractive, promptLine, promptYesNo } from "../util/prompt.js";
11
+ import { HOOK_MARKER } from "./hooks-constants.js";
12
+ const require = createRequire(import.meta.url);
13
+ const packageJson = require("../../package.json");
14
+ function parseNodeMajor() {
15
+ const match = /^v(\d+)/.exec(process.version);
16
+ return match ? Number(match[1]) : 0;
17
+ }
18
+ function requiredNodeMajor() {
19
+ const spec = packageJson.engines?.node ?? ">=20";
20
+ const m = /(\d+)/.exec(spec);
21
+ return m ? Number(m[1]) : 20;
22
+ }
23
+ async function hookInstalled(projectRoot) {
24
+ try {
25
+ const { execFile } = await import("node:child_process");
26
+ const { promisify } = await import("node:util");
27
+ const exec = promisify(execFile);
28
+ const { stdout: gitDirRaw } = await exec("git", ["rev-parse", "--absolute-git-dir"], {
29
+ cwd: projectRoot,
30
+ });
31
+ const hookPath = join(gitDirRaw.trim(), "hooks", "pre-commit");
32
+ if (!(await pathExists(hookPath))) {
33
+ return false;
34
+ }
35
+ const { readFile } = await import("node:fs/promises");
36
+ const content = await readFile(hookPath, "utf8");
37
+ return content.includes(HOOK_MARKER);
38
+ }
39
+ catch {
40
+ return false;
41
+ }
42
+ }
43
+ export async function auditSetup(projectRoot) {
44
+ const root = resolve(projectRoot);
45
+ const steps = [];
46
+ const nodeMajor = parseNodeMajor();
47
+ const needNode = requiredNodeMajor();
48
+ steps.push({
49
+ id: "node",
50
+ label: `Node.js ${needNode}+`,
51
+ status: nodeMajor >= needNode ? "ok" : "missing",
52
+ detail: `current: ${process.version}`,
53
+ fix: nodeMajor < needNode ? `Install Node ${needNode}+` : undefined,
54
+ });
55
+ const configPath = join(root, ".ai-spector/docflow.config.json");
56
+ const initialized = await pathExists(configPath);
57
+ steps.push({
58
+ id: "init",
59
+ label: "AI Spector project scaffold",
60
+ status: initialized ? "ok" : "missing",
61
+ detail: initialized ? configPath : undefined,
62
+ fix: initialized ? undefined : "npx ai-spector init",
63
+ });
64
+ const skillsPath = join(root, ".cursor/skills/ai-spector/SKILL.md");
65
+ steps.push({
66
+ id: "cursor-skills",
67
+ label: "Cursor agent skills",
68
+ status: (await pathExists(skillsPath)) ? "ok" : "missing",
69
+ fix: (await pathExists(skillsPath)) ? undefined : "npx ai-spector init",
70
+ });
71
+ const dataSource = join(root, "docs/data-source");
72
+ const hasDataSource = await pathExists(dataSource);
73
+ steps.push({
74
+ id: "data-source",
75
+ label: "docs/data-source/ folder",
76
+ status: hasDataSource ? "ok" : "warning",
77
+ fix: hasDataSource ? undefined : "mkdir -p docs/data-source",
78
+ });
79
+ let gitOk = false;
80
+ try {
81
+ const { execFile } = await import("node:child_process");
82
+ const { promisify } = await import("node:util");
83
+ const exec = promisify(execFile);
84
+ const { stdout } = await exec("git", ["rev-parse", "--is-inside-work-tree"], { cwd: root });
85
+ gitOk = stdout.trim() === "true";
86
+ }
87
+ catch {
88
+ gitOk = false;
89
+ }
90
+ steps.push({
91
+ id: "git",
92
+ label: "Git repository",
93
+ status: gitOk ? "ok" : "warning",
94
+ fix: gitOk ? undefined : "git init",
95
+ });
96
+ const hookOk = await hookInstalled(root);
97
+ steps.push({
98
+ id: "pre-commit",
99
+ label: "Pre-commit hook (validate + translation + impact)",
100
+ status: hookOk ? "ok" : gitOk ? "missing" : "warning",
101
+ fix: hookOk ? undefined : "npx ai-spector hooks install",
102
+ });
103
+ if (initialized) {
104
+ try {
105
+ const { config } = await loadDocflowConfig(root);
106
+ const langs = config.languages.map((l) => l.code).join(", ");
107
+ steps.push({
108
+ id: "languages",
109
+ label: "Configured languages",
110
+ status: config.languages.length > 0 ? "ok" : "warning",
111
+ detail: langs,
112
+ fix: config.languages.length === 0 ? "npx ai-spector lang add jp" : undefined,
113
+ });
114
+ for (const lang of config.languages) {
115
+ const srsDir = join(root, `docs/srs/${lang.code}`);
116
+ steps.push({
117
+ id: `docs-srs-${lang.code}`,
118
+ label: `docs/srs/${lang.code}/`,
119
+ status: (await pathExists(srsDir)) ? "ok" : "missing",
120
+ });
121
+ }
122
+ }
123
+ catch {
124
+ steps.push({
125
+ id: "languages",
126
+ label: "Configured languages",
127
+ status: "warning",
128
+ detail: "Could not read docflow.config.json",
129
+ });
130
+ }
131
+ }
132
+ const pkgPath = join(root, "package.json");
133
+ if (await pathExists(pkgPath)) {
134
+ const pkg = await readJson(pkgPath);
135
+ const hasDep = pkg.devDependencies?.["ai-spector"] !== undefined ||
136
+ pkg.dependencies?.["ai-spector"] !== undefined;
137
+ steps.push({
138
+ id: "npm-dep",
139
+ label: "ai-spector npm dependency",
140
+ status: hasDep ? "ok" : "warning",
141
+ fix: hasDep ? undefined : "npm install -D ai-spector",
142
+ });
143
+ }
144
+ const required = ["node", "init", "cursor-skills"];
145
+ const ready = required.every((id) => steps.find((s) => s.id === id)?.status === "ok");
146
+ return { projectRoot: root, ready, steps };
147
+ }
148
+ function formatAuditTable(audit) {
149
+ const lines = ["Setup checklist", ""];
150
+ for (const step of audit.steps) {
151
+ const icon = step.status === "ok" ? "✓" : step.status === "warning" ? "!" : "✗";
152
+ const detail = step.detail ? ` — ${step.detail}` : "";
153
+ lines.push(` ${icon} ${step.label}${detail}`);
154
+ if (step.status !== "ok" && step.fix) {
155
+ lines.push(` fix: ${step.fix}`);
156
+ }
157
+ }
158
+ lines.push("");
159
+ lines.push(audit.ready ? "Project is ready for the docflow pipeline." : "Some required steps are missing.");
160
+ return lines.join("\n");
161
+ }
162
+ async function maybeInstallDependency(root, installDep) {
163
+ const pkgPath = join(root, "package.json");
164
+ if (!installDep || !(await pathExists(pkgPath))) {
165
+ return;
166
+ }
167
+ const pkg = await readJson(pkgPath);
168
+ if (pkg.devDependencies?.["ai-spector"] || pkg.dependencies?.["ai-spector"]) {
169
+ return;
170
+ }
171
+ console.log("Installing ai-spector as dev dependency…");
172
+ const { spawn } = await import("node:child_process");
173
+ await new Promise((resolvePromise, reject) => {
174
+ const child = spawn("npm", ["install", "-D", "ai-spector"], {
175
+ cwd: root,
176
+ stdio: "inherit",
177
+ shell: process.platform === "win32",
178
+ });
179
+ child.on("error", reject);
180
+ child.on("close", (code) => {
181
+ if (code === 0) {
182
+ resolvePromise();
183
+ }
184
+ else {
185
+ reject(new Error(`npm install exited with code ${code}`));
186
+ }
187
+ });
188
+ });
189
+ }
190
+ export async function runSetupCheck(opts = {}) {
191
+ const root = resolve(opts.root ?? process.cwd());
192
+ const audit = await auditSetup(root);
193
+ if (opts.json) {
194
+ console.log(JSON.stringify(audit, null, 2));
195
+ }
196
+ else {
197
+ console.log(formatAuditTable(audit));
198
+ }
199
+ return audit;
200
+ }
201
+ export async function runSetup(opts = {}) {
202
+ const root = resolve(opts.root ?? process.cwd());
203
+ const interactive = isInteractive() && !opts.yes;
204
+ console.log("AI Spector setup");
205
+ console.log("==============");
206
+ console.log("");
207
+ let audit = await auditSetup(root);
208
+ if (!opts.json) {
209
+ console.log(formatAuditTable(audit));
210
+ }
211
+ if (interactive && !audit.ready) {
212
+ const cont = await promptYesNo("Run setup to fix missing required steps?", true);
213
+ if (!cont) {
214
+ console.log("Setup cancelled.");
215
+ return audit;
216
+ }
217
+ }
218
+ let langCodes = opts.languages;
219
+ if (!langCodes || langCodes.length === 0) {
220
+ if (interactive) {
221
+ const raw = await promptLine("Languages (comma-separated codes, e.g. en,jp,vi)", "en");
222
+ langCodes = raw.split(",").map((c) => c.trim()).filter(Boolean);
223
+ }
224
+ else {
225
+ langCodes = ["en"];
226
+ }
227
+ }
228
+ if (langCodes.length === 0) {
229
+ langCodes = ["en"];
230
+ }
231
+ const configExists = await pathExists(join(root, ".ai-spector/docflow.config.json"));
232
+ const shouldInit = !opts.skipInit && (!configExists || opts.force);
233
+ if (shouldInit) {
234
+ console.log("");
235
+ console.log(`Step: scaffold project (${langCodes.join(", ")})…`);
236
+ await runInit({
237
+ targetDir: root,
238
+ force: opts.force,
239
+ languages: langCodes,
240
+ });
241
+ }
242
+ else if (configExists) {
243
+ console.log("");
244
+ console.log("Step: refresh Cursor skills from package…");
245
+ await runSyncCursor({ targetDir: root });
246
+ await ensureAiSpectorGitignore(root);
247
+ try {
248
+ await ensureGitRepository(root);
249
+ await installGitHooks(root);
250
+ console.log(" git hook -> pre-commit installed/updated");
251
+ }
252
+ catch {
253
+ console.log(" git hook -> skipped (run: npx ai-spector hooks install)");
254
+ }
255
+ }
256
+ await mkdir(join(root, "docs/data-source"), { recursive: true });
257
+ if (opts.installDep) {
258
+ try {
259
+ await maybeInstallDependency(root, true);
260
+ }
261
+ catch (err) {
262
+ console.warn(`Warning: could not install npm dependency: ${err instanceof Error ? err.message : String(err)}`);
263
+ }
264
+ }
265
+ audit = await auditSetup(root);
266
+ if (!opts.json) {
267
+ console.log("");
268
+ console.log(formatAuditTable(audit));
269
+ console.log("");
270
+ console.log("Cursor IDE (do once):");
271
+ console.log(" 1. Open this folder in Cursor");
272
+ console.log(" 2. Settings → Rules → enable all skills under .cursor/skills/");
273
+ console.log(" 3. Reload MCP if .cursor/mcp.json changed");
274
+ console.log(" 4. Add source files to docs/data-source/");
275
+ console.log(' 5. In chat: "setup complete — analyze my data source"');
276
+ console.log("");
277
+ console.log("Re-check anytime: npx ai-spector setup --check");
278
+ }
279
+ else {
280
+ console.log(JSON.stringify(audit, null, 2));
281
+ }
282
+ return audit;
283
+ }
284
+ //# sourceMappingURL=setup.js.map