@semacode/cli 1.5.48 → 1.5.52

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 (281) hide show
  1. package/LICENSE +39 -21
  2. package/README.md +47 -48
  3. package/dist/agentContext.d.ts +2 -2
  4. package/dist/agentContext.js +1 -1
  5. package/dist/agentContextPack.d.ts +1 -1
  6. package/dist/agentContextPack.js +20 -28
  7. package/dist/agentContextTipos.d.ts +2 -2
  8. package/dist/agentContextTipos.js +7 -13
  9. package/dist/agentEntryPoints.js +244 -281
  10. package/dist/billing/index.d.ts +1 -58
  11. package/dist/billing/index.js +17 -278
  12. package/dist/cliArgs.js +0 -3
  13. package/dist/comandos.js +15 -131
  14. package/dist/contexto.d.ts +0 -9
  15. package/dist/contexto.js +59 -109
  16. package/dist/docs.part01.js +30 -51
  17. package/dist/drift.part14.js +18 -3
  18. package/dist/driftOrcamento.js +1 -2
  19. package/dist/index.d.ts +0 -6
  20. package/dist/index.js +0 -6
  21. package/dist/index.part01.d.ts +1 -1
  22. package/dist/index.part01.js +1 -3
  23. package/dist/index.part04.js +4 -4
  24. package/dist/index.part08.js +1 -22
  25. package/dist/initTemplatesBase.js +5 -5
  26. package/dist/sync/index.js +1 -1
  27. package/docs/README.md +19 -0
  28. package/docs/ai-integration.md +90 -0
  29. package/docs/ai-onboarding.md +33 -0
  30. package/docs/ai-workflow.md +62 -0
  31. package/docs/auth.md +16 -0
  32. package/docs/cli.md +36 -95
  33. package/docs/commands.md +90 -0
  34. package/docs/database.md +15 -0
  35. package/docs/deploy.md +6 -38
  36. package/docs/documentation.md +39 -0
  37. package/docs/env.md +8 -109
  38. package/docs/frontend.md +41 -0
  39. package/docs/getting-started.md +33 -0
  40. package/docs/i18n.md +15 -0
  41. package/docs/profiles.md +43 -0
  42. package/docs/repositories.md +19 -61
  43. package/docs/rollback.md +9 -20
  44. package/docs/security.md +24 -0
  45. package/docs/support.md +8 -0
  46. package/docs/syntax.md +128 -0
  47. package/docs/testing.md +17 -0
  48. package/docs/vocabulary.md +28 -0
  49. package/node_modules/@sema/gerador-css/package.json +1 -1
  50. package/node_modules/@sema/gerador-dart/package.json +1 -1
  51. package/node_modules/@sema/gerador-html/package.json +1 -1
  52. package/node_modules/@sema/gerador-javascript/package.json +1 -1
  53. package/node_modules/@sema/gerador-lua/dist/index.js +10 -0
  54. package/node_modules/@sema/gerador-lua/dist/index.js.map +1 -1
  55. package/node_modules/@sema/gerador-lua/package.json +1 -1
  56. package/node_modules/@sema/gerador-python/package.json +1 -1
  57. package/node_modules/@sema/gerador-typescript/package.json +1 -1
  58. package/node_modules/@sema/nucleo/dist/diagnosticos/melhorador.js +1 -1
  59. package/node_modules/@sema/nucleo/dist/diagnosticos/melhorador.js.map +1 -1
  60. package/node_modules/@sema/nucleo/package.json +1 -1
  61. package/node_modules/@sema/padroes/package.json +1 -1
  62. package/package.json +15 -22
  63. package/AGENTS.md +0 -81
  64. package/AGENT_CONTEXT_PACK.json +0 -500
  65. package/SEMA_BRIEF.curto.txt +0 -18
  66. package/SEMA_BRIEF.md +0 -726
  67. package/SEMA_BRIEF.micro.txt +0 -16
  68. package/SEMA_INDEX.json +0 -11078
  69. package/dist/agentContext.js.map +0 -1
  70. package/dist/agentContextPack.js.map +0 -1
  71. package/dist/agentContextTipos.js.map +0 -1
  72. package/dist/agentEntryPoints.js.map +0 -1
  73. package/dist/angular-consumer-standalone.js.map +0 -1
  74. package/dist/authorAnalise.js.map +0 -1
  75. package/dist/authorPoliticas.js.map +0 -1
  76. package/dist/billing/index.js.map +0 -1
  77. package/dist/bridge.d.ts +0 -52
  78. package/dist/bridge.js +0 -333
  79. package/dist/bridge.js.map +0 -1
  80. package/dist/carregarModulos.js.map +0 -1
  81. package/dist/cliArgs.js.map +0 -1
  82. package/dist/comandos.js.map +0 -1
  83. package/dist/contexto.js.map +0 -1
  84. package/dist/controleComercialSupabase.d.ts +0 -7
  85. package/dist/controleComercialSupabase.js +0 -6
  86. package/dist/controleComercialSupabase.js.map +0 -1
  87. package/dist/controleComercialSupabaseAdmin.d.ts +0 -7
  88. package/dist/controleComercialSupabaseAdmin.js +0 -138
  89. package/dist/controleComercialSupabaseAdmin.js.map +0 -1
  90. package/dist/controleComercialSupabaseCadastro.d.ts +0 -4
  91. package/dist/controleComercialSupabaseCadastro.js +0 -85
  92. package/dist/controleComercialSupabaseCadastro.js.map +0 -1
  93. package/dist/controleComercialSupabaseConstantes.d.ts +0 -28
  94. package/dist/controleComercialSupabaseConstantes.js +0 -44
  95. package/dist/controleComercialSupabaseConstantes.js.map +0 -1
  96. package/dist/controleComercialSupabaseConsumo.d.ts +0 -2
  97. package/dist/controleComercialSupabaseConsumo.js +0 -77
  98. package/dist/controleComercialSupabaseConsumo.js.map +0 -1
  99. package/dist/controleComercialSupabaseConta.d.ts +0 -11
  100. package/dist/controleComercialSupabaseConta.js +0 -157
  101. package/dist/controleComercialSupabaseConta.js.map +0 -1
  102. package/dist/controleComercialSupabaseProfiles.d.ts +0 -4
  103. package/dist/controleComercialSupabaseProfiles.js +0 -55
  104. package/dist/controleComercialSupabaseProfiles.js.map +0 -1
  105. package/dist/controleComercialSupabaseTipos.d.ts +0 -3
  106. package/dist/controleComercialSupabaseTipos.js +0 -2
  107. package/dist/controleComercialSupabaseTipos.js.map +0 -1
  108. package/dist/controleComercialSupabaseTiposAdmin.d.ts +0 -152
  109. package/dist/controleComercialSupabaseTiposAdmin.js +0 -2
  110. package/dist/controleComercialSupabaseTiposAdmin.js.map +0 -1
  111. package/dist/controleComercialSupabaseTiposBase.d.ts +0 -169
  112. package/dist/controleComercialSupabaseTiposBase.js +0 -2
  113. package/dist/controleComercialSupabaseTiposBase.js.map +0 -1
  114. package/dist/controleComercialSupabaseTiposConta.d.ts +0 -220
  115. package/dist/controleComercialSupabaseTiposConta.js +0 -2
  116. package/dist/controleComercialSupabaseTiposConta.js.map +0 -1
  117. package/dist/cpp-symbols.js.map +0 -1
  118. package/dist/dev/index.js.map +0 -1
  119. package/dist/dev/watcher.js.map +0 -1
  120. package/dist/docs/resolver.js.map +0 -1
  121. package/dist/docs.js.map +0 -1
  122. package/dist/docs.part01.js.map +0 -1
  123. package/dist/docs.part02.js.map +0 -1
  124. package/dist/doctorCommand.js.map +0 -1
  125. package/dist/dotnet-http.js.map +0 -1
  126. package/dist/drift.contrato.js.map +0 -1
  127. package/dist/drift.js.map +0 -1
  128. package/dist/drift.part01.js.map +0 -1
  129. package/dist/drift.part02.js.map +0 -1
  130. package/dist/drift.part03.js.map +0 -1
  131. package/dist/drift.part04.js.map +0 -1
  132. package/dist/drift.part05.js.map +0 -1
  133. package/dist/drift.part06.js.map +0 -1
  134. package/dist/drift.part07.js.map +0 -1
  135. package/dist/drift.part08.js.map +0 -1
  136. package/dist/drift.part09.js.map +0 -1
  137. package/dist/drift.part10.js.map +0 -1
  138. package/dist/drift.part11.js.map +0 -1
  139. package/dist/drift.part12.js.map +0 -1
  140. package/dist/drift.part13.js.map +0 -1
  141. package/dist/drift.part14.js.map +0 -1
  142. package/dist/driftOrcamento.js.map +0 -1
  143. package/dist/driftScore.js.map +0 -1
  144. package/dist/execucoesExternas.js.map +0 -1
  145. package/dist/exemplosOficiais.js.map +0 -1
  146. package/dist/fsGovernado.js.map +0 -1
  147. package/dist/geracaoCore.js.map +0 -1
  148. package/dist/go-http.js.map +0 -1
  149. package/dist/guard.js.map +0 -1
  150. package/dist/iaPrompts.js.map +0 -1
  151. package/dist/importador.js.map +0 -1
  152. package/dist/importador.part01.js.map +0 -1
  153. package/dist/importador.part02.js.map +0 -1
  154. package/dist/importador.part03.js.map +0 -1
  155. package/dist/importador.part04.js.map +0 -1
  156. package/dist/importador.part05.js.map +0 -1
  157. package/dist/importador.part06.js.map +0 -1
  158. package/dist/importador.part07.js.map +0 -1
  159. package/dist/importador.part08.js.map +0 -1
  160. package/dist/importador.part09.js.map +0 -1
  161. package/dist/index.js.map +0 -1
  162. package/dist/index.part01.js.map +0 -1
  163. package/dist/index.part02.js.map +0 -1
  164. package/dist/index.part03.js.map +0 -1
  165. package/dist/index.part04.js.map +0 -1
  166. package/dist/index.part05.js.map +0 -1
  167. package/dist/index.part06.js.map +0 -1
  168. package/dist/index.part07.js.map +0 -1
  169. package/dist/index.part08.js.map +0 -1
  170. package/dist/init/index.js.map +0 -1
  171. package/dist/init/templates.js.map +0 -1
  172. package/dist/init/templates.part01.js.map +0 -1
  173. package/dist/init/templates.part02.js.map +0 -1
  174. package/dist/initCommand.js.map +0 -1
  175. package/dist/initTemplatesBackend.js.map +0 -1
  176. package/dist/initTemplatesBase.js.map +0 -1
  177. package/dist/initTemplatesFlutter.js.map +0 -1
  178. package/dist/initTemplatesRuntime.js.map +0 -1
  179. package/dist/initTemplatesWeb.js.map +0 -1
  180. package/dist/java-http.js.map +0 -1
  181. package/dist/lua-symbols.js.map +0 -1
  182. package/dist/mcpInstalarChaveCommand.d.ts +0 -1
  183. package/dist/mcpInstalarChaveCommand.js +0 -168
  184. package/dist/mcpInstalarChaveCommand.js.map +0 -1
  185. package/dist/mcpRemoto.d.ts +0 -32
  186. package/dist/mcpRemoto.js +0 -61
  187. package/dist/mcpRemoto.js.map +0 -1
  188. package/dist/mcp_chave.d.ts +0 -1
  189. package/dist/mcp_chave.js +0 -4
  190. package/dist/mcp_chave.js.map +0 -1
  191. package/dist/profileArtefatoBase.js.map +0 -1
  192. package/dist/profileArtefatoValidadores.js.map +0 -1
  193. package/dist/profileAuthorCommand.js.map +0 -1
  194. package/dist/profileAuthorTipos.js.map +0 -1
  195. package/dist/profileCatalogo.js.map +0 -1
  196. package/dist/profileCommand.js.map +0 -1
  197. package/dist/profileI18nCatalogo.js.map +0 -1
  198. package/dist/profileI18nVisivel.js.map +0 -1
  199. package/dist/profileOrquestracao.js.map +0 -1
  200. package/dist/profileRegras.js.map +0 -1
  201. package/dist/profileRulePacks.js.map +0 -1
  202. package/dist/profiles/validate.js.map +0 -1
  203. package/dist/projeto.js.map +0 -1
  204. package/dist/projetoBusca.js.map +0 -1
  205. package/dist/projetoCarregar.js.map +0 -1
  206. package/dist/projetoConfig.js.map +0 -1
  207. package/dist/projetoLegado.js.map +0 -1
  208. package/dist/projetoOrigens.js.map +0 -1
  209. package/dist/projetoResolucao.js.map +0 -1
  210. package/dist/projetoTipos.js.map +0 -1
  211. package/dist/python-http.js.map +0 -1
  212. package/dist/runnerValidacaoRemota.d.ts +0 -9
  213. package/dist/runnerValidacaoRemota.js +0 -9
  214. package/dist/runnerValidacaoRemota.js.map +0 -1
  215. package/dist/runnerValidacaoRemotaBateria.d.ts +0 -10
  216. package/dist/runnerValidacaoRemotaBateria.js +0 -117
  217. package/dist/runnerValidacaoRemotaBateria.js.map +0 -1
  218. package/dist/runnerValidacaoRemotaCli.d.ts +0 -4
  219. package/dist/runnerValidacaoRemotaCli.js +0 -86
  220. package/dist/runnerValidacaoRemotaCli.js.map +0 -1
  221. package/dist/runnerValidacaoRemotaComandos.d.ts +0 -7
  222. package/dist/runnerValidacaoRemotaComandos.js +0 -123
  223. package/dist/runnerValidacaoRemotaComandos.js.map +0 -1
  224. package/dist/runnerValidacaoRemotaEscopo.d.ts +0 -4
  225. package/dist/runnerValidacaoRemotaEscopo.js +0 -79
  226. package/dist/runnerValidacaoRemotaEscopo.js.map +0 -1
  227. package/dist/runnerValidacaoRemotaExecucao.d.ts +0 -2
  228. package/dist/runnerValidacaoRemotaExecucao.js +0 -104
  229. package/dist/runnerValidacaoRemotaExecucao.js.map +0 -1
  230. package/dist/runnerValidacaoRemotaRelatorio.d.ts +0 -3
  231. package/dist/runnerValidacaoRemotaRelatorio.js +0 -95
  232. package/dist/runnerValidacaoRemotaRelatorio.js.map +0 -1
  233. package/dist/runnerValidacaoRemotaServidor.d.ts +0 -4
  234. package/dist/runnerValidacaoRemotaServidor.js +0 -185
  235. package/dist/runnerValidacaoRemotaServidor.js.map +0 -1
  236. package/dist/runnerValidacaoRemotaSnapshot.d.ts +0 -10
  237. package/dist/runnerValidacaoRemotaSnapshot.js +0 -219
  238. package/dist/runnerValidacaoRemotaSnapshot.js.map +0 -1
  239. package/dist/runnerValidacaoRemotaTipos.d.ts +0 -158
  240. package/dist/runnerValidacaoRemotaTipos.js +0 -35
  241. package/dist/runnerValidacaoRemotaTipos.js.map +0 -1
  242. package/dist/runnerValidacaoRemotaUtil.d.ts +0 -3
  243. package/dist/runnerValidacaoRemotaUtil.js +0 -18
  244. package/dist/runnerValidacaoRemotaUtil.js.map +0 -1
  245. package/dist/runnerValidacaoRemotaWorkspace.d.ts +0 -2
  246. package/dist/runnerValidacaoRemotaWorkspace.js +0 -115
  247. package/dist/runnerValidacaoRemotaWorkspace.js.map +0 -1
  248. package/dist/rust-http.js.map +0 -1
  249. package/dist/semaChatCommand.d.ts +0 -1
  250. package/dist/semaChatCommand.js +0 -43
  251. package/dist/semaChatCommand.js.map +0 -1
  252. package/dist/semaChatRuntime.d.ts +0 -23
  253. package/dist/semaChatRuntime.js +0 -202
  254. package/dist/semaChatRuntime.js.map +0 -1
  255. package/dist/sync/index.js.map +0 -1
  256. package/dist/textoListas.js.map +0 -1
  257. package/dist/tipos.js.map +0 -1
  258. package/dist/typescript-http-body.js.map +0 -1
  259. package/dist/typescript-http-expressoes.js.map +0 -1
  260. package/dist/typescript-http-modelos.js.map +0 -1
  261. package/dist/typescript-http-rotas.js.map +0 -1
  262. package/dist/typescript-http-semantica.js.map +0 -1
  263. package/dist/typescript-http.js.map +0 -1
  264. package/docs/AGENT_STARTER.md +0 -147
  265. package/docs/agentes-por-capacidade.md +0 -130
  266. package/docs/api.md +0 -82
  267. package/docs/comandos.md +0 -807
  268. package/docs/como-ensinar-a-sema-para-ia.md +0 -30
  269. package/docs/documentacao.md +0 -74
  270. package/docs/extensao-vscode.md +0 -49
  271. package/docs/fluxo-pratico-ia-sema.md +0 -278
  272. package/docs/instalacao-e-primeiro-uso.md +0 -60
  273. package/docs/integracao-com-ia.md +0 -44
  274. package/docs/mcp.md +0 -69
  275. package/docs/pagamento-ponta-a-ponta.md +0 -171
  276. package/docs/persistencia-vendor-first.md +0 -151
  277. package/docs/prompt-base-ia-sema.md +0 -111
  278. package/docs/seguranca.md +0 -126
  279. package/docs/sintaxe.md +0 -390
  280. package/llms-full.txt +0 -40
  281. package/llms.txt +0 -23
