@semacode/cli 0.8.8 → 1.0.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 (44) hide show
  1. package/README.md +11 -3
  2. package/dist/drift.d.ts +30 -1
  3. package/dist/drift.js +373 -17
  4. package/dist/drift.js.map +1 -1
  5. package/dist/index.js +828 -53
  6. package/dist/index.js.map +1 -1
  7. package/docs/AGENT_STARTER.md +10 -4
  8. package/docs/como-ensinar-a-sema-para-ia.md +17 -11
  9. package/docs/fluxo-pratico-ia-sema.md +42 -38
  10. package/docs/instalacao-e-primeiro-uso.md +189 -0
  11. package/docs/integracao-com-ia.md +228 -0
  12. package/docs/pagamento-ponta-a-ponta.md +155 -0
  13. package/docs/prompt-base-ia-sema.md +10 -3
  14. package/docs/sintaxe.md +267 -0
  15. package/exemplos/automacao.sema +107 -0
  16. package/exemplos/cadastro_usuario.sema +54 -0
  17. package/exemplos/calculadora.sema +78 -0
  18. package/exemplos/crud_simples.sema +89 -0
  19. package/exemplos/operacao_estrategia.sema +402 -0
  20. package/exemplos/pagamento.sema +222 -0
  21. package/exemplos/pagamento_dominio.sema +35 -0
  22. package/exemplos/testes_embutidos.sema +45 -0
  23. package/exemplos/tratamento_erro.sema +157 -0
  24. package/node_modules/@sema/gerador-dart/package.json +1 -1
  25. package/node_modules/@sema/gerador-python/package.json +1 -1
  26. package/node_modules/@sema/gerador-typescript/package.json +1 -1
  27. package/node_modules/@sema/nucleo/dist/ast/tipos.d.ts +14 -1
  28. package/node_modules/@sema/nucleo/dist/formatador/index.js +131 -22
  29. package/node_modules/@sema/nucleo/dist/formatador/index.js.map +1 -1
  30. package/node_modules/@sema/nucleo/dist/ir/conversor.js +546 -102
  31. package/node_modules/@sema/nucleo/dist/ir/conversor.js.map +1 -1
  32. package/node_modules/@sema/nucleo/dist/ir/modelos.d.ts +83 -5
  33. package/node_modules/@sema/nucleo/dist/lexer/lexer.js +1 -1
  34. package/node_modules/@sema/nucleo/dist/lexer/lexer.js.map +1 -1
  35. package/node_modules/@sema/nucleo/dist/lexer/tokens.js +10 -0
  36. package/node_modules/@sema/nucleo/dist/lexer/tokens.js.map +1 -1
  37. package/node_modules/@sema/nucleo/dist/parser/parser.js +230 -19
  38. package/node_modules/@sema/nucleo/dist/parser/parser.js.map +1 -1
  39. package/node_modules/@sema/nucleo/dist/semantico/analisador.d.ts +6 -1
  40. package/node_modules/@sema/nucleo/dist/semantico/analisador.js +269 -10
  41. package/node_modules/@sema/nucleo/dist/semantico/analisador.js.map +1 -1
  42. package/node_modules/@sema/nucleo/package.json +1 -1
  43. package/node_modules/@sema/padroes/package.json +1 -1
  44. package/package.json +7 -6
