@orkastery/cli 0.5.3 → 0.6.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.
- package/adapters/README.md +18 -0
- package/adapters/claude-code/.claude-plugin/plugin.json +1 -0
- package/adapters/claude-code/README.md +195 -5
- package/adapters/claude-code/agents/ork-check.md +1 -0
- package/adapters/claude-code/agents/ork-go.md +1 -0
- package/adapters/claude-code/agents/ork-goal.md +1 -0
- package/adapters/claude-code/agents/ork-master.md +1 -0
- package/adapters/claude-code/agents/ork-plan.md +1 -0
- package/adapters/claude-code/agents/ork-ship.md +1 -0
- package/adapters/claude-code/hooks/hooks.json +2 -1
- package/adapters/claude-code/hooks/ork-guard.js +15 -1
- package/adapters/claude-code/hooks/ork-resposta.js +91 -0
- package/adapters/claude-code/hooks/ork-sensor.js +18 -2
- package/adapters/claude-code/hooks/quota-signal.js +14 -0
- package/adapters/claude-code/mods/autoridade.json +56 -0
- package/adapters/claude-code/mods/ork-clima/.claude-plugin/plugin.json +14 -0
- package/adapters/claude-code/mods/ork-clima/hooks/contas.ts +283 -0
- package/adapters/claude-code/mods/ork-clima/hooks/hooks.json +3 -0
- package/adapters/claude-code/mods/ork-clima/hooks/previsao.ts +393 -0
- package/adapters/claude-code/mods/ork-clima/hooks/register.ts +205 -0
- package/adapters/claude-code/mods/ork-clima/orkastery-mod.json +5 -0
- package/adapters/claude-code/mods/ork-clima/types/index.d.ts +80 -0
- package/adapters/claude-code/mods/ork-freio/.claude-plugin/plugin.json +14 -0
- package/adapters/claude-code/mods/ork-freio/hooks/carga.ts +160 -0
- package/adapters/claude-code/mods/ork-freio/hooks/conferencia.ts +309 -0
- package/adapters/claude-code/mods/ork-freio/hooks/hooks.json +3 -0
- package/adapters/claude-code/mods/ork-freio/hooks/lote.ts +270 -0
- package/adapters/claude-code/mods/ork-freio/hooks/register.ts +285 -0
- package/adapters/claude-code/mods/ork-freio/orkastery-mod.json +5 -0
- package/adapters/claude-code/mods/ork-freio/types/index.d.ts +127 -0
- package/adapters/claude-code/mods/ork-mensageiro/.claude-plugin/plugin.json +14 -0
- package/adapters/claude-code/mods/ork-mensageiro/hooks/caixa.ts +215 -0
- package/adapters/claude-code/mods/ork-mensageiro/hooks/hooks.json +3 -0
- package/adapters/claude-code/mods/ork-mensageiro/hooks/painel.tsx +165 -0
- package/adapters/claude-code/mods/ork-mensageiro/hooks/recepcao.ts +256 -0
- package/adapters/claude-code/mods/ork-mensageiro/hooks/register.tsx +481 -0
- package/adapters/claude-code/mods/ork-mensageiro/orkastery-mod.json +5 -0
- package/adapters/claude-code/mods/ork-mensageiro/types/index.d.ts +85 -0
- package/adapters/claude-code/mods/ork-mesa/.claude-plugin/plugin.json +14 -0
- package/adapters/claude-code/mods/ork-mesa/hooks/cartoes.tsx +246 -0
- package/adapters/claude-code/mods/ork-mesa/hooks/decidir.ts +110 -0
- package/adapters/claude-code/mods/ork-mesa/hooks/fila.ts +253 -0
- package/adapters/claude-code/mods/ork-mesa/hooks/hooks.json +3 -0
- package/adapters/claude-code/mods/ork-mesa/hooks/obvia.ts +98 -0
- package/adapters/claude-code/mods/ork-mesa/hooks/register.tsx +493 -0
- package/adapters/claude-code/mods/ork-mesa/orkastery-mod.json +5 -0
- package/adapters/claude-code/mods/ork-mesa/types/index.d.ts +131 -0
- package/adapters/claude-code/mods/ork-pista/.claude-plugin/plugin.json +14 -0
- package/adapters/claude-code/mods/ork-pista/hooks/acoes.ts +71 -0
- package/adapters/claude-code/mods/ork-pista/hooks/ci.ts +121 -0
- package/adapters/claude-code/mods/ork-pista/hooks/hooks.json +3 -0
- package/adapters/claude-code/mods/ork-pista/hooks/pista.tsx +356 -0
- package/adapters/claude-code/mods/ork-pista/hooks/register.tsx +439 -0
- package/adapters/claude-code/mods/ork-pista/orkastery-mod.json +5 -0
- package/adapters/claude-code/mods/ork-pista/types/index.d.ts +85 -0
- package/adapters/claude-code/mods/ork-ponte/.claude-plugin/plugin.json +13 -0
- package/adapters/claude-code/mods/ork-ponte/hooks/faixa.tsx +57 -0
- package/adapters/claude-code/mods/ork-ponte/hooks/guarda.ts +410 -0
- package/adapters/claude-code/mods/ork-ponte/hooks/hooks.json +3 -0
- package/adapters/claude-code/mods/ork-ponte/hooks/mostrado.ts +55 -0
- package/adapters/claude-code/mods/ork-ponte/hooks/nucleo.ts +157 -0
- package/adapters/claude-code/mods/ork-ponte/hooks/papel.ts +42 -0
- package/adapters/claude-code/mods/ork-ponte/hooks/register.ts +331 -0
- package/adapters/claude-code/mods/ork-ponte/hooks/vigia.ts +76 -0
- package/adapters/claude-code/mods/ork-ponte/orkastery-mod.json +5 -0
- package/adapters/claude-code/mods/ork-ponte/types/index.d.ts +178 -0
- package/adapters/claude-code/mods/ork-portao/.claude-plugin/plugin.json +14 -0
- package/adapters/claude-code/mods/ork-portao/hooks/hooks.json +3 -0
- package/adapters/claude-code/mods/ork-portao/hooks/lease.ts +201 -0
- package/adapters/claude-code/mods/ork-portao/hooks/plano.ts +304 -0
- package/adapters/claude-code/mods/ork-portao/hooks/register.ts +339 -0
- package/adapters/claude-code/mods/ork-portao/hooks/verify.ts +152 -0
- package/adapters/claude-code/mods/ork-portao/orkastery-mod.json +5 -0
- package/adapters/claude-code/mods/ork-portao/types/index.d.ts +60 -0
- package/adapters/claude-code/mods/ork-radar/.claude-plugin/plugin.json +14 -0
- package/adapters/claude-code/mods/ork-radar/hooks/colisao.ts +420 -0
- package/adapters/claude-code/mods/ork-radar/hooks/hooks.json +3 -0
- package/adapters/claude-code/mods/ork-radar/hooks/mapa.tsx +322 -0
- package/adapters/claude-code/mods/ork-radar/hooks/register.tsx +470 -0
- package/adapters/claude-code/mods/ork-radar/orkastery-mod.json +5 -0
- package/adapters/claude-code/mods/ork-radar/types/index.d.ts +72 -0
- package/adapters/claude-code/mods/ork-ritual/.claude-plugin/plugin.json +14 -0
- package/adapters/claude-code/mods/ork-ritual/hooks/hooks.json +3 -0
- package/adapters/claude-code/mods/ork-ritual/hooks/nota.ts +88 -0
- package/adapters/claude-code/mods/ork-ritual/hooks/register.tsx +494 -0
- package/adapters/claude-code/mods/ork-ritual/hooks/replay.tsx +271 -0
- package/adapters/claude-code/mods/ork-ritual/hooks/ritual.ts +218 -0
- package/adapters/claude-code/mods/ork-ritual/orkastery-mod.json +5 -0
- package/adapters/claude-code/mods/ork-ritual/types/index.d.ts +106 -0
- package/adapters/claude-code/mods/ork-sentinela/.claude-plugin/plugin.json +14 -0
- package/adapters/claude-code/mods/ork-sentinela/hooks/alertas.ts +85 -0
- package/adapters/claude-code/mods/ork-sentinela/hooks/despacho.ts +156 -0
- package/adapters/claude-code/mods/ork-sentinela/hooks/hooks.json +3 -0
- package/adapters/claude-code/mods/ork-sentinela/hooks/register.ts +511 -0
- package/adapters/claude-code/mods/ork-sentinela/hooks/vigia.ts +186 -0
- package/adapters/claude-code/mods/ork-sentinela/orkastery-mod.json +5 -0
- package/adapters/claude-code/mods/ork-sentinela/types/index.d.ts +65 -0
- package/adapters/claude-code/mods/ork-torre/.claude-plugin/plugin.json +14 -0
- package/adapters/claude-code/mods/ork-torre/hooks/agenda.ts +60 -0
- package/adapters/claude-code/mods/ork-torre/hooks/detalhe.tsx +236 -0
- package/adapters/claude-code/mods/ork-torre/hooks/frases.ts +42 -0
- package/adapters/claude-code/mods/ork-torre/hooks/hooks.json +3 -0
- package/adapters/claude-code/mods/ork-torre/hooks/painel.tsx +344 -0
- package/adapters/claude-code/mods/ork-torre/hooks/rede.ts +97 -0
- package/adapters/claude-code/mods/ork-torre/hooks/register.tsx +437 -0
- package/adapters/claude-code/mods/ork-torre/orkastery-mod.json +5 -0
- package/adapters/claude-code/mods/ork-torre/types/index.d.ts +108 -0
- package/adapters/codex/skills/ork/SKILL.md +2 -0
- package/adapters/hermes/README.md +64 -1
- package/adapters/hermes/bin/ork-conhecimento-colecoes.sh +14 -0
- package/adapters/hermes/bin/ork-conhecimento-listar.sh +15 -0
- package/adapters/hermes/bin/ork-conhecimento-mostrar.sh +16 -0
- package/adapters/hermes/bin/ork-conhecimento-verificar.sh +15 -0
- package/adapters/hermes/bin/ork-vigia-batida.py +127 -0
- package/adapters/hermes/hermes.plugin.json +4 -0
- package/adapters/hermes/hitl-ingress/__init__.py +101 -8
- package/adapters/hermes/skills/orkastery-devmaster/SKILL.md +3 -3
- package/adapters/openclaw/README.md +83 -10
- package/adapters/openclaw/bin/ork-vigia-batida.js +86 -0
- package/adapters/openclaw/dist/hitl-ingress.js +106 -9
- package/adapters/openclaw/dist/index.js +86 -0
- package/adapters/openclaw/openclaw.plugin.json +34 -4
- package/adapters/openclaw/package.json +2 -2
- package/adapters/openclaw/src/hitl-ingress.ts +103 -9
- package/adapters/openclaw/src/index.ts +94 -0
- package/assets/adapters-en/claude-code/README.md +403 -0
- package/assets/adapters-en/claude-code/agents/ork-check.md +33 -0
- package/assets/adapters-en/claude-code/agents/ork-go.md +33 -0
- package/assets/adapters-en/claude-code/agents/ork-goal.md +34 -0
- package/assets/adapters-en/claude-code/agents/ork-master.md +35 -0
- package/assets/adapters-en/claude-code/agents/ork-plan.md +33 -0
- package/assets/adapters-en/claude-code/agents/ork-ship.md +33 -0
- package/assets/adapters-en/claude-code/commands/check.md +46 -0
- package/assets/adapters-en/claude-code/commands/go.md +46 -0
- package/assets/adapters-en/claude-code/commands/goal.md +55 -0
- package/assets/adapters-en/claude-code/commands/master.md +54 -0
- package/assets/adapters-en/claude-code/commands/onboarding.md +22 -0
- package/assets/adapters-en/claude-code/commands/ork.md +126 -0
- package/assets/adapters-en/claude-code/commands/plan.md +47 -0
- package/assets/adapters-en/claude-code/commands/ship.md +45 -0
- package/assets/adapters-en/codex/skills/ork/SKILL.md +85 -0
- package/assets/adapters-en/hermes/README.md +273 -0
- package/assets/adapters-en/hermes/skills/orkastery-devmaster/SKILL.md +169 -0
- package/assets/docs-en/markdownlint-cli2.jsonc +22 -0
- package/assets/docs-en/padroes/documentacao-de-produto.md +135 -0
- package/assets/docs-en/padroes/roadmap-de-produto.md +100 -0
- package/assets/docs-en/produto/README.md +14 -0
- package/assets/docs-en/produto/_modelo-feature.md +62 -0
- package/assets/docs-en/roadmap/README.md +14 -0
- package/assets/docs-en/roadmap/_modelo-item.md +75 -0
- package/assets/references-en/README.md +25 -0
- package/assets/references-en/code-review-axes.md +82 -0
- package/assets/references-en/definition-of-done.md +74 -0
- package/assets/references-en/performance-checklist.md +53 -0
- package/assets/references-en/security-checklist.md +101 -0
- package/assets/references-en/testing-patterns.md +51 -0
- package/assets/security-scan/defaults/.golangci.yml +2 -0
- package/assets/security-scan/defaults/eslint.config.mjs +11 -0
- package/assets/security-scan/defaults/gitleaks.toml +3 -0
- package/assets/security-scan/defaults/ruff.toml +1 -0
- package/assets/security-scan/tools-agil.json +87 -0
- package/assets/security-scan/tools.json +625 -0
- package/assets/skills-en/core/onboarding/SKILL.md +58 -0
- package/assets/skills-en/core/orkastery-bootstrap/SKILL.md +119 -0
- package/assets/skills-en/core/thread-state/SKILL.md +88 -0
- package/assets/skills-en/governance/decision-triage/SKILL.md +65 -0
- package/assets/skills-en/governance/narrative-guardian/SKILL.md +66 -0
- package/assets/skills-en/governance/roadmap-keeper/SKILL.md +60 -0
- package/assets/skills-en/governance/scope-check-capability-map/SKILL.md +71 -0
- package/assets/skills-en/observability/thread-tracing/SKILL.md +63 -0
- package/assets/skills-en/phases/check-quality/SKILL.md +103 -0
- package/assets/skills-en/phases/go-implementation/SKILL.md +78 -0
- package/assets/skills-en/phases/goal-definition/SKILL.md +69 -0
- package/assets/skills-en/phases/master-metrics/SKILL.md +72 -0
- package/assets/skills-en/phases/plan-specification/SKILL.md +67 -0
- package/assets/skills-en/phases/security-remediation/SKILL.md +70 -0
- package/assets/skills-en/phases/ship-release/SKILL.md +71 -0
- package/assets/skills-en/reviewers/code-reviewer/SKILL.md +61 -0
- package/assets/skills-en/reviewers/security-auditor/SKILL.md +93 -0
- package/assets/skills-en/reviewers/test-engineer/SKILL.md +66 -0
- package/assets/skills-en/reviewers/web-performance-auditor/SKILL.md +63 -0
- package/dist/adapters/claude-bg.js +193 -15
- package/dist/adapters/codex-controller-worker.js +12 -5
- package/dist/adapters/codex-events.js +16 -4
- package/dist/adapters/codex.js +13 -2
- package/dist/agents-md.js +24 -15
- package/dist/atualizar-branch.js +245 -0
- package/dist/auditoria.js +13 -11
- package/dist/auditrun.js +68 -48
- package/dist/autorizacao-duravel.js +327 -0
- package/dist/board.js +98 -43
- package/dist/branch-de-estado.js +39 -9
- package/dist/busca-semantica.js +7 -5
- package/dist/catalogo.js +35 -1
- package/dist/changelog-reconciliacao.js +290 -0
- package/dist/check-agil.js +500 -0
- package/dist/check-modo.js +41 -0
- package/dist/check-paralelo.js +183 -0
- package/dist/ci.js +255 -46
- package/dist/ciclos.js +8 -6
- package/dist/claim-lint.js +12 -8
- package/dist/claims-conferir.js +350 -0
- package/dist/claims.js +13 -10
- package/dist/company-brain-client.js +45 -3
- package/dist/company-brain-journal.js +2 -1
- package/dist/company-brain-migration.js +47 -6
- package/dist/conducao-batida.js +759 -0
- package/dist/conducao-sentinela.js +405 -0
- package/dist/conducao-texto.js +12 -18
- package/dist/conducao.js +206 -59
- package/dist/conhecimento-consulta.js +270 -0
- package/dist/conhecimento.js +514 -0
- package/dist/conta-esgotada.js +127 -0
- package/dist/dado-privado.js +816 -0
- package/dist/decisao-autonoma.js +5 -4
- package/dist/demo.js +14 -12
- package/dist/dependencias-da-worktree.js +25 -0
- package/dist/divida.js +38 -36
- package/dist/docs.js +103 -82
- package/dist/doctor-forja.js +345 -0
- package/dist/doctor-pulse-cron.js +294 -27
- package/dist/doctor-rede.js +18 -17
- package/dist/doctor.js +278 -116
- package/dist/dsn-da-memoria.js +417 -0
- package/dist/entrega-por-mod.js +503 -0
- package/dist/entrega-pr.js +158 -57
- package/dist/escopo-escrita.js +10 -1
- package/dist/esgotamentos.js +13 -11
- package/dist/estado-thread.js +42 -17
- package/dist/evalrunner.js +35 -32
- package/dist/experiencia-instalacao.js +45 -25
- package/dist/fabrica-batida.js +323 -0
- package/dist/fabrica-estado.js +49 -16
- package/dist/fabrica-publicar.js +3 -1
- package/dist/fila-pesada.js +444 -0
- package/dist/fix.js +24 -21
- package/dist/forja/adaptador.js +6 -0
- package/dist/forja/ambiente-de-ci.js +27 -0
- package/dist/forja/api.js +256 -0
- package/dist/forja/cache.js +89 -0
- package/dist/forja/cli.js +60 -0
- package/dist/forja/contrato.js +9 -0
- package/dist/forja/endereco.js +43 -0
- package/dist/forja/estado.js +22 -0
- package/dist/forja/executor.js +73 -0
- package/dist/forja/github/ci.js +95 -0
- package/dist/forja/github/dono-da-rede.js +18 -0
- package/dist/forja/github/metadados.js +15 -0
- package/dist/forja/github/pedidos.js +200 -0
- package/dist/forja/gitlab/ci.js +141 -0
- package/dist/forja/gitlab/consultas.js +59 -0
- package/dist/forja/gitlab/dono-da-rede.js +43 -0
- package/dist/forja/gitlab/metadados.js +15 -0
- package/dist/forja/gitlab/pedidos-abertos.js +158 -0
- package/dist/forja/gitlab/pedidos.js +141 -0
- package/dist/forja/produtor.js +32 -0
- package/dist/forja/registro.js +31 -0
- package/dist/forja/resolver.js +121 -0
- package/dist/forja/texto.js +13 -0
- package/dist/forja/versao.js +71 -0
- package/dist/forja.js +124 -81
- package/dist/gates.js +3 -28
- package/dist/handoff.js +33 -19
- package/dist/hitl-contract.js +46 -43
- package/dist/hitl-curto.js +37 -25
- package/dist/hitl-gates.js +13 -11
- package/dist/hitl-local-receipt.js +53 -0
- package/dist/hitl-local.js +11 -2
- package/dist/hitl-lock.js +5 -11
- package/dist/hitl-public-receipt.js +11 -0
- package/dist/hitl-resumo.js +72 -3
- package/dist/hitl-sessions.js +62 -9
- package/dist/hitl-tempo-parado.js +4 -4
- package/dist/hitl-texto-livre.js +7 -4
- package/dist/hitl.js +63 -64
- package/dist/horario.js +30 -7
- package/dist/hosts.js +155 -134
- package/dist/impedimento.js +108 -14
- package/dist/index.js +1421 -1019
- package/dist/indice-vetorial.js +14 -12
- package/dist/indice.js +7 -1
- package/dist/init.js +54 -49
- package/dist/instabilidade.js +144 -0
- package/dist/integracoes-locais.js +4 -0
- package/dist/intelligence-graph-cli.js +213 -88
- package/dist/intelligence-graph-contexto.js +56 -17
- package/dist/intelligence-graph-contract.js +2 -1
- package/dist/intelligence-graph-extract-md.js +56 -4
- package/dist/intelligence-graph-extract-ts.js +71 -3
- package/dist/intelligence-graph-query.js +96 -34
- package/dist/leases.js +19 -18
- package/dist/ledger-stats.js +17 -16
- package/dist/ledger.js +46 -2
- package/dist/licoes.js +12 -11
- package/dist/liveness.js +6 -3
- package/dist/locale-accounts.js +220 -0
- package/dist/locale-adapter.js +291 -0
- package/dist/locale-ajuda.js +833 -0
- package/dist/locale-audit.js +199 -0
- package/dist/locale-claims.js +213 -0
- package/dist/locale-conducao.js +138 -0
- package/dist/locale-conhecimento.js +181 -0
- package/dist/locale-decisao.js +205 -0
- package/dist/locale-docs.js +230 -0
- package/dist/locale-estado.js +101 -0
- package/dist/locale-forja.js +290 -0
- package/dist/locale-gerados.js +165 -0
- package/dist/locale-grafo.js +129 -0
- package/dist/locale-master.js +182 -0
- package/dist/locale-network.js +524 -0
- package/dist/locale-onboarding.js +92 -0
- package/dist/locale-operacao-restante.js +931 -0
- package/dist/locale-phase.js +151 -0
- package/dist/locale-projetos.js +100 -0
- package/dist/locale-prompts.js +194 -0
- package/dist/locale-pulse.js +349 -0
- package/dist/locale-reservas.js +87 -0
- package/dist/locale-retry.js +524 -0
- package/dist/locale-roadmap.js +102 -0
- package/dist/locale-security-scan.js +69 -0
- package/dist/locale-setup.js +192 -0
- package/dist/locale-ship.js +597 -0
- package/dist/locale-thread.js +421 -0
- package/dist/locale-verify.js +201 -0
- package/dist/locale-worktree.js +246 -0
- package/dist/locale.js +1258 -0
- package/dist/maestro-runtime.js +22 -3
- package/dist/manifest.js +415 -13
- package/dist/maquina-ociosa.js +211 -0
- package/dist/maquina.js +31 -7
- package/dist/master-digest.js +6 -1
- package/dist/master-nota-local.js +200 -0
- package/dist/master-nota.js +14 -8
- package/dist/master.js +139 -65
- package/dist/mcp-artifacts.js +11 -2
- package/dist/mcp-conhecimento.js +52 -0
- package/dist/mcp-experiencia.js +26 -5
- package/dist/mcp-git.js +23 -6
- package/dist/mcp-grafo.js +7 -4
- package/dist/mcp-install.js +73 -8
- package/dist/mcp-noctum.js +101 -0
- package/dist/mcp-server.js +90 -16
- package/dist/mcp-ship-transporte.js +977 -0
- package/dist/mcp-ship.js +71 -25
- package/dist/mcp-transportes.js +17 -0
- package/dist/mcp-verify.js +6 -1
- package/dist/memoria.js +63 -58
- package/dist/modos-migracao.js +8 -6
- package/dist/modos.js +20 -24
- package/dist/network-roadmap.js +90 -51
- package/dist/noctum-aceite.js +789 -0
- package/dist/noctum-arco.js +1418 -0
- package/dist/noctum-capacidade.js +141 -0
- package/dist/noctum-changelog.js +399 -0
- package/dist/noctum-cli.js +482 -0
- package/dist/noctum-coordenacao.js +1225 -0
- package/dist/noctum-entrega.js +1169 -0
- package/dist/noctum-envelope.js +1046 -0
- package/dist/noctum-execucao.js +376 -0
- package/dist/noctum-fechamento.js +405 -0
- package/dist/noctum-fila.js +314 -0
- package/dist/noctum-guarda.js +256 -0
- package/dist/noctum-integracao.js +507 -0
- package/dist/noctum-maquinas.js +383 -0
- package/dist/noctum-medicao.js +450 -0
- package/dist/noctum-modo.js +362 -0
- package/dist/noctum-pergunta-canal.js +96 -0
- package/dist/noctum-pergunta.js +115 -0
- package/dist/noctum-provas.js +838 -0
- package/dist/noctum-reconciliacao.js +591 -0
- package/dist/noctum-registro.js +215 -0
- package/dist/noctum-relatorio.js +827 -0
- package/dist/noctum-resposta.js +207 -0
- package/dist/noctum-sessoes-em-voo.js +93 -0
- package/dist/noctum-supervisao.js +649 -0
- package/dist/noctum-terminal.js +459 -0
- package/dist/noctum-transporte.js +655 -0
- package/dist/noctum-vigia.js +639 -0
- package/dist/ocupacao.js +32 -3
- package/dist/onboarding.js +56 -26
- package/dist/orkmind.js +48 -25
- package/dist/orquestracao.js +44 -47
- package/dist/parado-no-condutor.js +174 -127
- package/dist/phase.js +144 -63
- package/dist/policies.js +37 -4
- package/dist/portfolio.js +4 -2
- package/dist/postura-local.js +235 -0
- package/dist/preflight.js +11 -10
- package/dist/procedencia.js +220 -0
- package/dist/projeto-alvo.js +186 -24
- package/dist/prompts.js +140 -42
- package/dist/prova-minima.js +5 -6
- package/dist/pulse-cadencia.js +5 -4
- package/dist/pulse-consentimento.js +53 -1
- package/dist/pulse-delivery.js +151 -24
- package/dist/pulse-resposta.js +368 -4
- package/dist/pulse.js +188 -22
- package/dist/ratelimit.js +16 -6
- package/dist/recall.js +14 -13
- package/dist/redacao-saida.js +63 -0
- package/dist/rede-adesao.js +13 -8
- package/dist/rede-forja.js +108 -24
- package/dist/rede-status.js +66 -47
- package/dist/rede.js +86 -46
- package/dist/retomada-checkpoint.js +101 -0
- package/dist/retry.js +451 -212
- package/dist/roadmap-reservas.js +45 -28
- package/dist/roadmap-status.js +129 -33
- package/dist/runtime-ambiente.js +5 -0
- package/dist/runtime-context.js +284 -32
- package/dist/runtime-escada.js +423 -0
- package/dist/runtime-profiles.js +103 -46
- package/dist/runtimes.js +2 -1
- package/dist/saida-segura.js +3 -2
- package/dist/security-scan/agil.js +355 -0
- package/dist/security-scan/cli.js +76 -0
- package/dist/security-scan/compare.js +149 -0
- package/dist/security-scan/config.js +93 -0
- package/dist/security-scan/detect.js +97 -0
- package/dist/security-scan/executor.js +188 -0
- package/dist/security-scan/guard.js +180 -0
- package/dist/security-scan/imagem-de-lint.js +96 -0
- package/dist/security-scan/normalize/actionlint.js +12 -0
- package/dist/security-scan/normalize/eslint.js +12 -0
- package/dist/security-scan/normalize/gitleaks.js +13 -0
- package/dist/security-scan/normalize/golangci-lint.js +13 -0
- package/dist/security-scan/normalize/govulncheck.js +36 -0
- package/dist/security-scan/normalize/index.js +25 -0
- package/dist/security-scan/normalize/npm-audit.js +30 -0
- package/dist/security-scan/normalize/osv-scanner.js +32 -0
- package/dist/security-scan/normalize/oxlint.js +51 -0
- package/dist/security-scan/normalize/pip-audit.js +16 -0
- package/dist/security-scan/normalize/ruff.js +12 -0
- package/dist/security-scan/normalize/semgrep.js +20 -0
- package/dist/security-scan/normalize/trivy.js +33 -0
- package/dist/security-scan/normalize/util.js +204 -0
- package/dist/security-scan/normalize/zizmor.js +19 -0
- package/dist/security-scan/report.js +156 -0
- package/dist/security-scan/run.js +448 -0
- package/dist/security-scan/tools.js +62 -0
- package/dist/security-scan/trabalhador.js +74 -0
- package/dist/security-scan/types.js +15 -0
- package/dist/session-events.js +26 -5
- package/dist/session-watcher-claude.js +81 -20
- package/dist/session-watcher.js +340 -42
- package/dist/sessoes-contas.js +10 -1
- package/dist/sessoes-inventario.js +1 -1
- package/dist/sessoes.js +25 -23
- package/dist/setup.js +59 -58
- package/dist/ship-publicar.js +971 -0
- package/dist/ship.js +243 -97
- package/dist/steal.js +77 -0
- package/dist/superficie.js +14 -11
- package/dist/thread-close.js +12 -11
- package/dist/thread.js +274 -100
- package/dist/tokens.js +15 -11
- package/dist/trabalho-thread.js +297 -0
- package/dist/transporte-do-canal.js +189 -0
- package/dist/types.js +12 -1
- package/dist/util.js +13 -3
- package/dist/varredura-acoes.js +507 -0
- package/dist/verify.js +608 -76
- package/dist/vida-da-thread.js +254 -0
- package/dist/worktree-local.js +167 -0
- package/dist/worktree.js +99 -83
- package/dist/yaml.js +27 -8
- package/eval/casos/check-quality.json +77 -0
- package/eval/casos/security-auditor.json +148 -0
- package/eval/casos/security-remediation.json +161 -0
- package/eval/fixtures/security-scan/README.md +8 -0
- package/eval/fixtures/security-scan/go/.github/workflows/ci.yml +12 -0
- package/eval/fixtures/security-scan/go/Dockerfile +4 -0
- package/eval/fixtures/security-scan/go/README.md +4 -0
- package/eval/fixtures/security-scan/go/config.go +4 -0
- package/eval/fixtures/security-scan/go/go.mod +5 -0
- package/eval/fixtures/security-scan/go/go.sum +2 -0
- package/eval/fixtures/security-scan/go/main.go +31 -0
- package/eval/fixtures/security-scan/js/.github/workflows/ci.yml +12 -0
- package/eval/fixtures/security-scan/js/Dockerfile +3 -0
- package/eval/fixtures/security-scan/js/README.md +4 -0
- package/eval/fixtures/security-scan/js/package-lock.json +844 -0
- package/eval/fixtures/security-scan/js/package.json +10 -0
- package/eval/fixtures/security-scan/js/src/config.js +4 -0
- package/eval/fixtures/security-scan/js/src/server.js +17 -0
- package/eval/fixtures/security-scan/js/src/util.ts +4 -0
- package/eval/fixtures/security-scan/js/tsconfig.json +4 -0
- package/eval/fixtures/security-scan/python/.github/workflows/ci.yml +12 -0
- package/eval/fixtures/security-scan/python/Dockerfile +3 -0
- package/eval/fixtures/security-scan/python/README.md +4 -0
- package/eval/fixtures/security-scan/python/app/__init__.py +0 -0
- package/eval/fixtures/security-scan/python/app/config.py +2 -0
- package/eval/fixtures/security-scan/python/app/main.py +19 -0
- package/eval/fixtures/security-scan/python/requirements.txt +1 -0
- package/package.json +9 -4
- package/references/security-checklist.md +3 -3
- package/schemas/code-artifact-graph.v1.schema.json +2 -1
- package/skills/README.md +1 -0
- package/skills/core/orkastery-bootstrap/SKILL.md +2 -2
- package/skills/phases/check-quality/SKILL.md +16 -0
- package/skills/phases/go-implementation/SKILL.md +6 -0
- package/skills/phases/security-remediation/SKILL.md +70 -0
- package/skills/reviewers/security-auditor/SKILL.md +25 -0
|
@@ -0,0 +1,151 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* RM-061, fatia F2a: a familia `phase` do catalogo de mensagens (`ork phase list` e o resumo de
|
|
4
|
+
* `ork phase run`). O pt-BR e a fonte; o ingles e tipado por ele. Sem import do nucleo.
|
|
5
|
+
*
|
|
6
|
+
* O que o despacho grava e dado e sai como foi gravado: o erro do ledger, a recusa de conducao
|
|
7
|
+
* registrada, o detalhe e a correcao de uma policy avaliada, a decisao autonoma, o estado e o
|
|
8
|
+
* veredito de um evento. O catalogo traduz a moldura que o comando monta em volta deles.
|
|
9
|
+
*/
|
|
10
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
11
|
+
exports.PHASE_EN = exports.PHASE_PT_BR = void 0;
|
|
12
|
+
exports.PHASE_PT_BR = {
|
|
13
|
+
// ork phase list
|
|
14
|
+
ledgerVazio: (id) => `Ledger vazio para a thread ${id}.`,
|
|
15
|
+
colunas: ['QUANDO', 'EVENTO', 'DETALHE'],
|
|
16
|
+
sessao: (id) => `sessao ${id}`,
|
|
17
|
+
pausaSobre: (sobre) => `pausa sobre ${sobre}`,
|
|
18
|
+
noRuntime: (encontrada) => `no runtime: ${encontrada ? 'sim' : 'nao'}`,
|
|
19
|
+
modelo: (modelo, esforco) => `modelo ${modelo}/${esforco}`,
|
|
20
|
+
motivo: (motivo) => `motivo ${motivo}`,
|
|
21
|
+
veredito: (veredito) => `veredito: ${veredito}`,
|
|
22
|
+
ocupacao: (ocupacao, fonte) => `ocupacao ${ocupacao === null ? 'nao medivel' : ocupacao} (${fonte})`,
|
|
23
|
+
proximoSlug: (slug) => `proximo slug ${slug}`,
|
|
24
|
+
acao: (acao) => `acao ${acao}`,
|
|
25
|
+
pedido: (pedido) => `pedido ${pedido}`,
|
|
26
|
+
rodada: (rodada) => `rodada ${rodada}`,
|
|
27
|
+
cobertura: (cobertura) => `cobertura ${cobertura}`,
|
|
28
|
+
liberaEm: (quando) => `libera em ${quando}`,
|
|
29
|
+
tentativa: (tentativa, limite) => `tentativa ${tentativa}/${limite}`,
|
|
30
|
+
remoto: (sha) => `remoto ${sha}`,
|
|
31
|
+
pushProvado: (provado) => `push provado: ${provado ? 'sim' : 'nao'}`,
|
|
32
|
+
autorizadoPor: (quem) => `autorizado por ${quem}`,
|
|
33
|
+
sobre: (sobre) => `sobre ${sobre}`,
|
|
34
|
+
ensaio: 'ensaio (--dry-run)',
|
|
35
|
+
worktreeEm: (branch, dir) => `${branch} em ${dir}`,
|
|
36
|
+
triagem: (inline, ponteiros, resumos) => `triagem ${inline} inline / ${ponteiros} ponteiros / ${resumos} resumos`,
|
|
37
|
+
ponteiro: (local) => `ponteiro ${local}`,
|
|
38
|
+
erro: (erro) => `erro: ${erro}`,
|
|
39
|
+
modo: (modo) => `modo ${modo}`,
|
|
40
|
+
usoList: 'uso: ork phase list <thread-id>',
|
|
41
|
+
// ork phase run
|
|
42
|
+
usoRun: 'uso: ork phase run <thread-id> <FASE> --prompt "<texto>"',
|
|
43
|
+
canalUso: 'uso: --canal <claude-code|hermes|openclaw|codex|mcp|cli>',
|
|
44
|
+
esperarUso: 'uso: --esperar [minutos], de 1 a 1440 (sem valor, 30)',
|
|
45
|
+
aviso: (aviso) => `aviso: ${aviso}`,
|
|
46
|
+
/** Rotulo do resumo (` slug da sessao : valor`), na largura de 14. */
|
|
47
|
+
rotulos: { slug: 'slug da sessao', prompt: 'prompt', sha256: 'sha256', pausaAoFim: 'pausa ao fim', runtime: 'runtime',
|
|
48
|
+
modelo: 'modelo/esforco', comando: 'comando', sessionId: 'sessionId' },
|
|
49
|
+
simulacao: 'Simulacao (--dry-run), nada foi despachado.',
|
|
50
|
+
simNao: (sim) => sim ? 'sim' : 'nao',
|
|
51
|
+
despachada: (fase) => `Fase ${fase} despachada como background agent.`,
|
|
52
|
+
modeloGravado: (modelo, esforco) => `${modelo}/${esforco} (gravado no ledger, veja \`ork phase list\`)`,
|
|
53
|
+
verificada: (sim) => ` verificada no runtime: ${sim ? 'sim' : 'NAO (confira `ork sessions`)'}`,
|
|
54
|
+
pausaNoFim: (sim) => ` pausa ao fim do bloco: ${sim ? 'sim' : 'nao (decisao autonoma no ledger)'}`,
|
|
55
|
+
acompanheClaude: (sessao, id) => `Acompanhe: claude attach ${sessao} | ork phase list ${id}`,
|
|
56
|
+
acompanhe: (id) => `Acompanhe: ork phase list ${id} (eventos do despacho no log da thread)`,
|
|
57
|
+
vagaRecusada: (ocupam, limite) => `Despacho recusado: concurrency.limite. O projeto ja tem ${ocupam} sessao(oes) viva(s) ` +
|
|
58
|
+
`em outras threads e o limite e ${limite} (concurrency.max_parallel_threads).`,
|
|
59
|
+
despachoEmCurso: 'despacho em curso',
|
|
60
|
+
desde: (quando) => `desde ${quando}`,
|
|
61
|
+
correcao: (correcao) => ` correcao: ${correcao}`,
|
|
62
|
+
vagaEnsaio: ' ensaio (--dry-run): nada foi gravado.',
|
|
63
|
+
vagaLedger: (id) => ` evento slot_refused no ledger de ${id}; nenhuma sessao aberta.`,
|
|
64
|
+
recusado: (erro) => `Despacho recusado: ${erro}`,
|
|
65
|
+
baselinePendente: ' nenhuma sessao aberta; o ledger nao ganhou gate_blocked',
|
|
66
|
+
bloqueado: (motivo) => `Despacho BLOQUEADO pelo gate tipado: ${motivo}`,
|
|
67
|
+
violacaoCorrecao: (correcao) => ` correcao: ${correcao}`,
|
|
68
|
+
promptNaoGravado: (id) => ` o prompt nao foi gravado em disco; evento gate_blocked no ledger de ${id}`,
|
|
69
|
+
falhou: (erro) => `Despacho falhou: ${erro}`,
|
|
70
|
+
falhouLedger: (id) => ` evento registrado no ledger de ${id}`,
|
|
71
|
+
repetido: (fase, id, sha, desde) => `Pedido ja em andamento: a fase ${fase} da thread ${id} roda com este mesmo prompt ` +
|
|
72
|
+
`(sha256 ${sha}) desde ${desde}. Nenhuma sessao nova foi aberta e nenhuma cota foi gasta.`,
|
|
73
|
+
acompanhar: (comando) => ` acompanhar: ${comando}`,
|
|
74
|
+
/** Aviso de policy em `warn` (policies.ts): o detalhe e a correcao sao dado da policy avaliada. */
|
|
75
|
+
avisoDaPolicy: (recuo, policy, detalhe) => `${recuo}aviso da policy ${policy}: ${detalhe}`,
|
|
76
|
+
avisoCorrecao: (recuo, correcao) => `${recuo} correcao: ${correcao}`,
|
|
77
|
+
// thread.ts
|
|
78
|
+
faseInvalida: (bruto, fases) => `fase invalida: "${bruto}" (esperado uma de ${fases})`,
|
|
79
|
+
/** D14: erros de argumento de `phase run` que nascem no escopo pt-BR do despacho (`ErroDoCatalogo`). */
|
|
80
|
+
runtimeDesconhecido: (nome, homologados) => `runtime de despacho desconhecido: "${nome}" (homologados: ${homologados})`,
|
|
81
|
+
modeloAoTrocarRuntime: (origem, runtime) => `setup.model.required: ao trocar runtime de ${origem} para ${runtime}, ` +
|
|
82
|
+
`informe --runtime ${runtime} --model <modelo> para este despacho; o setup do projeto permanece intacto.`,
|
|
83
|
+
modeloPendente: (runtime) => `setup.model.required: modelo pendente para ${runtime}; informe --model <modelo> neste despacho ou complete o bloco em ork setup.`,
|
|
84
|
+
};
|
|
85
|
+
exports.PHASE_EN = {
|
|
86
|
+
ledgerVazio: (id) => `Empty ledger for thread ${id}.`,
|
|
87
|
+
colunas: ['WHEN', 'EVENT', 'DETAIL'],
|
|
88
|
+
sessao: (id) => `session ${id}`,
|
|
89
|
+
pausaSobre: (sobre) => `pause on ${sobre}`,
|
|
90
|
+
noRuntime: (encontrada) => `in the runtime: ${encontrada ? 'yes' : 'no'}`,
|
|
91
|
+
modelo: (modelo, esforco) => `model ${modelo}/${esforco}`,
|
|
92
|
+
motivo: (motivo) => `reason ${motivo}`,
|
|
93
|
+
veredito: (veredito) => `verdict: ${veredito}`,
|
|
94
|
+
ocupacao: (ocupacao, fonte) => `occupancy ${ocupacao === null ? 'not measurable' : ocupacao} (${fonte})`,
|
|
95
|
+
proximoSlug: (slug) => `next slug ${slug}`,
|
|
96
|
+
acao: (acao) => `action ${acao}`,
|
|
97
|
+
pedido: (pedido) => `request ${pedido}`,
|
|
98
|
+
rodada: (rodada) => `round ${rodada}`,
|
|
99
|
+
cobertura: (cobertura) => `coverage ${cobertura}`,
|
|
100
|
+
liberaEm: (quando) => `released at ${quando}`,
|
|
101
|
+
tentativa: (tentativa, limite) => `attempt ${tentativa}/${limite}`,
|
|
102
|
+
remoto: (sha) => `remote ${sha}`,
|
|
103
|
+
pushProvado: (provado) => `push proven: ${provado ? 'yes' : 'no'}`,
|
|
104
|
+
autorizadoPor: (quem) => `authorized by ${quem}`,
|
|
105
|
+
sobre: (sobre) => `about ${sobre}`,
|
|
106
|
+
ensaio: 'dry run (--dry-run)',
|
|
107
|
+
worktreeEm: (branch, dir) => `${branch} at ${dir}`,
|
|
108
|
+
triagem: (inline, ponteiros, resumos) => `triage ${inline} inline / ${ponteiros} pointers / ${resumos} summaries`,
|
|
109
|
+
ponteiro: (local) => `pointer ${local}`,
|
|
110
|
+
erro: (erro) => `error: ${erro}`,
|
|
111
|
+
modo: (modo) => `mode ${modo}`,
|
|
112
|
+
usoList: 'usage: ork phase list <thread-id>',
|
|
113
|
+
usoRun: 'usage: ork phase run <thread-id> <PHASE> --prompt "<text>"',
|
|
114
|
+
canalUso: 'usage: --canal <claude-code|hermes|openclaw|codex|mcp|cli>',
|
|
115
|
+
esperarUso: 'usage: --esperar [minutes], from 1 to 1440 (no value: 30)',
|
|
116
|
+
aviso: (aviso) => `warning: ${aviso}`,
|
|
117
|
+
rotulos: { slug: 'session slug', prompt: 'prompt', sha256: 'sha256', pausaAoFim: 'pause at end', runtime: 'runtime',
|
|
118
|
+
modelo: 'model/effort', comando: 'command', sessionId: 'sessionId' },
|
|
119
|
+
simulacao: 'Dry run (--dry-run): nothing was dispatched.',
|
|
120
|
+
simNao: (sim) => sim ? 'yes' : 'no',
|
|
121
|
+
despachada: (fase) => `Phase ${fase} dispatched as a background agent.`,
|
|
122
|
+
modeloGravado: (modelo, esforco) => `${modelo}/${esforco} (recorded in the ledger, see \`ork phase list\`)`,
|
|
123
|
+
verificada: (sim) => ` verified in the runtime: ${sim ? 'yes' : 'NO (check `ork sessions`)'}`,
|
|
124
|
+
pausaNoFim: (sim) => ` pause at block end: ${sim ? 'yes' : 'no (autonomous decision in the ledger)'}`,
|
|
125
|
+
acompanheClaude: (sessao, id) => `Follow: claude attach ${sessao} | ork phase list ${id}`,
|
|
126
|
+
acompanhe: (id) => `Follow: ork phase list ${id} (dispatch events in the thread log)`,
|
|
127
|
+
vagaRecusada: (ocupam, limite) => `Dispatch refused: concurrency.limite. The project already has ${ocupam} live session(s) ` +
|
|
128
|
+
`in other threads and the limit is ${limite} (\`concurrency.max_parallel_threads\`).`,
|
|
129
|
+
despachoEmCurso: 'dispatch in progress',
|
|
130
|
+
desde: (quando) => `since ${quando}`,
|
|
131
|
+
correcao: (correcao) => ` fix: ${correcao}`,
|
|
132
|
+
vagaEnsaio: ' dry run (--dry-run): nothing was written.',
|
|
133
|
+
vagaLedger: (id) => ` slot_refused event in the ${id} ledger; no session opened.`,
|
|
134
|
+
recusado: (erro) => `Dispatch refused: ${erro}`,
|
|
135
|
+
baselinePendente: ' no session opened; the ledger did not get gate_blocked',
|
|
136
|
+
bloqueado: (motivo) => `Dispatch BLOCKED by the typed gate: ${motivo}`,
|
|
137
|
+
violacaoCorrecao: (correcao) => ` fix: ${correcao}`,
|
|
138
|
+
promptNaoGravado: (id) => ` the prompt was not written to disk; gate_blocked event in the ${id} ledger`,
|
|
139
|
+
falhou: (erro) => `Dispatch failed: ${erro}`,
|
|
140
|
+
falhouLedger: (id) => ` event recorded in the ${id} ledger`,
|
|
141
|
+
repetido: (fase, id, sha, desde) => `Request already in progress: phase ${fase} of thread ${id} runs with this same prompt ` +
|
|
142
|
+
`(sha256 ${sha}) since ${desde}. No new session was opened and no quota was spent.`,
|
|
143
|
+
acompanhar: (comando) => ` follow: ${comando}`,
|
|
144
|
+
avisoDaPolicy: (recuo, policy, detalhe) => `${recuo}policy ${policy} warning: ${detalhe}`,
|
|
145
|
+
avisoCorrecao: (recuo, correcao) => `${recuo} fix: ${correcao}`,
|
|
146
|
+
faseInvalida: (bruto, fases) => `invalid phase: "${bruto}" (expected one of ${fases})`,
|
|
147
|
+
runtimeDesconhecido: (nome, homologados) => `unknown dispatch runtime: "${nome}" (supported: ${homologados})`,
|
|
148
|
+
modeloAoTrocarRuntime: (origem, runtime) => `setup.model.required: switching the runtime from ${origem} to ${runtime} needs a model; ` +
|
|
149
|
+
`pass \`--runtime ${runtime} --model <model>\` for this dispatch. The project setup stays as it is.`,
|
|
150
|
+
modeloPendente: (runtime) => `setup.model.required: no model set for ${runtime}; pass \`--model <model>\` in this dispatch or complete the block with \`ork setup\`.`,
|
|
151
|
+
};
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.PROJETOS_EN = exports.PROJETOS_PT_BR = void 0;
|
|
4
|
+
/** RM-061 F3d: registro e seleção de projetos, sem importar o núcleo. */
|
|
5
|
+
exports.PROJETOS_PT_BR = {
|
|
6
|
+
candidatos: 'Candidatos:', semRemoto: 'sem remoto', ausente: 'ausente do disco',
|
|
7
|
+
ocupado: (trava) => `registro de projetos ocupado (${trava}); tente de novo`,
|
|
8
|
+
segredoConteudo: 'registro de projetos recusado: o conteudo parece carregar segredo',
|
|
9
|
+
segredoEntrada: 'registro de projetos recusado: a entrada parece carregar segredo',
|
|
10
|
+
semManifesto: (caminho) => `nenhum manifesto do ork em ${caminho}`,
|
|
11
|
+
rodeInit: 'Rode `ork init` na raiz do projeto antes de registrá-lo.',
|
|
12
|
+
manifestoInvalido: (caminho) => `registro de projetos: manifesto inválido em ${caminho}`,
|
|
13
|
+
naoRegistrado: (valor) => `"${valor}" não está no registro de projetos desta máquina`,
|
|
14
|
+
vejaRegistrados: 'Veja os registrados com `ork projetos`.',
|
|
15
|
+
caminhoNaoExiste: (caminho) => `o caminho ${caminho} não existe`,
|
|
16
|
+
informeRaiz: 'Informe o caminho da raiz de um projeto com orkastery.yaml, ou o nome de um projeto registrado (`ork projetos`).',
|
|
17
|
+
yamlAusente: (caminho) => `nenhum orkastery.yaml em ${caminho} nem acima dele`,
|
|
18
|
+
initOuNome: 'Rode `ork init` na raiz do projeto, ou informe o nome de um projeto registrado (`ork projetos`).',
|
|
19
|
+
nomeInvalido: (valor) => `"${valor}" não é um nome de projeto válido`,
|
|
20
|
+
useNome: 'Use o nome ou o abbrev de um projeto de `ork projetos`.',
|
|
21
|
+
ambiguo: (valor, total) => `"${valor}" casa ${total} projetos registrados nesta máquina`,
|
|
22
|
+
escolhaRaiz: 'Repita com o caminho da raiz (`--projeto <caminho>`), ou tire a cópia que sobra com `ork projetos esquecer <caminho>`.',
|
|
23
|
+
semManifestoRegistrado: (valor) => `"${valor}" está registrado, mas o manifesto não está mais na raiz`,
|
|
24
|
+
registreCopia: 'Veja os registrados com `ork projetos`; registre uma cópia com `ork projetos registrar <caminho>`.',
|
|
25
|
+
ofertaRede: 'Para ver todos os projetos e as threads de todas as máquinas sem escolher, com a fonte e a hora de cada parte: ' +
|
|
26
|
+
'`ork network roadmap` (tool ork_network_roadmap).',
|
|
27
|
+
opcaoSemValor: '--projeto sem valor',
|
|
28
|
+
usoOpcao: 'Uso: --projeto <nome|caminho>; os nomes registrados estão em `ork projetos`.',
|
|
29
|
+
hostCaminho: (valor) => `no host o projeto vem pelo nome registrado; o caminho "${valor}" não é aceito`,
|
|
30
|
+
hostUseNome: 'Use o nome de um projeto de `ork projetos` (ex.: --projeto orkastery).',
|
|
31
|
+
precisaEscolher: (total) => `${total} projetos conhecidos nesta máquina e nenhum foi pedido; o ork não escolhe pelo diretório do gateway`,
|
|
32
|
+
repitaEscolha: (oferta) => 'Repita com o projeto pedido: parâmetro `projeto` da tool, ou `--projeto <nome>`. ' + oferta,
|
|
33
|
+
nenhum: 'nenhum projeto conhecido nesta máquina e nenhum foi pedido',
|
|
34
|
+
registrePrimeiro: 'Registre o projeto com `ork projetos registrar <caminho>` (ou `ork init` na raiz dele) e repita com o nome. ' +
|
|
35
|
+
'Sem clone nesta máquina, o roadmap de um projeto vem da forja: `ork network roadmap --projeto github:dono/repo` (tool ork_network_roadmap).',
|
|
36
|
+
avisoTemporario: (raiz, registro) => `aviso: projeto em pasta temporária (${raiz}) não entra no registro desta máquina ` +
|
|
37
|
+
`(${registro}); para registrá-lo mesmo assim: ork projetos registrar ${raiz}`,
|
|
38
|
+
avisoRegistro: (registro, erro) => `aviso: projeto não registrado em ${registro} (${erro})`,
|
|
39
|
+
cli: {
|
|
40
|
+
titulo: (arquivo) => `Projetos conhecidos desta maquina (${arquivo})`,
|
|
41
|
+
nenhum: ' Nenhum ainda. ork init, ork thread new e ork fabrica entrar registram; ou: ork projetos registrar <caminho>',
|
|
42
|
+
cabecalho: ['NOME', 'ABBREV', 'RAIZ', 'REMOTO', 'NO DISCO', 'ATUALIZADO'],
|
|
43
|
+
sim: 'sim', ausente: 'ausente', semRemoto: 'sem remoto',
|
|
44
|
+
selecao: 'Use --projeto <nome> em qualquer comando (ORK_PROJETO vale para o shell inteiro).',
|
|
45
|
+
usoRegistrar: 'uso: ork projetos registrar [caminho] (um caminho ou --projeto, não os dois)',
|
|
46
|
+
registrado: (nome, abbrev, raiz, remoto) => `Projeto ${nome} (${abbrev}) registrado: ${raiz} · ${remoto}`,
|
|
47
|
+
usoEsquecer: 'uso: ork projetos esquecer <nome|caminho>',
|
|
48
|
+
esquecido: (nome, raiz) => `Projeto ${nome} esquecido: ${raiz} (nada no disco foi apagado)`,
|
|
49
|
+
desconhecido: (sub) => `subcomando desconhecido: projetos ${sub}`,
|
|
50
|
+
uso: 'uso: ork projetos [--json] | projetos registrar [caminho] | projetos esquecer <nome|caminho>',
|
|
51
|
+
},
|
|
52
|
+
};
|
|
53
|
+
exports.PROJETOS_EN = {
|
|
54
|
+
candidatos: 'Candidates:', semRemoto: 'no remote', ausente: 'missing from disk',
|
|
55
|
+
ocupado: (lock) => `project registry busy (${lock}); try again`,
|
|
56
|
+
segredoConteudo: 'project registry refused: its content appears to contain a secret',
|
|
57
|
+
segredoEntrada: 'project registry refused: the entry appears to contain a secret',
|
|
58
|
+
semManifesto: (path) => `no ork manifest in ${path}`,
|
|
59
|
+
rodeInit: 'Run `ork init` at the project root before registering it.',
|
|
60
|
+
manifestoInvalido: (path) => `project registry: invalid manifest at ${path}`,
|
|
61
|
+
naoRegistrado: (value) => `"${value}" is not in this machine's project registry`,
|
|
62
|
+
vejaRegistrados: 'View registered projects with `ork projetos`.',
|
|
63
|
+
caminhoNaoExiste: (path) => `path ${path} does not exist`,
|
|
64
|
+
informeRaiz: 'Provide the root path of a project with orkastery.yaml, or the name of a registered project (`ork projetos`).',
|
|
65
|
+
yamlAusente: (path) => `no orkastery.yaml in ${path} or any parent directory`,
|
|
66
|
+
initOuNome: 'Run `ork init` at the project root, or provide the name of a registered project (`ork projetos`).',
|
|
67
|
+
nomeInvalido: (value) => `"${value}" is not a valid project name`,
|
|
68
|
+
useNome: 'Use the name or abbrev of a project from `ork projetos`.',
|
|
69
|
+
ambiguo: (value, total) => `"${value}" matches ${total} projects registered on this machine`,
|
|
70
|
+
escolhaRaiz: 'Repeat with the root path (`--projeto <path>`), or remove the stale copy with `ork projetos esquecer <path>`.',
|
|
71
|
+
semManifestoRegistrado: (value) => `"${value}" is registered, but its manifest is no longer at the root`,
|
|
72
|
+
registreCopia: 'View projects with `ork projetos`; register a copy with `ork projetos registrar <path>`.',
|
|
73
|
+
ofertaRede: 'To view all projects and threads from every machine without choosing one, including each source and timestamp: ' +
|
|
74
|
+
'`ork network roadmap` (tool ork_network_roadmap).',
|
|
75
|
+
opcaoSemValor: '--projeto has no value',
|
|
76
|
+
usoOpcao: 'Usage: --projeto <name|path>; registered names are listed by `ork projetos`.',
|
|
77
|
+
hostCaminho: (value) => `on a host, select a project by its registered name; path "${value}" is not accepted`,
|
|
78
|
+
hostUseNome: 'Use a project name from `ork projetos` (for example: --projeto orkastery).',
|
|
79
|
+
precisaEscolher: (total) => `${total} projects are known on this machine and none was requested; ork does not choose from the gateway directory`,
|
|
80
|
+
repitaEscolha: (offer) => "Repeat with the requested project: the tool's `projeto` parameter, or `--projeto <name>`. " + offer,
|
|
81
|
+
nenhum: 'no project is known on this machine and none was requested',
|
|
82
|
+
registrePrimeiro: 'Register the project with `ork projetos registrar <path>` (or `ork init` at its root), then repeat with its name. ' +
|
|
83
|
+
'Without a clone on this machine, read a project roadmap from the forge: `ork network roadmap --projeto github:owner/repo` (tool ork_network_roadmap).',
|
|
84
|
+
avisoTemporario: (root, registry) => `warning: project in a temporary folder (${root}) is not added to this machine's registry ` +
|
|
85
|
+
`(${registry}); to register it anyway: ork projetos registrar ${root}`,
|
|
86
|
+
avisoRegistro: (registry, error) => `warning: project was not registered in ${registry} (${error})`,
|
|
87
|
+
cli: {
|
|
88
|
+
titulo: (file) => `Projects known on this machine (${file})`,
|
|
89
|
+
nenhum: ' None yet. ork init, ork thread new, and ork fabrica entrar register projects; or run: ork projetos registrar <path>',
|
|
90
|
+
cabecalho: ['NAME', 'ABBREV', 'ROOT', 'REMOTE', 'ON DISK', 'UPDATED'],
|
|
91
|
+
sim: 'yes', ausente: 'missing', semRemoto: 'no remote',
|
|
92
|
+
selecao: 'Use --projeto <name> with any command (ORK_PROJETO applies to the whole shell).',
|
|
93
|
+
usoRegistrar: 'usage: ork projetos registrar [path] (use either a path or --projeto, not both)',
|
|
94
|
+
registrado: (name, abbrev, root, remote) => `Project ${name} (${abbrev}) registered: ${root} · ${remote}`,
|
|
95
|
+
usoEsquecer: 'usage: ork projetos esquecer <name|path>',
|
|
96
|
+
esquecido: (name, root) => `Project ${name} forgotten: ${root} (nothing was deleted from disk)`,
|
|
97
|
+
desconhecido: (sub) => `unknown subcommand: projetos ${sub}`,
|
|
98
|
+
uso: 'usage: ork projetos [--json] | projetos registrar [path] | projetos esquecer <name|path>',
|
|
99
|
+
},
|
|
100
|
+
};
|
|
@@ -0,0 +1,194 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/** RM-061 F3c: texto dos prompts de fase e da familia `ork prompt`. PT-BR e a fonte tipada. */
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.PROMPTS_EN = exports.PROMPTS_PT_BR = void 0;
|
|
5
|
+
const locale_thread_1 = require("./locale-thread");
|
|
6
|
+
exports.PROMPTS_PT_BR = {
|
|
7
|
+
contratoDasFases: {
|
|
8
|
+
GOAL: 'GOAL (F1): objetivo verificavel, impact map, criterios de sucesso e claims com comando de verificacao. Nao implementa.',
|
|
9
|
+
PLAN: 'PLAN (F2): plano com tarefas, touch_paths, decisoes D1..Dn com domicilio unico e verify executavel por tarefa. Nao implementa.',
|
|
10
|
+
GO: 'GO (F3): implementacao slice por slice, um commit atomico por tarefa, dentro da worktree da thread.',
|
|
11
|
+
CHECK: 'CHECK (F4): verificacao contra a baseline (regressao versus divida pre-existente), review de codigo, testes, seguranca e performance; ' +
|
|
12
|
+
'o parecer diz o modo do CHECK da rodada (Agile Check ou Classic Check, da linha `check` do `ork verify`).',
|
|
13
|
+
SHIP: 'SHIP (F5): merge serializado, push provado por comando, roadmap atualizado e plano de rollback.',
|
|
14
|
+
MASTER: 'MASTER (F6): MASTER log com postmortem tipado, licoes e o score humano de 0 a 5. Uma entrega sem MASTER log nao aconteceu.',
|
|
15
|
+
},
|
|
16
|
+
invariantes: [
|
|
17
|
+
'Claims, verify e policies rodam identicos em todos os modos.',
|
|
18
|
+
'Policy `block` pausa qualquer modo, inclusive #Auto.',
|
|
19
|
+
'Escalacao tipada para humano pausa qualquer modo, inclusive #Auto.',
|
|
20
|
+
'Toda entrega fecha com indice derivado do ledger; a nota humana, quando vier, sobrescreve.',
|
|
21
|
+
'Toda decisao autonoma vai ao ledger com quem decidiu, evidencia e razao.',
|
|
22
|
+
],
|
|
23
|
+
variante: (v) => `Variante de ciclo: ${v}`,
|
|
24
|
+
pausaSobre: (s) => s,
|
|
25
|
+
pausa: (sobre) => `Ao fim deste bloco HA PAUSA humana sobre: ${sobre}. Pare, apresente a evidencia e espere o veredito.`,
|
|
26
|
+
semPausa: 'Ao fim deste bloco NAO ha pausa humana: siga com decisao autonoma e registre no ledger quem decidiu, com que evidencia e por que.',
|
|
27
|
+
raizDoProjeto: '(raiz do projeto)',
|
|
28
|
+
regrasDeEvidencia: [
|
|
29
|
+
'Nada de self-report: toda alegacao vem com o comando que a comprova e a saida real.',
|
|
30
|
+
'Trabalhe apenas no diretorio de trabalho indicado acima.',
|
|
31
|
+
'Passos irreversiveis (push, merge, delecao) so acontecem quando o modo autoriza.',
|
|
32
|
+
],
|
|
33
|
+
regraDasEsperas: 'Esperas: nunca dispare verify, build ou suite com `&` dentro do comando, porque o processo se perde e a sessao ' +
|
|
34
|
+
'espera um aviso que nunca vem; rode o `ork verify` em primeiro plano, com `timeout` (ele espera a vez na fila de ' +
|
|
35
|
+
'recursos pesados), ou use a execucao em segundo plano do host, que avisa quando termina; nunca espere com ' +
|
|
36
|
+
'`pgrep -f` cujo padrao aparece no proprio comando, porque o laco acha a si mesmo e nao termina: espere pelo ' +
|
|
37
|
+
'arquivo de saida com prazo, ou pelo PID guardado.',
|
|
38
|
+
fechoDoGo: (t) => [
|
|
39
|
+
'## Fecho obrigatório do GO',
|
|
40
|
+
'',
|
|
41
|
+
`Antes de encerrar o bloco com GO, rode \`ork verify ${t}\` e o build declarado no manifesto, ambos em primeiro plano.`,
|
|
42
|
+
`Gere o bundle com \`ork ci prepare ${t}\` e faça o commit atômico final \`ci(${t}): bundle ...\`.`,
|
|
43
|
+
`Grave \`.orkastery/threads/${t}/pr-body.md\` curto, no idioma do projeto, com o modo do CHECK da rodada (Agile Check ou Classic Check, da linha \`check\` do \`ork verify\`); ` +
|
|
44
|
+
'se o perfil não puder gravá-lo pelo transporte autorizado, devolva o corpo completo no resumo final.',
|
|
45
|
+
'O rito é idêntico em Claude Code e Codex. Ele fecha o GO, mas não autoriza SHIP, push, PR ou merge.',
|
|
46
|
+
].join('\n'),
|
|
47
|
+
contextoDoGrafo: (thread) => '\n\n## Contexto do grafo (opcional)\n' +
|
|
48
|
+
`Consulte ork_grafo_contexto {threadId: "${thread}"} ou ork grafo contexto ${thread} --json para o pacote da thread com evidencias e teto em bytes.\n` +
|
|
49
|
+
'As tools ork_grafo_vizinhos, ork_grafo_chamadores, ork_grafo_importadores e ork_grafo_caminho permitem aprofundar. ' +
|
|
50
|
+
'Sem indice do HEAD, rode ork grafo indexar. O grafo e parcial e descreve o HEAD; ' +
|
|
51
|
+
'aresta com arvore: modificada vem de fonte que mudou depois dele: confira o arquivo antes de usar.\n',
|
|
52
|
+
memoria: {
|
|
53
|
+
titulo: (regime) => `## Memoria injetada (regime ${regime})`,
|
|
54
|
+
explicacao: 'Recuperacao deterministica por tag. Todo item declara de onde veio: nada entra neste prompt sem proveniencia. ' +
|
|
55
|
+
'O que NAO esta aqui esta nos ponteiros do handoff, recuperavel por `ork recall`.',
|
|
56
|
+
decisaoFechada: (id, por) => `Decisao ${id} (fechada por ${por})`,
|
|
57
|
+
decisaoSemantica: (id) => `Decisao ${id} (memoria semantica)`,
|
|
58
|
+
decisaoSemId: 'Decisao fechada (memoria semantica)',
|
|
59
|
+
licaoDaThread: (thread) => `Licao da thread ${thread}`,
|
|
60
|
+
licoesDoProduto: 'Licoes das threads fechadas deste produto (POSTMORTEM e MASTER)',
|
|
61
|
+
regraMandatoria: (titulo) => `Regra mandatoria: ${titulo}`,
|
|
62
|
+
grupos: { decision: 'Decisoes fechadas desta thread (entram em TODA fase)', learning: 'Licoes de threads anteriores deste produto',
|
|
63
|
+
rule: 'Regras mandatorias do ecossistema', handoff: 'Handoffs anteriores', roadmap: 'Roadmap' },
|
|
64
|
+
mandatory: ' [MANDATORY]',
|
|
65
|
+
origem: (location) => `origem: ${location}`,
|
|
66
|
+
},
|
|
67
|
+
secoesObrigatorias: ['## Ciclo canonico', '## Modo de conducao', '## Contexto da thread', '## Pedido do builder', '## Regras de evidencia'],
|
|
68
|
+
regraCentral: 'REGRA CENTRAL: o modo afrouxa a pausa, NUNCA a verificacao.',
|
|
69
|
+
cli: {
|
|
70
|
+
variavelSemValor: (id, v) => `template ${id}: variavel sem valor na renderizacao: ${v}`,
|
|
71
|
+
frontmatterAusente: (o) => `template em ${o}: frontmatter ausente (esperado bloco --- ... ---)`,
|
|
72
|
+
idAusente: 'frontmatter sem `id`', idDiverge: (id, e) => `o id "${id}" nao bate com o nome do arquivo "${e}.md"`,
|
|
73
|
+
versaoInvalida: (v) => `versao "${v}" invalida: esperado inteiro a partir de 1`, descricaoAusente: 'frontmatter sem `descricao`',
|
|
74
|
+
faseInvalida: (f, fs) => `"${f}" nao e fase do ciclo canonico (${fs})`,
|
|
75
|
+
variaveisNaoDeclaradas: (v) => `usadas no corpo e nao declaradas: ${v}`, variaveisNaoUsadas: (v) => `declaradas e nao usadas: ${v}`,
|
|
76
|
+
secaoAusente: (s) => `secao obrigatoria ausente: ${s}`, regraCentralAusente: (r) => `o template perdeu a linha: ${r}`,
|
|
77
|
+
pedidoAusente: (v, c) => `o template nao usa {{${v}}}: despacharia uma ${c} sem a demanda do builder`,
|
|
78
|
+
segredo: (n, l) => `padrao "${n}" casou na linha ${l} do template (trecho omitido de proposito)`,
|
|
79
|
+
tamanho: (b, l) => `${b} bytes acima do limite de ${l}`,
|
|
80
|
+
hitlTextoLivre: (l, o) => `linha ${l} pede ${o}; HITL de conducao e selecao de 3 a 5 alternativas com uma Recomendacao (RM-057)`,
|
|
81
|
+
travessao: 'o template usa travessao longo (U+2014); o padrao do projeto e hifen ou virgula',
|
|
82
|
+
templateNaoExiste: (id, ids) => `template "${id}" nao existe (conhecidos: ${ids})`,
|
|
83
|
+
templatePadraoAusente: 'template `fase-padrao` ausente: o `ork` nao tem prompt de fase',
|
|
84
|
+
semParIngles: (id) => `o dono fala ingles e o template ${id} do projeto nao tem o par ${id}.en: essa fase sai em pt-BR`,
|
|
85
|
+
gravidades: { erro: 'erro', aviso: 'aviso' }, semProblema: (n) => ` nenhum problema em ${n} template(s)`,
|
|
86
|
+
resumoLint: (n, e, a) => `templates: ${n} | erros: ${e} | avisos: ${a}`,
|
|
87
|
+
tituloLista: 'Templates de prompt (o do projeto sobrescreve o embutido de mesmo id)', origem: (o) => `origem: ${o}`,
|
|
88
|
+
fases: (f) => `fases: ${f}`, todas: 'todas', comoVersionar: 'Para versionar o seu: grave em prompts/<id>.md e rode `ork prompt lint`.',
|
|
89
|
+
lintTitulo: (r) => `Lint dos templates de prompt${r ? ` (projeto ${r})` : ' (somente embutidos)'}`, somenteEmbutidos: 'somente embutidos',
|
|
90
|
+
pedidoExemplo: '<pedido do builder>', cabecalhoTemplate: (id, v, o) => `# template ${id} v${v} (origem: ${o})`,
|
|
91
|
+
cabecalhoExemplo: (m, s) => `# thread de EXEMPLO (nada foi gravado), modo ${m}, sha256 ${s}`,
|
|
92
|
+
cabecalhoThread: (t, f, s) => `# thread ${t}, fase ${f}, sha256 ${s}`,
|
|
93
|
+
pedidoGuardado: (s) => `# pedido guardado na criacao da thread (sha256 ${s})`,
|
|
94
|
+
usoRenderThread: 'uso: ork prompt render <thread-id> <FASE> --pedido "<texto>"',
|
|
95
|
+
usoRenderExemplo: ' ork prompt render --exemplo --fase GOAL --modo auto --pedido "<texto>"',
|
|
96
|
+
subcomandoDesconhecido: (s) => `subcomando desconhecido: prompt ${s}`,
|
|
97
|
+
faseForaDoCiclo: (f, fs) => `fase "${f}" fora do ciclo canonico (${fs})`,
|
|
98
|
+
},
|
|
99
|
+
};
|
|
100
|
+
exports.PROMPTS_EN = {
|
|
101
|
+
contratoDasFases: {
|
|
102
|
+
GOAL: 'GOAL (F1): verifiable objective, impact map, success criteria, and claims with verification commands. Does not implement.',
|
|
103
|
+
PLAN: 'PLAN (F2): sliced tasks, queryable touch_paths, D1..Dn decisions with one home, and executable verify per task. Does not implement.',
|
|
104
|
+
GO: 'GO (F3): implement slice by slice, one atomic commit per task, inside the thread worktree.',
|
|
105
|
+
CHECK: 'CHECK (F4): verify against the baseline (regressions versus pre-existing debt), then review code, tests, security, and performance; ' +
|
|
106
|
+
'the verdict names the CHECK mode of the round (Agile Check or Classic Check, from the `check` line of `ork verify`).',
|
|
107
|
+
SHIP: 'SHIP (F5): serialized merge, command-proven push, updated roadmap, and rollback plan.',
|
|
108
|
+
MASTER: 'MASTER (F6): typed POSTMORTEM, MASTER log, lessons, and a human score from 0 to 5. A delivery without a MASTER log did not happen.',
|
|
109
|
+
},
|
|
110
|
+
invariantes: [
|
|
111
|
+
'Claims, verify, and policies run identically in every mode.',
|
|
112
|
+
'A `block` policy pauses every mode, including #Auto.',
|
|
113
|
+
'A typed human escalation pauses every mode, including #Auto.',
|
|
114
|
+
'Every delivery closes with an index derived from the ledger; a later human score overrides it.',
|
|
115
|
+
'Every autonomous decision goes to the ledger with who decided, evidence, and rationale.',
|
|
116
|
+
],
|
|
117
|
+
variante: (v) => `Cycle variant: ${v}`,
|
|
118
|
+
pausaSobre: (s) => locale_thread_1.PAUSA_SOBRE_EN[s] ?? s,
|
|
119
|
+
pausa: (s) => `At the end of this block, PAUSE for a human verdict about: ${s}. Stop, present the evidence, and wait for the verdict.`,
|
|
120
|
+
semPausa: 'At the end of this block there is NO human pause: continue autonomously and record who decided, the evidence, and why in the ledger.',
|
|
121
|
+
raizDoProjeto: '(project root)',
|
|
122
|
+
regrasDeEvidencia: [
|
|
123
|
+
'No self-report: every claim includes the command that proves it and its real output.',
|
|
124
|
+
'Work only in the working directory shown above.',
|
|
125
|
+
'Irreversible steps (push, merge, deletion) happen only when the mode authorizes them.',
|
|
126
|
+
],
|
|
127
|
+
regraDasEsperas: 'Waiting: never start verify, build, or a test suite with `&` inside the command; the process may be lost while the session ' +
|
|
128
|
+
'waits for a notice that never comes. Run `ork verify` in the foreground with `timeout` (it waits for the heavy-resource queue), ' +
|
|
129
|
+
'or use the host background execution that reports completion. Never wait with `pgrep -f` when its pattern appears in the command itself; ' +
|
|
130
|
+
'the loop finds itself and never ends. Wait for an output file with a deadline, or for a stored PID.',
|
|
131
|
+
fechoDoGo: (t) => [
|
|
132
|
+
'## Mandatory GO closing',
|
|
133
|
+
'',
|
|
134
|
+
`Before ending a block that includes GO, run \`ork verify ${t}\` and the build declared in the manifest, both in the foreground.`,
|
|
135
|
+
`Generate the bundle with \`ork ci prepare ${t}\` and make the final atomic commit \`ci(${t}): bundle ...\`.`,
|
|
136
|
+
`Write a short \`.orkastery/threads/${t}/pr-body.md\` in the project language, naming the CHECK mode of the round (Agile Check or Classic Check, from the \`check\` line of \`ork verify\`); ` +
|
|
137
|
+
'if the profile cannot write it through the authorized transport, return the full body in the final summary.',
|
|
138
|
+
'The ritual is identical in Claude Code and Codex. It closes GO, but it does not authorize SHIP, push, PR, or merge.',
|
|
139
|
+
].join('\n'),
|
|
140
|
+
contextoDoGrafo: (thread) => '\n\n## Graph context (optional)\n' +
|
|
141
|
+
`Use ork_grafo_contexto {threadId: "${thread}"} or ork grafo contexto ${thread} --json for the thread package with evidence and a byte limit.\n` +
|
|
142
|
+
'The ork_grafo_vizinhos, ork_grafo_chamadores, ork_grafo_importadores, and ork_grafo_caminho tools allow deeper queries. ' +
|
|
143
|
+
'If HEAD has no index, run ork grafo indexar. The graph is partial and describes HEAD; an edge marked arvore: modificada comes from a source ' +
|
|
144
|
+
'that changed after HEAD, so inspect the file before using it.\n',
|
|
145
|
+
memoria: {
|
|
146
|
+
titulo: (regime) => `## Injected memory (${regime} regime)`,
|
|
147
|
+
explicacao: 'Deterministic retrieval by tag. Every item declares its source: nothing enters this prompt without provenance. ' +
|
|
148
|
+
'What is NOT here remains in the handoff pointers and can be retrieved with `ork recall`.',
|
|
149
|
+
decisaoFechada: (id, por) => `Decision ${id} (closed by ${por})`,
|
|
150
|
+
decisaoSemantica: (id) => `Decision ${id} (semantic memory)`,
|
|
151
|
+
decisaoSemId: 'Closed decision (semantic memory)',
|
|
152
|
+
licaoDaThread: (thread) => `Lesson from thread ${thread}`,
|
|
153
|
+
licoesDoProduto: 'Lessons from closed threads in this product (POSTMORTEM and MASTER)',
|
|
154
|
+
regraMandatoria: (titulo) => `Mandatory rule: ${titulo}`,
|
|
155
|
+
grupos: { decision: 'Closed decisions from this thread (included in EVERY phase)', learning: 'Lessons from previous product threads',
|
|
156
|
+
rule: 'Mandatory ecosystem rules', handoff: 'Previous handoffs', roadmap: 'Roadmap' },
|
|
157
|
+
mandatory: ' [MANDATORY]',
|
|
158
|
+
origem: (location) => `source: ${location}`,
|
|
159
|
+
},
|
|
160
|
+
secoesObrigatorias: ['## Canonical cycle', '## Conduction mode', '## Thread context', '## Builder request', '## Evidence rules'],
|
|
161
|
+
regraCentral: 'CENTRAL RULE: the mode relaxes the pause, NEVER verification.',
|
|
162
|
+
cli: {
|
|
163
|
+
variavelSemValor: (id, v) => `template ${id}: missing render value for variable: ${v}`,
|
|
164
|
+
frontmatterAusente: (o) => `template at ${o}: missing frontmatter (expected a --- ... --- block)`,
|
|
165
|
+
idAusente: 'frontmatter has no `id`', idDiverge: (id, e) => `id "${id}" does not match file name "${e}.md"`,
|
|
166
|
+
versaoInvalida: (v) => `invalid version "${v}": expected an integer starting at 1`, descricaoAusente: 'frontmatter has no `descricao`',
|
|
167
|
+
faseInvalida: (f, fs) => `"${f}" is not a canonical phase (${fs})`,
|
|
168
|
+
variaveisNaoDeclaradas: (v) => `used in the body but not declared: ${v}`, variaveisNaoUsadas: (v) => `declared but not used: ${v}`,
|
|
169
|
+
secaoAusente: (s) => `missing required section: ${s}`, regraCentralAusente: (r) => `template lost the line: ${r}`,
|
|
170
|
+
pedidoAusente: (v, c) => `template does not use {{${v}}}: it would dispatch a ${c} without the builder request`,
|
|
171
|
+
segredo: (n, l) => `pattern "${n}" matched template line ${l} (excerpt intentionally omitted)`,
|
|
172
|
+
tamanho: (b, l) => `${b} bytes exceeds the ${l}-byte limit`,
|
|
173
|
+
hitlTextoLivre: (l, _o) => `line ${l} asks for free-form text; conduction HITL is a selection of 3 to 5 choices with one Recommendation (RM-057)`,
|
|
174
|
+
travessao: 'template uses an em dash (U+2014); the project standard is a hyphen or comma',
|
|
175
|
+
templateNaoExiste: (id, ids) => `template "${id}" does not exist (known: ${ids})`,
|
|
176
|
+
templatePadraoAusente: 'missing `fase-padrao` template: `ork` has no phase prompt',
|
|
177
|
+
semParIngles: (id) => `the owner speaks English and the project template ${id} has no ${id}.en counterpart: that phase is rendered in pt-BR`,
|
|
178
|
+
gravidades: { erro: 'error', aviso: 'warning' }, semProblema: (n) => ` no problem in ${n} template(s)`,
|
|
179
|
+
resumoLint: (n, e, a) => `templates: ${n} | errors: ${e} | warnings: ${a}`,
|
|
180
|
+
tituloLista: 'Prompt templates (the project template overrides the built-in template with the same id)',
|
|
181
|
+
origem: (o) => `source: ${o === 'embutido' ? 'built-in' : o}`,
|
|
182
|
+
fases: (f) => `phases: ${f}`, todas: 'all', comoVersionar: 'To version yours, write prompts/<id>.md and run `ork prompt lint`.',
|
|
183
|
+
lintTitulo: (r) => `Prompt template lint${r ? ` (project ${r})` : ' (built-ins only)'}`, somenteEmbutidos: 'built-ins only',
|
|
184
|
+
pedidoExemplo: '<builder request>',
|
|
185
|
+
cabecalhoTemplate: (id, v, o) => `# template ${id} v${v} (source: ${o === 'embutido' ? 'built-in' : o})`,
|
|
186
|
+
cabecalhoExemplo: (m, s) => `# EXAMPLE thread (nothing was written), mode ${m}, sha256 ${s}`,
|
|
187
|
+
cabecalhoThread: (t, f, s) => `# thread ${t}, phase ${f}, sha256 ${s}`,
|
|
188
|
+
pedidoGuardado: (s) => `# request stored when the thread was created (sha256 ${s})`,
|
|
189
|
+
usoRenderThread: 'usage: ork prompt render <thread-id> <PHASE> --pedido "<text>"',
|
|
190
|
+
usoRenderExemplo: ' ork prompt render --exemplo --fase GOAL --modo auto --pedido "<text>"',
|
|
191
|
+
subcomandoDesconhecido: (s) => `unknown subcommand: prompt ${s}`,
|
|
192
|
+
faseForaDoCiclo: (f, fs) => `phase "${f}" is outside the canonical cycle (${fs})`,
|
|
193
|
+
},
|
|
194
|
+
};
|