@@ -79,16 +79,16 @@ Antes de alterar codigo, contrato ou documentacao:
79
79
  3. rode \`sema preflight resumo --json\`;
80
80
  4. rode \`sema resumo\`;
81
81
  5. rode \`sema docs-impacto --intencao "<acao>" --json\`;
82
- 6. leia \`docs/comandos.md\` antes de escolher comando ou interpretar \`--saida\`;
83
- 7. use \`exemplos/\` e \`docs/sintaxe.md\` antes de criar ou corrigir \`.sema\`.
82
+ 6. leia \`docs/commands.md\` antes de escolher comando ou interpretar \`--saida\`;
83
+ 7. use \`exemplos/\` e \`docs/syntax.md\` antes de criar ou corrigir \`.sema\`.
84
84
 
85
85
  ## Estrutura criada
86
86
 
87
87
  - \`contratos/\`: contratos semanticamente governados.
88
88
  - \`exemplos/\`: exemplos oficiais da DSL Sema.
89
- - \`docs/comandos.md\`: catalogo de comandos, gates e regra de \`--saida\`.
90
- - \`docs/sintaxe.md\`: referencia curta para escrever \`.sema\`.
91
- - \`docs/fluxo-pratico-ia-sema.md\`: fluxo minimo para agentes.
89
+ - \`docs/commands.md\`: catalogo de comandos, gates e regra de \`--saida\`.
90
+ - \`docs/syntax.md\`: referencia curta para escrever \`.sema\`.
91
+ - \`docs/ai-workflow.md\`: fluxo minimo para agentes.
92
92
  - \`SEMA_BOOT.md\`, \`SEMA_SMALL_MODEL.md\`, \`AGENT_CONTEXT_PACK.json\` e \`SEMA_INDEX.json\`: contexto IA-first.
93
93
 
94
94
  ## Geracao
@@ -63,7 +63,7 @@ generator client {
63
63
 
64
64
  datasource db {
65
65
  provider = "${datasourceProvider}"
66
- url = env("DATABASE_URL")
66
+ url = env("SEMA_PRISMA_URL")
67
67
  }
68
68
  ${models}`;
