create-quiver 0.9.1 → 0.12.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (245) hide show
  1. package/BACKLOG.md +16 -17
  2. package/CHANGELOG.md +34 -0
  3. package/README.md +419 -330
  4. package/README_FOR_AI.md +93 -56
  5. package/ROADMAP.md +22 -11
  6. package/docs/AI_CONTEXT.md.template +2 -0
  7. package/docs/AI_ONBOARDING_PROMPT.md.template +36 -19
  8. package/docs/COMMANDS.md.template +73 -1
  9. package/docs/CONTEXTO.md.template +2 -0
  10. package/docs/DECISIONS.md.template +1 -0
  11. package/docs/GITFLOW_PR_GUIDE.md.template +11 -0
  12. package/docs/INDEX.md.template +20 -18
  13. package/docs/STANDARD.md.template +1 -1
  14. package/docs/STATUS.md.template +1 -0
  15. package/docs/SUPPORT_MATRIX.md.template +6 -2
  16. package/docs/TROUBLESHOOTING.md.template +79 -1
  17. package/docs/WORKFLOW.md.template +26 -18
  18. package/package.json +24 -2
  19. package/package.template.json +24 -7
  20. package/scripts/check-pr-readiness.sh +1 -1
  21. package/scripts/check-scope.sh +0 -1
  22. package/scripts/check-slice-readiness.sh +3 -4
  23. package/scripts/init-docs.sh +53 -6
  24. package/scripts/package-quiver.sh +18 -2
  25. package/specs/quiver-v20-ai-cli-orchestration/EVIDENCE_REPORT.md +23 -0
  26. package/specs/quiver-v20-ai-cli-orchestration/EXECUTION_PLAN.md +57 -0
  27. package/specs/quiver-v20-ai-cli-orchestration/SPEC.md +202 -0
  28. package/specs/quiver-v20-ai-cli-orchestration/STATUS.md +35 -0
  29. package/specs/quiver-v20-ai-cli-orchestration/pr.md +100 -0
  30. package/specs/quiver-v20-ai-cli-orchestration/slices/slice-00-spec-foundation/CLOSURE_BRIEF.md +30 -0
  31. package/specs/quiver-v20-ai-cli-orchestration/slices/slice-00-spec-foundation/EXECUTION_BRIEF.md +61 -0
  32. package/specs/quiver-v20-ai-cli-orchestration/slices/slice-00-spec-foundation/slice.json +54 -0
  33. package/specs/quiver-v20-ai-cli-orchestration/slices/slice-01-ai-provider-runner/CLOSURE_BRIEF.md +39 -0
  34. package/specs/quiver-v20-ai-cli-orchestration/slices/slice-01-ai-provider-runner/EXECUTION_BRIEF.md +63 -0
  35. package/specs/quiver-v20-ai-cli-orchestration/slices/slice-01-ai-provider-runner/slice.json +55 -0
  36. package/specs/quiver-v20-ai-cli-orchestration/slices/slice-02-context-packs-token-budget/CLOSURE_BRIEF.md +40 -0
  37. package/specs/quiver-v20-ai-cli-orchestration/slices/slice-02-context-packs-token-budget/EXECUTION_BRIEF.md +60 -0
  38. package/specs/quiver-v20-ai-cli-orchestration/slices/slice-02-context-packs-token-budget/slice.json +54 -0
  39. package/specs/quiver-v20-ai-cli-orchestration/slices/slice-03-ai-phase-gated-planner/CLOSURE_BRIEF.md +43 -0
  40. package/specs/quiver-v20-ai-cli-orchestration/slices/slice-03-ai-phase-gated-planner/EXECUTION_BRIEF.md +62 -0
  41. package/specs/quiver-v20-ai-cli-orchestration/slices/slice-03-ai-phase-gated-planner/slice.json +62 -0
  42. package/specs/quiver-v20-ai-cli-orchestration/slices/slice-04-spec-slice-handoff-pr-generation/CLOSURE_BRIEF.md +36 -0
  43. package/specs/quiver-v20-ai-cli-orchestration/slices/slice-04-spec-slice-handoff-pr-generation/EXECUTION_BRIEF.md +63 -0
  44. package/specs/quiver-v20-ai-cli-orchestration/slices/slice-04-spec-slice-handoff-pr-generation/slice.json +59 -0
  45. package/specs/quiver-v20-ai-cli-orchestration/slices/slice-05-execution-plan-parallel-worktrees/CLOSURE_BRIEF.md +32 -0
  46. package/specs/quiver-v20-ai-cli-orchestration/slices/slice-05-execution-plan-parallel-worktrees/EXECUTION_BRIEF.md +61 -0
  47. package/specs/quiver-v20-ai-cli-orchestration/slices/slice-05-execution-plan-parallel-worktrees/slice.json +59 -0
  48. package/specs/quiver-v20-ai-cli-orchestration/slices/slice-06-ai-execute-slice-scope-enforcement/CLOSURE_BRIEF.md +36 -0
  49. package/specs/quiver-v20-ai-cli-orchestration/slices/slice-06-ai-execute-slice-scope-enforcement/EXECUTION_BRIEF.md +64 -0
  50. package/specs/quiver-v20-ai-cli-orchestration/slices/slice-06-ai-execute-slice-scope-enforcement/slice.json +65 -0
  51. package/specs/quiver-v20-ai-cli-orchestration/slices/slice-07-github-pr-preflight/CLOSURE_BRIEF.md +36 -0
  52. package/specs/quiver-v20-ai-cli-orchestration/slices/slice-07-github-pr-preflight/EXECUTION_BRIEF.md +66 -0
  53. package/specs/quiver-v20-ai-cli-orchestration/slices/slice-07-github-pr-preflight/slice.json +63 -0
  54. package/specs/quiver-v20-ai-cli-orchestration/slices/slice-08-docs-smokes-release-readiness/CLOSURE_BRIEF.md +35 -0
  55. package/specs/quiver-v20-ai-cli-orchestration/slices/slice-08-docs-smokes-release-readiness/EXECUTION_BRIEF.md +64 -0
  56. package/specs/quiver-v20-ai-cli-orchestration/slices/slice-08-docs-smokes-release-readiness/slice.json +77 -0
  57. package/specs/quiver-v21-ai-first-layout/EVIDENCE_REPORT.md +31 -0
  58. package/specs/quiver-v21-ai-first-layout/EXECUTION_PLAN.md +185 -0
  59. package/specs/quiver-v21-ai-first-layout/SPEC.md +212 -0
  60. package/specs/quiver-v21-ai-first-layout/STATUS.md +37 -0
  61. package/specs/quiver-v21-ai-first-layout/pr.md +110 -0
  62. package/specs/quiver-v21-ai-first-layout/slices/slice-00-spec-foundation/CLOSURE_BRIEF.md +30 -0
  63. package/specs/quiver-v21-ai-first-layout/slices/slice-00-spec-foundation/EXECUTION_BRIEF.md +63 -0
  64. package/specs/quiver-v21-ai-first-layout/slices/slice-00-spec-foundation/slice.json +45 -0
  65. package/specs/quiver-v21-ai-first-layout/slices/slice-01-init-profiles-dry-run/CLOSURE_BRIEF.md +31 -0
  66. package/specs/quiver-v21-ai-first-layout/slices/slice-01-init-profiles-dry-run/EXECUTION_BRIEF.md +59 -0
  67. package/specs/quiver-v21-ai-first-layout/slices/slice-01-init-profiles-dry-run/slice.json +57 -0
  68. package/specs/quiver-v21-ai-first-layout/slices/slice-02-internal-layout-template-resolver/CLOSURE_BRIEF.md +32 -0
  69. package/specs/quiver-v21-ai-first-layout/slices/slice-02-internal-layout-template-resolver/EXECUTION_BRIEF.md +60 -0
  70. package/specs/quiver-v21-ai-first-layout/slices/slice-02-internal-layout-template-resolver/slice.json +58 -0
  71. package/specs/quiver-v21-ai-first-layout/slices/slice-03-generation-profiles-visible-contract/CLOSURE_BRIEF.md +34 -0
  72. package/specs/quiver-v21-ai-first-layout/slices/slice-03-generation-profiles-visible-contract/EXECUTION_BRIEF.md +61 -0
  73. package/specs/quiver-v21-ai-first-layout/slices/slice-03-generation-profiles-visible-contract/slice.json +64 -0
  74. package/specs/quiver-v21-ai-first-layout/slices/slice-04-analyze-scan-relocation/CLOSURE_BRIEF.md +32 -0
  75. package/specs/quiver-v21-ai-first-layout/slices/slice-04-analyze-scan-relocation/EXECUTION_BRIEF.md +58 -0
  76. package/specs/quiver-v21-ai-first-layout/slices/slice-04-analyze-scan-relocation/slice.json +64 -0
  77. package/specs/quiver-v21-ai-first-layout/slices/slice-05-empty-specs-layout-doctor/CLOSURE_BRIEF.md +32 -0
  78. package/specs/quiver-v21-ai-first-layout/slices/slice-05-empty-specs-layout-doctor/EXECUTION_BRIEF.md +60 -0
  79. package/specs/quiver-v21-ai-first-layout/slices/slice-05-empty-specs-layout-doctor/slice.json +65 -0
  80. package/specs/quiver-v21-ai-first-layout/slices/slice-06-legacy-migration-optional-assets/CLOSURE_BRIEF.md +31 -0
  81. package/specs/quiver-v21-ai-first-layout/slices/slice-06-legacy-migration-optional-assets/EXECUTION_BRIEF.md +62 -0
  82. package/specs/quiver-v21-ai-first-layout/slices/slice-06-legacy-migration-optional-assets/slice.json +66 -0
  83. package/specs/quiver-v21-ai-first-layout/slices/slice-07-docs-guidance-alignment/CLOSURE_BRIEF.md +33 -0
  84. package/specs/quiver-v21-ai-first-layout/slices/slice-07-docs-guidance-alignment/EXECUTION_BRIEF.md +61 -0
  85. package/specs/quiver-v21-ai-first-layout/slices/slice-07-docs-guidance-alignment/slice.json +67 -0
  86. package/specs/quiver-v21-ai-first-layout/slices/slice-08-smokes-release-readiness/CLOSURE_BRIEF.md +35 -0
  87. package/specs/quiver-v21-ai-first-layout/slices/slice-08-smokes-release-readiness/EXECUTION_BRIEF.md +66 -0
  88. package/specs/quiver-v21-ai-first-layout/slices/slice-08-smokes-release-readiness/slice.json +62 -0
  89. package/specs/quiver-v22-guided-ai-workflow/EVIDENCE_REPORT.md +58 -0
  90. package/specs/quiver-v22-guided-ai-workflow/EXECUTION_PLAN.md +88 -0
  91. package/specs/quiver-v22-guided-ai-workflow/SPEC.md +228 -0
  92. package/specs/quiver-v22-guided-ai-workflow/STATUS.md +42 -0
  93. package/specs/quiver-v22-guided-ai-workflow/pr.md +104 -0
  94. package/specs/quiver-v22-guided-ai-workflow/slices/slice-00-spec-foundation/CLOSURE_BRIEF.md +35 -0
  95. package/specs/quiver-v22-guided-ai-workflow/slices/slice-00-spec-foundation/EXECUTION_BRIEF.md +61 -0
  96. package/specs/quiver-v22-guided-ai-workflow/slices/slice-00-spec-foundation/slice.json +51 -0
  97. package/specs/quiver-v22-guided-ai-workflow/slices/slice-01-docs-source-of-truth-sync/CLOSURE_BRIEF.md +31 -0
  98. package/specs/quiver-v22-guided-ai-workflow/slices/slice-01-docs-source-of-truth-sync/EXECUTION_BRIEF.md +58 -0
  99. package/specs/quiver-v22-guided-ai-workflow/slices/slice-01-docs-source-of-truth-sync/slice.json +55 -0
  100. package/specs/quiver-v22-guided-ai-workflow/slices/slice-02-prepare-command-diagnostics/CLOSURE_BRIEF.md +30 -0
  101. package/specs/quiver-v22-guided-ai-workflow/slices/slice-02-prepare-command-diagnostics/EXECUTION_BRIEF.md +57 -0
  102. package/specs/quiver-v22-guided-ai-workflow/slices/slice-02-prepare-command-diagnostics/slice.json +57 -0
  103. package/specs/quiver-v22-guided-ai-workflow/slices/slice-03-context-doc-refresh/CLOSURE_BRIEF.md +32 -0
  104. package/specs/quiver-v22-guided-ai-workflow/slices/slice-03-context-doc-refresh/EXECUTION_BRIEF.md +56 -0
  105. package/specs/quiver-v22-guided-ai-workflow/slices/slice-03-context-doc-refresh/slice.json +56 -0
  106. package/specs/quiver-v22-guided-ai-workflow/slices/slice-04-planner-approval-state/CLOSURE_BRIEF.md +33 -0
  107. package/specs/quiver-v22-guided-ai-workflow/slices/slice-04-planner-approval-state/EXECUTION_BRIEF.md +56 -0
  108. package/specs/quiver-v22-guided-ai-workflow/slices/slice-04-planner-approval-state/slice.json +58 -0
  109. package/specs/quiver-v22-guided-ai-workflow/slices/slice-05-spec-worktree-lifecycle/CLOSURE_BRIEF.md +32 -0
  110. package/specs/quiver-v22-guided-ai-workflow/slices/slice-05-spec-worktree-lifecycle/EXECUTION_BRIEF.md +56 -0
  111. package/specs/quiver-v22-guided-ai-workflow/slices/slice-05-spec-worktree-lifecycle/slice.json +54 -0
  112. package/specs/quiver-v22-guided-ai-workflow/slices/slice-06-executor-commit-recovery/CLOSURE_BRIEF.md +32 -0
  113. package/specs/quiver-v22-guided-ai-workflow/slices/slice-06-executor-commit-recovery/EXECUTION_BRIEF.md +58 -0
  114. package/specs/quiver-v22-guided-ai-workflow/slices/slice-06-executor-commit-recovery/slice.json +57 -0
  115. package/specs/quiver-v22-guided-ai-workflow/slices/slice-07-execution-waves-delegation/CLOSURE_BRIEF.md +32 -0
  116. package/specs/quiver-v22-guided-ai-workflow/slices/slice-07-execution-waves-delegation/EXECUTION_BRIEF.md +58 -0
  117. package/specs/quiver-v22-guided-ai-workflow/slices/slice-07-execution-waves-delegation/slice.json +55 -0
  118. package/specs/quiver-v22-guided-ai-workflow/slices/slice-08-pr-create-gh-ssh/CLOSURE_BRIEF.md +32 -0
  119. package/specs/quiver-v22-guided-ai-workflow/slices/slice-08-pr-create-gh-ssh/EXECUTION_BRIEF.md +58 -0
  120. package/specs/quiver-v22-guided-ai-workflow/slices/slice-08-pr-create-gh-ssh/slice.json +53 -0
  121. package/specs/quiver-v22-guided-ai-workflow/slices/slice-09-post-merge-cleanup-release-safety/CLOSURE_BRIEF.md +33 -0
  122. package/specs/quiver-v22-guided-ai-workflow/slices/slice-09-post-merge-cleanup-release-safety/EXECUTION_BRIEF.md +59 -0
  123. package/specs/quiver-v22-guided-ai-workflow/slices/slice-09-post-merge-cleanup-release-safety/slice.json +59 -0
  124. package/specs/quiver-v22-guided-ai-workflow/slices/slice-10-docs-smokes-release-readiness/CLOSURE_BRIEF.md +34 -0
  125. package/specs/quiver-v22-guided-ai-workflow/slices/slice-10-docs-smokes-release-readiness/EXECUTION_BRIEF.md +58 -0
  126. package/specs/quiver-v22-guided-ai-workflow/slices/slice-10-docs-smokes-release-readiness/slice.json +60 -0
  127. package/specs/quiver-v23-guided-flow-productization/EVIDENCE_REPORT.md +80 -0
  128. package/specs/quiver-v23-guided-flow-productization/EXECUTION_PLAN.md +80 -0
  129. package/specs/quiver-v23-guided-flow-productization/SPEC.md +203 -0
  130. package/specs/quiver-v23-guided-flow-productization/STATUS.md +39 -0
  131. package/specs/quiver-v23-guided-flow-productization/pr.md +119 -0
  132. package/specs/quiver-v23-guided-flow-productization/slices/slice-00-spec-foundation/CLOSURE_BRIEF.md +30 -0
  133. package/specs/quiver-v23-guided-flow-productization/slices/slice-00-spec-foundation/EXECUTION_BRIEF.md +61 -0
  134. package/specs/quiver-v23-guided-flow-productization/slices/slice-00-spec-foundation/slice.json +51 -0
  135. package/specs/quiver-v23-guided-flow-productization/slices/slice-01-short-command-and-flow-entrypoint/CLOSURE_BRIEF.md +33 -0
  136. package/specs/quiver-v23-guided-flow-productization/slices/slice-01-short-command-and-flow-entrypoint/EXECUTION_BRIEF.md +35 -0
  137. package/specs/quiver-v23-guided-flow-productization/slices/slice-01-short-command-and-flow-entrypoint/slice.json +56 -0
  138. package/specs/quiver-v23-guided-flow-productization/slices/slice-02-flow-status-wizard/CLOSURE_BRIEF.md +31 -0
  139. package/specs/quiver-v23-guided-flow-productization/slices/slice-02-flow-status-wizard/EXECUTION_BRIEF.md +29 -0
  140. package/specs/quiver-v23-guided-flow-productization/slices/slice-02-flow-status-wizard/slice.json +55 -0
  141. package/specs/quiver-v23-guided-flow-productization/slices/slice-03-agent-profiles/CLOSURE_BRIEF.md +33 -0
  142. package/specs/quiver-v23-guided-flow-productization/slices/slice-03-agent-profiles/EXECUTION_BRIEF.md +29 -0
  143. package/specs/quiver-v23-guided-flow-productization/slices/slice-03-agent-profiles/slice.json +54 -0
  144. package/specs/quiver-v23-guided-flow-productization/slices/slice-04-context-preparation-onboarding/CLOSURE_BRIEF.md +32 -0
  145. package/specs/quiver-v23-guided-flow-productization/slices/slice-04-context-preparation-onboarding/EXECUTION_BRIEF.md +30 -0
  146. package/specs/quiver-v23-guided-flow-productization/slices/slice-04-context-preparation-onboarding/slice.json +59 -0
  147. package/specs/quiver-v23-guided-flow-productization/slices/slice-05-planner-iteration-history/CLOSURE_BRIEF.md +31 -0
  148. package/specs/quiver-v23-guided-flow-productization/slices/slice-05-planner-iteration-history/EXECUTION_BRIEF.md +29 -0
  149. package/specs/quiver-v23-guided-flow-productization/slices/slice-05-planner-iteration-history/slice.json +53 -0
  150. package/specs/quiver-v23-guided-flow-productization/slices/slice-06-production-plan-review/CLOSURE_BRIEF.md +33 -0
  151. package/specs/quiver-v23-guided-flow-productization/slices/slice-06-production-plan-review/EXECUTION_BRIEF.md +30 -0
  152. package/specs/quiver-v23-guided-flow-productization/slices/slice-06-production-plan-review/slice.json +54 -0
  153. package/specs/quiver-v23-guided-flow-productization/slices/slice-07-spec-create-experience/CLOSURE_BRIEF.md +33 -0
  154. package/specs/quiver-v23-guided-flow-productization/slices/slice-07-spec-create-experience/EXECUTION_BRIEF.md +30 -0
  155. package/specs/quiver-v23-guided-flow-productization/slices/slice-07-spec-create-experience/slice.json +55 -0
  156. package/specs/quiver-v23-guided-flow-productization/slices/slice-08-executor-prompt-generation/CLOSURE_BRIEF.md +32 -0
  157. package/specs/quiver-v23-guided-flow-productization/slices/slice-08-executor-prompt-generation/EXECUTION_BRIEF.md +30 -0
  158. package/specs/quiver-v23-guided-flow-productization/slices/slice-08-executor-prompt-generation/slice.json +55 -0
  159. package/specs/quiver-v23-guided-flow-productization/slices/slice-09-delegated-slice-execution/CLOSURE_BRIEF.md +33 -0
  160. package/specs/quiver-v23-guided-flow-productization/slices/slice-09-delegated-slice-execution/EXECUTION_BRIEF.md +34 -0
  161. package/specs/quiver-v23-guided-flow-productization/slices/slice-09-delegated-slice-execution/slice.json +57 -0
  162. package/specs/quiver-v23-guided-flow-productization/slices/slice-10-docs-smokes-release-readiness/CLOSURE_BRIEF.md +33 -0
  163. package/specs/quiver-v23-guided-flow-productization/slices/slice-10-docs-smokes-release-readiness/EXECUTION_BRIEF.md +32 -0
  164. package/specs/quiver-v23-guided-flow-productization/slices/slice-10-docs-smokes-release-readiness/slice.json +63 -0
  165. package/specs/quiver-v24-dx-onboarding-hardening/EVIDENCE_REPORT.md +55 -0
  166. package/specs/quiver-v24-dx-onboarding-hardening/EXECUTION_PLAN.md +43 -0
  167. package/specs/quiver-v24-dx-onboarding-hardening/SPEC.md +149 -0
  168. package/specs/quiver-v24-dx-onboarding-hardening/STATUS.md +31 -0
  169. package/specs/quiver-v24-dx-onboarding-hardening/pr.md +76 -0
  170. package/specs/quiver-v24-dx-onboarding-hardening/slices/slice-00-spec-foundation/CLOSURE_BRIEF.md +31 -0
  171. package/specs/quiver-v24-dx-onboarding-hardening/slices/slice-00-spec-foundation/EXECUTION_BRIEF.md +52 -0
  172. package/specs/quiver-v24-dx-onboarding-hardening/slices/slice-00-spec-foundation/slice.json +51 -0
  173. package/specs/quiver-v24-dx-onboarding-hardening/slices/slice-01-init-template-hygiene/CLOSURE_BRIEF.md +38 -0
  174. package/specs/quiver-v24-dx-onboarding-hardening/slices/slice-01-init-template-hygiene/EXECUTION_BRIEF.md +53 -0
  175. package/specs/quiver-v24-dx-onboarding-hardening/slices/slice-01-init-template-hygiene/slice.json +55 -0
  176. package/specs/quiver-v24-dx-onboarding-hardening/slices/slice-02-cli-command-routing-version-errors/CLOSURE_BRIEF.md +33 -0
  177. package/specs/quiver-v24-dx-onboarding-hardening/slices/slice-02-cli-command-routing-version-errors/EXECUTION_BRIEF.md +50 -0
  178. package/specs/quiver-v24-dx-onboarding-hardening/slices/slice-02-cli-command-routing-version-errors/slice.json +52 -0
  179. package/specs/quiver-v24-dx-onboarding-hardening/slices/slice-03-doctor-fix-doc-link-checks/CLOSURE_BRIEF.md +33 -0
  180. package/specs/quiver-v24-dx-onboarding-hardening/slices/slice-03-doctor-fix-doc-link-checks/EXECUTION_BRIEF.md +50 -0
  181. package/specs/quiver-v24-dx-onboarding-hardening/slices/slice-03-doctor-fix-doc-link-checks/slice.json +53 -0
  182. package/specs/quiver-v24-dx-onboarding-hardening/slices/slice-04-prepare-output-ai-context-drafts/CLOSURE_BRIEF.md +33 -0
  183. package/specs/quiver-v24-dx-onboarding-hardening/slices/slice-04-prepare-output-ai-context-drafts/EXECUTION_BRIEF.md +50 -0
  184. package/specs/quiver-v24-dx-onboarding-hardening/slices/slice-04-prepare-output-ai-context-drafts/slice.json +70 -0
  185. package/specs/quiver-v24-dx-onboarding-hardening/slices/slice-05-local-slice-validation-base-guidance/CLOSURE_BRIEF.md +36 -0
  186. package/specs/quiver-v24-dx-onboarding-hardening/slices/slice-05-local-slice-validation-base-guidance/EXECUTION_BRIEF.md +49 -0
  187. package/specs/quiver-v24-dx-onboarding-hardening/slices/slice-05-local-slice-validation-base-guidance/slice.json +52 -0
  188. package/specs/quiver-v24-dx-onboarding-hardening/slices/slice-06-plan-graph-next-history-views/CLOSURE_BRIEF.md +43 -0
  189. package/specs/quiver-v24-dx-onboarding-hardening/slices/slice-06-plan-graph-next-history-views/EXECUTION_BRIEF.md +53 -0
  190. package/specs/quiver-v24-dx-onboarding-hardening/slices/slice-06-plan-graph-next-history-views/slice.json +60 -0
  191. package/specs/quiver-v24-dx-onboarding-hardening/slices/slice-07-analyzer-command-map-hardening/CLOSURE_BRIEF.md +32 -0
  192. package/specs/quiver-v24-dx-onboarding-hardening/slices/slice-07-analyzer-command-map-hardening/EXECUTION_BRIEF.md +50 -0
  193. package/specs/quiver-v24-dx-onboarding-hardening/slices/slice-07-analyzer-command-map-hardening/slice.json +51 -0
  194. package/specs/quiver-v24-dx-onboarding-hardening/slices/slice-08-evidence-run-command/CLOSURE_BRIEF.md +34 -0
  195. package/specs/quiver-v24-dx-onboarding-hardening/slices/slice-08-evidence-run-command/EXECUTION_BRIEF.md +52 -0
  196. package/specs/quiver-v24-dx-onboarding-hardening/slices/slice-08-evidence-run-command/slice.json +54 -0
  197. package/specs/quiver-v24-dx-onboarding-hardening/slices/slice-09-spec-viewer-demo-scaffolding/CLOSURE_BRIEF.md +34 -0
  198. package/specs/quiver-v24-dx-onboarding-hardening/slices/slice-09-spec-viewer-demo-scaffolding/EXECUTION_BRIEF.md +51 -0
  199. package/specs/quiver-v24-dx-onboarding-hardening/slices/slice-09-spec-viewer-demo-scaffolding/slice.json +59 -0
  200. package/specs/quiver-v24-dx-onboarding-hardening/slices/slice-10-docs-smokes-release-readiness/CLOSURE_BRIEF.md +33 -0
  201. package/specs/quiver-v24-dx-onboarding-hardening/slices/slice-10-docs-smokes-release-readiness/EXECUTION_BRIEF.md +54 -0
  202. package/specs/quiver-v24-dx-onboarding-hardening/slices/slice-10-docs-smokes-release-readiness/slice.json +76 -0
  203. package/src/create-quiver/commands/ai.js +915 -0
  204. package/src/create-quiver/commands/demo.js +22 -0
  205. package/src/create-quiver/commands/evidence.js +37 -0
  206. package/src/create-quiver/commands/flow.js +561 -0
  207. package/src/create-quiver/commands/graph.js +14 -1
  208. package/src/create-quiver/commands/next.js +28 -0
  209. package/src/create-quiver/commands/plan.js +6 -3
  210. package/src/create-quiver/commands/prepare.js +236 -0
  211. package/src/create-quiver/commands/spec.js +133 -0
  212. package/src/create-quiver/index.js +1096 -96
  213. package/src/create-quiver/lib/agent-profiles.js +148 -0
  214. package/src/create-quiver/lib/ai/context-packs.js +170 -0
  215. package/src/create-quiver/lib/ai/execution-plan.js +614 -0
  216. package/src/create-quiver/lib/ai/executor.js +682 -0
  217. package/src/create-quiver/lib/ai/github.js +525 -0
  218. package/src/create-quiver/lib/ai/onboarding-template.js +365 -0
  219. package/src/create-quiver/lib/ai/phase-gates.js +72 -0
  220. package/src/create-quiver/lib/ai/plan-review.js +283 -0
  221. package/src/create-quiver/lib/ai/preflight.js +58 -0
  222. package/src/create-quiver/lib/ai/prompt-transport.js +81 -0
  223. package/src/create-quiver/lib/ai/prompts.js +39 -0
  224. package/src/create-quiver/lib/ai/providers.js +315 -0
  225. package/src/create-quiver/lib/ai/safety.js +156 -0
  226. package/src/create-quiver/lib/ai/spec-generator.js +314 -0
  227. package/src/create-quiver/lib/ai/spec-templates.js +715 -0
  228. package/src/create-quiver/lib/approvals.js +350 -0
  229. package/src/create-quiver/lib/demo.js +657 -0
  230. package/src/create-quiver/lib/doctor.js +348 -0
  231. package/src/create-quiver/lib/evidence.js +115 -0
  232. package/src/create-quiver/lib/git.js +21 -0
  233. package/src/create-quiver/lib/init-docs.js +545 -23
  234. package/src/create-quiver/lib/init-layout.js +451 -0
  235. package/src/create-quiver/lib/lifecycle.js +8 -2
  236. package/src/create-quiver/lib/package-safety.js +117 -0
  237. package/src/create-quiver/lib/paths.js +63 -2
  238. package/src/create-quiver/lib/project-scan.js +66 -0
  239. package/src/create-quiver/lib/readiness.js +87 -18
  240. package/src/create-quiver/lib/scope.js +125 -0
  241. package/src/create-quiver/lib/slice-graph.js +7 -0
  242. package/src/create-quiver/lib/slice.js +59 -16
  243. package/src/create-quiver/lib/spec-worktrees.js +349 -0
  244. package/src/create-quiver/lib/state.js +18 -1
  245. package/src/create-quiver/lib/template-resolver.js +74 -0
