@orkastery/cli 0.5.6 → 0.6.1

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 (396) hide show
  1. package/adapters/README.md +18 -0
  2. package/adapters/claude-code/.claude-plugin/plugin.json +1 -0
  3. package/adapters/claude-code/README.md +37 -5
  4. package/adapters/claude-code/agents/ork-check.md +1 -0
  5. package/adapters/claude-code/agents/ork-go.md +1 -0
  6. package/adapters/claude-code/agents/ork-goal.md +1 -0
  7. package/adapters/claude-code/agents/ork-master.md +1 -0
  8. package/adapters/claude-code/agents/ork-plan.md +1 -0
  9. package/adapters/claude-code/agents/ork-ship.md +1 -0
  10. package/adapters/claude-code/hooks/hooks.json +2 -1
  11. package/adapters/claude-code/hooks/ork-guard.js +15 -1
  12. package/adapters/claude-code/hooks/ork-resposta.js +91 -0
  13. package/adapters/claude-code/hooks/ork-sensor.js +18 -2
  14. package/adapters/claude-code/hooks/quota-signal.js +14 -0
  15. package/adapters/claude-code/mods/ork-mensageiro/.claude-plugin/plugin.json +14 -0
  16. package/adapters/claude-code/mods/ork-mensageiro/hooks/caixa.ts +215 -0
  17. package/adapters/claude-code/mods/ork-mensageiro/hooks/hooks.json +3 -0
  18. package/adapters/claude-code/mods/ork-mensageiro/hooks/painel.tsx +165 -0
  19. package/adapters/claude-code/mods/ork-mensageiro/hooks/recepcao.ts +256 -0
  20. package/adapters/claude-code/mods/ork-mensageiro/hooks/register.tsx +481 -0
  21. package/adapters/claude-code/mods/ork-mensageiro/orkastery-mod.json +5 -0
  22. package/adapters/claude-code/mods/ork-mensageiro/types/index.d.ts +85 -0
  23. package/adapters/claude-code/mods/ork-pista/hooks/ci.ts +9 -5
  24. package/adapters/claude-code/mods/ork-ritual/.claude-plugin/plugin.json +14 -0
  25. package/adapters/claude-code/mods/ork-ritual/hooks/hooks.json +3 -0
  26. package/adapters/claude-code/mods/ork-ritual/hooks/nota.ts +88 -0
  27. package/adapters/claude-code/mods/ork-ritual/hooks/register.tsx +494 -0
  28. package/adapters/claude-code/mods/ork-ritual/hooks/replay.tsx +271 -0
  29. package/adapters/claude-code/mods/ork-ritual/hooks/ritual.ts +218 -0
  30. package/adapters/claude-code/mods/ork-ritual/orkastery-mod.json +5 -0
  31. package/adapters/claude-code/mods/ork-ritual/types/index.d.ts +106 -0
  32. package/adapters/claude-code/mods/ork-sentinela/hooks/vigia.ts +1 -1
  33. package/adapters/codex/skills/ork/SKILL.md +2 -0
  34. package/adapters/hermes/README.md +64 -1
  35. package/adapters/hermes/bin/ork-conhecimento-colecoes.sh +14 -0
  36. package/adapters/hermes/bin/ork-conhecimento-listar.sh +15 -0
  37. package/adapters/hermes/bin/ork-conhecimento-mostrar.sh +16 -0
  38. package/adapters/hermes/bin/ork-conhecimento-verificar.sh +15 -0
  39. package/adapters/hermes/bin/ork-vigia-batida.py +127 -0
  40. package/adapters/hermes/hermes.plugin.json +4 -0
  41. package/adapters/hermes/hitl-ingress/__init__.py +101 -8
  42. package/adapters/hermes/skills/orkastery-devmaster/SKILL.md +2 -2
  43. package/adapters/openclaw/README.md +81 -9
  44. package/adapters/openclaw/bin/ork-vigia-batida.js +86 -0
  45. package/adapters/openclaw/dist/hitl-ingress.js +106 -9
  46. package/adapters/openclaw/dist/index.js +86 -0
  47. package/adapters/openclaw/openclaw.plugin.json +34 -4
  48. package/adapters/openclaw/package.json +2 -2
  49. package/adapters/openclaw/src/hitl-ingress.ts +103 -9
  50. package/adapters/openclaw/src/index.ts +94 -0
  51. package/assets/adapters-en/claude-code/README.md +403 -0
  52. package/assets/adapters-en/claude-code/agents/ork-check.md +33 -0
  53. package/assets/adapters-en/claude-code/agents/ork-go.md +33 -0
  54. package/assets/adapters-en/claude-code/agents/ork-goal.md +34 -0
  55. package/assets/adapters-en/claude-code/agents/ork-master.md +35 -0
  56. package/assets/adapters-en/claude-code/agents/ork-plan.md +33 -0
  57. package/assets/adapters-en/claude-code/agents/ork-ship.md +33 -0
  58. package/assets/adapters-en/claude-code/commands/check.md +46 -0
  59. package/assets/adapters-en/claude-code/commands/go.md +46 -0
  60. package/assets/adapters-en/claude-code/commands/goal.md +55 -0
  61. package/assets/adapters-en/claude-code/commands/master.md +54 -0
  62. package/assets/adapters-en/claude-code/commands/onboarding.md +22 -0
  63. package/assets/adapters-en/claude-code/commands/ork.md +126 -0
  64. package/assets/adapters-en/claude-code/commands/plan.md +47 -0
  65. package/assets/adapters-en/claude-code/commands/ship.md +45 -0
  66. package/assets/adapters-en/codex/skills/ork/SKILL.md +85 -0
  67. package/assets/adapters-en/hermes/README.md +273 -0
  68. package/assets/adapters-en/hermes/skills/orkastery-devmaster/SKILL.md +169 -0
  69. package/assets/references-en/README.md +25 -0
  70. package/assets/references-en/code-review-axes.md +82 -0
  71. package/assets/references-en/definition-of-done.md +74 -0
  72. package/assets/references-en/performance-checklist.md +53 -0
  73. package/assets/references-en/security-checklist.md +101 -0
  74. package/assets/references-en/testing-patterns.md +51 -0
  75. package/assets/security-scan/defaults/.golangci.yml +2 -0
  76. package/assets/security-scan/defaults/eslint.config.mjs +11 -0
  77. package/assets/security-scan/defaults/gitleaks.toml +3 -0
  78. package/assets/security-scan/defaults/ruff.toml +1 -0
  79. package/assets/security-scan/tools-agil.json +87 -0
  80. package/assets/security-scan/tools.json +625 -0
  81. package/assets/skills-en/core/onboarding/SKILL.md +58 -0
  82. package/assets/skills-en/core/orkastery-bootstrap/SKILL.md +119 -0
  83. package/assets/skills-en/core/thread-state/SKILL.md +88 -0
  84. package/assets/skills-en/governance/decision-triage/SKILL.md +65 -0
  85. package/assets/skills-en/governance/narrative-guardian/SKILL.md +66 -0
  86. package/assets/skills-en/governance/roadmap-keeper/SKILL.md +60 -0
  87. package/assets/skills-en/governance/scope-check-capability-map/SKILL.md +71 -0
  88. package/assets/skills-en/observability/thread-tracing/SKILL.md +63 -0
  89. package/assets/skills-en/phases/check-quality/SKILL.md +103 -0
  90. package/assets/skills-en/phases/go-implementation/SKILL.md +78 -0
  91. package/assets/skills-en/phases/goal-definition/SKILL.md +69 -0
  92. package/assets/skills-en/phases/master-metrics/SKILL.md +72 -0
  93. package/assets/skills-en/phases/plan-specification/SKILL.md +67 -0
  94. package/assets/skills-en/phases/security-remediation/SKILL.md +70 -0
  95. package/assets/skills-en/phases/ship-release/SKILL.md +71 -0
  96. package/assets/skills-en/reviewers/code-reviewer/SKILL.md +61 -0
  97. package/assets/skills-en/reviewers/security-auditor/SKILL.md +93 -0
  98. package/assets/skills-en/reviewers/test-engineer/SKILL.md +66 -0
  99. package/assets/skills-en/reviewers/web-performance-auditor/SKILL.md +63 -0
  100. package/dist/adapters/claude-bg.js +123 -9
  101. package/dist/adapters/codex-controller-worker.js +12 -5
  102. package/dist/adapters/codex-events.js +16 -4
  103. package/dist/adapters/codex.js +3 -1
  104. package/dist/adapters/grok-events.js +227 -0
  105. package/dist/adapters/grok-mcp-servidor.js +612 -0
  106. package/dist/adapters/grok-mcp.js +178 -0
  107. package/dist/adapters/grok.js +686 -0
  108. package/dist/agendador-cpu.js +92 -0
  109. package/dist/atualizar-branch.js +245 -0
  110. package/dist/auditoria.js +13 -11
  111. package/dist/auditrun.js +51 -46
  112. package/dist/autorizacao-duravel.js +327 -0
  113. package/dist/board.js +94 -40
  114. package/dist/branch-de-estado.js +23 -10
  115. package/dist/busca-semantica.js +7 -5
  116. package/dist/catalogo.js +2 -1
  117. package/dist/changelog-reconciliacao.js +290 -0
  118. package/dist/check-agil.js +528 -0
  119. package/dist/check-modo.js +41 -0
  120. package/dist/check-paralelo.js +238 -0
  121. package/dist/ci.js +248 -45
  122. package/dist/ciclos.js +8 -6
  123. package/dist/claim-lint.js +12 -8
  124. package/dist/claims-conferir.js +47 -39
  125. package/dist/claims.js +10 -9
  126. package/dist/company-brain-client.js +10 -3
  127. package/dist/company-brain-migration.js +11 -5
  128. package/dist/conducao-batida.js +759 -0
  129. package/dist/conducao-sentinela.js +25 -8
  130. package/dist/conducao.js +89 -29
  131. package/dist/conhecimento-consulta.js +270 -0
  132. package/dist/conhecimento.js +111 -87
  133. package/dist/conta-esgotada.js +127 -0
  134. package/dist/dado-privado.js +816 -0
  135. package/dist/decisao-autonoma.js +5 -4
  136. package/dist/demo.js +14 -12
  137. package/dist/dependencias-da-worktree.js +25 -0
  138. package/dist/divida.js +38 -36
  139. package/dist/docs.js +89 -89
  140. package/dist/doctor-forja.js +343 -0
  141. package/dist/doctor-pulse-cron.js +113 -1
  142. package/dist/doctor.js +164 -6
  143. package/dist/dsn-da-memoria.js +417 -0
  144. package/dist/entrega-por-mod.js +503 -0
  145. package/dist/entrega-pr.js +154 -54
  146. package/dist/esgotamentos.js +13 -11
  147. package/dist/estado-thread.js +21 -18
  148. package/dist/evalrunner.js +35 -32
  149. package/dist/fabrica-batida.js +34 -21
  150. package/dist/fabrica-estado.js +33 -21
  151. package/dist/fix.js +21 -19
  152. package/dist/forja/adaptador.js +6 -0
  153. package/dist/forja/ambiente-de-ci.js +27 -0
  154. package/dist/forja/api.js +256 -0
  155. package/dist/forja/cache.js +89 -0
  156. package/dist/forja/cli.js +60 -0
  157. package/dist/forja/contrato.js +9 -0
  158. package/dist/forja/endereco.js +43 -0
  159. package/dist/forja/estado.js +22 -0
  160. package/dist/forja/executor.js +73 -0
  161. package/dist/forja/github/ci.js +95 -0
  162. package/dist/forja/github/dono-da-rede.js +18 -0
  163. package/dist/forja/github/metadados.js +15 -0
  164. package/dist/forja/github/pedidos.js +200 -0
  165. package/dist/forja/gitlab/ci.js +141 -0
  166. package/dist/forja/gitlab/consultas.js +59 -0
  167. package/dist/forja/gitlab/dono-da-rede.js +43 -0
  168. package/dist/forja/gitlab/metadados.js +15 -0
  169. package/dist/forja/gitlab/pedidos-abertos.js +158 -0
  170. package/dist/forja/gitlab/pedidos.js +141 -0
  171. package/dist/forja/produtor.js +32 -0
  172. package/dist/forja/registro.js +31 -0
  173. package/dist/forja/resolver.js +121 -0
  174. package/dist/forja/texto.js +13 -0
  175. package/dist/forja/versao.js +71 -0
  176. package/dist/forja.js +123 -80
  177. package/dist/handoff.js +23 -13
  178. package/dist/hitl-contract.js +46 -43
  179. package/dist/hitl-curto.js +37 -25
  180. package/dist/hitl-gates.js +13 -11
  181. package/dist/hitl-local-receipt.js +51 -0
  182. package/dist/hitl-local.js +11 -2
  183. package/dist/hitl-lock.js +5 -11
  184. package/dist/hitl-public-receipt.js +11 -0
  185. package/dist/hitl-resumo.js +44 -1
  186. package/dist/hitl-sessions.js +62 -9
  187. package/dist/hitl-texto-livre.js +7 -4
  188. package/dist/hitl.js +34 -31
  189. package/dist/horario.js +20 -1
  190. package/dist/hosts.js +104 -134
  191. package/dist/index.js +864 -554
  192. package/dist/indice-vetorial.js +14 -12
  193. package/dist/init.js +11 -2
  194. package/dist/integracoes-locais.js +4 -0
  195. package/dist/intelligence-graph-cli.js +123 -69
  196. package/dist/intelligence-graph-query.js +37 -22
  197. package/dist/leases.js +19 -18
  198. package/dist/ledger-stats.js +17 -16
  199. package/dist/ledger.js +31 -1
  200. package/dist/licoes.js +12 -11
  201. package/dist/locale-accounts.js +228 -0
  202. package/dist/locale-adapter.js +291 -0
  203. package/dist/locale-ajuda.js +86 -10
  204. package/dist/locale-audit.js +199 -0
  205. package/dist/locale-claims.js +213 -0
  206. package/dist/locale-conducao.js +138 -0
  207. package/dist/locale-conhecimento.js +181 -0
  208. package/dist/locale-decisao.js +205 -0
  209. package/dist/locale-docs.js +230 -0
  210. package/dist/locale-estado.js +101 -0
  211. package/dist/locale-forja.js +288 -0
  212. package/dist/locale-gerados.js +5 -0
  213. package/dist/locale-grafo.js +129 -0
  214. package/dist/locale-master.js +83 -0
  215. package/dist/locale-network.js +524 -0
  216. package/dist/locale-operacao-restante.js +931 -0
  217. package/dist/locale-projetos.js +100 -0
  218. package/dist/locale-prompts.js +194 -0
  219. package/dist/locale-pulse.js +140 -2
  220. package/dist/locale-reservas.js +87 -0
  221. package/dist/locale-retry.js +183 -6
  222. package/dist/locale-security-scan.js +69 -0
  223. package/dist/locale-setup.js +192 -0
  224. package/dist/locale-ship.js +177 -66
  225. package/dist/locale-thread.js +149 -5
  226. package/dist/locale-verify.js +80 -4
  227. package/dist/locale-worktree.js +246 -0
  228. package/dist/locale.js +553 -9
  229. package/dist/maestro-runtime.js +22 -3
  230. package/dist/manifest.js +293 -12
  231. package/dist/maquina-ociosa.js +211 -0
  232. package/dist/maquina.js +10 -5
  233. package/dist/master-nota-local.js +200 -0
  234. package/dist/master-nota.js +10 -2
  235. package/dist/master.js +118 -41
  236. package/dist/mcp-conhecimento.js +52 -0
  237. package/dist/mcp-experiencia.js +26 -5
  238. package/dist/mcp-install.js +90 -15
  239. package/dist/mcp-noctum.js +101 -0
  240. package/dist/mcp-server.js +116 -22
  241. package/dist/mcp-ship-transporte.js +977 -0
  242. package/dist/mcp-ship.js +68 -24
  243. package/dist/mcp-transportes.js +17 -0
  244. package/dist/memoria.js +63 -58
  245. package/dist/merge-da-entrega.js +85 -0
  246. package/dist/modos-migracao.js +8 -6
  247. package/dist/modos.js +17 -18
  248. package/dist/network-roadmap.js +94 -54
  249. package/dist/noctum-aceite.js +929 -0
  250. package/dist/noctum-arco.js +540 -33
  251. package/dist/noctum-capacidade.js +3 -3
  252. package/dist/noctum-changelog.js +399 -0
  253. package/dist/noctum-cli.js +539 -0
  254. package/dist/noctum-coordenacao.js +1225 -0
  255. package/dist/noctum-entrega.js +1217 -0
  256. package/dist/noctum-envelope.js +253 -17
  257. package/dist/noctum-execucao.js +100 -24
  258. package/dist/noctum-fechamento.js +416 -0
  259. package/dist/noctum-fila.js +49 -10
  260. package/dist/noctum-guarda.js +333 -0
  261. package/dist/noctum-integracao.js +507 -0
  262. package/dist/noctum-maquinas.js +387 -0
  263. package/dist/noctum-medicao.js +450 -0
  264. package/dist/noctum-modo.js +390 -0
  265. package/dist/noctum-pergunta-canal.js +96 -0
  266. package/dist/noctum-pergunta.js +115 -0
  267. package/dist/noctum-provas.js +838 -0
  268. package/dist/noctum-reconciliacao.js +594 -0
  269. package/dist/noctum-rede.js +102 -0
  270. package/dist/noctum-registro.js +215 -0
  271. package/dist/noctum-relatorio.js +861 -0
  272. package/dist/noctum-resposta.js +207 -0
  273. package/dist/noctum-retomada-rede.js +71 -0
  274. package/dist/noctum-sessoes-em-voo.js +93 -0
  275. package/dist/noctum-supervisao.js +649 -0
  276. package/dist/noctum-terminal.js +459 -0
  277. package/dist/noctum-transporte.js +655 -0
  278. package/dist/noctum-vigia.js +679 -0
  279. package/dist/ocupacao.js +3 -1
  280. package/dist/onboarding.js +16 -5
  281. package/dist/orkmind.js +39 -23
  282. package/dist/orquestracao.js +31 -35
  283. package/dist/parado-no-condutor.js +160 -139
  284. package/dist/phase.js +96 -42
  285. package/dist/policies.js +33 -0
  286. package/dist/postura-local.js +11 -6
  287. package/dist/preflight.js +2 -1
  288. package/dist/procedencia.js +9 -14
  289. package/dist/projeto-alvo.js +59 -20
  290. package/dist/prompts.js +136 -42
  291. package/dist/prova-minima.js +5 -6
  292. package/dist/pulse-cadencia.js +5 -4
  293. package/dist/pulse-consentimento.js +53 -1
  294. package/dist/pulse-delivery.js +143 -27
  295. package/dist/pulse-resposta.js +368 -4
  296. package/dist/pulse.js +136 -3
  297. package/dist/ratelimit.js +13 -4
  298. package/dist/recall.js +14 -13
  299. package/dist/rede-adesao.js +13 -8
  300. package/dist/rede-forja.js +108 -24
  301. package/dist/rede-status.js +63 -45
  302. package/dist/rede.js +86 -46
  303. package/dist/retomada-checkpoint.js +101 -0
  304. package/dist/retry.js +326 -78
  305. package/dist/roadmap-reservas.js +32 -32
  306. package/dist/runtime-ambiente.js +5 -0
  307. package/dist/runtime-context.js +279 -85
  308. package/dist/runtime-escada.js +429 -0
  309. package/dist/runtime-profiles.js +130 -63
  310. package/dist/runtimes.js +42 -5
  311. package/dist/saida-segura.js +3 -2
  312. package/dist/security-scan/agil.js +366 -0
  313. package/dist/security-scan/cli.js +76 -0
  314. package/dist/security-scan/compare.js +149 -0
  315. package/dist/security-scan/config.js +93 -0
  316. package/dist/security-scan/detect.js +97 -0
  317. package/dist/security-scan/executor.js +196 -0
  318. package/dist/security-scan/guard.js +180 -0
  319. package/dist/security-scan/imagem-de-lint.js +96 -0
  320. package/dist/security-scan/normalize/actionlint.js +12 -0
  321. package/dist/security-scan/normalize/eslint.js +12 -0
  322. package/dist/security-scan/normalize/gitleaks.js +13 -0
  323. package/dist/security-scan/normalize/golangci-lint.js +13 -0
  324. package/dist/security-scan/normalize/govulncheck.js +36 -0
  325. package/dist/security-scan/normalize/index.js +25 -0
  326. package/dist/security-scan/normalize/npm-audit.js +30 -0
  327. package/dist/security-scan/normalize/osv-scanner.js +32 -0
  328. package/dist/security-scan/normalize/oxlint.js +51 -0
  329. package/dist/security-scan/normalize/pip-audit.js +16 -0
  330. package/dist/security-scan/normalize/ruff.js +12 -0
  331. package/dist/security-scan/normalize/semgrep.js +20 -0
  332. package/dist/security-scan/normalize/trivy.js +33 -0
  333. package/dist/security-scan/normalize/util.js +204 -0
  334. package/dist/security-scan/normalize/zizmor.js +19 -0
  335. package/dist/security-scan/report.js +156 -0
  336. package/dist/security-scan/run.js +448 -0
  337. package/dist/security-scan/tools.js +62 -0
  338. package/dist/security-scan/trabalhador.js +74 -0
  339. package/dist/security-scan/types.js +15 -0
  340. package/dist/session-events.js +19 -2
  341. package/dist/session-watcher-claude.js +74 -19
  342. package/dist/session-watcher-grok.js +425 -0
  343. package/dist/session-watcher.js +174 -13
  344. package/dist/sessoes-contas.js +42 -5
  345. package/dist/sessoes-inventario.js +1 -1
  346. package/dist/sessoes.js +25 -23
  347. package/dist/setup.js +67 -66
  348. package/dist/ship-publicar.js +263 -92
  349. package/dist/ship.js +160 -17
  350. package/dist/superficie.js +14 -11
  351. package/dist/thread-close.js +9 -9
  352. package/dist/thread.js +121 -18
  353. package/dist/tokens.js +15 -11
  354. package/dist/trabalho-thread.js +297 -0
  355. package/dist/transporte-do-canal.js +189 -0
  356. package/dist/types.js +12 -1
  357. package/dist/util.js +5 -2
  358. package/dist/varredura-acoes.js +500 -0
  359. package/dist/verify.js +491 -32
  360. package/dist/worktree-local.js +12 -10
  361. package/dist/worktree.js +81 -85
  362. package/eval/casos/check-quality.json +77 -0
  363. package/eval/casos/security-auditor.json +148 -0
  364. package/eval/casos/security-remediation.json +161 -0
  365. package/eval/fixtures/security-scan/README.md +8 -0
  366. package/eval/fixtures/security-scan/go/.github/workflows/ci.yml +12 -0
  367. package/eval/fixtures/security-scan/go/Dockerfile +4 -0
  368. package/eval/fixtures/security-scan/go/README.md +4 -0
  369. package/eval/fixtures/security-scan/go/config.go +4 -0
  370. package/eval/fixtures/security-scan/go/go.mod +5 -0
  371. package/eval/fixtures/security-scan/go/go.sum +2 -0
  372. package/eval/fixtures/security-scan/go/main.go +31 -0
  373. package/eval/fixtures/security-scan/js/.github/workflows/ci.yml +12 -0
  374. package/eval/fixtures/security-scan/js/Dockerfile +3 -0
  375. package/eval/fixtures/security-scan/js/README.md +4 -0
  376. package/eval/fixtures/security-scan/js/package-lock.json +844 -0
  377. package/eval/fixtures/security-scan/js/package.json +10 -0
  378. package/eval/fixtures/security-scan/js/src/config.js +4 -0
  379. package/eval/fixtures/security-scan/js/src/server.js +17 -0
  380. package/eval/fixtures/security-scan/js/src/util.ts +4 -0
  381. package/eval/fixtures/security-scan/js/tsconfig.json +4 -0
  382. package/eval/fixtures/security-scan/python/.github/workflows/ci.yml +12 -0
  383. package/eval/fixtures/security-scan/python/Dockerfile +3 -0
  384. package/eval/fixtures/security-scan/python/README.md +4 -0
  385. package/eval/fixtures/security-scan/python/app/__init__.py +0 -0
  386. package/eval/fixtures/security-scan/python/app/config.py +2 -0
  387. package/eval/fixtures/security-scan/python/app/main.py +19 -0
  388. package/eval/fixtures/security-scan/python/requirements.txt +1 -0
  389. package/package.json +10 -5
  390. package/references/security-checklist.md +3 -3
  391. package/skills/README.md +1 -0
  392. package/skills/core/orkastery-bootstrap/SKILL.md +2 -2
  393. package/skills/phases/check-quality/SKILL.md +16 -0
  394. package/skills/phases/go-implementation/SKILL.md +6 -0
  395. package/skills/phases/security-remediation/SKILL.md +70 -0
  396. package/skills/reviewers/security-auditor/SKILL.md +25 -0
