@semacode/cli 1.5.27 → 1.5.29

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 (81) hide show
  1. package/AGENTS.md +279 -265
  2. package/AGENT_CONTEXT_PACK.json +164 -0
  3. package/README.md +144 -144
  4. package/SEMA_BRIEF.curto.txt +7 -7
  5. package/SEMA_BRIEF.md +464 -65
  6. package/SEMA_BRIEF.micro.txt +6 -6
  7. package/SEMA_INDEX.json +6723 -667
  8. package/dist/bridge.d.ts +52 -0
  9. package/dist/bridge.js +318 -0
  10. package/dist/bridge.js.map +1 -0
  11. package/dist/comandos.d.ts +11 -0
  12. package/dist/comandos.js +110 -0
  13. package/dist/comandos.js.map +1 -0
  14. package/dist/contexto.d.ts +34 -0
  15. package/dist/contexto.js +197 -0
  16. package/dist/contexto.js.map +1 -0
  17. package/dist/drift.d.ts +1 -1
  18. package/dist/drift.js +32 -5
  19. package/dist/drift.js.map +1 -1
  20. package/dist/index.js +391 -64
  21. package/dist/index.js.map +1 -1
  22. package/dist/lua-symbols.d.ts +0 -6
  23. package/dist/lua-symbols.js +11 -78
  24. package/dist/lua-symbols.js.map +1 -1
  25. package/dist/projeto.js +6 -0
  26. package/dist/projeto.js.map +1 -1
  27. package/dist/tipos.d.ts +1 -1
  28. package/docs/AGENT_STARTER.md +109 -109
  29. package/docs/api.md +82 -0
  30. package/docs/cli.md +175 -175
  31. package/docs/como-ensinar-a-sema-para-ia.md +155 -155
  32. package/docs/deploy.md +93 -0
  33. package/docs/documentacao.md +88 -88
  34. package/docs/env.md +105 -105
  35. package/docs/extensao-vscode.md +53 -53
  36. package/docs/fluxo-pratico-ia-sema.md +187 -187
  37. package/docs/instalacao-e-primeiro-uso.md +134 -134
  38. package/docs/integracao-com-ia.md +110 -110
  39. package/docs/mcp.md +292 -292
  40. package/docs/pagamento-ponta-a-ponta.md +171 -171
  41. package/docs/persistencia-vendor-first.md +151 -151
  42. package/docs/prompt-base-ia-sema.md +111 -111
  43. package/docs/repositories.md +54 -54
  44. package/docs/rollback.md +49 -49
  45. package/docs/seguranca.md +126 -126
  46. package/docs/sintaxe.md +218 -218
  47. package/exemplos/author_obra_comum.sema +294 -294
  48. package/exemplos/author_tema_sensivel.sema +264 -264
  49. package/exemplos/profile_game.sema +114 -114
  50. package/exemplos/profile_legal.sema +105 -105
  51. package/exemplos/profile_ops.sema +110 -110
  52. package/exemplos/profile_research.sema +104 -104
  53. package/exemplos/profile_software.sema +123 -123
  54. package/exemplos/profile_workflow_n8n.sema +99 -99
  55. package/llms-full.txt +10 -9
  56. package/llms.txt +8 -7
  57. package/node_modules/@sema/gerador-css/package.json +1 -1
  58. package/node_modules/@sema/gerador-dart/package.json +1 -1
  59. package/node_modules/@sema/gerador-html/package.json +1 -1
  60. package/node_modules/@sema/gerador-javascript/package.json +1 -1
  61. package/node_modules/@sema/gerador-lua/package.json +1 -1
  62. package/node_modules/@sema/gerador-python/package.json +1 -1
  63. package/node_modules/@sema/gerador-typescript/package.json +1 -1
  64. package/node_modules/@sema/nucleo/dist/ast/tipos.d.ts +1 -1
  65. package/node_modules/@sema/nucleo/dist/index.d.ts +17 -0
  66. package/node_modules/@sema/nucleo/dist/index.js +28 -0
  67. package/node_modules/@sema/nucleo/dist/index.js.map +1 -1
  68. package/node_modules/@sema/nucleo/dist/ir/conversor.js +4 -0
  69. package/node_modules/@sema/nucleo/dist/ir/conversor.js.map +1 -1
  70. package/node_modules/@sema/nucleo/dist/ir/modelos.d.ts +3 -3
  71. package/node_modules/@sema/nucleo/dist/parser/parser.js +2 -0
  72. package/node_modules/@sema/nucleo/dist/parser/parser.js.map +1 -1
  73. package/node_modules/@sema/nucleo/dist/semantico/analisador.d.ts +2 -2
  74. package/node_modules/@sema/nucleo/dist/semantico/analisador.js +3 -1
  75. package/node_modules/@sema/nucleo/dist/semantico/analisador.js.map +1 -1
  76. package/node_modules/@sema/nucleo/package.json +1 -1
  77. package/node_modules/@sema/padroes/package.json +1 -1
  78. package/package.json +11 -10
  79. package/dist/php-symbols.d.ts +0 -24
  80. package/dist/php-symbols.js +0 -375
  81. package/dist/php-symbols.js.map +0 -1