package/README.md CHANGED
@@ -1,459 +1,548 @@
1
1
  # Quiver
2
2
 
3
- Quiver es una herramienta de línea de comandos para ordenar proyectos que trabajan con documentación, especificaciones, slices y ayuda de agentes de IA.
3
+ Quiver es un framework para trabajar con **WDD + SDD asistido por IA** en proyectos de software.
4
+ Ayuda a transformar un repositorio en un entorno donde humanos y agentes pueden entender el contexto, planificar por specs, ejecutar slices y revisar cambios con evidencia.
5
+ Está pensado para equipos que quieren usar IA de forma ordenada: primero workflow, después specs, después implementación.
4
6
 
5
- Su objetivo es simple: que una persona o un agente puedan llegar a un repo, entender qué está pasando, elegir el próximo trabajo correcto y avanzar sin romper el flujo del equipo.
7
+ ## 🚀 Inicio rápido
6
8
 
7
- ## ¿Qué es Quiver?
9
+ ### Usar Quiver con IA en un proyecto
8
10
 
9
- Quiver es un workflow de documentación para proyectos de software.
11
+ Ejecutá Quiver desde la raíz del proyecto donde querés instalar el workflow:
10
12
 
11
- Sirve para preparar un proyecto antes de implementar: crea una estructura de documentos, comandos y convenciones para que el trabajo no dependa de memoria, chats perdidos o instrucciones sueltas.
12
-
13
- Ayuda a:
14
-
15
- - desarrolladores que quieren trabajar por piezas pequeñas y revisables;
16
- - equipos que usan IA para analizar, planificar o implementar;
17
- - maintainers que necesitan que cada cambio tenga contexto, alcance y evidencia;
18
- - agentes de IA que necesitan saber por dónde empezar sin leer todo el repo.
13
+ ```bash
14
+ npx create-quiver init --name "Mi Proyecto"
15
+ npx create-quiver flow
16
+ npx create-quiver prepare --dry-run
17
+ npx create-quiver analyze
18
+ npx create-quiver doctor
19
+ npx create-quiver ai agent set planner --provider codex --model "planner-model"
20
+ npx create-quiver ai agent set executor --provider codex --model "executor-model"
21
+ npx create-quiver ai prepare-context --dry-run
22
+ npx create-quiver ai onboard --dry-run
23
+ ```
19
24
 