@@ -0,0 +1,291 @@
1
+ "use strict";
2
+ /**
3
+ * RM-061, fatia F3b: a familia `adapter` do catalogo de mensagens (`ork adapter list|show|install`): a tabela dos hosts,
4
+ * a descricao e os pitfalls de cada um, o texto da instalacao, os avisos do pacote de experiencia e as recusas. O pt-BR
5
+ * e a fonte (o `HOSTS` de `hosts.ts` le a descricao e os pitfalls daqui); o ingles e tipado por ele. Sem import do nucleo.
6
+ *
7
+ * O host, o caminho, o comando de ativacao, o motivo da divergencia (`catalogo-andou`) e o recibo `INSTALADO.json` sao
8
+ * dado e saem iguais nas duas linguas. A prova de cada pitfall e um comando: so o comentario depois do `#` muda.
9
+ */
10
+ Object.defineProperty(exports, "__esModule", { value: true });
11
+ exports.ADAPTER_EN = exports.ADAPTER_PT_BR = void 0;
12
+ const HOSTS_PT_BR = {
13
+ 'claude-code': {
14
+ descricao: 'Plugin com as skills do catalogo, subagentes de fase, entrada /orkastery:ork e hooks do Orkastery',
15
+ pitfalls: [
16
+ {
17
+ titulo: 'manifesto sem os caminhos das skills instala limpo e nao expoe nada',
18
+ detalhe: 'o plugin auto-descobre skills/<nome>/SKILL.md e para ai: ele nao desce nos buckets (core/, phases/, reviewers/, ...) que este catalogo usa, entao o plugin.json declara cada caminho de skill, um a um',
19
+ prova: 'claude plugin details orkastery # Skills (N) soma as skills do plugin.json e os comandos de commands/',
20
+ },
21
+ {
22
+ titulo: 'duas copias do catalogo divergem',
23
+ detalhe: 'a fonte unica e skills/ na raiz do produto; o INSTALADO.json guarda a origem e o sha256 de cada arquivo, e reinstalar CLASSIFICA cada divergencia por ele: o que so mudou no catalogo ressincroniza sozinho, o que voce editou barra e pede decisao por arquivo (--aceitar-catalogo ou --manter-copia). Editar a copia instalada e bandeira vermelha',
24
+ prova: 'ork adapter install claude-code --dry-run # mostra o que divergiu do catalogo',
25
+ },
26
+ {
27
+ titulo: 'hook com caminho relativo nao roda, e o guard vira decoracao',
28
+ detalhe: 'o hooks.json chama node "${CLAUDE_PLUGIN_ROOT}/hooks/ork-guard.js", nunca um caminho relativo ao diretorio de trabalho, que muda a cada worktree de thread',
29
+ prova: `echo '{"tool_name":"Bash","tool_input":{"command":"git add -A"}}' | node <destino>/hooks/ork-guard.js ; echo "codigo: $?" # 2 = guard vivo`,
30
+ },
31
+ ],
32
+ },
33
+ codex: {
34
+ descricao: 'Entrada $ork e catalogo de conducao em skills locais do projeto, sem configuracao global',
35
+ pitfalls: [
36
+ {
37
+ titulo: 'skills instaladas fora do projeto da sessao',
38
+ detalhe: 'Codex descobre .agents/skills a partir do diretorio da sessao ate a raiz do repositorio; outra worktree precisa da sua propria instalacao e comprovacao de descoberta',
39
+ prova: 'No Codex aberto no projeto instalado: $ork',
40
+ },
41
+ {
42
+ titulo: 'copia instalada diferente do catalogo',
43
+ detalhe: 'o recibo INSTALADO.json registra os arquivos e hashes dentro da pasta propria orkastery; uma edicao divergente barra a reinstalacao sem substituir arquivos de outras skills',
44
+ prova: 'ork adapter install codex --dry-run',
45
+ },
46
+ {
47
+ titulo: 'skill confundida com autorizacao de runtime',
48
+ detalhe: 'instalar instrucoes nao habilita permissoes, hooks ou sandbox; em projeto configurado, AGENTS.md recebe apenas o bloco reversível da experiência. Gates e preflight continuam no nucleo, e descoberta nao prova a jornada conversacional',
49
+ prova: 'ork doctor',
50
+ },
51
+ ],
52
+ },
53
+ hermes: {
54
+ descricao: 'Skill roteadora fina, plugin que a declara e script de abertura de thread',
55
+ pitfalls: [
56
+ {
57
+ titulo: 'ork fora do PATH do host',
58
+ detalhe: 'o host roda com ambiente mais enxuto que o terminal do builder e ~/.local/bin pode nao estar la; o plugin grava o caminho absoluto e o script honra ORK_BIN',
59
+ prova: 'ORK_BIN=$(command -v ork) ; "$ORK_BIN" doctor',
60
+ },
61
+ {
62
+ titulo: 'reimplementar o parse da #TAG no host',
63
+ detalhe: 'duas implementacoes divergem na primeira tag nova, e a divergencia aparece como thread aberta no modo errado, o que ninguem percebe ate a pausa que nao veio',
64
+ prova: 'ork modos --do-pedido "teste #Maestro" # a unica fonte do modo',
65
+ },
66
+ {
67
+ titulo: 'validar allowed_modes no host',
68
+ detalhe: 'um host que recusa o modo antes de chamar o ork recusa com a regra que ele tem em cache, nao com a do manifesto do projeto; deixe o ork thread new recusar, com erro tipado',
69
+ prova: 'ork thread new "teste" --mode look --dry-run',
70
+ },
71
+ ],
72
+ },
73
+ openclaw: {
74
+ descricao: 'extensao do OpenClaw 2026.7.1 (package.json + dist/index.js) com as tools ork_*, cada uma uma chamada de CLI',
75
+ pitfalls: [
76
+ {
77
+ titulo: 'placeholder {{ork_bin}} que fica no arquivo',
78
+ detalhe: 'o entry executa o binario como ele esta: um placeholder nao renderizado cai no fallback (ORK_BIN ou o ork do PATH), e sem o fallback vira "comando nao encontrado" em toda tool, que a sessao so descobre depois de ja ter aberto thread na cabeca do agente',
79
+ prova: 'grep -c "{{" <destino>/extensions/orkastery/dist/index.js # precisa devolver 0',
80
+ },
81
+ {
82
+ titulo: 'argumento com espaco quebrado em varios argumentos',
83
+ detalhe: 'cada tool monta o comando como VETOR de argv, nunca como string de shell, para o pedido do builder chegar inteiro em --prompt; string de shell aqui vira injecao de comando com o texto do builder dentro',
84
+ prova: 'ork_phase_run com um prompt de varias linhas, conferido em ork phase list <thread>',
85
+ },
86
+ {
87
+ titulo: 'tool que reimplementa regra do nucleo',
88
+ detalhe: 'toda tool deste plugin e uma chamada de CLI e nada mais; tool nova que precisa de logica e sinal de que a logica pertence ao ork, com teste',
89
+ prova: 'ork eval # o corpus reprova host com regra de negocio duplicada',
90
+ },
91
+ ],
92
+ },
93
+ };
94
+ const HOSTS_EN = {
95
+ 'claude-code': {
96
+ descricao: 'Plugin with the catalog skills, phase subagents, the /orkastery:ork entry and the Orkastery hooks',
97
+ pitfalls: [
98
+ {
99
+ titulo: 'a manifest without the skill paths installs cleanly and exposes nothing',
100
+ detalhe: 'the plugin auto-discovers `skills/<name>/SKILL.md` and stops there: it does not go down into the buckets (`core/`, `phases/`, `reviewers/`, ...) this catalog uses, so `plugin.json` declares each skill path, one by one',
101
+ prova: 'claude plugin details orkastery # Skills (N) adds up the skills in plugin.json and the commands in commands/',
102
+ },
103
+ {
104
+ titulo: 'two copies of the catalog drift apart',
105
+ detalhe: 'the single source is `skills/` at the product root; `INSTALADO.json` keeps the origin and the sha256 of each file, and a reinstall CLASSIFIES each divergence by it: what only changed in the catalog resyncs by itself, what you edited blocks the install and asks for a decision per file (`--aceitar-catalogo` or `--manter-copia`). Editing the installed copy is a red flag',
106
+ prova: 'ork adapter install claude-code --dry-run # shows what drifted from the catalog',
107
+ },
108
+ {
109
+ titulo: 'a hook with a relative path does not run, and the guard becomes decoration',
110
+ detalhe: '`hooks.json` calls `node "${CLAUDE_PLUGIN_ROOT}/hooks/ork-guard.js"`, never a path relative to the working directory, which changes with each thread worktree',
111
+ prova: `echo '{"tool_name":"Bash","tool_input":{"command":"git add -A"}}' | node <target>/hooks/ork-guard.js ; echo "code: $?" # 2 = guard alive`,
112
+ },
113
+ ],
114
+ },
115
+ codex: {
116
+ descricao: 'The $ork entry and the conduction catalog as project-local skills, with no global configuration',
117
+ pitfalls: [
118
+ {
119
+ titulo: 'skills installed outside the session project',
120
+ detalhe: 'Codex discovers `.agents/skills` from the session directory up to the repository root; another worktree needs its own install and its own proof of discovery',
121
+ prova: 'In Codex opened on the installed project: $ork',
122
+ },
123
+ {
124
+ titulo: 'installed copy differs from the catalog',
125
+ detalhe: 'the `INSTALADO.json` receipt records the files and hashes inside its own `orkastery` folder; a divergent edit blocks the reinstall without replacing files of other skills',
126
+ prova: 'ork adapter install codex --dry-run',
127
+ },
128
+ {
129
+ titulo: 'a skill mistaken for runtime authorization',
130
+ detalhe: 'installing instructions does not enable permissions, hooks or a sandbox; in a configured project, `AGENTS.md` only gets the reversible experience block. Gates and preflight stay in the core, and discovery does not prove the conversational journey',
131
+ prova: 'ork doctor',
132
+ },
133
+ ],
134
+ },
135
+ hermes: {
136
+ descricao: 'A thin router skill, the plugin that declares it and the thread opening script',
137
+ pitfalls: [
138
+ {
139
+ titulo: 'ork outside the host PATH',
140
+ detalhe: 'the host runs with a leaner environment than the builder terminal, and `~/.local/bin` may not be there; the plugin writes the absolute path and the script honors `ORK_BIN`',
141
+ prova: 'ORK_BIN=$(command -v ork) ; "$ORK_BIN" doctor',
142
+ },
143
+ {
144
+ titulo: 'reimplementing the #TAG parse in the host',
145
+ detalhe: 'two implementations drift apart on the first new tag, and the drift shows up as a thread opened in the wrong mode, which nobody notices until the pause that never came',
146
+ prova: 'ork modos --do-pedido "test #Maestro" # the only source of the mode',
147
+ },
148
+ {
149
+ titulo: 'validating allowed_modes in the host',
150
+ detalhe: 'a host that refuses the mode before calling ork refuses with the rule it has cached, not the one in the project manifest; let `ork thread new` refuse, with a typed error',
151
+ prova: 'ork thread new "test" --mode look --dry-run',
152
+ },
153
+ ],
154
+ },
155
+ openclaw: {
156
+ descricao: 'OpenClaw 2026.7.1 extension (package.json + dist/index.js) with the ork_* tools, each one a CLI call',
157
+ pitfalls: [
158
+ {
159
+ titulo: 'a {{ork_bin}} placeholder left in the file',
160
+ detalhe: 'the entry runs the binary as it is: an unrendered placeholder falls back (`ORK_BIN` or the ork in PATH), and without the fallback it becomes "command not found" in every tool, which the session only finds out after the agent already believes the thread is open',
161
+ prova: 'grep -c "{{" <target>/extensions/orkastery/dist/index.js # must return 0',
162
+ },
163
+ {
164
+ titulo: 'an argument with spaces split into several arguments',
165
+ detalhe: 'each tool builds the command as an argv VECTOR, never as a shell string, so the builder request reaches `--prompt` whole; a shell string here becomes command injection with the builder text inside',
166
+ prova: 'ork_phase_run with a multi-line prompt, checked in ork phase list <thread>',
167
+ },
168
+ {
169
+ titulo: 'a tool that reimplements a core rule',
170
+ detalhe: 'every tool in this plugin is a CLI call and nothing more; a new tool that needs logic is a sign that the logic belongs in ork, with a test',
171
+ prova: 'ork eval # the corpus fails a host with a duplicated business rule',
172
+ },
173
+ ],
174
+ },
175
+ };
176
+ exports.ADAPTER_PT_BR = {
177
+ hosts: HOSTS_PT_BR,
178
+ // ork adapter list
179
+ titulo: 'Adaptadores de host (Camada 1, o podio)',
180
+ destinoPadrao: (destino) => `destino padrao: <projeto>/${destino}`,
181
+ catalogoJunto: (leva) => `catalogo de skills junto: ${leva ? 'sim' : 'nao'}`,
182
+ instaleCom: 'Instale com: ork adapter install <host> [--dir DIR] [--dry-run] [--force]',
183
+ zeroRegra: 'Zero regra de negocio no host: a #TAG vira `--mode` e a validacao e do nucleo.',
184
+ // ork adapter show e os erros de uso
185
+ adaptador: (host) => `Adaptador ${host}`,
186
+ hostDesconhecido: (bruto, hosts) => `host desconhecido: "${bruto}". Use: ${hosts}`,
187
+ subcomandoDesconhecido: (sub) => `subcomando desconhecido: adapter ${sub}`,
188
+ tituloDosPitfalls: (host) => `Os 3 pitfalls de instalacao do ${host} (confira, nao suponha):`,
189
+ prova: (prova) => `prova: ${prova}`,
190
+ // ork adapter install
191
+ experiencia: (estado, skill) => `Experiência: ${{ ativa: 'ativação preparada',
192
+ pulada: 'pacote pulado nesta instalação, veja o aviso abaixo', desativada: 'desativada ou sem integração de skills' }[estado]}` +
193
+ `${skill ? ` (${skill})` : ''}.`,
194
+ aviso: (aviso) => `Aviso: ${aviso}`,
195
+ simulacao: (host) => `Simulacao (--dry-run) da instalacao do adaptador ${host}: nada foi escrito.`,
196
+ preparados: (host) => `Arquivos do adaptador ${host} preparados.`,
197
+ barrada: (host) => `Instalacao do adaptador ${host} BARRADA: ha arquivo diferente no destino.`,
198
+ claudeNaoVerificado: 'Uso no Claude Code ainda nao verificado por esta copia.',
199
+ claudeValide: 'No diretorio deste projeto, valide e ative o plugin:',
200
+ claudeDepois: 'Depois, na sessao deste projeto: /orkastery:ork',
201
+ codexAbra: 'Abra o Codex neste projeto e use $ork.',
202
+ codexNaoVerificado: 'Descoberta e uso nativo ainda nao verificados por esta copia.',
203
+ prepareMcp: (projeto, host) => `Prepare tambem as ferramentas do projeto: ork mcp install --project ${projeto} --host ${host}`,
204
+ consentimento: 'A configuracao MCP exige descoberta e consentimento no cliente; a copia nao concede aprovacoes.',
205
+ catalogo: (catalogo) => ` catalogo: ${catalogo}`,
206
+ destino: (destino) => ` destino: ${destino}`,
207
+ ork: (ork) => ` ork: ${ork}`,
208
+ avisoOrk: (aviso) => ` Aviso: ${aviso}`,
209
+ arquivos: (total, novos, iguais, divergentes) => ` arquivos: ${total} (${novos} novo(s), ${iguais} ja identico(s), ${divergentes} divergente(s))`,
210
+ removido: (relativo, simulacao) => ` - ${relativo} (saiu do catalogo${simulacao ? ', seria removido' : ', removido'})`,
211
+ reciboVizinho: (destino, vizinho) => [` ATENCAO: nao ha recibo em ${destino}, mas ha um em`, ` ${vizinho}`,
212
+ ' `--dir` e o destino COMPLETO, nao a raiz do projeto. Do jeito que esta, esta',
213
+ ' instalacao criaria uma copia nova ao lado da que ja existe, e a que existe', ' ficaria sem conferencia nenhuma.'],
214
+ catalogoAndou: (n) => [` ${n} divergente(s) sao "catalogo-andou": a copia esta como foi instalada`,
215
+ ' e quem mudou foi o catalogo. Sobrescrever nao perde trabalho de ninguem.'],
216
+ precisamDeDecisao: (n) => ` ${n} arquivo(s) precisam de uma decisao sua:`,
217
+ resolva: ' Resolva em UM comando, por arquivo:',
218
+ proximoPassoClaude: 'Proximo passo, no diretorio deste projeto (o mesmo do comeco):',
219
+ proximoPasso: 'Proximo passo (o mesmo do comeco):',
220
+ // Os avisos do pacote de experiencia e do ork do PATH (`instalarAdaptador`)
221
+ segue: 'O restante da instalação do adaptador segue normalmente.',
222
+ puladoManifesto: (erro, segue) => `Pacote de experiência pulado: o manifesto tem erros (${erro}). ${segue}`,
223
+ puladoInvalida: (aviso, segue) => `Pacote de experiência pulado: ${aviso}. ${segue}`,
224
+ puladoSemSkill: (skill, segue) => `Pacote de experiência pulado: a skill ${skill} não está no catálogo. ${segue}`,
225
+ puladoForaDoProjeto: (segue) => `Pacote de experiência pulado: o adaptador fica fora do projeto e o bloco de instruções só aponta caminhos do projeto. ${segue}`,
226
+ puladoCaminho: (segue) => `Pacote de experiência pulado: o caminho das skills contém quebra de linha ou crase, incompatível com o bloco de instruções. ${segue}`,
227
+ puladoBloco: (link, host, segue) => `Pacote de experiência pulado: ${link ? 'o arquivo de instruções é link ou não é arquivo comum'
228
+ : `o bloco de instruções ou o recibo .orkastery/experiencia/${host}.json foi editado ou está duplicado`}; nada foi escrito. Revise os dois à mão. ${segue}`,
229
+ versaoDesconhecida: 'versão desconhecida',
230
+ orkNoPath: (doPath, outra, emExecucao, versao) => `o ork do PATH (${doPath}, ${outra}) não é o que roda este install (${emExecucao}, ${versao}). ` +
231
+ `A extensão chama ${emExecucao}; para outro binário, passe --ork <caminho>.`,
232
+ // As recusas
233
+ adaptadorNaoExiste: (host, dir) => `adaptador do host ${host} nao existe em ${dir}`,
234
+ destinoInseguro: 'experiencia.path.unsafe: destino do adaptador',
235
+ catalogoNaoEncontrado: 'catalogo do Orkastery nao encontrado (esperado um diretorio com skills/, references/ e eval/)',
236
+ };
237
+ exports.ADAPTER_EN = {
238
+ hosts: HOSTS_EN,
239
+ titulo: 'Host adapters (Layer 1, the podium)',
240
+ destinoPadrao: (destino) => `default target: <project>/${destino}`,
241
+ catalogoJunto: (leva) => `skill catalog included: ${leva ? 'yes' : 'no'}`,
242
+ instaleCom: 'Install with: ork adapter install <host> [--dir DIR] [--dry-run] [--force]',
243
+ zeroRegra: 'Zero business rules in the host: the #TAG becomes `--mode` and validation belongs to the core.',
244
+ adaptador: (host) => `Adapter ${host}`,
245
+ hostDesconhecido: (bruto, hosts) => `unknown host: "${bruto}". Use: ${hosts}`,
246
+ subcomandoDesconhecido: (sub) => `unknown subcommand: adapter ${sub}`,
247
+ tituloDosPitfalls: (host) => `The 3 install pitfalls of ${host} (check them, do not assume):`,
248
+ prova: (prova) => `proof: ${prova}`,
249
+ experiencia: (estado, skill) => `Experience: ${{ ativa: 'activation prepared', pulada: 'package skipped in this install, see the warning below',
250
+ desativada: 'disabled or without skill integration' }[estado]}${skill ? ` (${skill})` : ''}.`,
251
+ aviso: (aviso) => `Warning: ${aviso}`,
252
+ simulacao: (host) => `Dry run (\`--dry-run\`) of the ${host} adapter install: nothing was written.`,
253
+ preparados: (host) => `${host} adapter files prepared.`,
254
+ barrada: (host) => `${host} adapter install BLOCKED: there is a different file at the target.`,
255
+ claudeNaoVerificado: 'Use in Claude Code not verified by this copy yet.',
256
+ claudeValide: 'In this project directory, validate and enable the plugin:',
257
+ claudeDepois: 'Then, in this project session: /orkastery:ork',
258
+ codexAbra: 'Open Codex in this project and use $ork.',
259
+ codexNaoVerificado: 'Discovery and native use not verified by this copy yet.',
260
+ prepareMcp: (projeto, host) => `Also prepare the project tools: ork mcp install --project ${projeto} --host ${host}`,
261
+ consentimento: 'MCP configuration needs discovery and consent in the client; the copy grants no approvals.',
262
+ catalogo: (catalogo) => ` catalog: ${catalogo}`,
263
+ destino: (destino) => ` target: ${destino}`,
264
+ ork: (ork) => ` ork: ${ork}`,
265
+ avisoOrk: (aviso) => ` Warning: ${aviso}`,
266
+ arquivos: (total, novos, iguais, divergentes) => ` files: ${total} (${novos} new, ${iguais} already identical, ${divergentes} divergent)`,
267
+ removido: (relativo, simulacao) => ` - ${relativo} (left the catalog${simulacao ? ', would be removed' : ', removed'})`,
268
+ reciboVizinho: (destino, vizinho) => [` WARNING: there is no receipt in ${destino}, but there is one in`, ` ${vizinho}`,
269
+ ' `--dir` is the FULL target, not the project root. As it is, this install',
270
+ ' would create a new copy next to the existing one, and the existing one', ' would be left without any check.'],
271
+ catalogoAndou: (n) => [` ${n} divergent file(s) are "catalogo-andou": the copy is as it was installed`,
272
+ ' and what changed was the catalog. Overwriting loses nobody\'s work.'],
273
+ precisamDeDecisao: (n) => ` ${n} file(s) need a decision from you:`,
274
+ resolva: ' Resolve it in ONE command, per file:',
275
+ proximoPassoClaude: 'Next step, in this project directory (the same as at the start):',
276
+ proximoPasso: 'Next step (the same as at the start):',
277
+ segue: 'The rest of the adapter install goes on as usual.',
278
+ puladoManifesto: (erro, segue) => `Experience package skipped: the manifest has errors (${erro}). ${segue}`,
279
+ puladoInvalida: (aviso, segue) => `Experience package skipped: ${aviso}. ${segue}`,
280
+ puladoSemSkill: (skill, segue) => `Experience package skipped: skill ${skill} is not in the catalog. ${segue}`,
281
+ puladoForaDoProjeto: (segue) => `Experience package skipped: the adapter lives outside the project and the instructions block only points to project paths. ${segue}`,
282
+ puladoCaminho: (segue) => `Experience package skipped: the skills path has a line break or a backtick, which the instructions block cannot hold. ${segue}`,
283
+ puladoBloco: (link, host, segue) => `Experience package skipped: ${link ? 'the instructions file is a link or not a regular file'
284
+ : `the instructions block or the \`.orkastery/experiencia/${host}.json\` receipt was edited or is duplicated`}; nothing was written. Review both by hand. ${segue}`,
285
+ versaoDesconhecida: 'unknown version',
286
+ orkNoPath: (doPath, outra, emExecucao, versao) => `the ork in PATH (${doPath}, ${outra}) is not the one running this install (${emExecucao}, ${versao}). ` +
287
+ `The extension calls ${emExecucao}; for another binary, pass \`--ork <path>\`.`,
288
+ adaptadorNaoExiste: (host, dir) => `the ${host} host adapter does not exist in ${dir}`,
289
+ destinoInseguro: 'experiencia.path.unsafe: adapter target',
290
+ catalogoNaoEncontrado: 'Orkastery catalog not found (expected a directory with skills/, references/ and eval/)',
291
+ };
@@ -33,12 +33,12 @@ Uso: ork [--projeto <nome|caminho>] <comando> [argumentos]
33
33
  experiencia uninstall <host> [--dry-run] [--json]