package/docs/seguranca.md CHANGED
@@ -1,126 +1,126 @@
1
- # Security
2
-
3
- <!-- sema:i18n -->
4
- > EN: English first.
5
- > PT: Português depois, com acentos preservados.
6
- > ES: Español al final.
7
-
8
- ## EN
9
-
10
- The remote Sema MCP is a sensitive surface. It lets authorized agents read contracts, check drift, generate IA-first context, and operate inside allowed roots. Security depends on these controls working together:
11
-
12
- 1. HTTPS on the public proxy.
13
- 2. Commercial `sema_mcp_*` bearer key per request or OAuth authentication.
14
- 3. `SEMA_MCP_PROJECT_ROOTS` pointing to a dedicated server root, for example `/srv/sema/projetos`.
15
- 4. Contract-first operation before code, deploy, docs, workflow, Author text, game, legal, research, or ops actions.
16
-
17
- Do not publish the server without those controls.
18
-
19
- ### Data That Must Not Leak
20
-
21
- - GitHub, npm, Supabase, SSH, or Git Credential Manager tokens.
22
- - Client-side `SEMA_MCP_AUTH_TOKEN` values containing `sema_mcp_*` keys.
23
- - `SEMA_MCP_OAUTH_SECRET`.
24
- - `SEMA_MCP_OAUTH_PASSCODE`.
25
- - Private key content.
26
- - `.env`, build caches, uploads, installed dependencies, or temporary snapshots with secrets.
27
-
28
- Operational runbooks may document non-secret references, such as the public domain, service name, and generic deployment role. They must never include private key bodies, private-key filenames, local key paths, non-public IPs, real server paths, or secret inventory details.
29
-
30
- ### Remote Operation
31
-
32
- - Use the smallest privilege that still performs the job.
33
- - Do not log `Authorization` headers.
34
- - Do not publish `/mcp` with empty `SEMA_MCP_PROJECT_ROOTS`.
35
- - Keep Caddy or the reverse proxy with valid TLS.
36
- - Test `/mcp` without token and expect an authorization challenge.
37
- - Test account-scoped MCP tokens before declaring the product flow ready.
38
-
39
- ### Incident
40
-
41
- If a secret appears in chat, screenshot, log, release, or Git history:
42
-
43
- 1. Treat it as compromised.
44
- 2. Rotate it at the provider.
45
- 3. Remove it from the current file.
46
- 4. If it reached Git, rewrite history or revoke it permanently.
47
-
48
- ## PT
49
-
50
- O Sema MCP remoto é uma superfície sensível. Ele permite que agentes autorizados leiam contratos, verifiquem drift, gerem contexto IA-first e operem dentro das raízes permitidas. A segurança depende destas travas trabalhando juntas:
51
-
52
- 1. HTTPS no proxy público.
53
- 2. Autenticacao por chave comercial `sema_mcp_*` por request ou OAuth.
54
- 3. `SEMA_MCP_PROJECT_ROOTS` apontando para uma raiz dedicada no servidor, por exemplo `/srv/sema/projetos`.
55
- 4. Operação contract-first antes de código, deploy, docs, workflow, texto Author, jogo, jurídico, pesquisa ou ops.
56
-
57
- Não publique o servidor sem essas travas.
58
-
59
- ### Dados Que Não Podem Vazar
60
-
61
- - Tokens de GitHub, npm, Supabase, SSH ou Git Credential Manager.
62
- - Valores locais de `SEMA_MCP_AUTH_TOKEN` contendo chaves `sema_mcp_*`.
63
- - `SEMA_MCP_OAUTH_SECRET`.
64
- - `SEMA_MCP_OAUTH_PASSCODE`.
65
- - Conteúdo de chave privada.
66
- - `.env`, caches de build, uploads, dependências instaladas ou snapshots temporários com segredo.
67
-
68
- Runbooks operacionais podem documentar referências não secretas, como domínio público, nome do serviço e papel genérico de deploy. Eles nunca devem incluir corpo de chave privada, nomes de arquivos de chave privada, caminhos locais de chave, IPs não públicos, caminhos reais de servidor ou detalhes do inventário de segredos.
69
-
70
- ### Operação Remota
71
-
72
- - Use o menor privilégio que ainda executa o trabalho.
73
- - Não registre headers `Authorization` em logs.
74
- - Não publique `/mcp` com `SEMA_MCP_PROJECT_ROOTS` vazio.
75
- - Mantenha Caddy ou reverse proxy com TLS válido.
76
- - Teste `/mcp` sem token esperando desafio de autorização.
77
- - Teste tokens MCP por conta antes de declarar o fluxo de produto pronto.
78
-
79
- ### Incidente
80
-
81
- Se um segredo aparecer em chat, print, log, release ou histórico Git:
82
-
83
- 1. Considere comprometido.
84
- 2. Rotacione no provedor de origem.
85
- 3. Remova do arquivo atual.
86
- 4. Se chegou ao Git, reescreva histórico ou revogue definitivamente o segredo.
87
-
88
- ## ES
89
-
90
- El Sema MCP remoto es una superficie sensible. Permite que agentes autorizados lean contratos, verifiquen drift, generen contexto IA-first y operen dentro de las raíces permitidas. La seguridad depende de estos controles trabajando juntos:
91
-
92
- 1. HTTPS en el proxy público.
93
- 2. Autenticacion por clave comercial `sema_mcp_*` por request u OAuth.
94
- 3. `SEMA_MCP_PROJECT_ROOTS` apuntando a una raíz dedicada en el servidor, por ejemplo `/srv/sema/projetos`.
95
- 4. Operación contract-first antes de código, despliegue, docs, workflow, texto Author, juego, legal, investigación u ops.
96
-
97
- No publiques el servidor sin esos controles.
98
-
99
- ### Datos Que No Deben Filtrarse
100
-
101
- - Tokens de GitHub, npm, Supabase, SSH o Git Credential Manager.
102
- - Valores locales de `SEMA_MCP_AUTH_TOKEN` con claves `sema_mcp_*`.
103
- - `SEMA_MCP_OAUTH_SECRET`.
104
- - `SEMA_MCP_OAUTH_PASSCODE`.
105
- - Contenido de llave privada.
106
- - `.env`, cachés de build, uploads, dependencias instaladas o snapshots temporales con secretos.
107
-
108
- Los runbooks operativos pueden documentar referencias no secretas, como dominio público, nombre del servicio y rol genérico de despliegue. Nunca deben incluir el cuerpo de la llave privada, nombres de archivos de llave privada, rutas locales de llaves, IPs no públicas, rutas reales del servidor o detalles del inventario de secretos.
109
-
110
- ### Operación Remota
111
-
112
- - Usa el menor privilegio que todavía permita ejecutar el trabajo.
113
- - No registres headers `Authorization` en logs.
114
- - No publiques `/mcp` con `SEMA_MCP_PROJECT_ROOTS` vacío.
115
- - Mantén Caddy o el reverse proxy con TLS válido.
116
- - Prueba `/mcp` sin token y espera un desafío de autorización.
117
- - Prueba tokens MCP por cuenta antes de declarar listo el flujo de producto.
118
-
119
- ### Incidente
120
-
121
- Si un secreto aparece en chat, captura, log, release o historial Git:
122
-
123
- 1. Trátalo como comprometido.
124
- 2. Rótalo en el proveedor de origen.
125
- 3. Elimínalo del archivo actual.
126
- 4. Si llegó a Git, reescribe el historial o revócalo definitivamente.
1
+ # Security
2
+
3
+ <!-- sema:i18n -->
4
+ > EN: English first.
5
+ > PT: Português depois, com acentos preservados.
6
+ > ES: Español al final.
7
+
8
+ ## EN
9
+
10
+ The remote Sema MCP is a sensitive surface. It lets authorized agents read contracts, check drift, generate IA-first context, and operate inside allowed roots. Security depends on these controls working together:
11
+
12
+ 1. HTTPS on the public proxy.
13
+ 2. Commercial `sema_mcp_*` bearer key per request or OAuth authentication.
14
+ 3. `SEMA_MCP_PROJECT_ROOTS` pointing to a dedicated server root, for example `/srv/sema/projetos`.
15
+ 4. Contract-first operation before code, deploy, docs, workflow, Author text, game, legal, research, or ops actions.
16
+
17
+ Do not publish the server without those controls.
18
+
19
+ ### Data That Must Not Leak
20
+
21
+ - GitHub, npm, Supabase, SSH, or Git Credential Manager tokens.
22
+ - Client-side `SEMA_MCP_AUTH_TOKEN` values containing `sema_mcp_*` keys.
23
+ - `SEMA_MCP_OAUTH_SECRET`.
24
+ - `SEMA_MCP_OAUTH_PASSCODE`.
25
+ - Private key content.
26
+ - `.env`, build caches, uploads, installed dependencies, or temporary snapshots with secrets.
27
+
28
+ Operational runbooks may document non-secret references, such as the public domain, service name, and generic deployment role. They must never include private key bodies, private-key filenames, local key paths, non-public IPs, real server paths, or secret inventory details.
29
+
30
+ ### Remote Operation
31
+
32
+ - Use the smallest privilege that still performs the job.
33
+ - Do not log `Authorization` headers.
34
+ - Do not publish `/mcp` with empty `SEMA_MCP_PROJECT_ROOTS`.
35
+ - Keep Caddy or the reverse proxy with valid TLS.
36
+ - Test `/mcp` without token and expect an authorization challenge.
37
+ - Test account-scoped MCP tokens before declaring the product flow ready.
38
+
39
+ ### Incident
40
+
41
+ If a secret appears in chat, screenshot, log, release, or Git history:
42
+
43
+ 1. Treat it as compromised.
44
+ 2. Rotate it at the provider.
45
+ 3. Remove it from the current file.
46
+ 4. If it reached Git, rewrite history or revoke it permanently.
47
+
48
+ ## PT
49
+
50
+ O Sema MCP remoto é uma superfície sensível. Ele permite que agentes autorizados leiam contratos, verifiquem drift, gerem contexto IA-first e operem dentro das raízes permitidas. A segurança depende destas travas trabalhando juntas:
51
+
52
+ 1. HTTPS no proxy público.
53
+ 2. Autenticacao por chave comercial `sema_mcp_*` por request ou OAuth.
54
+ 3. `SEMA_MCP_PROJECT_ROOTS` apontando para uma raiz dedicada no servidor, por exemplo `/srv/sema/projetos`.
55
+ 4. Operação contract-first antes de código, deploy, docs, workflow, texto Author, jogo, jurídico, pesquisa ou ops.
56
+
57
+ Não publique o servidor sem essas travas.
58
+
59
+ ### Dados Que Não Podem Vazar
60
+
61
+ - Tokens de GitHub, npm, Supabase, SSH ou Git Credential Manager.
62
+ - Valores locais de `SEMA_MCP_AUTH_TOKEN` contendo chaves `sema_mcp_*`.
63
+ - `SEMA_MCP_OAUTH_SECRET`.
64
+ - `SEMA_MCP_OAUTH_PASSCODE`.
65
+ - Conteúdo de chave privada.
66
+ - `.env`, caches de build, uploads, dependências instaladas ou snapshots temporários com segredo.
67
+
68
+ Runbooks operacionais podem documentar referências não secretas, como domínio público, nome do serviço e papel genérico de deploy. Eles nunca devem incluir corpo de chave privada, nomes de arquivos de chave privada, caminhos locais de chave, IPs não públicos, caminhos reais de servidor ou detalhes do inventário de segredos.
69
+
70
+ ### Operação Remota
71
+
72
+ - Use o menor privilégio que ainda executa o trabalho.
73
+ - Não registre headers `Authorization` em logs.
74
+ - Não publique `/mcp` com `SEMA_MCP_PROJECT_ROOTS` vazio.
75
+ - Mantenha Caddy ou reverse proxy com TLS válido.
76
+ - Teste `/mcp` sem token esperando desafio de autorização.
77
+ - Teste tokens MCP por conta antes de declarar o fluxo de produto pronto.
78
+
79
+ ### Incidente
80
+
81
+ Se um segredo aparecer em chat, print, log, release ou histórico Git:
82
+
83
+ 1. Considere comprometido.
84
+ 2. Rotacione no provedor de origem.
85
+ 3. Remova do arquivo atual.
86
+ 4. Se chegou ao Git, reescreva histórico ou revogue definitivamente o segredo.
87
+
88
+ ## ES
89
+
90
+ El Sema MCP remoto es una superficie sensible. Permite que agentes autorizados lean contratos, verifiquen drift, generen contexto IA-first y operen dentro de las raíces permitidas. La seguridad depende de estos controles trabajando juntos:
91
+
92
+ 1. HTTPS en el proxy público.
93
+ 2. Autenticacion por clave comercial `sema_mcp_*` por request u OAuth.
94
+ 3. `SEMA_MCP_PROJECT_ROOTS` apuntando a una raíz dedicada en el servidor, por ejemplo `/srv/sema/projetos`.
95
+ 4. Operación contract-first antes de código, despliegue, docs, workflow, texto Author, juego, legal, investigación u ops.
96
+
97
+ No publiques el servidor sin esos controles.
98
+
99
+ ### Datos Que No Deben Filtrarse
100
+
101
+ - Tokens de GitHub, npm, Supabase, SSH o Git Credential Manager.
102
+ - Valores locales de `SEMA_MCP_AUTH_TOKEN` con claves `sema_mcp_*`.
103
+ - `SEMA_MCP_OAUTH_SECRET`.
104
+ - `SEMA_MCP_OAUTH_PASSCODE`.
105
+ - Contenido de llave privada.
106
+ - `.env`, cachés de build, uploads, dependencias instaladas o snapshots temporales con secretos.
107
+
108
+ Los runbooks operativos pueden documentar referencias no secretas, como dominio público, nombre del servicio y rol genérico de despliegue. Nunca deben incluir el cuerpo de la llave privada, nombres de archivos de llave privada, rutas locales de llaves, IPs no públicas, rutas reales del servidor o detalles del inventario de secretos.
109
+
110
+ ### Operación Remota
111
+
112
+ - Usa el menor privilegio que todavía permita ejecutar el trabajo.
113
+ - No registres headers `Authorization` en logs.
114
+ - No publiques `/mcp` con `SEMA_MCP_PROJECT_ROOTS` vacío.
115
+ - Mantén Caddy o el reverse proxy con TLS válido.
116
+ - Prueba `/mcp` sin token y espera un desafío de autorización.
117
+ - Prueba tokens MCP por cuenta antes de declarar listo el flujo de producto.
118
+
119
+ ### Incidente
120
+
121
+ Si un secreto aparece en chat, captura, log, release o historial Git:
122
+
123
+ 1. Trátalo como comprometido.
124
+ 2. Rótalo en el proveedor de origen.
125
+ 3. Elimínalo del archivo actual.
126
+ 4. Si llegó a Git, reescribe el historial o revócalo definitivamente.