@neetru/cli 2.12.12 → 2.12.15

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.
@@ -10,14 +10,14 @@ const PROMPT_PREFIX = chalk.hex('#1E90FF').bold(' › ');
10
10
  const ASSISTANT_PREFIX = chalk.dim(' ◆ ');
11
11
  // Help público — sem /modelo (orchestrator escolhe). /debug:model é o
12
12
  // override avançado pra quem quer forçar.
13
- const HELP_TEXT = `
14
- Comandos:
15
- /sair /exit encerrar sessão
16
- /limpar /clear limpar histórico de contexto
17
- /agentes <pergunta> consultar 2+ modelos em paralelo e comparar
18
- /auth rodar wizard de configuração (claude/codex/gemini)
19
- /help mostrar este texto
20
- /debug:model <nome> forçar modelo (claude|openai|gemini|groq|nvidia|auto)
13
+ const HELP_TEXT = `
14
+ Comandos:
15
+ /sair /exit encerrar sessão
16
+ /limpar /clear limpar histórico de contexto
17
+ /agentes <pergunta> consultar 2+ modelos em paralelo e comparar
18
+ /auth rodar wizard de configuração (claude/codex/gemini)
19
+ /help mostrar este texto
20
+ /debug:model <nome> forçar modelo (claude|openai|gemini|groq|nvidia|auto)
21
21
  `.trim();
22
22
  const DEBUG_MODELS = ['claude', 'openai', 'gemini', 'groq', 'nvidia', 'auto'];
23
23
  /**
@@ -84,49 +84,49 @@ export const TOP_LEVEL_COMMANDS = [
84
84
  ];
85
85
  function bashScript() {
86
86
  const cmds = TOP_LEVEL_COMMANDS.join(' ');
87
- return `# neetru CLI bash completion (v2.10.2)
88
- _neetru_complete() {
89
- local cur prev
90
- COMPREPLY=()
91
- cur="\${COMP_WORDS[COMP_CWORD]}"
92
- prev="\${COMP_WORDS[COMP_CWORD-1]}"
93
- if [ \${COMP_CWORD} -eq 1 ]; then
94
- COMPREPLY=( $(compgen -W "${cmds}" -- "\${cur}") )
95
- return 0
96
- fi
97
- }
98
- complete -F _neetru_complete neetru
87
+ return `# neetru CLI bash completion (v2.10.2)
88
+ _neetru_complete() {
89
+ local cur prev
90
+ COMPREPLY=()
91
+ cur="\${COMP_WORDS[COMP_CWORD]}"
92
+ prev="\${COMP_WORDS[COMP_CWORD-1]}"
93
+ if [ \${COMP_CWORD} -eq 1 ]; then
94
+ COMPREPLY=( $(compgen -W "${cmds}" -- "\${cur}") )
95
+ return 0
96
+ fi
97
+ }
98
+ complete -F _neetru_complete neetru
99
99
  `;
100
100
  }
101
101
  function zshScript() {
102
102
  // Formato compsys do zsh.
103
103
  const cmds = TOP_LEVEL_COMMANDS.map((c) => ` '${c}'`).join('\n');
104
- return `#compdef neetru
105
- # neetru CLI zsh completion (v2.10.2)
106
- _neetru() {
107
- local -a commands
108
- commands=(
109
- ${cmds}
110
- )
111
- if (( CURRENT == 2 )); then
112
- _describe 'command' commands
113
- fi
114
- }
115
- _neetru "$@"
104
+ return `#compdef neetru
105
+ # neetru CLI zsh completion (v2.10.2)
106
+ _neetru() {
107
+ local -a commands
108
+ commands=(
109
+ ${cmds}
110
+ )
111
+ if (( CURRENT == 2 )); then
112
+ _describe 'command' commands
113
+ fi
114
+ }
115
+ _neetru "$@"
116
116
  `;
117
117
  }
118
118
  function pwshScript() {
119
119
  const cmds = TOP_LEVEL_COMMANDS.map((c) => ` '${c}'`).join(',\n');
120
- return `# neetru CLI PowerShell completion (v2.10.2)
121
- Register-ArgumentCompleter -Native -CommandName neetru -ScriptBlock {
122
- param($wordToComplete, $commandAst, $cursorPosition)
123
- $commands = @(
124
- ${cmds}
125
- )
126
- $commands | Where-Object { $_ -like "$wordToComplete*" } | ForEach-Object {
127
- [System.Management.Automation.CompletionResult]::new($_, $_, 'ParameterValue', $_)
128
- }
129
- }
120
+ return `# neetru CLI PowerShell completion (v2.10.2)
121
+ Register-ArgumentCompleter -Native -CommandName neetru -ScriptBlock {
122
+ param($wordToComplete, $commandAst, $cursorPosition)
123
+ $commands = @(
124
+ ${cmds}
125
+ )
126
+ $commands | Where-Object { $_ -like "$wordToComplete*" } | ForEach-Object {
127
+ [System.Management.Automation.CompletionResult]::new($_, $_, 'ParameterValue', $_)
128
+ }
129
+ }
130
130
  `;
131
131
  }