69
69
  // Salvar
package/docs/README.md ADDED
@@ -0,0 +1,19 @@
1
+ # Sema Documentation
2
+
3
+ These docs describe the public local CLI distribution of Sema.
4
+
5
+ Sema is local-first: agents run the CLI inside a project folder, read `.sema`
6
+ contracts, check drift, map impact, and close changes with documentation
7
+ evidence. Public docs are written in English.
8
+
9
+ Start here:
10
+
11
+ - [CLI](./cli.md)
12
+ - [Commands](./commands.md)
13
+ - [Syntax](./syntax.md)
14
+ - [Profiles](./profiles.md)
15
+ - [Documentation Governance](./documentation.md)
16
+ - [Repository Boundary](./repositories.md)
17
+ - [Security](./security.md)
18
+
19
+ Official support: [suporte@otimitare.online](mailto:suporte@otimitare.online)
@@ -0,0 +1,90 @@
1
+ # AI Integration
2
+
3
+ Sema is designed for AI agents with different context sizes and discipline
4
+ levels. The public repository documents the local CLI flow only: agents run the
5
+ CLI inside the project, read contracts, check drift, map impact, and close the
6
+ change with evidence.
7
+
8
+ Supported capacity labels: fraca, pequena, media, forte, grande.
9
+
10
+ ## Local-Only Rule
11
+
12
+ For a local workspace, use the local CLI:
13
+
14
+ ```bash
15
+ sema --version
16
+ sema preflight resumo --json
17
+ sema resumo
18
+ ```
19
+
20
+ Continue only when preflight returns `use_cli_local`. Do not replace the local
21
+ CLI with an external workspace source, external sync, or project-name guessing.
22
+
23
+ ## Before Editing
24
+
25
+ ```bash
26
+ sema docs-impacto --intencao "describe the change" --json
27
+ sema inspecionar contratos/example.sema --json
28
+ sema drift contratos/example.sema --escopo modulo --json
29
+ sema impacto contratos/example.sema --alvo app.example --mudanca "describe the change" --json
30
+ ```
31
+
32
+ Read every document listed by `docs-impacto` before changing code, contracts,
33
+ operational docs, generated artifacts, workflows, profiles, or release material.
34
+
35
+ ## Capacity Tiers
36
+
37
+ Weak agents should start with `SEMA_BOOT.md`,
38
+ `SEMA_SMALL_MODEL.md`, `SEMA_BRIEF.micro.txt`,
39
+ `AGENT_CONTEXT_PACK.json`, and `SEMA_INDEX.json`. They should stop early
40
+ when a gate is unclear.
41
+
42
+ Medium agents should start with `SEMA_BOOT.md`,
43
+ `AGENT_CONTEXT_PACK.json`, `SEMA_BRIEF.curto.txt`,
44
+ `SEMA_INDEX.json`, and `AGENTS.md`. They must run docs-impact, drift, and
45
+ impact before edits.
46
+
47
+ Strong agents may consume `AGENT_CONTEXT_PACK.json`, `SEMA_BRIEF.md`,
48
+ `SEMA_INDEX.json`, AST, IR, drift, and impact outputs, but larger context does
49
+ not remove the contract-first rule.
50
+
51
+ ## Governed Code
52
+
53
+ Generated or governed code should keep a short `SEMA-GOVERNED` marker that
54
+ points back to the applicable contract. The marker is not a substitute for
55
+ validation, drift, impact, or finalization gates.
56
+
57
+ Governed code above 1000 lines requires a
58
+ split plan. Governed code above 2000
59
+ lines blocks closure. Markdown documentation is not counted as governed code
60
+ size, but it is still governed by documentation and publication checks.
61
+
62
+ ## Contract Size
63
+
64
+ `.sema` contracts above 300 lines require a
65
+ split plan. Above 500 lines, do not keep
66
+ editing the same contract before splitting it by real domain or capability.
67
+ Never create artificial `parte_1` or `parte_2` files to hide a large contract.
68
+
69
+ ## Payload Size
70
+
71
+ Inline payloads in `arquivos_codigo.conteudo` or `conteudo` are limited to
72
+ 262144 characters. That is a transport/input limit,
73
+ not an operational timeout. Split by responsibility or use an authorized file
74
+ path/attachment strategy instead of increasing timeouts to push the same payload.
75
+
76
+ ## UI And Terminal Work
77
+
78
+ When the task involves a site, app, dashboard, form, game, CLI, TUI, or any
79
+ user-facing experience, closure requires evidence:
80
+
81
+ - desktop and mobile validation for UI work;
82
+ - no horizontal overflow on narrow mobile viewports such as 390px;
83
+ - clear loading, empty, success, and error states when relevant;
84
+ - structured terminal output, clear errors, help, and smoke checks for CLI/TUI
85
+ work.
86
+
87
+ ## Platform Policy
88
+
89
+ Sema governs contract, scope, drift, evidence, and quality. It does not bypass
90
+ platform policies, terms of use, permissions, security controls, or laws.
@@ -0,0 +1,33 @@
1
+ # Teaching Sema To AI Agents
2
+
3
+ Give agents a short rule: contracts come first, and the local CLI is the source
4
+ of truth.
5
+
6
+ ## Minimal Prompt
7
+
8
+ ```text
9
+ This workspace is governed by Sema. Before editing code, contracts, docs,
10
+ workflows, profiles, or release scripts, run:
11
+
12
+ 1. sema --version
13
+ 2. sema preflight resumo --json
14
+ 3. sema resumo
15
+ 4. sema docs-impacto --intencao "<change>" --json
16
+ 5. sema inspecionar on the applicable .sema contract
17
+ 6. sema drift before editing existing code
18
+ 7. sema impacto before changing behavior
19
+ 8. sema finalizar-mudanca before closing
20
+
21
+ If the CLI is unavailable or preflight does not return use_cli_local, stop.
22
+ Do not replace Sema with manual search or guessed contracts.
23
+ ```
24
+
25
+ ## What Agents Should Not Do
26
+
27
+ - Do not invent `.sema` contracts.
28
+ - Do not implement code without an applicable contract.
29
+ - Do not ignore severity 4+ warnings.
30
+ - Do not publish private or sensitive operational material.
31
+ - Do not replace the local CLI when the local workspace is available.
32
+
33
+ Support: suporte@otimitare.online
@@ -0,0 +1,62 @@
1
+ <!-- sema:agent-entrypoint:start -->
2
+ # Practical AI + Sema Workflow
3
+
4
+ This is the minimum workflow for agents in a local workspace.
5
+
6
+ 1. Leia `SEMA_BOOT.md`.
7
+ 2. Rode `sema --version`.
8
+ 3. Rode `sema preflight resumo --json` e continue apenas se retornar `use_cli_local`.
9
+ 4. Rode `sema resumo`.
10
+ 5. Rode `sema docs-impacto --intencao "<acao>" --json`.
11
+ 6. Leia a documentacao obrigatoria retornada.
12
+ 7. Antes de escolher comando ou interpretar `--saida`, leia `docs/commands.md`.
13
+ 8. Antes de criar ou editar contrato, use `exemplos/` e `docs/syntax.md`.
14
+ 9. Antes de editar codigo existente, rode `sema drift` e `sema impacto`.
15
+ 10. Depois de alterar `.sema`, rode `sema formatar` e `sema validar`.
16
+ 11. Antes de concluir, rode `sema finalizar-mudanca` com as docs lidas.
17
+
18
+ Contract edit rule: `.sema` has its own size budget. Above 300 lines, plan a split by domain/capability; above 500, do not create or edit before splitting. Do not use parte_1/parte_2 and do not force a 1:1 contract-to-file relationship; several contracts can govern the same file through `vinculos`.
19
+
20
+ Closing rule: `sema drift --json` must return `sucesso:true`. If it reports `sucesso:false`, `vinculos_quebrados`, `rotas_divergentes`, or broken impls, the task is still blocked. Passing unit tests do not replace green drift.
21
+
22
+ UI rule: if the task involves an interface, minimum evidence includes desktop and mobile. On a narrow viewport such as 390px, `document.documentElement.scrollWidth <= document.documentElement.clientWidth` must pass; horizontal scroll blocks closure.
23
+
24
+ ## Agent Capacity
25
+
26
+ - Weak agent: `SEMA_SMALL_MODEL.md`, `SEMA_BRIEF.micro.txt`, `AGENT_CONTEXT_PACK.json`, `SEMA_INDEX.json`.
27
+ - Medium agent: `SEMA_BOOT.md`, `AGENT_CONTEXT_PACK.json`, `SEMA_BRIEF.curto.txt`, `SEMA_INDEX.json`, `AGENTS.md`.
28
+ - Strong agent: `SEMA_BOOT.md`, `AGENT_CONTEXT_PACK.json`, `SEMA_BRIEF.md`, `SEMA_INDEX.json`, AST, IR, drift, and impact.
29
+
30
+ ## When to Generate Code
31
+
32
+ If the delivery includes code derived from a contract, run `sema compilar`.
33
+
34
+ ```bash
35
+ sema compilar contratos/orders.sema --alvo javascript --saida ./generated/javascript
36
+ ```
37
+
38
+ Replace `javascript` with `typescript`, `python`, `dart`, `lua`, `html`, or `css` when appropriate.
39
+
40
+ ## Fail Closed
41
+
42
+ - Se não conseguir chamar Sema, pare e declare bloqueio em vez de editar código ou contrato.
43
+ - Se não houver contrato aplicável ou vínculo semântico do arquivo, inspecione o arquivo, descubra ou crie o .sema aplicável e vincule antes do código.
44
+ - Em IDE local, rode sema --version; se falhar, pare. A IA não acessa o painel Sema: peça ao humano para instalar a CLI pelo painel. Depois rode sema preflight <comando> --json; só continue com use_cli_local; não use fonte externa de workspace para substituir a CLI local.
45
+ - Se não houver workspace local em disco, pare bloqueado e peça o fluxo apropriado; não invente caminho nem substitua a CLI local por ferramenta paralela.
46
+ - Se arquivos_codigo.conteudo ou conteudo inline passar de 262144 caracteres, não aumente timeout para forçar: divida por responsabilidade ou use anexo/caminho de servidor autorizado.
47
+ - Se for criar ou corrigir .sema, use sema_exemplos antes de escrever sintaxe.
48
+ - Se a resposta humana estiver em PT-BR, use vocabulário Sema canônico e preserve acentos mesmo que a DSL use ASCII.
49
+ - Se um arquivo de código tiver SEMA-GOVERNED, consulte Sema e o contrato aplicável antes de editar.
50
+ - Se codigo governado passar de 1000 linhas, planeje divisao; se passar de 2000, pare e divida antes de concluir. Documentacao Markdown nao entra nesse limite de codigo.
51
+ - Se contrato .sema passar de 300 linhas, planeje split por dominio/capacidade; acima de 500, criacao e edicao ficam bloqueadas. Nao use parte_1/parte_2 e nao remova guarantees, tests ou vinculos so para caber.
52
+ - Um mesmo arquivo de codigo pode ser governado por varios contratos .sema via vinculos; Sema Codigo deve preservar essa rastreabilidade.
53
+ - Se score, achados ou decisaoAgente parecerem bons, trate como sinal de triagem e confira evidência concreta no contrato e no código.
54
+ - Se validar artefato inline com 100/100, ainda preserve cabeçalho SEMA-GOVERNED no arquivo físico sincronizado.
55
+ - Se `sema drift` retornar sucesso:false, `vinculos_quebrados`, `rotas_divergentes` ou impls quebradas, a mudanca nao pode ser declarada concluida; corrija contrato/codigo e rode drift de novo.
56
+ - Se a tarefa tiver site, sistema, app, UI, painel, jogo, CLI/TUI ou terminal, nao conclua sem acabamento moderno, contextual e evidenciado; em UI mobile estreita (ex. 390px), `document.documentElement.scrollWidth <= document.documentElement.clientWidth` precisa ser verdadeiro.
57
+ - Se texto visivel PT-BR perder acento ou cedilha em termos como descricao, lancamentos, saude ou alimentacao, trate como defeito bloqueante quando houver i18n/idioma declarado.
58
+ - Se aparecer caminho que não pertence ao workspace local aberto pelo usuário, pare e confirme a fonte antes de agir.
59
+ - Se uma chamada Sema estourar por timeout local, aumente o timeout e tente de novo; timeout do agente não libera ação sem Sema.
60
+ - Se a plataforma bloquear ou alertar política, trate como bloqueio externo ou falso positivo possível; explique sem tentar contornar filtro.
61
+ - Se a tarefa tiver experiência de uso e você não conseguir garantir padrão moderno, contextual e não genérico, pare e peça revisão em vez de entregar coisa engessada.
62
+ <!-- sema:agent-entrypoint:end -->
package/docs/auth.md ADDED
@@ -0,0 +1,16 @@
1
+ # Authentication Boundary
2
+
3
+ The public Sema CLI does not require authentication.
4
+
5
+ Use local commands:
6
+
7
+ ```bash
8
+ sema --version
9
+ sema preflight resumo --json
10
+ sema validar contratos/example.sema --json
11
+ ```
12
+
13
+ Do not put private or sensitive operational material in this repository.
14
+
15
+ Application-specific authentication belongs in the application repository that
16
+ owns it.
package/docs/cli.md CHANGED
@@ -1,118 +1,59 @@
1
1
  # Sema CLI