34
34
  Remove o bloco de Claude Code/Codex; sem --dry-run aplica a remoção
35
35
  setup <modo> Config atual de cada bloco do modo
36
- setup <modo> --bloco N [--runtime R] Edita o bloco (runtimes: claude-bg, codex);
36
+ setup <modo> --bloco N [--runtime R] Edita o bloco (runtimes: claude-bg, codex, grok);
37
37
  [--model M] [--effort E] [--por Q] evento setup_configured no ledger do projeto
38
38
  [--fallback R:M[:E],...] ordem de fallback de runtime do bloco (I-33)
39
39
  accounts list [--json] Perfis de conta por runtime, sem segredo (I-33)
40
40
  accounts add <id> --runtime R --dir D Cria o perfil e roda o login do proprio CLI com o env
41
- [--sem-login] do perfil (nunca copia credencial)
41
+ [--sem-login] [--device-auth] do perfil (nunca copia credencial; codigo de dispositivo so no grok)
42
42
  accounts remove <id> Desativa o perfil (diretorio e login ficam onde estao)
43
43
  accounts check [<id>] Confere o login de cada perfil e marca o store
44
44
  accounts esgotamentos [--desde 7d] [--json]
@@ -110,12 +110,36 @@ Uso: ork [--projeto <nome|caminho>] <comando> [argumentos]
110
110
  pulse [--json] [--registrar] Fila unificada de atenção humana e retry de órfãs
