@wjarka/cezarion 0.10.0-pr30.54

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 (478) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +838 -0
  3. package/dist/agent-config/account-identity.d.ts +44 -0
  4. package/dist/agent-config/account-identity.js +128 -0
  5. package/dist/agent-config/account-identity.js.map +1 -0
  6. package/dist/agent-config/catalog.d.ts +72 -0
  7. package/dist/agent-config/catalog.js +223 -0
  8. package/dist/agent-config/catalog.js.map +1 -0
  9. package/dist/agent-config/files.d.ts +46 -0
  10. package/dist/agent-config/files.js +119 -0
  11. package/dist/agent-config/files.js.map +1 -0
  12. package/dist/agent-config/model-settings/claude.d.ts +2 -0
  13. package/dist/agent-config/model-settings/claude.js +11 -0
  14. package/dist/agent-config/model-settings/claude.js.map +1 -0
  15. package/dist/agent-config/model-settings/codex.d.ts +2 -0
  16. package/dist/agent-config/model-settings/codex.js +16 -0
  17. package/dist/agent-config/model-settings/codex.js.map +1 -0
  18. package/dist/agent-config/model-settings/opencode.d.ts +2 -0
  19. package/dist/agent-config/model-settings/opencode.js +8 -0
  20. package/dist/agent-config/model-settings/opencode.js.map +1 -0
  21. package/dist/agent-config/model-settings/pi.d.ts +12 -0
  22. package/dist/agent-config/model-settings/pi.js +18 -0
  23. package/dist/agent-config/model-settings/pi.js.map +1 -0
  24. package/dist/agent-config/model-settings/shared.d.ts +9 -0
  25. package/dist/agent-config/model-settings/shared.js +93 -0
  26. package/dist/agent-config/model-settings/shared.js.map +1 -0
  27. package/dist/agent-config/model-settings/types.d.ts +9 -0
  28. package/dist/agent-config/model-settings/types.js +2 -0
  29. package/dist/agent-config/model-settings/types.js.map +1 -0
  30. package/dist/agent-config/models.d.ts +9 -0
  31. package/dist/agent-config/models.js +32 -0
  32. package/dist/agent-config/models.js.map +1 -0
  33. package/dist/agent-config/seed.d.ts +7 -0
  34. package/dist/agent-config/seed.js +90 -0
  35. package/dist/agent-config/seed.js.map +1 -0
  36. package/dist/agent-config/service.d.ts +44 -0
  37. package/dist/agent-config/service.js +71 -0
  38. package/dist/agent-config/service.js.map +1 -0
  39. package/dist/agent-config/validate.d.ts +21 -0
  40. package/dist/agent-config/validate.js +76 -0
  41. package/dist/agent-config/validate.js.map +1 -0
  42. package/dist/automations/coordinator.d.ts +26 -0
  43. package/dist/automations/coordinator.js +66 -0
  44. package/dist/automations/coordinator.js.map +1 -0
  45. package/dist/automations/github-poller.d.ts +74 -0
  46. package/dist/automations/github-poller.js +234 -0
  47. package/dist/automations/github-poller.js.map +1 -0
  48. package/dist/automations/scheduler.d.ts +42 -0
  49. package/dist/automations/scheduler.js +192 -0
  50. package/dist/automations/scheduler.js.map +1 -0
  51. package/dist/automations/store.d.ts +65 -0
  52. package/dist/automations/store.js +298 -0
  53. package/dist/automations/store.js.map +1 -0
  54. package/dist/automations/task-template.d.ts +18 -0
  55. package/dist/automations/task-template.js +95 -0
  56. package/dist/automations/task-template.js.map +1 -0
  57. package/dist/automations/types.d.ts +255 -0
  58. package/dist/automations/types.js +159 -0
  59. package/dist/automations/types.js.map +1 -0
  60. package/dist/config.d.ts +77 -0
  61. package/dist/config.js +242 -0
  62. package/dist/config.js.map +1 -0
  63. package/dist/contract/agent-config.d.ts +153 -0
  64. package/dist/contract/agent-profiles.d.ts +347 -0
  65. package/dist/contract/automations.d.ts +935 -0
  66. package/dist/contract/events.d.ts +104 -0
  67. package/dist/contract/github.d.ts +556 -0
  68. package/dist/contract/health.d.ts +102 -0
  69. package/dist/contract/index.d.ts +16 -0
  70. package/dist/contract/index.js +1895 -0
  71. package/dist/contract/projects.d.ts +210 -0
  72. package/dist/contract/repo.d.ts +234 -0
  73. package/dist/contract/runs.d.ts +1473 -0
  74. package/dist/contract/skills.d.ts +232 -0
  75. package/dist/contract/workflows.d.ts +218 -0
  76. package/dist/contract/workspace.d.ts +579 -0
  77. package/dist/core/agent-env.d.ts +31 -0
  78. package/dist/core/agent-env.js +371 -0
  79. package/dist/core/agent-env.js.map +1 -0
  80. package/dist/core/agent-model-policy.d.ts +10 -0
  81. package/dist/core/agent-model-policy.js +36 -0
  82. package/dist/core/agent-model-policy.js.map +1 -0
  83. package/dist/core/agent-profiles.d.ts +62 -0
  84. package/dist/core/agent-profiles.js +90 -0
  85. package/dist/core/agent-profiles.js.map +1 -0
  86. package/dist/core/agent-runner.d.ts +211 -0
  87. package/dist/core/agent-runner.js +68 -0
  88. package/dist/core/agent-runner.js.map +1 -0
  89. package/dist/core/ask.d.ts +105 -0
  90. package/dist/core/ask.js +187 -0
  91. package/dist/core/ask.js.map +1 -0
  92. package/dist/core/backend-detect.d.ts +16 -0
  93. package/dist/core/backend-detect.js +155 -0
  94. package/dist/core/backend-detect.js.map +1 -0
  95. package/dist/core/claude-cli-runner.d.ts +59 -0
  96. package/dist/core/claude-cli-runner.js +483 -0
  97. package/dist/core/claude-cli-runner.js.map +1 -0
  98. package/dist/core/claude-ui-mapper.d.ts +80 -0
  99. package/dist/core/claude-ui-mapper.js +598 -0
  100. package/dist/core/claude-ui-mapper.js.map +1 -0
  101. package/dist/core/codex-app-server-runner.d.ts +41 -0
  102. package/dist/core/codex-app-server-runner.js +584 -0
  103. package/dist/core/codex-app-server-runner.js.map +1 -0
  104. package/dist/core/codex-app-server-transport.d.ts +35 -0
  105. package/dist/core/codex-app-server-transport.js +150 -0
  106. package/dist/core/codex-app-server-transport.js.map +1 -0
  107. package/dist/core/codex-model-catalog.d.ts +10 -0
  108. package/dist/core/codex-model-catalog.js +110 -0
  109. package/dist/core/codex-model-catalog.js.map +1 -0
  110. package/dist/core/codex-ui-mapper.d.ts +112 -0
  111. package/dist/core/codex-ui-mapper.js +766 -0
  112. package/dist/core/codex-ui-mapper.js.map +1 -0
  113. package/dist/core/model-identity.d.ts +125 -0
  114. package/dist/core/model-identity.js +132 -0
  115. package/dist/core/model-identity.js.map +1 -0
  116. package/dist/core/model-presets.d.ts +21 -0
  117. package/dist/core/model-presets.js +81 -0
  118. package/dist/core/model-presets.js.map +1 -0
  119. package/dist/core/ndjson.d.ts +6 -0
  120. package/dist/core/ndjson.js +23 -0
  121. package/dist/core/ndjson.js.map +1 -0
  122. package/dist/core/opencode-model-catalog.d.ts +32 -0
  123. package/dist/core/opencode-model-catalog.js +153 -0
  124. package/dist/core/opencode-model-catalog.js.map +1 -0
  125. package/dist/core/opencode-server-runner.d.ts +32 -0
  126. package/dist/core/opencode-server-runner.js +882 -0
  127. package/dist/core/opencode-server-runner.js.map +1 -0
  128. package/dist/core/opencode-ui-mapper.d.ts +137 -0
  129. package/dist/core/opencode-ui-mapper.js +800 -0
  130. package/dist/core/opencode-ui-mapper.js.map +1 -0
  131. package/dist/core/pi-model-catalog.d.ts +31 -0
  132. package/dist/core/pi-model-catalog.js +152 -0
  133. package/dist/core/pi-model-catalog.js.map +1 -0
  134. package/dist/core/pi-runner.d.ts +24 -0
  135. package/dist/core/pi-runner.js +403 -0
  136. package/dist/core/pi-runner.js.map +1 -0
  137. package/dist/core/pi-ui-mapper.d.ts +36 -0
  138. package/dist/core/pi-ui-mapper.js +304 -0
  139. package/dist/core/pi-ui-mapper.js.map +1 -0
  140. package/dist/core/process-usage.d.ts +66 -0
  141. package/dist/core/process-usage.js +193 -0
  142. package/dist/core/process-usage.js.map +1 -0
  143. package/dist/core/provider-auth.d.ts +154 -0
  144. package/dist/core/provider-auth.js +509 -0
  145. package/dist/core/provider-auth.js.map +1 -0
  146. package/dist/core/provider-availability.d.ts +3 -0
  147. package/dist/core/provider-availability.js +14 -0
  148. package/dist/core/provider-availability.js.map +1 -0
  149. package/dist/core/runner-factory.d.ts +8 -0
  150. package/dist/core/runner-factory.js +25 -0
  151. package/dist/core/runner-factory.js.map +1 -0
  152. package/dist/core/runner-model-catalog.d.ts +29 -0
  153. package/dist/core/runner-model-catalog.js +78 -0
  154. package/dist/core/runner-model-catalog.js.map +1 -0
  155. package/dist/core/secret-redaction.d.ts +37 -0
  156. package/dist/core/secret-redaction.js +115 -0
  157. package/dist/core/secret-redaction.js.map +1 -0
  158. package/dist/core/shell-env.d.ts +28 -0
  159. package/dist/core/shell-env.js +56 -0
  160. package/dist/core/shell-env.js.map +1 -0
  161. package/dist/core/tool-display.d.ts +31 -0
  162. package/dist/core/tool-display.js +179 -0
  163. package/dist/core/tool-display.js.map +1 -0
  164. package/dist/core/ui-events.d.ts +335 -0
  165. package/dist/core/ui-events.js +25 -0
  166. package/dist/core/ui-events.js.map +1 -0
  167. package/dist/core/usage-limit.d.ts +42 -0
  168. package/dist/core/usage-limit.js +209 -0
  169. package/dist/core/usage-limit.js.map +1 -0
  170. package/dist/core/usage.d.ts +11 -0
  171. package/dist/core/usage.js +15 -0
  172. package/dist/core/usage.js.map +1 -0
  173. package/dist/core/v1-text-coalescer.d.ts +36 -0
  174. package/dist/core/v1-text-coalescer.js +72 -0
  175. package/dist/core/v1-text-coalescer.js.map +1 -0
  176. package/dist/git-diff-base.d.ts +85 -0
  177. package/dist/git-diff-base.js +180 -0
  178. package/dist/git-diff-base.js.map +1 -0
  179. package/dist/git-refs.d.ts +11 -0
  180. package/dist/git-refs.js +14 -0
  181. package/dist/git-refs.js.map +1 -0
  182. package/dist/git-worktree.d.ts +161 -0
  183. package/dist/git-worktree.js +508 -0
  184. package/dist/git-worktree.js.map +1 -0
  185. package/dist/handoff.d.ts +62 -0
  186. package/dist/handoff.js +154 -0
  187. package/dist/handoff.js.map +1 -0
  188. package/dist/index.d.ts +2 -0
  189. package/dist/index.js +680 -0
  190. package/dist/index.js.map +1 -0
  191. package/dist/install-as-command.d.ts +40 -0
  192. package/dist/install-as-command.js +52 -0
  193. package/dist/install-as-command.js.map +1 -0
  194. package/dist/pack-check.d.ts +17 -0
  195. package/dist/pack-check.js +27 -0
  196. package/dist/pack-check.js.map +1 -0
  197. package/dist/paths.d.ts +140 -0
  198. package/dist/paths.js +192 -0
  199. package/dist/paths.js.map +1 -0
  200. package/dist/planner.d.ts +27 -0
  201. package/dist/planner.js +268 -0
  202. package/dist/planner.js.map +1 -0
  203. package/dist/release/manifests.d.ts +81 -0
  204. package/dist/release/manifests.js +74 -0
  205. package/dist/release/manifests.js.map +1 -0
  206. package/dist/release/snapshot.d.ts +67 -0
  207. package/dist/release/snapshot.js +97 -0
  208. package/dist/release/snapshot.js.map +1 -0
  209. package/dist/release/stable.d.ts +38 -0
  210. package/dist/release/stable.js +55 -0
  211. package/dist/release/stable.js.map +1 -0
  212. package/dist/runs/agent-tmpdir.d.ts +41 -0
  213. package/dist/runs/agent-tmpdir.js +183 -0
  214. package/dist/runs/agent-tmpdir.js.map +1 -0
  215. package/dist/runs/auto-name.d.ts +75 -0
  216. package/dist/runs/auto-name.js +179 -0
  217. package/dist/runs/auto-name.js.map +1 -0
  218. package/dist/runs/event-history.d.ts +50 -0
  219. package/dist/runs/event-history.js +613 -0
  220. package/dist/runs/event-history.js.map +1 -0
  221. package/dist/runs/retention.d.ts +60 -0
  222. package/dist/runs/retention.js +86 -0
  223. package/dist/runs/retention.js.map +1 -0
  224. package/dist/runs/review-gate.d.ts +18 -0
  225. package/dist/runs/review-gate.js +21 -0
  226. package/dist/runs/review-gate.js.map +1 -0
  227. package/dist/runs/run-index.d.ts +19 -0
  228. package/dist/runs/run-index.js +43 -0
  229. package/dist/runs/run-index.js.map +1 -0
  230. package/dist/runs/store.d.ts +446 -0
  231. package/dist/runs/store.js +1118 -0
  232. package/dist/runs/store.js.map +1 -0
  233. package/dist/runs/task-markers.d.ts +28 -0
  234. package/dist/runs/task-markers.js +74 -0
  235. package/dist/runs/task-markers.js.map +1 -0
  236. package/dist/runs/task-refs.d.ts +25 -0
  237. package/dist/runs/task-refs.js +74 -0
  238. package/dist/runs/task-refs.js.map +1 -0
  239. package/dist/runs/ui-event-sink.d.ts +81 -0
  240. package/dist/runs/ui-event-sink.js +210 -0
  241. package/dist/runs/ui-event-sink.js.map +1 -0
  242. package/dist/server/app-type.d.ts +21 -0
  243. package/dist/server/app-type.js +2 -0
  244. package/dist/server/app-type.js.map +1 -0
  245. package/dist/server/capabilities.d.ts +70 -0
  246. package/dist/server/capabilities.js +152 -0
  247. package/dist/server/capabilities.js.map +1 -0
  248. package/dist/server/checkout.d.ts +128 -0
  249. package/dist/server/checkout.js +296 -0
  250. package/dist/server/checkout.js.map +1 -0
  251. package/dist/server/forge/github.d.ts +513 -0
  252. package/dist/server/forge/github.js +2364 -0
  253. package/dist/server/forge/github.js.map +1 -0
  254. package/dist/server/forge/index.d.ts +40 -0
  255. package/dist/server/forge/index.js +72 -0
  256. package/dist/server/forge/index.js.map +1 -0
  257. package/dist/server/forge/types.d.ts +242 -0
  258. package/dist/server/forge/types.js +2 -0
  259. package/dist/server/forge/types.js.map +1 -0
  260. package/dist/server/fs-browse.d.ts +105 -0
  261. package/dist/server/fs-browse.js +182 -0
  262. package/dist/server/fs-browse.js.map +1 -0
  263. package/dist/server/git-changes.d.ts +213 -0
  264. package/dist/server/git-changes.js +555 -0
  265. package/dist/server/git-changes.js.map +1 -0
  266. package/dist/server/git.d.ts +28 -0
  267. package/dist/server/git.js +112 -0
  268. package/dist/server/git.js.map +1 -0
  269. package/dist/server/github.d.ts +9 -0
  270. package/dist/server/github.js +8 -0
  271. package/dist/server/github.js.map +1 -0
  272. package/dist/server/launch-key.d.ts +7 -0
  273. package/dist/server/launch-key.js +33 -0
  274. package/dist/server/launch-key.js.map +1 -0
  275. package/dist/server/open-in-app.d.ts +66 -0
  276. package/dist/server/open-in-app.js +211 -0
  277. package/dist/server/open-in-app.js.map +1 -0
  278. package/dist/server/open-in-terminal.d.ts +70 -0
  279. package/dist/server/open-in-terminal.js +179 -0
  280. package/dist/server/open-in-terminal.js.map +1 -0
  281. package/dist/server/pr.d.ts +7 -0
  282. package/dist/server/pr.js +7 -0
  283. package/dist/server/pr.js.map +1 -0
  284. package/dist/server/project-context.d.ts +120 -0
  285. package/dist/server/project-context.js +182 -0
  286. package/dist/server/project-context.js.map +1 -0
  287. package/dist/server/provider-action-gate.d.ts +8 -0
  288. package/dist/server/provider-action-gate.js +56 -0
  289. package/dist/server/provider-action-gate.js.map +1 -0
  290. package/dist/server/provider-auth-runtime.d.ts +21 -0
  291. package/dist/server/provider-auth-runtime.js +66 -0
  292. package/dist/server/provider-auth-runtime.js.map +1 -0
  293. package/dist/server/server.d.ts +13138 -0
  294. package/dist/server/server.js +5263 -0
  295. package/dist/server/server.js.map +1 -0
  296. package/dist/server/static-ui.d.ts +49 -0
  297. package/dist/server/static-ui.js +92 -0
  298. package/dist/server/static-ui.js.map +1 -0
  299. package/dist/server/validators.d.ts +97 -0
  300. package/dist/server/validators.js +86 -0
  301. package/dist/server/validators.js.map +1 -0
  302. package/dist/server/ws.d.ts +85 -0
  303. package/dist/server/ws.js +218 -0
  304. package/dist/server/ws.js.map +1 -0
  305. package/dist/server/wsl.d.ts +25 -0
  306. package/dist/server/wsl.js +92 -0
  307. package/dist/server/wsl.js.map +1 -0
  308. package/dist/server-install/engine.d.ts +50 -0
  309. package/dist/server-install/engine.js +324 -0
  310. package/dist/server-install/engine.js.map +1 -0
  311. package/dist/server-install/platforms/macosx-ngrok.d.ts +6 -0
  312. package/dist/server-install/platforms/macosx-ngrok.js +345 -0
  313. package/dist/server-install/platforms/macosx-ngrok.js.map +1 -0
  314. package/dist/server-install/platforms/ubuntu-vps.d.ts +78 -0
  315. package/dist/server-install/platforms/ubuntu-vps.js +1016 -0
  316. package/dist/server-install/platforms/ubuntu-vps.js.map +1 -0
  317. package/dist/server-install/state.d.ts +52 -0
  318. package/dist/server-install/state.js +182 -0
  319. package/dist/server-install/state.js.map +1 -0
  320. package/dist/server-install/steps.d.ts +109 -0
  321. package/dist/server-install/steps.js +334 -0
  322. package/dist/server-install/steps.js.map +1 -0
  323. package/dist/server-install/strategies.d.ts +4 -0
  324. package/dist/server-install/strategies.js +20 -0
  325. package/dist/server-install/strategies.js.map +1 -0
  326. package/dist/server-install/types.d.ts +287 -0
  327. package/dist/server-install/types.js +121 -0
  328. package/dist/server-install/types.js.map +1 -0
  329. package/dist/server-install/ui.d.ts +42 -0
  330. package/dist/server-install/ui.js +130 -0
  331. package/dist/server-install/ui.js.map +1 -0
  332. package/dist/skills-banner.d.ts +22 -0
  333. package/dist/skills-banner.js +41 -0
  334. package/dist/skills-banner.js.map +1 -0
  335. package/dist/skills-remote.d.ts +84 -0
  336. package/dist/skills-remote.js +468 -0
  337. package/dist/skills-remote.js.map +1 -0
  338. package/dist/skills-update.d.ts +88 -0
  339. package/dist/skills-update.js +392 -0
  340. package/dist/skills-update.js.map +1 -0
  341. package/dist/skills.d.ts +82 -0
  342. package/dist/skills.js +251 -0
  343. package/dist/skills.js.map +1 -0
  344. package/dist/todos.d.ts +48 -0
  345. package/dist/todos.js +201 -0
  346. package/dist/todos.js.map +1 -0
  347. package/dist/ui-state.d.ts +26 -0
  348. package/dist/ui-state.js +38 -0
  349. package/dist/ui-state.js.map +1 -0
  350. package/dist/update-check.d.ts +12 -0
  351. package/dist/update-check.js +41 -0
  352. package/dist/update-check.js.map +1 -0
  353. package/dist/workflows/load.d.ts +15 -0
  354. package/dist/workflows/load.js +56 -0
  355. package/dist/workflows/load.js.map +1 -0
  356. package/dist/workflows/run.d.ts +758 -0
  357. package/dist/workflows/run.js +3389 -0
  358. package/dist/workflows/run.js.map +1 -0
  359. package/dist/workflows/types.d.ts +153 -0
  360. package/dist/workflows/types.js +212 -0
  361. package/dist/workflows/types.js.map +1 -0
  362. package/dist/workspace/agent-accounts.d.ts +153 -0
  363. package/dist/workspace/agent-accounts.js +304 -0
  364. package/dist/workspace/agent-accounts.js.map +1 -0
  365. package/dist/workspace/agent-profiles.d.ts +78 -0
  366. package/dist/workspace/agent-profiles.js +115 -0
  367. package/dist/workspace/agent-profiles.js.map +1 -0
  368. package/dist/workspace/config.d.ts +169 -0
  369. package/dist/workspace/config.js +379 -0
  370. package/dist/workspace/config.js.map +1 -0
  371. package/dist/workspace/migrations.d.ts +45 -0
  372. package/dist/workspace/migrations.js +147 -0
  373. package/dist/workspace/migrations.js.map +1 -0
  374. package/dist/workspace/projects-cli.d.ts +25 -0
  375. package/dist/workspace/projects-cli.js +172 -0
  376. package/dist/workspace/projects-cli.js.map +1 -0
  377. package/dist/workspace/projects.d.ts +109 -0
  378. package/dist/workspace/projects.js +250 -0
  379. package/dist/workspace/projects.js.map +1 -0
  380. package/dist/workspace/semaphore.d.ts +179 -0
  381. package/dist/workspace/semaphore.js +195 -0
  382. package/dist/workspace/semaphore.js.map +1 -0
  383. package/dist/workspace/ui-state.d.ts +34 -0
  384. package/dist/workspace/ui-state.js +53 -0
  385. package/dist/workspace/ui-state.js.map +1 -0
  386. package/package.json +70 -0
  387. package/scripts/check-pack.mjs +46 -0
  388. package/scripts/inline-contract.mjs +112 -0
  389. package/scripts/install-as-command.mjs +120 -0
  390. package/scripts/mock-claude.mjs +520 -0
  391. package/scripts/mock-pi-rpc.mjs +83 -0
  392. package/scripts/sync-readme.mjs +20 -0
  393. package/scripts/test-process-usage.mjs +47 -0
  394. package/web/dist/assets/alert-dialog-B4Ofsgv7.js +1 -0
  395. package/web/dist/assets/arrow-down-Dy8dup7j.js +1 -0
  396. package/web/dist/assets/arrow-left-BJaucbhn.js +1 -0
  397. package/web/dist/assets/bundle-mjs-BT31bpU6.js +1 -0
  398. package/web/dist/assets/centered-state-duPW0phQ.js +43 -0
  399. package/web/dist/assets/chevron-right-Be4A5TCS.js +1 -0
  400. package/web/dist/assets/chunk-BO2N2NFS-DE6qKn3r.js +131 -0
  401. package/web/dist/assets/collapsible-DdcNBdSk.js +1 -0
  402. package/web/dist/assets/commit-list-CgvN9vec.js +1 -0
  403. package/web/dist/assets/compare-variants-CQA2nd65.js +1 -0
  404. package/web/dist/assets/core-BCsw8oQw.js +12 -0
  405. package/web/dist/assets/css-BsVw1vtW.js +1 -0
  406. package/web/dist/assets/diff-B6Agp5Hl.js +3 -0
  407. package/web/dist/assets/diff-stat-BoXuGkgq.js +1 -0
  408. package/web/dist/assets/diff-view-CD8XI-fj.js +6 -0
  409. package/web/dist/assets/diff-woXpYk--.js +1 -0
  410. package/web/dist/assets/dropdown-menu-B3SYw-k5.js +1 -0
  411. package/web/dist/assets/editable-title-B-hjp5wl.js +1 -0
  412. package/web/dist/assets/ellipsis-vertical-BYwzw0xl.js +1 -0
  413. package/web/dist/assets/engine-javascript-FQvzRocB.js +141 -0
  414. package/web/dist/assets/file-BRj5eISx.js +1 -0
  415. package/web/dist/assets/folder-z4oT5981.js +1 -0
  416. package/web/dist/assets/git-toolbar-owSEkYld.js +1 -0
  417. package/web/dist/assets/github-Bz2VgRX3.js +1 -0
  418. package/web/dist/assets/go-rLFTqkRN.js +1 -0
  419. package/web/dist/assets/highlighted-body-OFNGDK62-BL-MfFgl.js +1 -0
  420. package/web/dist/assets/highlighter-CdHqIwFr.js +3 -0
  421. package/web/dist/assets/html-BY76lXLH.js +1 -0
  422. package/web/dist/assets/image-preview-h3WFluuy.js +1 -0
  423. package/web/dist/assets/index-BbcQNT92.css +2 -0
  424. package/web/dist/assets/index-EtQQQ6Kj.js +7 -0
  425. package/web/dist/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2 +0 -0
  426. package/web/dist/assets/inter-latin-wght-normal-Dx4kXJAl.woff2 +0 -0
  427. package/web/dist/assets/javascript-BgS3c2Ky.js +1 -0
  428. package/web/dist/assets/jetbrains-mono-latin-ext-wght-normal-DBQx-q_a.woff2 +0 -0
  429. package/web/dist/assets/jetbrains-mono-latin-wght-normal-B9CIFXIH.woff2 +0 -0
  430. package/web/dist/assets/json-qhed-kSA.js +1 -0
  431. package/web/dist/assets/jsonc-CYpm1nAK.js +1 -0
  432. package/web/dist/assets/jsx-Bz0zcwM4.js +1 -0
  433. package/web/dist/assets/lib-BQXq3kEf.js +1 -0
  434. package/web/dist/assets/lib-BxQXEXDF.js +1 -0
  435. package/web/dist/assets/markdown-BYOwaDjH.js +1 -0
  436. package/web/dist/assets/markdown-DqBKYPiB.js +2 -0
  437. package/web/dist/assets/mermaid-GHXKKRXX-C4jxqUUb.js +1 -0
  438. package/web/dist/assets/new-task-form-BdJKRBJX.js +1 -0
  439. package/web/dist/assets/pill-BQfmfpYp.js +1 -0
  440. package/web/dist/assets/project-router-DxgFZY1l.js +1 -0
  441. package/web/dist/assets/prompt-templates-B6m16gq-.js +15 -0
  442. package/web/dist/assets/python-gzcpVVnB.js +1 -0
  443. package/web/dist/assets/react-runtime-CCIEwYL0.js +9 -0
  444. package/web/dist/assets/refresh-cw-mhSpxf2a.js +1 -0
  445. package/web/dist/assets/repo-git-CUNRxR3_.js +1 -0
  446. package/web/dist/assets/rolldown-runtime-QTnfLwEv.js +1 -0
  447. package/web/dist/assets/run-diff-DsmmDVfx.js +3 -0
  448. package/web/dist/assets/run-header-BkhrseLJ.js +1 -0
  449. package/web/dist/assets/rust-Cfkwpbl8.js +1 -0
  450. package/web/dist/assets/search-x-BqDMB2g8.js +1 -0
  451. package/web/dist/assets/shellscript-CLZ0U2zV.js +1 -0
  452. package/web/dist/assets/skill-empty-hint-BWEvTggc.js +1 -0
  453. package/web/dist/assets/skills-9oR_oHse.js +1 -0
  454. package/web/dist/assets/skills-DwIxnnWO.js +1 -0
  455. package/web/dist/assets/sparkles-DIoTQpyx.js +1 -0
  456. package/web/dist/assets/sql-BsFa4tDR.js +1 -0
  457. package/web/dist/assets/square-terminal-Cc7CuQxc.js +1 -0
  458. package/web/dist/assets/tab-link-D1fQgpmO.js +1 -0
  459. package/web/dist/assets/task-changes-BKeLlDpK.js +1 -0
  460. package/web/dist/assets/task-commits-gcEFZIa5.js +1 -0
  461. package/web/dist/assets/task-files-BGAqoXTW.js +2 -0
  462. package/web/dist/assets/task-thread-DT8aUYTS.js +9 -0
  463. package/web/dist/assets/textarea-BOVbfy5C.js +1 -0
  464. package/web/dist/assets/thread-loading-CypW73KD.js +1 -0
  465. package/web/dist/assets/toml-CcmNWLt0.js +1 -0
  466. package/web/dist/assets/trash-2-CJq6LHWn.js +1 -0
  467. package/web/dist/assets/triangle-alert-CjDFvU27.js +1 -0
  468. package/web/dist/assets/tsx-udAQXfEw.js +1 -0
  469. package/web/dist/assets/typescript-bsJCZSQ-.js +1 -0
  470. package/web/dist/assets/upload-CPDZlJeK.js +1 -0
  471. package/web/dist/assets/use-desktop-5JsLmi0a.js +1 -0
  472. package/web/dist/assets/use-submit-shortcut-CHVFevty.js +1 -0
  473. package/web/dist/assets/utils-DiO6zyJd.js +64 -0
  474. package/web/dist/assets/workflows-rQDFzWRt.js +11 -0
  475. package/web/dist/assets/yaml-rwi0_p6S.js +1 -0
  476. package/web/dist/assets/zoomable-image-COWqb11v.js +1 -0
  477. package/web/dist/index.html +80 -0
  478. package/web/dist/open-mercato.svg +11 -0
