@useinvio/nfse-sdk 3.1.0 → 3.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (95) hide show
  1. package/CHANGELOG.md +176 -0
  2. package/README.en.md +146 -0
  3. package/README.md +76 -576
  4. package/dist/agent.d.ts +46 -1
  5. package/dist/agent.js +320 -4
  6. package/dist/agent.js.map +1 -1
  7. package/dist/cli.d.ts +2 -0
  8. package/dist/cli.js +520 -0
  9. package/dist/cli.js.map +1 -0
  10. package/dist/cliBin.d.ts +2 -0
  11. package/dist/cliBin.js +6 -0
  12. package/dist/cliBin.js.map +1 -0
  13. package/dist/cliExample.d.ts +6 -0
  14. package/dist/cliExample.js +29 -0
  15. package/dist/cliExample.js.map +1 -0
  16. package/dist/client.d.ts +47 -2
  17. package/dist/client.js +36 -6
  18. package/dist/client.js.map +1 -1
  19. package/dist/config.d.ts +3 -0
  20. package/dist/config.js +8 -0
  21. package/dist/config.js.map +1 -1
  22. package/dist/consultas.d.ts +34 -0
  23. package/dist/consultas.js +61 -0
  24. package/dist/consultas.js.map +1 -0
  25. package/dist/dpsJson.js +1 -41
  26. package/dist/dpsJson.js.map +1 -1
  27. package/dist/emissaoNota.d.ts +8 -3
  28. package/dist/emissaoNota.js +6 -3
  29. package/dist/emissaoNota.js.map +1 -1
  30. package/dist/eventoJson.d.ts +76 -0
  31. package/dist/eventoJson.js +128 -0
  32. package/dist/eventoJson.js.map +1 -0
  33. package/dist/eventosNfse.d.ts +38 -0
  34. package/dist/eventosNfse.js +73 -0
  35. package/dist/eventosNfse.js.map +1 -0
  36. package/dist/gzipB64.d.ts +5 -0
  37. package/dist/gzipB64.js +12 -0
  38. package/dist/gzipB64.js.map +1 -1
  39. package/dist/index.d.ts +17 -7
  40. package/dist/index.js +9 -4
  41. package/dist/index.js.map +1 -1
  42. package/dist/mcpCli.d.ts +2 -0
  43. package/dist/mcpCli.js +7 -0
  44. package/dist/mcpCli.js.map +1 -0
  45. package/dist/mcpServer.d.ts +49 -0
  46. package/dist/mcpServer.js +159 -0
  47. package/dist/mcpServer.js.map +1 -0
  48. package/dist/nfseXml.d.ts +48 -0
  49. package/dist/nfseXml.js +86 -0
  50. package/dist/nfseXml.js.map +1 -0
  51. package/dist/rejeicoes.d.ts +50 -0
  52. package/dist/rejeicoes.js +62 -0
  53. package/dist/rejeicoes.js.map +1 -0
  54. package/dist/rejeicoesCatalog.d.ts +10 -0
  55. package/dist/rejeicoesCatalog.js +4449 -0
  56. package/dist/rejeicoesCatalog.js.map +1 -0
  57. package/dist/sefinClient.d.ts +100 -6
  58. package/dist/sefinClient.js +211 -19
  59. package/dist/sefinClient.js.map +1 -1
  60. package/dist/signXml.js +9 -1
  61. package/dist/signXml.js.map +1 -1
  62. package/dist/testing.d.ts +80 -0
  63. package/dist/testing.js +285 -0
  64. package/dist/testing.js.map +1 -0
  65. package/dist/xmlBuild.d.ts +11 -0
  66. package/dist/xmlBuild.js +44 -0
  67. package/dist/xmlBuild.js.map +1 -0
  68. package/dist/xmlInspection.d.ts +1 -1
  69. package/dist/xmlInspection.js.map +1 -1
  70. package/dist/xsdValidation.d.ts +7 -0
  71. package/dist/xsdValidation.js +37 -15
  72. package/dist/xsdValidation.js.map +1 -1
  73. package/docs/README.md +47 -0
  74. package/docs/REGRAS_NEGOCIO_EMISSAO.md +8 -8
  75. package/docs/conceitos/como-funciona.md +87 -0
  76. package/docs/guias/adn.md +51 -0
  77. package/docs/guias/agentes-ia.md +111 -0
  78. package/docs/guias/cancelar.md +70 -0
  79. package/docs/guias/certificado.md +88 -0
  80. package/docs/guias/cli.md +68 -0
  81. package/docs/guias/consultar.md +54 -0
  82. package/docs/guias/emitir.md +172 -0
  83. package/docs/guias/recuperar-emissao.md +33 -0
  84. package/docs/guias/rejeicoes.md +70 -0
  85. package/docs/guias/testes.md +79 -0
  86. package/docs/guias/timeouts.md +33 -0
  87. package/docs/referencia/ambientes.md +35 -0
  88. package/docs/referencia/api.md +137 -0
  89. package/docs/referencia/erros.md +55 -0
  90. package/docs/tutoriais/primeira-nfse.md +130 -0
  91. package/examples/README.md +2 -0
  92. package/examples/cancel-nfse.ts +29 -0
  93. package/examples/recover-emission.ts +29 -0
  94. package/llms.txt +97 -92
  95. package/package.json +23 -3
