approval-md 0.1.0 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (416) hide show
  1. package/README.md +629 -559
  2. package/SPEC.md +99 -24
  3. package/dist/src/adapters/agentmail.d.ts +426 -0
  4. package/dist/src/adapters/agentmail.js +2 -2
  5. package/dist/src/adapters/conformance.d.ts +149 -0
  6. package/dist/src/adapters/contract.d.ts +628 -0
  7. package/dist/src/adapters/contract.js +110 -16
  8. package/dist/src/adapters/contract.js.map +1 -1
  9. package/dist/src/adapters/email.d.ts +324 -0
  10. package/dist/src/adapters/env-passphrase.d.ts +93 -0
  11. package/dist/src/adapters/public.d.ts +11 -0
  12. package/dist/src/adapters/public.js +11 -0
  13. package/dist/src/adapters/public.js.map +1 -0
  14. package/dist/src/adapters/registry.d.ts +59 -0
  15. package/dist/src/adapters/registry.js +2 -1
  16. package/dist/src/adapters/registry.js.map +1 -1
  17. package/dist/src/adapters/smtp.d.ts +213 -0
  18. package/dist/src/adapters/vault-provider.d.ts +114 -0
  19. package/dist/src/adapters/vault-provider.js +3 -3
  20. package/dist/src/adapters/zzz.d.ts +66 -0
  21. package/dist/src/adapters/zzz.js +299 -0
  22. package/dist/src/adapters/zzz.js.map +1 -0
  23. package/dist/src/channels/batch.d.ts +109 -0
  24. package/dist/src/channels/cli.d.ts +193 -0
  25. package/dist/src/channels/conformance.d.ts +92 -0
  26. package/dist/src/channels/contract.d.ts +656 -0
  27. package/dist/src/channels/contract.js +200 -7
  28. package/dist/src/channels/contract.js.map +1 -1
  29. package/dist/src/channels/payload-view.d.ts +35 -0
  30. package/dist/src/channels/render-queue.d.ts +149 -0
  31. package/dist/src/channels/tagging.d.ts +196 -0
  32. package/dist/src/channels/telegram.d.ts +1944 -0
  33. package/dist/src/channels/telegram.js +218 -23
  34. package/dist/src/channels/telegram.js.map +1 -1
  35. package/dist/src/channels/web.d.ts +350 -0
  36. package/dist/src/channels/web.js +17 -0
  37. package/dist/src/channels/web.js.map +1 -1
  38. package/dist/src/cli/adapter.d.ts +90 -0
  39. package/dist/src/cli/adapter.js +25 -15
  40. package/dist/src/cli/adapter.js.map +1 -1
  41. package/dist/src/cli/amend.d.ts +59 -0
  42. package/dist/src/cli/amend.js +214 -30
  43. package/dist/src/cli/amend.js.map +1 -1
  44. package/dist/src/cli/args.d.ts +43 -0
  45. package/dist/src/cli/attest.d.ts +50 -0
  46. package/dist/src/cli/attest.js +134 -7
  47. package/dist/src/cli/attest.js.map +1 -1
  48. package/dist/src/cli/audit-card.d.ts +62 -0
  49. package/dist/src/cli/audit.d.ts +59 -0
  50. package/dist/src/cli/channel-telegram.d.ts +879 -0
  51. package/dist/src/cli/channel-telegram.js +311 -13
  52. package/dist/src/cli/channel-telegram.js.map +1 -1
  53. package/dist/src/cli/channel-web.d.ts +131 -0
  54. package/dist/src/cli/channel.d.ts +80 -0
  55. package/dist/src/cli/channel.js +9 -0
  56. package/dist/src/cli/channel.js.map +1 -1
  57. package/dist/src/cli/checkpoint-tap.d.ts +169 -0
  58. package/dist/src/cli/codex-bridge.d.ts +819 -0
  59. package/dist/src/cli/codex-bridge.js +1607 -0
  60. package/dist/src/cli/codex-bridge.js.map +1 -0
  61. package/dist/src/cli/codex.d.ts +2 -0
  62. package/dist/src/cli/codex.js +469 -0
  63. package/dist/src/cli/codex.js.map +1 -0
  64. package/dist/src/cli/coverage.d.ts +61 -0
  65. package/dist/src/cli/daemon.d.ts +120 -0
  66. package/dist/src/cli/daemon.js +4 -1
  67. package/dist/src/cli/daemon.js.map +1 -1
  68. package/dist/src/cli/doctor.d.ts +129 -0
  69. package/dist/src/cli/doctor.js +586 -17
  70. package/dist/src/cli/doctor.js.map +1 -1
  71. package/dist/src/cli/env.d.ts +65 -0
  72. package/dist/src/cli/execute.d.ts +202 -0
  73. package/dist/src/cli/execute.js +25 -2
  74. package/dist/src/cli/execute.js.map +1 -1
  75. package/dist/src/cli/exit-codes.d.ts +73 -0
  76. package/dist/src/cli/feedback.d.ts +60 -0
  77. package/dist/src/cli/gate-window.d.ts +40 -0
  78. package/dist/src/cli/gate.d.ts +68 -0
  79. package/dist/src/cli/git-scope.d.ts +190 -0
  80. package/dist/src/cli/gloss-attach.d.ts +85 -0
  81. package/dist/src/cli/gloss-codex-child.d.ts +9 -0
  82. package/dist/src/cli/gloss-codex.d.ts +24 -0
  83. package/dist/src/cli/gloss-options.d.ts +42 -0
  84. package/dist/src/cli/gloss.d.ts +265 -0
  85. package/dist/src/cli/help.d.ts +107 -0
  86. package/dist/src/cli/help.js +320 -93
  87. package/dist/src/cli/help.js.map +1 -1
  88. package/dist/src/cli/hook-codex.d.ts +126 -0
  89. package/dist/src/cli/hook-codex.js +226 -0
  90. package/dist/src/cli/hook-codex.js.map +1 -0
  91. package/dist/src/cli/hook.d.ts +787 -0
  92. package/dist/src/cli/hook.js +1235 -181
  93. package/dist/src/cli/hook.js.map +1 -1
  94. package/dist/src/cli/import.d.ts +35 -0
  95. package/dist/src/cli/import.js +1 -1
  96. package/dist/src/cli/import.js.map +1 -1
  97. package/dist/src/cli/init.d.ts +84 -0
  98. package/dist/src/cli/init.js +2 -2
  99. package/dist/src/cli/init.js.map +1 -1
  100. package/dist/src/cli/instructions.d.ts +23 -0
  101. package/dist/src/cli/journal.d.ts +41 -0
  102. package/dist/src/cli/log-advance.d.ts +287 -0
  103. package/dist/src/cli/log-advance.js +102 -11
  104. package/dist/src/cli/log-advance.js.map +1 -1
  105. package/dist/src/cli/log-anchor.d.ts +176 -0
  106. package/dist/src/cli/log-checkpoint.d.ts +22 -0
  107. package/dist/src/cli/log-sync.d.ts +243 -0
  108. package/dist/src/cli/log-verbs.d.ts +16 -0
  109. package/dist/src/cli/log-verbs.js +7 -1
  110. package/dist/src/cli/log-verbs.js.map +1 -1
  111. package/dist/src/cli/long-help.d.ts +70 -0
  112. package/dist/src/cli/main.d.ts +77 -0
  113. package/dist/src/cli/main.js +159 -7
  114. package/dist/src/cli/main.js.map +1 -1
  115. package/dist/src/cli/mcp.d.ts +52 -0
  116. package/dist/src/cli/paths.d.ts +56 -0
  117. package/dist/src/cli/payload.d.ts +58 -0
  118. package/dist/src/cli/policy-apply.d.ts +195 -0
  119. package/dist/src/cli/policy-apply.js +573 -0
  120. package/dist/src/cli/policy-apply.js.map +1 -0
  121. package/dist/src/cli/policy.d.ts +43 -0
  122. package/dist/src/cli/policy.js +14 -1
  123. package/dist/src/cli/policy.js.map +1 -1
  124. package/dist/src/cli/preflight.d.ts +501 -0
  125. package/dist/src/cli/preflight.js +689 -45
  126. package/dist/src/cli/preflight.js.map +1 -1
  127. package/dist/src/cli/progress.d.ts +78 -0
  128. package/dist/src/cli/prompt.d.ts +209 -0
  129. package/dist/src/cli/quickstart.d.ts +46 -0
  130. package/dist/src/cli/quickstart.js +297 -0
  131. package/dist/src/cli/quickstart.js.map +1 -0
  132. package/dist/src/cli/records.d.ts +34 -0
  133. package/dist/src/cli/render.d.ts +22 -0
  134. package/dist/src/cli/sandbox.d.ts +51 -0
  135. package/dist/src/cli/sandbox.js +17 -1
  136. package/dist/src/cli/sandbox.js.map +1 -1
  137. package/dist/src/cli/scaffold.d.ts +79 -0
  138. package/dist/src/cli/scaffold.js +1 -1
  139. package/dist/src/cli/setup-adapter.d.ts +137 -0
  140. package/dist/src/cli/setup-adapter.js +38 -4
  141. package/dist/src/cli/setup-adapter.js.map +1 -1
  142. package/dist/src/cli/setup-channel.d.ts +126 -0
  143. package/dist/src/cli/setup-channel.js +28 -1
  144. package/dist/src/cli/setup-channel.js.map +1 -1
  145. package/dist/src/cli/setup-checkpoint.d.ts +57 -0
  146. package/dist/src/cli/setup-common.d.ts +277 -0
  147. package/dist/src/cli/setup-common.js +3 -2
  148. package/dist/src/cli/setup-common.js.map +1 -1
  149. package/dist/src/cli/setup-flow.d.ts +287 -0
  150. package/dist/src/cli/setup-service.d.ts +96 -0
  151. package/dist/src/cli/setup.d.ts +204 -0
  152. package/dist/src/cli/setup.js +94 -2
  153. package/dist/src/cli/setup.js.map +1 -1
  154. package/dist/src/cli/style.d.ts +320 -0
  155. package/dist/src/cli/token.d.ts +39 -0
  156. package/dist/src/cli/up.d.ts +155 -0
  157. package/dist/src/cli/up.js +119 -53
  158. package/dist/src/cli/up.js.map +1 -1
  159. package/dist/src/cli/usage.d.ts +37 -0
  160. package/dist/src/cli/values.d.ts +40 -0
  161. package/dist/src/cli/values.js +3 -4
  162. package/dist/src/cli/values.js.map +1 -1
  163. package/dist/src/cli/vault.d.ts +59 -0
  164. package/dist/src/cli/vault.js +2 -2
  165. package/dist/src/cli/vault.js.map +1 -1
  166. package/dist/src/cli/verb-registry.d.ts +76 -0
  167. package/dist/src/cli/verb-registry.js +344 -11
  168. package/dist/src/cli/verb-registry.js.map +1 -1
  169. package/dist/src/cli/wordmark.d.ts +31 -0
  170. package/dist/src/cli/wordmark.js +2 -2
  171. package/dist/src/codex/broker.d.ts +229 -0
  172. package/dist/src/codex/broker.js +548 -0
  173. package/dist/src/codex/broker.js.map +1 -0
  174. package/dist/src/codex/doctor.d.ts +13 -0
  175. package/dist/src/codex/doctor.js +41 -0
  176. package/dist/src/codex/doctor.js.map +1 -0
  177. package/dist/src/codex/manifest.d.ts +49 -0
  178. package/dist/src/codex/manifest.js +103 -0
  179. package/dist/src/codex/manifest.js.map +1 -0
  180. package/dist/src/codex/runner.d.ts +178 -0
  181. package/dist/src/codex/runner.js +231 -0
  182. package/dist/src/codex/runner.js.map +1 -0
  183. package/dist/src/codex/serve.d.ts +56 -0
  184. package/dist/src/codex/serve.js +98 -0
  185. package/dist/src/codex/serve.js.map +1 -0
  186. package/dist/src/codex/templates.d.ts +41 -0
  187. package/dist/src/codex/templates.js +319 -0
  188. package/dist/src/codex/templates.js.map +1 -0
  189. package/dist/src/codex/trust.d.ts +19 -0
  190. package/dist/src/codex/trust.js +183 -0
  191. package/dist/src/codex/trust.js.map +1 -0
  192. package/dist/src/codex/workspace-commit.d.ts +219 -0
  193. package/dist/src/codex/workspace-commit.js +549 -0
  194. package/dist/src/codex/workspace-commit.js.map +1 -0
  195. package/dist/src/codex/workspace-plan.d.ts +131 -0
  196. package/dist/src/codex/workspace-plan.js +561 -0
  197. package/dist/src/codex/workspace-plan.js.map +1 -0
  198. package/dist/src/core/actor.d.ts +2 -0
  199. package/dist/src/core/actor.js +5 -0
  200. package/dist/src/core/actor.js.map +1 -0
  201. package/dist/src/core/advance-cycle.d.ts +221 -0
  202. package/dist/src/core/advance-cycle.js +66 -2
  203. package/dist/src/core/advance-cycle.js.map +1 -1
  204. package/dist/src/core/agents-md.d.ts +278 -0
  205. package/dist/src/core/agents-md.js +33 -31
  206. package/dist/src/core/agents-md.js.map +1 -1
  207. package/dist/src/core/apply-patch.d.ts +49 -0
  208. package/dist/src/core/apply-patch.js +266 -0
  209. package/dist/src/core/apply-patch.js.map +1 -0
  210. package/dist/src/core/attest.d.ts +635 -0
  211. package/dist/src/core/attest.js +326 -4
  212. package/dist/src/core/attest.js.map +1 -1
  213. package/dist/src/core/audit.d.ts +510 -0
  214. package/dist/src/core/audit.js +13 -0
  215. package/dist/src/core/audit.js.map +1 -1
  216. package/dist/src/core/budgets.d.ts +238 -0
  217. package/dist/src/core/channel-owner.d.ts +213 -0
  218. package/dist/src/core/channel-owner.js +358 -0
  219. package/dist/src/core/channel-owner.js.map +1 -0
  220. package/dist/src/core/checkpoint.d.ts +500 -0
  221. package/dist/src/core/child-env.d.ts +88 -0
  222. package/dist/src/core/clock.d.ts +52 -0
  223. package/dist/src/core/command-class.d.ts +697 -0
  224. package/dist/src/core/command-class.js +713 -25
  225. package/dist/src/core/command-class.js.map +1 -1
  226. package/dist/src/core/commit-guard.d.ts +272 -0
  227. package/dist/src/core/commit-guard.js +424 -0
  228. package/dist/src/core/commit-guard.js.map +1 -0
  229. package/dist/src/core/coverage-sources/adapter.d.ts +40 -0
  230. package/dist/src/core/coverage-sources/gh.d.ts +48 -0
  231. package/dist/src/core/coverage-sources/git.d.ts +101 -0
  232. package/dist/src/core/coverage.d.ts +217 -0
  233. package/dist/src/core/credential-spec.d.ts +72 -0
  234. package/dist/src/core/daemon-actor.d.ts +45 -0
  235. package/dist/src/core/daemon-actor.js +54 -0
  236. package/dist/src/core/daemon-actor.js.map +1 -0
  237. package/dist/src/core/dark-session.d.ts +432 -0
  238. package/dist/src/core/dark-session.js +266 -82
  239. package/dist/src/core/dark-session.js.map +1 -1
  240. package/dist/src/core/decision-refusal.d.ts +206 -0
  241. package/dist/src/core/decision-refusal.js +24 -2
  242. package/dist/src/core/decision-refusal.js.map +1 -1
  243. package/dist/src/core/env-file.d.ts +455 -0
  244. package/dist/src/core/env-file.js +60 -1
  245. package/dist/src/core/env-file.js.map +1 -1
  246. package/dist/src/core/execute.d.ts +871 -0
  247. package/dist/src/core/execute.js +59 -8
  248. package/dist/src/core/execute.js.map +1 -1
  249. package/dist/src/core/frontmatter.d.ts +78 -0
  250. package/dist/src/core/gate-window.d.ts +312 -0
  251. package/dist/src/core/gate.d.ts +1449 -0
  252. package/dist/src/core/gate.js +149 -14
  253. package/dist/src/core/gate.js.map +1 -1
  254. package/dist/src/core/gesture-refusal.d.ts +166 -0
  255. package/dist/src/core/gesture-refusal.js +188 -0
  256. package/dist/src/core/gesture-refusal.js.map +1 -0
  257. package/dist/src/core/git-run.d.ts +73 -0
  258. package/dist/src/core/harness-version.d.ts +157 -0
  259. package/dist/src/core/harness-version.js +4 -1
  260. package/dist/src/core/harness-version.js.map +1 -1
  261. package/dist/src/core/harness-wait.d.ts +55 -0
  262. package/dist/src/core/head-retry.d.ts +107 -0
  263. package/dist/src/core/instance.d.ts +310 -0
  264. package/dist/src/core/instance.js +113 -0
  265. package/dist/src/core/instance.js.map +1 -1
  266. package/dist/src/core/intake-limits.d.ts +247 -0
  267. package/dist/src/core/jcs.d.ts +52 -0
  268. package/dist/src/core/journal.d.ts +144 -0
  269. package/dist/src/core/live-draw.d.ts +436 -0
  270. package/dist/src/core/log-reconcile.d.ts +89 -0
  271. package/dist/src/core/log-subscribe.d.ts +36 -0
  272. package/dist/src/core/log-subscribe.js +162 -0
  273. package/dist/src/core/log-subscribe.js.map +1 -0
  274. package/dist/src/core/log.d.ts +316 -0
  275. package/dist/src/core/log.js.map +1 -1
  276. package/dist/src/core/loop.d.ts +274 -0
  277. package/dist/src/core/loop.js +11 -0
  278. package/dist/src/core/loop.js.map +1 -1
  279. package/dist/src/core/md-fence.d.ts +41 -0
  280. package/dist/src/core/money.d.ts +147 -0
  281. package/dist/src/core/payload-census.d.ts +74 -0
  282. package/dist/src/core/payload-store.d.ts +175 -0
  283. package/dist/src/core/payload.d.ts +71 -0
  284. package/dist/src/core/policy-diff.d.ts +292 -0
  285. package/dist/src/core/policy-diff.js +27 -4
  286. package/dist/src/core/policy-diff.js.map +1 -1
  287. package/dist/src/core/policy-expectations.d.ts +199 -0
  288. package/dist/src/core/policy-explain.d.ts +160 -0
  289. package/dist/src/core/policy-explain.js +63 -3
  290. package/dist/src/core/policy-explain.js.map +1 -1
  291. package/dist/src/core/policy-load.d.ts +567 -0
  292. package/dist/src/core/policy-load.js +36 -6
  293. package/dist/src/core/policy-load.js.map +1 -1
  294. package/dist/src/core/policy-match.d.ts +324 -0
  295. package/dist/src/core/policy-match.js +72 -9
  296. package/dist/src/core/policy-match.js.map +1 -1
  297. package/dist/src/core/policy-proposal.d.ts +317 -0
  298. package/dist/src/core/policy-proposal.js +102 -2
  299. package/dist/src/core/policy-proposal.js.map +1 -1
  300. package/dist/src/core/prompt-layout.d.ts +221 -0
  301. package/dist/src/core/protected-path-guard.d.ts +566 -0
  302. package/dist/src/core/protected-path-guard.js +848 -55
  303. package/dist/src/core/protected-path-guard.js.map +1 -1
  304. package/dist/src/core/question-preempted.d.ts +141 -0
  305. package/dist/src/core/question-preempted.js +152 -0
  306. package/dist/src/core/question-preempted.js.map +1 -0
  307. package/dist/src/core/read-scope.d.ts +172 -0
  308. package/dist/src/core/read-scope.js +252 -0
  309. package/dist/src/core/read-scope.js.map +1 -0
  310. package/dist/src/core/registration.d.ts +25 -0
  311. package/dist/src/core/reindex.d.ts +99 -0
  312. package/dist/src/core/sampler.d.ts +313 -0
  313. package/dist/src/core/sandbox.d.ts +371 -0
  314. package/dist/src/core/sandbox.js +190 -1
  315. package/dist/src/core/sandbox.js.map +1 -1
  316. package/dist/src/core/seal.d.ts +165 -0
  317. package/dist/src/core/sender-identity.d.ts +476 -0
  318. package/dist/src/core/sender-identity.js +572 -0
  319. package/dist/src/core/sender-identity.js.map +1 -0
  320. package/dist/src/core/shlex.d.ts +102 -0
  321. package/dist/src/core/shlex.js +159 -0
  322. package/dist/src/core/shlex.js.map +1 -0
  323. package/dist/src/core/state.d.ts +505 -0
  324. package/dist/src/core/task-file.d.ts +185 -0
  325. package/dist/src/core/telegram-config.d.ts +93 -0
  326. package/dist/src/core/token.d.ts +409 -0
  327. package/dist/src/core/token.js +21 -38
  328. package/dist/src/core/token.js.map +1 -1
  329. package/dist/src/core/validate.d.ts +138 -0
  330. package/dist/src/core/values.d.ts +147 -0
  331. package/dist/src/core/values.js +36 -1
  332. package/dist/src/core/values.js.map +1 -1
  333. package/dist/src/core/vault.d.ts +291 -0
  334. package/dist/src/core/verified-snapshot.d.ts +204 -0
  335. package/dist/src/core/verify.d.ts +336 -0
  336. package/dist/src/core/version.d.ts +8 -0
  337. package/dist/src/core/wysiwys.d.ts +370 -0
  338. package/dist/src/daemon/advance-child.d.ts +39 -0
  339. package/dist/src/daemon/advance.d.ts +476 -0
  340. package/dist/src/daemon/advance.js +25 -4
  341. package/dist/src/daemon/advance.js.map +1 -1
  342. package/dist/src/daemon/audit.d.ts +87 -0
  343. package/dist/src/daemon/daemon.d.ts +1180 -0
  344. package/dist/src/daemon/daemon.js +9 -0
  345. package/dist/src/daemon/daemon.js.map +1 -1
  346. package/dist/src/daemon/dark-session.d.ts +64 -0
  347. package/dist/src/daemon/draw-child.d.ts +36 -0
  348. package/dist/src/daemon/draw.d.ts +154 -0
  349. package/dist/src/daemon/git-evidence.d.ts +173 -0
  350. package/dist/src/daemon/git-evidence.js +1 -1
  351. package/dist/src/daemon/projection.d.ts +180 -0
  352. package/dist/src/daemon/prune.d.ts +207 -0
  353. package/dist/src/mcp/http.d.ts +113 -0
  354. package/dist/src/mcp/server.d.ts +265 -0
  355. package/dist/src/mcp/server.js +17 -1
  356. package/dist/src/mcp/server.js.map +1 -1
  357. package/docs/adapter-api.md +106 -0
  358. package/docs/cli-reference.md +1316 -63
  359. package/docs/codex-enforced-session.md +103 -0
  360. package/docs/codex-workspace-broker.md +118 -0
  361. package/package.json +14 -2
  362. package/schema/codex-instance.schema.json +82 -0
  363. package/schema/event.schema.json +539 -9
  364. package/schema/fixtures/codex-instance/invalid/unpinned-codex-version.json +40 -0
  365. package/schema/fixtures/codex-instance/valid/canonical.json +40 -0
  366. package/schema/fixtures/event/invalid/approval-granted-sender-hashed-false.json +20 -0
  367. package/schema/fixtures/event/invalid/approval-granted-sender-hashed-raw-id.json +20 -0
  368. package/schema/fixtures/event/invalid/audit-gesture-refused-human-actor.json +16 -0
  369. package/schema/fixtures/event/invalid/audit-gesture-refused-no-actor-no-sender.json +15 -0
  370. package/schema/fixtures/event/invalid/audit-gesture-refused-unknown-gesture.json +16 -0
  371. package/schema/fixtures/event/invalid/audit-question-preempted-agent-actor.json +16 -0
  372. package/schema/fixtures/event/invalid/audit-question-preempted-no-question-id.json +16 -0
  373. package/schema/fixtures/event/invalid/audit-question-preempted-unknown-source.json +15 -0
  374. package/schema/fixtures/event/invalid/gate-path-signed-off-absolute-path.json +14 -0
  375. package/schema/fixtures/event/invalid/gate-path-signed-off-agent-actor.json +14 -0
  376. package/schema/fixtures/event/invalid/gate-path-signed-off-missing-path.json +13 -0
  377. package/schema/fixtures/event/valid/approval-granted-sender-hashed.json +20 -0
  378. package/schema/fixtures/event/valid/audit-gesture-refused-review-note.json +21 -0
  379. package/schema/fixtures/event/valid/audit-gesture-refused-sender-key-unavailable.json +19 -0
  380. package/schema/fixtures/event/valid/audit-gesture-refused.json +19 -0
  381. package/schema/fixtures/event/valid/audit-question-preempted-no-verdict.json +16 -0
  382. package/schema/fixtures/event/valid/audit-question-preempted.json +20 -0
  383. package/schema/fixtures/event/valid/gate-path-signed-off.json +14 -0
  384. package/schema/fixtures/event/valid/harness-kind-claude-code.json +23 -0
  385. package/schema/fixtures/event/valid/harness-kind-codex.json +23 -0
  386. package/schema/fixtures/event/valid/harness-kind-cursor.json +23 -0
  387. package/schema/fixtures/event/valid/harness-kind-grok.json +23 -0
  388. package/schema/fixtures/event/valid/harness-kind-muse.json +23 -0
  389. package/schema/fixtures/policy/invalid/senders-half-keyed.json +20 -0
  390. package/schema/fixtures/policy/valid/canonical.json +1 -1
  391. package/schema/fixtures/policy/valid/senders-keyed.json +24 -0
  392. package/schema/fixtures/policy-md/valid/canonical.md +1 -1
  393. package/schema/fixtures/policy-md/valid/with-values.md +5 -7
  394. package/schema/fixtures/values/invalid/class-shaped.json +1 -1
  395. package/schema/fixtures/values/invalid/duplicate-entry.json +1 -1
  396. package/schema/fixtures/values/invalid/non-string-item.json +1 -1
  397. package/schema/fixtures/values/invalid/over-cap.json +1 -1
  398. package/schema/fixtures/values/invalid/unknown-key.json +1 -1
  399. package/schema/fixtures/values/invalid/version-float.json +1 -0
  400. package/schema/fixtures/values/invalid/version-integer.json +1 -0
  401. package/schema/fixtures/values/invalid/version-wrong-string.json +1 -0
  402. package/schema/fixtures/values/valid/empty-lists.json +2 -3
  403. package/schema/fixtures/values/valid/full.json +5 -7
  404. package/schema/fixtures/values/valid/minimal.json +1 -1
  405. package/schema/fixtures/values-md/invalid/schema-invalid.md +5 -3
  406. package/schema/fixtures/values-md/invalid/two-blocks.md +3 -3
  407. package/schema/fixtures/values-md/invalid/unterminated.md +2 -2
  408. package/schema/fixtures/values-md/invalid/version-1.md +69 -0
  409. package/schema/fixtures/values-md/invalid/version-unquoted.md +64 -0
  410. package/schema/fixtures/values-md/invalid/yaml-error.md +2 -2
  411. package/schema/fixtures/values-md/valid/absent.md +1 -1
  412. package/schema/fixtures/values-md/valid/with-values.md +5 -7
  413. package/schema/policy.schema.json +75 -3
  414. package/schema/values.schema.json +7 -11
  415. package/templates/codex/README.md +9 -0
  416. package/schema/fixtures/values/invalid/version-string.json +0 -1
