@noclaf/cli 0.5.0 → 0.5.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.
Files changed (62) hide show
  1. package/README.md +11 -7
  2. package/dist/adapters/supabase/task-gateway.js +11 -0
  3. package/dist/adapters/supabase/task-gateway.js.map +1 -1
  4. package/dist/cli/commands/init/analyze-step.js +21 -0
  5. package/dist/cli/commands/init/analyze-step.js.map +1 -0
  6. package/dist/cli/commands/init/apply-answers.js +105 -0
  7. package/dist/cli/commands/init/apply-answers.js.map +1 -0
  8. package/dist/cli/commands/init/apply-step.js +162 -0
  9. package/dist/cli/commands/init/apply-step.js.map +1 -0
  10. package/dist/cli/commands/init/clients-step.js +13 -11
  11. package/dist/cli/commands/init/clients-step.js.map +1 -1
  12. package/dist/cli/commands/init/context-step.js +17 -9
  13. package/dist/cli/commands/init/context-step.js.map +1 -1
  14. package/dist/cli/commands/init/describe-step.js +58 -0
  15. package/dist/cli/commands/init/describe-step.js.map +1 -0
  16. package/dist/cli/commands/init/index.js +24 -2
  17. package/dist/cli/commands/init/index.js.map +1 -1
  18. package/dist/cli/commands/init/mode.js +18 -0
  19. package/dist/cli/commands/init/mode.js.map +1 -0
  20. package/dist/cli/commands/init/progress.js +60 -0
  21. package/dist/cli/commands/init/progress.js.map +1 -0
  22. package/dist/cli/commands/init/project-step.js +33 -5
  23. package/dist/cli/commands/init/project-step.js.map +1 -1
  24. package/dist/cli/commands/map.js +18 -0
  25. package/dist/cli/commands/map.js.map +1 -0
  26. package/dist/cli/commands/sync.js +2 -2
  27. package/dist/cli/commands/sync.js.map +1 -1
  28. package/dist/cli/commands/wave.js +57 -0
  29. package/dist/cli/commands/wave.js.map +1 -0
  30. package/dist/cli/copy/init.json +1 -0
  31. package/dist/cli/copy.js.map +1 -1
  32. package/dist/cli/flows/sections.js +1 -1
  33. package/dist/cli/flows/sections.js.map +1 -1
  34. package/dist/cli/ui/render.js +10 -9
  35. package/dist/cli/ui/render.js.map +1 -1
  36. package/dist/cli.js +4 -0
  37. package/dist/cli.js.map +1 -1
  38. package/dist/config.js +24 -15
  39. package/dist/config.js.map +1 -1
  40. package/dist/lib/exec-delegate.js +6 -4
  41. package/dist/lib/exec-delegate.js.map +1 -1
  42. package/dist/lib/exec-events.js +8 -1
  43. package/dist/lib/exec-events.js.map +1 -1
  44. package/dist/lib/exec-translators.js +25 -2
  45. package/dist/lib/exec-translators.js.map +1 -1
  46. package/dist/lib/harness.js +7 -2
  47. package/dist/lib/harness.js.map +1 -1
  48. package/dist/lib/patterns.js +4 -40
  49. package/dist/lib/patterns.js.map +1 -1
  50. package/dist/lib/repo-map.js +176 -0
  51. package/dist/lib/repo-map.js.map +1 -0
  52. package/dist/lib/skill-agent.js +44 -0
  53. package/dist/lib/skill-agent.js.map +1 -0
  54. package/dist/lib/wave-scheduler.js +95 -0
  55. package/dist/lib/wave-scheduler.js.map +1 -0
  56. package/dist/tools/exec-status.js +3 -1
  57. package/dist/tools/exec-status.js.map +1 -1
  58. package/dist/tools/index.js +2 -0
  59. package/dist/tools/index.js.map +1 -1
  60. package/dist/tools/set-review.js +132 -0
  61. package/dist/tools/set-review.js.map +1 -0
  62. package/package.json +1 -1
package/README.md CHANGED
@@ -49,7 +49,7 @@ Operações do CLI, **sem o binário na frente** (declarado no cabeçalho da tab
49
49
  gerada da fonte por `bun run gen:docs`.
50
50
 
51
51
  <!-- COMMANDS:START -->
52
- <!-- gerado por `bun run gen:docs` — não edite à mão. binário `noclaf`, 13 comandos. -->
52
+ <!-- gerado por `bun run gen:docs` — não edite à mão. binário `noclaf`, 15 comandos. -->
53
53
 
54
54
  | Comando | Descrição |
55
55
  | --- | --- |
@@ -60,11 +60,13 @@ gerada da fonte por `bun run gen:docs`.
60
60
  | `init` | Cria noclaf.json no diretório atual vinculando a um projeto do NOS |
61
61
  | `login [pat]` | Salva o token de acesso pessoal (PAT) localmente |
62
62
  | `logout` | Remove credenciais locais |
63
- | `plan` | Roda o engine pensante sobre o projeto e escreve/refina o plan.md da raiz. |
63
+ | `map` | Regera o índice estrutural do repo em docs/_map.md (arquivo → símbolos exportados + propósito). |
64
+ | `plan` | Roda o engine pensante sobre o projeto e escreve/refina o .noclaf/plan.md. |
64
65
  | `skills` | Skills, commands e agents do noclaf (lidos do repo aberto via cache) |
65
66
  | `skills status` | Lista os docs do repo de skills (cache local ~/.noclaf/skills) |
66
67
  | `sync` | Instala/atualiza skills, commands e agents nos clientes configurados, a partir do bundle (idempotente); checa atualização do pacote |
67
- | `validate-plan` | Lê o plan.md da raiz e roda o engine pensante para julgar se o plano precisa de uma spec antes de implementar. |
68
+ | `validate-plan` | Lê o .noclaf/plan.md e roda o engine pensante para julgar se o plano precisa de uma spec antes de implementar. |
69
+ | `wave <tickets>` | Calcula a próxima wave do DAG de um doc de tickets (docs/tickets/<x>.md): o frontier (bloqueadores todos done), limitado ao paralelismo e sem dois tickets tocando o mesmo arquivo. |
68
70
  | `whoami` | Mostra o usuário autenticado |
69
71
  <!-- COMMANDS:END -->
70
72
 
@@ -90,12 +92,13 @@ Operações do MCP, com o nome **sem o prefixo** (declarado por grupo — o pref
90
92
  `src/brand.ts`). Tabela gerada da fonte por `bun run gen:docs`.
91
93
 
92
94
  <!-- TOOLS:START -->
93
- <!-- gerado por `bun run gen:docs` — não edite à mão. 21 tools. -->
95
+ <!-- gerado por `bun run gen:docs` — não edite à mão. 23 tools. -->
94
96
 
95
97
  ### Tools de produto — prefixo `nos_`
96
98
 
97
99
  | Operação | O que faz |
98
100
  | --- | --- |
101
+ | `add_checklist` | Cria uma checklist nomeada (com itens) numa tarefa — a checklist nativa que aparece clicável na UI, melhor que enfiar um DoD no texto da descrição. |
99
102
  | `attach_pr` | Anexa a URL de um pull request a uma tarefa e a coloca em review: grava `pr_url`, seta `review_state=pending` e move o status pra `code_review`. |
100
103
  | `comment_task` | Adiciona um comentário em uma tarefa. |
101
104
  | `create_task` | Cria uma nova tarefa no projeto atual. |
@@ -110,6 +113,7 @@ Operações do MCP, com o nome **sem o prefixo** (declarado por grupo — o pref
110
113
  | `move_task` | Atalho pra mudar o status de uma tarefa (move entre colunas do Kanban). |
111
114
  | `record_delivery` | Registra uma ENTREGA do loop de build (um ticket concluído / PR aberto) na analítica de entrega do NOS. |
112
115
  | `set_project` | Define o projeto ativo da sessão (em memória, dura enquanto o servidor estiver rodando). |
116
+ | `set_review` | Registra o veredito de um review no ticket: seta `tasks.review_state`. |
113
117
  | `start_allocation` | Inicia uma alocação (bate o ponto) para o usuário atual. |
114
118
  | `start_task_allocation` | Começa a cronometrar tempo numa task específica. |
115
119
  | `update_task` | Atualiza campos de uma tarefa existente. |
@@ -119,9 +123,9 @@ Operações do MCP, com o nome **sem o prefixo** (declarado por grupo — o pref
119
123
  | Operação | O que faz |
120
124
  | --- | --- |
121
125
  | `delegate_exec` | Delega a IMPLEMENTAÇÃO a um agente de execução novo (codex ou claude local, na assinatura — sem API) num worktree já criado pelo /implement. |
122
- | `exec_status` | Estado de uma execução delegada (`noclaf_delegate_exec`): running \| done \| failed, com o resumo do agente, os arquivos alterados e os checks determinísticos (tamanho, lint, build, testes). |
123
- | `plan` | Roda o engine PENSANTE (claude ou codex local, na assinatura — sem API) sobre a raiz do projeto e escreve/refina o `plan.md` de rascunho pré-SDD. |
124
- | `validate_plan` | Lê o `plan.md` da raiz do projeto e roda o engine PENSANTE (claude ou codex local, na assinatura — sem API) para julgar se o plano é complexo o bastante para virar uma spec SDD antes de implementar. |
126
+ | `exec_status` | Estado de uma execução delegada (`noclaf_delegate_exec`): running \| done \| failed, com o resumo do agente, os arquivos alterados e os checks determinísticos (tamanho, lint, build, testes) e os tokens gastos no run. |
127
+ | `plan` | Roda o engine PENSANTE (claude ou codex local, na assinatura — sem API) sobre a raiz do projeto e escreve/refina o `.noclaf/plan.md` de rascunho pré-SDD. |
128
+ | `validate_plan` | Lê o `.noclaf/plan.md` do projeto e roda o engine PENSANTE (claude ou codex local, na assinatura — sem API) para julgar se o plano é complexo o bastante para virar uma spec SDD antes de implementar. |
125
129
  <!-- TOOLS:END -->
126
130
 
127
131
  > **Escopo do projeto.** As tools de tarefa/alocação resolvem o projeto nesta ordem:
@@ -304,6 +304,17 @@ export function taskGateway(db) {
304
304
  throw new Error(`Erro ao buscar tarefa: ${res.error.message}`);
305
305
  return res.data ?? null;
306
306
  },
307
+ async getTaskForSetReview(taskId, projectId) {
308
+ const res = await db
309
+ .from('tasks')
310
+ .select('key, title, status, review_state, pr_url')
311
+ .eq('id', taskId)
312
+ .eq('project_id', projectId)
313
+ .maybeSingle();
314
+ if (res.error)
315
+ throw new Error(`Erro ao buscar tarefa: ${res.error.message}`);
316
+ return res.data ?? null;
317
+ },
307
318
  async moveTaskStatus(taskId, projectId, status, userId, oldStatus) {
308
319
  // Cast: status já validado pela tool (zod) contra o enum gerado.
309
320
  const updateRes = await db
@@ -1 +1 @@
1
- {"version":3,"file":"task-gateway.js","sourceRoot":"","sources":["../../../src/adapters/supabase/task-gateway.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"task-gateway.js","sourceRoot":"","sources":["../../../src/adapters/supabase/task-gateway.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,21 @@
1
+ import { brand } from "../../../brand.js";
2
+ import { runSkillAgent, skillPrompt } from "../../../lib/skill-agent.js";
3
+ /**
4
+ * Análise/pré-preenchimento do repo no `--apply`: aciona a skill `init-sdd` num
5
+ * agente headless (mesmo spawn do `patterns.ts`). É **pré-preenchimento** — o init
6
+ * já é utilizável sem ela —, então quem chama trata falha como aviso. A saída do
7
+ * agente vai pro **stderr**: o stdout do apply é JSON puro.
8
+ */
9
+ const SKILL_ID = "init-sdd";
10
+ const FALLBACK_PROMPT = `Faça o scaffold da estrutura de spec-driven dev no repositório atual (\`docs/specs\`, \`docs/bugs\`, \`docs/decisions\`, \`docs/_templates\` e um \`AGENTS.md\` na raiz) de forma idempotente: arquivo que já existe é PULADO, nunca sobrescrito. Depois analise o repo (somente-leitura no código) pra pré-preencher o \`AGENTS.md\` com a stack e as convenções REAIS e semear specs das áreas inacabadas. Não escreva nada fora de \`docs/\` e do \`AGENTS.md\`. Termine com um resumo de created/skipped e PARE.`;
11
+ // A skill abre perguntando (Fase 0) e aqui ninguém responde — a resposta vai dada no prompt.
12
+ const HEADLESS_ANSWER = `IMPORTANTE — você foi disparado por \`${brand.name} init --apply\`, de forma NÃO INTERATIVA: não pergunte nada e não espere resposta nenhuma. Considere a Fase 0 já respondida com **(b) scaffold + análise**, produzindo **stack**, **overview** e **specs** (sem ADRs). Siga o resto exatamente como está escrito e PARE no fim.`;
13
+ /** Prompt = corpo da skill `init-sdd` + a Fase 0 já respondida (headless). */
14
+ export function initAnalysisPrompt() {
15
+ return `${skillPrompt(SKILL_ID, FALLBACK_PROMPT)}\n\n---\n\n${HEADLESS_ANSWER}`;
16
+ }
17
+ /** Aciona o `init-sdd` no `cwd`, com a saída do agente desviada pro stderr. */
18
+ export function runInitAnalysis(cwd) {
19
+ return runSkillAgent(initAnalysisPrompt(), { cwd, stdoutFd: 2 });
20
+ }
21
+ //# sourceMappingURL=analyze-step.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"analyze-step.js","sourceRoot":"","sources":["../../../../src/cli/commands/init/analyze-step.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,WAAW,EAAqB,MAAM,6BAA6B,CAAC;AAE5F;;;;;GAKG;AAEH,MAAM,QAAQ,GAAG,UAAU,CAAC;AAE5B,MAAM,eAAe,GAAG,sfAAsf,CAAC;AAE/gB,6FAA6F;AAC7F,MAAM,eAAe,GAAG,yCAAyC,KAAK,CAAC,IAAI,iRAAiR,CAAC;AAE7V,8EAA8E;AAC9E,MAAM,UAAU,kBAAkB;IAChC,OAAO,GAAG,WAAW,CAAC,QAAQ,EAAE,eAAe,CAAC,cAAc,eAAe,EAAE,CAAC;AAClF,CAAC;AAED,+EAA+E;AAC/E,MAAM,UAAU,eAAe,CAAC,GAAW;IACzC,OAAO,aAAa,CAAC,kBAAkB,EAAE,EAAE,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAC;AACnE,CAAC"}
@@ -0,0 +1,105 @@
1
+ import { UUID_REGEX } from "../../../config.js";
2
+ const options = (ids) => (ids.length ? ids.join(", ") : "(catálogo vazio)");
3
+ function asRecord(value) {
4
+ if (!value || typeof value !== "object" || Array.isArray(value))
5
+ return null;
6
+ return value;
7
+ }
8
+ /** Campo ausente → `[]`; tipo errado → `null` (o chamador reporta). */
9
+ function asStringArray(value) {
10
+ if (value === undefined || value === null)
11
+ return [];
12
+ if (!Array.isArray(value) || value.some((v) => typeof v !== "string"))
13
+ return null;
14
+ return value;
15
+ }
16
+ /** Lista de ids que precisa existir no catálogo; erra por id fora dele. */
17
+ function validateIds(field, value, allowed, errors) {
18
+ const ids = asStringArray(value);
19
+ if (!ids) {
20
+ errors.push(`${field}: esperava uma lista de strings`);
21
+ return [];
22
+ }
23
+ for (const id of ids) {
24
+ if (!allowed.includes(id)) {
25
+ errors.push(`${field}: "${id}" não está no catálogo — use: ${options(allowed)}`);
26
+ }
27
+ }
28
+ return ids;
29
+ }
30
+ function validateStacks(value, catalog, errors) {
31
+ const raw = value === undefined || value === null ? {} : asRecord(value);
32
+ if (!raw) {
33
+ errors.push('stacks: esperava um objeto { "área": "stack" }');
34
+ return {};
35
+ }
36
+ const stacks = {};
37
+ for (const [area, stack] of Object.entries(raw)) {
38
+ const known = catalog.stacks.find((s) => s.area === area);
39
+ if (!known) {
40
+ const areas = catalog.stacks.map((s) => s.area);
41
+ errors.push(`stacks: área "${area}" não está no catálogo — use: ${options(areas)}`);
42
+ }
43
+ else if (typeof stack !== "string" || !known.options.includes(stack)) {
44
+ errors.push(`stacks["${area}"]: "${String(stack)}" não é stack dessa área — use: ${options(known.options)}`);
45
+ }
46
+ else {
47
+ stacks[area] = stack;
48
+ }
49
+ }
50
+ return stacks;
51
+ }
52
+ function validateUuid(field, value, required, errors) {
53
+ if (value === undefined || value === null) {
54
+ if (required)
55
+ errors.push(`${field}: obrigatório — o UUID do projeto`);
56
+ return null;
57
+ }
58
+ const text = typeof value === "string" ? value.trim() : "";
59
+ if (!UUID_REGEX.test(text)) {
60
+ errors.push(`${field}: "${String(value)}" não é um UUID`);
61
+ return null;
62
+ }
63
+ return text;
64
+ }
65
+ function validateIde(value, catalog, errors) {
66
+ const ids = catalog.ide.map((o) => o.id);
67
+ if (typeof value === "string" && ids.includes(value))
68
+ return value;
69
+ errors.push(`ide: "${String(value)}" não está no catálogo — use: ${options(ids)}`);
70
+ return "other";
71
+ }
72
+ function validateAnalyze(value, catalog, errors) {
73
+ if (value === undefined || value === null)
74
+ return catalog.analyze.default;
75
+ if (typeof value !== "boolean") {
76
+ errors.push("analyze: esperava booleano (true/false)");
77
+ return catalog.analyze.default;
78
+ }
79
+ return value;
80
+ }
81
+ /** Respostas cruas + catálogo → respostas normalizadas ou os erros. Pura. */
82
+ export function validateAnswers(raw, catalog) {
83
+ const obj = asRecord(raw);
84
+ if (!obj) {
85
+ return {
86
+ ok: false,
87
+ errors: ["respostas: esperava um objeto JSON { project, roles, stacks, clients, ide }"],
88
+ };
89
+ }
90
+ const errors = [];
91
+ const answers = {
92
+ project: validateUuid("project", obj.project, true, errors) ?? "",
93
+ repository: validateUuid("repository", obj.repository, false, errors),
94
+ selection: {
95
+ roles: validateIds("roles", obj.roles, catalog.roles.map((r) => r.id), errors),
96
+ stacks: validateStacks(obj.stacks, catalog, errors),
97
+ },
98
+ skills: validateIds("skills", obj.skills, catalog.skills.map((s) => s.id), errors),
99
+ clients: validateIds("clients", obj.clients, catalog.clients.map((c) => c.id), errors),
100
+ ide: validateIde(obj.ide, catalog, errors),
101
+ analyze: validateAnalyze(obj.analyze, catalog, errors),
102
+ };
103
+ return errors.length > 0 ? { ok: false, errors } : { ok: true, answers };
104
+ }
105
+ //# sourceMappingURL=apply-answers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"apply-answers.js","sourceRoot":"","sources":["../../../../src/cli/commands/init/apply-answers.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,162 @@
1
+ import { brand, envName } from "../../../brand.js";
2
+ import { section } from "../../../lib/colors.js";
3
+ import { loadCredentials } from "../../../auth.js";
4
+ import { readDependencies, skillIdMap } from "../../../lib/skills.js";
5
+ import { collectRuleSkills } from "../../../lib/rules.js";
6
+ import { flushTelemetry } from "../../../lib/telemetry.js";
7
+ import { createAuthenticatedClient, } from "../../../adapters/supabase/client.js";
8
+ import { offerDependencyInstall, offerRuleSkills } from "../../flows/dependencies.js";
9
+ import { SyncReport, renderReport } from "../../ui/report.js";
10
+ import { buildBaseConfig } from "./project-step.js";
11
+ import { persistConfigStep, loadProjectContext, buildHarness } from "./context-step.js";
12
+ import { installClients, activateCoworkIfChosen, resolveChosenClientIds, ensureChosenClientsInstalled, } from "./clients-step.js";
13
+ import { resolveProvisionTargets, fetchSkillsStep, provisionTargetsStep, provisionHooksStep, } from "./provision-step.js";
14
+ import { buildCatalog, readCatalogSources } from "./describe-step.js";
15
+ import { validateAnswers } from "./apply-answers.js";
16
+ import { runInitStep, redirectStdoutToStderr, emitResult } from "./progress.js";
17
+ import { runInitAnalysis } from "./analyze-step.js";
18
+ function fail(errors) {
19
+ console.error("[erro] respostas do --apply inválidas:");
20
+ for (const err of errors)
21
+ console.error(` - ${err}`);
22
+ console.error(` rode \`${brand.name} init --describe\` pra ver o catálogo válido.`);
23
+ emitResult({
24
+ ok: false,
25
+ harnessWritten: false,
26
+ skills: [],
27
+ clients: [],
28
+ sections: [],
29
+ error: "respostas do --apply inválidas",
30
+ errors,
31
+ });
32
+ process.exit(1);
33
+ }
34
+ /** JSON cru → respostas validadas contra o catálogo; erro acionável + exit 1 se não bate. */
35
+ export function parseApplyAnswers(json) {
36
+ let raw;
37
+ try {
38
+ raw = JSON.parse(json);
39
+ }
40
+ catch (err) {
41
+ fail([`--apply: JSON inválido (${err.message})`]);
42
+ }
43
+ const result = validateAnswers(raw, buildCatalog(readCatalogSources()));
44
+ if (!result.ok)
45
+ fail(result.errors);
46
+ return result.answers;
47
+ }
48
+ /** Auth assumida: o headless nunca prompta PAT — sem credencial salva, falha acionável. */
49
+ async function requireCredentials() {
50
+ if (await loadCredentials())
51
+ return;
52
+ throw new Error(`sem sessão do ${brand.productName} nesta máquina — o init headless não pede PAT. ` +
53
+ `Conecte a conta no Studio, ou rode \`${brand.name} login <PAT>\`, ou passe o PAT ` +
54
+ `em ${envName("PAT")} no ambiente; depois repita o \`${brand.name} init --apply\`.`);
55
+ }
56
+ /** Sessão + config no disco + contexto, com projeto/repo/seleção/IDE vindos do JSON. */
57
+ async function applyProjectSetup(answers) {
58
+ const session = await runInitStep("session", "Carregando a sessão", () => createAuthenticatedClient());
59
+ const config = buildBaseConfig(answers.project, answers.repository);
60
+ config.selection = answers.selection;
61
+ config.ide = answers.ide;
62
+ await runInitStep("config", `Gravando ${brand.projectConfigFile}`, () => persistConfigStep(config, answers.project));
63
+ const { overview } = await runInitStep("context", "Carregando o contexto do projeto", () => loadProjectContext(session.supabase, config, session.user));
64
+ return { config, session, overview };
65
+ }
66
+ /** Instala os clientes escolhidos e provisiona skills/commands/hooks — tudo sem prompt. */
67
+ async function applyClientsAndProvision(config, session, clients, report) {
68
+ await runInitStep("clients", "Instalando os clientes escolhidos", async () => {
69
+ installClients(clients, process.cwd());
70
+ await activateCoworkIfChosen(clients, { interactive: false });
71
+ await ensureChosenClientsInstalled(resolveChosenClientIds(clients), { interactive: false });
72
+ });
73
+ await runInitStep("provision", "Provisionando skills, commands e hooks", () => {
74
+ const targets = resolveProvisionTargets(clients);
75
+ section("Skills & commands", "provisionando pros clientes");
76
+ provisionTargetsStep(targets, config, session, skillIdMap(), report);
77
+ provisionHooksStep(targets, config, report);
78
+ renderReport(report, "plain");
79
+ });
80
+ }
81
+ /** Hints de libs/skills recomendadas (sem prompt) + telemetria — nada aqui aborta. */
82
+ async function applyFollowUps(config) {
83
+ const selection = config.selection ?? { roles: [], stacks: {} };
84
+ await runInitStep("dependencies", "Conferindo dependências e skills recomendadas", async () => {
85
+ await offerDependencyInstall(readDependencies(selection), { interactive: false });
86
+ await offerRuleSkills(collectRuleSkills(selection), { interactive: false });
87
+ });
88
+ try {
89
+ await flushTelemetry();
90
+ }
91
+ catch {
92
+ /* telemetria é best-effort — não derruba o init */
93
+ }
94
+ }
95
+ /**
96
+ * Aciona o `init-sdd`. Pré-preenchimento é conveniência: falta de `claude`/`codex` ou
97
+ * agente que falhou emite `error` no NDJSON (o modal marca a etapa) mas **não** aborta
98
+ * — o init já está utilizável, e o estado fica em `analysis` no resultado (exit 0).
99
+ */
100
+ async function applyAnalysis(result) {
101
+ try {
102
+ await runInitStep("analyze", "Analisando o repo pra pré-preencher (init-sdd)", () => {
103
+ const outcome = runInitAnalysis(process.cwd());
104
+ result.analysis = outcome;
105
+ if (!outcome.ran)
106
+ throw new Error(outcome.reason ?? "análise não rodou");
107
+ if (!outcome.ok)
108
+ throw new Error(`a análise falhou no agente \`${outcome.agent}\``);
109
+ });
110
+ }
111
+ catch {
112
+ /* já emitido como `error`; o apply segue e sai 0 */
113
+ }
114
+ }
115
+ /** As seções sem o detalhe: o resultado leva status/resumo, não a saída humana. */
116
+ function summarize(sections) {
117
+ return sections.map(({ id, title, status, summary }) => ({ id, title, status, summary }));
118
+ }
119
+ /** Preenche o resultado à medida que as etapas passam — em falha ele já reflete o quanto rodou. */
120
+ async function runApplySteps(answers, result) {
121
+ await runInitStep("auth", "Conferindo a sessão salva", requireCredentials);
122
+ const { config, session, overview } = await applyProjectSetup(answers);
123
+ // O harness sai das rules do pacote de skills: em máquina nova o cache tem que vir antes.
124
+ const report = new SyncReport();
125
+ await runInitStep("skills", "Baixando as skills do repo", () => fetchSkillsStep(report));
126
+ result.sections = summarize(report.sections); // se o harness falhar, a seção do fetch explica
127
+ result.harness = await runInitStep("harness", "Escrevendo o harness no repo", () => buildHarness(config, overview));
128
+ result.harnessWritten = true;
129
+ await applyClientsAndProvision(config, session, answers.clients, report);
130
+ result.sections = summarize(report.sections);
131
+ // Depois do provisionamento: o `init-sdd` lê os templates que ele acabou de instalar.
132
+ if (answers.analyze)
133
+ await applyAnalysis(result);
134
+ await applyFollowUps(config);
135
+ }
136
+ export async function applyInit(json, analyzeFlag) {
137
+ const parsed = parseApplyAnswers(json);
138
+ // Precedência: `--no-analyze` na linha de comando ganha do `analyze` do JSON.
139
+ const answers = { ...parsed, analyze: analyzeFlag ?? parsed.analyze };
140
+ const result = {
141
+ ok: false,
142
+ harnessWritten: false,
143
+ skills: answers.skills,
144
+ clients: answers.clients,
145
+ sections: [],
146
+ };
147
+ const restoreStdout = redirectStdoutToStderr();
148
+ try {
149
+ await runApplySteps(answers, result);
150
+ result.ok = true;
151
+ }
152
+ catch (err) {
153
+ result.error = err.message;
154
+ }
155
+ finally {
156
+ restoreStdout();
157
+ }
158
+ emitResult(result);
159
+ if (!result.ok)
160
+ process.exit(1);
161
+ }
162
+ //# sourceMappingURL=apply-step.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"apply-step.js","sourceRoot":"","sources":["../../../../src/cli/commands/init/apply-step.ts"],"names":[],"mappings":"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"}
@@ -13,17 +13,19 @@ export const CLIENT_INSTALLERS = {
13
13
  "claude-code-repo": { label: "Claude Code (per-repo)", run: (cwd) => installClaudeCodeRepo(cwd) },
14
14
  "vscode-repo": { label: "VS Code Copilot (per-repo)", run: (cwd) => installVSCodeRepo(cwd) },
15
15
  };
16
+ /** Clientes oferecidos — fonte única do prompt interativo e do catálogo do `--describe`. */
17
+ export const CLIENT_CHOICES = [
18
+ { name: initCopy.clientChoices.claudeGlobal, value: "claude-code-global" },
19
+ { name: initCopy.clientChoices.codexGlobal, value: "codex-global" },
20
+ { name: initCopy.clientChoices.cowork, value: "cowork" },
21
+ { name: initCopy.clientChoices.claudeRepo, value: "claude-code-repo" },
22
+ { name: initCopy.clientChoices.vscodeRepo, value: "vscode-repo" },
23
+ ];
16
24
  export async function promptClientChoices() {
17
25
  return checkbox({
18
26
  message: initCopy.clientsPrompt,
19
27
  all: true,
20
- choices: [
21
- { name: initCopy.clientChoices.claudeGlobal, value: "claude-code-global" },
22
- { name: initCopy.clientChoices.codexGlobal, value: "codex-global" },
23
- { name: initCopy.clientChoices.cowork, value: "cowork" },
24
- { name: initCopy.clientChoices.claudeRepo, value: "claude-code-repo" },
25
- { name: initCopy.clientChoices.vscodeRepo, value: "vscode-repo" },
26
- ],
28
+ choices: CLIENT_CHOICES,
27
29
  });
28
30
  }
29
31
  /** Roda a instalação de cada cliente escolhido (exceto `cowork`, tratado à parte). */
@@ -40,12 +42,12 @@ export function installClients(clientConfigs, cwd) {
40
42
  }
41
43
  }
42
44
  }
43
- export async function activateCoworkIfChosen(clientConfigs) {
45
+ export async function activateCoworkIfChosen(clientConfigs, opts = { interactive: true }) {
44
46
  if (!clientConfigs.includes("cowork"))
45
47
  return;
46
48
  console.log("");
47
49
  section("Claude Desktop / Cowork");
48
- await activateCowork({ interactive: true });
50
+ await activateCowork(opts);
49
51
  }
50
52
  /**
51
53
  * Dado o resultado do checkbox de clientes, quais IDs (`CLIENTS[id]`) devem
@@ -64,13 +66,13 @@ export function resolveChosenClientIds(clientConfigs) {
64
66
  }
65
67
  return ids;
66
68
  }
67
- export async function ensureChosenClientsInstalled(chosenClientIds) {
69
+ export async function ensureChosenClientsInstalled(chosenClientIds, opts = { interactive: true }) {
68
70
  if (chosenClientIds.size === 0)
69
71
  return;
70
72
  console.log("");
71
73
  section("Clientes", "confirmando que estão instalados");
72
74
  for (const id of chosenClientIds) {
73
- await ensureClientInstalled(CLIENTS[id], { interactive: true });
75
+ await ensureClientInstalled(CLIENTS[id], opts);
74
76
  }
75
77
  }
76
78
  //# sourceMappingURL=clients-step.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"clients-step.js","sourceRoot":"","sources":["../../../../src/cli/commands/init/clients-step.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"clients-step.js","sourceRoot":"","sources":["../../../../src/cli/commands/init/clients-step.ts"],"names":[],"mappings":"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"}
@@ -35,6 +35,11 @@ export function persistConfigStep(config, projectName) {
35
35
  /* .gitignore best-effort — não bloqueia o init */
36
36
  }
37
37
  }
38
+ /** Núcleo do contexto: propaga a falha — o headless aborta se o binding não resolve. */
39
+ export async function loadProjectContext(supabase, config, user) {
40
+ const context = await fetchProjectContext(supabase, config, user);
41
+ return { context, overview: buildProjectOverview(context) };
42
+ }
38
43
  /**
39
44
  * Carrega o contexto do projeto (specs/ADRs/membros) e monta o overview pro
40
45
  * AGENTS.md. Falha aqui é degradada: o noclaf.json já foi salvo, então só avisa
@@ -43,10 +48,10 @@ export function persistConfigStep(config, projectName) {
43
48
  export async function loadContextStep(supabase, config, user) {
44
49
  const contextSpinner = startSpinner("Carregando contexto do projeto...");
45
50
  try {
46
- const context = await fetchProjectContext(supabase, config, user);
51
+ const { context, overview } = await loadProjectContext(supabase, config, user);
47
52
  contextSpinner.stop();
48
53
  printContextSummary(context);
49
- return buildProjectOverview(context);
54
+ return overview;
50
55
  }
51
56
  catch (err) {
52
57
  const message = err instanceof ProjectContextError ? err.message : err.message;
@@ -55,16 +60,19 @@ export async function loadContextStep(supabase, config, user) {
55
60
  return "";
56
61
  }
57
62
  }
63
+ /** Núcleo do harness: propaga a falha — sem harness o init headless não serve. */
64
+ export function buildHarness(config, overview) {
65
+ const sel = config.selection ?? { roles: [], stacks: {} };
66
+ return writeRepoHarness(process.cwd(), {
67
+ rulesMarkdown: concatenateRules(sel),
68
+ reviewMarkdown: concatenateReviewCriteria(sel),
69
+ overview,
70
+ });
71
+ }
58
72
  /** Harness no repo: rules concatenadas + AGENTS.md (overview do NOS) + CLAUDE.md. */
59
73
  export function writeHarnessStep(config, overview) {
60
74
  try {
61
- const sel = config.selection ?? { roles: [], stacks: {} };
62
- const h = writeRepoHarness(process.cwd(), {
63
- rulesMarkdown: concatenateRules(sel),
64
- reviewMarkdown: concatenateReviewCriteria(sel),
65
- overview,
66
- });
67
- printHarnessResult(h);
75
+ printHarnessResult(buildHarness(config, overview));
68
76
  }
69
77
  catch (err) {
70
78
  console.error(`[aviso] Não consegui escrever o harness: ${err.message}`);