package/dist/agent.d.ts CHANGED
@@ -1,3 +1,5 @@
1
+ import type { NfseResumo } from './nfseXml.js';
2
+ import { type ExplicacaoRejeicao } from './rejeicoes.js';
1
3
  import { type JsonSchema } from './dpsJsonSchema.js';
2
4
  import type { Ambiente } from './config.js';
3
5
  import type { DpsJsonRequest } from './dpsJson.js';
@@ -82,5 +84,48 @@ export declare const DPS_AGENT_REQUEST_SCHEMA: JsonSchema;
82
84
  export declare const validateDpsTool: NfseAgentTool<DpsRequestToolInput, ValidateDpsToolOutput>;
83
85
  export declare const buildDpsXmlTool: NfseAgentTool<DpsRequestToolInput, BuildDpsXmlToolOutput>;
84
86
  export declare const getNfseTool: NfseAgentTool<GetNfseToolInput, GetNfseToolOutput>;
85
- /** All tools, in the order an agent typically needs them. */
87
+ export interface ExplainRejectionToolInput {
88
+ codigos: string[];
89
+ }
90
+ export interface ExplainRejectionToolOutput {
91
+ explicacoes: ExplicacaoRejeicao[];
92
+ }
93
+ export declare const explainRejectionTool: NfseAgentTool<ExplainRejectionToolInput, ExplainRejectionToolOutput>;
94
+ export interface RecoverNfseToolInput {
95
+ dpsId: string;
96
+ }
97
+ export interface RecoverNfseToolOutput {
98
+ ok: boolean;
99
+ ambiente: Ambiente;
100
+ dpsId: string;
101
+ /** True when SEFIN has an NFS-e for this DPS. */
102
+ encontrada?: boolean;
103
+ chaveAcesso?: string;
104
+ resumo?: NfseResumo;
105
+ issues: NfseAgentIssue[];
106
+ }
107
+ export declare const recoverNfseByDpsTool: NfseAgentTool<RecoverNfseToolInput, RecoverNfseToolOutput>;
108
+ /** Read-only tools: no tool here sends a document to SEFIN. */
86
109
  export declare const nfseAgentTools: readonly NfseAgentTool[];
110
+ export interface NfseAgentToolkitOptions {
111
+ /**
112
+ * Enables `prepare_*` / `confirm_*` tools that emit and cancel NFS-e. Off by
113
+ * default. Even when enabled, nothing is sent until the model calls
114
+ * `confirm_*` with the id returned by `prepare_*`, which the model must only
115
+ * do after the user approves the summary.
116
+ */
117
+ allowWrite?: boolean;
118
+ /** How long a prepared emission/cancellation can be confirmed. Default: 10 minutes. */
119
+ confirmationTtlMs?: number;
120
+ }
121
+ export interface NfseAgentToolkit {
122
+ tools: readonly NfseAgentTool[];
123
+ /** Number of prepared operations still waiting for confirmation. */
124
+ pendingCount(): number;
125
+ }
126
+ /**
127
+ * Builds the tool list for an agent session. Read-only tools are always
128
+ * included; emission and cancellation are added only with `allowWrite: true`
129
+ * and always take two steps (prepare, then confirm after user approval).
130
+ */
131
+ export declare function createNfseAgentToolkit(options?: NfseAgentToolkitOptions): NfseAgentToolkit;
package/dist/agent.js CHANGED
@@ -7,7 +7,14 @@
7
7
  * configuration passed in `NfseAgentContext`, never tool input, so a model
