@semacode/cli 1.5.55 → 2.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 (54) hide show
  1. package/README.md +50 -7
  2. package/dist/agentContext.d.ts +1 -1
  3. package/dist/agentContext.js +3 -3
  4. package/dist/agentContextPack.js +33 -92
  5. package/dist/agentContextTipos.d.ts +6 -9
  6. package/dist/agentContextTipos.js +5 -4
  7. package/dist/agentEntryPoints.d.ts +22 -2
  8. package/dist/agentEntryPoints.js +229 -126
  9. package/dist/docs.part01.js +1 -1
  10. package/dist/docs.part02.js +21 -10
  11. package/dist/doctorCommand.d.ts +4 -4
  12. package/dist/doctorCommand.js +21 -10
  13. package/dist/exemplosOficiais.d.ts +10 -0
  14. package/dist/exemplosOficiais.js +32 -22
  15. package/dist/fsGovernado.js +8 -6
  16. package/dist/iaPrompts.d.ts +2 -2
  17. package/dist/iaPrompts.js +3 -3
  18. package/dist/index.part01.d.ts +1 -1
  19. package/dist/index.part01.js +6 -6
  20. package/dist/index.part02.js +1 -1
  21. package/dist/index.part03.d.ts +1 -0
  22. package/dist/index.part03.js +26 -12
  23. package/dist/index.part04.d.ts +1 -0
  24. package/dist/index.part04.js +49 -21
  25. package/dist/index.part05.js +1 -1
  26. package/dist/index.part06.d.ts +1 -1
  27. package/dist/index.part06.js +27 -18
  28. package/dist/index.part07.js +20 -20
  29. package/dist/index.part08.js +4 -8
  30. package/dist/initCommand.d.ts +3 -1
  31. package/dist/initCommand.js +41 -12
  32. package/dist/initTemplatesBase.js +8 -10
  33. package/dist/workspaceWrite.d.ts +22 -0
  34. package/dist/workspaceWrite.js +332 -0
  35. package/docs/README.md +10 -4
  36. package/docs/ai-integration.md +31 -12
  37. package/docs/ai-onboarding.md +43 -14
  38. package/docs/ai-workflow.md +22 -39
  39. package/docs/auth.md +13 -3
  40. package/docs/cli.md +21 -8
  41. package/docs/commands.md +9 -10
  42. package/docs/deploy.md +27 -4
  43. package/docs/documentation.md +2 -2
  44. package/docs/env.md +3 -1
  45. package/docs/getting-started.md +27 -3
  46. package/docs/repositories.md +18 -2
  47. package/docs/rollback.md +23 -5
  48. package/docs/security.md +8 -0
  49. package/docs/syntax.md +8 -9
  50. package/docs/testing.md +15 -4
  51. package/docs/vocabulary.md +2 -1
  52. package/package.json +20 -12
  53. package/dist/billing/index.d.ts +0 -17
  54. package/dist/billing/index.js +0 -74
package/README.md CHANGED
@@ -1,10 +1,15 @@
1
1
  # @semacode/cli
2
2
 
3
- `@semacode/cli` is the public local CLI for Sema semantic governance.
3
+ `@semacode/cli` is the public Codex-native local CLI for Sema semantic
4
+ governance.
4
5
 
5
6
  It validates `.sema` contracts, checks semantic drift, maps impact, enforces
6
- documentation gates, generates starter code, and prepares AI-first context for
7
- agents working inside a local project folder.
7
+ documentation gates, generates starter code, and prepares contract-first
8
+ context for Codex inside a local project folder.
9
+
10
+ Sema is an independent product and is not affiliated with or endorsed by
11
+ OpenAI. Codex-native describes Sema's official product direction, not an
12
+ official OpenAI program, integration, or submission.
8
13
 
9
14
  Official support: [suporte@otimitare.online](mailto:suporte@otimitare.online)
10
15
 
@@ -12,19 +17,53 @@ Official support: [suporte@otimitare.online](mailto:suporte@otimitare.online)
12
17
 
13
18
  ```bash
14
19
  npm install -g @semacode/cli
20
+ codex plugin marketplace add gerlanss/Sema
21
+ codex plugin add sema@sema
15
22
  ```
16
23
 
24
+ Open a new Codex task in the target repository after installing the plugin.
25
+ Existing tasks do not reload their plugin/skill catalog. Invoke `$sema` in the
26
+ new task; after it creates and reads `AGENTS.md`, later tasks load that workspace
27
+ protocol automatically.
28
+
17
29
  ## First Run
18
30
 
19
31
  ```bash
20
32
  sema --version
21
- sema preflight resumo --json
22
33
  sema resumo . --curto
23
34
  ```
24
35
 