@@ -0,0 +1,579 @@
1
+ import { z } from 'zod';
2
+ import { type Runner } from './health.ts';
3
+ /**
4
+ * The workspace + settings families: `~/.cezar/config.json`'s settings slice, both GUI-pref bags
5
+ * (per-repo and workspace), the per-repo agent knobs, provider auth status, the host model
6
+ * catalog, the skills-update state, and the "Open in…" targets.
7
+ *
8
+ * Node-free by construction (see README rule 1) — `zod` and the sibling contract modules only.
9
+ */
10
+ /**
11
+ * `GET/PUT /api/v1/workspace/config` — the settings slice of `~/.cezar/config.json` (step 2.7).
12
+ *
13
+ * Global knobs only: the registry itself is `GET /api/v1/projects`, and `schemaVersion` (a
14
+ * migration cursor, not a setting) is deliberately absent. `resources` is the workspace's
15
+ * host-protection budget — the ONLY effective `maxParallel`/`memoryLimitMb` since Phase 2;
16
+ * `worktreeRetentionDefault` seeds projects that set none.
17
+ *
18
+ * `composerDefaults` and every `resources` key are REQUIRED: `workspaceConfigBody`
19
+ * (src/server/server.ts:1888) materializes all of them from schema defaults on every answer,
20
+ * including the degraded path. The hand-written DTO declared `composerDefaults`,
21
+ * `resources.maxMonitoringSessions` and `resources.monitoringWakeIntervalMinutes` optional, which
22
+ * was wider than the server has ever been.
23
+ */
24
+ export declare const workspaceConfigResponseSchema: z.ZodObject<{
25
+ browseRoot: z.ZodString;
26
+ projectsDir: z.ZodString;
27
+ skillsAutoUpdate: z.ZodNullable<z.ZodBoolean>;
28
+ effectiveSkillsAutoUpdate: z.ZodBoolean;
29
+ composerDefaults: z.ZodObject<{
30
+ autonomous: z.ZodNullable<z.ZodBoolean>;
31
+ worktree: z.ZodNullable<z.ZodBoolean>;
32
+ inheritedAutonomous: z.ZodUnion<readonly [z.ZodBoolean, z.ZodLiteral<"source-dependent">]>;
33
+ inheritedWorktree: z.ZodBoolean;
34
+ }, z.core.$strip>;
35
+ resources: z.ZodObject<{
36
+ maxParallel: z.ZodNumber;
37
+ maxMonitoringSessions: z.ZodNumber;
38
+ monitoringWakeIntervalMinutes: z.ZodNullable<z.ZodNumber>;
39
+ autoResumeOnUsageLimit: z.ZodBoolean;
40
+ memoryLimitMb: z.ZodNullable<z.ZodNumber>;
41
+ worktreeRetentionDefault: z.ZodNumber;
42
+ }, z.core.$strip>;
43
+ agentDefaults: z.ZodObject<{
44
+ runner: z.ZodOptional<z.ZodEnum<{
45
+ claude: "claude";
46
+ codex: "codex";
47
+ opencode: "opencode";
48
+ pi: "pi";
49
+ }>>;
50
+ models: z.ZodOptional<z.ZodObject<{
51
+ claude: z.ZodOptional<z.ZodString>;
52
+ codex: z.ZodOptional<z.ZodString>;
53
+ opencode: z.ZodOptional<z.ZodString>;
54
+ pi: z.ZodOptional<z.ZodString>;
55
+ }, z.core.$strip>>;
56
+ }, z.core.$strip>;
57
+ }, z.core.$strip>;
58
+ export type WorkspaceConfigResponse = z.infer<typeof workspaceConfigResponseSchema>;
59
+ /**
60
+ * `PUT /api/v1/workspace/config` body — partial: absent keys stay untouched. A rejected workspace
61
+ * root (not writable) 400s with the reason and persists NOTHING, resources included, so callers
62
+ * may send both in one request only if they want that atomicity. Bounds mirror
63
+ * `src/workspace/config.ts` exactly, so a value this schema accepts can never be degraded away by
64
+ * the next load's `.catch`.
65
+ */
66
+ export declare const setWorkspaceConfigInputSchema: z.ZodObject<{
67
+ browseRoot: z.ZodOptional<z.ZodString>;
68
+ projectsDir: z.ZodOptional<z.ZodString>;
69
+ skillsAutoUpdate: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
70
+ composerDefaults: z.ZodOptional<z.ZodObject<{
71
+ autonomous: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
72
+ worktree: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
73
+ }, z.core.$strip>>;
74
+ agentDefaults: z.ZodOptional<z.ZodObject<{
75
+ runner: z.ZodOptional<z.ZodNullable<z.ZodEnum<{
76
+ claude: "claude";
77
+ codex: "codex";
78
+ opencode: "opencode";
79
+ pi: "pi";
80
+ }>>>;
81
+ models: z.ZodOptional<z.ZodObject<{
82
+ claude: z.ZodOptional<z.ZodNullable<z.ZodString>>;
83
+ codex: z.ZodOptional<z.ZodNullable<z.ZodString>>;
84
+ opencode: z.ZodOptional<z.ZodNullable<z.ZodString>>;
85
+ pi: z.ZodOptional<z.ZodNullable<z.ZodString>>;
86
+ }, z.core.$strip>>;
87
+ }, z.core.$strip>>;
88
+ resources: z.ZodOptional<z.ZodObject<{
89
+ maxParallel: z.ZodOptional<z.ZodNumber>;
90
+ maxMonitoringSessions: z.ZodOptional<z.ZodNumber>;
91
+ monitoringWakeIntervalMinutes: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
92
+ autoResumeOnUsageLimit: z.ZodOptional<z.ZodBoolean>;
93
+ memoryLimitMb: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
94
+ worktreeRetentionDefault: z.ZodOptional<z.ZodNumber>;
95
+ }, z.core.$strip>>;
96
+ }, z.core.$strip>;
97
+ export type SetWorkspaceConfigInput = z.infer<typeof setWorkspaceConfigInputSchema>;
98
+ /**
99
+ * `GET/PUT /api/v1/ui-state` — the per-repo GUI prefs in `.ai/cezar/ui-state.json`.
100
+ *
101
+ * An OPEN bag on purpose (BACKWARD_COMPATIBILITY.md §3): unknown keys round-trip untouched, so a
102
+ * newer cockpit's prefs survive an older server and a future pref needs no server change. Hence
103
+ * `z.looseObject`, not a closed object — the keys below are the ones the server's schema *names*,
104
+ * never the ones it *permits*. The write side caps the TOP-LEVEL key count at 200 (#429); that cap
105
+ * is a request-body refinement in `src/server/server.ts` (`capUiStateKeys`, :756) and is not part
106
+ * of the response shape.
107
+ *
108
+ * `notifications` is deliberately NOT here: it moved to `WorkspaceUiState` at step 3.5 and the
109
+ * per-repo schema (src/server/server.ts:550) has not named it since. The hand-written DTO still
110
+ * listed it, which made it wider than the route.
111
+ */
112
+ export declare const uiStateSchema: z.ZodObject<{
113
+ lastTask: z.ZodOptional<z.ZodNullable<z.ZodObject<{
114
+ source: z.ZodEnum<{
115
+ skill: "skill";
116
+ workflow: "workflow";
117
+ }>;
118
+ ref: z.ZodString;
119
+ }, z.core.$strip>>>;
120
+ recentSources: z.ZodOptional<z.ZodArray<z.ZodObject<{
121
+ source: z.ZodEnum<{
122
+ skill: "skill";
123
+ workflow: "workflow";
124
+ }>;
125
+ ref: z.ZodString;
126
+ }, z.core.$strip>>>;
127
+ lastWorktree: z.ZodOptional<z.ZodBoolean>;
128
+ lastAutonomous: z.ZodOptional<z.ZodBoolean>;
129
+ lastGenerateFollowups: z.ZodOptional<z.ZodBoolean>;
130
+ skillUsage: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodNumber>>;
131
+ runsView: z.ZodOptional<z.ZodEnum<{
132
+ list: "list";
133
+ table: "table";
134
+ }>>;
135
+ githubView: z.ZodOptional<z.ZodEnum<{
136
+ issues: "issues";
137
+ prs: "prs";
138
+ }>>;
139
+ appearance: z.ZodOptional<z.ZodObject<{
140
+ accent: z.ZodOptional<z.ZodEnum<{
141
+ lime: "lime";
142
+ violet: "violet";
143
+ }>>;
144
+ density: z.ZodOptional<z.ZodEnum<{
145
+ comfortable: "comfortable";
146
+ compact: "compact";
147
+ ultra: "ultra";
148
+ }>>;
149
+ width: z.ZodOptional<z.ZodEnum<{
150
+ narrow: "narrow";
151
+ wide: "wide";
152
+ }>>;
153
+ }, z.core.$strip>>;
154
+ promptTemplates: z.ZodOptional<z.ZodArray<z.ZodObject<{
155
+ id: z.ZodString;
156
+ label: z.ZodString;
157
+ text: z.ZodString;
158
+ skills: z.ZodOptional<z.ZodArray<z.ZodString>>;
159
+ }, z.core.$strip>>>;
160
+ dismissedSkillsBanner: z.ZodOptional<z.ZodBoolean>;
161
+ }, z.core.$loose>;
162
+ export type UiState = z.infer<typeof uiStateSchema>;
163
+ /**
164
+ * `GET/PUT /api/v1/workspace/ui-state` — cross-project GUI prefs in `~/.cezar/ui-state.json`
165
+ * (multi-project spec, step 2.7).
166
+ *
167
+ * The same open bag as its per-repo twin above, and open for the same reason. The PUT merges
168
+ * SHALLOWLY at the top level server-side, so a writer must send the whole `sidebar` object (or the
169
+ * whole `importedSkills` array), never a leaf.
170
+ */
171
+ export declare const workspaceLastLocationSchema: z.ZodObject<{
172
+ projectId: z.ZodString;
173
+ pathname: z.ZodString;
174
+ search: z.ZodOptional<z.ZodString>;
175
+ hash: z.ZodOptional<z.ZodString>;
176
+ }, z.core.$strict>;
177
+ export type WorkspaceLastLocation = z.infer<typeof workspaceLastLocationSchema>;
178
+ export declare const workspaceUiStateSchema: z.ZodObject<{
179
+ sidebar: z.ZodOptional<z.ZodObject<{
180
+ collapsed: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodBoolean>>;
181
+ }, z.core.$loose>>;
182
+ dismissedProviderAuthFailures: z.ZodOptional<z.ZodObject<{
183
+ claude: z.ZodOptional<z.ZodString>;
184
+ codex: z.ZodOptional<z.ZodString>;
185
+ opencode: z.ZodOptional<z.ZodString>;
186
+ pi: z.ZodOptional<z.ZodString>;
187
+ }, z.core.$strip>>;
188
+ appearance: z.ZodOptional<z.ZodObject<{
189
+ accent: z.ZodOptional<z.ZodEnum<{
190
+ lime: "lime";
191
+ violet: "violet";
192
+ }>>;
193
+ density: z.ZodOptional<z.ZodEnum<{
194
+ comfortable: "comfortable";
195
+ compact: "compact";
196
+ ultra: "ultra";
197
+ }>>;
198
+ width: z.ZodOptional<z.ZodEnum<{
199
+ narrow: "narrow";
200
+ wide: "wide";
201
+ }>>;
202
+ }, z.core.$strip>>;
203
+ notifications: z.ZodOptional<z.ZodObject<{
204
+ enabled: z.ZodOptional<z.ZodBoolean>;
205
+ }, z.core.$loose>>;
206
+ taskTable: z.ZodOptional<z.ZodObject<{
207
+ expandedColumns: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodBoolean>>;
208
+ }, z.core.$loose>>;
209
+ lastLocation: z.ZodOptional<z.ZodObject<{
210
+ projectId: z.ZodString;
211
+ pathname: z.ZodString;
212
+ search: z.ZodOptional<z.ZodString>;
213
+ hash: z.ZodOptional<z.ZodString>;
214
+ }, z.core.$strict>>;
215
+ importedSkills: z.ZodOptional<z.ZodArray<z.ZodString>>;
216
+ }, z.core.$loose>;
217
+ export type WorkspaceUiState = z.infer<typeof workspaceUiStateSchema>;
218
+ /**
219
+ * `PUT /api/v1/workspace/ui-state` body. The response remains an open, tolerant bag so data from
220
+ * a newer cockpit survives an older server; this write-side schema adds bounded known fields so
221
+ * the current cockpit cannot grow the user-owned file without limit.
222
+ */
223
+ export declare const setWorkspaceUiStateInputSchema: z.ZodObject<{
224
+ appearance: z.ZodOptional<z.ZodObject<{
225
+ accent: z.ZodOptional<z.ZodEnum<{
226
+ lime: "lime";
227
+ violet: "violet";
228
+ }>>;
229
+ density: z.ZodOptional<z.ZodEnum<{
230
+ comfortable: "comfortable";
231
+ compact: "compact";
232
+ ultra: "ultra";
233
+ }>>;
234
+ width: z.ZodOptional<z.ZodEnum<{
235
+ narrow: "narrow";
236
+ wide: "wide";
237
+ }>>;
238
+ }, z.core.$strip>>;
239
+ notifications: z.ZodOptional<z.ZodObject<{
240
+ enabled: z.ZodOptional<z.ZodBoolean>;
241
+ }, z.core.$loose>>;
242
+ lastLocation: z.ZodOptional<z.ZodObject<{
243
+ projectId: z.ZodString;
244
+ pathname: z.ZodString;
245
+ search: z.ZodOptional<z.ZodString>;
246
+ hash: z.ZodOptional<z.ZodString>;
247
+ }, z.core.$strict>>;
248
+ sidebar: z.ZodOptional<z.ZodObject<{
249
+ collapsed: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodBoolean>>;
250
+ }, z.core.$loose>>;
251
+ dismissedProviderAuthFailures: z.ZodOptional<z.ZodObject<{
252
+ claude: z.ZodOptional<z.ZodString>;
253
+ codex: z.ZodOptional<z.ZodString>;
254
+ opencode: z.ZodOptional<z.ZodString>;
255
+ pi: z.ZodOptional<z.ZodString>;
256
+ }, z.core.$strict>>;
257
+ importedSkills: z.ZodOptional<z.ZodArray<z.ZodString>>;
258
+ taskTable: z.ZodOptional<z.ZodObject<{
259
+ expandedColumns: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodBoolean>>;
260
+ }, z.core.$loose>>;
261
+ }, z.core.$loose>;
262
+ export type SetWorkspaceUiStateInput = z.infer<typeof setWorkspaceUiStateInputSchema>;
263
+ /** Per-runner default model preset (Settings → Agents): the composer preselects this model id for
264
+ * the runner. Absent = auto (the runner decides). Keyed by runner name rather than derived from
265
+ * `runnerSchema` because the server's own `defaultModels` object (src/config.ts:92) is spelled
266
+ * the same way — one key per runner, each independently optional. */
267
+ export declare const runnerModelsSchema: z.ZodObject<{
268
+ claude: z.ZodOptional<z.ZodString>;
269
+ codex: z.ZodOptional<z.ZodString>;
270
+ opencode: z.ZodOptional<z.ZodString>;
271
+ pi: z.ZodOptional<z.ZodString>;
272
+ }, z.core.$strip>;
273
+ export type RunnerModels = z.infer<typeof runnerModelsSchema>;
274
+ /** `GET /api/v1/config` — every Settings → Agents knob in one read. */
275
+ export declare const configResponseSchema: z.ZodObject<{
276
+ baseBranch: z.ZodNullable<z.ZodString>;
277
+ defaultRunner: z.ZodEnum<{
278
+ claude: "claude";
279
+ codex: "codex";
280
+ opencode: "opencode";
281
+ pi: "pi";
282
+ }>;
283
+ systemPrompt: z.ZodNullable<z.ZodString>;
284
+ defaultModels: z.ZodObject<{
285
+ claude: z.ZodOptional<z.ZodString>;
286
+ codex: z.ZodOptional<z.ZodString>;
287
+ opencode: z.ZodOptional<z.ZodString>;
288
+ pi: z.ZodOptional<z.ZodString>;
289
+ }, z.core.$strip>;
290
+ modelsLocked: z.ZodBoolean;
291
+ maxParallel: z.ZodNumber;
292
+ memoryLimitMb: z.ZodNullable<z.ZodNumber>;
293
+ worktreeRetention: z.ZodNumber;
294
+ liveTitleUpdates: z.ZodNullable<z.ZodBoolean>;
295
+ reviewGate: z.ZodNullable<z.ZodBoolean>;
296
+ }, z.core.$strip>;
297
+ export type ConfigResponse = z.infer<typeof configResponseSchema>;
298
+ /** The `PUT /api/v1/config` answer: the same shape GET serves (`configAnswer` builds both). */
299
+ export declare const setConfigResponseSchema: z.ZodObject<{
300
+ baseBranch: z.ZodNullable<z.ZodString>;
301
+ defaultRunner: z.ZodEnum<{
302
+ claude: "claude";
303
+ codex: "codex";
304
+ opencode: "opencode";
305
+ pi: "pi";
306
+ }>;
307
+ systemPrompt: z.ZodNullable<z.ZodString>;
308
+ defaultModels: z.ZodObject<{
309
+ claude: z.ZodOptional<z.ZodString>;
310
+ codex: z.ZodOptional<z.ZodString>;
311
+ opencode: z.ZodOptional<z.ZodString>;
312
+ pi: z.ZodOptional<z.ZodString>;
313
+ }, z.core.$strip>;
314
+ modelsLocked: z.ZodBoolean;
315
+ maxParallel: z.ZodNumber;
316
+ memoryLimitMb: z.ZodNullable<z.ZodNumber>;
317
+ worktreeRetention: z.ZodNumber;
318
+ liveTitleUpdates: z.ZodNullable<z.ZodBoolean>;
319
+ reviewGate: z.ZodNullable<z.ZodBoolean>;
320
+ }, z.core.$strip>;
321
+ export type SetConfigResponse = z.infer<typeof setConfigResponseSchema>;
322
+ /**
323
+ * `PUT /api/v1/config` body (Settings → Agents; the Repo tab's base-branch picker).
324
+ * `baseBranch: null` clears the setting back to "follow checked-out branch"; `systemPrompt` and
325
+ * per-runner `defaultModels` entries clear on `null` (or `''`) too. Merged into the raw
326
+ * config.json server-side — `defaultModels` merges per runner, so one write never clobbers
327
+ * another runner's preset.
328
+ */
329
+ export declare const setConfigInputSchema: z.ZodObject<{
330
+ baseBranch: z.ZodOptional<z.ZodNullable<z.ZodString>>;
331
+ defaultRunner: z.ZodOptional<z.ZodEnum<{
332
+ claude: "claude";
333
+ codex: "codex";
334
+ opencode: "opencode";
335
+ pi: "pi";
336
+ }>>;
337
+ systemPrompt: z.ZodOptional<z.ZodNullable<z.ZodString>>;
338
+ defaultModels: z.ZodOptional<z.ZodObject<{
339
+ claude: z.ZodOptional<z.ZodNullable<z.ZodString>>;
340
+ codex: z.ZodOptional<z.ZodNullable<z.ZodString>>;
341
+ opencode: z.ZodOptional<z.ZodNullable<z.ZodString>>;
342
+ pi: z.ZodOptional<z.ZodNullable<z.ZodString>>;
343
+ }, z.core.$strip>>;
344
+ maxParallel: z.ZodOptional<z.ZodNumber>;
345
+ memoryLimitMb: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
346
+ worktreeRetention: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
347
+ liveTitleUpdates: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
348
+ reviewGate: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
349
+ }, z.core.$strip>;
350
+ export type SetConfigInput = z.infer<typeof setConfigInputSchema>;
351
+ export declare const skillsUpdateStatusSchema: z.ZodEnum<{
352
+ available: "available";
353
+ checking: "checking";
354
+ current: "current";
355
+ error: "error";
356
+ idle: "idle";
357
+ unavailable: "unavailable";
358
+ updating: "updating";
359
+ }>;
360
+ export type SkillsUpdateStatus = z.infer<typeof skillsUpdateStatusSchema>;
361
+ export declare const skillsUpdateScopeStateSchema: z.ZodObject<{
362
+ scope: z.ZodEnum<{
363
+ global: "global";
364
+ project: "project";
365
+ }>;
366
+ status: z.ZodEnum<{
367
+ available: "available";
368
+ checking: "checking";
369
+ current: "current";
370
+ error: "error";
371
+ idle: "idle";
372
+ unavailable: "unavailable";
373
+ updating: "updating";
374
+ }>;
375
+ available: z.ZodBoolean;
376
+ skills: z.ZodArray<z.ZodString>;
377
+ checkedAt: z.ZodNullable<z.ZodString>;
378
+ updatedAt: z.ZodNullable<z.ZodString>;
379
+ reason: z.ZodOptional<z.ZodString>;
380
+ }, z.core.$strip>;
381
+ export type SkillsUpdateScopeState = z.infer<typeof skillsUpdateScopeStateSchema>;
382
+ /** `GET /api/v1/workspace/skills-update` (and the check/apply POSTs) — the merged project+global
383
+ * skills-update state. `autoUpdateEnabled`/`inherited` are re-stamped from the workspace config
384
+ * on the way out (`skillsUpdateResponse`, src/server/server.ts:1818). */
385
+ export declare const skillsUpdateStateSchema: z.ZodObject<{
386
+ status: z.ZodEnum<{
387
+ available: "available";
388
+ checking: "checking";
389
+ current: "current";
390
+ error: "error";
391
+ idle: "idle";
392
+ unavailable: "unavailable";
393
+ updating: "updating";
394
+ }>;
395
+ available: z.ZodBoolean;
396
+ autoUpdateEnabled: z.ZodBoolean;
397
+ inherited: z.ZodBoolean;
398
+ checkedAt: z.ZodNullable<z.ZodString>;
399
+ updatedAt: z.ZodNullable<z.ZodString>;
400
+ scopes: z.ZodArray<z.ZodObject<{
401
+ scope: z.ZodEnum<{
402
+ global: "global";
403
+ project: "project";
404
+ }>;
405
+ status: z.ZodEnum<{
406
+ available: "available";
407
+ checking: "checking";
408
+ current: "current";
409
+ error: "error";
410
+ idle: "idle";
411
+ unavailable: "unavailable";
412
+ updating: "updating";
413
+ }>;
414
+ available: z.ZodBoolean;
415
+ skills: z.ZodArray<z.ZodString>;
416
+ checkedAt: z.ZodNullable<z.ZodString>;
417
+ updatedAt: z.ZodNullable<z.ZodString>;
418
+ reason: z.ZodOptional<z.ZodString>;
419
+ }, z.core.$strip>>;
420
+ needsUpgradeNotes: z.ZodBoolean;
421
+ }, z.core.$strip>;
422
+ export type SkillsUpdateState = z.infer<typeof skillsUpdateStateSchema>;
423
+ /** The agent backends are the providers — one alias, never a second enum. */
424
+ export declare const providerIdSchema: z.ZodEnum<{
425
+ claude: "claude";
426
+ codex: "codex";
427
+ opencode: "opencode";
428
+ pi: "pi";
429
+ }>;
430
+ export type ProviderId = Runner;
431
+ /** Coarse host authentication state. Credentials, account identity, and raw CLI output never
432
+ * cross this boundary. */
433
+ export declare const providerConnectionStateSchema: z.ZodEnum<{
434
+ connected: "connected";
435
+ disconnected: "disconnected";
436
+ "not-installed": "not-installed";
437
+ unknown: "unknown";
438
+ }>;
439
+ export type ProviderConnectionState = z.infer<typeof providerConnectionStateSchema>;
440
+ /**
441
+ * One provider row.
442
+ *
443
+ * `enabled` is OPTIONAL: `ProviderAuth.status()` (src/core/provider-auth.ts:12) builds rows
444
+ * without it and only `applyProviderEnablement` stamps it in, so the type the routes answer keeps
445
+ * the key optional. The hand-written DTO declared it required — narrower than the route.
446
+ */
447
+ export declare const providerStatusSchema: z.ZodObject<{
448
+ provider: z.ZodEnum<{
449
+ claude: "claude";
450
+ codex: "codex";
451
+ opencode: "opencode";
452
+ pi: "pi";
453
+ }>;
454
+ status: z.ZodEnum<{
455
+ connected: "connected";
456
+ disconnected: "disconnected";
457
+ "not-installed": "not-installed";
458
+ unknown: "unknown";
459
+ }>;
460
+ enabled: z.ZodOptional<z.ZodBoolean>;
461
+ hint: z.ZodOptional<z.ZodString>;
462
+ authFailureId: z.ZodOptional<z.ZodString>;
463
+ profileId: z.ZodOptional<z.ZodString>;
464
+ }, z.core.$strip>;
465
+ export type ProviderStatus = z.infer<typeof providerStatusSchema>;
466
+ /** `GET /api/v1/providers/status`, and the answer of the enabled/retry mutators. */
467
+ export declare const providerStatusResponseSchema: z.ZodObject<{
468
+ providers: z.ZodArray<z.ZodObject<{
469
+ provider: z.ZodEnum<{
470
+ claude: "claude";
471
+ codex: "codex";
472
+ opencode: "opencode";
473
+ pi: "pi";
474
+ }>;
475
+ status: z.ZodEnum<{
476
+ connected: "connected";
477
+ disconnected: "disconnected";
478
+ "not-installed": "not-installed";
479
+ unknown: "unknown";
480
+ }>;
481
+ enabled: z.ZodOptional<z.ZodBoolean>;
482
+ hint: z.ZodOptional<z.ZodString>;
483
+ authFailureId: z.ZodOptional<z.ZodString>;
484
+ profileId: z.ZodOptional<z.ZodString>;
485
+ }, z.core.$strip>>;
486
+ }, z.core.$strip>;
487
+ export type ProviderStatusResponse = z.infer<typeof providerStatusResponseSchema>;
488
+ /** `POST /api/v1/providers/connect` — either a terminal was handed the login command, or the
489
+ * provider turned out to be connected already. Every other outcome is a 409/500 carrying the
490
+ * same `command` for the clipboard fallback. */
491
+ export declare const providerConnectResponseSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
492
+ opened: z.ZodLiteral<true>;
493
+ command: z.ZodString;
494
+ }, z.core.$strip>, z.ZodObject<{
495
+ opened: z.ZodLiteral<false>;
496
+ connected: z.ZodLiteral<true>;
497
+ command: z.ZodString;
498
+ }, z.core.$strip>], "opened">;
499
+ export type ProviderConnectResponse = z.infer<typeof providerConnectResponseSchema>;
500
+ /**
501
+ * The runners whose model list is discovered from the host rather than hard-coded: Codex
502
+ * through its app-server protocol, OpenCode through its own `models` listing (#794), Pi
503
+ * through `pi --list-models`. Claude has no equivalent local source, so its picker keeps
504
+ * static presets and `GET /api/v1/models` rejects it. One definition, used by the route's
505
+ * query validator and by the cockpit's picker.
506
+ */
507
+ export declare const modelDiscoveryRunnerSchema: z.ZodEnum<{
508
+ codex: "codex";
509
+ opencode: "opencode";
510
+ pi: "pi";
511
+ }>;
512
+ export type ModelDiscoveryRunner = z.infer<typeof modelDiscoveryRunnerSchema>;
513
+ export declare const MODEL_DISCOVERY_RUNNERS: readonly ModelDiscoveryRunner[];
514
+ /** True when `runner` has a host-discovered catalog (and therefore a `/models` answer). */
515
+ export declare function runnerDiscoversModels(runner: Runner): runner is ModelDiscoveryRunner;
516
+ export declare const runnerModelOptionSchema: z.ZodObject<{
517
+ id: z.ZodString;
518
+ label: z.ZodString;
519
+ description: z.ZodString;
520
+ }, z.core.$strip>;
521
+ export type RunnerModelOption = z.infer<typeof runnerModelOptionSchema>;
522
+ /** `GET /api/v1/models?runner=codex|opencode|pi` — the models discovered from that runner's own
523
+ * host installation, plus how fresh the answer is. Never an error: an unavailable CLI degrades
524
+ * to `source: 'unavailable'` with a `reason`. Claude has no host-local catalog and is rejected. */
525
+ export declare const runnerModelCatalogResponseSchema: z.ZodObject<{
526
+ runner: z.ZodEnum<{
527
+ claude: "claude";
528
+ codex: "codex";
529
+ opencode: "opencode";
530
+ pi: "pi";
531
+ }>;
532
+ models: z.ZodArray<z.ZodObject<{
533
+ id: z.ZodString;
534
+ label: z.ZodString;
535
+ description: z.ZodString;
536
+ }, z.core.$strip>>;
537
+ source: z.ZodEnum<{
538
+ cache: "cache";
539
+ live: "live";
540
+ unavailable: "unavailable";
541
+ }>;
542
+ stale: z.ZodBoolean;
543
+ reason: z.ZodOptional<z.ZodString>;
544
+ }, z.core.$strip>;
545
+ export type RunnerModelCatalogResponse = z.infer<typeof runnerModelCatalogResponseSchema>;
546
+ /** A local app a worktree can be opened in (#open-in): editor, file manager, or terminal. */
547
+ export declare const openTargetSchema: z.ZodObject<{
548
+ id: z.ZodString;
549
+ label: z.ZodString;
550
+ icon: z.ZodOptional<z.ZodString>;
551
+ }, z.core.$strip>;
552
+ export type OpenTarget = z.infer<typeof openTargetSchema>;
553
+ /** `GET /api/v1/open-targets` — the detected local apps; empty in hosted mode (CEZ_REMOTE). */
554
+ export declare const openTargetsResponseSchema: z.ZodObject<{
555
+ targets: z.ZodArray<z.ZodObject<{
556
+ id: z.ZodString;
557
+ label: z.ZodString;
558
+ icon: z.ZodOptional<z.ZodString>;
559
+ }, z.core.$strip>>;
560
+ }, z.core.$strip>;
561
+ export type OpenTargetsResponse = z.infer<typeof openTargetsResponseSchema>;
562
+ /**
563
+ * `POST /api/v1/open-in` — open THIS PROJECT'S root in a detected app (Settings → the project
564
+ * folder row). The path is never sent: it is the scoped project's own registered root, resolved
565
+ * server-side, so the route has no traversal surface at all. `target` is an
566
+ * `/api/v1/open-targets` id; unlike the run route there is no `default`/`cli:` handling, because
567
+ * a repo root is a directory and an agent CLI belongs in a task worktree.
568
+ */
569
+ export declare const openProjectInSchema: z.ZodObject<{
570
+ target: z.ZodString;
571
+ }, z.core.$strip>;
572
+ export type OpenProjectInRequest = z.infer<typeof openProjectInSchema>;
573
+ /** The 200 for the above — `opened` is a literal because every failure is a 409 with `{ error }`,
574
+ * so a `false` would be unreachable and would only invite a client to branch on it. */
575
+ export declare const openProjectInResponseSchema: z.ZodObject<{
576
+ opened: z.ZodLiteral<true>;
577
+ path: z.ZodString;
578
+ }, z.core.$strip>;
579
+ export type OpenProjectInResponse = z.infer<typeof openProjectInResponseSchema>;
@@ -0,0 +1,31 @@
1
+ /**
2
+ * Least-privilege environment for spawned agent backends (#427).
3
+ *
4
+ * Every backend used to inherit the FULL parent environment
5
+ * (`{ ...process.env, ...spec.env }`), handing `GITHUB_TOKEN`,
6
+ * `ANTHROPIC_API_KEY`, `AWS_*` and any other host secret to a process an
7
+ * attacker-controlled prompt can drive. Instead we build an explicit,
8
+ * curated child env: a base allowlist of the non-secret vars a shell / dev
9
+ * toolchain genuinely needs, plus the specific auth vars the chosen backend
10
+ * requires, plus cezar's own `CEZ_*` namespace and the per-run `spec.env`.
11
+ * Everything else — notably arbitrary secrets — is dropped by default.
12
+ *
13
+ * Zero-config: the safe env is the default and needs no configuration. Two
14
+ * opt-in escape hatches (both read from the host env, both off by default):
15
+ * - `CEZ_ENV_PASSTHROUGH=A,B,C` forwards those extra named vars;
16
+ * - `CEZ_AGENT_ENV_FULL=1` restores the legacy full-`process.env` behavior.
17
+ */
18
+ import type { AgentBackend } from './agent-runner.ts';
19
+ export declare function looksSecret(name: string): boolean;
20
+ export interface BuildChildEnvOptions {
21
+ backend: AgentBackend;
22
+ /** Per-run env (CEZ_HANDOFF_FILE etc.) — always applied, wins over host. */
23
+ extraEnv?: Record<string, string>;
24
+ /** Source env; defaults to `process.env`. */
25
+ source?: NodeJS.ProcessEnv;
26
+ }
27
+ /**
28
+ * Build the curated child environment for a spawned backend. `extraEnv`
29
+ * (the runner's `spec.env`) is applied last so per-run vars always win.
30
+ */
31
+ export declare function buildChildEnv(opts: BuildChildEnvOptions): NodeJS.ProcessEnv;