20
- Quiver existe porque el caos también compila. A veces. Pero después alguien tiene que entenderlo.
25
+ Después de eso, revisá:
21
26
 
22
- ## ¿Qué problema resuelve?
27
+ - `AGENTS.md`
28
+ - `docs/PROJECT_MAP.md`
29
+ - `docs/AI_CONTEXT.md`
30
+ - `docs/AI_ONBOARDING_PROMPT.md`
23
31
 
24
- En muchos proyectos, el trabajo empieza con una pregunta sencilla: "¿por dónde arranco?"
32
+ La maquinaria interna queda en `.quiver/`. Las specs reales no se crean durante el init: aparecen cuando el plan técnico ya fue revisado y aprobado, usando `spec create`.
25
33
 
26
- El problema es que la respuesta suele estar repartida en demasiados lugares:
34
+ El flujo normal con IA continúa así:
27
35
 
28
- - un README que no está actualizado;
29
- - tickets con contexto incompleto;
30
- - decisiones tomadas en conversaciones;
31
- - comandos que solo una persona conoce;
32
- - agentes de IA leyendo archivos de más o tocando archivos de menos;
33
- - PRs grandes donde es difícil saber qué se intentó hacer.
36
+ ```bash
37
+ npx create-quiver flow
38
+ npx create-quiver ai plan --phase acceptance --input requirements.md --dry-run
39
+ npx create-quiver ai approve --phase acceptance --input acceptance-approved.md
40
+ npx create-quiver ai approvals
41
+ npx create-quiver ai plan --phase technical-plan --dry-run
42
+ npx create-quiver ai review-plan --dry-run
43
+ npx create-quiver ai approve --phase technical-plan --version <n>
44
+ npx create-quiver spec create --dry-run
45
+ npx create-quiver spec start specs/<project-slug>
46
+ npx create-quiver next
47
+ npx create-quiver ai execute-plan --dry-run --commit --mode manual
48
+ npx create-quiver ai execute-plan --dry-run --commit --mode delegated
49
+ ```
34
50
 