111
111
  pulse responder --resposta-stdin --origem telegram --canal C --por ID --mensagem REF [--conta ID]
112
112
  Recebe o que o dono digitou no canal do resumo (P4EJ a, 1a 2c)
113
+ [--em-resposta-a <codigo>:<id>] o código da pergunta e o id da mensagem respondida (reply)
114
+ [--em-resposta-a outra] a palavra solta em reply a outra mensagem: recusada, com o porquê
113
115
  pulse cadencia [<tag>] [--por P] [--json] Mostra ou troca a cadencia do resumo: OrkPulseOn, OrkPulseOn-15m,
114
116
  -30m, -60m ou OrkPulseOff; pergunta nova sai na hora (I-50)
115
117
  sessions hitl [--json] [--so-paradas] Radar de sessoes que exigem acao humana AGORA:
116
118
  [--atencao N] [--sem-logs] classifica o estado de cada sessao do runtime,
117
119
  [--so-da-raiz] [--exigir-limpo] le a pergunta que a sessao trava e diz o que
118
120
  destrava (pega HITL de sessao SEM thread)
121
+ noctum propor --arquivo <envelope.json> Propõe o envelope de um arco #Noctum (RM-058) e pergunta ao dono, com código
122
+ curto e alternativas, também no canal dele; não autoriza nada
123
+ noctum maquina [--json] A entrada desta máquina em maquinas do envelope v3 (RM-058): o nome, a chave
124
+ pública e a impressão dela; a chave privada não sai desta raiz
125
+ noctum revogar <arco> [--json] Pergunta ao dono se revoga o arco (RM-057); quem revoga é a resposta dele,
126
+ no Telegram ou pelo diálogo do host
127
+ noctum responder <arco> --resposta-stdin --origem telegram --canal C --por ID --mensagem REF [--conta ID]
128
+ Recebe a autorização ou a revogação assinada pelo gateway
129
+ noctum terminal --hook-stdin O ingresso do terminal (RM-057), desligado: o hook UserPromptSubmit entrega
130
+ o que o dono digitou, e o núcleo só diz por onde responder; nada grava
131
+ noctum status [<arco>] [--json] Retrato do arco: situação, consumo medido, fila, fechamento e lacunas
132
+ noctum tique <arco> [--json] Fechamento, vigia e relatório do arco, nessa ordem (o cron do dono chama);
133
+ o vigia reconcilia e, sem condutor vivo, dá o passo do despacho e o da entrega
134
+ noctum relatorio <arco> [--json] O relatório da manhã no terminal (recibo só em terminal interativo)
135
+ [--reenviar telegram|openclaw] reenvia as páginas sem recibo, inclusive a de envio incerto
136
+ noctum conduzir <arco> [--json] O condutor do arco, que o cron do piloto relança: sai 0 com o arco terminado
137
+ ou parado, 2 em recusa, 3 com outro condutor vivo, 4 com a geração perdida
138
+ noctum aceite <arco> [--json] O aceite do piloto: as medidas M1 a M10, os critérios e o veredito; sai 0 só
139
+ com aprovado, e a evidência simulada (o ensaio) nunca aprova
140
+ [--injecoes <arquivo>] a agenda das falhas injetadas, que M4 e M5 medem
141
+ [--limiares <arquivo>] os limiares do dono; o que faltar fica com a proposta, marcada
142
+ [--publicar <arquivo>] grava a versão publicável, sem dado pessoal
119
143
 