@@ -0,0 +1,107 @@
1
+ /**
2
+ * Help text. SPEC.md §10.1 makes `--help` part of the interface rather than a
3
+ * courtesy: the CLI is how agents use this system, and an agent that has to
4
+ * guess an exit code or a JSON key is an agent that will guess wrong on the one
5
+ * invocation that mattered. Every command therefore documents its flags, its
6
+ * refusal codes and its exact `--json` shape.
7
+ *
8
+ * WHAT A PER-VERB HELP IS (APRV-91): the usage forms, a short paragraph of
9
+ * intent, the flags, the machine-facing contract (`--json` shape, refusal
10
+ * codes), and a two-line footer. What it is NOT is an essay. The frozen
11
+ * exit-code table is printed by `approval --help` and nowhere else, the
12
+ * cross-cutting stances (identity is declared not proved, a refusal is exit 1,
13
+ * a token is shown once, a channel is transport) are stated once at the root,
14
+ * and the long design rationale lives in `docs/cli-reference.md`, which every
15
+ * trimmed help points at by anchor. The prose was moved, not rewritten.
16
+ */
17
+ export declare const ROOT_HELP = "approval \u2014 human approval for agent actions (pre-release)\n\nUsage:\n approval log verify [--log <path>] [--json]\n approval log tail [--log <path>] [-n <count>] [--json]\n approval log export [--log <path>] [--json]\n approval log follow [--log <path>] [--from <seq>] [--cursor-hash <64hex>] --json\n approval instructions [--schemas] [--json]\n approval init [--dir <path>] [--json]\n approval quickstart [--dir <path>] [--api-base <url>] (interactive; no --json)\n approval policy check|test <class> [--reversible true|false] [--policy <path>] [--dir <path>] [--json]\n approval policy attest [--policy <path>] [--dir <path>] [--as human:<id>] [--json]\n approval policy amend [--policy <path>] [--dir <path>] [--log <path>]\n [--as human:<id>] [--require-load] [--dry-run] [--commit]\n [--yes] [--json]\n approval register <task-file> [--as <id>] [--log <path>] [--json]\n approval request <task> --action <key> [--as <id>] [--json]\n approval grant|reject|revoke <action-key> [--note <text>] [--as human:<id>] [--json]\n approval expire <action-key> [--json]\n approval token <action-key> [--policy <path>] [--dir <path>] [--json]\n approval consume <action-key> --token <t> [--payload-hash <64hex>]\n [--as <id>] [--json] (internal)\n approval run <action-key> [--token <t>] [--payload-hash <64hex>]\n [--as <id>] [--no-sandbox] [--json] -- <cmd\u2026>\n approval sandbox [--allow-loopback] [--read-jail] [--log <path>] -- <cmd\u2026>\n approval adapter email <action-key> [--token <t>] --payload <file|->\n [--as <id>] [--vault <path>] [--timeout <ms>] [--json]\n approval adapter agentmail <action-key> [--token <t>] --payload <file|->\n [--as <id>] [--vault <path>] [--timeout <ms>] [--json]\n approval adapter zzz <action-key> [--token <t>] --payload <file|->\n [--as <id>] [--vault <path>] [--timeout <ms>] [--json]\n approval execution resolve <action-key> --outcome completed|failed\n --note \"<text>\" [--as human:<id>] [--json]\n approval execution reconcile <action-key>\n --resolution executed|not-executed\n --note \"<evidence>\" [--as human:<id>] [--json]\n approval audit list|review [<seq|action-key>] [--note \"<text>\"]\n [--as human:<id>] [--all] [--json]\n approval wait <task> --timeout <duration> [--interval <d>]\n [--withdraw-on-timeout] [--json]\n approval withdraw <task> --action <key> [--reason <r>] [--note \"<text>\"]\n [--as <id>] [--json]\n approval queue [--policy <path>] [--dir <path>] [--json]\n approval coverage [--base <ref>] [--head <ref>] [--since <duration>]\n [--source git,gh,agentmail] [--json]\n approval channel cli [--policy-dir <path>] [--payload-dir <path>]\n [--as human:<id>] [--interactive] [--json]\n approval channel web [--port <n>] [--payload-dir <path>] [--as human:<id>]\n [--policy <path>] [--dir <path>] [--log <path>] [--json]\n approval channel telegram listen|health [--once] [--as human:<id>] [--json]\n approval daemon run [--tasks <dir>] [--out <path>] [--interval <duration>]\n [--debounce <duration>] [--once] [--with-channels] [--json]\n approval up [--as human:<id>] [--port <n>] [--no-telegram] [--no-web]\n [--restart-backoff <d>] (plus every daemon run flag)\n approval setup service [--platform launchd|systemd] [--uninstall]\n [--label <name>] [--logs <dir>] [--env-file <path>]\n approval gate open|close|status [--for <d>] [--reason \"<t>\"] [--note \"<t>\"]\n [--as human:<id>] [--log <path>] [--json]\n (open: terminal only, no --json)\n approval status [--policy <path>] [--dir <path>] [--json]\n approval doctor [--log <path>] [--policy <path>] [--dir <path>]\n [--api-base <url>] [--json]\n approval payload hash <file|-> [--json]\n approval payload agentmail-draft <inbox-id> <draft-id> [--api-base <url>]\n [--json]\n approval journal write --message \"<text>\" | - [--task <id>] [--session <id>]\n [--as <id>] [--journal <dir>] [--json]\n approval journal read [--limit <n>] [--since <YYYY-MM-DD>] [--journal <dir>]\n [--json]\n approval values [--policy <path>] [--dir <path>] [--json]\n approval feedback [--task <id>] [--actor <agent id>] [--reaction <word>]\n [--source review|decision] [--since <YYYY-MM-DD>]\n [--limit <n>] [--log <path>] [--json]\n approval env [--check] [--policy <path>] [--dir <path>] [--log <path>]\n [--json]\n approval setup identity|vault|sampling|channel <name>|adapter <name>\n [--as human:<id>] [--api-base <url>] [--policy <path>]\n [--dir <path>] [--log <path>] (interactive; no --json)\n approval vault set <name> [--value-env <VAR>] [--as human:<id>] [--json]\n approval vault list|remove [<name>] [--as human:<id>] [--json]\n approval hook claude-code [--as agent:<id>] [--timeout <duration>]\n [--interval <d>] [--policy <path>] [--dir <path>]\n [--log <path>] (reads PreToolUse JSON)\n approval hook cursor [--as agent:<id>] [--timeout <duration>]\n [--interval <d>] [--policy <path>] [--dir <path>]\n [--log <path>] (reads preToolUse JSON)\n approval hook classify [--json] [--policy <path>] [--dir <path>] -- <command\u2026>\n approval import agents-md <file> [--out <path>] [--json]\n approval codex prepare|setup|doctor|start|serve (strict host workflow)\n approval mcp serve --as agent:<id> [--dir <path>] [--log <path>]\n [--policy <path>] (MCP over stdio; foreground)\n approval reindex [--log <path>] [--index <path>] [--force] [--json]\n approval render [--log <path>] [--out <path>] [--policy <path>]\n [--dir <path>] [--json]\n approval --help\n\nSet up \u2014 make this directory and this machine ready:\n init scaffold a working directory: APPROVAL.md (SPEC.md \u00A75.1's canonical\n policy, to be read and edited), the empty .approval/log/ directory,\n .approval/QUEUE.md in its empty state, and the .gitignore lines for\n the index, the vault, the environment source map and the\n atomic-write temp files. Appends\n nothing, attests nothing, overwrites nothing; a re-run writes\n nothing and reports what already exists\n quickstart ask three decisions, write a solo policy with the named human as\n its sole approver, configure identity and an optional Telegram\n channel, show the exact bytes, then require typed `understood`\n before attesting. HUMAN-ONLY and INTERACTIVE ONLY\n setup the WRITER for that file: \"setup identity|vault|sampling\" and\n \"setup channel <name>\" store each secret in the OS keystore and\n record where it lives, and \"setup adapter <name>\" fills the VAULT\n from the credential manifest the adapter itself declares, then\n proves it against the service without sending anything. The two\n nouns are SPEC.md \u00A74's: a channel holds no state and needs a\n transport credential, an adapter holds the credentials a side\n effect spends. INTERACTIVE ONLY \u2014 it refuses a\n non-terminal stdin and --json, and prints the exact commands to run\n instead, because a setup a pipe could drive would let a CI job\n declare a human identity. It appends nothing to the log, attests\n nothing, and never edits APPROVAL.md\n vault the encrypted credential store adapters read from (SPEC.md \u00A710.4).\n \"vault set|list|remove\" are HUMAN-ONLY; list shows NAMES and never\n values, and there is no \"vault get\" \u2014 a credential's only sanctioned\n journey is from .approval/vault.enc into an adapter, inside the\n verified execution window. The passphrase comes from the environment\n variable the policy NAMES (vault.passphrase_env), never from a flag\n env resolve .approval/env \u2014 the environment SOURCE MAP \u2014 and print an\n export block for your shell to evaluate. THE ONLY VERB THAT READS\n THAT FILE: no command loads it implicitly, because human identity is\n one of the variables it carries and a working-tree file any process\n read on its own would let anything able to write it act as you. The\n default output carries secrets by design; \"env --check\" prints a\n table with no values on any path\n policy explain what APPROVAL.md does with an action class (check | test),\n record a human's sign-off on the policy file (attest), or run the\n whole amendment ceremony \u2014 semantic diff, load advisory,\n attestation, and the two-file git commit \u2014 as one verb (amend)\n import \"import agents-md\" parses an AGENTS.md-style permissions section\n into DRAFT policy classes for a human to confirm (SPEC.md \u00A712). It\n prints; it never writes APPROVAL.md, never logs, never attests\n\nAsk \u2014 an agent declares an action and acts on the answer:\n instructions\n the full AGENT-FACING usage guide: what to declare before acting,\n the register -> request -> wait -> run sequence, what a refusal\n means, and the invariants an agent must not route around. With\n --schemas it prints the verb registry as JSON \u2014 purpose, input and\n output schemas, exit codes and the human-only marker for every verb\n \u2014 which is the same source the optional MCP wrapper (SPEC.md \u00A710.5)\n builds its tools from. Reads nothing, writes nothing\n register validate a task envelope and append task.registered\n request ask the gate to admit a declared action (manual classes append\n approval.requested; supervised/autonomous append nothing and\n proceed straight to execution, per amended SPEC.md \u00A76.3)\n token report whether a live single-use execution token exists for an\n action (the RAW token is printed once, by grant, and stored nowhere)\n consume spend a token and append execution.started (internal plumbing;\n \"approval run\" wraps it)\n run execute a command behind the gate: appends execution.started before\n spawning it, execution.completed/failed with the child's exit code\n after, and exits with that same code\n adapter execute an action through a side-effect adapter, the hard\n boundary of SPEC.md \u00A710.4. \"adapter email\" sends one RFC 5322\n message over SMTP for a communicate.email.external action: the\n credentials come from the vault inside the execution window, the\n payload is the bytes the declaration or grant bound to, and the\n runtime recomputes the hash, applies policy, and writes both\n execution events around the send. Manual and selected-live paths\n require --token; policy-authorized supervised/autonomous paths do\n not mint one. \"adapter agentmail\" serves the\n same class over the AgentMail API: a direct send, or the send of a\n draft the agent composed, refused if the draft changed after the\n snapshot a human approved\n wait block until a task's requests are decided; the exit code IS the\n decision (0 granted, 1 rejected/revoked/withdrawn, 3 expired, 6 timeout)\n withdraw take back your OWN pending request (timeout, cancelled, superseded);\n terminal, requester-only, and a late grant then authorizes nothing\n hook put the gate in front of an agent HARNESS. \"hook claude-code\" and\n \"hook cursor\" each read their harness's pre-tool event on stdin,\n classify the command or protected-path edit it is about to run,\n resolve the class against APPROVAL.md, and answer allow or deny \u2014\n waiting on a real approval decision when the class is manual. They\n never answer \"ask\": a decision taken outside the log is a decision\n nothing can audit. \"hook classify\" prints what the classifier makes\n of a command and touches nothing\n journal the one channel the gate does NOT stand in front of. \"journal write\"\n appends free text to a local file \u2014 ungated, unclassified, never\n approvable and never deniable, with no event in the log \u2014 so an\n agent can say \"I am complying and I think this is wrong\", \"this\n reads as odd to me\", or \"I am stuck\" even when it is complying\n perfectly. \"journal read\" is the human side, and it labels every\n entry as agent-authored DATA. Nothing written there changes any\n verdict, sampling probability or budget; it is signal for the\n operator, not a decision surface\n values the mirror of \"journal\", running the other way: the operator's own\n words, in the optional values block of APPROVAL.md. What they value\n in the work, what they want from an agent, and how they read and\n answer. It is GUIDANCE and never policy: it grants nothing, forbids\n nothing, and no enforcement path reads it. A file with no block says\n so in words, because \"nothing was declared\" and \"I did not look\" are\n different facts\n feedback the same channel in the other direction: what the OPERATOR said\n about the work. Lists the reactions and notes a person wrote on a\n grant or on a retrospective review, joined to the class, the task,\n the action key and the agent it was about. HUMAN-AUTHORED GUIDANCE\n and never policy \u2014 it grants nothing, forbids nothing, and changes\n no verdict, sampling probability or budget. Reads a verified log\n and writes nothing\n mcp \"mcp serve\" is the optional MCP wrapper of SPEC.md \u00A710.5: the same\n verbs as tools, over stdio, sharing the CLI's code paths. It is\n AGENT-FACING ONLY \u2014 grant, reject, revoke, attest, amend, vault,\n setup, audit review, expire, execution resolve|reconcile and the\n channels are not published, because an MCP client is an agent's\n harness and SPEC.md \u00A711 makes the agent the untrusted policy. It\n runs as ONE agent identity, fixed at startup, that nothing changes\n\nDecide \u2014 a human answers, and only a human can:\n queue the pending-decision INBOX: requests awaiting a human, inside their\n TTL. Nothing else \u2014 exit 0 always when the log could be read\n grant record a human approval (HUMAN-ONLY)\n reject record a human refusal (HUMAN-ONLY)\n revoke withdraw an unexecuted approval (HUMAN-ONLY)\n expire lapse a request whose TTL passed (system verb, actor system:gate)\n execution recovery verbs for executions the runtime could not close itself.\n \"execution resolve\" records the outcome a HUMAN OBSERVED for a\n dangling execution: mandatory --note, human-only, exit_code null,\n attested_by_human true. \"execution reconcile\" records what a human\n ESTABLISHED about an INDETERMINATE one \u2014 a side effect that was\n attempted and whose outcome nobody knows \u2014 from the relying party's\n evidence, naming the record it resolves and rewriting nothing.\n Neither requires attestation: both record a fact a human observed\n and exercise no policy authority\n audit \"audit list\" is the open sampled-audit backlog and \"audit review\" is\n the HUMAN-ONLY verb that closes one item of it. Sampling itself has\n no verb: the daemon selects supervised actions with an operator-held\n secret, because a caller who could sample could also decline to\n sample itself\n channel put pending requests in front of a human over the channel contract.\n \"channel cli\" renders the queue with [computed]/[claimed] markers and\n the full payload in delimiters, and with a terminal collects\n decisions through the same human-only gate as grant/reject.\n \"channel telegram listen\" delivers the queue to a Telegram chat on\n every poll cycle (including requests that arrive while it runs) and\n long-polls for Approve/Reject taps; config is environment-only\n (APPROVAL_TG_TOKEN, APPROVAL_TG_CHAT)\n\nInspect \u2014 what the log says, and whether anything needs repair:\n log inspect the append-only event log (verify | tail | export)\n status system HEALTH: attestation, dangling executions, budget headroom,\n the latest chain verdict, loop escalations. Exit 1 when any of\n those needs attention. queue is what a human must answer; status is\n what an operator must fix, and neither carries the other's content\n coverage what the witnesses this project does NOT write (git, gh, a\n provider's own record) say happened, joined to the verified log:\n per effect, the evidence seq or none. INFORMATIONAL \u2014 exit 0 with\n or without gaps, because a coverage measurement is not a verdict\n doctor is this ENVIRONMENT sane? build freshness, declared identity, policy\n attestation, chain health, the Telegram token, the web port \u2014 each\n with a concrete repair. status asks whether the SYSTEM needs\n attention; doctor asks whether the machine you are typing on can run\n the system at all. Appends nothing, sends nothing, repairs nothing\n render regenerate .approval/QUEUE.md, the READ-ONLY markdown queue\n projection (SPEC.md \u00A79.1): pending requests and the sampled-audit\n backlog, computed and claimed fields visibly distinguished. The\n screenshot, never the truth \u2014 editing it authorizes nothing\n reindex rebuild the SQLite index projection from the log\n payload \"payload hash\" prints the payload_hash of a JSON document (SHA-256\n over its RFC 8785 canonical serialization), the value a declaration\n carries and a grant binds to. Most flows never need it: \"request\n --payload\" hashes, verifies and stores the bytes in one step.\n \"payload agentmail-draft\" snapshots one AgentMail draft with the\n AGENT's key, so a human approves the words and not a draft id\n daemon \"daemon run\" is the watch loop of SPEC.md \u00A710.2, in the FOREGROUND:\n it records envelope.drift when a task file's state: contradicts the\n log, appends approval.expired for lapsed requests, writes the log's\n state back into the task files, regenerates QUEUE.md, and surfaces\n loop escalations. It holds no lock; backgrounding is the operator's\n business in v0.1\n up the AMBIENT RUNTIME: that same daemon loop plus every channel the\n policy configures, in ONE supervised foreground process. A channel\n whose credential is unset is not started and says so in doctor's\n vocabulary; a channel that falls over is restarted with a doubling\n backoff and the daemon loop carries on. \"approval setup service\"\n writes the launchd or systemd user unit that runs it at login\n\nDefaults:\n log .approval/log/events.jsonl (relative to the working directory)\n index .approval/index.sqlite\n queue .approval/QUEUE.md\n payloads .approval/payloads/<payload_hash>.json (the bytes a request bound\n to, written by request --payload; read by render and every channel,\n and re-hashed on every read)\n env .approval/env (the environment SOURCE MAP: KEY=keychain:<service> /\n secret-service:<label> / env: / a plaintext literal. Mode 0600, and read\n by exactly one command, \"approval env\". GITIGNORED by init)\n journal .approval-journal/YYYY-MM-DD.jsonl (the ungated free-text channel of\n \"journal write\". OUTSIDE the approval home on purpose: everything under\n .approval/ is the gate's own, and an outlet the gate could close is not\n an outlet. Nothing the runtime reads is ever stored there. Gitignored)\n vault .approval/vault.enc (AES-256-GCM over the named credentials; written\n only by \"vault set|remove\", read only by an adapter inside a verified\n token window. GITIGNORE IT \u2014 doctor fails if you have not)\n\nExit codes (frozen public API):\n 0 success\n 1 integrity failure (corrupt log)\n 2 usage error\n 3 torn tail\n 4 I/O error (unreadable/unwritable path; never reported as corruption)\n\nTwo codes are ADDITIONS to the table above, each emitted by exactly one verb:\n5 by \"approval run\" when no valid execution token was presented (nothing is\nappended), and 6 by \"approval wait\" on timeout. Nothing in 0\u20134 changed meaning.\nThis table is printed HERE and nowhere else; a verb's own --help names only the\ncodes that are peculiar to it.\n\nMachine-readable output: every command accepts --json and prints exactly one\nJSON object per invocation. Run \"approval <command> --help\" for that command's\nexact shape.\nWith --json, usage and I/O failures print {\"error\":{\"code\",\"message\"}} to\nstderr and nothing to stdout.\n\nThe stances every verb inherits, stated once:\n\n THE LOG IS APPEND-ONLY. \"policy attest\" and the gate verbs (register, request,\n grant, reject, revoke, expire) each append at most one event per invocation; a\n torn tail is reported, never repaired, and nothing ever rewrites a line.\n\n A GATE REFUSAL exits 1, NOT 2 \u2014 an illegal transition, an expired request, an\n unattested policy, a failed budget. The command was well-formed; the answer is\n no. With --json, error.code names the refusal, and retrying with different\n flags is the wrong repair.\n\n IDENTITY IS CONFIG-DECLARED (SPEC.md \u00A711). The actor comes from --as or\n APPROVAL_HUMAN and nothing authenticates it; the trust boundary is the local\n machine. What the log proves is that someone with local control acted, not\n who. grant, reject, revoke and every human-only verb require human:<id>;\n expire is the system verb and takes no identity.\n\n APPROVAL EVENTS ARE EXCLUSIVE TO THE MANUAL PATH (amended SPEC.md \u00A76.3). An\n action resolving to supervised or autonomous emits no approval.requested and\n no approval.granted: \"approval request\" appends nothing and reports\n proceed:true, and its authorization is the execution.started event. Do not\n wait for a grant that will never come.\n\n THE RAW EXECUTION TOKEN IS SHOWN ONCE, BY \"approval grant\". The log records\n only its SHA-256, so nothing can recover it \u2014 not \"approval token\", not the\n log, not the index. If it is lost, revoke the grant and request again.\n\n A CHANNEL IS TRANSPORT. It renders what the runtime derived and reports the\n gesture a human made; it decides nothing, holds no state, writes no log line\n and never sees a token. Every field it shows is marked [computed] (the runtime\n derived it) or [claimed] (the party under oversight wrote it), per SPEC.md \u00A79.\n\nThe reasoning behind each verb \u2014 threat models, the design points that surprise\npeople, the alternatives that were rejected \u2014 is in docs/cli-reference.md.";
18
+ export declare const INSTRUCTIONS_HELP: string;
19
+ export declare const LOG_HELP: string;
20
+ export declare const FOLLOW_HELP: string;
21
+ export declare const LOG_SYNC_HELP: string;
22
+ export declare const LOG_ADVANCE_HELP: string;
23
+ export declare const VERIFY_HELP: string;
24
+ export declare const LOG_CHECKPOINT_HELP: string;
25
+ export declare const TAIL_HELP: string;
26
+ export declare const EXPORT_HELP: string;
27
+ export declare const POLICY_HELP: string;
28
+ export declare const POLICY_APPLY_HELP: string;
29
+ export declare const POLICY_CHECK_HELP: string;
30
+ export declare const POLICY_TEST_HELP: string;
31
+ export declare const POLICY_ATTEST_HELP: string;
32
+ export declare const POLICY_AMEND_HELP: string;
33
+ export declare const REGISTER_HELP: string;
34
+ export declare const REQUEST_HELP: string;
35
+ export declare const GRANT_HELP: string;
36
+ export declare const REJECT_HELP: string;
37
+ export declare const REVOKE_HELP: string;
38
+ export declare const WITHDRAW_HELP: string;
39
+ export declare const EXPIRE_HELP: string;
40
+ export declare const GATE_WINDOW_HELP: string;
41
+ export declare const REINDEX_HELP: string;
42
+ export declare const TOKEN_HELP: string;
43
+ export declare const CONSUME_HELP: string;
44
+ export declare const RUN_HELP: string;
45
+ export declare const SANDBOX_HELP: string;
46
+ export declare const WAIT_HELP: string;
47
+ export declare const QUEUE_HELP: string;
48
+ export declare const STATUS_HELP: string;
49
+ export declare const COVERAGE_HELP: string;
50
+ export declare const DOCTOR_HELP: string;
51
+ export declare const AUDIT_HELP: string;
52
+ export declare const AUDIT_LIST_HELP: string;
53
+ export declare const AUDIT_REVIEW_HELP: string;
54
+ export declare const AUDIT_OBLIGATIONS_HELP: string;
55
+ export declare const AUDIT_RECONCILE_HELP: string;
56
+ export declare const EXECUTION_HELP: string;
57
+ export declare const RESOLVE_HELP: string;
58
+ export declare const RECONCILE_HELP: string;
59
+ export declare const CHANNEL_HELP: string;
60
+ export declare const CHANNEL_CLI_HELP: string;
61
+ export declare const WEB_HELP: string;
62
+ export declare const INIT_HELP: string;
63
+ export declare const QUICKSTART_HELP: string;
64
+ export declare const HOOK_HELP: string;
65
+ export declare const HOOK_GROK_HELP: string;
66
+ export declare const HOOK_MUSE_HELP: string;
67
+ export declare const IMPORT_HELP: string;
68
+ export declare const IMPORT_AGENTS_MD_HELP: string;
69
+ export declare const PAYLOAD_HELP: string;
70
+ export declare const PAYLOAD_HASH_HELP: string;
71
+ export declare const PAYLOAD_AGENTMAIL_DRAFT_HELP: string;
72
+ export declare const JOURNAL_HELP: string;
73
+ export declare const JOURNAL_WRITE_HELP: string;
74
+ export declare const JOURNAL_READ_HELP: string;
75
+ export declare const VALUES_HELP: string;
76
+ export declare const FEEDBACK_HELP: string;
77
+ export declare const RENDER_HELP: string;
78
+ export declare const TELEGRAM_HELP: string;
79
+ export declare const TELEGRAM_LISTEN_HELP: string;
80
+ export declare const TELEGRAM_HEALTH_HELP: string;
81
+ export declare const DAEMON_HELP: string;
82
+ export declare const DAEMON_RUN_HELP: string;
83
+ export declare const UP_HELP: string;
84
+ export declare const VAULT_HELP: string;
85
+ export declare const VAULT_SET_HELP: string;
86
+ export declare const VAULT_LIST_HELP: string;
87
+ export declare const VAULT_REMOVE_HELP: string;
88
+ export declare const ADAPTER_HELP: string;
89
+ export declare const ADAPTER_EMAIL_HELP: string;
90
+ export declare const ADAPTER_AGENTMAIL_HELP: string;
91
+ export declare const ADAPTER_ZZZ_HELP: string;
92
+ export declare const ENV_HELP: string;
93
+ export declare const SETUP_HELP: string;
94
+ export declare const SETUP_IDENTITY_HELP: string;
95
+ export declare const SETUP_VAULT_HELP: string;
96
+ export declare const SETUP_SAMPLING_HELP: string;
97
+ export declare const SETUP_SENDER_KEY_HELP: string;
98
+ export declare const SETUP_CHECKPOINT_HELP: string;
99
+ export declare const SETUP_ADAPTER_HELP: string;
100
+ export declare const SETUP_ADAPTER_EMAIL_HELP: string;
101
+ export declare const SETUP_ADAPTER_AGENTMAIL_HELP: string;
102
+ export declare const SETUP_ADAPTER_ZZZ_HELP: string;
103
+ export declare const SETUP_CHANNEL_HELP: string;
104
+ export declare const SETUP_CHANNEL_TELEGRAM_HELP: string;
105
+ export declare const SETUP_SERVICE_HELP: string;
106
+ export declare const CODEX_HELP = "approval codex \u2014 prepare a constrained Codex host and broker its workspace writes\n\nUsage:\n approval codex prepare --instance <id> --workspace <abs> --primary <abs>\n --install-root <abs> --output <new-dir> --codex <abs> --node <abs> [--json]\n approval codex setup --check <bundle-dir> [--json]\n approval codex doctor --strict --manifest <abs> [--json]\n approval codex apply --manifest <abs> --proposal <file> [--json]\n [--token <class>=<token>]... [--require-exclusive-custody]\n approval codex serve|recover --manifest <abs> [--json]\n approval codex start --manifest <abs> [--timeout <dur>] [--json] [-- <cmd>...]\n\nprepare, setup --check and doctor are the inert half: a review bundle, its exact\nfile set and hashes, and host custody, executing no manifest binary. apply is the\nBROKER: a bounded create/replace/delete/move proposal, ONE ACTION PER PATH CLASS,\ngate-authorized, every leg started before any byte moves, then staged, journaled\nand applied under a workspace lock; the MANIFEST supplies actor, root, policy and\nlog. recover READS a retained journal, repairing nothing. serve is EXACTLY ONE MCP\ntool, separate from `approval mcp serve`. start CONFINES a shell: one disposable\nwritable path, read-only gate and workspace, no credentials, no egress, NO OPT-OUT.\n\nexit codes: approval --help (1: the boundary is absent, invalid, or the workspace mixed)\nWith --json, usage and I/O failures print {\"error\":{\"code\",\"message\"}} to\nstderr and nothing to stdout.\nwhy: docs/cli-reference.md#constrained-codex-preparation";
107
+ export declare const MCP_HELP: string;