35
- Quiver busca reducir esa fricción. No intenta reemplazar al equipo ni decidir por él. Lo que hace es ordenar el terreno para que el siguiente paso sea claro.
51
+ Usá `--dry-run` para validar provider, rol, contexto, paths y olas sin ejecutar el modelo. `--mode manual` imprime prompts para asignar slices a mano; `--mode delegated` prepara la ejecución con workspaces seguros cuando hay paralelismo.
36
52
 
37
- ## ¿Cómo lo resuelve?
53
+ ### Compatibilidad: macOS, Linux y Windows
38
54
 
39
- Quiver agrega una estructura de trabajo al proyecto.
55
+ El camino principal de Quiver está pensado para ser portable: usa `npx create-quiver ...`, `npm run quiver:*` y `node ...`. Esos comandos funcionan en macOS, Linux y Windows siempre que tengas Node.js, npm y Git instalados.
40
56
 
41
- Esa estructura separa tres cosas que suelen mezclarse:
57
+ Reglas prácticas por sistema:
42
58
 
43
- - **Contexto:** qué es el proyecto, cómo se trabaja y qué comandos existen.
44
- - **Plan:** qué problema se quiere resolver y en qué partes se divide.
45
- - **Ejecución:** qué slice se está trabajando, qué archivos puede tocar y cómo se valida.
59
+ - macOS y Linux: podés copiar los ejemplos tal como están. Las rutas SSH suelen verse como `~/.ssh/github-work`.
60
+ - Windows con PowerShell: usá los mismos comandos `npx`, `npm` y `node`, pero adaptá rutas a formato Windows, por ejemplo `C:\Users\<usuario>\ssh\github-work`.
61
+ - Windows con Git Bash o WSL: podés usar rutas tipo Unix, por ejemplo `~/.ssh/github-work`.
62
+ - Los wrappers Bash bajo `tools/scripts/` son compatibilidad legacy u opcional. Para trabajo nuevo, preferí el CLI Node y los scripts `quiver:*`.
46
63
 
47
- Al inicializarse, Quiver genera documentos y comandos para que el proyecto tenga un contrato de trabajo repetible.
64
+ Cuando uses GitHub o PRs:
48
65
 
49
- Los conceptos principales son:
66
+ - `--ssh-host-alias` recibe el alias del host en tu configuración SSH, por ejemplo `github-work` o `github-personal`.
67
+ - `--identity-file` recibe la ruta al archivo de clave, que cambia según el sistema operativo.
68
+ - `gh` debe estar instalado y autenticado; Quiver lo valida con `ai doctor` o `ai pr --dry-run`.
50
69
 
51
- - **Spec:** documento que describe un objetivo de trabajo. Define el problema, alcance, estado y evidencia esperada.
52
- - **Slice:** parte pequeña de una spec. Un slice debe ser lo bastante acotado como para implementarse, validarse y revisarse sin mezclar temas.
53
- - **Project map:** resumen generado por Quiver con stack, package manager, comandos y pistas del repo. Vive en `docs/PROJECT_MAP.md`.
54
- - **AI context:** paquete de contexto para agentes de IA. Vive en `docs/AI_CONTEXT.md`.
55
- - **Handoff:** documento excepcional para transferir contexto entre agentes o fases. Vive en `specs/<spec-slug>/HANDOFF.md`.
70
+ ### Desarrollar este repositorio
56
71
 
57
- La regla práctica es: primero contexto, después plan, después código.
72
+ ```bash
73
+ git clone <repo-url>
74
+ cd quiver
75
+ npm install
76
+ node bin/create-quiver.js --help
77
+ node --test tests/**/*.test.js
78
+ ```
58
79
 
59
- ## Primeros pasos
80
+ > El remote local detectado usa un alias SSH (`git@github-personal:FabriJuncal/quiver.git`). Si no tenés ese alias configurado, cloná con la URL que use tu equipo.
60
81
 
61
- Quiver se usa desde la raíz del proyecto donde querés instalar el workflow. No se recomienda instalarlo globalmente. Usá `npx create-quiver` o, si el equipo necesita fijar versión, una dev dependency local.
82
+ ## 🧠 Workflow principal: WDD + SDD con IA
62
83
 
63
- ### Caso 1: Proyecto nuevo desde cero
84
+ Quiver asume que la mayoría de los equipos lo van a usar para coordinar trabajo con agentes de IA. Por eso el flujo principal no empieza por código: empieza por contexto, workflow y planificación.
64
85
 
65
- Usá este camino cuando estás empezando un proyecto y querés sumar Quiver desde el principio.
86
+ | Etapa | Qué significa | Artefactos principales |
87
+ |---|---|---|
88
+ | WDD | Workflow-Driven Development: dejar claro cómo se trabaja antes de implementar. | `AGENTS.md`, `docs/WORKFLOW.md`, `docs/AI_CONTEXT.md`, `docs/PROJECT_MAP.md` |
89
+ | SDD | Spec-Driven Development: definir el trabajo en specs y slices antes de tocar código. | `specs/<project-slug>/SPEC.md`, `slice.json`, `EXECUTION_BRIEF.md`, `pr.md` |
90
+ | IA planner | Agente que lee contexto amplio y propone criterios, plan técnico, spec y slices. | `ai prepare-context`, `ai onboard`, `ai plan` |
91
+ | IA executor | Agente que recibe un slice aprobado y trabaja con contexto mínimo. | `ai prompt-slice`, `ai execute-slice`, `check-scope`, `check-slice` |
66
92
 
67
- 1. Creá o entrá a la carpeta del proyecto.
93
+ Flujo recomendado:
68
94
 
69
95
  ```bash
70
- mkdir mi-proyecto
71
- cd mi-proyecto
96
+ npx create-quiver analyze
97
+ npx create-quiver flow
98
+ npx create-quiver doctor
99
+ npx create-quiver ai prepare-context --dry-run
100
+ npx create-quiver ai onboard --dry-run
101
+ npx create-quiver ai plan --phase acceptance --input requirements.md --dry-run
102
+ npx create-quiver ai approve --phase acceptance --input acceptance-approved.md
103
+ npx create-quiver ai plan --phase technical-plan --dry-run
104
+ npx create-quiver ai review-plan --dry-run
105
+ npx create-quiver ai approve --phase technical-plan --version <n>
106
+ npx create-quiver spec create --dry-run
107
+ npx create-quiver spec start specs/<project-slug>
108
+ npx create-quiver graph
109
+ npx create-quiver next
110
+ npx create-quiver ai prompt-slice --slice specs/<project-slug>/slices/slice-01/slice.json --dry-run
111
+ npx create-quiver ai execute-slice --slice specs/<project-slug>/slices/slice-01/slice.json --dry-run --commit
112
+ npx create-quiver ai execute-plan --dry-run --commit --mode delegated
113
+ npx create-quiver ai pr --dry-run --input specs/<project-slug>/pr.md --ssh-host-alias github-work --identity-file ~/.ssh/github-work
72
114
  ```
73
115
 
74
- 2. Inicializá Quiver con el nombre del proyecto.
116
+ Regla práctica: el planner no modifica código de producto; el executor solo trabaja sobre un slice aprobado y dentro de los archivos declarados en `slice.json`.
75
117
 
76
- ```bash
77
- npx create-quiver --name "Mi Proyecto"
78
- ```
118
+ ## 🛠️ Empezar a usar Quiver según tu caso
79
119
 
80
- Esto crea la estructura base de documentación y workflow. Después de inicializar, Quiver intenta instalarse como dev dependency del proyecto para que los comandos futuros resuelvan a la versión local.
120
+ ### 1. Proyecto nuevo desde cero
81
121
 
82
- 3. Analizá el proyecto.
122
+ Usá este camino cuando todavía no existe el proyecto o estás arrancando una carpeta nueva y querés que Quiver acompañe el workflow desde el primer commit.
83
123
 
84
124
  ```bash
125
+ mkdir mi-proyecto
126
+ cd mi-proyecto
127
+ npx create-quiver init --name "Mi Proyecto"
128
+ npx create-quiver flow
129
+ npx create-quiver prepare --dry-run
85
130
  npx create-quiver analyze
86
- ```
87
-
88
- Esto genera `docs/PROJECT_SCAN.json` y `docs/PROJECT_MAP.md`. Esos archivos ayudan a humanos y agentes a entender el repo sin adivinar.
89
-
90
- 4. Validá el contrato generado.
91
-
92
- ```bash
93
131
  npx create-quiver doctor
132
+ npx create-quiver ai prepare-context --dry-run
133
+ npx create-quiver ai onboard --dry-run
94
134
  ```
95
135
 