120
144
  claims add <thread-id> <arquivo> --claim "<alegacao>" [--verificar "<comando>"] [--fase F]
121
145
  Registra alegacao verificavel da thread
@@ -141,6 +165,8 @@ Uso: ork [--projeto <nome|caminho>] <comando> [argumentos]
141
165
  ci run [<thread-id>] [--bundle ARQ] Executa o CHECK no runner independente
142
166
  [--branch B] acha o bundle da thread pelo nome da branch (o CI usa)
143
167
  ci status [--sha SHA] [--remoto origin] Consulta o check exato publicado no GitHub
168
+ privado varrer [--base REF] [--json] Dado privado (home, e-mail fora da lista, hostname de maquina e a lista
169
+ local fora do git) nas linhas e nomes versionados; --base: so o diff (RM-062)
144
170
 
145
171
  gate next <thread-id> [--proximo FASE] Gate de tokens: mesma sessao ou nova sessao
146
172
  [--ocupacao 0..1] [--fonte F] [--transcript ARQ] [--janela N] [--refazer]
@@ -179,6 +205,10 @@ Uso: ork [--projeto <nome|caminho>] <comando> [argumentos]
179
205
  brain status|inventory|get|query|receipts|context|dossie|sync|reconcile|apply|rollback|bind
180
206
  brain dossie --thread T [--decisao ID] Dossie de decisao: vinculo, contexto citavel, alternativas,
