@noclaf/cli 0.4.15 → 0.4.16

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.
@@ -4,6 +4,8 @@ import { collectRuleSkills } from "../../../lib/rules.js";
4
4
  import { offerDependencyInstall, offerRuleSkills } from "../../flows/dependencies.js";
5
5
  import { offerShellCompletion } from "../../flows/completion.js";
6
6
  import { ensureCoreClients, offerDisableCoAuthoredBy } from "../../flows/clients.js";
7
+ import { sectionTitle } from "../../../lib/colors.js";
8
+ import { SyncReport, renderReport, browseReport, resolveReportMode } from "../../ui/report.js";
7
9
  import { flushTelemetry } from "../../../lib/telemetry.js";
8
10
  import { ensureAuthenticated, createSessionStep } from "./auth-step.js";
9
11
  import { fetchMemberProjectsStep, pickProject, pickRepository, buildBaseConfig, pickIde, } from "./project-step.js";
@@ -37,9 +39,16 @@ async function installAndProvisionClients(config, session) {
37
39
  if (chosenClientIds.has("claude-code"))
38
40
  await offerDisableCoAuthoredBy();
39
41
  const provisionTargets = resolveProvisionTargets(clientConfigs);
40
- await fetchSkillsStep();
41
- provisionTargetsStep(provisionTargets, config, session, skillIdMap());
42
- provisionHooksStep(provisionTargets, config);
42
+ console.log("");
43
+ console.log(sectionTitle("Skills & commands", "provisionando pros clientes"));
44
+ const report = new SyncReport();
45
+ await fetchSkillsStep(report);
46
+ provisionTargetsStep(provisionTargets, config, session, skillIdMap(), report);
47
+ provisionHooksStep(provisionTargets, config, report);
48
+ const mode = resolveReportMode({});
49
+ renderReport(report, mode);
50
+ if (mode === "summary")
51
+ await browseReport(report);
43
52
  }
44
53
  /** Ofertas finais: libs externas da seleção, skills recomendadas, autocomplete do shell. */