8
8
  * cannot select production or see key material.
9
9
  */
10
+ import { randomUUID } from 'node:crypto';
10
11
  import { CertificateValidationError } from './certificateValidation.js';
12
+ import { NfseCertificate } from './certificate.js';
13
+ import { ConsultaNfseError, obterNfse, recuperarNfsePorDps } from './consultas.js';
14
+ import { prepararNota, transmitirNotaPreparada } from './emissaoNota.js';
15
+ import { buildCancelamentoFromJson, EventoInvalidoError } from './eventoJson.js';
16
+ import { registrarEvento, RegistrarEventoError } from './eventosNfse.js';
17
+ import { explicarRejeicao } from './rejeicoes.js';
11
18
  import { DEFAULT_AMBIENTE } from './config.js';
12
19
  import { buildDpsFromJson } from './dpsJson.js';
13
20
  import { DPS_JSON_REQUEST_SCHEMA } from './dpsJsonSchema.js';
@@ -23,13 +30,19 @@ function fromValidationIssue(issue) {
23
30
  }
24
31
  function sefinIssue(erro) {
25
32
  const authorization = erro.Codigo === 'INVALID_AUTHORIZATION_RESPONSE';
33
+ const official = authorization ? undefined : explicarRejeicao(erro);
34
+ const suggestion = authorization
35
+ ? 'Consulte a nota pela chave ou concilie a DPS antes de reenviar.'
36
+ : official?.conhecida
37
+ ? [official.campo && `Campo: ${official.campo}.`, official.regra && `Regra oficial: ${official.regra.slice(0, 300)}`].filter(Boolean).join(' ')
38
+ : undefined;
26
39
  return {
27
40
  code: erro.Codigo,
28
41
  path: '$',
29
42
  severity: 'error',
30
43
  source: authorization ? 'sdk' : 'sefin',
31
44
  message: erro.Complemento ? `${erro.Descricao} (${erro.Complemento})` : erro.Descricao,
32
- ...(authorization ? { suggestion: 'Consulte a nota pela chave ou concilie a DPS antes de reenviar.' } : {}),
45
+ ...(suggestion ? { suggestion } : {}),
33
46
  };
34
47
  }