96
- El doctor revisa si falta algo importante y muestra los próximos pasos recomendados.
97
-
98
- 5. Leé el onboarding para agentes antes de pedir implementación.
99
-
100
- ```text
101
- Lee `docs/AI_ONBOARDING_PROMPT.md` y ejecútalo como fuente principal de verdad para incorporarte a este repositorio.
102
-
103
- Actúa como asistente de onboarding de IA. Prepara el contexto del proyecto para trabajar de forma segura con el workflow documentado, specs y slices.
136
+ Qué esperar:
104
137
 
105
- No modifiques código de producto salvo autorización explícita. Puedes crear o actualizar documentación de contexto si el onboarding lo requiere.
138
+ - Quiver crea un contrato visible chico: `AGENTS.md`, `docs/`, `.gitignore`, scripts `quiver:*` en `package.json` y configuración interna en `.quiver/`.
139
+ - No crea `docs-template/`, `tools/scripts/` ni una spec placeholder en el flujo default.
140
+ - `analyze` crea el scan crudo en `.quiver/scans/PROJECT_SCAN.json` y el mapa legible en `docs/PROJECT_MAP.md`.
141
+ - `doctor` valida que el contrato inicial esté completo.
142
+ - `ai prepare-context --dry-run` muestra borradores y supuestos sin escribir; `ai onboard --dry-run` muestra cómo se incorporaría un agente planner sin ejecutar el provider todavía.
106
143
 
107
- Usa solo la documentación del repositorio como fuente de verdad. Si encuentras información faltante, ambigua o contradictoria, documenta el supuesto, el riesgo y continúa por el camino más seguro.
144
+ Después del bootstrap, revisá:
108
145
 
109
- Responde en español y finaliza con un reporte breve de archivos leídos, archivos modificados, estado del código de producto, supuestos, riesgos y próximos pasos.
146
+ ```bash
147
+ npx create-quiver ai plan --phase acceptance --input requirements.md --dry-run
148
+ npx create-quiver ai approve --phase acceptance --input acceptance-approved.md
149
+ npx create-quiver ai plan --phase technical-plan --dry-run
150
+ npx create-quiver ai review-plan --dry-run
151
+ npx create-quiver ai approve --phase technical-plan --version <n>
152
+ npx create-quiver spec create --dry-run
153
+ npx create-quiver plan
154
+ npx create-quiver graph
155
+ npx create-quiver next
110
156
  ```
111
157
 
112
- Resultado esperado: el proyecto queda con `docs/`, `specs/<project-slug>/`, scripts `quiver:*` en `package.json`, archivos de soporte y una primera base para planificar trabajo.
158
+ ### 2. Proyecto ya iniciado sin Quiver
113
159
 
114
- ### Caso 2: Proyecto ya comenzado
160
+ Usá este camino cuando el repo ya tiene código, pero nunca fue inicializado con Quiver.
115
161
 
116
- Usá este camino cuando el proyecto ya existe, pero nunca fue inicializado con Quiver.
117
-
118
- 1. Revisá el estado actual antes de tocar nada.
162
+ Primero revisá el estado actual:
119
163
 
120
164
  ```bash
121
165
  git status --short
122
166
  ```
123
167
 
124
- Si hay cambios pendientes, conviene commitearlos, guardarlos o crear una rama dedicada para incorporar Quiver. La idea es que el diff de onboarding sea fácil de revisar.
125
-
126
- 2. Inicializá Quiver desde la raíz del proyecto.
127
-
128
- ```bash
129
- npx create-quiver --name "Nombre del Proyecto"
130
- ```
131
-
132
- No uses `migrate` si el proyecto nunca tuvo Quiver. `migrate` es solo para proyectos ya inicializados por una versión anterior.
168
+ Si hay cambios pendientes, conviene guardarlos, commitearlos o crear una rama dedicada para que el diff de onboarding sea fácil de revisar.
133
169
 
134
- 3. Analizá el repo real.
170
+ Luego inicializá Quiver desde la raíz del proyecto:
135
171
 
136
172
  ```bash
173
+ npx create-quiver init --name "Nombre del Proyecto"
174
+ npx create-quiver flow
137
175
  npx create-quiver analyze
138
- ```
139
-
140
- Esto detecta stack, package manager, comandos y archivos relevantes.
141
-
142
- 4. Corré el doctor.
143
-
144
- ```bash
145
176
  npx create-quiver doctor
146
- ```
147
-
148
- El doctor indica si falta completar contexto, si conviene revisar el onboarding de IA o si hay pasos pendientes.
149
-
150
- 5. Revisá el diff antes de seguir.
151
-
152
- ```bash
177
+ npx create-quiver ai agent set planner --provider codex --model "planner-model"
178
+ npx create-quiver ai agent set executor --provider codex --model "executor-model"
179
+ npx create-quiver ai prepare-context --dry-run
180
+ npx create-quiver ai onboard --dry-run
153
181
  git status --short
154
182
  ```
155
183
 
156
- Resultado esperado: Quiver agrega o actualiza archivos de workflow y documentación. No debería ser el momento de cambiar código de producto; primero se estabiliza el contexto.
184
+ Qué esperar:
185
+
186
+ - Quiver agrega documentación, scripts `quiver:*` y archivos internos de soporte en `.quiver/`.
187
+ - No deberías mezclar este paso con cambios de producto.
188
+ - `docs/PROJECT_MAP.md` queda como fuente de verdad para stack, package manager, comandos y rutas importantes.
189
+ - Las specs y slices reales se crean después, con `spec create`, cuando ya existen criterios aprobados y un plan técnico revisado y aprobado.
190
+ - El primer trabajo de IA debería ser preparar contexto y planificación, no implementar.
157
191
 
158
- ### Caso 3: Proyecto ya comenzado con una versión vieja de Quiver
192
+ Importante: no uses `migrate` para un proyecto que nunca tuvo Quiver. `migrate` es solo para proyectos previamente inicializados.
159
193
 
160
- Usá este camino cuando el proyecto ya tiene archivos de Quiver, pero pueden estar desactualizados.
194
+ ### 3. Proyecto iniciado con una versión vieja de Quiver
161
195
 
162
- 1. Buscá señales de una instalación previa.
196
+ Usá este camino cuando el repo ya tiene señales de Quiver, pero querés actualizarlo al contrato actual.
163
197
 
164
- Revisá si existen archivos como:
198
+ Señales típicas de una instalación previa:
165
199
 
166
200
  - `.quiver/state.json`
201
+ - `AGENTS.md`
167
202
  - `docs/AI_CONTEXT.md`
168
203
  - `docs/PROJECT_MAP.md`
169
- - `docs-template/`
170
- - `tools/scripts/`
171
- - scripts `quiver:*` en `package.json`
204
+ - `docs-template/` como señal legacy u opcional
205
+ - `tools/scripts/` como señal legacy u opcional
206
+ - scripts `quiver:*` o scripts legacy en `package.json`
172
207
 
173
- 2. Ejecutá el doctor para conocer el estado.
208
+ Desde la raíz del proyecto:
174
209
 
175
210
  ```bash
176
211
  npx create-quiver doctor
177
- ```
178
-
179
- Si el proyecto necesita migración, el doctor debería indicarlo.
180
-
181
- 3. Migrá solo si el proyecto ya había sido inicializado por Quiver.
182
-
183
- ```bash
184
212
  npx create-quiver migrate
213
+ npx create-quiver analyze
214
+ npx create-quiver doctor
215
+ npx create-quiver ai prepare-context --dry-run
216
+ npx create-quiver ai onboard --dry-run
217
+ git status --short
185
218
  ```
186
219
 
187
- La migración actualiza el contrato de Quiver y agrega scripts o archivos faltantes de forma aditiva. Si estás en CI, offline o no querés instalar dependencias durante la migración, podés usar:
220
+ Si estás en CI, offline o no querés que la migración instale dependencias automáticamente:
188
221
 
189
222
  ```bash
190
223
  npx create-quiver migrate --skip-install