2
2
 
3
- <!-- sema:i18n -->
4
- > EN: English first.
5
- > PT: Português depois.
6
- > ES: Español al final.
3
+ Sema is now a local CLI distribution. The public package reads the workspace on
4
+ the user's machine, validates `.sema` contracts, checks drift, maps impact, and
5
+ generates code without requiring external service credentials.
7
6
 
8
- ## English
7
+ Support: suporte@otimitare.online
9
8
 
10
- The Sema CLI is installed from the `@semacode/cli` npm package. In local IDEs it is the complete Sema runtime: it reads the workspace, runs gates, validates contracts, checks drift/impact, and consults the SEMAS control plane before operating.
11
-
12
- Use it for local-agent work:
13
-
14
- - run `sema preflight <command> --json` before action;
15
- - validate `.sema` contracts;
16
- - inspect modules, tasks, routes, and effects;
17
- - check drift against live or selected code;
18
- - map impact;
19
- - prepare AI-first context;
20
- - resolve documentation gates;
21
- - run profile and pipeline validators;
22
- - generate derived artifacts for TypeScript, Python, Dart, Lua, JavaScript, HTML, and CSS;
23
- - initialize a new project with `AGENTS.md`, `SEMA_BOOT.md`, `AGENT_CONTEXT_PACK.json`, `SEMA_INDEX.json`, `docs/sintaxe.md`, `docs/fluxo-pratico-ia-sema.md`, and `exemplos/`;
24
- - execute local or VPS-side project actions.
25
-
26
- The key installer from the site installs Node/npm when missing, installs the CLI, and saves `SEMA_CLI_AUTH_TOKEN`, `SEMA_CLI_CONTROL_PLANE_URL`, and compatibility MCP env vars. In a local IDE, the agent must first run `sema --version`. If it fails, the agent stops and asks the human to open the Sema panel and run the key installer. If `preflight` returns anything other than `decisao=use_cli_local`, stop. Do not call remote MCP, `sema_sync`, `sema_contratos_sincronizar`, or `sema mcp-client` just to read a local workspace.
27
-
28
- Remote MCP remains the web/chat surface for ChatGPT, Lovable, GPTs, and similar clients without local workspace access. It uses the same commercial control plane and SEMAS account.
29
- `sema runner servidor` may run without token only on `localhost`, `127.0.0.1` or `::1`. Any public bind such as `0.0.0.0` requires `--token` or `SEMA_RUNNER_TOKEN`.
9
+ ## Install
30
10
 