132
132
  export function generateAutocompleteScript(shell) {
@@ -39,6 +39,23 @@ export interface ChatSendOptions {
39
39
  json?: boolean;
40
40
  }
41
41
  export declare function runChatSend(message: string, opts: ChatSendOptions): Promise<void>;
42
+ export interface ChatIdentityOptions {
43
+ json?: boolean;
44
+ /** Suprime o log de sucesso (usado pelo --as do send). */
45
+ quiet?: boolean;
46
+ }
47
+ /**
48
+ * `neetru chat identity [apelido]` — apelido inerente à credencial (CH3).
49
+ *
50
+ * Sem argumento: mostra o apelido atual (GET /api/cli/v1/chat/identity).
51
+ * Com argumento: persiste o apelido na credencial (POST). A partir daí, TODA
52
+ * mensagem postada com este token aparece com este nome — a IA se identifica em
53
+ * nome do dev dono do token. Apelido vazio ("") limpa (volta ao email).
54
+ *
55
+ * O apelido vive em `cli_api_keys/{keyId}.displayName` — é inerente ao token,
56
+ * não por-mensagem.
57
+ */
58
+ export declare function runChatIdentity(displayName: string | undefined, opts?: ChatIdentityOptions): Promise<void>;
42
59
  export interface ChatHistoryOptions {
43
60
  /** Canal de destino (novo — tem precedência sobre product). */
44
61
  channel?: string;
@@ -50,6 +67,12 @@ export interface ChatHistoryOptions {
50
67
  follow?: boolean;
51
68
  /** Intervalo de poll do --follow em ms (default 3000, min 1500, max 60000). */
52
69
  interval?: string;
70
+ /**
71
+ * Cursor incremental (epoch ms OU ISO). Quando presente, busca SÓ mensagens
72
+ * com createdAt > since (servidor ignora a janela em horas). Base do monitor
73
+ * limpo: combine com --json --follow → NDJSON só das novas, sem replay.
74
+ */
75
+ since?: string;
53
76
  }
54
77
  export declare function runChatHistory(opts: ChatHistoryOptions): Promise<void>;
55
78
  export interface ChatLoopOptions {
@@ -227,6 +227,97 @@ export async function runChatSend(message, opts) {
227
227
  }
228
228
  log.success(`Mensagem enviada (id: ${res.id}).`);
229
229
  }
230
+ /**
231
+ * `neetru chat identity [apelido]` — apelido inerente à credencial (CH3).
232
+ *
233
+ * Sem argumento: mostra o apelido atual (GET /api/cli/v1/chat/identity).
234
+ * Com argumento: persiste o apelido na credencial (POST). A partir daí, TODA
235
+ * mensagem postada com este token aparece com este nome — a IA se identifica em
236
+ * nome do dev dono do token. Apelido vazio ("") limpa (volta ao email).
237
+ *
238
+ * O apelido vive em `cli_api_keys/{keyId}.displayName` — é inerente ao token,
239
+ * não por-mensagem.
240
+ */
241
+ export async function runChatIdentity(displayName, opts = {}) {
242
+ const token = await requireToken(opts.json);
243
+ // Sem argumento → mostra o apelido atual.
244
+ if (displayName === undefined) {
245
+ let res;
246
+ try {
247
+ res = await apiRequest('/api/cli/v1/chat/identity', { token });
248
+ }
249
+ catch (error) {
250
+ handleApiError(error, opts.json);
251
+ return;
252
+ }
253
+ if (opts.json) {
254
+ console.log(JSON.stringify(res));
255
+ return;
256
+ }
257
+ if (res.displayName) {
258
+ log.info(`Apelido atual: ${chalk.bold(res.displayName)}`);
259
+ }
260
+ else {
261
+ log.info(`Sem apelido — suas mensagens usam o email${res.email ? ` (${res.email})` : ''}.`);
262
+ }
263
+ return;
264
+ }
265
+ // Com argumento → persiste.
266
+ const spinner = opts.json || opts.quiet ? null : ora({ text: 'Salvando apelido…', color: 'blue' }).start();
267
+ let res;
268
+ try {
269
+ res = await apiRequest('/api/cli/v1/chat/identity', {
270
+ method: 'POST',
271
+ token,
272
+ body: { displayName },
273
+ });
274
+ spinner?.stop();
275
+ }
276
+ catch (error) {
277
+ spinner?.fail('Falha ao salvar apelido.');
278
+ handleApiError(error, opts.json);
279
+ return;
280
+ }
281
+ if (opts.json) {
282
+ console.log(JSON.stringify(res));
283
+ return;
284
+ }
285
+ if (opts.quiet)
286
+ return;
287
+ if (res.displayName) {
288
+ log.success(`Apelido definido: ${chalk.bold(res.displayName)} — suas mensagens no chat aparecem com este nome.`);
289
+ }
290
+ else {
291
+ log.success('Apelido limpo — suas mensagens voltam a usar o email.');
292
+ }
293
+ }
294
+ /** Extrai epoch ms do createdAt serializado (Timestamp/ISO/ms). 0 se inválido. */
295
+ function createdAtMs(createdAt) {
296
+ if (!createdAt)
297
+ return 0;
298
+ if (typeof createdAt === 'number')
299
+ return Number.isFinite(createdAt) ? createdAt : 0;
300
+ if (typeof createdAt === 'string') {
301
+ const ms = Date.parse(createdAt);
302
+ return Number.isFinite(ms) ? ms : 0;
303
+ }
304
+ if (typeof createdAt === 'object') {
305
+ const o = createdAt;
306
+ if (typeof o._seconds === 'number')
307
+ return o._seconds * 1000;
308
+ if (typeof o.seconds === 'number')
309
+ return o.seconds * 1000;
310
+ if (typeof o.toMillis === 'function') {
311
+ try {
312
+ return o.toMillis();
313
+ }
314
+ catch {
315
+ return 0;
316
+ }
317
+ }
318
+ }
319
+ return 0;
320
+ }
230
321
  export async function runChatHistory(opts) {
231
322
  const productSlug = opts.product?.trim();
232
323
  // DEFAULT = canal global (igual ao send): `neetru chat history` sem flags
@@ -236,16 +327,30 @@ export async function runChatHistory(opts) {
236
327
  const sinceHours = Math.min(Math.max(Number(opts.hours ?? '24'), 1), 24);
237
328
  const token = await requireToken(opts.json);
238
329
  const label = channelId ? `canal ${channelId}` : `produto ${productSlug}`;
239
- const buildQs = (hours) => {
240
- const qs = new URLSearchParams({ sinceHours: String(hours) });
330
+ // Cursor explícito (--since): epoch ms OU ISO. Quando setado, o servidor
331
+ // devolve createdAt > since (ignora a janela em horas).
332
+ let initialSinceMs;
333
+ if (opts.since) {
334
+ const asNum = Number(opts.since);
335
+ const parsed = Number.isFinite(asNum) && opts.since.trim() !== '' ? asNum : Date.parse(opts.since);
336
+ if (Number.isFinite(parsed))
337
+ initialSinceMs = parsed;
338
+ }
339
+ const buildQs = (hours, sinceMs) => {
340
+ const qs = new URLSearchParams();
341
+ // `since` (cursor preciso) tem precedência sobre `sinceHours` (janela).
342
+ if (typeof sinceMs === 'number')
343
+ qs.set('since', String(sinceMs));
344
+ else
345
+ qs.set('sinceHours', String(hours));
241
346
  if (channelId)
242
347
  qs.set('channelId', channelId);
243
348
  else
244
349
  qs.set('productSlug', productSlug);
245
350
  return qs.toString();
246
351
  };
247
- const fetchMsgs = async (hours) => {
248
- const res = await apiRequest(`/api/cli/v1/chat?${buildQs(hours)}`, { token });
352
+ const fetchMsgs = async (hours, sinceMs) => {
353
+ const res = await apiRequest(`/api/cli/v1/chat?${buildQs(hours, sinceMs)}`, { token });
249
354
  return res.messages ?? [];
250
355
  };
251
356
  // ── Modo --follow: stream contínuo (tipo tail -f). Ideal pra IAs/agents: ──
@@ -257,25 +362,40 @@ export async function runChatHistory(opts) {
257
362
  if (!opts.json) {
258
363
  console.log(chalk.bold(`\nStream — ${label} (atualiza a cada ${Math.round(intervalMs / 1000)}s · Ctrl-C encerra)\n`));
259
364
  }
260
- // Leitura inicial: marca o passado como visto (em --json NÃO reemite histórico).
365
+ // Cursor (watermark): avança pro maior createdAt visto poll incremental
366
+ // via ?since=. Começa no --since explícito; senão 0 (1ª leitura usa janela h).
367
+ let cursorMs = initialSinceMs ?? 0;
368
+ // Leitura inicial. SEM --since: marca o passado recente como visto e NÃO
369
+ // reemite (em --json, ZERO backlog — só novas daqui pra frente). COM --since:
370
+ // emite o que veio desde o cursor (o usuário pediu), inclusive em --json.
261
371
  try {
262
- const initial = await fetchMsgs(sinceHours);
372
+ const initial = await fetchMsgs(sinceHours, initialSinceMs);
263
373
  for (const m of initial) {
264
374
  seen.add(m.id);
265
- if (!opts.json)
375
+ cursorMs = Math.max(cursorMs, createdAtMs(m.createdAt));
376
+ if (initialSinceMs !== undefined) {
377
+ if (opts.json)
378
+ process.stdout.write(JSON.stringify(m) + '\n');
379
+ else
380
+ printMessage(m);
381
+ }
382
+ else if (!opts.json) {
266
383
  printMessage(m);
384
+ }
267
385
  }
268
386
  }
269
387
  catch (error) {
270
388
  handleApiError(error, opts.json);
271
389
  return;
272
390
  }
273
- // Loop de poll — emite só mensagens novas (dedup por id).
391
+ // Loop de poll — só mensagens novas via cursor (?since) + dedup por id;
392
+ // overlap de 2s pra não perder msgs do mesmo segundo. Sem cursor ainda
393
+ // (canal vazio na 1ª leitura), cai na janela curta de 1h.
274
394
  for (;;) {
275
395
  await new Promise((r) => setTimeout(r, intervalMs));
276
396
  let msgs;
277
397
  try {
278
- msgs = await fetchMsgs(1); // janela curta no follow
398
+ msgs = cursorMs > 0 ? await fetchMsgs(1, Math.max(0, cursorMs - 2000)) : await fetchMsgs(1);
279
399
  }
280
400
  catch {
281
401
  continue; // transitório — tenta de novo
@@ -284,6 +404,7 @@ export async function runChatHistory(opts) {
284
404
  if (seen.has(m.id))
285
405
  continue;
286
406
  seen.add(m.id);
407
+ cursorMs = Math.max(cursorMs, createdAtMs(m.createdAt));
287
408
  if (opts.json)
288
409
  process.stdout.write(JSON.stringify(m) + '\n');
289
410
  else
@@ -297,7 +418,7 @@ export async function runChatHistory(opts) {
297
418
  const spinner = opts.json ? null : ora({ text: 'Buscando histórico…', color: 'blue' }).start();
298
419
  let messages;
299
420
  try {
300
- messages = await fetchMsgs(sinceHours);
421
+ messages = await fetchMsgs(sinceHours, initialSinceMs);
301
422
  spinner?.stop();
302
423
  }
303
424
  catch (error) {
@@ -309,7 +430,8 @@ export async function runChatHistory(opts) {
309
430
  console.log(JSON.stringify({ ok: true, count: messages.length, messages }));
310
431
  return;
311
432
  }
312
- console.log(chalk.bold(`\nHistórico ${label} (últimas ${sinceHours}h · ${messages.length} msg)\n`));
433
+ const janela = initialSinceMs !== undefined ? 'desde o cursor --since' : `últimas ${sinceHours}h`;
434
+ console.log(chalk.bold(`\nHistórico — ${label} (${janela} · ${messages.length} msg)\n`));
313
435
  if (messages.length === 0) {
314
436
  log.dim('Nenhuma mensagem no período.');
315
437
  return;
@@ -476,6 +598,16 @@ export function registerChatCommand(program) {
476
598
  .action(async (id, cmdOpts) => {
477
599
  await runChatChannelClose(id, { json: !!cmdOpts.json });
478
600
  });
601
+ // ── chat identity (CH3) ─────────────────────────────────────────────────────
602
+ // Apelido inerente à credencial: a IA se identifica em nome do dev dono do token.
603
+ chatCmd
604
+ .command('identity [apelido]')
605
+ .alias('apelido')
606
+ .description('Ver/definir o apelido da credencial no chat (persiste por token). Vazio limpa. CH3.')
607
+ .option('--json', 'saída em JSON')
608
+ .action(async (apelido, cmdOpts) => {
609
+ await runChatIdentity(apelido, { json: !!cmdOpts.json });
610
+ });
479
611
  // ── chat send ──────────────────────────────────────────────────────────────
480
612
  // Mensagem pode vir como argumento posicional OU via --mensagem/--message.
481
613
  // Sem --channel/--product, vai pro canal GLOBAL (default). Exemplos:
@@ -492,18 +624,23 @@ export function registerChatCommand(program) {
492
624
  .option('--product <slug>', 'slug do produto — legado (retrocompat)')
493
625
  .option('--actor-type <tipo>', 'tipo do ator: cli|human|agent_claude (default: cli)', 'cli')
494
626
  .option('--product-id <id>', 'id interno do produto (opcional, legado)')
627
+ .option('--as <apelido>', 'definir o apelido da credencial antes de enviar (persiste — CH3)')
495
628
  .option('--json', 'saída em JSON')
496
629
  .action(async (mensagem, cmdOpts, command) => {
497
630
  // bug_71f42072: mesma colisão de --channel/--canal/--product entre o pai
498
631
  // `chat` e o subcomando. Prefere o subcomando, cai no pai.
499
632
  const parent = command?.parent?.opts?.() ?? {};
633
+ // CH3: --as persiste o apelido na credencial antes de postar (quiet).
634
+ if (typeof cmdOpts.as === 'string') {
635
+ await runChatIdentity(cmdOpts.as, { quiet: true, json: !!(cmdOpts.json || parent.json) });
636
+ }
500
637
  const msg = (mensagem ?? cmdOpts.message ?? cmdOpts.mensagem ?? '').toString();
501
638
  await runChatSend(msg, {
502
639
  channel: cmdOpts.channel ?? cmdOpts.canal ?? parent.channel ?? parent.canal,
503
640
  product: cmdOpts.product ?? parent.product,
504
641
  actorType: cmdOpts.actorType,
505
642
  productId: cmdOpts.productId,
506
- json: !!cmdOpts.json,
643
+ json: !!(cmdOpts.json || parent.json),
507
644
  });
508
645
  });
509
646
  // ── chat history ───────────────────────────────────────────────────────────
@@ -514,6 +651,7 @@ export function registerChatCommand(program) {
514
651
  .option('--canal <id>', 'apelido PT-BR de --channel')
515
652
  .option('--product <slug>', 'slug do produto — legado (retrocompat)')
516
653
  .option('--hours <n>', 'janela de histórico em horas (1–24, default: 24)', '24')
654
+ .option('--since <ts>', 'cursor incremental (epoch ms OU ISO) — busca SÓ msgs após esse ponto (monitor limpo)')
517
655
  .option('--follow', 'STREAM contínuo: emite mensagens novas conforme chegam (Ctrl-C encerra)')
518
656
  .option('--stream', 'apelido de --follow')
519
657
  .option('--watch', 'apelido de --follow')
@@ -521,19 +659,20 @@ export function registerChatCommand(program) {
521
659
  .option('--json', 'saída em JSON (com --follow: NDJSON, 1 msg nova por linha)')
522
660
  .action(async (cmdOpts, command) => {
523
661
  // bug_71f42072: o comando-pai `chat` E o subcomando `history` declaram
524
- // --channel/--canal/--product. O Commander roteia o flag pro PAI, deixando
525
- // cmdOpts.channel UNDEFINED no subcomando → caía no default 'global',
526
- // IGNORANDO o canal pedido. Fix: prefere o valor do subcomando e cai no
527
- // do pai (command.parent.opts()) robusto independente de onde o Commander
528
- // colocou o valor.
662
+ // --channel/--canal/--product/--json. O Commander pode rotear o flag pro
663
+ // PAI, deixando cmdOpts.<flag> UNDEFINED no subcomando → caía no default.
664
+ // Fix: prefere o valor do subcomando e cai no do pai (command.parent.opts()).
665
+ // O --json sofria a MESMA colisão (sintoma do pdv: `--follow --json` ignorava
666
+ // o --json → saía texto + despejava backlog). Agora cai no parent.json também.
529
667
  const parent = command?.parent?.opts?.() ?? {};
530
668
  await runChatHistory({
531
669
  channel: cmdOpts.channel ?? cmdOpts.canal ?? parent.channel ?? parent.canal,
532
670
  product: cmdOpts.product ?? parent.product,
533
671
  hours: cmdOpts.hours,
672
+ since: cmdOpts.since,
534
673
  follow: !!(cmdOpts.follow || cmdOpts.stream || cmdOpts.watch),
535
674
  interval: cmdOpts.interval,
536
- json: !!cmdOpts.json,
675
+ json: !!(cmdOpts.json || parent.json),
537
676
  });
538
677
  });
539
678
  }
@@ -1 +1 @@
1
- {"version":3,"file":"chat.js","sourceRoot":"","sources":["../../src/commands/chat.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chat.js","sourceRoot":"","sources":["../../src/commands/chat.ts"],"names":[],"mappings":"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"}
@@ -132,3 +132,34 @@ export interface DbMigrationsCancelOptions {
132
132
  * Roles: admin ou operator.
133
133
  */
134
134
  export declare function runDbMigrationsCancel(migrationId: string, opts?: DbMigrationsCancelOptions): Promise<void>;
135
+ export interface DbMigrationsShowOptions {
136
+ json?: boolean;
137
+ }
138
+ /**
139
+ * Detalha UMA migração (GET /api/cli/v1/db/migrations/[id]) — status,
140
+ * classificação POR-STATEMENT, error, redundantOf e ponteiros do apply via
141
+ * agente. Resolve a cegueira de "onde/por quê parou" (antes só havia `list`).
142
+ *
143
+ * Roles: admin ou operator (leitura).
144
+ */
145
+ export declare function runDbMigrationsShow(migrationId: string, opts?: DbMigrationsShowOptions): Promise<void>;
146
+ export interface DbMigrationsResolveOptions {
147
+ /** Atestar manualmente quando não há prova de redundância por hash. */
148
+ force?: boolean;
149
+ /** Código TOTP step-up — obrigatório com --force. */
150
+ mfa?: string;
151
+ json?: boolean;
152
+ }
153
+ /**
154
+ * Destrava uma migração presa em `partially_applied`/`failed` quando ela é
155
+ * REDUNDANTE (o DDL já está no banco). POST /api/cli/v1/db/migrations/[id]/resolve.
156
+ *
157
+ * Dois caminhos:
158
+ * - SEM --force (admin|operator): prova por hash — só resolve se houver outra
159
+ * migração `applied` com o MESMO hash neste banco (evidência determinística).
160
+ * - COM --force (admin + MFA): atestação manual — o admin verificou o estado
161
+ * real do banco (SELECT) e atesta que o schema já está correto.
162
+ *
163
+ * Caso pdv mig #9: re-gerado com a schema do #8 já applied → CREATE TYPE colidiu.
164
+ */
165
+ export declare function runDbMigrationsResolve(migrationId: string, opts?: DbMigrationsResolveOptions): Promise<void>;