35
48
  /**
@@ -45,10 +58,13 @@ export function toAgentIssues(error) {
45
58
  if (error instanceof CertificateValidationError) {
46
59
  return [{ code: error.code, path: '$', severity: 'error', source: 'certificate', message: error.message }];
47
60
  }
48
- if (error instanceof EmitirNotaError) {
61
+ if (error instanceof EmitirNotaError || error instanceof RegistrarEventoError || error instanceof ConsultaNfseError) {
49
62
  const issues = error.erros.map(sefinIssue);
50
63
  return issues.length ? issues : [{ code: 'SEFIN_REJECTED', path: '$', severity: 'error', source: 'sefin', message: error.message }];
51
64
  }
65
+ if (error instanceof EventoInvalidoError) {
66
+ return [{ code: error.code, path: error.field, severity: 'error', source: 'sdk', message: error.message }];
67
+ }
52
68
  return undefined;
53
69
  }
54
70
  function resolveAmbiente(context) {
@@ -230,6 +246,306 @@ export const getNfseTool = {
230
246
  return { ok: true, ambiente, chaveAcesso, status, ...(nfseXml ? { nfseXml } : {}), body: rest, issues: [] };
231
247
  },
232
248
  };
233
- /** All tools, in the order an agent typically needs them. */
234
- export const nfseAgentTools = [validateDpsTool, buildDpsXmlTool, getNfseTool];
249
+ export const explainRejectionTool = {
250
+ name: 'explain_rejection',
251
+ title: 'Explicar codigo de rejeicao da SEFIN',
252
+ description: 'Explica codigos de rejeicao da NFS-e Nacional (ex.: E0014) com a mensagem, a regra e o campo oficiais, ' +
253
+ 'extraidos dos anexos publicados em gov.br/nfse. Sem rede e sem certificado. Use apos uma rejeicao para ' +
254
+ 'explicar ao usuario o que corrigir. Se conhecida=false, o codigo nao esta no catalogo: nao invente uma causa.',
255
+ inputSchema: {
256
+ type: 'object',
257
+ properties: {
258
+ codigos: {
259
+ type: 'array',
260
+ items: { type: 'string', pattern: '^[Ee]?\\d{4}$|^[A-Z_]+$' },
261
+ description: 'De 1 a 20 codigos retornados pela SEFIN, ex.: ["E0014"].',
262
+ },
263
+ },
264
+ required: ['codigos'],
265
+ additionalProperties: false,
266
+ },
267
+ outputSchema: {
268
+ type: 'object',
269
+ properties: { explicacoes: { type: 'array', items: { type: 'object' } } },
270
+ required: ['explicacoes'],
271
+ additionalProperties: false,
272
+ },
273
+ annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: false },
274
+ requiresCertificate: false,
275
+ async run(input) {
276
+ const codigos = Array.isArray(input?.codigos) ? input.codigos.slice(0, 20) : [];
277
+ return { explicacoes: codigos.map((codigo) => explicarRejeicao(String(codigo))) };
278
+ },
279
+ };
280
+ function certificateRequired() {
281
+ return { code: 'CERTIFICATE_REQUIRED', path: '$', severity: 'error', source: 'certificate', message: 'O host nao configurou um certificado A1 para falar com a SEFIN.' };
282
+ }
283
+ export const recoverNfseByDpsTool = {
284
+ name: 'recover_nfse_by_dps',
285
+ title: 'Recuperar NFS-e pelo Id da DPS',
286
+ description: 'Descobre se a SEFIN gerou uma NFS-e para um Id de DPS (45 caracteres, "DPS" + 42 digitos). ' +
287
+ 'Use depois de um timeout ou resposta ambigua na emissao, antes de qualquer reenvio. ' +
288
+ 'encontrada=false significa que a DPS nao chegou a SEFIN.',
289
+ inputSchema: {
290
+ type: 'object',
291
+ properties: { dpsId: { type: 'string', pattern: '^DPS\\d{42}$', description: 'Id da DPS.' } },
292
+ required: ['dpsId'],
293
+ additionalProperties: false,
294
+ },
295
+ outputSchema: { type: 'object', properties: { ok: { type: 'boolean' } }, required: ['ok'] },
296
+ annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: true },
297
+ requiresCertificate: true,
298
+ async run(input, context) {
299
+ const ambiente = resolveAmbiente(context);
300
+ const dpsId = String(input?.dpsId ?? '');
301
+ if (!/^DPS\d{42}$/.test(dpsId)) {
302
+ return { ok: false, ambiente, dpsId, issues: [{ code: 'SEFIN_PARAMETER_INVALID', path: 'dpsId', severity: 'error', source: 'sdk', message: 'dpsId deve ser "DPS" seguido de 42 digitos.' }] };
303
+ }
304
+ if (!context?.pfx)
305
+ return { ok: false, ambiente, dpsId, issues: [certificateRequired()] };
306
+ try {
307
+ const nota = await recuperarNfsePorDps(dpsId, context.pfx, ambiente);
308
+ if (!nota)
309
+ return { ok: true, ambiente, dpsId, encontrada: false, issues: [] };
310
+ return { ok: true, ambiente, dpsId, encontrada: true, chaveAcesso: nota.chaveAcesso, resumo: nota.resumo, issues: [] };
311
+ }
312
+ catch (error) {
313
+ const issues = toAgentIssues(error);
314
+ if (!issues)
315
+ throw error;
316
+ return { ok: false, ambiente, dpsId, issues };
317
+ }
318
+ },
319
+ };
320
+ /** Read-only tools: no tool here sends a document to SEFIN. */
321
+ export const nfseAgentTools = [
322
+ validateDpsTool,
323
+ buildDpsXmlTool,
324
+ getNfseTool,
325
+ recoverNfseByDpsTool,
326
+ explainRejectionTool,
327
+ ];
328
+ const CONFIRMATION_ID = { type: 'string', description: 'Id devolvido por prepare_*, valido por poucos minutos e de uso unico.' };
329
+ function emissionSummary(request, nota) {
330
+ const emissao = (request.emissao ?? {});
331
+ const tomador = emissao.tomador;
332
+ return {
333
+ ambiente: nota.ambiente,
334
+ dpsId: nota.dpsId,
335
+ prestador: request.prestador?.cnpj ?? request.prestador?.cpf,
336
+ tomador: tomador ? { documento: tomador.CNPJ ?? tomador.CPF ?? tomador.NIF, nome: tomador.xNome } : undefined,
337
+ servico: { cTribNac: request.servico?.cTribNac, descricao: request.servico?.xDescServ },
338
+ valorServico: emissao.valores?.vServ ?? emissao.vServ,
339
+ competencia: emissao.dCompet,
340
+ serie: emissao.serie ?? request.prestador?.serie,
341
+ nDPS: emissao.nDPS,
342
+ };
343
+ }
344
+ /**
345
+ * Builds the tool list for an agent session. Read-only tools are always
346
+ * included; emission and cancellation are added only with `allowWrite: true`
347
+ * and always take two steps (prepare, then confirm after user approval).
348
+ */
349
+ export function createNfseAgentToolkit(options = {}) {
350
+ const ttl = options.confirmationTtlMs ?? 10 * 60_000;
351
+ const pending = new Map();
352
+ const sweep = () => {
353
+ const now = Date.now();
354
+ for (const [id, entry] of pending)
355
+ if (entry.expiresAt <= now)
356
+ pending.delete(id);
357
+ };
358
+ const confirmationText = (ambiente) => `Mostre este resumo ao usuario e so chame o confirm com o confirmationId depois de uma aprovacao explicita. ` +
359
+ `Ambiente: ${ambiente === 'producao' ? 'PRODUCAO (nota com validade juridica)' : 'producao restrita (teste, sem validade juridica)'}.`;
360
+ const prepareEmission = {
361
+ name: 'prepare_nfse_emission',
362
+ title: 'Preparar emissao de NFS-e',
363
+ description: 'Valida, monta e assina a DPS SEM enviar. Retorna um resumo e um confirmationId. Mostre o resumo ao usuario ' +
364
+ 'e chame confirm_nfse_emission somente depois que ele aprovar explicitamente. Nunca confirme por conta propria.',
365
+ inputSchema: DPS_REQUEST_INPUT_SCHEMA,
366
+ outputSchema: { type: 'object', properties: { ok: { type: 'boolean' } }, required: ['ok'] },
367
+ annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: false, openWorldHint: false },
368
+ requiresCertificate: true,
369
+ async run(input, context) {
370
+ sweep();
371
+ const { ambiente, issues, warnings, request } = validateForAgent(input, context);
372
+ if (issues.length)
373
+ return { ok: false, ambiente, issues, warnings };
374
+ if (!context?.pfx)
375
+ return { ok: false, ambiente, issues: [certificateRequired()], warnings };
376
+ try {
377
+ const nota = prepararNota(request, context.pfx);
378
+ const confirmationId = randomUUID();
379
+ const expiresAt = Date.now() + ttl;
380
+ pending.set(confirmationId, { kind: 'emission', nota, attempted: false, expiresAt });
381
+ return {
382
+ ok: true,
383
+ confirmationId,
384
+ expiresAt: new Date(expiresAt).toISOString(),
385
+ resumo: emissionSummary(request, nota),
386
+ warnings,
387
+ instrucoes: confirmationText(ambiente),
388
+ };
389
+ }
390
+ catch (error) {
391
+ const mapped = toAgentIssues(error);
392
+ if (!mapped)
393
+ throw error;
394
+ return { ok: false, ambiente, issues: mapped, warnings };
395
+ }
396
+ },
397
+ };
398
+ const confirmEmission = {
399
+ name: 'confirm_nfse_emission',
400
+ title: 'Confirmar emissao de NFS-e',
401
+ description: 'Transmite a DPS preparada por prepare_nfse_emission. Chame SOMENTE depois que o usuario aprovar o resumo. ' +
402
+ 'Se a conexao falhar, o SDK consulta a DPS antes de qualquer reenvio, entao repetir a confirmacao nao duplica a nota.',
403
+ inputSchema: { type: 'object', properties: { confirmationId: CONFIRMATION_ID }, required: ['confirmationId'], additionalProperties: false },
404
+ outputSchema: { type: 'object', properties: { ok: { type: 'boolean' } }, required: ['ok'] },
405
+ annotations: { readOnlyHint: false, destructiveHint: true, idempotentHint: false, openWorldHint: true },
406
+ requiresCertificate: true,
407
+ async run(input, context) {
408
+ sweep();
409
+ const id = String(input?.confirmationId ?? '');
410
+ const entry = pending.get(id);
411
+ if (!entry || entry.kind !== 'emission') {
412
+ return { ok: false, issues: [{ code: 'CONFIRMATION_NOT_FOUND', path: 'confirmationId', severity: 'error', source: 'sdk', message: 'confirmationId desconhecido, ja usado ou expirado. Prepare a emissao novamente.' }] };
413
+ }
414
+ if (!context?.pfx)
415
+ return { ok: false, issues: [certificateRequired()] };
416
+ const { nota } = entry;
417
+ if (entry.attempted) {
418
+ // A previous attempt failed without an answer: never resend before asking SEFIN.
419
+ const existing = await recuperarNfsePorDps(nota.dpsId, context.pfx, nota.ambiente);
420
+ if (existing) {
421
+ pending.delete(id);
422
+ return { ok: true, recuperada: true, chaveAcesso: existing.chaveAcesso, dpsId: nota.dpsId, resumo: existing.resumo };
423
+ }
424
+ }
425
+ entry.attempted = true;
426
+ try {
427
+ const result = await transmitirNotaPreparada(nota, context.pfx);
428
+ pending.delete(id);
429
+ return { ok: true, chaveAcesso: result.chaveAcesso, dpsId: result.dpsId, ambiente: nota.ambiente };
430
+ }
431
+ catch (error) {
432
+ const mapped = toAgentIssues(error);
433
+ if (mapped) {
434
+ const incerta = mapped.some((issue) => issue.code === 'INVALID_AUTHORIZATION_RESPONSE');
435
+ if (!incerta)
436
+ pending.delete(id);
437
+ return { ok: false, dpsId: nota.dpsId, issues: mapped };
438
+ }
439
+ return {
440
+ ok: false,
441
+ dpsId: nota.dpsId,
442
+ resultadoIncerto: true,
443
+ issues: [{
444
+ code: 'TRANSMISSION_UNCERTAIN',
445
+ path: '$',
446
+ severity: 'error',
447
+ source: 'sdk',
448
+ message: `Falha de comunicacao com a SEFIN: ${error instanceof Error ? error.message : String(error)}`,
449
+ suggestion: 'Chame confirm_nfse_emission de novo com o mesmo confirmationId: o SDK consulta a DPS antes de reenviar.',
450
+ }],
451
+ };
452
+ }
453
+ },
454
+ };
455
+ const prepareCancellation = {
456
+ name: 'prepare_nfse_cancellation',
457
+ title: 'Preparar cancelamento de NFS-e',
458
+ description: 'Monta e valida o pedido de cancelamento (evento e101101) SEM enviar e mostra a nota que sera cancelada. ' +
459
+ 'cMotivo: 1 = erro na emissao, 2 = servico nao prestado, 9 = outros. xMotivo: 15 a 255 caracteres. ' +
460
+ 'Chame confirm_nfse_cancellation somente apos aprovacao explicita do usuario.',
461
+ inputSchema: {
462
+ type: 'object',
463
+ properties: {
464
+ chaveAcesso: { type: 'string', pattern: '^\\d{50}$' },
465
+ cMotivo: { type: 'string', enum: ['1', '2', '9'] },
466
+ xMotivo: { type: 'string', minLength: 15, maxLength: 255 },
467
+ },
468
+ required: ['chaveAcesso', 'cMotivo', 'xMotivo'],
469
+ additionalProperties: false,
470
+ },
471
+ outputSchema: { type: 'object', properties: { ok: { type: 'boolean' } }, required: ['ok'] },
472
+ annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: false, openWorldHint: true },
473
+ requiresCertificate: true,
474
+ async run(input, context) {
475
+ sweep();
476
+ const ambiente = resolveAmbiente(context);
477
+ if (!context?.pfx)
478
+ return { ok: false, ambiente, issues: [certificateRequired()] };
479
+ const pfx = context.pfx;
480
+ const autor = pfx instanceof NfseCertificate && (pfx.cnpj || pfx.cpf) ? (pfx.cnpj ? { CNPJ: pfx.cnpj } : { CPF: pfx.cpf }) : undefined;
481
+ if (!autor) {
482
+ return { ok: false, ambiente, issues: [{ code: 'EVENTO_INVALID', path: 'autor', severity: 'error', source: 'certificate', message: 'O certificado do host nao expoe o CNPJ/CPF do titular.' }] };
483
+ }
484
+ try {
485
+ const built = buildCancelamentoFromJson({ ...input, ambiente, autor });
486
+ let nota;
487
+ try {
488
+ nota = (await obterNfse(built.chaveAcesso, pfx, ambiente)).resumo;
489
+ }
490
+ catch (error) {
491
+ const mapped = toAgentIssues(error);
492
+ if (!mapped)
493
+ throw error;
494
+ return { ok: false, ambiente, issues: mapped };
495
+ }
496
+ const confirmationId = randomUUID();
497
+ const expiresAt = Date.now() + ttl;
498
+ pending.set(confirmationId, { kind: 'cancellation', built, expiresAt });
499
+ return {
500
+ ok: true,
501
+ confirmationId,
502
+ expiresAt: new Date(expiresAt).toISOString(),
503
+ nota: { chaveAcesso: nota.chaveAcesso, nNFSe: nota.nNFSe, tomador: nota.tomador, valorLiquido: nota.valores.vLiq, competencia: nota.dps.dCompet },
504
+ motivo: { cMotivo: input.cMotivo, xMotivo: input.xMotivo },
505
+ instrucoes: confirmationText(ambiente),
506
+ };
507
+ }
508
+ catch (error) {
509
+ const mapped = toAgentIssues(error);
510
+ if (!mapped)
511
+ throw error;
512
+ return { ok: false, ambiente, issues: mapped };
513
+ }
514
+ },
515
+ };
516
+ const confirmCancellation = {
517
+ name: 'confirm_nfse_cancellation',
518
+ title: 'Confirmar cancelamento de NFS-e',
519
+ description: 'Envia o cancelamento preparado por prepare_nfse_cancellation. Chame SOMENTE depois que o usuario aprovar.',
520
+ inputSchema: { type: 'object', properties: { confirmationId: CONFIRMATION_ID }, required: ['confirmationId'], additionalProperties: false },
521
+ outputSchema: { type: 'object', properties: { ok: { type: 'boolean' } }, required: ['ok'] },
522
+ annotations: { readOnlyHint: false, destructiveHint: true, idempotentHint: false, openWorldHint: true },
523
+ requiresCertificate: true,
524
+ async run(input, context) {
525
+ sweep();
526
+ const id = String(input?.confirmationId ?? '');
527
+ const entry = pending.get(id);
528
+ if (!entry || entry.kind !== 'cancellation') {
529
+ return { ok: false, issues: [{ code: 'CONFIRMATION_NOT_FOUND', path: 'confirmationId', severity: 'error', source: 'sdk', message: 'confirmationId desconhecido, ja usado ou expirado. Prepare o cancelamento novamente.' }] };
530
+ }
531
+ if (!context?.pfx)
532
+ return { ok: false, issues: [certificateRequired()] };
533
+ pending.delete(id);
534
+ try {
535
+ const result = await registrarEvento(entry.built, context.pfx);
536
+ return { ok: true, chaveAcesso: result.chaveAcesso, pedRegEventoId: result.pedRegEventoId };
537
+ }
538
+ catch (error) {
539
+ const mapped = toAgentIssues(error);
540
+ if (!mapped)
541
+ throw error;
542
+ return { ok: false, chaveAcesso: entry.built.chaveAcesso, issues: mapped };
543
+ }
544
+ },
545
+ };
546
+ const tools = options.allowWrite
547
+ ? [...nfseAgentTools, prepareEmission, confirmEmission, prepareCancellation, confirmCancellation]
548
+ : [...nfseAgentTools];
549
+ return { tools, pendingCount: () => (sweep(), pending.size) };
550
+ }
235
551
  //# sourceMappingURL=agent.js.map
package/dist/agent.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"agent.js","sourceRoot":"","sources":["../agent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent.js","sourceRoot":"","sources":["../agent.ts"],"names":[],"mappings":"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"}
package/dist/cli.d.ts ADDED
@@ -0,0 +1,2 @@
1
+ /** Entry point; exported for tests. Returns the process exit code. */
2
+ export declare function runCli(argv: string[]): Promise<number>;