31
11
  ```bash
32
12
  npm install -g @semacode/cli
33
- ```
34
-
35
- ```bash
36
13
  sema --version
37
- sema preflight resumo --json
38
- sema resumo . --curto
39
- sema validar contratos/pedidos.sema --json
40
- sema drift contratos/pedidos.sema --escopo modulo --json
41
- sema docs-impacto --intencao "alterar pedidos" --arquivo contratos/pedidos.sema --json
42
- sema finalizar-mudanca --intencao "alterar pedidos" --doc-lida README.md --json
43
14
  ```
44
15
 
45
- ## Português
46
-
47
- A CLI da Sema é instalada pelo pacote npm `@semacode/cli`. Em IDE local, ela é o runtime completo da Sema: lê o workspace, roda gates, valida contratos, mede drift/impacto e consulta o control plane de SEMAS antes de operar.
48
-
49
- Use a CLI para trabalho de agente local:
50
-
51
- - rodar `sema preflight <comando> --json` antes de agir;
52
- - validar contratos `.sema`;
53
- - inspecionar módulos, tasks, rotas e efeitos;
54
- - medir drift contra código vivo ou código selecionado;
55
- - mapear impacto;
56
- - preparar contexto IA-first;
57
- - resolver gates de documentação;
58
- - rodar validadores de profiles e pipelines;
59
- - gerar artefatos derivados para TypeScript, Python, Dart, Lua, JavaScript, HTML e CSS;
60
- - iniciar projeto novo com `AGENTS.md`, `SEMA_BOOT.md`, `AGENT_CONTEXT_PACK.json`, `SEMA_INDEX.json`, `docs/sintaxe.md`, `docs/fluxo-pratico-ia-sema.md` e `exemplos/`;
61
- - executar ações locais ou na VPS.
62
-
63
- O instalador do site instala Node/npm quando faltar, instala a CLI e grava `SEMA_CLI_AUTH_TOKEN`, `SEMA_CLI_CONTROL_PLANE_URL` e variáveis MCP de compatibilidade. Se o `preflight` retornar qualquer coisa diferente de `decisao=use_cli_local`, pare. Não chame MCP remoto, `sema_sync`, `sema_contratos_sincronizar` nem `sema mcp-client` só para ler workspace local.
64
- Em IDE local, o agente deve rodar `sema --version` primeiro. Se falhar, ele para. A IA não acessa o painel Sema: ela pede ao humano para abrir o painel e rodar o instalador de chave.
65
-
66
- O MCP remoto continua sendo a superfície web/chat para ChatGPT, Lovable, GPTs e clientes parecidos sem acesso ao workspace local. Ele usa o mesmo control plane comercial e a mesma conta de SEMAS.
67
- `sema runner servidor` so pode rodar sem token em `localhost`, `127.0.0.1` ou `::1`. Qualquer bind publico como `0.0.0.0` exige `--token` ou `SEMA_RUNNER_TOKEN`.
16
+ For development inside this repository:
68
17
 
