@semacode/cli 1.5.30 → 1.5.32

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 (176) hide show
  1. package/AGENTS.md +294 -0
  2. package/AGENT_CONTEXT_PACK.json +164 -0
  3. package/LICENSE +22 -0
  4. package/README.md +85 -144
  5. package/SEMA_BRIEF.curto.txt +11 -0
  6. package/SEMA_BRIEF.md +616 -0
  7. package/SEMA_BRIEF.micro.txt +9 -0
  8. package/SEMA_INDEX.json +9393 -0
  9. package/dist/billing/index.d.ts +46 -0
  10. package/dist/billing/index.js +143 -0
  11. package/dist/billing/index.js.map +1 -0
  12. package/dist/comandos.js +33 -0
  13. package/dist/comandos.js.map +1 -1
  14. package/dist/controleComercialSupabase.d.ts +7 -0
  15. package/dist/controleComercialSupabase.js +6 -0
  16. package/dist/controleComercialSupabase.js.map +1 -0
  17. package/dist/controleComercialSupabaseAdmin.d.ts +7 -0
  18. package/dist/controleComercialSupabaseAdmin.js +138 -0
  19. package/dist/controleComercialSupabaseAdmin.js.map +1 -0
  20. package/dist/controleComercialSupabaseCadastro.d.ts +4 -0
  21. package/dist/controleComercialSupabaseCadastro.js +85 -0
  22. package/dist/controleComercialSupabaseCadastro.js.map +1 -0
  23. package/dist/controleComercialSupabaseConstantes.d.ts +28 -0
  24. package/dist/controleComercialSupabaseConstantes.js +44 -0
  25. package/dist/controleComercialSupabaseConstantes.js.map +1 -0
  26. package/dist/controleComercialSupabaseConsumo.d.ts +2 -0
  27. package/dist/controleComercialSupabaseConsumo.js +77 -0
  28. package/dist/controleComercialSupabaseConsumo.js.map +1 -0
  29. package/dist/controleComercialSupabaseConta.d.ts +11 -0
  30. package/dist/controleComercialSupabaseConta.js +157 -0
  31. package/dist/controleComercialSupabaseConta.js.map +1 -0
  32. package/dist/controleComercialSupabaseProfiles.d.ts +4 -0
  33. package/dist/controleComercialSupabaseProfiles.js +55 -0
  34. package/dist/controleComercialSupabaseProfiles.js.map +1 -0
  35. package/dist/controleComercialSupabaseTipos.d.ts +3 -0
  36. package/dist/controleComercialSupabaseTipos.js +2 -0
  37. package/dist/controleComercialSupabaseTipos.js.map +1 -0
  38. package/dist/controleComercialSupabaseTiposAdmin.d.ts +152 -0
  39. package/dist/controleComercialSupabaseTiposAdmin.js +2 -0
  40. package/dist/controleComercialSupabaseTiposAdmin.js.map +1 -0
  41. package/dist/controleComercialSupabaseTiposBase.d.ts +169 -0
  42. package/dist/controleComercialSupabaseTiposBase.js +2 -0
  43. package/dist/controleComercialSupabaseTiposBase.js.map +1 -0
  44. package/dist/controleComercialSupabaseTiposConta.d.ts +220 -0
  45. package/dist/controleComercialSupabaseTiposConta.js +2 -0
  46. package/dist/controleComercialSupabaseTiposConta.js.map +1 -0
  47. package/dist/dev/index.d.ts +18 -0
  48. package/dist/dev/index.js +143 -0
  49. package/dist/dev/index.js.map +1 -0
  50. package/dist/index.js +222 -46
  51. package/dist/index.js.map +1 -1
  52. package/dist/init/index.d.ts +23 -0
  53. package/dist/init/index.js +112 -0
  54. package/dist/init/index.js.map +1 -0
  55. package/dist/init/templates.d.ts +11 -0
  56. package/dist/init/templates.js +660 -0
  57. package/dist/init/templates.js.map +1 -0
  58. package/dist/runnerValidacaoRemota.d.ts +9 -0
  59. package/dist/runnerValidacaoRemota.js +9 -0
  60. package/dist/runnerValidacaoRemota.js.map +1 -0
  61. package/dist/runnerValidacaoRemotaBateria.d.ts +10 -0
  62. package/dist/runnerValidacaoRemotaBateria.js +115 -0
  63. package/dist/runnerValidacaoRemotaBateria.js.map +1 -0
  64. package/dist/runnerValidacaoRemotaCli.d.ts +4 -0
  65. package/dist/runnerValidacaoRemotaCli.js +86 -0
  66. package/dist/runnerValidacaoRemotaCli.js.map +1 -0
  67. package/dist/runnerValidacaoRemotaComandos.d.ts +7 -0
  68. package/dist/runnerValidacaoRemotaComandos.js +123 -0
  69. package/dist/runnerValidacaoRemotaComandos.js.map +1 -0
  70. package/dist/runnerValidacaoRemotaEscopo.d.ts +4 -0
  71. package/dist/runnerValidacaoRemotaEscopo.js +79 -0
  72. package/dist/runnerValidacaoRemotaEscopo.js.map +1 -0
  73. package/dist/runnerValidacaoRemotaExecucao.d.ts +2 -0
  74. package/dist/runnerValidacaoRemotaExecucao.js +102 -0
  75. package/dist/runnerValidacaoRemotaExecucao.js.map +1 -0
  76. package/dist/runnerValidacaoRemotaRelatorio.d.ts +3 -0
  77. package/dist/runnerValidacaoRemotaRelatorio.js +93 -0
  78. package/dist/runnerValidacaoRemotaRelatorio.js.map +1 -0
  79. package/dist/runnerValidacaoRemotaServidor.d.ts +3 -0
  80. package/dist/runnerValidacaoRemotaServidor.js +157 -0
  81. package/dist/runnerValidacaoRemotaServidor.js.map +1 -0
  82. package/dist/runnerValidacaoRemotaSnapshot.d.ts +10 -0
  83. package/dist/runnerValidacaoRemotaSnapshot.js +217 -0
  84. package/dist/runnerValidacaoRemotaSnapshot.js.map +1 -0
  85. package/dist/runnerValidacaoRemotaTipos.d.ts +158 -0
  86. package/dist/runnerValidacaoRemotaTipos.js +35 -0
  87. package/dist/runnerValidacaoRemotaTipos.js.map +1 -0
  88. package/dist/runnerValidacaoRemotaUtil.d.ts +3 -0
  89. package/dist/runnerValidacaoRemotaUtil.js +18 -0
  90. package/dist/runnerValidacaoRemotaUtil.js.map +1 -0
  91. package/dist/runnerValidacaoRemotaWorkspace.d.ts +2 -0
  92. package/dist/runnerValidacaoRemotaWorkspace.js +110 -0
  93. package/dist/runnerValidacaoRemotaWorkspace.js.map +1 -0
  94. package/dist/sync/index.d.ts +24 -0
  95. package/dist/sync/index.js +174 -0
  96. package/dist/sync/index.js.map +1 -0
  97. package/docs/AGENT_STARTER.md +109 -0
  98. package/docs/api.md +82 -0
  99. package/docs/cli.md +93 -0
  100. package/docs/como-ensinar-a-sema-para-ia.md +30 -0
  101. package/docs/deploy.md +45 -0
  102. package/docs/documentacao.md +88 -0
  103. package/docs/env.md +115 -0
  104. package/docs/extensao-vscode.md +42 -0
  105. package/docs/fluxo-pratico-ia-sema.md +187 -0
  106. package/docs/instalacao-e-primeiro-uso.md +48 -0
  107. package/docs/integracao-com-ia.md +24 -0
  108. package/docs/mcp.md +48 -0
  109. package/docs/pagamento-ponta-a-ponta.md +171 -0
  110. package/docs/persistencia-vendor-first.md +151 -0
  111. package/docs/prompt-base-ia-sema.md +111 -0
  112. package/docs/repositories.md +69 -0
  113. package/docs/rollback.md +24 -0
  114. package/docs/seguranca.md +126 -0
  115. package/docs/sintaxe.md +218 -0
  116. package/exemplos/profile_conversas.sema +165 -0
  117. package/llms-full.txt +35 -0
  118. package/llms.txt +18 -0
  119. package/node_modules/@sema/gerador-css/package.json +7 -14
  120. package/node_modules/@sema/gerador-dart/package.json +7 -14
  121. package/node_modules/@sema/gerador-html/package.json +7 -14
  122. package/node_modules/@sema/gerador-javascript/package.json +7 -14
  123. package/node_modules/@sema/gerador-lua/package.json +7 -14
  124. package/node_modules/@sema/gerador-python/package.json +7 -14
  125. package/node_modules/@sema/gerador-typescript/package.json +7 -14
  126. package/node_modules/@sema/nucleo/dist/diagnosticos/melhorador.d.ts +22 -0
  127. package/node_modules/@sema/nucleo/dist/diagnosticos/melhorador.js +97 -0
  128. package/node_modules/@sema/nucleo/dist/diagnosticos/melhorador.js.map +1 -0
  129. package/node_modules/@sema/nucleo/dist/index.d.ts +1 -0
  130. package/node_modules/@sema/nucleo/dist/index.js +1 -0
  131. package/node_modules/@sema/nucleo/dist/index.js.map +1 -1
  132. package/node_modules/@sema/nucleo/package.json +7 -10
  133. package/node_modules/@sema/padroes/package.json +7 -10
  134. package/package.json +75 -74
  135. package/exemplos/.prepack-generated +0 -1
  136. package/node_modules/@sema/gerador-css/src/index.ts +0 -605
  137. package/node_modules/@sema/gerador-css/tsconfig.json +0 -13
  138. package/node_modules/@sema/gerador-css/tsconfig.tsbuildinfo +0 -1
  139. package/node_modules/@sema/gerador-dart/src/index.ts +0 -52
  140. package/node_modules/@sema/gerador-dart/tsconfig.json +0 -13
  141. package/node_modules/@sema/gerador-dart/tsconfig.tsbuildinfo +0 -1
  142. package/node_modules/@sema/gerador-html/src/index.ts +0 -185
  143. package/node_modules/@sema/gerador-html/tsconfig.json +0 -13
  144. package/node_modules/@sema/gerador-html/tsconfig.tsbuildinfo +0 -1
  145. package/node_modules/@sema/gerador-javascript/src/index.ts +0 -461
  146. package/node_modules/@sema/gerador-javascript/tsconfig.json +0 -13
  147. package/node_modules/@sema/gerador-javascript/tsconfig.tsbuildinfo +0 -1
  148. package/node_modules/@sema/gerador-lua/src/index.ts +0 -359
  149. package/node_modules/@sema/gerador-lua/tsconfig.json +0 -13
  150. package/node_modules/@sema/gerador-lua/tsconfig.tsbuildinfo +0 -1
  151. package/node_modules/@sema/gerador-python/src/index.ts +0 -850
  152. package/node_modules/@sema/gerador-python/tsconfig.json +0 -13
  153. package/node_modules/@sema/gerador-python/tsconfig.tsbuildinfo +0 -1
  154. package/node_modules/@sema/gerador-typescript/src/index.ts +0 -876
  155. package/node_modules/@sema/gerador-typescript/tsconfig.json +0 -13
  156. package/node_modules/@sema/gerador-typescript/tsconfig.tsbuildinfo +0 -1
  157. package/node_modules/@sema/nucleo/src/ast/tipos.ts +0 -207
  158. package/node_modules/@sema/nucleo/src/diagnosticos/index.ts +0 -43
  159. package/node_modules/@sema/nucleo/src/formatador/index.ts +0 -530
  160. package/node_modules/@sema/nucleo/src/index.ts +0 -183
  161. package/node_modules/@sema/nucleo/src/ir/conversor.ts +0 -1037
  162. package/node_modules/@sema/nucleo/src/ir/modelos.ts +0 -403
  163. package/node_modules/@sema/nucleo/src/lexer/lexer.ts +0 -166
  164. package/node_modules/@sema/nucleo/src/lexer/tokens.ts +0 -79
  165. package/node_modules/@sema/nucleo/src/parser/gramatica.ebnf +0 -41
  166. package/node_modules/@sema/nucleo/src/parser/parser.ts +0 -936
  167. package/node_modules/@sema/nucleo/src/persistencia/contratos.ts +0 -379
  168. package/node_modules/@sema/nucleo/src/semantico/analisador.ts +0 -3126
  169. package/node_modules/@sema/nucleo/src/semantico/estruturas.ts +0 -665
  170. package/node_modules/@sema/nucleo/src/semantico/seguranca.ts +0 -362
  171. package/node_modules/@sema/nucleo/src/util/arquivos.ts +0 -28
  172. package/node_modules/@sema/nucleo/tsconfig.json +0 -9
  173. package/node_modules/@sema/nucleo/tsconfig.tsbuildinfo +0 -1
  174. package/node_modules/@sema/padroes/src/index.ts +0 -382
  175. package/node_modules/@sema/padroes/tsconfig.json +0 -9
  176. package/node_modules/@sema/padroes/tsconfig.tsbuildinfo +0 -1