191
224
  ```
192
225
 
193
- 4. Volvé a analizar y validar.
226
+ Qué esperar:
227
+
228
+ - La migración restaura o agrega archivos faltantes de forma aditiva.
229
+ - No debería sobrescribir archivos existentes de proyecto sin necesidad.
230
+ - Después de migrar, `analyze` actualiza el mapa técnico y `doctor` confirma los próximos pasos.
231
+ - `ai prepare-context --dry-run` ayuda a revisar supuestos del contexto migrado; `ai onboard --dry-run` valida que el contexto viejo quedó entendible para un agente planner.
232
+
233
+ Si `doctor` falla indicando que el proyecto no fue inicializado por Quiver, usá el flujo del caso 2.
234
+
235
+ ## ✨ Qué hace
236
+
237
+ Quiver instala una estructura de trabajo para que un proyecto pueda usar IA sin improvisar contexto en cada tarea:
238
+
239
+ - documentación base para humanos y agentes;
240
+ - contexto AI-first con roles de planner y executor;
241
+ - specs y slices para dividir trabajo en partes revisables;
242
+ - comandos para planificar, ejecutar y validar trabajo asistido por IA;
243
+ - checks de readiness, PR, handoff y scope;
244
+ - plantillas de contribución, soporte, seguridad, changelog y GitHub Actions.
245
+
246
+ La idea práctica: primero contexto, después plan, después código.
247
+
248
+ ## 🧱 Stack tecnológico
249
+
250
+ | Área | Tecnología detectada |
251
+ |---|---|
252
+ | Runtime | Node.js CLI |
253
+ | Lenguaje | JavaScript CommonJS |
254
+ | Package manager | npm (`package-lock.json`) |
255
+ | Binario npm | `create-quiver` y alias `quiver` -> `bin/create-quiver.js` |
256
+ | Tests | Node built-in test runner (`node:test`) |
257
+ | CI/CD | GitHub Actions |
258
+ | Distribución | Paquete npm público `create-quiver` |
259
+ | Base de datos | No detectada |
260
+ | Docker / Compose | No detectado |
261
+ | Prisma / Supabase / migrations / seeders | No detectados |
262
+
263
+ ## 📦 Requisitos
264
+
265
+ - Node.js 22.x recomendado. La CI usa Node 22, aunque `package.json` todavía no declara `engines`.
266
+ - npm.
267
+ - Git, especialmente para ramas y worktrees.
268
+ - `shellcheck` si querés replicar localmente el job de CI que valida scripts Bash.
269
+ - Opcional: `gh` para preflight de PR con GitHub.
270
+ - CLI local de `codex`, `claude` o `gemini` si vas a ejecutar comandos de IA sin `--dry-run`.
271
+
272
+ No se detectaron archivos `.env`; Quiver no requiere variables de entorno para el flujo básico.
273
+
274
+ ## 📁 Estructura del proyecto
275
+
276
+ | Ruta | Propósito |
277
+ |---|---|
278
+ | `bin/create-quiver.js` | Entry point ejecutable del CLI. |
279
+ | `src/create-quiver/` | Código fuente del CLI y comandos principales. |
280
+ | `src/create-quiver/commands/` | Comandos `ai`, `graph`, `next` y `plan`. |
281
+ | `src/create-quiver/lib/` | Lógica de análisis, doctor, slices, lifecycle, IA, Git y renderers. |
282
+ | `docs/` | Plantillas que Quiver copia a proyectos destino. |
283
+ | `specs/` | Specs internas del desarrollo de Quiver y templates usados cuando `spec create` crea una spec real. |
284
+ | `scripts/` | Scripts de packaging, release, CI smoke y wrappers legacy. |
285
+ | `tests/` | Tests unitarios y fixtures. |
286
+ | `examples/` | Ejemplo mínimo de spec/slice. |
287
+ | `i18n/es/` | Documentación y plantillas en español. |
288
+ | `.github/` | Workflows, templates de issues y PR. |
289
+
290
+ ## ⚙️ Configuración
291
+
292
+ ### Variables opcionales
293
+
294
+ | Variable | Uso |
295
+ |---|---|
296
+ | `SLICE_WORKTREES_DIR` | Cambia la carpeta donde `start-slice` crea worktrees. |
297
+ | `ALLOW_DRAFT_SLICE=1` | Permite iniciar slices en estado `draft`. Equivale a usar `--allow-draft`. |
298
+ | `QUIVER_VERSION` | Usada por scripts legacy de inicialización. |
299
+ | `QUIVER_MIGRATE` | Activa modo migración en scripts legacy. |
300
+ | `QUIVER_PROJECT_NAME` | Define nombre de proyecto en scripts legacy. |
301
+
302
+ Para IA sin `--dry-run`, la autenticación depende del proveedor local que uses (`codex`, `claude` o `gemini`). Para PR preflight, Quiver espera que `gh` y tu configuración SSH ya existan; no instala ni modifica credenciales.
303
+
304
+ ## 🧭 Comandos principales
305
+
306
+ Los comandos reales del CLI se ejecutan con `npx create-quiver ...` o, durante desarrollo local, con `node bin/create-quiver.js ...`.
307
+ El paquete también publica el alias binario `quiver`, que apunta al mismo CLI. Usalo cuando el paquete ya esté instalado localmente; para bootstrap remoto, seguí usando `npx create-quiver`.
308
+
309
+ | Comando | Para qué sirve |
310
+ |---|---|
311
+ | `npx create-quiver init --name "Proyecto"` | Inicializa Quiver en un proyecto nuevo o nunca inicializado. |
312
+ | `npx create-quiver --name "Proyecto"` | Alias compatible del flujo de init recomendado. |
313
+ | `npx create-quiver flow` | Muestra el estado inicial del flujo guiado y el próximo comando seguro sin escribir estado ni llamar providers. |
314
+ | `npx create-quiver ai agent set <role> --provider <provider> --model <label>` | Guarda perfiles reutilizables para planner, executor, reviewer o researcher sin guardar secretos. |
315
+ | `npx create-quiver ai agent list` | Lista los perfiles configurados. |
316
+ | `npx create-quiver ai agent show <role>` | Muestra un perfil específico. |
317
+ | `npx create-quiver ai approvals` | Muestra drafts versionados y aprobados por fase. |
318
+ | `npx create-quiver ai approve --phase acceptance --version <n>` | Aprueba una versión concreta de un draft guardado. |
319
+ | `npx create-quiver init --minimal` | Crea solo el contrato esencial de onboarding. |
320
+ | `npx create-quiver init --full` | Crea el layout amplio de compatibilidad. |
321
+ | `npx create-quiver init --legacy-scripts` | Agrega wrappers Bash legacy bajo `tools/scripts/`. |
322
+ | `npx create-quiver init --include-templates` | Exporta templates empaquetados bajo `.quiver/templates/`. |
323
+ | `npx create-quiver analyze` | Genera `.quiver/scans/PROJECT_SCAN.json` y `docs/PROJECT_MAP.md`. |
324
+ | `npx create-quiver doctor` | Valida que el contrato de Quiver esté completo. |
325
+ | `npx create-quiver doctor --fix --dry-run` | Muestra reparaciones seguras sin escribir archivos. |
326
+ | `npx create-quiver doctor --fix` | Aplica reparaciones no destructivas e idempotentes. |
327
+ | `npx create-quiver prepare --dry-run` | Ejecuta diagnóstico guiado de preparación sin escribir archivos. |
328
+ | `npx create-quiver prepare` | Refresca contexto y muestra riesgos, supuestos y próximos comandos. |
329
+ | `npx create-quiver ai prepare-context --dry-run` | Previsualiza borradores de contexto IA, supuestos, riesgos, archivos considerados y rutas omitidas sin escribir. |
330
+ | `npx create-quiver migrate` | Actualiza proyectos que ya fueron inicializados con Quiver. |
331
+ | `npx create-quiver plan` | Lista slices pendientes en orden y calcula camino crítico. |
332
+ | `npx create-quiver graph` | Muestra el grafo de dependencias (`tree`, `mermaid` o `dot`). |
333
+ | `npx create-quiver next` | Sugiere el próximo slice listo para trabajar. |
334
+ | `npx create-quiver plan --include-completed` | Muestra slices completados para auditoría o demos. |
335
+ | `npx create-quiver graph --include-completed` | Incluye slices completados en el grafo histórico. |
336
+ | `npx create-quiver next --include-completed` | Mantiene la recomendación accionable y agrega historial completado. |
337
+ | `npx create-quiver spec create` | Crea la spec real desde el plan técnico revisado y aprobado. |
338
+ | `npx create-quiver spec start <spec-dir>` | Crea o reutiliza el worktree dedicado de una spec. |
339
+ | `npx create-quiver spec status <spec-dir>` | Muestra branch, path, `slice-00` y slices pendientes. |
340
+ | `npx create-quiver spec close <spec-dir>` | Cierra un worktree de spec ya mergeado y limpio. |
341
+ | `npx create-quiver start-slice <slice.json>` | Prepara worktree y contexto para ejecutar un slice. |
342
+ | `npx create-quiver check-slice <slice.json>` | Valida readiness del slice. |
343
+ | `npx create-quiver check-slice --local <slice.json>` | Valida estructura local sin exigir remoto/base. |
344
+ | `npx create-quiver check-pr <slice.json>` | Valida estructura esperada para PR. |
345
+ | `npx create-quiver check-scope <slice.json>` | Verifica que los archivos modificados estén dentro del alcance declarado. |
346
+ | `npx create-quiver cleanup-slice <slice.json>` | Limpia worktree/branch local asociado a un slice. |
347
+ | `npx create-quiver refresh-active-slices` | Regenera el tablero local `ACTIVE_SLICES.md`. |
348
+ | `npx create-quiver check-handoff <handoff.md>` | Valida un handoff. |
349
+ | `npx create-quiver new-handoff <spec-slug>` | Crea un handoff para una transferencia excepcional. |
350
+ | `npx create-quiver evidence run -- <comando>` | Ejecuta un comando y guarda evidencia local con exit code, duración y salida redactada/truncada. |
351
+ | `npx create-quiver demo create spec-viewer --dry-run` | Previsualiza el demo opcional Quiver Spec Viewer sin escribir archivos. |
352
+ | `npx create-quiver demo create spec-viewer --dir <target>` | Crea el demo estático con app, spec, slices, handoffs y validación. |
353
+
354
+ ### Comandos de IA para WDD + SDD
194
355
 
195
356
  ```bash
196
- npx create-quiver analyze
197
- npx create-quiver doctor
357
+ npx create-quiver ai prepare-context --dry-run
358
+ npx create-quiver ai onboard --dry-run
359
+ npx create-quiver ai agent set planner --provider codex --model "planner-model"
360
+ npx create-quiver ai agent set executor --provider codex --model "executor-model"
361
+ npx create-quiver ai agent list
362
+ npx create-quiver ai plan --phase acceptance --input requirements.md --dry-run
363
+ npx create-quiver ai approve --phase acceptance --input acceptance-approved.md
364
+ npx create-quiver ai plan --phase technical-plan --dry-run
365
+ npx create-quiver ai review-plan --dry-run
366
+ npx create-quiver ai approve --phase technical-plan --version <n>
367
+ npx create-quiver spec create --dry-run
368
+ npx create-quiver ai prompt-slice --slice specs/<project-slug>/slices/slice-01/slice.json --dry-run
369
+ npx create-quiver ai execute-slice --slice specs/<project-slug>/slices/slice-01/slice.json --dry-run --commit
370
+ npx create-quiver ai execute-plan --dry-run --commit --mode manual
371
+ npx create-quiver ai execute-plan --dry-run --commit --mode delegated
372
+ npx create-quiver ai doctor --dry-run --ssh-host-alias github-work --identity-file ~/.ssh/github-work
373
+ npx create-quiver ai pr --dry-run --input specs/<project-slug>/pr.md --ssh-host-alias github-work --identity-file ~/.ssh/github-work
198
374
  ```
199
375
 
200
- 5. Revisá el diff antes de continuar con slices.
376
+ Providers soportados: `codex`, `claude` y `gemini`, siempre vía CLI local.
377
+ Usá `--dry-run` primero para revisar provider, rol, context pack, prompt y paths sin ejecutar el modelo.
201
378
 
202
- ```bash
203
- git status --short
204
- ```
205
-
206
- Resultado esperado: el proyecto queda alineado con el contrato actual de Quiver sin mezclar migración con implementación de producto.
379
+ Orden recomendado:
207
380
 
208
- ## Flujo de trabajo recomendado con WDD y SDD
381
+ 1. `ai prepare-context --dry-run`: revisa borradores de contexto, supuestos y riesgos antes de escribir docs.
382
+ 2. `ai onboard`: el planner entiende el repo y el workflow.
383
+ 3. `ai plan --phase acceptance`: convierte requerimientos en criterios de aceptación.
384
+ 4. `ai plan --phase technical-plan`: propone el plan técnico.
385
+ 5. `ai review-plan`: revisa el plan como si fuera a producción, sin tocar código ni cuestionar el alcance aprobado.
386
+ 6. `ai approve`: guarda criterios o la versión revisada del plan técnico.
387
+ 7. `spec create`: genera spec, slices, handoffs y PR body desde el plan revisado y aprobado.
388
+ 8. `spec start`: prepara un worktree por spec.
389
+ 9. `ai prompt-slice`: imprime el prompt mínimo para asignar un slice manualmente.
390
+ 10. `ai execute-slice` / `ai execute-plan`: ejecuta slices aprobados, con commit opt-in. Usá `--mode manual` para prompts y `--mode delegated` para worktrees temporales en olas paralelas.
391
+ 11. `ai doctor` / `ai pr`: valida GitHub y crea el PR solo con `--create`.
392
+ 12. `spec close`: cierra el worktree después del merge.
209
393
 
210
- El repositorio no define formalmente las siglas WDD y SDD como comandos propios. En esta guía las usamos para nombrar dos prácticas que Quiver ya promueve:
394
+ ## 🧪 Cómo probar que funciona
211
395
 
212
- - **WDD, Workflow-Driven Development:** primero se documenta cómo se trabaja. El workflow, comandos, contexto y reglas quedan escritos antes de pedir cambios de producto.
213
- - **SDD, Spec-Driven Development:** el trabajo se define en specs y slices antes de implementar. La spec explica el objetivo; el slice limita el alcance.
396
+ Validación rápida del repo:
214
397
 
215
- ```mermaid
216
- flowchart TD
217
- A[1. Instalar o migrar Quiver] --> B[2. Analizar el proyecto]
218
- B --> C[3. Completar contexto WDD]
219
- C --> D[4. Definir o revisar spec SDD]
220
- D --> E[5. Elegir el próximo slice]
221
- E --> F[6. Empezar el slice]
222
- F --> G[7. Implementar y validar]
223
- G --> H[8. Abrir PR con evidencia]
398
+ ```bash
399
+ node bin/create-quiver.js --help
400
+ node --test tests/**/*.test.js
401
+ npm run package:quiver
402
+ npm pack --dry-run
224
403
  ```