181
207
  quem decidiu e evidencia, com os ids do Brain (so leitura)
208
+ conhecimento listar [--colecao C] [--json] Documentos validos da pasta conhecimento.dir (RM-026 K7), com versao e lacunas
209
+ conhecimento mostrar <doc-id> [--json] O documento com corpo, versao, fonte e referencias conferidas (Brain por get)
210
+ conhecimento colecoes [--json] As colecoes e os documentos de cada uma
211
+ conhecimento verificar [--json] Confere a pasta inteira, ids do Brain por get; sai != 0 com lacuna
182
212
  memory status [--json] [--sondar] Regime efetivo (files|orkmind), tenant, degradacao e embeddings
183
213
  (--sondar: uma chamada real de embedding, com a latencia)
184
214
  memory sync [<thread-id>] [--json] Publica decisoes, policies, handoff, licao e roadmap
@@ -209,12 +239,14 @@ Uso: ork [--projeto <nome|caminho>] <comando> [argumentos]
209
239
  grafo amostra [--por-estrato N] Amostra de arestas para auditoria manual; --conferir ARQ confere a auditada
210
240
  grafo limpar [--tudo] [--json] Apaga os indices que nao sao do HEAD e as sobras com mais de uma hora
211
241
 
242
+ security-scan [--base <ref>] [--json] Varredura de seguranca do HEAD contra a base: relatorio por SHA em
243
+ .orkastery/security-scan/<sha>/; sai 1 com achado novo no laco
212
244
  ship <thread-id> --para <branch> Merge --no-ff serializado por lease e push PROVADO
