create-quiver 0.15.0 → 0.15.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.github/workflows/ci.yml +3 -0
- package/CHANGELOG.md +6 -0
- package/README.md +33 -0
- package/README_FOR_AI.md +13 -6
- package/ROADMAP.md +5 -0
- package/docs/AI_CONTEXT.md.template +4 -0
- package/docs/AI_ONBOARDING_PROMPT.md.template +8 -0
- package/docs/CLI_UX_GUIDE.md +31 -2
- package/docs/COMMANDS.md.template +16 -5
- package/docs/TROUBLESHOOTING.md +70 -0
- package/docs/TROUBLESHOOTING.md.template +20 -0
- package/docs/WORKFLOW.md.template +2 -2
- package/docs/getting-started/installation.md +86 -0
- package/docs/reference/commands.md +39 -5
- package/package.json +1 -1
- package/specs/quiver-v31-ai-model-catalog-agent-selection/EVIDENCE_REPORT.md +185 -0
- package/specs/quiver-v31-ai-model-catalog-agent-selection/EXECUTION_PLAN.md +85 -0
- package/specs/quiver-v31-ai-model-catalog-agent-selection/SPEC.md +337 -0
- package/specs/quiver-v31-ai-model-catalog-agent-selection/STATUS.md +30 -0
- package/specs/quiver-v31-ai-model-catalog-agent-selection/pr.md +98 -0
- package/specs/quiver-v31-ai-model-catalog-agent-selection/slices/slice-00-spec-foundation/CLOSURE_BRIEF.md +30 -0
- package/specs/quiver-v31-ai-model-catalog-agent-selection/slices/slice-00-spec-foundation/EXECUTION_BRIEF.md +51 -0
- package/specs/quiver-v31-ai-model-catalog-agent-selection/slices/slice-00-spec-foundation/slice.json +62 -0
- package/specs/quiver-v31-ai-model-catalog-agent-selection/slices/slice-01-model-catalog-alias-normalization/CLOSURE_BRIEF.md +32 -0
- package/specs/quiver-v31-ai-model-catalog-agent-selection/slices/slice-01-model-catalog-alias-normalization/EXECUTION_BRIEF.md +53 -0
- package/specs/quiver-v31-ai-model-catalog-agent-selection/slices/slice-01-model-catalog-alias-normalization/slice.json +72 -0
- package/specs/quiver-v31-ai-model-catalog-agent-selection/slices/slice-02-interactive-agent-set-selectors/CLOSURE_BRIEF.md +36 -0
- package/specs/quiver-v31-ai-model-catalog-agent-selection/slices/slice-02-interactive-agent-set-selectors/EXECUTION_BRIEF.md +56 -0
- package/specs/quiver-v31-ai-model-catalog-agent-selection/slices/slice-02-interactive-agent-set-selectors/slice.json +78 -0
- package/specs/quiver-v31-ai-model-catalog-agent-selection/slices/slice-03-agent-doctor-repair/CLOSURE_BRIEF.md +36 -0
- package/specs/quiver-v31-ai-model-catalog-agent-selection/slices/slice-03-agent-doctor-repair/EXECUTION_BRIEF.md +57 -0
- package/specs/quiver-v31-ai-model-catalog-agent-selection/slices/slice-03-agent-doctor-repair/slice.json +77 -0
- package/specs/quiver-v31-ai-model-catalog-agent-selection/slices/slice-04-shared-preflight-provider-errors/CLOSURE_BRIEF.md +35 -0
- package/specs/quiver-v31-ai-model-catalog-agent-selection/slices/slice-04-shared-preflight-provider-errors/EXECUTION_BRIEF.md +55 -0
- package/specs/quiver-v31-ai-model-catalog-agent-selection/slices/slice-04-shared-preflight-provider-errors/slice.json +84 -0
- package/specs/quiver-v31-ai-model-catalog-agent-selection/slices/slice-05-ai-models-list/CLOSURE_BRIEF.md +32 -0
- package/specs/quiver-v31-ai-model-catalog-agent-selection/slices/slice-05-ai-models-list/EXECUTION_BRIEF.md +52 -0
- package/specs/quiver-v31-ai-model-catalog-agent-selection/slices/slice-05-ai-models-list/slice.json +72 -0
- package/specs/quiver-v31-ai-model-catalog-agent-selection/slices/slice-06-docs-templates-alignment/CLOSURE_BRIEF.md +33 -0
- package/specs/quiver-v31-ai-model-catalog-agent-selection/slices/slice-06-docs-templates-alignment/EXECUTION_BRIEF.md +58 -0
- package/specs/quiver-v31-ai-model-catalog-agent-selection/slices/slice-06-docs-templates-alignment/slice.json +84 -0
- package/specs/quiver-v31-ai-model-catalog-agent-selection/slices/slice-07-tests-smokes-release-readiness/CLOSURE_BRIEF.md +32 -0
- package/specs/quiver-v31-ai-model-catalog-agent-selection/slices/slice-07-tests-smokes-release-readiness/EXECUTION_BRIEF.md +59 -0
- package/specs/quiver-v31-ai-model-catalog-agent-selection/slices/slice-07-tests-smokes-release-readiness/slice.json +94 -0
- package/specs/quiver-v32-npx-installation-guidance/EVIDENCE_REPORT.md +26 -0
- package/specs/quiver-v32-npx-installation-guidance/SPEC.md +55 -0
- package/specs/quiver-v32-npx-installation-guidance/STATUS.md +23 -0
- package/specs/quiver-v32-npx-installation-guidance/pr.md +72 -0
- package/specs/quiver-v32-npx-installation-guidance/slices/slice-00-installation-docs/CLOSURE_BRIEF.md +31 -0
- package/specs/quiver-v32-npx-installation-guidance/slices/slice-00-installation-docs/EXECUTION_BRIEF.md +56 -0
- package/specs/quiver-v32-npx-installation-guidance/slices/slice-00-installation-docs/slice.json +75 -0
- package/specs/quiver-v33-approval-ux-and-planner-progress/EVIDENCE_REPORT.md +93 -0
- package/specs/quiver-v33-approval-ux-and-planner-progress/EXECUTION_PLAN.md +83 -0
- package/specs/quiver-v33-approval-ux-and-planner-progress/SPEC.md +158 -0
- package/specs/quiver-v33-approval-ux-and-planner-progress/STATUS.md +31 -0
- package/specs/quiver-v33-approval-ux-and-planner-progress/pr.md +109 -0
- package/specs/quiver-v33-approval-ux-and-planner-progress/slices/slice-00-approval-ux-foundation/CLOSURE_BRIEF.md +30 -0
- package/specs/quiver-v33-approval-ux-and-planner-progress/slices/slice-00-approval-ux-foundation/EXECUTION_BRIEF.md +56 -0
- package/specs/quiver-v33-approval-ux-and-planner-progress/slices/slice-00-approval-ux-foundation/slice.json +65 -0
- package/specs/quiver-v33-approval-ux-and-planner-progress/slices/slice-01-approval-candidates-model/CLOSURE_BRIEF.md +19 -0
- package/specs/quiver-v33-approval-ux-and-planner-progress/slices/slice-01-approval-candidates-model/EXECUTION_BRIEF.md +51 -0
- package/specs/quiver-v33-approval-ux-and-planner-progress/slices/slice-01-approval-candidates-model/slice.json +74 -0
- package/specs/quiver-v33-approval-ux-and-planner-progress/slices/slice-02-approve-interactive-selection/CLOSURE_BRIEF.md +20 -0
- package/specs/quiver-v33-approval-ux-and-planner-progress/slices/slice-02-approve-interactive-selection/EXECUTION_BRIEF.md +53 -0
- package/specs/quiver-v33-approval-ux-and-planner-progress/slices/slice-02-approve-interactive-selection/slice.json +79 -0
- package/specs/quiver-v33-approval-ux-and-planner-progress/slices/slice-03-technical-plan-review-decision-data/CLOSURE_BRIEF.md +19 -0
- package/specs/quiver-v33-approval-ux-and-planner-progress/slices/slice-03-technical-plan-review-decision-data/EXECUTION_BRIEF.md +50 -0
- package/specs/quiver-v33-approval-ux-and-planner-progress/slices/slice-03-technical-plan-review-decision-data/slice.json +75 -0
- package/specs/quiver-v33-approval-ux-and-planner-progress/slices/slice-04-revise-input-guardrails/CLOSURE_BRIEF.md +19 -0
- package/specs/quiver-v33-approval-ux-and-planner-progress/slices/slice-04-revise-input-guardrails/EXECUTION_BRIEF.md +51 -0
- package/specs/quiver-v33-approval-ux-and-planner-progress/slices/slice-04-revise-input-guardrails/slice.json +73 -0
- package/specs/quiver-v33-approval-ux-and-planner-progress/slices/slice-05-provider-progress-alignment/CLOSURE_BRIEF.md +20 -0
- package/specs/quiver-v33-approval-ux-and-planner-progress/slices/slice-05-provider-progress-alignment/EXECUTION_BRIEF.md +51 -0
- package/specs/quiver-v33-approval-ux-and-planner-progress/slices/slice-05-provider-progress-alignment/slice.json +91 -0
- package/specs/quiver-v33-approval-ux-and-planner-progress/slices/slice-06-workflow-surface-integration/CLOSURE_BRIEF.md +20 -0
- package/specs/quiver-v33-approval-ux-and-planner-progress/slices/slice-06-workflow-surface-integration/EXECUTION_BRIEF.md +53 -0
- package/specs/quiver-v33-approval-ux-and-planner-progress/slices/slice-06-workflow-surface-integration/slice.json +87 -0
- package/specs/quiver-v33-approval-ux-and-planner-progress/slices/slice-07-docs-tests-release-readiness/CLOSURE_BRIEF.md +21 -0
- package/specs/quiver-v33-approval-ux-and-planner-progress/slices/slice-07-docs-tests-release-readiness/EXECUTION_BRIEF.md +55 -0
- package/specs/quiver-v33-approval-ux-and-planner-progress/slices/slice-07-docs-tests-release-readiness/slice.json +97 -0
- package/src/create-quiver/commands/ai.js +561 -46
- package/src/create-quiver/commands/flow.js +76 -14
- package/src/create-quiver/commands/spec.js +8 -1
- package/src/create-quiver/index.js +36 -12
- package/src/create-quiver/lib/agent-profiles.js +332 -4
- package/src/create-quiver/lib/ai/approval-candidates.js +86 -0
- package/src/create-quiver/lib/ai/execution-plan.js +7 -2
- package/src/create-quiver/lib/ai/executor.js +9 -2
- package/src/create-quiver/lib/ai/model-catalog.js +333 -0
- package/src/create-quiver/lib/ai/plan-review.js +77 -1
- package/src/create-quiver/lib/ai/providers.js +143 -4
- package/src/create-quiver/lib/ai/run-state.js +21 -4
- package/src/create-quiver/lib/approvals.js +103 -0
- package/src/create-quiver/lib/cli/selectors.js +53 -0
- package/src/create-quiver/lib/git.js +13 -4
- package/src/create-quiver/lib/paths.js +45 -3
package/.github/workflows/ci.yml
CHANGED
package/CHANGELOG.md
CHANGED
|
@@ -6,6 +6,9 @@ All notable changes to this project will be documented in this file.
|
|
|
6
6
|
|
|
7
7
|
### Added
|
|
8
8
|
|
|
9
|
+
- Implemented v31 AI model catalog and guided agent setup under `specs/quiver-v31-ai-model-catalog-agent-selection/`.
|
|
10
|
+
- Local known-model catalog for Codex, Claude, and Gemini, with role metadata, alias normalization, and `ai models list`.
|
|
11
|
+
- Guided provider/model selection for `ai agent set <role>`, plus `ai agent doctor` and `ai agent repair --dry-run` for legacy or invalid profiles.
|
|
9
12
|
- Implemented v30 interactive CLI UX and agent selection under `specs/quiver-v30-interactive-cli-ux-agent-selection/`.
|
|
10
13
|
- Multiple named agent profiles for Planner, Executor, Reviewer, and Doctor, including display names, defaults, selectors, and model labels.
|
|
11
14
|
- Visible progress output for planner, reviewer, executor, execution-plan, and PR flows in human TTY mode.
|
|
@@ -14,6 +17,9 @@ All notable changes to this project will be documented in this file.
|
|
|
14
17
|
|
|
15
18
|
### Changed
|
|
16
19
|
|
|
20
|
+
- Agent profiles now distinguish the technical `model` id passed to provider CLIs from the human `displayName` shown in Quiver output.
|
|
21
|
+
- Live AI commands now normalize safe CLI model aliases, block persisted display aliases before provider execution, and surface invalid-model provider failures more clearly.
|
|
22
|
+
- Public docs, generated templates, CLI help, and smoke checks now describe model catalog entries as known by Quiver, not guaranteed account availability.
|
|
17
23
|
- Provider model selection now affects real provider invocations when supported, and blocks safely when a selected model cannot be applied.
|
|
18
24
|
- CLI output now follows the shared Quiver palette and hierarchy while keeping `--json`, CI, no-TTY, and `--no-color` output clean.
|
|
19
25
|
- Command docs now cover human-vs-machine output, selectors, Doctor output, and cross-platform usage.
|
package/README.md
CHANGED
|
@@ -16,6 +16,7 @@
|
|
|
16
16
|
|
|
17
17
|
<p align="center">
|
|
18
18
|
<a href="#primeros-pasos">Primeros pasos</a> ·
|
|
19
|
+
<a href="./docs/getting-started/installation.md">Instalación</a> ·
|
|
19
20
|
<a href="./docs/workflows/existing-project.md">Proyecto existente</a> ·
|
|
20
21
|
<a href="./docs/workflows/full-ai-spec-to-pr.md">Flujo completo</a> ·
|
|
21
22
|
<a href="./docs/reference/commands.md">Comandos</a> ·
|
|
@@ -124,6 +125,25 @@ La inicialización crea un contrato visible para humanos y agentes, más estado
|
|
|
124
125
|
|
|
125
126
|
Las specs se crean después, cuando los criterios de aceptación y el plan técnico ya fueron aprobados.
|
|
126
127
|
|
|
128
|
+
## Uso con npx vs instalación local
|
|
129
|
+
|
|
130
|
+
El uso recomendado es ejecutar Quiver con `npx`:
|
|
131
|
+
|
|
132
|
+
```bash
|
|
133
|
+
npx --yes create-quiver@latest --help
|
|
134
|
+
```
|
|
135
|
+
|
|
136
|
+
Cuando usás `npx`, npm descarga y ejecuta el CLI desde su caché. Por eso Quiver puede funcionar aunque no aparezca dentro de `node_modules` del proyecto. Es esperado: `create-quiver` actúa como una herramienta de bootstrap y workflow, no como una dependencia runtime de tu app.
|
|
137
|
+
|
|
138
|
+
Si tu equipo quiere fijar una versión dentro del proyecto, podés instalarlo como dependencia de desarrollo:
|
|
139
|
+
|
|
140
|
+
```bash
|
|
141
|
+
npm install --save-dev create-quiver
|
|
142
|
+
npx create-quiver --help
|
|
143
|
+
```
|
|
144
|
+
|
|
145
|
+
La guía completa está en [Instalación y uso con npx](./docs/getting-started/installation.md).
|
|
146
|
+
|
|
127
147
|
## Elegí tu sistema operativo
|
|
128
148
|
|
|
129
149
|
Empezá por acá si estás configurando Quiver por primera vez en una máquina:
|
|
@@ -157,9 +177,15 @@ Usá la guía que corresponda al estado de tu proyecto:
|
|
|
157
177
|
| `npx --yes create-quiver@latest flow` | Indica el próximo paso seguro. |
|
|
158
178
|
| `npx --yes create-quiver@latest ai prepare-context --dry-run` | Previsualiza contexto de onboarding para IA sin tocar código de producto. |
|
|
159
179
|
| `npx --yes create-quiver@latest ai prepare-context --with-planner --dry-run` | Previsualiza una propuesta de contexto generada por el planner. |
|
|
180
|
+
| `npx --yes create-quiver@latest ai models list` | Lista proveedores y modelos conocidos por Quiver para configurar agentes. |
|
|
181
|
+
| `npx --yes create-quiver@latest ai agent set planner --provider codex --model gpt-5.5 --dry-run` | Previsualiza un perfil de planner sin guardar credenciales ni escribir archivos. |
|
|
182
|
+
| `npx --yes create-quiver@latest ai agent doctor` | Diagnostica perfiles de agentes existentes. |
|
|
183
|
+
| `npx --yes create-quiver@latest ai agent repair --dry-run` | Previsualiza reparaciones seguras para perfiles heredados o mal configurados. |
|
|
160
184
|
| `npx --yes create-quiver@latest ai plan --phase acceptance` | Genera un borrador de criterios de aceptación. |
|
|
185
|
+
| `npx --yes create-quiver@latest ai approve --phase acceptance` | En TTY lista drafts y recomienda la versión current/latest aprobable. |
|
|
161
186
|
| `npx --yes create-quiver@latest ai plan --phase technical-plan` | Genera un borrador de plan técnico. |
|
|
162
187
|
| `npx --yes create-quiver@latest ai review-plan` | Revisa el plan técnico antes de aprobarlo. |
|
|
188
|
+
| `npx --yes create-quiver@latest ai approve --phase technical-plan` | En TTY muestra drafts con datos de review; en CI usá `--version <n>`. |
|
|
163
189
|
| `npx --yes create-quiver@latest spec create` | Crea spec, slices, briefs, plan de ejecución y cuerpo del PR. |
|
|
164
190
|
| `npx --yes create-quiver@latest spec create --interactive` | Guía la selección de metodología, input aprobado y revisión antes de escribir la spec. |
|
|
165
191
|
| `npx --yes create-quiver@latest spec start specs/<spec>` | Crea o reutiliza el worktree de una spec. |
|
|
@@ -218,6 +244,13 @@ Quiver puede trabajar con CLIs locales de proveedores como:
|
|
|
218
244
|
|
|
219
245
|
Las credenciales las manejan esos CLIs. Quiver no guarda API keys en los perfiles de agentes.
|
|
220
246
|
|
|
247
|
+
Los perfiles de agentes separan dos datos:
|
|
248
|
+
|
|
249
|
+
- `model`: identificador técnico que Quiver pasa al CLI del proveedor, por ejemplo `gpt-5.5`.
|
|
250
|
+
- `displayName`: nombre humano que Quiver muestra en selectores y reportes, por ejemplo `GPT 5.5`.
|
|
251
|
+
|
|
252
|
+
`ai models list` muestra modelos conocidos por Quiver. Eso no garantiza que el proveedor o tu cuenta tengan acceso a todos esos modelos. Para revisar configuraciones existentes, usá `ai agent doctor`; para perfiles viejos con alias visuales guardados como modelo técnico, empezá con `ai agent repair --dry-run`.
|
|
253
|
+
|
|
221
254
|
## Requisitos
|
|
222
255
|
|
|
223
256
|
- Node.js y npm.
|
package/README_FOR_AI.md
CHANGED
|
@@ -7,6 +7,7 @@ The first AI job in a generated project is context preparation, not product impl
|
|
|
7
7
|
Important: slice numbering resets inside each spec. `slice-00` is the mandatory documentary foundation for a spec; `slice-01` is the first implementation slice, not a global repo counter.
|
|
8
8
|
The canonical installer entrypoint is `npx create-quiver` run from the target project root.
|
|
9
9
|
Do not recommend global installation; use `npx` or a project-local devDependency when the team needs a pinned version.
|
|
10
|
+
If users ask why Quiver is not in `node_modules`, explain that `npx --yes create-quiver@latest` runs the CLI from npm's execution cache; it appears in `node_modules` only after `npm install --save-dev create-quiver`.
|
|
10
11
|
The package also exposes `quiver` as a binary alias to the same CLI. Treat it as a local installed shortcut, not as a replacement for the bootstrap command `npx create-quiver`.
|
|
11
12
|
The root `README.md` is the public landing/onboarding page: keep it concise, Spanish-first, AI-first, and focused on what Quiver is, what problem it solves, the WDD + SDD flow, core commands, and links to deeper guides. Long step-by-step instructions live in `docs/getting-started/`, `docs/workflows/`, and `docs/reference/commands.md`; do not duplicate every procedural detail in the root README.
|
|
12
13
|
The post-init contract is validated with `npx create-quiver doctor` from the project root. Use `npx create-quiver doctor --fix --dry-run` to preview safe non-destructive repairs, then `npx create-quiver doctor --fix` only after reviewing the plan.
|
|
@@ -24,15 +25,21 @@ The v27 spec is implemented under `specs/quiver-v27-reliability-ai-workflow-hard
|
|
|
24
25
|
The v28 spec is implemented under `specs/quiver-v28-pixel-quiver-feedback-reconciliation/` and shipped in `create-quiver@0.14.0`; it captures the Pixel Quiver follow-up reconciliation with active-slice reconciliation, stale `ai inspect` recovery, structured review closure, stricter technical-plan approval, spec/worktree validation hardening, agent-safe commands, GitHub auth/alias guidance, and package-readiness evidence.
|
|
25
26
|
The v29 spec is implemented under `specs/quiver-v29-planner-prepare-context-cli-ux/` and shipped in `create-quiver@0.14.1`; it adds shared CLI UX primitives, Quiver palette usage, guarded UX flags, planner-assisted `ai prepare-context`, and review/interactive adoption for selected planner/spec/PR commands.
|
|
26
27
|
The v30 spec is implemented under `specs/quiver-v30-interactive-cli-ux-agent-selection/` and is release-ready pending package publication; it adds production-grade interactive CLI UX with visible IA progress, Quiver-branded output, configured Planner/Executor/Reviewer/Doctor selectors, real provider model-selection contracts, Doctor human/JSON parity, guided init/spec-create selectors, and cross-platform release readiness.
|
|
28
|
+
The v31 spec is implemented and release-ready pending PR/package publication under `specs/quiver-v31-ai-model-catalog-agent-selection/`; slice-00 through slice-07 are completed. Implemented scope includes the local AI model catalog, alias normalization, guided provider/model selection for `ai agent set <role>`, `ai agent doctor`, `ai agent repair --dry-run`, shared live-command model preflight, clearer provider errors for invalid model ids, `ai models list`, aligned README/reference/generated-template guidance, and final smoke/package readiness.
|
|
29
|
+
The v32 documentation spec is implemented under `specs/quiver-v32-npx-installation-guidance/`; it clarifies why `npx --yes create-quiver@latest` does not install Quiver into project `node_modules`, when to install `create-quiver` as a `devDependency`, and where users should look when troubleshooting that behavior.
|
|
27
30
|
Guided AI workflow behavior is available: prepare, approvals, production-readiness plan review, spec worktrees, executor commits, execution waves, PR creation, spec close, and package safety.
|
|
28
31
|
Generated projects also get `quiver:*` npm scripts that call the Node CLI directly; prefer those for repeatable project workflows, including `quiver:flow` for the read-only guided entrypoint, `quiver:plan` for sequential planning, `quiver:graph` for parallel-level inspection, `quiver:next` for the next ready slice, `quiver:evidence` for local command evidence, `quiver:spec:create` for real spec generation, `quiver:spec:validate` for full spec validation, and the AI family `quiver:ai:agent`, `quiver:ai:inspect`, `quiver:ai:export`, `quiver:ai:specs`, `quiver:ai:slices`, `quiver:ai:trace`, `quiver:ai:onboard`, `quiver:ai:prepare-context`, `quiver:ai:plan`, `quiver:ai:review-plan`, `quiver:ai:approve`, `quiver:ai:prompt-slice`, `quiver:ai:execute-slice`, `quiver:ai:execute-plan`, `quiver:ai:pr`, and `quiver:ai:doctor`. Use `quiver:graph --format mermaid` for PR-ready Markdown or `quiver:graph --format dot` for Graphviz source.
|
|
29
32
|
`quiver:ai:execute-plan` supports `--mode manual` for paste-ready executor prompts and `--mode delegated` for temporary worktrees on parallel-ready waves; unsafe waves fall back to sequential execution.
|
|
30
|
-
Agent profiles live in `.quiver/agents/profiles.json`; they store role, provider, model
|
|
33
|
+
Agent profiles live in `.quiver/agents/profiles.json`; they store role, provider, technical `model`, human `displayName`, context label, profile id, and default profile only. Do not store API keys, tokens, or credentials there.
|
|
34
|
+
`model` is the technical id passed to the provider CLI, for example `gpt-5.5`. `displayName` is the human label shown in Quiver output, for example `GPT 5.5`.
|
|
35
|
+
`npx create-quiver ai models list` shows models known by Quiver, not models guaranteed available in the user's provider account. Use `npx create-quiver ai agent doctor` to diagnose profile issues and `npx create-quiver ai agent repair --dry-run` to preview safe legacy-profile alias normalization before writing anything.
|
|
31
36
|
Provider/model selection must be honest: dry-runs can preview a selected model without provider auth, but live IA execution must pass the selected model through the provider adapter or fail with actionable guidance instead of silently ignoring it.
|
|
32
37
|
Planner-oriented live IA commands must show visible TTY progress with the selected profile/model name, completed preparation checks, and a provider-running spinner. `--dry-run`, `--print-prompt`, CI, JSON, and non-TTY output must remain clean and automation-safe.
|
|
38
|
+
This progress standard applies to `ai plan`, `ai revise`, `ai review-plan`, and `ai repair-plan`; do not add fake loaders to dry-runs or prompt-only output.
|
|
33
39
|
Executor and PR live commands follow the same standard: show truthful TTY progress for slice execution, validation, commits, GitHub preflight, and PR creation while preserving scope gates, provider errors, `gh` errors, and clean machine output.
|
|
34
|
-
Planner drafts are versioned under `.quiver/approvals/<phase>/drafts/`; review the technical-plan draft with `npx create-quiver ai review-plan --dry-run` before approving it
|
|
40
|
+
Planner drafts are versioned under `.quiver/approvals/<phase>/drafts/`; review the technical-plan draft with `npx create-quiver ai review-plan --dry-run` before approving it. In TTY, `npx create-quiver ai approve --phase <phase>` can list saved drafts and recommend the current/latest eligible version; in CI/no-TTY, pass `--version <n>` explicitly.
|
|
35
41
|
`ai review-plan` stores structured closure metadata under `.quiver/approvals/plan-review/meta.json`: `approval_recommendation` is `approve`, `approve-with-risk`, or `revise`; required fixes block technical-plan approval, while optional hardening does not.
|
|
42
|
+
Use `npx create-quiver ai approvals`, `npx create-quiver flow`, `npx create-quiver ai status`, and `npx create-quiver ai resume` to read the same approval-candidate guidance before choosing the next command. `spec create --interactive` must show the reviewed approved technical-plan input, approved version, and review summary before writing.
|
|
36
43
|
AI lifecycle runs are persisted under `.quiver/runs/<run-id>/`; use `npx create-quiver ai run create --input <requirements.md>` to start one explicitly, `npx create-quiver ai status` to inspect it, `npx create-quiver ai resume` to continue from the last valid phase without relying on chat memory, and `npx create-quiver ai export --format json|markdown` when another agent, PR, or dashboard needs the current specs/slices/runs state.
|
|
37
44
|
Use `npx create-quiver ai active-slice reconcile --dry-run` when `docs/ai/ACTIVE_SLICE.md`, `ACTIVE_SLICES.md`, worktrees, or `ai inspect` appear out of sync. The command is dry-run-first and reports preserve, close, replace, or blocked decisions without writing files.
|
|
38
45
|
When generating commands for another AI agent, prefer non-interactive package-pinned examples such as `npx --yes create-quiver@<version> ai prompt-slice --slice <slice.json> --dry-run`.
|
|
@@ -43,7 +50,7 @@ The project map is the single source of truth for stack, package manager, comman
|
|
|
43
50
|
The raw analyzer output is internal machinery at `.quiver/scans/PROJECT_SCAN.json`; read it only when the visible map is not enough.
|
|
44
51
|
`npx create-quiver analyze --dry-run` must remain read-only and only preview the scan/project-map/context writes. `npx create-quiver flow` reports the context source/freshness and the package-manager-aware generated script command so agents can see whether the project map is current, stale, partial, legacy, invalid, or missing.
|
|
45
52
|
`npx create-quiver ai prepare-context --dry-run` remains the deterministic default and must not execute provider CLIs. `npx create-quiver ai prepare-context --with-planner --dry-run` previews planner-assisted context preparation. `--with-planner --print-prompt` prints the exact prompt without provider auth; live planner writes should use `--review` and/or `--interactive` when the human wants review before docs-only writes.
|
|
46
|
-
`npx create-quiver ai agent set <role> --provider <provider> --model
|
|
53
|
+
`npx create-quiver ai agent set <role> --provider <provider> --model <model-id> --dry-run` must preview `.quiver/agents/profiles.json` changes without writing. In TTY mode, `npx create-quiver ai agent set <role>` can guide provider/model selection; in CI/no-TTY, require explicit `--provider` and `--model`. Use dry-run before saving planner/executor/reviewer/doctor profiles.
|
|
47
54
|
GitHub PR diagnostics must stay cross-platform: auth failures should point to likely account, scope, and SSH alias issues; path examples with spaces must be copy-safe for macOS/Linux, Windows PowerShell, Git Bash, and WSL.
|
|
48
55
|
CLI UX standard lives in `docs/CLI_UX_GUIDE.md`. Supported Quiver colors are `#86C8F2`, `#6BADEB`, `#7F9EE8`, `#9B82E6`, and `#D56AB0`; output must respect `--no-color`, `NO_COLOR`, CI, and no-TTY environments.
|
|
49
56
|
UX flags are intentionally limited: `ai prepare-context`, `ai plan`, and `spec create` support `--with-planner`, `--interactive`, and `--review`; `ai pr` supports `--interactive` and `--review` but rejects `--with-planner`; read-only commands such as `flow`, `next`, `graph`, `ai inspect`, `ai export`, `ai specs list`, `ai slices list`, and `ai trace report` reject these UX flags. `--json` must reject `--interactive` and `--review` before writing human output.
|
|
@@ -161,12 +168,12 @@ After initialization, the user should:
|
|
|
161
168
|
8. Ask the AI agent to execute `docs/AI_ONBOARDING_PROMPT.md`
|
|
162
169
|
9. Review context docs before creating the first implementation slice
|
|
163
170
|
10. Open and merge the documentation PR that establishes the workflow files
|
|
164
|
-
11.
|
|
171
|
+
11. Inspect reusable provider choices with `npx create-quiver ai models list`, diagnose existing profiles with `npx create-quiver ai agent doctor`, preview reusable provider choices with `npx create-quiver ai agent set <role> --provider <provider> --model <model-id> --dry-run`, then save planner/executor/doctor profiles without `--dry-run` after review
|
|
165
172
|
12. Use `npx create-quiver ai plan --phase acceptance --input requirements.md --dry-run`; use `--print-prompt` when you need the exact prompt without provider auth and `--review --interactive` when the human should edit or confirm before saving
|
|
166
|
-
13. If the human asks for changes, create a new draft with `npx create-quiver ai revise --phase acceptance --input feedback.md --dry-run`; after human approval,
|
|
173
|
+
13. If the human asks for changes, create a new draft with `npx create-quiver ai revise --phase acceptance --input feedback.md --dry-run`; after human approval, run `npx create-quiver ai approve --phase acceptance` in TTY or `--version <n>` in CI/no-TTY
|
|
167
174
|
14. Use `npx create-quiver ai plan --phase technical-plan --dry-run`
|
|
168
175
|
15. Review the technical plan with `npx create-quiver ai review-plan --dry-run`, inspect exact prompt with `--print-prompt` if needed, then run it without `--dry-run` when ready
|
|
169
|
-
16. After human approval, save the reviewed plan version with `npx create-quiver ai approve --phase technical-plan
|
|
176
|
+
16. After human approval, save the reviewed plan version with `npx create-quiver ai approve --phase technical-plan` in TTY or `--version <n>` in CI/no-TTY; if review recommends `revise`, run `ai revise --phase technical-plan --input feedback.md --dry-run` first
|
|
170
177
|
17. Use `npx create-quiver spec create --dry-run` to preview the real spec, slices, handoffs, execution plan, and PR body; use `--review --interactive` when the human should inspect the package before writing
|
|
171
178
|
18. Run `npx create-quiver spec start specs/<spec-slug> --dry-run` to inspect the planned worktree, then run without `--dry-run` to create or reuse it
|
|
172
179
|
19. Run `npx create-quiver plan` or `npm run quiver:plan`
|
package/ROADMAP.md
CHANGED
|
@@ -89,6 +89,10 @@
|
|
|
89
89
|
|
|
90
90
|
- **v30** — Interactive CLI UX and agent selection: visible progress for long-running IA commands, selected Planner/Executor/Reviewer/Doctor display names, profile/spec/slice/methodology selectors, provider model-selection correctness, Doctor human/JSON parity, cross-platform automation safety, and release-readiness evidence live in `specs/quiver-v30-interactive-cli-ux-agent-selection/`.
|
|
91
91
|
|
|
92
|
+
## v0.16 — AI Model Catalog and Guided Agent Setup (release-ready, pending package publication)
|
|
93
|
+
|
|
94
|
+
- **v31** — AI model catalog and guided agent setup: local known-model catalog for Codex, Claude, and Gemini, technical model id vs display name separation, provider/model selectors, alias normalization, agent profile doctor/repair dry-run, shared live-command model preflight, better provider errors, model listing, docs/templates, tests, smokes, and package readiness live in `specs/quiver-v31-ai-model-catalog-agent-selection/`.
|
|
95
|
+
|
|
92
96
|
## Post-Checkpoint Plan (do not execute before validating v14)
|
|
93
97
|
|
|
94
98
|
> This section now records the follow-up line from the v14-era plan.
|
|
@@ -108,6 +112,7 @@
|
|
|
108
112
|
- **v28 — Pixel Quiver Feedback Reconciliation** (shipped in `0.14.0`): active-slice reconciliation, stale inspect recovery, structured review closure, validation/worktree hardening, agent-safe commands, GitHub auth guidance, and release-readiness evidence live in `specs/quiver-v28-pixel-quiver-feedback-reconciliation/`.
|
|
109
113
|
- **v29 — Planner Context and CLI UX Standard** (shipped in `0.14.1`): planner-assisted `ai prepare-context`, CLI UX primitives, guarded UX flags, human review/interactive flows, and final docs/smoke readiness live in `specs/quiver-v29-planner-prepare-context-cli-ux/`.
|
|
110
114
|
- **v30 — Interactive CLI UX and Agent Selection** (release-ready, pending package publication): visible IA progress, Quiver-branded output, profile/spec/slice selectors, provider model-selection correctness, Doctor human/JSON parity, and cross-platform release readiness live in `specs/quiver-v30-interactive-cli-ux-agent-selection/`.
|
|
115
|
+
- **v31 — AI Model Catalog and Guided Agent Setup** (release-ready, pending package publication): known-model catalog, provider/model selectors, alias normalization, agent profile doctor/repair, shared model preflight, better provider errors, docs/templates, smokes, and release readiness live in `specs/quiver-v31-ai-model-catalog-agent-selection/`.
|
|
111
116
|
|
|
112
117
|
The shipped v20/v21/v22/v23 work is no longer pending. The older context-diagnostics and slice-archaeology ideas remain deferred until real demand justifies them.
|
|
113
118
|
|
|
@@ -27,6 +27,9 @@ This file is the main context pack after `AGENTS.md` and `docs/PROJECT_MAP.md`.
|
|
|
27
27
|
- `docs/STATUS.md` tracks progress, blockers, and the current slice.
|
|
28
28
|
- `npx create-quiver ai prepare-context --dry-run` previews docs-only context drafts before writing.
|
|
29
29
|
- `npx create-quiver ai prepare-context --with-planner --dry-run` previews an optional planner-generated context proposal. Use `--print-prompt` to run the prompt elsewhere, `--review` to inspect the proposal, and `--interactive` to confirm before writing.
|
|
30
|
+
- `npx create-quiver ai models list` shows provider/model ids known by Quiver. It is a local catalog, not a guarantee of account-level access.
|
|
31
|
+
- Agent profiles live in `.quiver/agents/profiles.json` without credentials. `model` is the technical id passed to the provider CLI; `displayName` is the human label shown in selectors and reports.
|
|
32
|
+
- `npx create-quiver ai agent doctor` diagnoses profile issues. `npx create-quiver ai agent repair --dry-run` previews safe legacy-profile repairs before any write mode exists.
|
|
30
33
|
|
|
31
34
|
## Critical Rules
|
|
32
35
|
|
|
@@ -39,6 +42,7 @@ This file is the main context pack after `AGENTS.md` and `docs/PROJECT_MAP.md`.
|
|
|
39
42
|
- If a command or path is ambiguous, prefer the local project root and the generated docs.
|
|
40
43
|
- Context preparation must stay in docs/context files and should use TODO, Assumption, or Pending confirmation markers for uncertain statements.
|
|
41
44
|
- Planner-assisted context proposals must remain docs-only. Do not accept product-code, dependency, build, runtime, lockfile, generated-output, absolute-path, or traversal writes.
|
|
45
|
+
- Do not treat model names from chat or screenshots as technical ids until `ai models list` or the provider docs confirms the spelling. Use `ai agent doctor` when a profile looks suspicious.
|
|
42
46
|
|
|
43
47
|
## What To Update After A Slice
|
|
44
48
|
|
|
@@ -17,6 +17,8 @@ Actúa como asistente de onboarding de IA para este proyecto. Tu objetivo es com
|
|
|
17
17
|
- Lee `docs/AI_CONTEXT.md`, `docs/AI_ONBOARDING_PROMPT.md`, `docs/WORKFLOW.md`, `docs/STATUS.md` y `docs/DECISIONS.md` solo cuando existan y sean relevantes para la tarea.
|
|
18
18
|
- Si usás `npx create-quiver ai prepare-context`, empezá con `--dry-run`, revisá los borradores propuestos antes de escribir y mantené las escrituras limitadas a docs/context.
|
|
19
19
|
- Usá `--with-planner` solo cuando el humano quiera una propuesta generada por un planner IA; combiná `--review` y `--interactive` antes de aplicar escrituras.
|
|
20
|
+
- Si la tarea usa agentes IA configurados por Quiver, revisá `npx create-quiver ai models list`, `npx create-quiver ai agent list` y `npx create-quiver ai agent doctor` antes de ejecutar proveedores.
|
|
21
|
+
- No asumas que un modelo listado por `ai models list` está disponible en la cuenta del proveedor. El catálogo local solo indica modelos conocidos por Quiver.
|
|
20
22
|
- Lee specs, slices o handoffs solo si la tarea actual lo requiere.
|
|
21
23
|
- No leas todo `docs/` por defecto.
|
|
22
24
|
- Si un documento referenciado no existe, repórtalo como deuda documental.
|
|
@@ -77,6 +79,11 @@ npm run quiver:ai:prepare-context -- --dry-run
|
|
|
77
79
|
npm run quiver:ai:prepare-context -- --with-planner --dry-run
|
|
78
80
|
npm run quiver:ai:prepare-context -- --with-planner --print-prompt
|
|
79
81
|
npm run quiver:ai:prepare-context -- --with-planner --review --interactive
|
|
82
|
+
npx create-quiver ai models list
|
|
83
|
+
npx create-quiver ai models list --provider codex
|
|
84
|
+
npx create-quiver ai agent doctor
|
|
85
|
+
npx create-quiver ai agent repair --dry-run
|
|
86
|
+
npm run quiver:ai:agent -- set planner --provider codex --model gpt-5.5 --dry-run
|
|
80
87
|
npm run quiver:ai:onboard -- --dry-run
|
|
81
88
|
npm run quiver:ai:inspect
|
|
82
89
|
npm run quiver:ai:export -- --format json
|
|
@@ -113,6 +120,7 @@ npm run quiver:spec:close -- specs/{{PROJECT_SLUG}} --dry-run
|
|
|
113
120
|
7. Si no existe un handoff y el trabajo necesita uno, créalo con `npx create-quiver new-handoff <spec-slug>` y valídalo con `npx create-quiver check-handoff specs/<spec-slug>/HANDOFF.md`.
|
|
114
121
|
8. Registra los archivos inspeccionados, los archivos modificados y las suposiciones realizadas.
|
|
115
122
|
9. Cuando prepares contexto, marca las incertidumbres como `TODO`, `Assumption` o `Pending confirmation` y evita tocar código de producto.
|
|
123
|
+
10. Cuando configures perfiles de agentes, usa `model` para el identificador técnico que se pasa al proveedor y `displayName` para el nombre humano mostrado por Quiver.
|
|
116
124
|
|
|
117
125
|
## Validación
|
|
118
126
|
|
package/docs/CLI_UX_GUIDE.md
CHANGED
|
@@ -53,6 +53,11 @@ Reglas:
|
|
|
53
53
|
| `ai pr` | no | si | si | Review edita `pr.md`; interactive confirma `gh pr create`. |
|
|
54
54
|
| `ai execute-slice` | no | si | no | Interactive puede seleccionar un slice listo y un executor configurado. |
|
|
55
55
|
| `ai execute-plan` | no | si | no | Interactive queda reservado para estrategia/seleccion; JSON sigue limpio. |
|
|
56
|
+
| `ai agent set` | no | si | no | En TTY puede guiar proveedor/modelo; en CI/no-TTY requiere `--provider` y `--model`. |
|
|
57
|
+
| `ai approve` | no | no | no | Si falta `--version` y hay TTY, abre selector de drafts; en CI/no-TTY exige `--version <n>`. |
|
|
58
|
+
| `ai agent doctor` | no | no | no | Diagnostica perfiles sin escribir; `--json` usa el mismo modelo de hallazgos. |
|
|
59
|
+
| `ai agent repair` | no | no | no | Por ahora solo `--dry-run`; muestra before/after sin escribir. |
|
|
60
|
+
| `ai models list` | no | no | no | Lista el catalogo local conocido por Quiver; no valida acceso de cuenta. |
|
|
56
61
|
| `doctor` | no | no | no | Renderiza `Quiver Doctor`, `Checks` y `Suggested fixes`; `--json` usa el mismo modelo de hallazgos. |
|
|
57
62
|
| `flow`, `next`, `graph` | no | no | no | Lectura/inspeccion; no deben exponer flags decorativas. |
|
|
58
63
|
| `ai inspect`, `ai export`, `ai specs list`, `ai slices list`, `ai trace report` | no | no | no | Superficies read-only o machine-readable. |
|
|
@@ -78,10 +83,21 @@ El planner debe devolver una propuesta validable. Quiver solo acepta cambios en
|
|
|
78
83
|
|
|
79
84
|
## Seleccion de agentes, proveedores y modelos
|
|
80
85
|
|
|
81
|
-
Los perfiles de agente son configuracion de DX, no almacenamiento de credenciales. Deben guardar solo rol, proveedor,
|
|
86
|
+
Los perfiles de agente son configuracion de DX, no almacenamiento de credenciales. Deben guardar solo rol, proveedor, identificador tecnico de modelo, nombre visible, contexto, profile id y perfil por defecto.
|
|
87
|
+
|
|
88
|
+
Contrato de datos:
|
|
89
|
+
|
|
90
|
+
- `model` es el identificador tecnico que Quiver pasa al CLI del proveedor, por ejemplo `gpt-5.5`.
|
|
91
|
+
- `displayName` es el nombre humano que Quiver muestra en selectores, loaders y reportes, por ejemplo `GPT 5.5`.
|
|
92
|
+
- `ai models list` muestra modelos conocidos por Quiver. Eso no significa que el proveedor o la cuenta del usuario tengan acceso real a todos ellos.
|
|
93
|
+
- Un modelo custom esta permitido, pero debe quedar marcado como custom/no validado hasta que una ejecucion real lo pruebe.
|
|
82
94
|
|
|
83
95
|
Reglas:
|
|
84
96
|
|
|
97
|
+
- En TTY, `ai agent set <role>` puede abrir selectores de proveedor y modelo cuando faltan flags.
|
|
98
|
+
- En no-TTY/CI, `ai agent set <role>` debe exigir `--provider` y `--model`; no debe quedarse esperando input.
|
|
99
|
+
- `ai agent doctor` debe identificar perfiles heredados con alias visuales guardados en `model`.
|
|
100
|
+
- `ai agent repair --dry-run` debe mostrar cambios before/after y no escribir archivos.
|
|
85
101
|
- Si un comando usa un perfil con modelo, el dry-run debe mostrar proveedor, modelo, comando y si el adapter puede aplicar ese modelo.
|
|
86
102
|
- En ejecucion real, Quiver debe pasar el modelo al CLI del proveedor cuando el adapter lo soporta.
|
|
87
103
|
- Si un adapter no puede aplicar el modelo seleccionado, la ejecucion real debe bloquearse con un proximo paso claro.
|
|
@@ -101,11 +117,22 @@ Reglas:
|
|
|
101
117
|
`spec create --interactive` debe:
|
|
102
118
|
|
|
103
119
|
- seleccionar la metodologia real soportada: `WDD + SDD`;
|
|
104
|
-
- mostrar el input aprobado que se usara para generar la spec;
|
|
120
|
+
- mostrar el input aprobado que se usara para generar la spec, la version aprobada y el resumen de review;
|
|
105
121
|
- permitir elegir confirmacion directa o `--review`;
|
|
106
122
|
- mostrar resumen antes de escribir;
|
|
107
123
|
- bloquearse en no-TTY/CI/JSON con mensaje accionable en lugar de abrir prompts.
|
|
108
124
|
|
|
125
|
+
## Aprobaciones planner
|
|
126
|
+
|
|
127
|
+
`ai approve` conserva el modo script con `--version <n>`, pero en una terminal humana puede guiar la eleccion cuando falta `--version`:
|
|
128
|
+
|
|
129
|
+
- `ai approve --phase acceptance` lista drafts versionados y recomienda el current/latest elegible.
|
|
130
|
+
- `ai approve --phase technical-plan` agrega estado de `plan-review`, recomendacion, fixes requeridos, hardening opcional y riesgos.
|
|
131
|
+
- CI/no-TTY nunca espera input; falla temprano con el comando explicito `--version <n>`.
|
|
132
|
+
- Las versiones historicas pueden mostrarse como contexto, pero solo el draft current/latest es aprobable.
|
|
133
|
+
- Los snippets o previews de candidatos deben estar truncados y redactados.
|
|
134
|
+
- `ai approvals`, `flow`, `ai status`, `ai resume` y `spec create --interactive` deben usar el mismo modelo de candidatos para no contradecir el proximo paso.
|
|
135
|
+
|
|
109
136
|
## Loaders y prompts
|
|
110
137
|
|
|
111
138
|
Usar loaders solo cuando aportan claridad:
|
|
@@ -128,6 +155,8 @@ Usar prompts interactivos cuando hay una decision humana real:
|
|
|
128
155
|
|
|
129
156
|
No usar prompts para informacion que ya se pueda expresar con flags.
|
|
130
157
|
|
|
158
|
+
Los comandos provider-backed `ai plan`, `ai revise`, `ai review-plan` y `ai repair-plan` deben seguir el mismo patron de progreso en TTY: checks de preparacion reales y spinner solo durante ejecucion del proveedor. `--dry-run`, `--print-prompt`, CI, no-TTY y JSON no deben mostrar loaders falsos.
|
|
159
|
+
|
|
131
160
|
## Salida de Doctor
|
|
132
161
|
|
|
133
162
|
`doctor` debe mostrar una jerarquia estable para humanos:
|
|
@@ -44,8 +44,13 @@ This document is the canonical command reference for the orchestration roadmap.
|
|
|
44
44
|
| `quiver:plan -- --include-completed` | Shows completed slices for audit/demo history | macOS, Linux, Windows | v0.11 | `npm run quiver:plan -- --include-completed --spec <spec>` |
|
|
45
45
|
| `quiver:graph -- --include-completed` | Includes completed slices in the dependency graph history view | macOS, Linux, Windows | v0.11 | `npm run quiver:graph -- --include-completed --spec <spec>` |
|
|
46
46
|
| `quiver:next -- --include-completed` | Keeps actionable next-slice output and appends completed history | macOS, Linux, Windows | v0.11 | `npm run quiver:next -- --include-completed --spec <spec>` |
|
|
47
|
-
| `quiver
|
|
48
|
-
| `quiver
|
|
47
|
+
| `npx create-quiver ai models list` | Lists provider/model ids known by Quiver without claiming account availability | macOS, Linux, Windows | next | `npx create-quiver ai models list --provider codex` |
|
|
48
|
+
| `npx create-quiver ai models list --json` | Emits the local known-model catalog as clean machine-readable JSON | macOS, Linux, Windows | next | `npx create-quiver ai models list --json` |
|
|
49
|
+
| `quiver:ai:agent -- set <role>` | Guides provider/model selection in an interactive TTY without storing credentials | macOS, Linux, Windows | next | `npm run quiver:ai:agent -- set planner` |
|
|
50
|
+
| `quiver:ai:agent -- set <role> ... --dry-run` | Previews planner/executor/reviewer/doctor provider profile writes without creating `.quiver/agents/profiles.json` | macOS, Linux, Windows | v0.13 | `npm run quiver:ai:agent -- set planner --provider codex --model gpt-5.5 --dry-run` |
|
|
51
|
+
| `quiver:ai:agent` | Stores reusable planner/executor/reviewer/doctor provider profiles without secrets | macOS, Linux, Windows | v0.11 | `npm run quiver:ai:agent -- set planner --provider codex --model gpt-5.5` |
|
|
52
|
+
| `quiver:ai:agent -- doctor` | Diagnoses stored agent profiles, legacy display aliases, custom unvalidated models, duplicate labels, and provider CLI readiness | macOS, Linux, Windows | next | `npm run quiver:ai:agent -- doctor` |
|
|
53
|
+
| `quiver:ai:agent -- repair --dry-run` | Previews safe profile repairs, such as normalizing display aliases into technical model ids, without writing files | macOS, Linux, Windows | next | `npm run quiver:ai:agent -- repair --dry-run` |
|
|
49
54
|
| `quiver:ai:inspect` | Shows actionable lifecycle state through the generated npm script | macOS, Linux, Windows | v0.13 | `npm run quiver:ai:inspect` |
|
|
50
55
|
| `quiver:ai:export` | Exports lifecycle state as JSON or Markdown through the generated npm script | macOS, Linux, Windows | v0.13 | `npm run quiver:ai:export -- --format json` |
|
|
51
56
|
| `quiver:ai:specs` | Lists specs through the generated npm script | macOS, Linux, Windows | v0.13 | `npm run quiver:ai:specs` |
|
|
@@ -98,7 +103,7 @@ This document is the canonical command reference for the orchestration roadmap.
|
|
|
98
103
|
| `--spec <slug>` | `plan`, `graph`, `spec create` | Restrict output to one spec or override the generated spec slug |
|
|
99
104
|
| `--format <tree\|mermaid\|dot\|json\|markdown>` | `graph`, `ai export` | Select graph or lifecycle export output format |
|
|
100
105
|
| `--provider <codex\|claude\|gemini>` | `ai onboard`, `ai plan`, `ai revise`, `ai review-plan`, `ai execute-slice`, `ai execute-plan` | Select the local AI CLI adapter |
|
|
101
|
-
| `--model <
|
|
106
|
+
| `--model <model-id>` | `ai agent set`, provider-backed AI commands | Store or pass the technical model id. Quiver normalizes known display aliases, but the catalog is known by Quiver and does not guarantee account availability |
|
|
102
107
|
| `--label <label>` | `ai agent set` | Store a display label for the profile |
|
|
103
108
|
| `--dry-run` | init, analyze, migrate, prepare, spec, demo, AI, PR, worktree, and repair commands that support preview | Preview planned actions without writes, provider execution, PR creation, or irreversible changes |
|
|
104
109
|
| `--with-planner` | `ai prepare-context`, `ai plan`, `spec create` | Enable planner-assisted behavior only on commands that explicitly support it |
|
|
@@ -125,6 +130,7 @@ This document is the canonical command reference for the orchestration roadmap.
|
|
|
125
130
|
## Notes
|
|
126
131
|
|
|
127
132
|
- Add new rows here only when a command is officially shipped.
|
|
133
|
+
- `npx --yes create-quiver@latest` runs Quiver from npm's execution cache and does not install it into the project `node_modules`. Install `create-quiver` as a `devDependency` only when the team needs a pinned local workflow tool.
|
|
128
134
|
- The `quiver` binary is an alias to the same package CLI after local installation. Keep `npx create-quiver` as the bootstrap command.
|
|
129
135
|
- Keep the table concise and cross-platform.
|
|
130
136
|
- Shared graph library: `src/create-quiver/lib/slice-graph.js`.
|
|
@@ -140,11 +146,16 @@ This document is the canonical command reference for the orchestration roadmap.
|
|
|
140
146
|
- `init --interactive` and `spec create --interactive` are human-only wrappers. They fail in no-TTY/CI/JSON and always keep `WDD + SDD` as the only methodology option.
|
|
141
147
|
- Quiver human output uses the palette `#86C8F2`, `#6BADEB`, `#7F9EE8`, `#9B82E6`, and `#D56AB0`; respect `--no-color`, `NO_COLOR`, CI, and no-TTY environments.
|
|
142
148
|
- `quiver:flow` reports the detected package manager and the matching generated project script, for example `npm run quiver:flow`, `pnpm run quiver:flow`, `yarn run quiver:flow`, or `bun run quiver:flow`.
|
|
149
|
+
- `npx create-quiver ai models list` shows the local catalog of provider/model ids known by Quiver. It does not prove account-level access in Codex, Claude, or Gemini.
|
|
150
|
+
- Agent profiles separate `model` and `displayName`: `model` is the technical id passed to the provider CLI, while `displayName` is the human label used in selectors and reports.
|
|
143
151
|
- `quiver:ai:agent -- set ... --dry-run` previews provider/model profile changes without writing `.quiver/agents/profiles.json`.
|
|
144
|
-
- `quiver:ai:agent` stores provider/model
|
|
152
|
+
- `quiver:ai:agent` stores provider/model configuration under `.quiver/agents/profiles.json`; credentials stay in the provider CLI or OS credential store.
|
|
153
|
+
- `quiver:ai:agent -- doctor` diagnoses bad or legacy profiles. Start there when live IA commands fail before provider execution.
|
|
154
|
+
- `quiver:ai:agent -- repair --dry-run` previews safe normalizations such as `model: "GPT 5.5"` to `model: "gpt-5.5"` plus `displayName: "GPT 5.5"`; it does not write files.
|
|
145
155
|
- `quiver:ai:inspect`, `quiver:ai:specs`, `quiver:ai:slices`, and `quiver:ai:trace` are read-only inspection surfaces for humans and agents.
|
|
146
156
|
- `quiver:ai:export -- --format json` is the dashboard/agent-friendly state contract; `--format markdown` is the PR/docs-friendly version.
|
|
147
|
-
- Planner drafts are versioned under `.quiver/approvals/<phase>/drafts/`;
|
|
157
|
+
- Planner drafts are versioned under `.quiver/approvals/<phase>/drafts/`; in TTY, `quiver:ai:approve -- --phase <phase>` lists drafts and recommends the current/latest eligible version, while CI/no-TTY must pass `--version <n>`. Use `quiver:ai:review-plan -- --dry-run` before approving a technical-plan draft. Plan reviews store structured recommendations: `approve`, `approve-with-risk`, or `revise`.
|
|
158
|
+
- `quiver:ai:approvals`, `quiver:flow`, `quiver:ai:status`, `quiver:ai:resume`, and `quiver:spec:create -- --interactive` use the same approval-candidate data so next-step guidance stays consistent.
|
|
148
159
|
- `quiver:ai:prompt-slice -- --dry-run` prints a paste-ready manual executor prompt and does not call a provider.
|
|
149
160
|
- For commands pasted into another AI agent, prefer a non-interactive pinned form such as `npx --yes create-quiver@<version> ai prompt-slice --slice specs/<spec>/slices/<slice>/slice.json --dry-run`.
|
|
150
161
|
- `quiver:evidence -- run -- <command>` preserves the wrapped command exit code. Redaction is best effort; avoid commands that intentionally print secrets.
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
# Troubleshooting
|
|
2
|
+
|
|
3
|
+
Usá esta guía cuando una instalación, primer uso o comando de Quiver no se comporta como esperabas.
|
|
4
|
+
|
|
5
|
+
## Quiver no aparece en node_modules
|
|
6
|
+
|
|
7
|
+
### Síntoma
|
|
8
|
+
|
|
9
|
+
Ejecutaste un comando como:
|
|
10
|
+
|
|
11
|
+
```bash
|
|
12
|
+
npx --yes create-quiver@latest --help
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
El comando funciona, pero no encontrás `create-quiver` en:
|
|
16
|
+
|
|
17
|
+
```text
|
|
18
|
+
node_modules/create-quiver
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
### Explicación
|
|
22
|
+
|
|
23
|
+
Es esperado. Cuando usás `npx`, npm descarga y ejecuta el paquete desde su caché de ejecución. Eso permite usar Quiver sin modificar el `package.json` ni instalarlo dentro del proyecto.
|
|
24
|
+
|
|
25
|
+
Quiver funciona como CLI de workflow y bootstrap. No es una dependencia runtime que tu aplicación tenga que importar.
|
|
26
|
+
|
|
27
|
+
### Qué hacer
|
|
28
|
+
|
|
29
|
+
Si solo querés usar Quiver, no hace falta hacer nada más:
|
|
30
|
+
|
|
31
|
+
```bash
|
|
32
|
+
npx --yes create-quiver@latest flow
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
Si querés fijar una versión en el proyecto, instalalo como dependencia de desarrollo:
|
|
36
|
+
|
|
37
|
+
```bash
|
|
38
|
+
npm install --save-dev create-quiver
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
Después de eso sí va a aparecer en `node_modules` y podés usarlo desde scripts del proyecto.
|
|
42
|
+
|
|
43
|
+
### Ver también
|
|
44
|
+
|
|
45
|
+
- [Instalación y uso con npx](./getting-started/installation.md)
|
|
46
|
+
- [Referencia de comandos](./reference/commands.md)
|
|
47
|
+
|
|
48
|
+
## Quiver ejecuta una versión distinta a la esperada
|
|
49
|
+
|
|
50
|
+
### Síntoma
|
|
51
|
+
|
|
52
|
+
`npx create-quiver --version` y `npx --yes create-quiver@latest --version` muestran versiones diferentes.
|
|
53
|
+
|
|
54
|
+
### Explicación
|
|
55
|
+
|
|
56
|
+
`npx create-quiver` puede resolver una versión local si existe en el proyecto. En cambio, `npx --yes create-quiver@latest` pide explícitamente la última versión publicada en npm.
|
|
57
|
+
|
|
58
|
+
### Qué hacer
|
|
59
|
+
|
|
60
|
+
Para probar la última versión publicada:
|
|
61
|
+
|
|
62
|
+
```bash
|
|
63
|
+
npx --yes create-quiver@latest --version
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
Para usar la versión fijada por el proyecto:
|
|
67
|
+
|
|
68
|
+
```bash
|
|
69
|
+
npx create-quiver --version
|
|
70
|
+
```
|
|
@@ -5,6 +5,26 @@
|
|
|
5
5
|
|
|
6
6
|
Use this guide when a first-run bootstrap or gate check fails. The recovery paths below follow the smoke-tested flows in this repository.
|
|
7
7
|
|
|
8
|
+
## Quiver Does Not Appear In node_modules
|
|
9
|
+
|
|
10
|
+
### Symptom
|
|
11
|
+
|
|
12
|
+
- `npx --yes create-quiver@latest ...` works
|
|
13
|
+
- `node_modules/create-quiver` does not exist
|
|
14
|
+
- The project `package.json` does not list `create-quiver`
|
|
15
|
+
|
|
16
|
+
### Recovery
|
|
17
|
+
|
|
18
|
+
1. Treat this as expected when using `npx`; npm runs the CLI from its execution cache.
|
|
19
|
+
2. Keep using `npx --yes create-quiver@latest` when you want the latest published Quiver without adding a project dependency.
|
|
20
|
+
3. Install Quiver only when the team wants a pinned local workflow tool:
|
|
21
|
+
|
|
22
|
+
```bash
|
|
23
|
+
npm install --save-dev create-quiver
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
4. After a local install, use `npx create-quiver --help` or project scripts backed by the local `devDependency`.
|
|
27
|
+
|
|
8
28
|
## Path Normalization Failure
|
|
9
29
|
|
|
10
30
|
### Symptom
|
|
@@ -35,10 +35,10 @@ Use maps, metadata, diffs, and summaries first. Open full files only when the sm
|
|
|
35
35
|
1. Run `npx create-quiver flow` when the next safe command is unclear.
|
|
36
36
|
2. Triage the request.
|
|
37
37
|
3. Save reusable planner/executor provider choices with `ai agent set` when the team has preferred local AI CLIs.
|
|
38
|
-
4. Use `ai plan --phase acceptance` to draft criteria, then save the approved version with `ai approve --phase acceptance
|
|
38
|
+
4. Use `ai plan --phase acceptance` to draft criteria, then save the approved version with `ai approve --phase acceptance` in TTY or `--version <n>` in CI/no-TTY.
|
|
39
39
|
5. Use `ai plan --phase technical-plan` to draft the plan.
|
|
40
40
|
6. Use `ai review-plan` to review the technical-plan draft for production readiness without changing product code. Treat `approve` and `approve-with-risk` as approvable states; treat `revise` or required fixes as blockers.
|
|
41
|
-
7. Save the reviewed plan version with `ai approve --phase technical-plan
|
|
41
|
+
7. Save the reviewed plan version with `ai approve --phase technical-plan` in TTY or `--version <n>` in CI/no-TTY only after the review recommendation is approvable.
|
|
42
42
|
8. Use `spec create` to generate the spec, mandatory `slice-00`, implementation slices, handoffs, execution plan, and `pr.md`.
|
|
43
43
|
9. Open and merge the documentation PR or commit that establishes `slice-00` before running implementation slices.
|
|
44
44
|
10. Read the AI context pack, support matrix, and troubleshooting guide before the first slice if the environment is new or uncertain.
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
# Instalación y uso con npx
|
|
2
|
+
|
|
3
|
+
Esta guía explica por qué Quiver normalmente se ejecuta con `npx`, cuándo aparece en `node_modules` y cuándo conviene instalarlo como dependencia del proyecto.
|
|
4
|
+
|
|
5
|
+
## Uso recomendado
|
|
6
|
+
|
|
7
|
+
Para usar la última versión publicada de Quiver, ejecutá:
|
|
8
|
+
|
|
9
|
+
```bash
|
|
10
|
+
npx --yes create-quiver@latest --help
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
Qué hace:
|
|
14
|
+
|
|
15
|
+
- descarga o reutiliza `create-quiver` desde la caché de npm;
|
|
16
|
+
- ejecuta el CLI sin agregarlo al `package.json`;
|
|
17
|
+
- evita instalar una dependencia que la aplicación no necesita para correr.
|
|
18
|
+
|
|
19
|
+
Este es el modo recomendado para inicializar, analizar, diagnosticar, preparar contexto, crear specs, ejecutar slices y abrir PRs.
|
|
20
|
+
|
|
21
|
+
## Por qué no aparece en node_modules
|
|
22
|
+
|
|
23
|
+
Si ejecutás Quiver con:
|
|
24
|
+
|
|
25
|
+
```bash
|
|
26
|
+
npx --yes create-quiver@latest ...
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
el paquete no se instala dentro del proyecto. npm lo ejecuta desde su caché temporal o global de ejecución. Por eso no vas a encontrarlo en:
|
|
30
|
+
|
|
31
|
+
```text
|
|
32
|
+
node_modules/create-quiver
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
Esto es normal para CLIs de bootstrap como `create-quiver`. Quiver organiza el workflow del proyecto, pero no es una librería que tu app importe en runtime.
|
|
36
|
+
|
|
37
|
+
## Cuándo instalarlo como devDependency
|
|
38
|
+
|
|
39
|
+
Instalalo localmente solo si el equipo quiere una versión fijada en el proyecto o scripts reproducibles sin depender de `@latest`:
|
|
40
|
+
|
|
41
|
+
```bash
|
|
42
|
+
npm install --save-dev create-quiver
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
Después podés usar:
|
|
46
|
+
|
|
47
|
+
```bash
|
|
48
|
+
npx create-quiver --help
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
O agregar scripts al `package.json`, por ejemplo:
|
|
52
|
+
|
|
53
|
+
```json
|
|
54
|
+
{
|
|
55
|
+
"scripts": {
|
|
56
|
+
"quiver:doctor": "create-quiver doctor",
|
|
57
|
+
"quiver:flow": "create-quiver flow"
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
Qué cambia:
|
|
63
|
+
|
|
64
|
+
- `create-quiver` aparece en `devDependencies`;
|
|
65
|
+
- npm lo instala dentro de `node_modules`;
|
|
66
|
+
- los scripts del proyecto usan la versión fijada por `package-lock.json`.
|
|
67
|
+
|
|
68
|
+
## Qué opción elegir
|
|
69
|
+
|
|
70
|
+
| Necesidad | Recomendación |
|
|
71
|
+
|---|---|
|
|
72
|
+
| Probar Quiver rápidamente | `npx --yes create-quiver@latest` |
|
|
73
|
+
| Inicializar un proyecto nuevo | `npx --yes create-quiver@latest init --name "Mi Proyecto"` |
|
|
74
|
+
| Usar siempre la última versión publicada | `npx --yes create-quiver@latest` |
|
|
75
|
+
| Fijar una versión para el equipo | `npm install --save-dev create-quiver` |
|
|
76
|
+
| Evitar dependencia local de workflow | Usar `npx` |
|
|
77
|
+
|
|
78
|
+
## Qué no hace Quiver
|
|
79
|
+
|
|
80
|
+
Quiver no se instala globalmente por defecto, no modifica credenciales de npm y no agrega una dependencia runtime a tu app salvo que lo pidas explícitamente con npm.
|
|
81
|
+
|
|
82
|
+
## Siguiente paso
|
|
83
|
+
|
|
84
|
+
- [Proyecto nuevo desde cero](../workflows/new-project.md)
|
|
85
|
+
- [Proyecto existente sin Quiver](../workflows/existing-project.md)
|
|
86
|
+
- [Referencia de comandos](../reference/commands.md)
|