225
404
 
226
- ### 1. Instalar o migrar Quiver
227
-
228
- Usá `npx create-quiver --name "Proyecto"` para proyectos nuevos o nunca inicializados. Usá `npx create-quiver migrate` solo cuando el proyecto ya tenía Quiver.
229
-
230
- ### 2. Analizar el proyecto
231
-
232
- Ejecutá:
405
+ Validaciones adicionales disponibles:
233
406
 
234
407
  ```bash
235
- npx create-quiver analyze
408
+ npm run smoke:create-quiver
409
+ npm run smoke:guided-workflow
410
+ npm run smoke:tiered-pack
236
411
  ```
237
412
 
238
- El resultado importante es `docs/PROJECT_MAP.md`, que debe tratarse como fuente de verdad para stack, package manager, comandos y pistas de archivos.
239
-
240
- ### 3. Completar contexto WDD
241
-
242
- Antes de implementar, revisá y completá la documentación de contexto:
243
-
244
- - `AGENTS.md`
245
- - `docs/AI_CONTEXT.md`
246
- - `docs/AI_ONBOARDING_PROMPT.md`
247
- - `docs/CONTEXTO.md`
248
- - `docs/WORKFLOW.md`
249
- - `docs/STATUS.md`
250
- - `docs/DECISIONS.md`
251
-
252
- Si un agente de IA participa, primero debe preparar contexto y reportar supuestos. No debería tocar código de producto sin autorización explícita.
253
-
254
- ### 4. Definir o revisar spec SDD
255
-
256
- Trabajá sobre `specs/<project-slug>/SPEC.md`.
257
-
258
- La spec debe explicar:
259
-
260
- - qué problema se quiere resolver;
261
- - qué entra y qué queda afuera;
262
- - qué evidencia va a demostrar que el trabajo terminó;
263
- - cómo se divide en slices.
264
-
265
- ### 5. Elegir el próximo slice
266
-
267
- Usá los comandos de orquestación:
413
+ Para dejar evidencia resumida de una validación sin pegar logs completos:
268
414
 
269
415
  ```bash
270
- npx create-quiver plan
271
- npx create-quiver graph
272
- npx create-quiver next
416
+ npx create-quiver evidence run -- npm test
273
417
  ```
274
418
 
275
- `plan` muestra el orden sugerido. `graph` muestra dependencias. `next` señala el próximo slice listo.
419
+ Por defecto la evidencia queda en `.quiver/evidence/`. También podés elegir destino con `--output <archivo>` y limitar stdout/stderr con `--max-output <n>`.
276
420
 
277
- ### 6. Empezar el slice
278
-
279
- Cuando el slice esté definido:
421
+ Para probar Quiver sin inventar una app desde cero:
280
422
 
281
423
  ```bash
282
- npx create-quiver start-slice specs/<project-slug>/slices/slice-01/slice.json
424
+ npx create-quiver demo create spec-viewer --dry-run
425
+ npx create-quiver demo create spec-viewer --dir ./quiver-spec-viewer
283
426
  ```
284
427
 
285
- Cada spec vuelve a empezar en `slice-01`. El número del slice es local a esa spec, no global del repo.
286
-
287
- ### 7. Implementar y validar
288
-
289
- Durante la implementación, leé primero el `slice.json`, los archivos declarados, pruebas cercanas y código directamente relacionado.
290
-
291
- Validá el slice y el PR:
428
+ El demo genera una app estática pequeña, specs/slices de ejemplo y scripts de validación. No forma parte de `init`; se crea solo cuando lo pedís.
429
+
430
+ Notas reales del estado actual:
431
+
432
+ - No hay script `npm test`; el comando verificado para tests es `node --test tests/**/*.test.js`.
433
+ - `npm run package:quiver` valida el contenido del paquete npm generado.
434
+ - `npm run smoke:guided-workflow` cubre el flujo guiado con IA sin llamadas reales pagas a providers.
435
+
436
+ ## 📜 Scripts npm
437
+
438
+ | Script | Uso |
439
+ |---|---|
440
+ | `npm run quiver:analyze` | Ejecuta `npx create-quiver analyze`. |
441
+ | `npm run quiver:flow` | Ejecuta `npx create-quiver flow`. |
442
+ | `npm run quiver:plan` | Ejecuta `npx create-quiver plan`. |
443
+ | `npm run quiver:prepare` | Ejecuta preparación guiada y diagnósticos. |
444
+ | `npm run quiver:graph` | Ejecuta `npx create-quiver graph`. |
445
+ | `npm run quiver:next` | Ejecuta `npx create-quiver next`. |
446
+ | `npm run quiver:doctor` | Ejecuta `npx create-quiver doctor`. |
447
+ | `npm run quiver:evidence` | Ejecuta `npx create-quiver evidence`; usalo como `npm run quiver:evidence -- run -- <comando>`. |
448
+ | `npm run quiver:ai:agent` | Ejecuta `npx create-quiver ai agent`. |
449
+ | `npm run quiver:ai:onboard` | Ejecuta onboarding de IA. |
450
+ | `npm run quiver:ai:prepare-context` | Prepara borradores de contexto IA solo en documentación; usalo primero con `-- --dry-run`. |
451
+ | `npm run quiver:ai:plan` | Ejecuta planificación IA por fases. |
452
+ | `npm run quiver:ai:review-plan` | Revisa el plan técnico antes de aprobarlo y crear la spec. |
453
+ | `npm run quiver:ai:approve` | Guarda criterios o planes aprobados. |
454
+ | `npm run quiver:ai:prompt-slice` | Imprime un prompt mínimo para asignar un slice a un executor. |
455
+ | `npm run quiver:ai:execute-slice` | Ejecuta un slice con rol executor. |
456
+ | `npm run quiver:ai:execute-plan` | Imprime o ejecuta olas de slices; soporta `--mode manual` y `--mode delegated`. |
457
+ | `npm run quiver:ai:doctor` | Ejecuta preflight IA/GitHub. |
458
+ | `npm run quiver:ai:pr` | Ejecuta preflight de PR y crea PR con `--create`. |
459
+ | `npm run quiver:spec:create` | Ejecuta `npx create-quiver spec create`. |
460
+ | `npm run quiver:spec:start` | Ejecuta `npx create-quiver spec start`. |
461
+ | `npm run quiver:spec:status` | Ejecuta `npx create-quiver spec status`. |
462
+ | `npm run quiver:spec:close` | Ejecuta `npx create-quiver spec close`. |
463
+ | `npm run package:quiver` | Empaqueta y valida el tarball npm. |
464
+ | `npm run smoke:create-quiver` | Smoke del instalador `create-quiver`. |
465
+ | `npm run smoke:guided-workflow` | Smoke del flujo guiado con IA, PR, cleanup y package safety. |
466
+ | `npm run smoke:tiered-pack` | Smoke de context packs y lifecycle. |
467
+ | `npm run release:quiver` | Release dry-run o publish, según flags. |
468
+
469
+ `package.json` también contiene scripts legacy como `check:slice`, `check:pr`, `start:slice`, `cleanup:slice` y `migrate` que apuntan a `tools/scripts/*`. En proyectos generados esos wrappers aparecen solo cuando se pide compatibilidad con `--legacy-scripts` o el perfil amplio `--full`; en este repo fuente requieren revisión antes de usarse directamente.
470
+
471
+ ## 🔁 Flujo recomendado
472
+
473
+ 1. Inicializá Quiver o migrá si el proyecto ya lo tenía.
474
+ 2. Corré `analyze` para generar el mapa técnico.
475
+ 3. Corré `doctor` para validar el contrato.
476
+ 4. Prepará contexto IA con `ai prepare-context --dry-run` y revisá los supuestos antes de escribir.
477
+ 5. Incorporá al planner con `ai onboard --dry-run`.
478
+ 6. Convertí requerimientos en criterios, plan técnico y spec con `ai plan`; revisá el plan con `ai review-plan` antes de aprobarlo.
479
+ 7. Creá la spec real con `spec create` y prepará su worktree con `spec start`.
480
+ 8. Revisá dependencias con `graph`, `next` o `ai execute-plan --dry-run --mode manual`.
481
+ 9. Para ejecución manual, generá el prompt con `ai prompt-slice --slice <slice.json> --dry-run`.
482
+ 10. Ejecutá slices con `ai execute-slice --commit` o `ai execute-plan --execute --commit --mode delegated`.
483
+ 11. Abrí el PR con `ai pr --create` después de revisar el dry-run.
484
+ 12. Después del merge, cerrá el worktree con `spec close`.
485
+
486
+ ## 🤝 Contribuir
487
+
488
+ 1. Abrí un issue describiendo el problema o propuesta.
489
+ 2. Acordá el alcance antes de implementar si hace falta.
490
+ 3. Trabajá en un slice pequeño y revisable.
491
+ 4. Incluí evidencia de validación en el PR.
492
+ 5. Mantené una relación clara: un slice, un commit; una spec, un PR.
493
+
494
+ ## 🚢 Release
495
+
496
+ Release dry-run:
292
497
 
293
498
  ```bash
294
- npx create-quiver check-slice specs/<project-slug>/slices/slice-01/slice.json
295
- npx create-quiver check-pr specs/<project-slug>/slices/slice-01/slice.json
499
+ npm run release:quiver
296
500
  ```