@@ -0,0 +1,23 @@
1
+ export interface InitInput {
2
+ template_nome: string;
3
+ saida_caminho: string;
4
+ nome_modulo: string;
5
+ parametros?: Record<string, string>;
6
+ }
7
+ export interface InitOutput {
8
+ contrato_gerado: string;
9
+ caminho_absoluto: string;
10
+ linhas_geradas: number;
11
+ campos_para_editar: string[];
12
+ }
13
+ export declare function listarTemplatesDisponiveis(categoriaFiltro?: string): Promise<{
14
+ templates: Array<{
15
+ nome: string;
16
+ categoria: string;
17
+ descricao: string;
18
+ linhas_base: number;
19
+ }>;
20
+ total: number;
21
+ }>;
22
+ export declare function gerarContratoDeTemplate(input: InitInput): Promise<InitOutput>;
23
+ export declare function comandoInit(args: string[]): Promise<void>;
@@ -0,0 +1,112 @@
1
+ // Comando sema init --template
2
+ // Contrato: cli_init_templates.sema
3
+ import * as fs from 'fs';
4
+ import * as path from 'path';
5
+ import { listarTemplates, obterTemplate } from './templates.js';
6
+ export async function listarTemplatesDisponiveis(categoriaFiltro) {
7
+ const templates = listarTemplates(categoriaFiltro);
8
+ return {
9
+ templates: templates.map(t => ({
10
+ nome: t.nome,
11
+ categoria: t.categoria,
12
+ descricao: t.descricao,
13
+ linhas_base: t.linhasBase
14
+ })),
15
+ total: templates.length
16
+ };
17
+ }
18
+ export async function gerarContratoDeTemplate(input) {
19
+ // Validar template
20
+ const template = obterTemplate(input.template_nome);
21
+ if (!template) {
22
+ throw new Error(`Template '${input.template_nome}' nao encontrado. Use --listar para ver disponiveis.`);
23
+ }
24
+ // Validar caminho de saida
25
+ if (!input.saida_caminho.endsWith('.sema')) {
26
+ throw new Error('O arquivo de saida deve ter extensao .sema');
27
+ }
28
+ // Verificar se arquivo ja existe
29
+ const caminhoAbsoluto = path.resolve(input.saida_caminho);
30
+ if (fs.existsSync(caminhoAbsoluto)) {
31
+ throw new Error(`Arquivo ja existe em ${input.saida_caminho}. Use --force para sobrescrever.`);
32
+ }
33
+ // Validar nome do modulo
34
+ if (!/^[a-z][a-z0-9_]*(\.[a-z][a-z0-9_]*)*$/.test(input.nome_modulo)) {
35
+ throw new Error('Nome do modulo deve ser snake_case (ex: meu_app.pedidos)');
36
+ }
37
+ // Garantir que diretorio existe
38
+ const dir = path.dirname(caminhoAbsoluto);
39
+ if (!fs.existsSync(dir)) {
40
+ throw new Error(`Diretorio de saida nao existe: ${dir}`);
41
+ }
42
+ // Gerar conteudo
43
+ const conteudo = template.conteudo(input.nome_modulo);
44
+ // Escrever arquivo
45
+ fs.writeFileSync(caminhoAbsoluto, conteudo, 'utf-8');
46
+ const linhas = conteudo.split('\n').length;
47
+ return {
48
+ contrato_gerado: conteudo,
49
+ caminho_absoluto: caminhoAbsoluto,
50
+ linhas_geradas: linhas,
51
+ campos_para_editar: template.camposEditaveis
52
+ };
53
+ }
54
+ // Handler para CLI
55
+ export async function comandoInit(args) {
56
+ const listarFlag = args.includes('--listar') || args.includes('-l');
57
+ if (listarFlag) {
58
+ const { templates, total } = await listarTemplatesDisponiveis();
59
+ console.log(`\nšŸ“¦ Templates disponiveis (${total}):\n`);
60
+ const categorias = [...new Set(templates.map(t => t.categoria))];
61
+ for (const cat of categorias) {
62
+ console.log(`${cat.toUpperCase()}:`);
63
+ const daCategoria = templates.filter(t => t.categoria === cat);
64
+ for (const t of daCategoria) {
65
+ console.log(` • ${t.nome.padEnd(15)} - ${t.descricao} (~${t.linhas_base} linhas)`);
66
+ }
67
+ console.log('');
68
+ }
69
+ return;
70
+ }
71
+ // Parse args
72
+ const templateIdx = args.findIndex(a => a === '--template' || a === '-t');
73
+ const saidaIdx = args.findIndex(a => a === '--saida' || a === '-o');
74
+ const moduloIdx = args.findIndex(a => a === '--modulo' || a === '-m');
75
+ const force = args.includes('--force') || args.includes('-f');
76
+ if (templateIdx === -1 || saidaIdx === -1 || moduloIdx === -1) {
77
+ console.error('Uso: sema init --template <nome> --saida <caminho> --modulo <nome_modulo>');
78
+ console.error(' sema init --listar');
79
+ process.exit(1);
80
+ }
81
+ const templateNome = args[templateIdx + 1];
82
+ const saidaCaminho = args[saidaIdx + 1];
83
+ const nomeModulo = args[moduloIdx + 1];
84
+ if (!templateNome || !saidaCaminho || !nomeModulo) {
85
+ console.error('Erro: Todos os parametros --template, --saida e --modulo sao obrigatorios');
86
+ process.exit(1);
87
+ }
88
+ try {
89
+ // Se force, remove arquivo existente
90
+ if (force && fs.existsSync(saidaCaminho)) {
91
+ fs.unlinkSync(saidaCaminho);
92
+ }
93
+ const resultado = await gerarContratoDeTemplate({
94
+ template_nome: templateNome,
95
+ saida_caminho: saidaCaminho,
96
+ nome_modulo: nomeModulo
97
+ });
98
+ console.log(`\nāœ… Contrato gerado com sucesso!`);
99
+ console.log(` šŸ“„ ${resultado.caminho_absoluto}`);
100
+ console.log(` šŸ“Š ${resultado.linhas_geradas} linhas`);
101
+ console.log(` āœļø Campos para editar: ${resultado.campos_para_editar.join(', ')}`);
102
+ console.log(`\nProximos passos:`);
103
+ console.log(` 1. sema validar ${saidaCaminho}`);
104
+ console.log(` 2. Edite os campos: ${resultado.campos_para_editar.join(', ')}`);
105
+ console.log(` 3. Implemente o codigo vinculado\n`);
106
+ }
107
+ catch (err) {
108
+ console.error(`\nāŒ Erro: ${err instanceof Error ? err.message : String(err)}\n`);
109
+ process.exit(1);
110
+ }
111
+ }
112
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/init/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ export interface TemplateInit {
2
+ nome: string;
3
+ categoria: string;
4
+ descricao: string;
5
+ linhasBase: number;
6
+ camposEditaveis: string[];
7
+ conteudo: (moduloNome: string) => string;
8
+ }
9
+ export declare const templatesDisponiveis: Record<string, TemplateInit>;
10
+ export declare function listarTemplates(categoriaFiltro?: string): TemplateInit[];
11
+ export declare function obterTemplate(nome: string): TemplateInit | null;