213
245
  ship registrar-pr <thread-id>|--todas A entrega feita por PR vira ship_done: merge ship(<thread>) na base
214
246
  [--remoto R] [--json] remota e CI verde no head do PR; depois, ork master <thread> --aceitar-omissao
215
247
  [--repo <dono/nome> --pr <n>] PR mesclado em repositorio externo de ci.external_repositories
216
248
  [--dry-run] Ensaio: as mesmas conferencias, sem gravar ship_done, fase nem fabrica
217
- [--de <branch>] [--remoto origin] [--autorizar-push <quem>] [--sem-push] [--dry-run]
249
+ [--de <branch>] [--remoto origin] [--autorizar-push <quem>] [--allow-unscanned <quem>] [--sem-push] [--dry-run]
218
250
  ship publicar <thread-id> Publica a branch e abre o PR com prova (ls-remote), so em #Auto e #Maestro
219
251
  [--dry-run] [--remoto R] [--json] Ensaio confere tudo sem publicar; repetido, nao abre outro PR
220
252
  ship pista [<thread-id>] [--json] Etapas da entrega, do CHECK ao ship_done, e o proximo passo do nucleo
@@ -241,6 +273,11 @@ Uso: ork [--projeto <nome|caminho>] <comando> [argumentos]
241
273
  Handoff: encerra a conducao atual pelo runtime e registra quem assumiu
242
274
  conducao sentinela status|bater|desligar [--sessao S] [--json]
243
275
  Sentinela do Condutor: presenca nesta maquina e o passo de cada thread
276
+ conducao autorizar --ate D --pode A[,B] [--por Q] [--nota N]
277
+ Grava a autorizacao duravel do dono nesta maquina (fora do git)
278
+ conducao autorizacao [--json] A autorizacao duravel vigente nesta maquina, ou por que ela nao vale
279
+ conducao batida [--entregar] [--json] Avanca as threads dentro da autorizacao: merge, registro, MASTER, despacho
280
+ conducao atualizar <thread-id> [--enviar] Merge da base na branch da thread, com o CHANGELOG reconciliado
244
281
 
245
282
  master propor <id> --score N --justificativa J --por <agente>
246
283
  master batch --aceitar <thread:assinatura,...> --por <humano>
@@ -317,7 +354,7 @@ Uso: ork [--projeto <nome|caminho>] <comando> [argumentos]
317
354
  o padrao e o item dela; --todos volta a todo item (RM-037)
318
355
  docs init Cria padroes, modelos, indices e o lint de Markdown no projeto
319
356
 
320
- mcp serve --project RAIZ --host HOST Servidor MCP stdio deste projeto (codex|claude-code)
357
+ mcp serve --project RAIZ --host HOST Servidor MCP stdio deste projeto (codex|claude-code; grok so na sessao filha, com --thread)
321
358
  mcp install --project RAIZ --host HOST Prepara MCP; aceita --dry-run, --ship-transport, --child-permissions e --owner-permissions (Codex)
322
359
 
323
360
  adapter list Adaptadores de host (Camada 1) e o destino de cada um
@@ -355,7 +392,8 @@ Uso: ork [--projeto <nome|caminho>] <comando> [argumentos]
355
392
  worktree.por_thread como no thread new)
356
393
 
357
394
  Regimes de memoria: files (fallback honesto) e orkmind (bloco B6, base propria por tenant
358
- declarada em memory.database_url_env pelo NOME da variavel de ambiente, sem fallback).
395
+ declarada em memory.database_url_file, arquivo 0600 em ~/.orkastery/segredos/, ou em
396
+ memory.database_url_env pelo NOME da variavel de ambiente; uma fonte so, sem fallback).
359
397
  Colecoes gravadas no OrkMind: decision, handoff, rule, learning, roadmap (source=agent,
360
398
  nunca mandatory: regra critica so nasce de humano autenticado).
361
399
 
@@ -409,12 +447,12 @@ Usage: ork [--projeto <name|path>] <command> [arguments]
409
447
  experiencia uninstall <host> [--dry-run] [--json]
410
448
  Removes the Claude Code/Codex block; without --dry-run it applies the removal
411
449
  setup <mode> Current config of each block of the mode
412
- setup <mode> --bloco N [--runtime R] Edits the block (runtimes: claude-bg, codex);
450
+ setup <mode> --bloco N [--runtime R] Edits the block (runtimes: claude-bg, codex, grok);
413
451
  [--model M] [--effort E] [--por Q] setup_configured event in the project ledger
414
452
  [--fallback R:M[:E],...] runtime fallback order of the block (I-33)
415
453
  accounts list [--json] Account profiles per runtime, without secrets (I-33)
416
454
  accounts add <id> --runtime R --dir D Creates the profile and runs the CLI's own login with the profile
417
- [--sem-login] env (never copies a credential)
455
+ [--sem-login] [--device-auth] env (never copies a credential; device code only for grok)
418
456
  accounts remove <id> Deactivates the profile (directory and login stay where they are)
419
457
  accounts check [<id>] Checks the login of each profile and marks the store
420
458
  accounts esgotamentos [--desde 7d] [--json]
@@ -486,12 +524,36 @@ Usage: ork [--projeto <name|path>] <command> [arguments]
486
524
  pulse [--json] [--registrar] Unified queue of human attention and retry of orphans
487
525
  pulse responder --resposta-stdin --origem telegram --canal C --por ID --mensagem REF [--conta ID]
488
526
  Receives what the owner typed in the summary channel (P4EJ a, 1a 2c)