297
501
 
298
- Si querés validar que los archivos tocados respetan el alcance declarado:
502
+ Publicar la versión actual:
299
503
 
300
504
  ```bash
301
- npx create-quiver check-scope specs/<project-slug>/slices/slice-01/slice.json
505
+ bash scripts/release-quiver.sh --publish-current
302
506
  ```
303
507
 
304
- ### 8. Abrir PR con evidencia
305
-
306
- La regla del workflow es:
307
-
308
- - un slice = un commit;
309
- - una spec = un PR;
310
- - cada PR debe incluir evidencia de validación;
311
- - las decisiones durables van en `docs/DECISIONS.md`;
312
- - los aprendizajes reutilizables pueden registrarse en `docs/ai/LESSONS.md`.
313
-
314
- ## Comandos disponibles
315
-
316
- Los comandos principales se ejecutan con `npx create-quiver ...`. En proyectos generados, también quedan disponibles scripts `npm run quiver:*` que llaman al CLI Node.
317
-
318
- ### Inicialización y mantenimiento del workflow
319
-
320
- | Comando | Para qué sirve | Cuándo usarlo |
321
- |---|---|---|
322
- | `npx create-quiver --name "Proyecto"` | Inicializa Quiver en el proyecto actual. | Proyecto nuevo o proyecto existente que nunca tuvo Quiver. |
323
- | `npx create-quiver --name "Proyecto" --dir ./ruta` | Inicializa o inspecciona otra carpeta explícitamente. | Cuando no estás parado en la raíz del proyecto destino. |
324
- | `npx create-quiver migrate` | Actualiza una instalación previa de Quiver. | Solo en proyectos que ya fueron inicializados por Quiver. |
325
- | `npx create-quiver migrate --skip-install` | Migra sin instalar `create-quiver` como dev dependency. | CI, entornos offline o migraciones donde no querés tocar dependencias. |
326
- | `npx create-quiver doctor` | Valida el contrato generado y muestra pasos siguientes. | Después de init, migrate o analyze. |
327
-
328
- ### Análisis y contexto
329
-
330
- | Comando | Para qué sirve | Resultado esperado |
331
- |---|---|---|
332
- | `npx create-quiver analyze` | Escanea el proyecto y genera contexto técnico. | `docs/PROJECT_SCAN.json` y `docs/PROJECT_MAP.md`. |
333
- | `npx create-quiver check-handoff specs/<spec-slug>/HANDOFF.md` | Valida que un handoff exista en la ubicación correcta y tenga secciones requeridas. | Confirmación o errores accionables. |
334
- | `npx create-quiver new-handoff <spec-slug>` | Crea un `HANDOFF.md` para una transferencia excepcional. | `specs/<spec-slug>/HANDOFF.md`. |
335
-
336
- ### Planificación y orquestación de slices
337
-
338
- | Comando | Para qué sirve | Flags útiles |
339
- |---|---|---|
340
- | `npx create-quiver plan` | Lista slices pendientes en orden de ejecución y calcula camino crítico. | `--json`, `--only-ready`, `--spec <slug>` |
341
- | `npx create-quiver graph` | Muestra el grafo de dependencias entre slices. | `--format mermaid`, `--format dot`, `--show-conflicts`, `--level <n>` |
342
- | `npx create-quiver next` | Muestra el próximo slice listo para trabajar. | `--all-ready`, `--json`, `--auto-start` |
343
-
344
- ### Ejecución y validación
345
-
346
- | Comando | Para qué sirve | Cuándo usarlo |
347
- |---|---|---|
348
- | `npx create-quiver start-slice <slice.json>` | Prepara el trabajo de un slice. | Al comenzar una unidad de trabajo. |
349
- | `npx create-quiver start-slice --allow-draft <slice.json>` | Permite iniciar un slice en estado draft intencionalmente. | Solo cuando el equipo decide trabajar sobre un draft. |
350
- | `npx create-quiver check-slice <slice.json>` | Valida readiness del slice. | Antes o durante la ejecución. |
351
- | `npx create-quiver check-slice --gate validation <slice.json>` | Valida el slice en modo cierre. | Antes de marcarlo como completado. |
352
- | `npx create-quiver check-pr <slice.json>` | Valida que el PR tenga la estructura esperada. | Antes de abrir o pedir review. |
353
- | `npx create-quiver check-scope <slice.json>` | Revisa que los archivos tocados estén dentro del alcance declarado. | Antes de cerrar el slice. |
354
- | `npx create-quiver cleanup-slice <slice.json>` | Limpia estado local asociado a un slice. | Al terminar o descartar trabajo local. |
355
- | `npx create-quiver refresh-active-slices` | Regenera el tablero local de slices activos. | Cuando querés ver o refrescar actividad local. |
356
-
357
- ### Scripts npm generados
358
-
359
- Después de inicializar o migrar, los proyectos quedan con scripts equivalentes:
508
+ Publicar con bump:
360
509
 
361
510
  ```bash
362
- npm run quiver:analyze
363
- npm run quiver:plan
364
- npm run quiver:graph
365
- npm run quiver:next
366
- npm run quiver:doctor
367
- npm run quiver:migrate
368
- npm run quiver:start-slice -- specs/<project-slug>/slices/slice-01/slice.json
369
- npm run quiver:check-slice -- specs/<project-slug>/slices/slice-01/slice.json
370
- npm run quiver:check-pr -- specs/<project-slug>/slices/slice-01/slice.json
371
- npm run quiver:check-handoff -- specs/<project-slug>/HANDOFF.md
372
- npm run quiver:cleanup-slice -- specs/<project-slug>/slices/slice-01/slice.json
373
- npm run quiver:check-scope -- specs/<project-slug>/slices/slice-01/slice.json
374
- npm run quiver:refresh-active-slices
511
+ bash scripts/release-quiver.sh patch --publish
375
512
  ```
376
513
 
377
- Los wrappers Bash en `tools/scripts/` existen por compatibilidad en proyectos generados. Para automatización nueva, preferí `npx create-quiver ...` o los scripts `quiver:*`.
378
-
379
- ## Qué genera Quiver
380
-
381
- Según el estado del proyecto y el modo usado, Quiver puede generar o actualizar:
382
-
383
- - `AGENTS.md`
384
- - `docs/`
385
- - `docs/ai/`
386
- - `docs/AI_CONTEXT.md`
387
- - `docs/AI_ONBOARDING_PROMPT.md`
388
- - `docs/PROJECT_SCAN.json`
389
- - `docs/PROJECT_MAP.md`
390
- - `docs/DECISIONS.md`
391
- - `docs/COMMANDS.md`
392
- - `specs/<project-slug>/`
393
- - `specs/<project-slug>/HANDOFF.md`
394
- - `tools/scripts/`
395
- - `.github/`
396
- - scripts `quiver:*` en `package.json`
397
-
398
- No todos los proyectos necesitan todos los archivos opcionales. Si un archivo no existe, no lo des por hecho: crealo desde la plantilla o registrá que falta.
399
-
400
- ## Requisitos
401
-
402
- - Node.js y npm para ejecutar el instalador.
403
- - Git para branches, worktrees y validaciones de PR.
404
- - macOS, Linux o Windows PowerShell/CMD como entornos objetivo del runtime Node.
405
-
406
- Bash queda como camino de compatibilidad legacy para algunos wrappers. El contrato de largo plazo es Node-first.
407
-
408
- ## Para agentes de IA
409
-
410
- Si estás trabajando como agente dentro de este repo, leé primero `README_FOR_AI.md`.
411
-
412
- Si estás trabajando en un proyecto generado con Quiver, el orden recomendado es:
413
-
414
- 1. `AGENTS.md`
415
- 2. `docs/PROJECT_MAP.md`
416
- 3. `docs/PROJECT_SCAN.json`
417
- 4. `docs/AI_CONTEXT.md`
418
- 5. `docs/AI_ONBOARDING_PROMPT.md`
419
-
420
- Para implementar, no abras todo el repo por costumbre. Empezá por el `slice.json`, los archivos declarados, pruebas cercanas y código directamente relacionado.
421
-
422
- ## Para maintainers de Quiver
423
-
424
- Comandos útiles para preparar releases del paquete:
514
+ Antes de publicar, verificá autenticación y estado del paquete:
425
515
 
426
516
  ```bash
427
517
  npm whoami
428
518
  npm view create-quiver version
429
- npm run package:quiver
430
- npm run smoke:create-quiver
431
- npm run release:quiver
432
519
  ```
433
520
 
434
- Publicar la versión actual:
521
+ Checklist de release:
435
522
 
436
- ```bash
437
- bash scripts/release-quiver.sh --publish-current
438
- ```
439
-
440
- Publicar con bump de versión:
523
+ 1. `node --test tests/**/*.test.js`
524
+ 2. `npm run smoke:create-quiver`
525
+ 3. `npm run smoke:guided-workflow`
526
+ 4. `npm run smoke:tiered-pack`
527
+ 5. `npm pack --dry-run`
528
+ 6. Confirmar que el PR esta aprobado antes de publicar.
441
529
 
442
- ```bash
443
- bash scripts/release-quiver.sh patch --publish
444
- ```
530
+ ## 📚 Documentación útil
445
531
 
446
- Si `npm whoami` o `npm view create-quiver version` falla, primero resolvé autenticación o conectividad con npm.
447
-
448
- ## Referencias
449
-
450
- - [Guía para IA](./README_FOR_AI.md)
532
+ - [README para agentes de IA](./README_FOR_AI.md)
451
533
  - [Changelog](./CHANGELOG.md)
452
534
  - [Roadmap](./ROADMAP.md)
453
535
  - [Backlog](./BACKLOG.md)
454
- - [Template customization](./TEMPLATE.md)
455
- - [Contributing](./CONTRIBUTING.md)
456
- - [Security](./SECURITY.md)
536
+ - [Guía de templates](./TEMPLATE.md)
537
+ - [Contribución](./CONTRIBUTING.md)
538
+ - [Seguridad](./SECURITY.md)
539
+
540
+ ## Información confirmada y pendiente
541
+
542
+ - `package.json` está en `0.10.0` y `CHANGELOG.md` reconoce `0.10.0`.
543
+ - `package.json` no declara `engines`; la versión mínima real de Node queda pendiente. La CI usa Node 22.
544
+ - Si aparece alguna referencia vieja a `0.9.0`, hay que actualizarla al contrato actual antes de seguir.
545
+ - Los scripts legacy de `package.json` que apuntan a `tools/scripts/*` deben confirmarse para este repo fuente o separarse de los scripts pensados para proyectos generados con `--legacy-scripts` o `--full`.
457
546
 
458
547
  ## Licencia
459
548