25
- Public Sema is local-only. The CLI does not require external service credentials,
26
- does not install service keys, and does not contact external services during
27
- `preflight`.
36
+ Public Sema is local-only. The CLI runs directly without a Sema login, user
37
+ authorization, product-license check, activation key, token, credits, billing
38
+ service, control panel, or external service credentials. The license governs
39
+ use and redistribution; it is not a runtime activation gate.
40
+
41
+ ## Codex Setup
42
+
43
+ `AGENTS.md` is the official Sema entrypoint for Codex:
44
+
45
+ ```bash
46
+ sema sync-codex --json
47
+ ```
48
+
49
+ Codex automatically loads `AGENTS.md` as durable repository guidance. See the
50
+ [Codex `AGENTS.md` documentation](https://learn.chatgpt.com/docs/agent-configuration/agents-md).
51
+
52
+ The CLI is the engine and source of truth; `AGENTS.md` is the automatic
53
+ workspace protocol. The Sema skill is required for Codex to bootstrap a project
54
+ that does not have Sema yet. After initialization, the skill delegates to the
55
+ generated `AGENTS.md`. Installing this npm package never writes into
56
+ `CODEX_HOME`; skill installation remains an explicit Codex command.
57
+
58
+ ## Codex-Native Architecture
59
+
60
+ - `AGENTS.md` is the only official entrypoint. `sync-codex` changes only valid
61
+ Sema-managed blocks and preserves malformed or manual content for review.
62
+ - Agent Context Pack consumers use schema version 6 and the fields
63
+ `entrypointCodex`, `codexNativo`, and `cliLocalSemAutorizacao`.
64
+ - The Sema Codex skill is required for first contact. It initializes the
65
+ workspace and generates `AGENTS.md`; it does not duplicate the governed
66
+ workflow after that handoff.
28
67
 
29
68
  ## Local Workflow
30
69
 
@@ -42,6 +81,10 @@ If the project has no `.sema` contract, create one before implementing behavior:
42
81
  sema iniciar --template base
43
82
  ```
44
83
 
84
+ Initialization preserves existing files and rejects symlink or junction
85
+ escapes. Use `--force` only when overwriting the template destinations is an
86
+ explicit human decision; the Codex bootstrap skill never adds it.
87
+
45
88
  ## Code Generation
46
89
 
47
90
  ```bash
@@ -1,7 +1,7 @@
1
1
  import { type GuiaCapacidadeIaMap } from './agentContextTipos.js';
2
2
  export declare function criarEntradaCanonicaProjeto(guiaPorCapacidade: GuiaCapacidadeIaMap): {
3
3
  descricao: string;
4
- ordemLeitura: ("SEMA_BOOT.md" | "llms.txt" | "AGENT_CONTEXT_PACK.json" | "SEMA_SMALL_MODEL.md" | "SEMA_BRIEF.md" | "SEMA_INDEX.json" | "AGENTS.md" | "README.md" | "llms-full.txt")[];
4
+ ordemLeitura: ("AGENTS.md" | "SEMA_BOOT.md" | "SEMA_SMALL_MODEL.md" | "AGENT_CONTEXT_PACK.json" | "SEMA_BRIEF.micro.txt" | "SEMA_BRIEF.curto.txt" | "SEMA_BRIEF.md" | "SEMA_INDEX.json" | "README.md")[];
5
5
  porCapacidade: {
6
6
  fraca: string[];
7
7
  pequena: string[];
@@ -4,9 +4,9 @@ import { criarAgentContextPack } from './agentContextPack.js';
4
4
  import { ALIASES_CAPACIDADE_IA, ARQUIVO_AGENT_CONTEXT_PACK, ARQUIVO_SEMA_BOOT, ARQUIVO_SEMA_SMALL_MODEL, ARQUIVOS_CANONICOS_IA_RAIZ, DOCUMENTOS_SUPORTE_IA, } from './agentContextTipos.js';
5
5
  export function criarEntradaCanonicaProjeto(guiaPorCapacidade) {
6
6
  const agentContextPack = criarAgentContextPack(guiaPorCapacidade);
7
- const fraca = [ARQUIVO_SEMA_BOOT, ARQUIVO_SEMA_SMALL_MODEL, 'llms.txt', ARQUIVO_AGENT_CONTEXT_PACK, 'SEMA_BRIEF.micro.txt', 'SEMA_INDEX.json', 'AGENTS.md'];
8
- const media = [ARQUIVO_SEMA_BOOT, 'llms.txt', ARQUIVO_AGENT_CONTEXT_PACK, 'SEMA_BRIEF.curto.txt', 'SEMA_INDEX.json', 'AGENTS.md', 'README.md'];
9
- const forte = [ARQUIVO_SEMA_BOOT, 'llms-full.txt', ARQUIVO_AGENT_CONTEXT_PACK, 'SEMA_BRIEF.md', 'SEMA_INDEX.json', 'AGENTS.md', 'README.md'];
7
+ const fraca = [ARQUIVO_SEMA_BOOT, ARQUIVO_SEMA_SMALL_MODEL, ARQUIVO_AGENT_CONTEXT_PACK, 'SEMA_BRIEF.micro.txt', 'SEMA_INDEX.json', 'AGENTS.md'];
8
+ const media = [ARQUIVO_SEMA_BOOT, ARQUIVO_AGENT_CONTEXT_PACK, 'SEMA_BRIEF.curto.txt', 'SEMA_INDEX.json', 'AGENTS.md', 'README.md'];
9
+ const forte = [ARQUIVO_SEMA_BOOT, ARQUIVO_AGENT_CONTEXT_PACK, 'SEMA_BRIEF.md', 'SEMA_INDEX.json', 'AGENTS.md', 'README.md'];
10
10
  return {
11
11
  descricao: 'Entrada canônica do repositório para IA. O repo não é human-first; a IA deve começar por esses artefatos antes de abrir código cru.',
12
12
  ordemLeitura: [...ARQUIVOS_CANONICOS_IA_RAIZ],
@@ -1,26 +1,26 @@
1
1
  // SEMA-GOVERNED: sema.produto.governanca_ia.contexto.agent_pack
2
2
  // Descrição: monta o Agent Context Pack e políticas que agentes fracos, médios e fortes consomem antes do código.
3
3
  import { LIMITE_AVISO_LINHAS_CODIGO_GOVERNADO, LIMITE_AVISO_LINHAS_CONTRATO_SEMA, LIMITE_BLOQUEIO_LINHAS_CODIGO_GOVERNADO, LIMITE_BLOQUEIO_LINHAS_CONTRATO_SEMA, } from './driftOrcamento.js';
4
- import { ALIASES_CAPACIDADE_IA, ARQUIVO_AGENT_CONTEXT_PACK, ARQUIVO_DOC_AGENTES_CAPACIDADE, ARQUIVO_SEMA_BOOT, ARQUIVO_SEMA_SMALL_MODEL, EXEMPLOS_OFICIAIS_AGENT_CONTEXT, } from './agentContextTipos.js';
4
+ import { ALIASES_CAPACIDADE_IA, ARQUIVO_AGENT_CONTEXT_PACK, ARQUIVO_DOC_AGENTES_CAPACIDADE, ARQUIVO_ENTRYPOINT_CODEX, ARQUIVO_SEMA_BOOT, ARQUIVO_SEMA_SMALL_MODEL, EXEMPLOS_OFICIAIS_AGENT_CONTEXT, } from './agentContextTipos.js';
5
5
  export const LIMITE_CARACTERES_PAYLOAD_INLINE = 262144;
6
6
  export function criarGuiaCapacidadeIa() {
7
7
  const fraca = {
8
8
  descricao: "IA fraca, gratuita, local pequena ou com disciplina baixa. Leia o boot card, pare cedo e chame Sema antes de agir.",
9
- artefatos: [ARQUIVO_SEMA_BOOT, ARQUIVO_SEMA_SMALL_MODEL, "agent-context-pack.json", "resumo.micro.txt", "briefing.min.json", "prompt-curto.txt"],
10
- ordemLeitura: [ARQUIVO_SEMA_BOOT, ARQUIVO_SEMA_SMALL_MODEL, "agent-context-pack.json", "resumo.micro.txt", "briefing.min.json", "resumo.curto.txt"],
9
+ artefatos: [ARQUIVO_SEMA_BOOT, ARQUIVO_SEMA_SMALL_MODEL, ARQUIVO_AGENT_CONTEXT_PACK, "SEMA_BRIEF.micro.txt", "SEMA_INDEX.json", "AGENTS.md"],
10
+ ordemLeitura: [ARQUIVO_SEMA_BOOT, ARQUIVO_SEMA_SMALL_MODEL, ARQUIVO_AGENT_CONTEXT_PACK, "SEMA_BRIEF.micro.txt", "SEMA_INDEX.json", "AGENTS.md"],
11
11
  evitar: ["ast.json", "ir.json", "diagnosticos.json"],
12
12
  };
13
13
  const media = {
14
14
  descricao: "IA média. Aguenta boot, resumo expandido, briefing mínimo, drift e documentação curta.",
15
- artefatos: [ARQUIVO_SEMA_BOOT, "agent-context-pack.json", "resumo.curto.txt", "briefing.min.json", "drift.json", "prompt-curto.txt"],
16
- ordemLeitura: [ARQUIVO_SEMA_BOOT, "agent-context-pack.json", "resumo.curto.txt", "briefing.min.json", "drift.json", "resumo.md"],
15
+ artefatos: [ARQUIVO_SEMA_BOOT, ARQUIVO_AGENT_CONTEXT_PACK, "SEMA_BRIEF.curto.txt", "SEMA_INDEX.json", "AGENTS.md", "README.md"],
16
+ ordemLeitura: [ARQUIVO_SEMA_BOOT, ARQUIVO_AGENT_CONTEXT_PACK, "SEMA_BRIEF.curto.txt", "SEMA_INDEX.json", "AGENTS.md", "README.md"],
17
17
  evitar: ["ast.json"],
18
18
  };
19
19
  const forte = {
20
20
  descricao: "IA forte, com tool use bom e contexto grande. Pode consumir o pacote completo, mas ainda deve começar pelo boot e pelos gates Sema.",
21
- artefatos: [ARQUIVO_SEMA_BOOT, "agent-context-pack.json", "README.md", "resumo.md", "briefing.json", "drift.json", "ir.json", "ast.json"],
22
- ordemLeitura: [ARQUIVO_SEMA_BOOT, "agent-context-pack.json", "README.md", "resumo.md", "briefing.json", "drift.json", "ir.json", "ast.json"],
23
- evitar: [],
21
+ artefatos: [ARQUIVO_SEMA_BOOT, ARQUIVO_AGENT_CONTEXT_PACK, "SEMA_BRIEF.md", "SEMA_INDEX.json", "AGENTS.md", "README.md"],
22
+ ordemLeitura: [ARQUIVO_SEMA_BOOT, ARQUIVO_AGENT_CONTEXT_PACK, "SEMA_BRIEF.md", "SEMA_INDEX.json", "AGENTS.md", "README.md"],
23
+ evitar: ["ast.json", "ir.json", "drift.json"],
24
24
  };
25
25
  return {
26
26
  fraca,
@@ -62,7 +62,7 @@ function criarPoliticaCodigoGovernadoAgentContext() {
62
62
  }
63
63
  function criarPoliticaTimeoutResumoAgentContext() {
64
64
  return {
65
- regra: "Timeout definido pelo agente não é falha do Sema. Se `sema resumo`, `inspecionar`, `drift` ou `sync-ai-entrypoints` estourar por timeout local, aumente o timeout e tente de novo com escopo menor quando possível.",
65
+ regra: "Timeout definido pelo agente não é falha do Sema. Se `sema resumo`, `inspecionar`, `drift` ou `sync-codex` estourar por timeout local, aumente o timeout e tente de novo com escopo menor quando possível.",
66
66
  timeoutInicialSegundos: 120,
67
67
  escalonamentoSegundos: [120, 300, 600],
68
68
  timeoutDoAgenteNaoEhFalhaSema: true,
@@ -162,66 +162,14 @@ function criarPoliticaPlataformaAgentContext() {
162
162
  },
163
163
  };
164
164
  }
165
- function criarEntrypointsClientesIa() {
166
- return [
167
- {
168
- cliente: "copilot",
169
- arquivos: [".github/copilot-instructions.md", "AGENTS.md", ARQUIVO_SEMA_BOOT],
170
- capacidadePadrao: "media",
171
- observacao: "VS Code/Copilot deve receber uma instrução curta e repetida no arquivo próprio, sem depender só do AGENTS.md.",
172
- },
173
- {
174
- cliente: "cline",
175
- arquivos: [".clinerules/00-sema.md", ".clinerules", ARQUIVO_SEMA_BOOT],
176
- capacidadePadrao: "fraca",
177
- observacao: "Cline costuma obedecer melhor quando o gate Sema vem em arquivo curto; se .clinerules for arquivo legado, o Sema atualiza esse fallback.",
178
- },
179
- {
180
- cliente: "roo",
181
- arquivos: [".roo/rules/00-sema.md", "AGENTS.md", ARQUIVO_SEMA_BOOT],
182
- capacidadePadrao: "fraca",
183
- observacao: "Roo Code deve começar por uma regra dedicada em .roo/rules antes de abrir arquivos longos.",
184
- },
185
- {
186
- cliente: "opencode",
187
- arquivos: [".opencode/instructions.md", "AGENTS.md", ARQUIVO_SEMA_BOOT],
188
- capacidadePadrao: "media",
189
- observacao: "OpenCode deve receber a mesma regra curta em instructions.md quando a pasta .opencode já existir.",
190
- },
191
- {
192
- cliente: "cursor",
193
- arquivos: [".cursor/rules/sema.mdc", "AGENTS.md", ARQUIVO_SEMA_BOOT],
194
- capacidadePadrao: "media",
195
- observacao: "Cursor deve receber uma regra curta própria para não depender de leitura completa do AGENTS.md.",
196
- },
197
- {
198
- cliente: "claude",
199
- arquivos: [".claude/CLAUDE.md", "AGENTS.md", ARQUIVO_SEMA_BOOT],
200
- capacidadePadrao: "forte",
201
- observacao: "Claude costuma seguir gates longos, mas ainda precisa de entrypoint explícito e repetido no workspace.",
202
- },
203
- {
204
- cliente: "windsurf",
205
- arquivos: [".windsurf/rules.md", "AGENTS.md", ARQUIVO_SEMA_BOOT],
206
- capacidadePadrao: "media",
207
- observacao: "Windsurf deve receber regra curta dedicada para evitar cair direto no código sem Sema.",
208
- },
209
- {
210
- cliente: "generico",
211
- arquivos: [ARQUIVO_SEMA_BOOT, ARQUIVO_SEMA_SMALL_MODEL, ARQUIVO_AGENT_CONTEXT_PACK],
212
- capacidadePadrao: "fraca",
213
- observacao: "Qualquer agente sem integração específica começa pelo boot card e só sobe contexto se passar pelos gates.",
214
- },
215
- ];
216
- }
217
165
  function criarFailClosedAgentContext() {
218
166
  return [
219
167
  "Se não conseguir chamar Sema, pare e declare bloqueio em vez de editar código ou contrato.",
220
168
  "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.",
221
- "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.",
169
+ "Em workspace local, rode sema --version; se falhar, pare e peça a instalação da CLI. Com a CLI disponível, opere diretamente sobre a pasta local e não substitua essa fonte por espelho externo ou inferência.",
222
170
  "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.",
223
171
  `Se arquivos_codigo.conteudo ou conteudo inline passar de ${LIMITE_CARACTERES_PAYLOAD_INLINE} caracteres, não aumente timeout para forçar: divida por responsabilidade ou use anexo/caminho de servidor autorizado.`,
224
- "Se for criar ou corrigir .sema, use sema_exemplos antes de escrever sintaxe.",
172
+ "Se for criar ou corrigir .sema, leia `exemplos/`; se a pasta estiver ausente, rode `sema instalar-exemplos --json` antes de escrever sintaxe.",
225
173
  "Se a resposta humana estiver em PT-BR, use vocabulário Sema canônico e preserve acentos mesmo que a DSL use ASCII.",
226
174
  "Se um arquivo de código tiver SEMA-GOVERNED, consulte Sema e o contrato aplicável antes de editar.",
227
175
  `Se codigo governado passar de ${LIMITE_AVISO_LINHAS_CODIGO_GOVERNADO} linhas, planeje divisao; se passar de ${LIMITE_BLOQUEIO_LINHAS_CODIGO_GOVERNADO}, pare e divida antes de concluir. Documentacao Markdown nao entra nesse limite de codigo.`,
@@ -253,21 +201,13 @@ export function criarAgentContextPack(guiaPorCapacidade) {
253
201
  tipo: "entrypoint",
254
202
  prioridade: 2,
255
203
  obrigatorio: true,
256
- quandoUsar: "IA fraca, Copilot, modelo local pequeno, Cline/Roo com pouco contexto ou tarefa curta",
204
+ quandoUsar: "Codex operando com pouco contexto, tarefa curta ou necessidade de instrução compacta",
257
205
  incluirTextoBrutoQuando: "a IA tende a ignorar instruções longas ou copiar a estética ASCII da DSL",
258
206
  },
259
- {
260
- caminho: "llms.txt",
261
- tipo: "entrypoint",
262
- prioridade: 3,
263
- obrigatorio: true,
264
- quandoUsar: "sempre no primeiro contato com o projeto",
265
- incluirTextoBrutoQuando: "a IA precisa de orientação compacta para operar o repositório",
266
- },
267
207
  {
268
208
  caminho: ARQUIVO_AGENT_CONTEXT_PACK,
269
209
  tipo: "entrypoint",
270
- prioridade: 4,
210
+ prioridade: 3,
271
211
  obrigatorio: true,
272
212
  quandoUsar: "sempre antes de decidir quais documentos ou exemplos abrir",
273
213
  incluirTextoBrutoQuando: "a IA precisa auditar regras, proibições, prioridades e fontes de verdade",
@@ -275,7 +215,7 @@ export function criarAgentContextPack(guiaPorCapacidade) {
275
215
  {
276
216
  caminho: "SEMA_BRIEF.micro.txt",
277
217
  tipo: "resumo",
278
- prioridade: 5,
218
+ prioridade: 4,
279
219
  obrigatorio: true,
280
220
  quandoUsar: "IA fraca, onboarding, chat remoto ou primeiro triage",
281
221
  incluirTextoBrutoQuando: "a tarefa cabe em contexto curto",
@@ -283,7 +223,7 @@ export function criarAgentContextPack(guiaPorCapacidade) {
283
223
  {
284
224
  caminho: "SEMA_BRIEF.curto.txt",
285
225
  tipo: "resumo",
286
- prioridade: 6,
226
+ prioridade: 5,
287
227
  obrigatorio: true,
288
228
  quandoUsar: "IA média, mudança pequena ou review rápido",
289
229
  incluirTextoBrutoQuando: "o módulo alvo ainda não está claro pelo micro",
@@ -291,7 +231,7 @@ export function criarAgentContextPack(guiaPorCapacidade) {
291
231
  {
292
232
  caminho: "SEMA_INDEX.json",
293
233
  tipo: "indice",
294
- prioridade: 7,
234
+ prioridade: 6,
295
235
  obrigatorio: true,
296
236
  quandoUsar: "antes de abrir código cru ou escolher contrato alvo",
297
237
  incluirTextoBrutoQuando: "a IA precisa mapear módulos, lacunas, riscos ou arquivos prováveis",
@@ -299,7 +239,7 @@ export function criarAgentContextPack(guiaPorCapacidade) {
299
239
  {
300
240
  caminho: "AGENTS.md",
301
241
  tipo: "operacional",
302
- prioridade: 8,
242
+ prioridade: 7,
303
243
  obrigatorio: true,
304
244
  quandoUsar: "antes de editar código, contrato, docs operacionais, release ou deploy",
305
245
  incluirTextoBrutoQuando: "a IA precisa confirmar regras locais obrigatórias e prioridades do projeto",
@@ -307,7 +247,7 @@ export function criarAgentContextPack(guiaPorCapacidade) {
307
247
  {
308
248
  caminho: "docs/commands.md",
309
249
  tipo: "docs",
310
- prioridade: 9,
250
+ prioridade: 8,
311
251
  obrigatorio: true,
312
252
  quandoUsar: "antes de escolher comando Sema, interpretar --saida de sema compilar ou destravar Sema Codigo",
313
253
  incluirTextoBrutoQuando: "a IA precisa entender comandos, gates, saida gerada e proximo passo governado",
@@ -315,7 +255,7 @@ export function criarAgentContextPack(guiaPorCapacidade) {
315
255
  {
316
256
  caminho: "exemplos/",
317
257
  tipo: "exemplos",
318
- prioridade: 10,
258
+ prioridade: 9,
319
259
  obrigatorio: true,
320
260
  quandoUsar: "antes de criar ou corrigir arquivo .sema, profile, Author, workflow, ops, game, legal ou research",
321
261
  incluirTextoBrutoQuando: "a IA vai escrever sintaxe Sema ou comparar um contrato com formato oficial",
@@ -323,15 +263,15 @@ export function criarAgentContextPack(guiaPorCapacidade) {
323
263
  {
324
264
  caminho: ARQUIVO_DOC_AGENTES_CAPACIDADE,
325
265
  tipo: "docs",
326
- prioridade: 11,
266
+ prioridade: 10,
327
267
  obrigatorio: false,
328
- quandoUsar: "configurar Copilot, Cline, Roo Code, OpenCode ou outro agente com disciplina variável",
268
+ quandoUsar: "configurar o Codex para operar com diferentes capacidades de contexto",
329
269
  incluirTextoBrutoQuando: "a IA precisa entender tiers fraca/média/forte e política de idioma",
330
270
  },
331
271
  {
332
272
  caminho: "docs/syntax.md",
333
273
  tipo: "docs",
334
- prioridade: 12,
274
+ prioridade: 11,
335
275
  obrigatorio: false,
336
276
  quandoUsar: "dúvida de gramática, blocos ou formato do DSL",
337
277
  incluirTextoBrutoQuando: "a IA vai editar contrato e os exemplos não bastam",
@@ -339,7 +279,7 @@ export function criarAgentContextPack(guiaPorCapacidade) {
339
279
  {
340
280
  caminho: "contratos/",
341
281
  tipo: "contrato",
342
- prioridade: 13,
282
+ prioridade: 12,
343
283
  obrigatorio: true,
344
284
  quandoUsar: "antes de qualquer implementação ou alteração de comportamento",
345
285
  incluirTextoBrutoQuando: "a tarefa toca uma capacidade governada por contrato",
@@ -347,11 +287,10 @@ export function criarAgentContextPack(guiaPorCapacidade) {
347
287
  ];
348
288
  return {
349
289
  nome: "Agent Context Pack",
350
- versao: 5,
290
+ versao: 6,
351
291
  objetivo: "Dar a agentes IA uma entrada curta, estruturada e auditável antes de abrir código cru ou inventar contexto.",
352
292
  ordemLeitura: [
353
293
  ARQUIVO_SEMA_BOOT,
354
- "llms.txt",
355
294
  ARQUIVO_AGENT_CONTEXT_PACK,
356
295
  ARQUIVO_SEMA_SMALL_MODEL,
357
296
  "SEMA_BRIEF.micro.txt",
@@ -364,9 +303,9 @@ export function criarAgentContextPack(guiaPorCapacidade) {
364
303
  "Contrato vem antes da ação.",
365
304
  "Leia SEMA_BOOT.md antes de qualquer outro artefato de IA.",
366
305
  "Leia AGENTS.md antes de editar código, contrato, docs operacionais, release ou deploy.",
367
- "Leia docs/commands.md antes de escolher comando Sema, interpretar bloqueio do Guard ou usar --saida de sema compilar.",
368
- "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 chame sema preflight <comando> --json e use a CLI somente com use_cli_local; não use fonte externa de workspace para substituir a CLI local.",
369
- "Antes de editar, chame sema_inspecionar no contrato aplicável e rode sema_drift e sema_impacto.",
306
+ "Leia docs/commands.md antes de escolher comando Sema, interpretar um gate ou usar --saida de sema compilar.",
307
+ "Em workspace local, rode sema --version; se falhar, pare e peça a instalação da CLI. Com a CLI disponível, use diretamente sema resumo, docs-impacto, inspecionar, drift e impacto sobre a pasta local.",
308
+ "Antes de editar, rode `sema inspecionar <contrato.sema> --json`, `sema drift <contrato.sema> --escopo modulo --json` e `sema impacto <contrato.sema> --alvo <token> --mudanca \"<descricao>\" --json`.",
370
309
  "Use exemplos oficiais antes de criar ou corrigir sintaxe .sema.",
371
310
  "Use SEMA_INDEX.json para escolher contrato, módulo e arquivos prováveis antes de abrir código cru.",
372
311
  "Valide .sema alterado e rode drift antes de concluir.",
@@ -388,11 +327,11 @@ export function criarAgentContextPack(guiaPorCapacidade) {
388
327
  proibicoes: [
389
328
  "Não inventar sintaxe Sema fora da gramática e dos exemplos oficiais.",
390
329
  "Não tratar README, texto livre ou código como fonte superior ao contrato.",
391
- "Não substituir contexto Sema por AGENTS.md, README.md, busca local, inferência pelo nome do projeto ou bom senso sem preflight/autorização Sema.",
330
+ "Não substituir os gates da CLI Sema por README.md, busca local, inferência pelo nome do projeto ou bom senso.",
392
331
  "Não tratar a pasta --saida de sema compilar como entrega final; entrega são os arquivos alvo/vínculos do contrato.",
393
332
  "Não sincronizar segredos, .env, node_modules, builds, caches, uploads ou artefatos privados fora do escopo.",
394
333
  "Não publicar, deployar ou remover capacidade sem contrato, drift e verificação.",
395
- "Não assumir repositório público, GitHub Release pública, fonte externa de workspace ou acesso da IA ao painel; em IDE local prove CLI com sema --version.",
334
+ "Não assumir repositório público, GitHub Release pública ou fonte externa de workspace; em ambiente local, prove a CLI com sema --version.",
396
335
  "Não usar a estética ASCII da DSL nem inglês de produto como desculpa para fugir do vocabulário Sema em PT-BR.",
397
336
  "Não remover SEMA-GOVERNED nem substituir drift por comentário dentro do código.",
398
337
  "Não copiar o contrato inteiro para comentário de código; mantenha descrição humana curta.",
@@ -410,7 +349,7 @@ export function criarAgentContextPack(guiaPorCapacidade) {
410
349
  ],
411
350
  prioridades: [
412
351
  "Menor artefato suficiente primeiro.",
413
- "IDE local: sema --version, preflight, resumo, docs-impacto, inspecionar, drift e impacto pela CLI; se sema não existir, pare. A IA não acessa o painel Sema: peça ao humano instalar pelo painel; sem fonte externa de workspace.",
352
+ "Workspace local: sema --version, resumo, docs-impacto, inspecionar, drift e impacto pela CLI; se sema não existir, pare e peça a instalação da CLI.",
414
353
  "Contrato, índice e AGENTS complementam o contexto Sema; não substituem chamada Sema.",
415
354
  "Exemplos oficiais antes de nova sintaxe.",
416
355
  "Diagnóstico estruturado antes de opinião livre.",
@@ -434,7 +373,9 @@ export function criarAgentContextPack(guiaPorCapacidade) {
434
373
  grande: guiaPorCapacidade.grande.ordemLeitura,
435
374
  },
436
375
  aliasesCapacidade: { ...ALIASES_CAPACIDADE_IA },
437
- entrypointsClientes: criarEntrypointsClientesIa(),
376
+ entrypointCodex: ARQUIVO_ENTRYPOINT_CODEX,
377
+ codexNativo: true,
378
+ cliLocalSemAutorizacao: true,
438
379
  politicaIdioma: criarPoliticaIdiomaAgentContext(),
439
380
  politicaCodigoGovernado: criarPoliticaCodigoGovernadoAgentContext(),
440
381
  politicaTimeoutResumo: criarPoliticaTimeoutResumoAgentContext(),
@@ -2,7 +2,7 @@ export type CapacidadeIa = "fraca" | "media" | "forte";
2
2
  export type CapacidadeIaLegada = "pequena" | "grande";
3
3
  export type ChaveGuiaCapacidadeIa = CapacidadeIa | CapacidadeIaLegada;
4
4
  export type GuiaCapacidadeIaMap = Record<ChaveGuiaCapacidadeIa, GuiaCapacidadeIa>;
5
- export type TipoFonteAgentContext = "entrypoint" | "resumo" | "indice" | "operacional" | "exemplos" | "docs" | "contrato" | "cliente";
5
+ export type TipoFonteAgentContext = "entrypoint" | "resumo" | "indice" | "operacional" | "exemplos" | "docs" | "contrato";
6
6
  export interface GuiaCapacidadeIa {
7
7
  descricao: string;
8
8
  artefatos: string[];
@@ -17,12 +17,6 @@ export interface FonteAgentContextPack {
17
17
  quandoUsar: string;
18
18
  incluirTextoBrutoQuando: string;
19
19
  }
20
- export interface EntryPointClienteIa {
21
- cliente: "copilot" | "cline" | "roo" | "opencode" | "cursor" | "claude" | "windsurf" | "generico";
22
- arquivos: string[];
23
- capacidadePadrao: CapacidadeIa;
24
- observacao: string;
25
- }
26
20
  export interface PoliticaIdiomaAgentContext {
27
21
  regra: string;
28
22
  idiomaHumanoPadrao: string;
@@ -75,7 +69,9 @@ export interface AgentContextPack {
75
69
  textoBrutoSobDemanda: Record<string, string>;
76
70
  guiaPorCapacidade: Record<ChaveGuiaCapacidadeIa, string[]>;
77
71
  aliasesCapacidade: Record<CapacidadeIaLegada, CapacidadeIa>;
78
- entrypointsClientes: EntryPointClienteIa[];
72
+ entrypointCodex: "AGENTS.md";
73
+ codexNativo: true;
74
+ cliLocalSemAutorizacao: true;
79
75
  politicaIdioma: PoliticaIdiomaAgentContext;
80
76
  politicaCodigoGovernado: PoliticaCodigoGovernadoAgentContext;
81
77
  politicaTimeoutResumo: PoliticaTimeoutResumoAgentContext;
@@ -86,8 +82,9 @@ export interface AgentContextPack {
86
82
  export declare const ARQUIVO_SEMA_BOOT = "SEMA_BOOT.md";
87
83
  export declare const ARQUIVO_SEMA_SMALL_MODEL = "SEMA_SMALL_MODEL.md";
88
84
  export declare const ARQUIVO_AGENT_CONTEXT_PACK = "AGENT_CONTEXT_PACK.json";
85
+ export declare const ARQUIVO_ENTRYPOINT_CODEX = "AGENTS.md";
89
86
  export declare const ARQUIVO_DOC_AGENTES_CAPACIDADE = "docs/ai-integration.md";
90
- export declare const ARQUIVOS_CANONICOS_IA_RAIZ: readonly ["SEMA_BOOT.md", "llms.txt", "AGENT_CONTEXT_PACK.json", "SEMA_SMALL_MODEL.md", "SEMA_BRIEF.md", "SEMA_INDEX.json", "AGENTS.md", "README.md", "llms-full.txt"];
87
+ export declare const ARQUIVOS_CANONICOS_IA_RAIZ: readonly ["SEMA_BOOT.md", "AGENT_CONTEXT_PACK.json", "SEMA_SMALL_MODEL.md", "SEMA_BRIEF.micro.txt", "SEMA_BRIEF.curto.txt", "SEMA_BRIEF.md", "SEMA_INDEX.json", "AGENTS.md", "README.md"];
91
88
  export declare const CAPACIDADES_IA_OPERACIONAIS: readonly ["fraca", "media", "forte"];
92
89
  export declare const ALIASES_CAPACIDADE_IA: Record<CapacidadeIaLegada, CapacidadeIa>;
93
90
  export declare const MARCADOR_SEMA_AGENT_ENTRYPOINT_INICIO = "<!-- sema:agent-entrypoint:start -->";
@@ -1,19 +1,20 @@
1
1
  // SEMA-GOVERNED: sema.produto.governanca_ia.contexto
2
- // Descrição: tipos e constantes compartilhadas para entrada IA-first e entrypoints de agentes.
2
+ // Descrição: tipos e constantes compartilhadas para a entrada IA-first nativa do Codex.
3
3
  export const ARQUIVO_SEMA_BOOT = "SEMA_BOOT.md";
4
4
  export const ARQUIVO_SEMA_SMALL_MODEL = "SEMA_SMALL_MODEL.md";
5
5
  export const ARQUIVO_AGENT_CONTEXT_PACK = "AGENT_CONTEXT_PACK.json";
6
+ export const ARQUIVO_ENTRYPOINT_CODEX = "AGENTS.md";
6
7
  export const ARQUIVO_DOC_AGENTES_CAPACIDADE = "docs/ai-integration.md";
7
8
  export const ARQUIVOS_CANONICOS_IA_RAIZ = [
8
9
  ARQUIVO_SEMA_BOOT,
9
- "llms.txt",
10
10
  ARQUIVO_AGENT_CONTEXT_PACK,
11
11
  ARQUIVO_SEMA_SMALL_MODEL,
12
+ "SEMA_BRIEF.micro.txt",
13
+ "SEMA_BRIEF.curto.txt",
12
14
  "SEMA_BRIEF.md",
13
15
  "SEMA_INDEX.json",
14
- "AGENTS.md",
16
+ ARQUIVO_ENTRYPOINT_CODEX,
15
17
  "README.md",
16
- "llms-full.txt",
17
18
  ];
18
19
  export const CAPACIDADES_IA_OPERACIONAIS = ["fraca", "media", "forte"];
19
20
  export const ALIASES_CAPACIDADE_IA = {
@@ -1,13 +1,33 @@
1
1
  import { type AgentContextPack } from './agentContextTipos.js';
2
+ export declare function listarDestinosEntrypointCodex(entrypointCodex: string): string[];
3
+ type StatusArquivoGerenciado = "criado" | "atualizado" | "preservado" | "pendente";
2
4
  export declare function renderizarSemaBoot(agentContextPack: AgentContextPack): string;
3
5
  export declare function renderizarSemaSmallModel(agentContextPack: AgentContextPack): string;
4
6
  export declare function renderizarDocumentoAgentesPorCapacidade(agentContextPack: AgentContextPack): string;
5
- export declare function sincronizarEntryPointsAgentes(baseProjeto: string, agentContextPack: AgentContextPack): Promise<{
7
+ export declare function sincronizarEntrypointCodex(baseProjeto: string, agentContextPack: AgentContextPack): Promise<{
6
8
  arquivos: Array<{
7
9
  caminho: string;
8
- status: "criado" | "atualizado" | "preservado";
10
+ status: StatusArquivoGerenciado;
9
11
  }>;
10
12
  criados: string[];
11
13
  atualizados: string[];
12
14
  preservados: string[];
15
+ entrypointCodex: "AGENTS.md";
16
+ codexNativo: true;
17
+ cliLocalSemAutorizacao: true;
18
+ skillBootstrapCodexDocumentada: true;
19
+ idiomaHumanoPreservado: true;
20
+ retryTimeoutProgressivo: true;
21
+ politicaPlataformaExplicita: true;
22
+ politicaSinalVsRitualExplicita: true;
23
+ divisaoPorResponsabilidadeExplicita: true;
24
+ contextoLocalSemEspelho: true;
25
+ destinosEntrypointPrevalidados: true;
26
+ entrypointsLegados: Array<{
27
+ caminho: string;
28
+ status: "removido" | "atualizado" | "preservado" | "pendente";
29
+ }>;
30
+ entrypointsLegadosPendentes: string[];
31
+ entrypointsLegadosLimpos: boolean;
13
32
  }>;
33
+ export {};