69
18
  ```bash
70
- npm install -g @semacode/cli
19
+ npm install
20
+ npm run build
21
+ node pacotes/cli/dist/index.js --help
71
22
  ```
72
23
 
24
+ ## Required Local Flow
25
+
26
+ Agents and humans should use the same local sequence before changing governed
27
+ code, contracts, workflows, release scripts, or operational docs:
28
+
73
29
  ```bash
74
30
  sema --version
75
31
  sema preflight resumo --json
76
- sema resumo . --curto
77
- sema validar contratos/pedidos.sema --json
78
- sema drift contratos/pedidos.sema --escopo modulo --json
79
- sema docs-impacto --intencao "alterar pedidos" --arquivo contratos/pedidos.sema --json
80
- sema finalizar-mudanca --intencao "alterar pedidos" --doc-lida README.md --json
32
+ sema resumo
33
+ sema docs-impacto --intencao "describe the change" --json
34
+ sema inspecionar contratos/example.sema --json
35
+ sema drift contratos/example.sema --escopo modulo --json
36
+ sema impacto contratos/example.sema --alvo sema.example.target --mudanca "describe the change" --json
81
37
  ```
82
38
 
83
- ## Español
84
-
85
- La CLI de Sema se instala desde el paquete npm `@semacode/cli`. En una IDE local es el runtime completo de Sema: lee el workspace, ejecuta gates, valida contratos, mide drift/impacto y consulta el control plane de SEMAS antes de operar.
39
+ Continue only when `preflight` returns `decisao: "use_cli_local"`. The public
40
+ CLI preflight is an offline local gate; it does not check credits, install
41
+ keys, or call an external control surface.
86
42
 
87
- Usa la CLI para trabajo de agente local:
43
+ ## Core Commands
88
44
 
89
- - ejecutar `sema preflight <comando> --json` antes de actuar;
90
- - validar contratos `.sema`;
91
- - inspeccionar módulos, tasks, rutas y efectos;
92
- - medir drift contra código vivo o código seleccionado;
93
- - mapear impacto;
94
- - preparar contexto IA-first;
95
- - resolver gates de documentación;
96
- - ejecutar validadores de profiles y pipelines;
97
- - generar artefactos derivados para TypeScript, Python, Dart, Lua, JavaScript, HTML y CSS;
98
- - iniciar un proyecto nuevo con `AGENTS.md`, `SEMA_BOOT.md`, `AGENT_CONTEXT_PACK.json`, `SEMA_INDEX.json`, `docs/sintaxe.md`, `docs/fluxo-pratico-ia-sema.md` y `exemplos/`;
99
- - ejecutar acciones locales o en la VPS.
45
+ - `sema iniciar`: create a governed starting point.
46
+ - `sema validar`: validate `.sema` contracts.
47
+ - `sema inspecionar`: inspect the applicable contract surface.
48
+ - `sema drift`: compare contracts and implementation.
49
+ - `sema impacto`: map the blast radius of a planned change.
50
+ - `sema docs-impacto`: identify docs that must be read or updated.
51
+ - `sema finalizar-mudanca`: close the governed change with evidence.
52
+ - `sema compilar`: generate code from contracts.
53
+ - `sema verificar`: run the final local verification bundle.
54
+ - `sema contexto-ia`: build local AI context from a contract.
100
55
 
101
- El instalador del sitio instala Node/npm cuando falten, instala la CLI y guarda `SEMA_CLI_AUTH_TOKEN`, `SEMA_CLI_CONTROL_PLANE_URL` y variables MCP de compatibilidad. En una IDE local, el agente debe ejecutar primero `sema --version`. Si falla, para y pide al humano que abra el panel Sema y ejecute el instalador de clave. Si `preflight` devuelve algo distinto de `decisao=use_cli_local`, para. No llames el MCP remoto, `sema_sync`, `sema_contratos_sincronizar` ni `sema mcp-client` solo para leer un workspace local.
56
+ ## Public Boundary
102
57
 
103
- El MCP remoto sigue siendo la superficie web/chat para ChatGPT, Lovable, GPTs y clientes similares sin acceso al workspace local. Usa el mismo control plane comercial y la misma cuenta de SEMAS.
104
- `sema runner servidor` solo puede correr sin token en `localhost`, `127.0.0.1` o `::1`. Cualquier bind publico como `0.0.0.0` exige `--token` o `SEMA_RUNNER_TOKEN`.
105
-
106
- ```bash
107
- npm install -g @semacode/cli
108
- ```
109
-
110
- ```bash
111
- sema --version
112
- sema preflight resumo --json
113
- sema resumo . --curto
114
- sema validar contratos/pedidos.sema --json
115
- sema drift contratos/pedidos.sema --escopo modulo --json
116
- sema docs-impacto --intencao "alterar pedidos" --arquivo contratos/pedidos.sema --json
117
- sema finalizar-mudanca --intencao "alterar pedidos" --doc-lida README.md --json
118
- ```
58
+ Do not publish private or sensitive operational material in public Sema
59
+ artifacts.
@@ -0,0 +1,90 @@
1
+ <!-- sema:agent-entrypoint:start -->
2
+ # Sema Command Catalog
3
+
4
+ Use this file when an AI agent does not know which command to run. A Sema command is an operational gate; do not replace it with a Markdown report.
5
+
6
+ ## Minimum Local Flow
7
+
8
+ ```bash
9
+ sema --version
10
+ sema preflight resumo --json
11
+ sema resumo
12
+ sema docs-impacto --intencao "<acao>" --json
13
+ ```
14
+
15
+ Then read every required doc returned by `docs-impacto`.
16
+
17
+ ## Contract and Discovery
18
+
19
+ - `sema iniciar --template <template>`: creates a new Sema project with a contract, docs, examples, and AI kit.
20
+ - `sema validar <arquivo-ou-pasta> --json`: validates `.sema` contracts.
21
+ - `sema diagnosticos <arquivo.sema> --json`: details errors and warnings.
22
+ - `sema formatar <arquivo-ou-pasta>`: formats contracts.
23
+ - `sema inspecionar <arquivo-ou-pasta> --json`: shows modules, tasks, routes, entities, links, and expected files.
24
+ - `sema ast <arquivo.sema> --json`: shows AST for syntax debugging.
25
+ - `sema ir <arquivo.sema> --json`: shows the IR used by gates and generators.
26
+
27
+ ## Change and Closure
28
+
29
+ - `sema docs-impacto --intencao "<acao>" --json`: discovers required docs and documentary blockers.
30
+ - `sema drift <arquivo-ou-pasta> --escopo modulo --json`: compares contract and implementation.
31
+ - `sema impacto <arquivo-ou-pasta> --alvo <token> --mudanca "<descricao>" --json`: maps impact before changing behavior.
32
+ - `sema verificar <arquivo-ou-pasta> --json`: runs aggregated final verification.
33
+ - `sema finalizar-mudanca --intencao "<acao>" --doc-lida <arquivo> --json`: proves documentation reading before closure.
34
+
35
+ Honest closure: treat drift JSON as the source of truth. `sucesso:false`, `vinculos_quebrados`, `rotas_divergentes`, or broken impls mean the change is not complete yet. Do not report "clean drift" without green JSON.
36
+
37
+ ## Sema Code
38
+
39
+ - `sema compilar <arquivo-ou-pasta> --alvo <typescript|python|dart|lua|javascript|html|css> --saida <diretorio>`: generates starter/support artifacts from the contract.
40
+ - `sema testar <arquivo.sema> --alvo <alvo> --saida <diretorio-temporario>`: generates and runs local tests when the target supports it.
41
+ - `sema importar <fonte> <diretorio> --saida <diretorio> --json`: imports a legacy project into initial contracts.
42
+ - `sema renomear-semantico <arquivo-ou-pasta> --de <nome> --para <nome> --json`: helps rename symbols semantically.
43
+
44
+ Rule for `--saida`: the folder passed to `sema compilar --saida` is generated output. It is not the final delivery by itself. The final delivery is the target files/links declared by the contract. If the contract asks for `index.html`, `css/styles.css`, and `js/app.js`, creating only `saida/expense_control.ts` does not complete the task.
45
+
46
+ Sema Code traceability rule: generated artifacts must point back to the source module/contract and preserve that the same final file may be governed by several `.sema` contracts through `vinculos`. Do not force a 1:1 contract-file relationship and do not treat `saida/` as the final project.
47
+
48
+ Ready UI rule: if the task generates an app, site, dashboard, form, or static HTML, run desktop/mobile visual validation when the surface allows it. On narrow mobile (for example 390px), `scrollWidth <= clientWidth` must pass; a layout that stacks but overflows horizontally is not responsive.
49
+
50
+ ## Canonical Syntax Lists
51
+
52
+ - Origins for `use` and `impl`: `ts/typescript`, `js/javascript`, `py/python`, `dart`, `lua`, `cs/dotnet`, `java`, `go`, `rust`, `cpp`.
53
+ - Frequent `effects` categories: `persistencia`, `consulta`, `evento`, `auditoria`, `db.write`, `queue.publish`, `fs.write`, `network.egress`, `secret.read`, `shell.exec`.
54
+ - Accepted `audit.motivo` values: `obrigatorio`, `opcional`, `dispensado`.
55
+
56
+ `sema compilar --alvo javascript` is a generation target. `impl { js: ... }` is the live-code origin. Do not swap one for the other.
57
+
58
+ ## AI and Context
59
+
60
+ - `sema ajuda-ia`: short guidance for agents.
61
+ - `sema starter-ia`: operational starter.
62
+ - `sema contexto-ia <arquivo.sema> --saida <dir> --json`: AI context package.
63
+ - `sema prompt-curto <arquivo-ou-pasta> --json`: compact prompt.
64
+ - `sema sync-ai-entrypoints --json`: synchronizes AGENTS, boot, pack, and local docs.
65
+ - `sema instalar-exemplos --json`: installs official examples in the workspace.
66
+ - `sema exemplos-prompt-ia`: shows prompt examples, not `.sema` examples.
67
+
68
+ ## Profiles e Author
69
+
70
+ - `sema author iniciar|validar|briefing|revisar-cliches|validar-narrativa|validar-proibicoes`: governs authorial writing.
71
+ - `sema profile validar <software|workflow|ops|game|legal|research|redacao|propostas|conversas> <arquivo> --json`: validates an artifact by profile.
72
+ - `sema profile capabilities --json`: lists profiles/capabilities.
73
+ - `sema rule-packs --profile <profile> --json`: lists rule packs.
74
+
75
+ ## Operational
76
+
77
+ - `sema doctor`: diagnoses local installation.
78
+
79
+ ## Forbidden
80
+
81
+ - Do not use an external workspace source to inspect a local workspace when `sema --version` works.
82
+ - Do not search the entire disk for `.sema` syntax; use `exemplos/`, `docs/syntax.md`, and this catalog.
83
+ - Do not stop after `sema compilar` if the contract target files still do not exist.
84
+ - Do not replace `sema compilar` with `sema testar` when Guard asks for Sema Code.
85
+ - Do not create a Markdown report to pretend a gate ran.
86
+ - Do not say drift passed when `sema drift --json` returned `sucesso:false`, broken link, divergent route, or broken impl.
87
+ - Do not declare a UI responsive without mobile/desktop proof; horizontal scroll at 390px blocks closure.
88
+
89
+ Governed code policy: Arquivos de codigo gerados ou governados pela Sema devem manter cabecalho curto com modulo de origem, contrato .sema aplicavel e descricao humana. Validacao inline prova apenas o payload enviado; o arquivo fisico ainda precisa de SEMA-GOVERNED para orientar a proxima IA. Codigo governado avisa acima de 1000 linhas e bloqueia acima de 2000. Contrato .sema avisa acima de 300 linhas e bloqueia criacao, edicao, drift, finalizacao, geracao e snapshot acima de 500. O split de .sema deve ser por dominio/capacidade, nunca parte_1/parte_2; varios contratos podem governar o mesmo arquivo de codigo via vinculos. Sema Codigo deve preservar essa rastreabilidade em cabecalhos e saidas geradas. Documentacao Markdown nao entra nesse limite de codigo; continua governada por docs-impacto, limite de bytes e verificacao de segredos. Payload inline acima de 262144 caracteres nao e caso de aumentar timeout: divida por responsabilidade ou use anexo/caminho de servidor autorizado.
90
+ <!-- sema:agent-entrypoint:end -->
@@ -0,0 +1,15 @@
1
+ # Database Boundary
2
+
3
+ The public Sema CLI does not require a database.
4
+
5
+ Sema reads contracts and source files from the local workspace. Any database used
6
+ by an application governed by Sema belongs to that application, not to the public
7
+ Sema CLI distribution.
8
+
9
+ ## Public Rule
10
+
11
+ Do not ship private database material, real credentials, operational schemas, or
12
+ project-specific data in the public Sema package.
13
+
14
+ Application-specific database docs should live in the application repository
15
+ that owns the database.
package/docs/deploy.md CHANGED
@@ -1,45 +1,13 @@
1
- # Deploy Privado
1
+ # Deployment Boundary
2
2
 
3
- <!-- sema:i18n -->
4
- > EN: English first.
5
- > PT: Português depois, com acentos preservados.
6
- > ES: Español al final.
3
+ The public Sema repository only documents public local CLI release checks.
7
4
 
8
- ## English
9
-
10
- Sema no longer has a public product release runbook. Deploy is private and covers the MCP service, governed CLI runtime, account panel, Supabase control plane, and authorized project mirrors.
11
-
12
- Before deploy, run the private boundary check and build:
13
-
14
- ```bash
15
- npm run repo:verificar-privado
16
- npm run build
17
- ```
18
-
19
- For the VPS, deploy only the files required by the change, restart `sema-mcp.service` only when runtime code changed, and verify `/healthz` after restart. For public/production MCP, `/healthz.hardening.authorized` must be `true`; otherwise fix env before exposing `/mcp`.
20
-
21
- ## Português
22
-
23
- A Sema não tem mais runbook de release pública de produto. O deploy é privado e cobre serviço MCP, runtime governado da CLI, painel de conta, control plane Supabase e espelhos de projeto autorizados.
24
-
25
- Antes do deploy, rode a checagem de fronteira privada e o build:
26
-
27
- ```bash
28
- npm run repo:verificar-privado
29
- npm run build
30
- ```
31
-
32
- Na VPS, envie apenas os arquivos exigidos pela mudança, reinicie `sema-mcp.service` somente quando código de runtime mudar e valide `/healthz` depois do restart. Para MCP publico/production, `/healthz.hardening.authorized` deve ser `true`; se nao for, corrija o ambiente antes de expor `/mcp`.
33
-
34
- ## Español
35
-
36
- Sema ya no tiene runbook de release pública de producto. El deploy es privado y cubre el servicio MCP, runtime gobernado de la CLI, panel de cuenta, control plane Supabase y espejos de proyecto autorizados.
37
-
38
- Antes del deploy, ejecuta la verificación de frontera privada y el build:
5
+ Public release work should focus on the local CLI package:
39
6
 
40
7
  ```bash
41
- npm run repo:verificar-privado
42
8
  npm run build
9
+ npm run cli:empacotar-publica
10
+ node scripts/testar-pacote-cli-publico.mjs
43
11
  ```
44
12
 
45
- En la VPS, envía solo los archivos exigidos por el cambio, reinicia `sema-mcp.service` solo cuando cambie código de runtime y valida `/healthz` después del restart. Para MCP publico/production, `/healthz.hardening.authorized` debe ser `true`; si no, corrige el ambiente antes de exponer `/mcp`.
13
+ Do not publish private or sensitive operational material in this repository.
@@ -0,0 +1,39 @@
1
+ # Documentation Governance
2
+
3
+ Documentation is part of every governed change. An agent must use
4
+ `sema docs-impacto` before editing contracts, code, operational docs, workflows,
5
+ profiles, generated artifacts, or release material.
6
+
7
+ Public Sema documentation is English and local-only.
8
+
9
+ ## Required Flow
10
+
11
+ ```bash
12
+ sema docs-impacto --intencao "describe the change" --json
13
+ ```
14
+
15
+ The result lists:
16
+
17
+ - `leituraObrigatoria`: files that must be read before the change;
18
+ - `docsAusentes`: missing docs that block the change;
19
+ - `docsCriadas`: generated draft docs that must be completed by the agent;
20
+ - `bloqueios`: blocking diagnostics.
21
+
22
+ Before closing the change, prove the required docs were read:
23
+
24
+ ```bash
25
+ sema finalizar-mudanca \
26
+ --intencao "describe the change" \
27
+ --doc-lida README.md \
28
+ --doc-lida docs/documentation.md \
29
+ --json
30
+ ```
31
+
32
+ ## Public Docs Rules
33
+
34
+ - Write public docs in English.
35
+ - Keep commands, file paths, package names, environment variable names, and DSL
36
+ keywords literal.
37
+ - Do not include private or sensitive operational material.
38
+ - Prefer local CLI examples.
39
+ - Point support requests to suporte@otimitare.online.