527
+ [--em-resposta-a <code>:<id>] the question code and the id of the replied message (reply)
528
+ [--em-resposta-a outra] the bare word in reply to another message: refused, with the reason
489
529
  pulse cadencia [<tag>] [--por P] [--json] Shows or changes the summary cadence: OrkPulseOn, OrkPulseOn-15m,
490
530
  -30m, -60m or OrkPulseOff; a new question goes out at once (I-50)
491
531
  sessions hitl [--json] [--so-paradas] Radar of sessions that need human action NOW:
492
532
  [--atencao N] [--sem-logs] classifies the state of each runtime session,
493
533
  [--so-da-raiz] [--exigir-limpo] reads the question the session is stuck on and says what
494
534
  unblocks it (catches HITL of sessions WITHOUT a thread)
535
+ noctum propor --arquivo <envelope.json> Proposes the envelope of a #Noctum arc (RM-058) and asks the owner, with a short
536
+ code and choices, also on the owner's channel; it authorizes nothing
537
+ noctum maquina [--json] This machine's entry in maquinas of the v3 envelope (RM-058): its name, public key
538
+ and fingerprint; the private key never leaves this root
539
+ noctum revogar <arc> [--json] Asks the owner whether to revoke the arc (RM-057); the owner's answer revokes,
540
+ on Telegram or through the host dialog
541
+ noctum responder <arc> --resposta-stdin --origem telegram --canal C --por ID --mensagem REF [--conta ID]
542
+ Receives the authorization or revocation signed by the gateway
543
+ noctum terminal --hook-stdin The terminal ingress (RM-057), turned off: the UserPromptSubmit hook delivers
544
+ what the owner typed, and the core only says where to answer; nothing is recorded
545
+ noctum status [<arc>] [--json] Arc snapshot: situation, measured usage, queue, closing and gaps
546
+ noctum tique <arc> [--json] Closing, watcher and report of the arc, in that order (the owner cron calls it);
547
+ the watcher reconciles and, with no live conductor, takes the dispatch and delivery step
548
+ noctum relatorio <arc> [--json] The morning report in the terminal (receipt only in an interactive terminal)
549
+ [--reenviar telegram|openclaw] resends the pages without a receipt, even an uncertain one
550
+ noctum conduzir <arc> [--json] The arc conductor, which the pilot cron relaunches: exits 0 with the arc ended
551
+ or stopped, 2 on refusal, 3 with another live conductor, 4 with the generation lost
552
+ noctum aceite <arc> [--json] The pilot acceptance: measures M1 to M10, the criteria and the verdict; exits 0
553
+ only when approved, and simulated evidence (the rehearsal) never approves
554
+ [--injecoes <file>] the schedule of injected failures, which M4 and M5 measure
555
+ [--limiares <file>] the owner's thresholds; what is missing stays with the proposal, marked
556
+ [--publicar <file>] writes the publishable version, without personal data
495
557
 
496
558
  claims add <thread-id> <file> --claim "<claim>" [--verificar "<command>"] [--fase F]
497
559
  Records a verifiable claim of the thread
@@ -517,6 +579,8 @@ Usage: ork [--projeto <name|path>] <command> [arguments]
517
579
  ci run [<thread-id>] [--bundle FILE] Runs the CHECK on the independent runner
518
580
  [--branch B] finds the thread bundle by the branch name (the CI uses it)
519
581
  ci status [--sha SHA] [--remoto origin] Queries the exact check published on GitHub
582
+ privado varrer [--base REF] [--json] Private data (home, e-mail off the allow list, machine hostname and the local
583
+ list outside git) in versioned lines and names; --base: only the diff (RM-062)
520
584
 
521
585
  gate next <thread-id> [--proximo PHASE] Token gate: same session or new session
522
586
  [--ocupacao 0..1] [--fonte F] [--transcript FILE] [--janela N] [--refazer]
@@ -555,6 +619,10 @@ Usage: ork [--projeto <name|path>] <command> [arguments]
555
619
  brain status|inventory|get|query|receipts|context|dossie|sync|reconcile|apply|rollback|bind
556
620
  brain dossie --thread T [--decisao ID] Decision dossier: link, citable context, alternatives,
557
621
  who decided and evidence, with the Brain ids (read only)
622
+ conhecimento listar [--colecao C] [--json] Valid documents of the conhecimento.dir folder (RM-026 K7), with version and gaps
623
+ conhecimento mostrar <doc-id> [--json] The document with body, version, source and checked references (Brain by get)
624
+ conhecimento colecoes [--json] The collections and the documents of each one
625
+ conhecimento verificar [--json] Checks the whole folder, Brain ids by get; exits != 0 with a gap
558
626
  memory status [--json] [--sondar] Effective regime (files|orkmind), tenant, degradation and embeddings
559
627
  (--sondar: one real embedding call, with the latency)
560
628
  memory sync [<thread-id>] [--json] Publishes decisions, policies, handoff, lesson and roadmap
@@ -585,12 +653,14 @@ Usage: ork [--projeto <name|path>] <command> [arguments]
585
653
  grafo amostra [--por-estrato N] Sample of edges for manual audit; --conferir FILE checks the audited one
586
654
  grafo limpar [--tudo] [--json] Deletes the indexes that are not from HEAD and leftovers older than one hour
587
655
 
656
+ security-scan [--base <ref>] [--json] Security scan of the HEAD against the base: report by SHA in
657
+ .orkastery/security-scan/<sha>/; exits 1 on a new finding in the loop
588
658
  ship <thread-id> --para <branch> Serialized --no-ff merge by lease and PROVEN push
589
659
  ship registrar-pr <thread-id>|--todas A delivery made by PR becomes ship_done: ship(<thread>) merge on the remote
590
660
  [--remoto R] [--json] base and green CI on the PR head; then, ork master <thread> --aceitar-omissao
591
661
  [--repo <owner/name> --pr <n>] PR merged in an external repository of ci.external_repositories
592
662
  [--dry-run] Rehearsal: the same checks, without writing ship_done, phase or factory
593
- [--de <branch>] [--remoto origin] [--autorizar-push <who>] [--sem-push] [--dry-run]
663
+ [--de <branch>] [--remoto origin] [--autorizar-push <who>] [--allow-unscanned <who>] [--sem-push] [--dry-run]
594
664
  ship publicar <thread-id> Publishes the branch and opens the PR with proof (ls-remote), only in #Auto and #Maestro
595
665
  [--dry-run] [--remoto R] [--json] The rehearsal checks everything without publishing; repeated, it opens no other PR
596
666
  ship pista [<thread-id>] [--json] Delivery steps, from CHECK to ship_done, and the core's next step
@@ -617,6 +687,11 @@ Usage: ork [--projeto <name|path>] <command> [arguments]
617
687
  Handoff: ends the current conduction through the runtime and records who took over
618
688
  conducao sentinela status|bater|desligar [--sessao S] [--json]
619
689
  Conductor Sentinel: presence on this machine and the step of each thread
690
+ conducao autorizar --ate D --pode A[,B] [--por Q] [--nota N]
691
+ Records the owner's durable authorization on this machine (outside git)
692
+ conducao autorizacao [--json] The durable authorization in force on this machine, or why it does not hold
693
+ conducao batida [--entregar] [--json] Moves the threads within the authorization: merge, record, MASTER, dispatch
694
+ conducao atualizar <thread-id> [--enviar] Merges the base into the thread branch, with the CHANGELOG reconciled
620
695
 
621
696
  master propor <id> --score N --justificativa J --por <agent>
622
697
  master batch --aceitar <thread:signature,...> --por <human>
@@ -693,7 +768,7 @@ Usage: ork [--projeto <name|path>] <command> [arguments]
693
768
  the default is its item; --todos goes back to every item (RM-037)
694
769
  docs init Creates standards, templates, indexes and the Markdown lint in the project
695
770
 
696
- mcp serve --project ROOT --host HOST stdio MCP server of this project (codex|claude-code)
771
+ mcp serve --project ROOT --host HOST stdio MCP server of this project (codex|claude-code; grok only in the child session, with --thread)
697
772
  mcp install --project ROOT --host HOST Prepares MCP; accepts --dry-run, --ship-transport, --child-permissions and --owner-permissions (Codex)
698
773
 
699
774
  adapter list Host adapters (Layer 1) and the target of each one
@@ -731,7 +806,8 @@ Usage: ork [--projeto <name|path>] <command> [arguments]
731
806
  worktree.por_thread as in thread new)
732
807
 
733
808
  Memory regimes: files (honest fallback) and orkmind (block B6, own database per tenant
734
- declared in memory.database_url_env by the NAME of the environment variable, without fallback).
809
+ declared in memory.database_url_file, a 0600 file in ~/.orkastery/segredos/, or in
810
+ memory.database_url_env by the NAME of the environment variable; one source only, without fallback).
735
811
  Collections written to OrkMind: decision, handoff, rule, learning, roadmap (source=agent,
736
812
  never mandatory: a critical rule is only born from an authenticated human).
737
813