@@ -0,0 +1,189 @@
1
+ # Instalacao e Primeiro Uso
2
+
3
+ Este guia mostra o caminho mais curto para testar a Sema do jeito certo, sem misturar fluxo de usuario com gambiarra de contribuinte.
4
+
5
+ ## Requisitos
6
+
7
+ - Node.js instalado
8
+ - npm funcionando
9
+ - Python 3 e `pytest` se voce quiser rodar o fluxo completo de testes Python gerados
10
+
11
+ O repositorio so e necessario se voce quiser contribuir na Sema, rodar o showcase oficial localmente ou empacotar release.
12
+
13
+ ## Caminho oficial
14
+
15
+ Instalacao via npm:
16
+
17
+ ```bash
18
+ npm install -g @semacode/cli
19
+ sema --help
20
+ sema doctor
21
+ ```
22
+
23
+ Se preferir o tarball oficial da GitHub Release:
24
+
25
+ ```bash
26
+ npm install -g https://github.com/gerlanss/Sema/releases/latest/download/sema-cli-latest.tgz
27
+ sema --help
28
+ sema doctor
29
+ ```
30
+
31
+ Instalacao local ao projeto:
32
+
33
+ ```bash
34
+ npm install @semacode/cli
35
+ npx sema --help
36
+ ```
37
+
38
+ Instaladores auxiliares para a linha publica atual:
39
+
40
+ - Linux/macOS: `curl -fsSL https://raw.githubusercontent.com/gerlanss/Sema/v1.0.0/install-sema.sh | bash`
41
+ - Windows PowerShell: `irm https://raw.githubusercontent.com/gerlanss/Sema/v1.0.0/install-sema.ps1 | iex`
42
+
43
+ Se voce quiser reproducao estrita, prefira o npm registry ou o tarball da GitHub Release.
44
+
45
+ ## Primeiro teste sem clonar o repo
46
+
47
+ ```bash
48
+ mkdir sema-demo
49
+ cd sema-demo
50
+ sema iniciar
51
+ sema validar contratos/pedidos.sema --json
52
+ ```
53
+
54
+ ## Primeiro fluxo util
55
+
56
+ ```bash
57
+ sema validar contratos/pedidos.sema --json
58
+ sema ast contratos/pedidos.sema --json
59
+ sema ir contratos/pedidos.sema --json
60
+ sema formatar contratos/pedidos.sema
61
+ sema verificar contratos --saida ./.tmp/verificacao
62
+ ```
63
+
64
+ ## Primeiro fluxo de IA real
65
+
66
+ Sem clonar o repo, o fluxo que mais mostra a proposta da Sema hoje e:
67
+
68
+ ```bash
69
+ sema inspecionar . --json
70
+ sema resumo contratos/pedidos.sema --micro --para mudanca
71
+ sema drift contratos/pedidos.sema --json
72
+ sema contexto-ia contratos/pedidos.sema --saida ./.tmp/contexto-pedidos --json
73
+ ```
74
+
75
+ Esse fluxo mostra:
76
+
77
+ - base de projeto resolvida
78
+ - cartao semantico curto para IA pequena ou gratuita
79
+ - codigo vivo detectado
80
+ - `impl` e `vinculos` resolvidos
81
+ - score, confianca e lacunas do `drift`
82
+ - `briefing.min.json` e `briefing.json` para IA antes da edicao
83
+
84
+ ## `sema.config.json`
85
+
86
+ Exemplo de configuracao para projeto real:
87
+
88
+ ```json
89
+ {
90
+ "origens": ["./contratos"],
91
+ "saida": "./generated",
92
+ "alvos": ["typescript", "python"],
93
+ "alvoPadrao": "typescript",
94
+ "estruturaSaida": "backend",
95
+ "framework": "nestjs",
96
+ "modoEstrito": true,
97
+ "diretoriosSaidaPorAlvo": {
98
+ "typescript": "./generated/nestjs",
99
+ "python": "./generated/fastapi"
100
+ },
101
+ "convencoesGeracaoPorProjeto": "backend"
102
+ }
103
+ ```
104
+
105
+ ## Gerar codigo
106
+
107
+ Scaffold base:
108
+
109
+ ```bash
110
+ sema compilar contratos/pedidos.sema --alvo typescript --saida ./saida/typescript
111
+ sema compilar contratos/pedidos.sema --alvo python --saida ./saida/python
112
+ sema compilar contratos/pedidos.sema --alvo dart --saida ./saida/dart
113
+ ```
114
+
115
+ Scaffold backend:
116
+
117
+ ```bash
118
+ sema compilar contratos/pedidos.sema --alvo typescript --framework nestjs --estrutura backend --saida ./generated/nestjs
119
+ sema compilar contratos/pedidos.sema --alvo python --framework fastapi --estrutura backend --saida ./generated/fastapi
120
+ ```
121
+
122
+ ## Extensao VS Code
123
+
124
+ Empacotar:
125
+
126
+ ```bash
127
+ npm run extensao:empacotar
128
+ ```
129
+
130
+ Instalar localmente:
131
+
132
+ ```bash
133
+ npm run extensao:instalar-local
134
+ ```
135
+
136
+ Ou manualmente:
137
+
138
+ ```bash
139
+ code --install-extension .tmp/editor-vscode/sema-language-tools-1.0.0.vsix --force
140
+ ```
141
+
142
+ ## Caminho de contribuinte
143
+
144
+ Se o objetivo for desenvolver a propria Sema:
145
+
146
+ ```bash
147
+ npm install
148
+ npm run build
149
+ npm run cli:instalar-local
150
+ sema validar exemplos/calculadora.sema
151
+ ```
152
+
153
+ Se quiser validar tudo de cara:
154
+
155
+ ```bash
156
+ npm run project:check
157
+ ```
158
+
159
+ ## `npm link` continua existindo
160
+
161
+ Esse fluxo continua util, mas e trilha de contribuinte:
162
+
163
+ ```powershell
164
+ npm run cli:instalar-local
165
+ ```
166
+
167
+ Serve para:
168
+
169
+ - testar a experiencia de terminal no proprio ambiente
170
+ - desenvolver a CLI
171
+ - usar `sema` como interface principal mesmo durante o desenvolvimento local
172
+
173
+ Para remover:
174
+
175
+ ```powershell
176
+ npm run cli:desinstalar-local
177
+ ```
178
+
179
+ ## Resumo honesto
180
+
181
+ Hoje o jeito certo de testar a Sema e:
182
+
183
+ 1. instalar a CLI pelo npm ou pela GitHub Release
184
+ 2. rodar `sema iniciar`
185
+ 3. validar `contratos/pedidos.sema`
186
+ 4. usar `inspecionar -> resumo -> drift -> contexto-ia` quando o projeto for vivo
187
+ 5. ler `briefing.min.json` ou `briefing.json` antes de mandar a IA sair cavando arquivo
188
+
189
+ Clone + build + `npm link` continua bom para oficina, nao para landing page publica.
@@ -0,0 +1,228 @@
1
+ # Integracao com IA
2
+
3
+ A Sema foi desenhada para IA editar backend vivo com menos chute. O ponto nao e "a IA gera tudo"; o ponto e deixar contrato, vinculo e contexto operacional estruturados o bastante para a IA nao trabalhar igual um bicho tonto. Leitura humana continua possivel, mas nao e o centro do desenho.
4
+
5
+ ## Moldura correta
6
+
7
+ Se uma IA tratar a Sema como enfeite declarativo, ela vai usar mal. A moldura certa e esta:
8
+
9
+ - `impl` liga intencao a simbolo executavel
10
+ - `vinculos` ligam contrato a arquivo, simbolo, recurso e superficie real
11
+ - `execucao` explicita timeout, retry, compensacao e criticidade
12
+ - `drift` mede verdade contra codigo vivo
13
+ - `contexto-ia` empacota briefing operacional antes da edicao
14
+
15
+ Em resumo: a Sema nao serve para a IA adivinhar melhor. Ela serve para a IA precisar adivinhar menos.
16
+
17
+ ## Fluxo recomendado
18
+
19
+ Quando o trabalho cair em projeto vivo, o fluxo canonico agora e:
20
+
21
+ ```bash
22
+ sema inspecionar . --json
23
+ sema resumo contratos/modulo.sema --micro --para mudanca
24
+ sema drift contratos/modulo.sema --json
25
+ sema contexto-ia contratos/modulo.sema --saida ./.tmp/contexto --json
26
+ ```
27
+
28
+ Leitura rapida:
29
+
30
+ 1. `inspecionar` descobre base do projeto, diretorios de codigo, fontes legado e modulos relevantes.
31
+ 2. `resumo` entrega o menor cartao semantico util para a IA atual.
32
+ 3. `drift` mede impls, vinculos, rotas, recursos, score semantico e confianca.
33
+ 4. `contexto-ia` gera o pacote que a IA deveria ler antes de editar.
34
+
35
+ ## Capacidade da IA
36
+
37
+ A Sema agora assume explicitamente que nem toda IA aguenta o pacote completo.
38
+
39
+ - IA pequena ou gratuita: comece em `resumo.micro.txt`, `briefing.min.json` e `prompt-curto.txt`
40
+ - IA media: suba para `resumo.curto.txt`, `briefing.min.json` e `drift.json`
41
+ - IA grande ou com tool use: leia `README.md`, `resumo.md`, `briefing.json`, `drift.json`, `ir.json` e `ast.json`
42
+
43
+ Se voce joga `ast.json` inteiro em modelo pequeno e depois reclama da resposta, foi voce que fez cagada operacional.
44
+
45
+ ## O que a IA deve consumir
46
+
47
+ No minimo, para IA pequena:
48
+
49
+ - `resumo.micro.txt`
50
+ - `briefing.min.json`
51
+
52
+ No minimo, para IA media:
53
+
54
+ - `resumo.curto.txt`
55
+ - `briefing.min.json`
56
+ - `drift.json`
57
+
58
+ No minimo, para IA grande:
59
+
60
+ - `ir.json`
61
+ - `drift.json`
62
+ - `briefing.json`
63
+ - o proprio contrato `.sema`
64
+
65
+ O `briefing.json` agora e a peca mais operacional do pacote. Ele responde perguntas que agente serio precisa responder antes de mexer em codigo:
66
+
67
+ - o que tocar
68
+ - o que validar
69
+ - o que esta frouxo
70
+ - o que foi inferido
71
+ - quais simbolos estao relacionados
72
+ - quais superficies publicas podem ser afetadas
73
+ - quais testes minimos rodar
74
+
75
+ ## Saida relevante do pacote `contexto-ia`
76
+
77
+ Hoje o pacote pode incluir:
78
+
79
+ - `resumo.micro.txt`
80
+ - `resumo.curto.txt`
81
+ - `resumo.md`
82
+ - `briefing.min.json`
83
+ - `prompt-curto.txt`
84
+ - `ast.json`
85
+ - `ir.json`
86
+ - `diagnosticos.json`
87
+ - `drift.json`
88
+ - `briefing.json`
89
+ - `README.md`
90
+ - `impl.<origem>.txt` quando existir implementacao vinculada
91
+
92
+ ## Score, confianca e risco
93
+
94
+ `drift`, `inspecionar` e `contexto-ia` passam a expor sinais que ajudam a IA a nao tratar rascunho como verdade absoluta:
95
+
96
+ - `scoreSemantico`
97
+ - `confiancaVinculo`
98
+ - `riscoOperacional`
99
+ - `lacunas`
100
+ - `vinculos_validos`
101
+ - `vinculos_quebrados`
102
+
103
+ Leitura pratica:
104
+
105
+ - score alto + confianca alta: a IA pode editar com trilha boa
106
+ - score medio: ainda precisa ler contrato e conferir codigo vivo
107
+ - vinculo quebrado: a IA deve reduzir ousadia e consertar rastreabilidade antes de refatorar igual doida
108
+
109
+ ## Superficies que a IA pode esperar
110
+
111
+ A linguagem agora trata estas bordas como primeira classe:
112
+
113
+ - `route`
114
+ - `worker`
115
+ - `evento`
116
+ - `fila`
117
+ - `cron`
118
+ - `webhook`
119
+ - `cache`
120
+ - `storage`
121
+ - `policy`
122
+
123
+ Isso importa porque backend real nao vive so de HTTP. Se a IA vai editar stack viva, ela precisa enxergar job, evento, webhook e recurso assincrono como parte do contrato, nao como sobra esquecida no runtime.
124
+
125
+ ## Contrato operacional
126
+
127
+ Dentro de `task` e superficies, a IA deve prestar atencao em:
128
+
129
+ - `input`
130
+ - `output`
131
+ - `effects`
132
+ - `impl`
133
+ - `vinculos`
134
+ - `execucao`
135
+ - `guarantees`
136
+ - `error`
137
+
138
+ Exemplo minimo:
139
+
140
+ ```sema
141
+ task medir_drift {
142
+ input {
143
+ contrato: Texto required
144
+ }
145
+ output {
146
+ score: Decimal
147
+ }
148
+ impl {
149
+ ts: cli.src.drift.analisarDriftLegado
150
+ }
151
+ vinculos {
152
+ arquivo: "pacotes/cli/src/drift.ts"
153
+ simbolo: cli.src.drift.analisarDriftLegado
154
+ }
155
+ execucao {
156
+ timeout: "30s"
157
+ retry: "3x exponencial"
158
+ criticidade_operacional: alta
159
+ }
160
+ guarantees {
161
+ score existe
162
+ }
163
+ }
164
+ ```
165
+
166
+ ## Comandos que agente serio nao deveria ignorar
167
+
168
+ - `sema ast arquivo.sema --json`
169
+ - `sema ir arquivo.sema --json`
170
+ - `sema validar arquivo.sema --json`
171
+ - `sema diagnosticos arquivo.sema --json`
172
+ - `sema formatar arquivo.sema`
173
+ - `sema inspecionar [arquivo-ou-pasta] --json`
174
+ - `sema drift [arquivo-ou-pasta] --json`
175
+ - `sema contexto-ia arquivo.sema [--saida <diretorio>] --json`
176
+ - `sema verificar [arquivo-ou-pasta] --json`
177
+
178
+ ## Fluxos comuns
179
+
180
+ Quando a tarefa for so modelagem:
181
+
182
+ ```bash
183
+ sema ast contratos/pedidos.sema --json
184
+ sema ir contratos/pedidos.sema --json
185
+ sema formatar contratos/pedidos.sema
186
+ sema validar contratos/pedidos.sema --json
187
+ ```
188
+
189
+ Quando a tarefa envolver codigo derivado:
190
+
191
+ ```bash
192
+ sema inspecionar . --json
193
+ sema drift contratos/pedidos.sema --json
194
+ sema contexto-ia contratos/pedidos.sema --saida ./.tmp/contexto-pedidos --json
195
+ sema compilar contratos/pedidos.sema --alvo typescript --framework nestjs --estrutura backend --saida ./generated/nestjs
196
+ ```
197
+
198
+ Quando a tarefa nasce num legado:
199
+
200
+ ```bash
201
+ sema importar flask ./backend-flask --saida ./sema/importado --json
202
+ sema formatar ./sema/importado
203
+ sema validar ./sema/importado --json
204
+ sema drift ./sema/importado --json
205
+ ```
206
+
207
+ ## Showcase oficial do repo
208
+
209
+ Se voce estiver no monorepo da Sema, o showcase [showcases/ranking-showroom](../showcases/ranking-showroom/) continua sendo a melhor vitrine do fluxo completo:
210
+
211
+ ```bash
212
+ cd showcases/ranking-showroom
213
+ sema inspecionar . --json
214
+ sema drift contratos/ranking_showroom.sema --json
215
+ sema contexto-ia contratos/ranking_showroom.sema --saida ./.tmp/contexto-ranking --json
216
+ ```
217
+
218
+ O valor aqui nao e so "validou". O valor e sair com score, confianca, drift e briefing suficientes para editar o backend Flask real sem sair cavando arquivo a esmo.
219
+
220
+ ## Fechamento operacional
221
+
222
+ Quando a IA terminar a mudanca fora do monorepo:
223
+
224
+ ```bash
225
+ sema formatar contratos/modulo.sema
226
+ sema validar contratos/modulo.sema --json
227
+ sema verificar contratos --json --saida ./.tmp/verificacao-final
228
+ ```
@@ -0,0 +1,155 @@
1
+ # Pagamento Ponta a Ponta na Sema
2
+
3
+ Este documento descreve o vertical oficial de pagamento da Sema no fluxo publico atual.
4
+
5
+ O objetivo nao e mostrar um exemplo fofo. O objetivo e demonstrar que a linguagem ja consegue modelar um fluxo de negocio real com:
6
+
7
+ - contrato publico
8
+ - regras
9
+ - efeitos operacionais
10
+ - transicoes de estado
11
+ - orquestracao
12
+ - erros publicos
13
+ - testes executaveis
14
+
15
+ ## Arquivos de referencia
16
+
17
+ - `exemplos/pagamento_dominio.sema`
18
+ - `exemplos/pagamento.sema`
19
+
20
+ ## Como o vertical foi dividido
21
+
22
+ ### `exemplos.pagamento.dominio`
23
+
24
+ Centraliza os contratos compartilhados:
25
+
26
+ - `entity Pagamento`
27
+ - `enum StatusPagamento`
28
+ - `state ciclo_pagamento`
29
+
30
+ ### `exemplos.pagamento`
31
+
32
+ Centraliza a operacao do vertical:
33
+
34
+ - `task processar_pagamento`
35
+ - `task confirmar_pagamento`
36
+ - `task notificar_falha_pagamento`
37
+ - `task registrar_timeout_pagamento`
38
+ - `flow orquestracao_pagamento`
39
+ - `route processar_pagamento_publico`
40
+
41
+ ## Narrativa do caso
42
+
43
+ ### Entrada publica
44
+
45
+ A operacao entra por:
46
+
47
+ - `route processar_pagamento_publico`
48
+
49
+ Esse contrato publica:
50
+
51
+ - `pagamento_id`
52
+ - `valor`
53
+ - `token`
54
+
55
+ E expoe:
56
+
57
+ - `pagamento`
58
+ - `status`
59
+ - erros publicos coerentes com a `task`
60
+
61
+ ### Task interna
62
+
63
+ A `task processar_pagamento` faz o trabalho central:
64
+
65
+ - valida entrada
66
+ - consulta o gateway
67
+ - persiste o pagamento
68
+ - emite evento
69
+ - notifica comprovante
70
+ - registra auditoria
71
+ - garante consistencia da saida
72
+
73
+ ### Estado e transicoes
74
+
75
+ O `state ciclo_pagamento` ancora o contrato de transicao:
76
+
77
+ - `PENDENTE -> AUTORIZADO`
78
+ - `AUTORIZADO -> PROCESSADO`
79
+ - `PENDENTE -> RECUSADO`
80
+
81
+ A `task` explicita quais transicoes ela realmente usa.
82
+
83
+ ### Flow de orquestracao
84
+
85
+ O `flow orquestracao_pagamento` demonstra:
86
+
87
+ - passagem de contexto
88
+ - confirmacao em caso de sucesso
89
+ - notificacao em caso de recusa
90
+ - registro de timeout em caso de indisponibilidade
91
+ - ramificacao por erro tipado
92
+
93
+ ### Efeitos operacionais
94
+
95
+ O vertical usa as 5 categorias oficiais da Sema:
96
+
97
+ - `persistencia`
98
+ - `consulta`
99
+ - `evento`
100
+ - `notificacao`
101
+ - `auditoria`
102
+
103
+ Tambem usa `criticidade` para deixar claro o peso operacional do efeito.
104
+
105
+ ### Falhas reais
106
+
107
+ O vertical cobre explicitamente:
108
+
109
+ - autorizacao negada
110
+ - saldo insuficiente
111
+ - timeout de gateway
112
+
113
+ ## Fluxo de trabalho recomendado
114
+
115
+ ### 1. Escrever ou ajustar os arquivos `.sema`
116
+
117
+ Use o dominio compartilhado em um modulo e a operacao em outro modulo.
118
+
119
+ ### 2. Aplicar o formato canonico
120
+
121
+ ```bash
122
+ sema formatar exemplos
123
+ ```
124
+
125
+ ### 3. Validar semanticamente
126
+
127
+ ```bash
128
+ sema validar exemplos/pagamento.sema
129
+ ```
130
+
131
+ ### 4. Gerar codigo
132
+
133
+ ```bash
134
+ sema compilar exemplos/pagamento.sema --alvo typescript --saida ./.tmp/pagamento-ts
135
+ sema compilar exemplos/pagamento.sema --alvo python --saida ./.tmp/pagamento-py
136
+ ```
137
+
138
+ ### 5. Verificar o vertical completo
139
+
140
+ ```bash
141
+ sema verificar exemplos/pagamento.sema --json --saida ./.tmp/verificacao-pagamento
142
+ ```
143
+
144
+ ## O que esse vertical prova
145
+
146
+ Se esse vertical passa, a Sema ja consegue demonstrar que:
147
+
148
+ - modela contrato publico
149
+ - modela efeitos operacionais
150
+ - modela falhas reais
151
+ - modulariza dominio com `use`
152
+ - gera artefatos coerentes para TypeScript e Python
153
+ - executa testes gerados sem gambiarra conceitual
154
+
155
+ Esse e o criterio pratico que sustenta o uso publico do vertical de pagamento como referencia para IA e geracao.
@@ -2,7 +2,7 @@
2
2
 