45
54
  async function offerFollowUps(config) {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/cli/commands/init/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/cli/commands/init/index.ts"],"names":[],"mappings":"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"}
@@ -2,9 +2,10 @@ import { claudeTarget, codexTarget } from "../../../lib/targets.js";
2
2
  import { provision } from "../../../lib/provision.js";
3
3
  import { provisionHooks } from "../../../lib/hooks.js";
4
4
  import { fetchSkills } from "../../../lib/skills-cache.js";
5
- import { c, sym, sectionTitle } from "../../../lib/colors.js";
5
+ import { c } from "../../../lib/colors.js";
6
6
  import { startSpinner } from "../../../spinner.js";
7
7
  import { printProvisionResult, printHookResult } from "../../ui/render.js";
8
+ import { summarizeProvision } from "../../ui/report.js";
8
9
  import { track, provisionedItems } from "../../../lib/telemetry.js";
9
10
  import { VERSION } from "../../../version.js";
10
11
  /**
@@ -23,27 +24,45 @@ export function resolveProvisionTargets(clientConfigs) {
23
24
  targets.add(claudeTarget);
24
25
  return targets;
25
26
  }
26
- /** Baixa o repo aberto de skills pro cache local antes de provisionar. */
27
- export async function fetchSkillsStep() {
28
- console.log("");
29
- console.log(sectionTitle("Skills & commands", "provisionando pros clientes"));
27
+ /** Baixa o repo aberto de skills pro cache e registra a seção no report. */
28
+ export async function fetchSkillsStep(report) {
30
29
  const fetchSpinner = startSpinner("Baixando skills do repo…");
31
30
  const fetched = await fetchSkills({ force: true });
32
31
  fetchSpinner.stop();
33
32
  if (fetched.status === "failed") {
34
- console.error(` ${c.red(sym.err)} não consegui baixar as skills: ${fetched.error}`);
33
+ report.add({
34
+ id: "fetch",
35
+ title: "Skills",
36
+ status: "error",
37
+ summary: "falha ao baixar",
38
+ lines: [` ${c.dim(fetched.error ?? "")}`],
39
+ });
35
40
  }
36
41
  else if (fetched.status === "fetched") {
37
- console.log(` ${c.green(sym.ok)} skills baixadas ${c.dim(`(${fetched.repo}@${fetched.ref})`)}`);
42
+ report.add({
43
+ id: "fetch",
44
+ title: "Skills",
45
+ status: "ok",
46
+ summary: `baixadas (${fetched.repo}@${fetched.ref})`,
47
+ lines: [],
48
+ });
49
+ }
50
+ else {
51
+ report.add({
52
+ id: "fetch",
53
+ title: "Skills",
54
+ status: "warn",
55
+ summary: "usando cache local",
56
+ lines: fetched.error ? [` ${c.dim(fetched.error)}`] : [],
57
+ });
38
58
  }
39
59
  }
40
- export function provisionTargetsStep(targets, config, session, uidByName) {
60
+ export function provisionTargetsStep(targets, config, session, uidByName, report) {
41
61
  for (const target of targets) {
42
- console.log("");
43
- console.log(` ${c.magenta(sym.dot)} ${c.bold(target.label)}`);
44
62
  try {
45
63
  const result = provision({ target, selection: config.selection });
46
- printProvisionResult(result);
64
+ const { status, summary } = summarizeProvision(result.files);
65
+ report.addCaptured({ id: `prov-${target.id}`, title: target.label, status, summary }, () => printProvisionResult(result));
47
66
  track(session.supabase, {
48
67
  type: "provision",
49
68
  client: target.id,
@@ -53,24 +72,32 @@ export function provisionTargetsStep(targets, config, session, uidByName) {
53
72
  });
54
73
  }
55
74
  catch (err) {
56
- console.error(`[aviso] Não consegui sincronizar skills/commands: ${err.message}`);
75
+ report.add({
76
+ id: `prov-${target.id}`,
77
+ title: target.label,
78
+ status: "error",
79
+ summary: "falhou",
80
+ lines: [` ${c.dim(err.message)}`],
81
+ });
57
82
  }
58
83
  }
59
84
  }
60
85
  /** Hooks (só Claude Code): registra os gatilhos no ~/.claude/settings.json. */
61
- export function provisionHooksStep(targets, config) {
86
+ export function provisionHooksStep(targets, config, report) {
62
87
  if (!targets.has(claudeTarget))
63
88
  return;
64
- console.log("");
65
- console.log(sectionTitle("Hooks", "registrando no Claude Code"));
66
89
  try {
67
- printHookResult(provisionHooks({
68
- surface: claudeTarget.surface,
69
- selection: config.selection,
70
- }));
90
+ const h = provisionHooks({ surface: claudeTarget.surface, selection: config.selection });
91
+ report.addCaptured({ id: "hooks", title: "Hooks", status: "ok", summary: `${h.installed.length} hooks` }, () => printHookResult(h));
71
92
  }
72
93
  catch (err) {
73
- console.error(`[aviso] Não consegui registrar hooks: ${err.message}`);
94
+ report.add({
95
+ id: "hooks",
96
+ title: "Hooks",
97
+ status: "warn",
98
+ summary: "pulado",
99
+ lines: [` ${c.dim(err.message)}`],
100
+ });
74
101
  }
75
102
  }
76
103
  //# sourceMappingURL=provision-step.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"provision-step.js","sourceRoot":"","sources":["../../../../src/cli/commands/init/provision-step.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"provision-step.js","sourceRoot":"","sources":["../../../../src/cli/commands/init/provision-step.ts"],"names":[],"mappings":"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"}
@@ -17,8 +17,9 @@ import { track, provisionedItems, flushTelemetry } from "../../lib/telemetry.js"
17
17
  import { VERSION } from "../../version.js";
18
18
  import { claudeTarget, detectConfiguredTargets } from "../../lib/targets.js";
19
19
  import { coworkConfigured, installCoworkGlobal } from "../../lib/client-configs.js";
20
- import { c, sym, cmd, box } from "../../lib/colors.js";
20
+ import { c, sym, cmd, box, sectionTitle } from "../../lib/colors.js";
21
21
  import { printProvisionResult, printHookResult, printHarnessResult } from "../ui/render.js";
22
+ import { SyncReport, renderReport, browseReport, resolveReportMode, summarizeProvision, } from "../ui/report.js";
22
23
  import { offerDependencyInstall, offerRuleSkills } from "../flows/dependencies.js";
23
24
  import { offerDisableCoAuthoredBy } from "../flows/clients.js";
24
25
  import { syncCopy } from "../copy.js";
@@ -33,6 +34,8 @@ export function registerSyncCommand(program) {
33
34
  .option("--no-install-deps", "não oferece instalar as libs externas requeridas")
34
35
  .option("-y, --yes", "aprova automaticamente a instalação das libs (não-interativo)")
35
36
  .option("--reanalyze", "re-roda a análise de patterns (regera docs/_patterns.md) mesmo se já existir")
37
+ .option("--verbose", "expande todos os detalhes inline (sem resumo/menu)")
38
+ .option("--quiet", "só o resumo de uma linha por seção")
36
39
  .action(async (opts) => {
37
40
  try {
38
41
  const upd = await checkForUpdate();
@@ -59,19 +62,31 @@ export function registerSyncCommand(program) {
59
62
  console.log(` ${c.red(`${sym.err} falha ao atualizar`)} ${c.dim("— seguindo com a versão atual.")}`);
60
63
  }
61
64
  }
65
+ const mode = resolveReportMode(opts);
66
+ const report = new SyncReport();
62
67
  // Puxa a versão mais recente do repo aberto de skills pro cache local
63
68
  // (~/.noclaf/skills). É a fonte que `provision`/`readDependencies` leem.
64
69
  if (!opts.dryRun) {
65
70
  const sp = startSpinner("Atualizando skills do repo…");
66
71
  const fetched = await fetchSkills({ force: true });
67
72
  sp.stop();
68
- console.log("");
69
73
  if (fetched.status === "fetched") {
70
- console.log(` ${c.green(sym.ok)} skills atualizadas ${c.dim(`(${fetched.repo}@${fetched.ref})`)}`);
74
+ report.add({
75
+ id: "fetch",
76
+ title: "Skills",
77
+ status: "ok",
78
+ summary: `atualizadas (${fetched.repo}@${fetched.ref})`,
79
+ lines: [],
80
+ });
71
81
  }
72
82
  else if (fetched.status === "cached") {
73
- console.log(` ${c.yellow(sym.warn)} usando cache local de skills` +
74
- (fetched.error ? c.dim(` (fetch falhou: ${fetched.error})`) : ""));
83
+ report.add({
84
+ id: "fetch",
85
+ title: "Skills",
86
+ status: "warn",
87
+ summary: "usando cache local" + (fetched.error ? " (fetch falhou)" : ""),
88
+ lines: fetched.error ? [` ${c.dim(fetched.error)}`] : [],
89
+ });
75
90
  }
76
91
  else {
77
92
  console.error(` ${c.red(sym.err)} não consegui obter as skills: ${fetched.error}`);
@@ -123,9 +138,8 @@ export function registerSyncCommand(program) {
123
138
  }
124
139
  }
125
140
  const uidByName = skillIdMap();
141
+ // ---- Fase informativa: coleta cada etapa como seção (não imprime na hora) ----
126
142
  for (const target of targets) {
127
- console.log("");
128
- console.log(` ${c.magenta(sym.dot)} ${c.bold(target.label)}`);
129
143
  const result = provision({
130
144
  target,
131
145
  selection,
@@ -133,7 +147,8 @@ export function registerSyncCommand(program) {
133
147
  force: opts.force,
134
148
  prune: opts.prune,
135
149
  });
136
- printProvisionResult(result);
150
+ const { status, summary } = summarizeProvision(result.files);
151
+ report.addCaptured({ id: `prov-${target.id}`, title: target.label, status, summary }, () => printProvisionResult(result));
137
152
  track(telemetry, {
138
153
  type: "provision",
139
154
  client: target.id,
@@ -143,26 +158,28 @@ export function registerSyncCommand(program) {
143
158
  });
144
159
  // Hooks (só Claude Code): registra os gatilhos no settings.json.
145
160
  if (target === claudeTarget) {
146
- printHookResult(provisionHooks({
161
+ const h = provisionHooks({
147
162
  surface: claudeTarget.surface,
148
163
  selection,
149
164
  dryRun: opts.dryRun,
150
- }));
165
+ });
166
+ report.addCaptured({ id: "hooks", title: "Hooks", status: "ok", summary: `${h.installed.length} hooks` }, () => printHookResult(h));
151
167
  }
152
168
  }
153
- // Reafirma o config do Cowork (idempotente): se o node/pacote mudou de
154
- // lugar, atualiza os paths absolutos no claude_desktop_config.json.
169
+ // Reafirma o config do Cowork (idempotente).
155
170
  if (!opts.dryRun && coworkConfigured()) {
156
171
  const result = installCoworkGlobal();
157
172
  if (result.status === "updated") {
158
- console.log("");
159
- console.log(` ${c.magenta(sym.dot)} ${c.bold("Claude Desktop (Cowork)")}`);
160
- console.log(` ${c.green(sym.ok)} ${c.dim("config atualizado")} ${c.dim(result.path)}`);
161
- console.log(` ${c.dim("reinicie o Claude Desktop pra carregar.")}`);
173
+ report.add({
174
+ id: "cowork",
175
+ title: "Claude Desktop (Cowork)",
176
+ status: "ok",
177
+ summary: "config atualizado — reinicie o app",
178
+ lines: [` ${c.dim(result.path)}`],
179
+ });
162
180
  }
163
181
  }
164
- // Harness no repo (rules + AGENTS.md + CLAUDE.md). Refresca as rules pela
165
- // seleção do noclaf.json e o overview pelo NOS (quando autenticado). Idempotente.
182
+ // Harness no repo (rules + AGENTS.md + CLAUDE.md). Idempotente.
166
183
  if (!opts.dryRun && config) {
167
184
  let overview = "";
168
185
  if (session) {
@@ -174,15 +191,37 @@ export function registerSyncCommand(program) {
174
191
  }
175
192
  }
176
193
  try {
177
- printHarnessResult(writeRepoHarness(process.cwd(), {
194
+ const h = writeRepoHarness(process.cwd(), {
178
195
  rulesMarkdown: concatenateRules(config.selection ?? { roles: [], stacks: {} }),
179
196
  overview,
180
- }));
197
+ });
198
+ const changed = [h.rules, h.agents, h.claude].some((a) => a !== "unchanged" && a !== "empty");
199
+ report.addCaptured({
200
+ id: "harness",
201
+ title: "Harness (repo)",
202
+ status: "ok",
203
+ summary: changed ? `rules ${h.rules} · AGENTS ${h.agents}` : "sem mudanças",
204
+ }, () => printHarnessResult(h));
181
205
  }
182
206
  catch (err) {
183
- console.error(`[aviso] harness pulado: ${err.message}`);
207
+ report.add({
208
+ id: "harness",
209
+ title: "Harness (repo)",
210
+ status: "warn",
211
+ summary: "pulado",
212
+ lines: [` ${c.dim(err.message)}`],
213
+ });
184
214
  }
185
- // Patterns (IA): auto no 1º sync (com [y/N]) ou via --reanalyze; skip-if-exists.
215
+ }
216
+ // ---- Render do resumo + menu navegável (só no modo interativo) ----
217
+ renderReport(report, mode);
218
+ if (mode === "summary")
219
+ await browseReport(report);
220
+ // ---- Fase de ações: ofertas [y/N] (patterns, deps, completion) ----
221
+ console.log("");
222
+ console.log(sectionTitle("Ações", "instalações e ajustes"));
223
+ // Patterns (IA): auto no 1º sync (com [y/N]) ou via --reanalyze; skip-if-exists.
224
+ if (!opts.dryRun && config) {
186
225
  const cwd = process.cwd();
187
226
  if (opts.reanalyze || !patternsExist(cwd)) {
188
227
  const interactive = Boolean(process.stdout.isTTY);
@@ -197,16 +236,16 @@ export function registerSyncCommand(program) {
197
236
  console.log(` ${c.dim(`${sym.gear} analisando patterns…`)}`);
198
237
  const out = runPatternsAnalysis(cwd);
199
238
  if (!out.ran) {
200
- console.log(` ${c.yellow(sym.warn)} ${c.dim(out.reason ?? "análise não rodou")}`);
239
+ console.log(` ${c.yellow(sym.warn)} ${c.dim(out.reason ?? "análise não rodou")}`);
201
240
  }
202
241
  else {
203
242
  console.log(out.ok
204
- ? ` ${c.green(sym.ok)} docs/_patterns.md ${c.dim(`(${out.agent})`)}`
205
- : ` ${c.red(sym.err)} ${c.dim(`análise falhou (${out.agent})`)}`);
243
+ ? ` ${c.green(sym.ok)} docs/_patterns.md ${c.dim(`(${out.agent})`)}`
244
+ : ` ${c.red(sym.err)} ${c.dim(`análise falhou (${out.agent})`)}`);
206
245
  }
207
246
  }
208
247
  else {
209
- console.log(` ${c.dim("patterns pulado — rode")} ${cmd("noclaf sync --reanalyze")} ${c.dim("depois.")}`);
248
+ console.log(` ${c.dim("patterns pulado — rode")} ${cmd("noclaf sync --reanalyze")} ${c.dim("depois.")}`);
210
249
  }
211
250
  }
212
251
  }
@@ -1 +1 @@
1
- {"version":3,"file":"sync.js","sourceRoot":"","sources":["../../../src/cli/commands/sync.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sync.js","sourceRoot":"","sources":["../../../src/cli/commands/sync.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAC;AAC9D,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,kBAAkB,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACvE,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpE,OAAO,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACnE,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AACzE,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC3E,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AACzF,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,KAAK,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACjF,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAC3C,OAAO,EAAE,YAAY,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AAC7E,OAAO,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AACpF,OAAO,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACrE,OAAO,EAAE,oBAAoB,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAC5F,OAAO,EACL,UAAU,EACV,YAAY,EACZ,YAAY,EACZ,iBAAiB,EACjB,kBAAkB,GACnB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,sBAAsB,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AACnF,OAAO,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAC;AAC/D,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC,MAAM,UAAU,mBAAmB,CAAC,OAAgB;IAClD,OAAO;SACJ,OAAO,CAAC,MAAM,CAAC;SACf,WAAW,CACV,qIAAqI,CACtI;SACA,MAAM,CAAC,WAAW,EAAE,yCAAyC,CAAC;SAC9D,MAAM,CAAC,SAAS,EAAE,gDAAgD,CAAC;SACnE,MAAM,CAAC,YAAY,EAAE,sCAAsC,CAAC;SAC5D,MAAM,CAAC,aAAa,EAAE,0CAA0C,CAAC;SACjE,MAAM,CACL,mBAAmB,EACnB,kDAAkD,CACnD;SACA,MAAM,CACL,WAAW,EACX,+DAA+D,CAChE;SACA,MAAM,CACL,aAAa,EACb,8EAA8E,CAC/E;SACA,MAAM,CAAC,WAAW,EAAE,oDAAoD,CAAC;SACzE,MAAM,CAAC,SAAS,EAAE,oCAAoC,CAAC;SACvD,MAAM,CACL,KAAK,EAAE,IAUN,EAAE,EAAE;QACH,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,cAAc,EAAE,CAAC;YACnC,IAAI,GAAG,EAAE,SAAS,EAAE,CAAC;gBACnB,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBAChB,OAAO,CAAC,GAAG,CACT,GAAG,CACD,GAAG,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,uBAAuB,CAAC,IAAI;oBAC1D,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI;oBACpE,GAAG,CAAC,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,GAAG,CAAC,kBAAkB,GAAG,CAAC,IAAI,SAAS,CAAC,EAAE,EACtE,EAAE,WAAW,EAAE,QAAQ,EAAE,KAAK,EAAE,aAAa,EAAE,CAChD,CACF,CAAC;gBACF,MAAM,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBAClD,MAAM,QAAQ,GACZ,CAAC,IAAI,CAAC,MAAM;oBACZ,CAAC,IAAI,CAAC,GAAG,KAAK,IAAI;wBAChB,CAAC,WAAW;4BACV,CAAC,MAAM,OAAO,CAAC;gCACb,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,OAAO;gCAChC,OAAO,EAAE,IAAI;6BACd,CAAC,CAAC,CAAC,CAAC,CAAC;gBACZ,IAAI,QAAQ,EAAE,CAAC;oBACb,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,IAAI,WAAW,CAAC,EAAE,CAAC,CAAC;oBAClD,MAAM,GAAG,GAAG,SAAS,CACnB,KAAK,EACL,CAAC,SAAS,EAAE,IAAI,EAAE,GAAG,GAAG,CAAC,IAAI,SAAS,CAAC,EACvC,EAAE,KAAK,EAAE,SAAS,EAAE,CACrB,CAAC;oBACF,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;wBACrB,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,EAAE,mBAAmB,GAAG,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,+BAA+B,CAAC,EAAE,CACnG,CAAC;wBACF,OAAO;oBACT,CAAC;oBACD,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,qBAAqB,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,gCAAgC,CAAC,EAAE,CACzF,CAAC;gBACJ,CAAC;YACH,CAAC;YAED,MAAM,IAAI,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC;YACrC,MAAM,MAAM,GAAG,IAAI,UAAU,EAAE,CAAC;YAEhC,sEAAsE;YACtE,yEAAyE;YACzE,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;gBACjB,MAAM,EAAE,GAAG,YAAY,CAAC,6BAA6B,CAAC,CAAC;gBACvD,MAAM,OAAO,GAAG,MAAM,WAAW,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;gBACnD,EAAE,CAAC,IAAI,EAAE,CAAC;gBACV,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;oBACjC,MAAM,CAAC,GAAG,CAAC;wBACT,EAAE,EAAE,OAAO;wBACX,KAAK,EAAE,QAAQ;wBACf,MAAM,EAAE,IAAI;wBACZ,OAAO,EAAE,gBAAgB,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,GAAG,GAAG;wBACvD,KAAK,EAAE,EAAE;qBACV,CAAC,CAAC;gBACL,CAAC;qBAAM,IAAI,OAAO,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;oBACvC,MAAM,CAAC,GAAG,CAAC;wBACT,EAAE,EAAE,OAAO;wBACX,KAAK,EAAE,QAAQ;wBACf,MAAM,EAAE,MAAM;wBACd,OAAO,EAAE,oBAAoB,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,CAAC;wBACxE,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE;qBAC5D,CAAC,CAAC;gBACL,CAAC;qBAAM,CAAC;oBACN,OAAO,CAAC,KAAK,CACX,KAAK,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,kCAAkC,OAAO,CAAC,KAAK,EAAE,CACrE,CAAC;oBACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBAClB,CAAC;YACH,CAAC;YAED,MAAM,QAAQ,GAAG,uBAAuB,EAAE,CAAC;YAC3C,MAAM,OAAO,GAAG,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC;YAEhE,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;gBACnB,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;oBAC7B,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;oBAChB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;oBAC/D,MAAM,MAAM,GAAG,kBAAkB,CAAC;wBAChC,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE;wBAC7B,MAAM,EAAE,IAAI,CAAC,MAAM;qBACpB,CAAC,CAAC;oBACH,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,OAAO;wBAAE,OAAO,CAAC,GAAG,CAAC,SAAS,GAAG,EAAE,CAAC,CAAC;oBAC9D,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI;wBAC3B,OAAO,CAAC,GAAG,CAAC,SAAS,GAAG,oCAAoC,CAAC,CAAC;oBAChE,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC;oBACjD,OAAO,CAAC,GAAG,CACT,GAAG,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,gBAAgB,MAAM,CAAC,IAAI,CAAC,MAAM,kBAAkB,MAAM,CAAC,SAAS,EAAE,CACxG,CAAC;oBACF,IAAI,MAAM,KAAK,YAAY,EAAE,CAAC;wBAC5B,MAAM,CAAC,GAAG,cAAc,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;wBAClD,IAAI,CAAC,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC;4BAC7B,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;oBAC/D,CAAC;gBACH,CAAC;gBACD,OAAO;YACT,CAAC;YAED,IAAI,MAAM,GAAG,IAAI,CAAC;YAClB,IAAI,CAAC;gBACH,MAAM,GAAG,iBAAiB,EAAE,CAAC;YAC/B,CAAC;YAAC,MAAM,CAAC;gBACP,kDAAkD;YACpD,CAAC;YACD,MAAM,SAAS,GAAG,MAAM,EAAE,SAAS,CAAC;YAEpC,8EAA8E;YAC9E,IAAI,OAAO,GAAG,IAAI,CAAC;YACnB,IAAI,SAAS,GAAG,IAAI,CAAC;YACrB,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;gBACjB,IAAI,CAAC;oBACH,OAAO,GAAG,MAAM,yBAAyB,EAAE,CAAC;oBAC5C,SAAS,GAAG,OAAO,CAAC,QAAQ,CAAC;gBAC/B,CAAC;gBAAC,MAAM,CAAC;oBACP,yCAAyC;gBAC3C,CAAC;YACH,CAAC;YACD,MAAM,SAAS,GAAG,UAAU,EAAE,CAAC;YAE/B,iFAAiF;YAEjF,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;gBAC7B,MAAM,MAAM,GAAG,SAAS,CAAC;oBACvB,MAAM;oBACN,SAAS;oBACT,MAAM,EAAE,IAAI,CAAC,MAAM;oBACnB,KAAK,EAAE,IAAI,CAAC,KAAK;oBACjB,KAAK,EAAE,IAAI,CAAC,KAAK;iBAClB,CAAC,CAAC;gBACH,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,kBAAkB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBAC7D,MAAM,CAAC,WAAW,CAChB,EAAE,EAAE,EAAE,QAAQ,MAAM,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,EACjE,GAAG,EAAE,CAAC,oBAAoB,CAAC,MAAM,CAAC,CACnC,CAAC;gBACF,KAAK,CAAC,SAAS,EAAE;oBACf,IAAI,EAAE,WAAW;oBACjB,MAAM,EAAE,MAAM,CAAC,EAAE;oBACjB,QAAQ,EAAE,SAAS;oBACnB,KAAK,EAAE,gBAAgB,CAAC,MAAM,CAAC,KAAK,EAAE,SAAS,CAAC;oBAChD,OAAO,EAAE,OAAO;iBACjB,CAAC,CAAC;gBAEH,iEAAiE;gBACjE,IAAI,MAAM,KAAK,YAAY,EAAE,CAAC;oBAC5B,MAAM,CAAC,GAAG,cAAc,CAAC;wBACvB,OAAO,EAAE,YAAY,CAAC,OAAO;wBAC7B,SAAS;wBACT,MAAM,EAAE,IAAI,CAAC,MAAM;qBACpB,CAAC,CAAC;oBACH,MAAM,CAAC,WAAW,CAChB,EAAE,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC,SAAS,CAAC,MAAM,QAAQ,EAAE,EACrF,GAAG,EAAE,CAAC,eAAe,CAAC,CAAC,CAAC,CACzB,CAAC;gBACJ,CAAC;YACH,CAAC;YAED,6CAA6C;YAC7C,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,gBAAgB,EAAE,EAAE,CAAC;gBACvC,MAAM,MAAM,GAAG,mBAAmB,EAAE,CAAC;gBACrC,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;oBAChC,MAAM,CAAC,GAAG,CAAC;wBACT,EAAE,EAAE,QAAQ;wBACZ,KAAK,EAAE,yBAAyB;wBAChC,MAAM,EAAE,IAAI;wBACZ,OAAO,EAAE,oCAAoC;wBAC7C,KAAK,EAAE,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;qBACrC,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;YAED,gEAAgE;YAChE,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,MAAM,EAAE,CAAC;gBAC3B,IAAI,QAAQ,GAAG,EAAE,CAAC;gBAClB,IAAI,OAAO,EAAE,CAAC;oBACZ,IAAI,CAAC;wBACH,QAAQ,GAAG,oBAAoB,CAC7B,MAAM,mBAAmB,CAAC,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,CAClE,CAAC;oBACJ,CAAC;oBAAC,MAAM,CAAC;wBACP,iDAAiD;oBACnD,CAAC;gBACH,CAAC;gBACD,IAAI,CAAC;oBACH,MAAM,CAAC,GAAG,gBAAgB,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE;wBACxC,aAAa,EAAE,gBAAgB,CAAC,MAAM,CAAC,SAAS,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;wBAC9E,QAAQ;qBACT,CAAC,CAAC;oBACH,MAAM,OAAO,GAAG,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAChD,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,WAAW,IAAI,CAAC,KAAK,OAAO,CAC1C,CAAC;oBACF,MAAM,CAAC,WAAW,CAChB;wBACE,EAAE,EAAE,SAAS;wBACb,KAAK,EAAE,gBAAgB;wBACvB,MAAM,EAAE,IAAI;wBACZ,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,KAAK,aAAa,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,cAAc;qBAC5E,EACD,GAAG,EAAE,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAC5B,CAAC;gBACJ,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,MAAM,CAAC,GAAG,CAAC;wBACT,EAAE,EAAE,SAAS;wBACb,KAAK,EAAE,gBAAgB;wBACvB,MAAM,EAAE,MAAM;wBACd,OAAO,EAAE,QAAQ;wBACjB,KAAK,EAAE,CAAC,OAAO,CAAC,CAAC,GAAG,CAAE,GAAa,CAAC,OAAO,CAAC,EAAE,CAAC;qBAChD,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;YAED,sEAAsE;YACtE,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;YAC3B,IAAI,IAAI,KAAK,SAAS;gBAAE,MAAM,YAAY,CAAC,MAAM,CAAC,CAAC;YAEnD,sEAAsE;YACtE,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAChB,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,OAAO,EAAE,uBAAuB,CAAC,CAAC,CAAC;YAE5D,iFAAiF;YACjF,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,MAAM,EAAE,CAAC;gBAC3B,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;gBAC1B,IAAI,IAAI,CAAC,SAAS,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC;oBAC1C,MAAM,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;oBAClD,IAAI,QAAQ,GAAG,IAAI,CAAC,GAAG,KAAK,IAAI,IAAI,IAAI,CAAC,SAAS,KAAK,IAAI,CAAC;oBAC5D,IAAI,CAAC,QAAQ,IAAI,WAAW,EAAE,CAAC;wBAC7B,QAAQ,GAAG,MAAM,OAAO,CAAC;4BACvB,OAAO,EACL,+EAA+E;4BACjF,OAAO,EAAE,IAAI;yBACd,CAAC,CAAC;oBACL,CAAC;oBACD,IAAI,QAAQ,EAAE,CAAC;wBACb,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,IAAI,uBAAuB,CAAC,EAAE,CAAC,CAAC;wBAC9D,MAAM,GAAG,GAAG,mBAAmB,CAAC,GAAG,CAAC,CAAC;wBACrC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;4BACb,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,IAAI,mBAAmB,CAAC,EAAE,CAAC,CAAC;wBACrF,CAAC;6BAAM,CAAC;4BACN,OAAO,CAAC,GAAG,CACT,GAAG,CAAC,EAAE;gCACJ,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,sBAAsB,CAAC,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,KAAK,GAAG,CAAC,EAAE;gCACrE,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,mBAAmB,GAAG,CAAC,KAAK,GAAG,CAAC,EAAE,CACpE,CAAC;wBACJ,CAAC;oBACH,CAAC;yBAAM,CAAC;wBACN,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,CAAC,GAAG,CAAC,wBAAwB,CAAC,IAAI,GAAG,CAAC,yBAAyB,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAC7F,CAAC;oBACJ,CAAC;gBACH,CAAC;YACH,CAAC;YAED,IACE,CAAC,IAAI,CAAC,MAAM;gBACZ,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC;gBAC7B,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,EAC9B,CAAC;gBACD,MAAM,wBAAwB,EAAE,CAAC;YACnC,CAAC;YAED,sEAAsE;YACtE,MAAM,sBAAsB,CAAC,gBAAgB,CAAC,SAAS,CAAC,EAAE;gBACxD,WAAW,EAAE,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC;gBAC1C,SAAS,EAAE,IAAI,CAAC,GAAG;gBACnB,OAAO,EAAE,IAAI,CAAC,WAAW,KAAK,KAAK,IAAI,CAAC,IAAI,CAAC,MAAM;aACpD,CAAC,CAAC;YAEH,6DAA6D;YAC7D,MAAM,eAAe,CACnB,iBAAiB,CAAC,MAAM,EAAE,SAAS,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,EACjE;gBACE,WAAW,EAAE,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC;gBAC1C,SAAS,EAAE,IAAI,CAAC,GAAG;gBACnB,OAAO,EAAE,IAAI,CAAC,WAAW,KAAK,KAAK,IAAI,CAAC,IAAI,CAAC,MAAM;aACpD,CACF,CAAC;YAEF,sEAAsE;YACtE,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;gBACjB,MAAM,oBAAoB,CAAC;oBACzB,WAAW,EAAE,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC;oBAC1C,SAAS,EAAE,IAAI,CAAC,GAAG;iBACpB,CAAC,CAAC;YACL,CAAC;YAED,yEAAyE;YACzE,MAAM,cAAc,EAAE,CAAC;QACzB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,KAAK,CAAC,UAAW,GAAa,CAAC,OAAO,EAAE,CAAC,CAAC;YAClD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC,CACF,CAAC;AACN,CAAC"}
@@ -0,0 +1,117 @@
1
+ import { select } from "../../lib/prompts.js";
2
+ import { c, sym } from "../../lib/colors.js";
3
+ /**
4
+ * Captura o que `fn` imprimiria via `console.log` num array de linhas — deixa reusar os
5
+ * `print*` existentes como fonte do detalhe, sem reescrevê-los.
6
+ */
7
+ export function capture(fn) {
8
+ const lines = [];
9
+ const orig = console.log;
10
+ console.log = (...args) => {
11
+ lines.push(args.map((a) => String(a)).join(" "));
12
+ };
13
+ try {
14
+ fn();
15
+ }
16
+ finally {
17
+ console.log = orig;
18
+ }
19
+ return lines;
20
+ }
21
+ export class SyncReport {
22
+ sections = [];
23
+ add(section) {
24
+ this.sections.push(section);
25
+ }
26
+ /** Adiciona uma seção cujo detalhe vem da saída capturada de `fn`. */
27
+ addCaptured(meta, fn) {
28
+ this.add({ ...meta, lines: capture(fn) });
29
+ }
30
+ }
31
+ /** Resumo + status de um resultado de provisionamento (usado por sync e init). */
32
+ export function summarizeProvision(files) {
33
+ const n = (a) => files.filter((f) => f.action === a).length;
34
+ const werr = n("write-error");
35
+ const conflict = n("skip-conflict");
36
+ const parts = [`${n("create")} criados`, `${n("update")} atualizados`];
37
+ if (n("prune"))
38
+ parts.push(`${n("prune")} removidos`);
39
+ if (conflict)
40
+ parts.push(`${conflict} conflito`);
41
+ if (werr)
42
+ parts.push(`${werr} erro`);
43
+ return {
44
+ status: werr > 0 ? "error" : conflict > 0 ? "warn" : "ok",
45
+ summary: parts.join(" · "),
46
+ };
47
+ }
48
+ function icon(status) {
49
+ return status === "ok"
50
+ ? c.green(sym.ok)
51
+ : status === "warn"
52
+ ? c.yellow(sym.warn)
53
+ : c.red(sym.err);
54
+ }
55
+ function headline(s) {
56
+ return ` ${icon(s.status)} ${c.bold(s.title)} ${c.dim(`· ${s.summary}`)}`;
57
+ }
58
+ /** Resolve o modo: `--verbose`/`--quiet` mandam; senão TTY → resumo, não-TTY → plano. */
59
+ export function resolveReportMode(opts) {
60
+ if (opts.verbose)
61
+ return "verbose";
62
+ if (opts.quiet)
63
+ return "quiet";
64
+ return process.stdout.isTTY ? "summary" : "plain";
65
+ }
66
+ /** Imprime o report conforme o modo. */
67
+ export function renderReport(report, mode) {
68
+ if (report.sections.length === 0)
69
+ return;
70
+ console.log("");
71
+ if (mode === "verbose" || mode === "plain") {
72
+ for (const s of report.sections) {
73
+ console.log(headline(s));
74
+ for (const l of s.lines)
75
+ console.log(l);
76
+ }
77
+ return;
78
+ }
79
+ // summary / quiet: uma linha por seção; no summary, expande as que não estão ok.
80
+ for (const s of report.sections) {
81
+ console.log(headline(s));
82
+ if (mode === "summary" && s.status !== "ok")
83
+ for (const l of s.lines)
84
+ console.log(l);
85
+ }
86
+ }
87
+ const DONE = "__done__";
88
+ /**
89
+ * Menu navegável pós-resumo (só TTY): o usuário escolhe uma seção pra ver o detalhe e
90
+ * volta ao menu; "seguir" continua o fluxo. É o "ir pro lado e ver as outras infos".
91
+ */
92
+ export async function browseReport(report) {
93
+ if (!process.stdout.isTTY || report.sections.length === 0)
94
+ return;
95
+ for (;;) {
96
+ const choice = await select({
97
+ message: "Ver o detalhe de alguma seção? (↑/↓ navega, enter abre)",
98
+ choices: [
99
+ { name: c.dim("▶ seguir"), value: DONE },
100
+ ...report.sections.map((s) => ({
101
+ name: `${icon(s.status)} ${s.title} ${c.dim(`— ${s.summary}`)}`,
102
+ value: s.id,
103
+ })),
104
+ ],
105
+ });
106
+ if (choice === DONE)
107
+ return;
108
+ const sec = report.sections.find((s) => s.id === choice);
109
+ if (sec) {
110
+ console.log("");
111
+ for (const l of sec.lines)
112
+ console.log(l);
113
+ console.log("");
114
+ }
115
+ }
116
+ }
117
+ //# sourceMappingURL=report.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"report.js","sourceRoot":"","sources":["../../../src/cli/ui/report.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@noclaf/cli",
3
- "version": "0.4.15",
3
+ "version": "0.4.16",
4
4
  "description": "MCP server e CLI pra controlar o NOS (Noclaf Operation System) a partir de assistentes de IA como Claude Code, Codex CLI e GitHub Copilot.",
5
5
  "type": "module",
6
6
  "bin": {