3
3
  Este arquivo serve como prompt-base oficial para qualquer IA que precise ler, escrever, revisar ou transformar arquivos `.sema`.
4
4
 
5
- O objetivo nao e fazer a IA "improvisar bonito". O objetivo e fazer a IA operar a linguagem com previsibilidade.
5
+ O objetivo nao e fazer a IA "improvisar bonito". O objetivo e fazer a IA operar a linguagem com previsibilidade. A Sema nao foi desenhada para ergonomia humana como prioridade; ela foi desenhada para IA.
6
6
 
7
7
  ## Prompt-base
8
8
 
@@ -11,7 +11,7 @@ Use o texto abaixo como base:
11
11
  ```text
12
12
  Voce esta trabalhando com Sema, um Protocolo de Governanca de Intencao para IA e backend vivo.
13
13
 
14
- Tecnicamente, a Sema funciona como linguagem de intencao orientada a contrato. Operacionalmente, ela existe para governar semantica acima da stack, nao para substituir arquitetura, design ou curadoria humana.
14
+ Tecnicamente, a Sema funciona como linguagem de intencao orientada a contrato. Operacionalmente, ela existe para governar semantica acima da stack e reduzir ambiguidade para IA, nao para substituir arquitetura, design ou curadoria humana.
15
15
 
16
16
  Trate a Sema como linguagem de especificacao executavel e protocolo de governanca semantica. Nao invente sintaxe, palavras-chave ou blocos fora da gramatica e dos exemplos oficiais.
17
17
 
@@ -20,7 +20,8 @@ Fontes de verdade, em ordem:
20
20
  2. gramatica e documentacao de sintaxe da Sema
21
21
  3. especificacao semantica da linguagem
22
22
  4. exemplos oficiais, com prioridade para o vertical de pagamento
23
- 5. AST, IR e diagnosticos exportados pela CLI em JSON
23
+ 5. `sema resumo` e `briefing.min.json` quando a IA for pequena
24
+ 6. AST, IR e diagnosticos exportados pela CLI em JSON quando a capacidade aguentar
24
25
 
25
26
  Regras de operacao:
26
27
  - preserve o significado semantico
@@ -57,6 +58,12 @@ Se voce quiser um prompt menor para uso frequente:
57
58
  Trabalhe com Sema como DSL semantica orientada a contrato. Nao invente sintaxe. Use os exemplos oficiais e a gramatica como referencia de escrita. Use `ir --json` como fonte de verdade semantica, `diagnosticos --json` como fonte de correcao e `sema formatar` como fonte unica de estilo. Antes de encerrar, rode validacao e verificacao.
58
59
  ```
59
60
 
61
+ Se voce quiser um prompt ainda mais curto e pronto para colar, use:
62
+
63
+ ```bash
64
+ sema prompt-curto caminho/arquivo.sema --curto --para mudanca
65
+ ```
66
+
60
67
  ## Variacao para revisao
61
68
 
62
69
  Use esta versao quando a IA for revisar `.sema` em vez de criar: