@cjhyy/code-shell-core 0.7.1 → 0.8.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 (594) hide show
  1. package/README.md +36 -23
  2. package/dist/agent/agent-definition-registry.d.ts +2 -2
  3. package/dist/agent/agent-definition-registry.js +47 -10
  4. package/dist/agent/agent-definition.d.ts +5 -0
  5. package/dist/agent/agent-definition.js +14 -0
  6. package/dist/automation/index.d.ts +7 -4
  7. package/dist/automation/index.js +4 -2
  8. package/dist/automation/runner.js +3 -1
  9. package/dist/automation/scheduler.d.ts +57 -1
  10. package/dist/automation/scheduler.js +123 -23
  11. package/dist/automation/store.d.ts +6 -2
  12. package/dist/automation/store.js +7 -3
  13. package/dist/capabilities/index.d.ts +109 -0
  14. package/dist/capabilities/index.js +80 -0
  15. package/dist/capability-control/disabled-lists.d.ts +2 -1
  16. package/dist/capability-control/disabled-lists.js +3 -5
  17. package/dist/capability-control/overlay.d.ts +14 -1
  18. package/dist/capability-control/overlay.js +40 -0
  19. package/dist/capability-control/service.js +6 -4
  20. package/dist/cli/agent-server-stdio.d.ts +1 -1
  21. package/dist/cli/agent-server-stdio.js +66 -6
  22. package/dist/cli/agent-server-tcp.js +7 -3
  23. package/dist/context/compaction.d.ts +39 -3
  24. package/dist/context/compaction.js +151 -39
  25. package/dist/context/manager.d.ts +17 -1
  26. package/dist/context/manager.js +36 -1
  27. package/dist/credentials/access.d.ts +3 -1
  28. package/dist/credentials/access.js +24 -3
  29. package/dist/credentials/index.d.ts +1 -1
  30. package/dist/credentials/index.js +1 -1
  31. package/dist/credentials/oauth.d.ts +4 -1
  32. package/dist/credentials/oauth.js +14 -0
  33. package/dist/credentials/store.d.ts +15 -1
  34. package/dist/credentials/store.js +17 -4
  35. package/dist/credentials/types.d.ts +24 -0
  36. package/dist/credentials/use-credential-tool.js +15 -1
  37. package/dist/engine/auxiliary-pipeline.d.ts +40 -0
  38. package/dist/engine/auxiliary-pipeline.js +181 -0
  39. package/dist/{settings → engine}/disk-defaults.d.ts +2 -2
  40. package/dist/{settings → engine}/disk-defaults.js +5 -2
  41. package/dist/engine/dynamic-tool-defs.d.ts +4 -0
  42. package/dist/engine/dynamic-tool-defs.js +4 -0
  43. package/dist/engine/engine.d.ts +254 -195
  44. package/dist/engine/engine.js +1812 -2041
  45. package/dist/engine/file-history-hook.d.ts +11 -0
  46. package/dist/engine/file-history-hook.js +31 -0
  47. package/dist/engine/goal-judge-context.d.ts +9 -0
  48. package/dist/engine/goal-judge-context.js +234 -0
  49. package/dist/engine/injected-context-cache.d.ts +6 -0
  50. package/dist/engine/injected-context-cache.js +13 -0
  51. package/dist/engine/input-attachments.d.ts +1 -1
  52. package/dist/engine/model-facade.d.ts +3 -3
  53. package/dist/engine/model-facade.js +15 -14
  54. package/dist/engine/permission-controller.d.ts +55 -0
  55. package/dist/engine/permission-controller.js +148 -0
  56. package/dist/engine/prompt-cache-diagnostics.d.ts +58 -0
  57. package/dist/engine/prompt-cache-diagnostics.js +178 -0
  58. package/dist/engine/run-accounting.d.ts +41 -0
  59. package/dist/engine/run-accounting.js +126 -0
  60. package/dist/engine/run-context.d.ts +44 -0
  61. package/dist/engine/run-context.js +88 -0
  62. package/dist/engine/run-environment.d.ts +30 -0
  63. package/dist/engine/run-environment.js +77 -0
  64. package/dist/engine/run-finalize.d.ts +58 -0
  65. package/dist/engine/run-finalize.js +245 -0
  66. package/dist/engine/run-goal.d.ts +58 -0
  67. package/dist/engine/run-goal.js +188 -0
  68. package/dist/engine/run-image-input.d.ts +1 -1
  69. package/dist/engine/run-image-input.js +5 -3
  70. package/dist/engine/run-session-open.d.ts +41 -0
  71. package/dist/engine/run-session-open.js +186 -0
  72. package/dist/engine/run-setup.d.ts +42 -0
  73. package/dist/engine/run-setup.js +58 -0
  74. package/dist/engine/run-tooling.d.ts +125 -0
  75. package/dist/engine/run-tooling.js +283 -0
  76. package/dist/engine/run-types.d.ts +139 -0
  77. package/dist/engine/run-types.js +12 -0
  78. package/dist/engine/run-workspace.d.ts +50 -0
  79. package/dist/engine/run-workspace.js +114 -0
  80. package/dist/engine/steer-queue.d.ts +1 -1
  81. package/dist/engine/subagent-spawner.d.ts +32 -0
  82. package/dist/engine/subagent-spawner.js +287 -0
  83. package/dist/engine/tool-summary.d.ts +2 -2
  84. package/dist/engine/tool-summary.js +2 -2
  85. package/dist/engine/turn-loop.d.ts +49 -10
  86. package/dist/engine/turn-loop.js +370 -104
  87. package/dist/engine/types.d.ts +30 -3
  88. package/dist/engine/types.js +1 -1
  89. package/dist/{engine/goal.d.ts → goal/lifecycle.d.ts} +76 -4
  90. package/dist/goal/lifecycle.js +482 -0
  91. package/dist/hooks/events.d.ts +24 -10
  92. package/dist/hooks/goal-stop-hook.d.ts +17 -28
  93. package/dist/hooks/goal-stop-hook.js +110 -465
  94. package/dist/hooks/registry.js +1 -1
  95. package/dist/index.d.ts +48 -108
  96. package/dist/index.extension.d.ts +51 -0
  97. package/dist/index.extension.js +39 -0
  98. package/dist/index.internal.d.ts +86 -0
  99. package/dist/index.internal.js +92 -0
  100. package/dist/index.js +34 -123
  101. package/dist/links/cli.d.ts +48 -0
  102. package/dist/links/cli.js +617 -0
  103. package/dist/links/http.d.ts +40 -0
  104. package/dist/links/http.js +166 -0
  105. package/dist/links/index.d.ts +4 -0
  106. package/dist/links/index.js +3 -0
  107. package/dist/links/link-action-tool.d.ts +5 -0
  108. package/dist/links/link-action-tool.js +241 -0
  109. package/dist/links/providers.d.ts +8 -0
  110. package/dist/links/providers.js +665 -0
  111. package/dist/links/types.d.ts +44 -0
  112. package/dist/llm/client-base.d.ts +7 -0
  113. package/dist/llm/client-base.js +60 -0
  114. package/dist/llm/model-pool.d.ts +1 -1
  115. package/dist/llm/model-pool.js +1 -1
  116. package/dist/llm/providers/anthropic.d.ts +1 -0
  117. package/dist/llm/providers/anthropic.js +9 -0
  118. package/dist/llm/providers/openai.d.ts +1 -0
  119. package/dist/llm/providers/openai.js +17 -0
  120. package/dist/model-catalog/index.js +15 -2
  121. package/dist/model-catalog/resolve.d.ts +13 -1
  122. package/dist/model-catalog/resolve.js +37 -2
  123. package/dist/model-catalog/types.d.ts +74 -48
  124. package/dist/model-catalog/types.js +16 -5
  125. package/dist/model-catalog/upsert.d.ts +3 -1
  126. package/dist/model-catalog/upsert.js +9 -0
  127. package/dist/onboarding.d.ts +0 -1
  128. package/dist/onboarding.js +1 -22
  129. package/dist/panel-apps/bindings.d.ts +24 -0
  130. package/dist/panel-apps/bindings.js +69 -0
  131. package/dist/panel-apps/github-archive.d.ts +21 -0
  132. package/dist/panel-apps/github-archive.js +98 -0
  133. package/dist/panel-apps/index.d.ts +4 -0
  134. package/dist/panel-apps/index.js +4 -0
  135. package/dist/panel-apps/installer.d.ts +68 -0
  136. package/dist/panel-apps/installer.js +622 -0
  137. package/dist/panel-apps/manifest.d.ts +364 -0
  138. package/dist/panel-apps/manifest.js +189 -0
  139. package/dist/panel-apps/paths.d.ts +13 -0
  140. package/dist/panel-apps/paths.js +38 -0
  141. package/dist/panel-apps/registry.d.ts +51 -0
  142. package/dist/panel-apps/registry.js +99 -0
  143. package/dist/panel-apps/runtime.d.ts +80 -0
  144. package/dist/panel-apps/runtime.js +154 -0
  145. package/dist/plugins/gitOps.js +8 -1
  146. package/dist/plugins/installedPlugins.d.ts +2 -1
  147. package/dist/plugins/installedPlugins.js +146 -8
  148. package/dist/plugins/installer/codex/convertAgents.d.ts +4 -1
  149. package/dist/plugins/installer/codex/convertAgents.js +62 -8
  150. package/dist/plugins/installer/codex/convertCommands.d.ts +5 -5
  151. package/dist/plugins/installer/codex/convertCommands.js +35 -12
  152. package/dist/plugins/installer/codex/convertHooks.d.ts +10 -0
  153. package/dist/plugins/installer/codex/convertHooks.js +82 -0
  154. package/dist/plugins/installer/codex/convertSkills.js +41 -6
  155. package/dist/plugins/installer/install.d.ts +7 -1
  156. package/dist/plugins/installer/install.js +21 -87
  157. package/dist/plugins/installer/installFromArchive.d.ts +26 -4
  158. package/dist/plugins/installer/installFromArchive.js +44 -27
  159. package/dist/plugins/installer/installFromNpm.d.ts +31 -0
  160. package/dist/plugins/installer/installFromNpm.js +273 -0
  161. package/dist/plugins/installer/loadPluginAgents.js +17 -4
  162. package/dist/plugins/installer/loadPluginMcp.d.ts +14 -0
  163. package/dist/plugins/installer/loadPluginMcp.js +245 -35
  164. package/dist/plugins/installer/normalizeManifest.d.ts +13 -0
  165. package/dist/plugins/installer/normalizeManifest.js +306 -0
  166. package/dist/plugins/installer/npmTar.d.ts +13 -0
  167. package/dist/plugins/installer/npmTar.js +321 -0
  168. package/dist/plugins/installer/parseSource.d.ts +11 -0
  169. package/dist/plugins/installer/parseSource.js +48 -0
  170. package/dist/plugins/installer/preview.d.ts +101 -0
  171. package/dist/plugins/installer/preview.js +336 -0
  172. package/dist/plugins/installer/projectPluginSource.d.ts +14 -0
  173. package/dist/plugins/installer/projectPluginSource.js +140 -0
  174. package/dist/plugins/installer/types.d.ts +775 -0
  175. package/dist/plugins/installer/types.js +100 -0
  176. package/dist/plugins/installer/unzip.d.ts +11 -0
  177. package/dist/plugins/installer/unzip.js +123 -9
  178. package/dist/plugins/installer/update.d.ts +2 -2
  179. package/dist/plugins/installer/update.js +43 -4
  180. package/dist/plugins/loadPluginHooks.d.ts +19 -2
  181. package/dist/plugins/loadPluginHooks.js +97 -86
  182. package/dist/plugins/pluginAutomationTemplates.d.ts +18 -0
  183. package/dist/plugins/pluginAutomationTemplates.js +50 -0
  184. package/dist/plugins/pluginCatalog.d.ts +45 -0
  185. package/dist/plugins/pluginCatalog.js +87 -0
  186. package/dist/plugins/pluginCommandHook.d.ts +6 -0
  187. package/dist/plugins/pluginCommandHook.js +25 -8
  188. package/dist/plugins/pluginCommandsLoader.d.ts +19 -0
  189. package/dist/plugins/pluginCommandsLoader.js +181 -7
  190. package/dist/plugins/pluginContent.d.ts +10 -1
  191. package/dist/plugins/pluginContent.js +87 -30
  192. package/dist/plugins/pluginHookApproval.d.ts +30 -0
  193. package/dist/plugins/pluginHookApproval.js +160 -0
  194. package/dist/plugins/pluginHookIntegrity.d.ts +69 -0
  195. package/dist/plugins/pluginHookIntegrity.js +361 -0
  196. package/dist/plugins/pluginInstaller.js +71 -12
  197. package/dist/plugins/pluginMcpApproval.d.ts +19 -0
  198. package/dist/plugins/pluginMcpApproval.js +110 -0
  199. package/dist/plugins/pluginMcpIntegrity.d.ts +21 -0
  200. package/dist/plugins/pluginMcpIntegrity.js +74 -0
  201. package/dist/plugins/types.d.ts +30 -0
  202. package/dist/plugins/varRewrite.d.ts +9 -5
  203. package/dist/plugins/varRewrite.js +26 -17
  204. package/dist/preset/index.d.ts +11 -8
  205. package/dist/preset/index.js +62 -203
  206. package/dist/product/define.js +9 -3
  207. package/dist/product/types.d.ts +0 -2
  208. package/dist/profile/activation.d.ts +36 -0
  209. package/dist/profile/activation.js +57 -0
  210. package/dist/profile/catalog-store.d.ts +77 -0
  211. package/dist/profile/catalog-store.js +346 -0
  212. package/dist/profile/catalog.d.ts +54 -0
  213. package/dist/profile/catalog.js +152 -0
  214. package/dist/profile/index.d.ts +7 -0
  215. package/dist/profile/index.js +7 -0
  216. package/dist/profile/requirements.d.ts +76 -0
  217. package/dist/profile/requirements.js +117 -0
  218. package/dist/profile/resolve.d.ts +11 -0
  219. package/dist/profile/resolve.js +41 -0
  220. package/dist/profile/store.d.ts +17 -0
  221. package/dist/profile/store.js +167 -0
  222. package/dist/profile/types.d.ts +321 -0
  223. package/dist/profile/types.js +104 -0
  224. package/dist/prompt/composer.d.ts +46 -7
  225. package/dist/prompt/composer.js +78 -48
  226. package/dist/prompt/instruction-scanner.d.ts +6 -5
  227. package/dist/prompt/instruction-scanner.js +8 -23
  228. package/dist/prompt/section-loader.d.ts +2 -2
  229. package/dist/prompt/section-loader.js +7 -4
  230. package/dist/prompt/sections/browser.md +10 -9
  231. package/dist/prompt/sections/harness-base.md +9 -0
  232. package/dist/protocol/chat-session-manager.d.ts +64 -1
  233. package/dist/protocol/chat-session-manager.js +104 -0
  234. package/dist/protocol/chat-session.d.ts +61 -10
  235. package/dist/protocol/chat-session.js +135 -25
  236. package/dist/protocol/client.d.ts +33 -3
  237. package/dist/protocol/client.js +96 -5
  238. package/dist/protocol/index.d.ts +2 -2
  239. package/dist/protocol/index.js +2 -2
  240. package/dist/protocol/mobile-remote-types.d.ts +406 -0
  241. package/dist/protocol/mobile-remote-types.js +1 -0
  242. package/dist/protocol/server.d.ts +127 -3
  243. package/dist/protocol/server.js +1309 -182
  244. package/dist/protocol/types.d.ts +152 -34
  245. package/dist/protocol/types.js +16 -0
  246. package/dist/run/ArtifactTracker.d.ts +6 -1
  247. package/dist/run/ArtifactTracker.js +29 -21
  248. package/dist/run/EngineRunner.d.ts +2 -0
  249. package/dist/run/EngineRunner.js +1 -0
  250. package/dist/run/RunManager.d.ts +26 -0
  251. package/dist/run/RunManager.js +82 -11
  252. package/dist/run/factory.d.ts +3 -0
  253. package/dist/run/factory.js +2 -0
  254. package/dist/runtime/safe-spawn.d.ts +6 -0
  255. package/dist/runtime/safe-spawn.js +8 -13
  256. package/dist/services/auto-dream.d.ts +13 -1
  257. package/dist/services/auto-dream.js +56 -8
  258. package/dist/services/dream-consolidation.js +10 -1
  259. package/dist/services/memory-orchestrator.js +6 -2
  260. package/dist/services/oauth.js +4 -1
  261. package/dist/services/session-memory.d.ts +4 -4
  262. package/dist/services/session-memory.js +13 -10
  263. package/dist/session/memory.d.ts +26 -7
  264. package/dist/session/memory.js +79 -21
  265. package/dist/session/session-manager.d.ts +182 -28
  266. package/dist/session/session-manager.js +910 -130
  267. package/dist/session/session-message.d.ts +22 -0
  268. package/dist/session/session-message.js +1 -0
  269. package/dist/session/transcript.d.ts +46 -5
  270. package/dist/session/transcript.js +159 -3
  271. package/dist/settings/feature-flags.d.ts +40 -0
  272. package/dist/settings/feature-flags.js +40 -0
  273. package/dist/settings/manager.d.ts +39 -1
  274. package/dist/settings/manager.js +102 -41
  275. package/dist/settings/migrate-config.js +4 -2
  276. package/dist/settings/schema.d.ts +511 -177
  277. package/dist/settings/schema.js +98 -25
  278. package/dist/skills/scanner.d.ts +6 -2
  279. package/dist/skills/scanner.js +160 -9
  280. package/dist/sources/adapter.d.ts +14 -0
  281. package/dist/sources/adapter.js +7 -0
  282. package/dist/sources/adapters/local-files.d.ts +10 -0
  283. package/dist/sources/adapters/local-files.js +127 -0
  284. package/dist/sources/adapters/mcp-resource.d.ts +17 -0
  285. package/dist/sources/adapters/mcp-resource.js +41 -0
  286. package/dist/sources/adapters/mock.d.ts +3 -0
  287. package/dist/sources/adapters/mock.js +29 -0
  288. package/dist/sources/binding.d.ts +6 -0
  289. package/dist/sources/binding.js +24 -0
  290. package/dist/sources/catalog.d.ts +6 -0
  291. package/dist/sources/catalog.js +64 -0
  292. package/dist/sources/context-summary.d.ts +8 -0
  293. package/dist/sources/context-summary.js +13 -0
  294. package/dist/sources/credential-status.d.ts +2 -0
  295. package/dist/sources/credential-status.js +13 -0
  296. package/dist/sources/index.d.ts +10 -0
  297. package/dist/sources/index.js +10 -0
  298. package/dist/sources/resolve.d.ts +28 -0
  299. package/dist/sources/resolve.js +47 -0
  300. package/dist/sources/truncate-utf8.d.ts +7 -0
  301. package/dist/sources/truncate-utf8.js +18 -0
  302. package/dist/sources/types.d.ts +71 -0
  303. package/dist/sources/types.js +26 -0
  304. package/dist/testing/fetch-stub.d.ts +32 -0
  305. package/dist/testing/fetch-stub.js +24 -0
  306. package/dist/themes/image.d.ts +18 -0
  307. package/dist/themes/image.js +117 -0
  308. package/dist/themes/index.d.ts +4 -0
  309. package/dist/themes/index.js +4 -0
  310. package/dist/themes/installer.d.ts +50 -0
  311. package/dist/themes/installer.js +290 -0
  312. package/dist/themes/manifest.d.ts +102 -0
  313. package/dist/themes/manifest.js +86 -0
  314. package/dist/themes/paths.d.ts +14 -0
  315. package/dist/themes/paths.js +33 -0
  316. package/dist/tool-system/browser-bridge.d.ts +53 -11
  317. package/dist/tool-system/browser-bridge.js +8 -9
  318. package/dist/tool-system/builtin/agent-heartbeat.d.ts +2 -2
  319. package/dist/tool-system/builtin/agent-heartbeat.js +20 -6
  320. package/dist/tool-system/builtin/agent-notifications.d.ts +127 -72
  321. package/dist/tool-system/builtin/agent-notifications.js +291 -101
  322. package/dist/tool-system/builtin/agent-output-file.js +1 -3
  323. package/dist/tool-system/builtin/agent-progress.d.ts +6 -0
  324. package/dist/tool-system/builtin/agent-progress.js +83 -0
  325. package/dist/tool-system/builtin/agent-registry.d.ts +38 -2
  326. package/dist/tool-system/builtin/agent-registry.js +178 -9
  327. package/dist/tool-system/builtin/agent-transcript-translator.js +1 -1
  328. package/dist/tool-system/builtin/agent.d.ts +2 -0
  329. package/dist/tool-system/builtin/agent.js +274 -33
  330. package/dist/tool-system/builtin/background-jobs.d.ts +55 -2
  331. package/dist/tool-system/builtin/background-jobs.js +96 -4
  332. package/dist/tool-system/builtin/background-work.d.ts +6 -0
  333. package/dist/tool-system/builtin/background-work.js +8 -1
  334. package/dist/tool-system/builtin/bash.js +5 -2
  335. package/dist/tool-system/builtin/browser-tools.d.ts +6 -3
  336. package/dist/tool-system/builtin/browser-tools.js +89 -23
  337. package/dist/tool-system/builtin/edit-model-catalog.d.ts +6 -0
  338. package/dist/tool-system/builtin/edit-model-catalog.js +172 -12
  339. package/dist/tool-system/builtin/edit.js +2 -6
  340. package/dist/tool-system/builtin/file-cache.d.ts +2 -0
  341. package/dist/tool-system/builtin/file-cache.js +4 -0
  342. package/dist/tool-system/builtin/generate-image.js +17 -10
  343. package/dist/tool-system/builtin/generate-video.js +26 -7
  344. package/dist/tool-system/builtin/grep.js +2 -2
  345. package/dist/tool-system/builtin/image-uploader.js +7 -1
  346. package/dist/tool-system/builtin/index.d.ts +32 -7
  347. package/dist/tool-system/builtin/index.js +237 -167
  348. package/dist/tool-system/builtin/memory.d.ts +6 -0
  349. package/dist/tool-system/builtin/memory.js +36 -15
  350. package/dist/tool-system/builtin/panel.d.ts +9 -0
  351. package/dist/tool-system/builtin/panel.js +314 -0
  352. package/dist/tool-system/builtin/read.js +5 -1
  353. package/dist/tool-system/builtin/send-message-to-session.d.ts +6 -0
  354. package/dist/tool-system/builtin/send-message-to-session.js +67 -0
  355. package/dist/tool-system/builtin/sources.d.ts +8 -0
  356. package/dist/tool-system/builtin/sources.js +137 -0
  357. package/dist/tool-system/builtin/tool-search.js +7 -2
  358. package/dist/tool-system/builtin/update-automation-memory.js +2 -0
  359. package/dist/tool-system/builtin/web-fetch.js +17 -13
  360. package/dist/tool-system/builtin/web-search.js +1 -3
  361. package/dist/tool-system/capability-module.d.ts +93 -0
  362. package/dist/tool-system/capability-module.js +53 -0
  363. package/dist/tool-system/context.d.ts +77 -19
  364. package/dist/tool-system/executor.js +75 -50
  365. package/dist/tool-system/external-tool-exposure.d.ts +60 -0
  366. package/dist/tool-system/external-tool-exposure.js +304 -0
  367. package/dist/tool-system/mcp-manager.d.ts +11 -1
  368. package/dist/tool-system/mcp-manager.js +19 -4
  369. package/dist/tool-system/mcp-tool-policy.d.ts +9 -0
  370. package/dist/tool-system/mcp-tool-policy.js +34 -0
  371. package/dist/tool-system/panel-bridge.d.ts +53 -0
  372. package/dist/tool-system/panel-bridge.js +1 -0
  373. package/dist/tool-system/permission.d.ts +26 -0
  374. package/dist/tool-system/permission.js +46 -0
  375. package/dist/tool-system/registry.d.ts +12 -1
  376. package/dist/tool-system/registry.js +31 -7
  377. package/dist/tool-system/sandbox/index.js +3 -8
  378. package/dist/tool-system/sandbox/seatbelt.js +2 -6
  379. package/dist/tool-system/session-tool-host.d.ts +139 -0
  380. package/dist/tool-system/session-tool-host.js +167 -0
  381. package/dist/tool-system/testing/tool-registry-harness.d.ts +31 -0
  382. package/dist/tool-system/testing/tool-registry-harness.js +51 -0
  383. package/dist/tool-system/validation.d.ts +14 -7
  384. package/dist/tool-system/validation.js +701 -7
  385. package/dist/types.d.ts +186 -20
  386. package/dist/{cc-orchestrator → utils}/cwd-normalize.d.ts +1 -0
  387. package/dist/{cc-orchestrator → utils}/cwd-normalize.js +1 -0
  388. package/dist/utils/file-mutex.d.ts +65 -0
  389. package/dist/utils/file-mutex.js +145 -0
  390. package/dist/utils/json.d.ts +2 -4
  391. package/dist/utils/json.js +2 -4
  392. package/dist/utils/lockfile.d.ts +30 -1
  393. package/dist/utils/lockfile.js +2 -2
  394. package/dist/utils/secret-scrubber.d.ts +8 -0
  395. package/dist/utils/secret-scrubber.js +227 -0
  396. package/dist/utils/toolDisplay.js +1 -1
  397. package/package.json +20 -5
  398. package/THIRD_PARTY_NOTICES.md +0 -206
  399. package/dist/arena/arena.d.ts +0 -45
  400. package/dist/arena/arena.js +0 -362
  401. package/dist/arena/context/context-tools.d.ts +0 -16
  402. package/dist/arena/context/context-tools.js +0 -272
  403. package/dist/arena/context/within-root.d.ts +0 -7
  404. package/dist/arena/context/within-root.js +0 -15
  405. package/dist/arena/detect-mode.d.ts +0 -20
  406. package/dist/arena/detect-mode.js +0 -78
  407. package/dist/arena/digest-builder.d.ts +0 -25
  408. package/dist/arena/digest-builder.js +0 -120
  409. package/dist/arena/index.d.ts +0 -29
  410. package/dist/arena/index.js +0 -29
  411. package/dist/arena/iterate/convergence.d.ts +0 -25
  412. package/dist/arena/iterate/convergence.js +0 -103
  413. package/dist/arena/iterate/formats/index.d.ts +0 -22
  414. package/dist/arena/iterate/formats/index.js +0 -283
  415. package/dist/arena/iterate/index.d.ts +0 -11
  416. package/dist/arena/iterate/index.js +0 -9
  417. package/dist/arena/iterate/iterative-arena.d.ts +0 -23
  418. package/dist/arena/iterate/iterative-arena.js +0 -237
  419. package/dist/arena/iterate/parse.d.ts +0 -42
  420. package/dist/arena/iterate/parse.js +0 -123
  421. package/dist/arena/iterate/phases/argue.d.ts +0 -22
  422. package/dist/arena/iterate/phases/argue.js +0 -165
  423. package/dist/arena/iterate/phases/revise.d.ts +0 -16
  424. package/dist/arena/iterate/phases/revise.js +0 -62
  425. package/dist/arena/iterate/phases/tournament.d.ts +0 -34
  426. package/dist/arena/iterate/phases/tournament.js +0 -113
  427. package/dist/arena/iterate/tools/web-tools.d.ts +0 -13
  428. package/dist/arena/iterate/tools/web-tools.js +0 -54
  429. package/dist/arena/iterate/types.d.ts +0 -152
  430. package/dist/arena/iterate/types.js +0 -8
  431. package/dist/arena/ledger.d.ts +0 -47
  432. package/dist/arena/ledger.js +0 -159
  433. package/dist/arena/lenses/architecture.d.ts +0 -5
  434. package/dist/arena/lenses/architecture.js +0 -22
  435. package/dist/arena/lenses/engineering.d.ts +0 -5
  436. package/dist/arena/lenses/engineering.js +0 -22
  437. package/dist/arena/lenses/general.d.ts +0 -5
  438. package/dist/arena/lenses/general.js +0 -20
  439. package/dist/arena/lenses/index.d.ts +0 -16
  440. package/dist/arena/lenses/index.js +0 -47
  441. package/dist/arena/lenses/product.d.ts +0 -5
  442. package/dist/arena/lenses/product.js +0 -22
  443. package/dist/arena/model-presets.d.ts +0 -23
  444. package/dist/arena/model-presets.js +0 -44
  445. package/dist/arena/phases/adjudication.d.ts +0 -25
  446. package/dist/arena/phases/adjudication.js +0 -142
  447. package/dist/arena/phases/build-consensus.d.ts +0 -30
  448. package/dist/arena/phases/build-consensus.js +0 -85
  449. package/dist/arena/phases/claim-registry.d.ts +0 -26
  450. package/dist/arena/phases/claim-registry.js +0 -60
  451. package/dist/arena/phases/cross-review.d.ts +0 -47
  452. package/dist/arena/phases/cross-review.js +0 -224
  453. package/dist/arena/phases/debate-rounds.d.ts +0 -28
  454. package/dist/arena/phases/debate-rounds.js +0 -161
  455. package/dist/arena/phases/participant-research.d.ts +0 -39
  456. package/dist/arena/phases/participant-research.js +0 -316
  457. package/dist/arena/phases/planning-detail-expansion.d.ts +0 -39
  458. package/dist/arena/phases/planning-detail-expansion.js +0 -120
  459. package/dist/arena/planner.d.ts +0 -28
  460. package/dist/arena/planner.js +0 -312
  461. package/dist/arena/providers/docs.d.ts +0 -7
  462. package/dist/arena/providers/docs.js +0 -111
  463. package/dist/arena/providers/git.d.ts +0 -8
  464. package/dist/arena/providers/git.js +0 -174
  465. package/dist/arena/providers/index.d.ts +0 -32
  466. package/dist/arena/providers/index.js +0 -132
  467. package/dist/arena/providers/none.d.ts +0 -7
  468. package/dist/arena/providers/none.js +0 -11
  469. package/dist/arena/providers/repo.d.ts +0 -7
  470. package/dist/arena/providers/repo.js +0 -258
  471. package/dist/arena/render/session.d.ts +0 -17
  472. package/dist/arena/render/session.js +0 -190
  473. package/dist/arena/render/terminal.d.ts +0 -34
  474. package/dist/arena/render/terminal.js +0 -286
  475. package/dist/arena/strategies/discussion.d.ts +0 -25
  476. package/dist/arena/strategies/discussion.js +0 -143
  477. package/dist/arena/strategies/index.d.ts +0 -15
  478. package/dist/arena/strategies/index.js +0 -28
  479. package/dist/arena/strategies/language-wrapper.d.ts +0 -17
  480. package/dist/arena/strategies/language-wrapper.js +0 -102
  481. package/dist/arena/strategies/lens-wrapper.d.ts +0 -16
  482. package/dist/arena/strategies/lens-wrapper.js +0 -236
  483. package/dist/arena/strategies/planning.d.ts +0 -30
  484. package/dist/arena/strategies/planning.js +0 -225
  485. package/dist/arena/strategies/review.d.ts +0 -26
  486. package/dist/arena/strategies/review.js +0 -168
  487. package/dist/arena/strategies/utils.d.ts +0 -36
  488. package/dist/arena/strategies/utils.js +0 -603
  489. package/dist/arena/tools/selector.d.ts +0 -17
  490. package/dist/arena/tools/selector.js +0 -61
  491. package/dist/arena/transitions.d.ts +0 -53
  492. package/dist/arena/transitions.js +0 -97
  493. package/dist/arena/types.d.ts +0 -518
  494. package/dist/arena/types.js +0 -27
  495. package/dist/cc-orchestrator/agent-adapter.d.ts +0 -54
  496. package/dist/cc-orchestrator/agent-adapter.js +0 -143
  497. package/dist/cc-orchestrator/cc-capability.d.ts +0 -19
  498. package/dist/cc-orchestrator/cc-capability.js +0 -53
  499. package/dist/cc-orchestrator/codex-session-discovery.d.ts +0 -24
  500. package/dist/cc-orchestrator/codex-session-discovery.js +0 -191
  501. package/dist/cc-orchestrator/codex-session-history.d.ts +0 -38
  502. package/dist/cc-orchestrator/codex-session-history.js +0 -247
  503. package/dist/cc-orchestrator/external-agent-bindings.d.ts +0 -27
  504. package/dist/cc-orchestrator/external-agent-bindings.js +0 -150
  505. package/dist/cc-orchestrator/external-agent-changes.d.ts +0 -19
  506. package/dist/cc-orchestrator/external-agent-changes.js +0 -231
  507. package/dist/cc-orchestrator/external-agent-driver.d.ts +0 -19
  508. package/dist/cc-orchestrator/external-agent-driver.js +0 -284
  509. package/dist/cc-orchestrator/external-agent-session-store.d.ts +0 -23
  510. package/dist/cc-orchestrator/external-agent-session-store.js +0 -146
  511. package/dist/cc-orchestrator/index.d.ts +0 -8
  512. package/dist/cc-orchestrator/index.js +0 -8
  513. package/dist/cc-orchestrator/relevance-judge.d.ts +0 -15
  514. package/dist/cc-orchestrator/relevance-judge.js +0 -29
  515. package/dist/cc-orchestrator/session-discovery.d.ts +0 -46
  516. package/dist/cc-orchestrator/session-discovery.js +0 -125
  517. package/dist/cc-orchestrator/session-history.d.ts +0 -54
  518. package/dist/cc-orchestrator/session-history.js +0 -150
  519. package/dist/cron/cron-runtime.d.ts +0 -2
  520. package/dist/cron/cron-runtime.js +0 -2
  521. package/dist/cron/cron-store.d.ts +0 -2
  522. package/dist/cron/cron-store.js +0 -2
  523. package/dist/cron/scheduler.d.ts +0 -7
  524. package/dist/cron/scheduler.js +0 -7
  525. package/dist/engine/goal.js +0 -206
  526. package/dist/external-agents/config.d.ts +0 -2
  527. package/dist/external-agents/config.js +0 -15
  528. package/dist/external-agents/types.d.ts +0 -31
  529. package/dist/git/parse-log.d.ts +0 -13
  530. package/dist/git/parse-log.js +0 -21
  531. package/dist/git/utils.d.ts +0 -49
  532. package/dist/git/utils.js +0 -161
  533. package/dist/git/worktree/crud.d.ts +0 -72
  534. package/dist/git/worktree/crud.js +0 -235
  535. package/dist/git/worktree/diff.d.ts +0 -14
  536. package/dist/git/worktree/diff.js +0 -82
  537. package/dist/git/worktree/git-exec.d.ts +0 -7
  538. package/dist/git/worktree/git-exec.js +0 -87
  539. package/dist/git/worktree/index.d.ts +0 -5
  540. package/dist/git/worktree/index.js +0 -5
  541. package/dist/git/worktree/query.d.ts +0 -43
  542. package/dist/git/worktree/query.js +0 -128
  543. package/dist/git/worktree/slug.d.ts +0 -11
  544. package/dist/git/worktree/slug.js +0 -58
  545. package/dist/git/worktree.d.ts +0 -1
  546. package/dist/git/worktree.js +0 -5
  547. package/dist/lsp/client.d.ts +0 -41
  548. package/dist/lsp/client.js +0 -186
  549. package/dist/lsp/manager.d.ts +0 -40
  550. package/dist/lsp/manager.js +0 -155
  551. package/dist/lsp/root-path.d.ts +0 -9
  552. package/dist/lsp/root-path.js +0 -12
  553. package/dist/lsp/servers.d.ts +0 -16
  554. package/dist/lsp/servers.js +0 -60
  555. package/dist/prompt/sections/coding.md +0 -35
  556. package/dist/quota/credentials.d.ts +0 -3
  557. package/dist/quota/credentials.js +0 -80
  558. package/dist/quota/index.d.ts +0 -36
  559. package/dist/quota/index.js +0 -155
  560. package/dist/quota/types.d.ts +0 -48
  561. package/dist/quota/types.js +0 -13
  562. package/dist/review/review-prompt.d.ts +0 -28
  563. package/dist/review/review-prompt.js +0 -81
  564. package/dist/state.d.ts +0 -160
  565. package/dist/state.js +0 -267
  566. package/dist/tool-system/builtin/apply-patch/applier.d.ts +0 -26
  567. package/dist/tool-system/builtin/apply-patch/applier.js +0 -308
  568. package/dist/tool-system/builtin/apply-patch/backup-targets.d.ts +0 -10
  569. package/dist/tool-system/builtin/apply-patch/backup-targets.js +0 -30
  570. package/dist/tool-system/builtin/apply-patch/index.d.ts +0 -20
  571. package/dist/tool-system/builtin/apply-patch/index.js +0 -105
  572. package/dist/tool-system/builtin/apply-patch/parser.d.ts +0 -17
  573. package/dist/tool-system/builtin/apply-patch/parser.js +0 -212
  574. package/dist/tool-system/builtin/apply-patch/seek-sequence.d.ts +0 -18
  575. package/dist/tool-system/builtin/apply-patch/seek-sequence.js +0 -123
  576. package/dist/tool-system/builtin/apply-patch/types.d.ts +0 -49
  577. package/dist/tool-system/builtin/apply-patch/types.js +0 -13
  578. package/dist/tool-system/builtin/arena.d.ts +0 -31
  579. package/dist/tool-system/builtin/arena.js +0 -416
  580. package/dist/tool-system/builtin/brief.d.ts +0 -6
  581. package/dist/tool-system/builtin/brief.js +0 -41
  582. package/dist/tool-system/builtin/check-quota.d.ts +0 -15
  583. package/dist/tool-system/builtin/check-quota.js +0 -34
  584. package/dist/tool-system/builtin/drive-claude-code.d.ts +0 -51
  585. package/dist/tool-system/builtin/drive-claude-code.js +0 -698
  586. package/dist/tool-system/builtin/lsp.d.ts +0 -7
  587. package/dist/tool-system/builtin/lsp.js +0 -144
  588. package/dist/tool-system/builtin/notebook-edit.d.ts +0 -7
  589. package/dist/tool-system/builtin/notebook-edit.js +0 -127
  590. package/dist/tool-system/builtin/worktree.d.ts +0 -11
  591. package/dist/tool-system/builtin/worktree.js +0 -363
  592. /package/dist/{external-agents → links}/types.js +0 -0
  593. /package/dist/{engine/session-usage.d.ts → session/usage.d.ts} +0 -0
  594. /package/dist/{engine/session-usage.js → session/usage.js} +0 -0
@@ -20,6 +20,8 @@ export declare const CapabilityOverridesSchema: z.ZodOptional<z.ZodObject<{
20
20
  agents: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodEnum<["inherit", "on", "off"]>>>;
21
21
  mcp: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodEnum<["inherit", "on", "off"]>>>;
22
22
  builtin: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodEnum<["inherit", "on", "off"]>>>;
23
+ /** Per-project Pet capability preferences layered over the user baseline. */
24
+ pet: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodEnum<["inherit", "on", "off"]>>>;
23
25
  /**
24
26
  * Per-hook overlay for PLUGIN-provided hooks, keyed by
25
27
  * `pluginHookKey()` (`<plugin>:<RawEvent>:<command>`). Finer-grained
@@ -34,6 +36,7 @@ export declare const CapabilityOverridesSchema: z.ZodOptional<z.ZodObject<{
34
36
  skills?: Record<string, "off" | "on" | "inherit"> | undefined;
35
37
  plugins?: Record<string, "off" | "on" | "inherit"> | undefined;
36
38
  agents?: Record<string, "off" | "on" | "inherit"> | undefined;
39
+ pet?: Record<string, "off" | "on" | "inherit"> | undefined;
37
40
  pluginHooks?: Record<string, "off" | "on" | "inherit"> | undefined;
38
41
  }, {
39
42
  builtin?: Record<string, "off" | "on" | "inherit"> | undefined;
@@ -41,12 +44,13 @@ export declare const CapabilityOverridesSchema: z.ZodOptional<z.ZodObject<{
41
44
  skills?: Record<string, "off" | "on" | "inherit"> | undefined;
42
45
  plugins?: Record<string, "off" | "on" | "inherit"> | undefined;
43
46
  agents?: Record<string, "off" | "on" | "inherit"> | undefined;
47
+ pet?: Record<string, "off" | "on" | "inherit"> | undefined;
44
48
  pluginHooks?: Record<string, "off" | "on" | "inherit"> | undefined;
45
49
  }>>;
46
50
  export type CapabilityOverrides = z.infer<typeof CapabilityOverridesSchema>;
47
51
  export declare const SettingsSchema: z.ZodObject<{
48
52
  agent: z.ZodDefault<z.ZodObject<{
49
- preset: z.ZodDefault<z.ZodString>;
53
+ preset: z.ZodOptional<z.ZodString>;
50
54
  enabledBuiltinTools: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
51
55
  disabledBuiltinTools: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
52
56
  customSystemPrompt: z.ZodOptional<z.ZodString>;
@@ -64,9 +68,9 @@ export declare const SettingsSchema: z.ZodObject<{
64
68
  compatCodex?: boolean | undefined;
65
69
  }>>;
66
70
  }, "strip", z.ZodTypeAny, {
67
- preset: string;
68
71
  enabledBuiltinTools: string[];
69
72
  disabledBuiltinTools: string[];
73
+ preset?: string | undefined;
70
74
  customSystemPrompt?: string | undefined;
71
75
  appendSystemPrompt?: string | undefined;
72
76
  responseLanguage?: string | undefined;
@@ -96,6 +100,33 @@ export declare const SettingsSchema: z.ZodObject<{
96
100
  * Can also be disabled via env var `DISABLE_AUTOUPDATER=1`.
97
101
  */
98
102
  autoUpdates: z.ZodDefault<z.ZodBoolean>;
103
+ /**
104
+ * Pet (Mimi) global-view preferences.
105
+ */
106
+ pet: z.ZodDefault<z.ZodObject<{
107
+ /**
108
+ * Show external Codex CLI/App sessions in the Pet global view. When off,
109
+ * the host does not scan or tail Codex session files at all. Default off.
110
+ */
111
+ showExternalCodexSessions: z.ZodDefault<z.ZodBoolean>;
112
+ /** Same, for external Claude Code CLI sessions. Default off. */
113
+ showExternalClaudeSessions: z.ZodDefault<z.ZodBoolean>;
114
+ /**
115
+ * Auto-extract durable memories + an event-journal entry from each closed
116
+ * Mimi topic segment. When off, segment closure still archives the model
117
+ * context (so it cannot grow without bound) but writes no journal/memory.
118
+ * Default on.
119
+ */
120
+ memoryAutoExtract: z.ZodDefault<z.ZodBoolean>;
121
+ }, "strip", z.ZodTypeAny, {
122
+ showExternalCodexSessions: boolean;
123
+ showExternalClaudeSessions: boolean;
124
+ memoryAutoExtract: boolean;
125
+ }, {
126
+ showExternalCodexSessions?: boolean | undefined;
127
+ showExternalClaudeSessions?: boolean | undefined;
128
+ memoryAutoExtract?: boolean | undefined;
129
+ }>>;
99
130
  /**
100
131
  * Image generation is a general capability, decoupled from LLM providers
101
132
  * (TODO 7.1): a vendor may use different keys/endpoints/models for chat vs
@@ -269,16 +300,16 @@ export declare const SettingsSchema: z.ZodObject<{
269
300
  }, "strip", z.ZodTypeAny, {
270
301
  id: string;
271
302
  model: string;
272
- catalogId: string;
273
303
  tag: "text" | "image" | "video" | "audio";
304
+ catalogId: string;
274
305
  baseUrl?: string | undefined;
275
306
  credentialId?: string | undefined;
276
307
  paramValues?: Record<string, unknown> | undefined;
277
308
  }, {
278
309
  id: string;
279
310
  model: string;
280
- catalogId: string;
281
311
  tag: "text" | "image" | "video" | "audio";
312
+ catalogId: string;
282
313
  baseUrl?: string | undefined;
283
314
  credentialId?: string | undefined;
284
315
  paramValues?: Record<string, unknown> | undefined;
@@ -324,21 +355,21 @@ export declare const SettingsSchema: z.ZodObject<{
324
355
  argsPattern?: Record<string, string> | undefined;
325
356
  }>, "many">>;
326
357
  }, "strip", z.ZodTypeAny, {
327
- defaultMode: "auto" | "default" | "acceptEdits" | "dontAsk" | "bypassPermissions" | "plan";
328
358
  rules: {
329
359
  tool: string;
330
360
  decision: "allow" | "deny" | "ask";
331
361
  reason?: string | undefined;
332
362
  argsPattern?: Record<string, string> | undefined;
333
363
  }[];
364
+ defaultMode: "default" | "auto" | "acceptEdits" | "dontAsk" | "bypassPermissions" | "plan";
334
365
  }, {
335
- defaultMode?: "auto" | "default" | "acceptEdits" | "dontAsk" | "bypassPermissions" | "plan" | undefined;
336
366
  rules?: {
337
367
  tool: string;
338
368
  decision: "allow" | "deny" | "ask";
339
369
  reason?: string | undefined;
340
370
  argsPattern?: Record<string, string> | undefined;
341
371
  }[] | undefined;
372
+ defaultMode?: "default" | "auto" | "acceptEdits" | "dontAsk" | "bypassPermissions" | "plan" | undefined;
342
373
  }>>;
343
374
  context: z.ZodDefault<z.ZodObject<{
344
375
  maxTokens: z.ZodDefault<z.ZodNumber>;
@@ -386,71 +417,88 @@ export declare const SettingsSchema: z.ZodObject<{
386
417
  envHeaders: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
387
418
  credentialRef: z.ZodOptional<z.ZodString>;
388
419
  enabled: z.ZodOptional<z.ZodBoolean>;
420
+ allowedTools: z.ZodOptional<z.ZodArray<z.ZodEffects<z.ZodString, string, string>, "many">>;
421
+ disabledTools: z.ZodOptional<z.ZodArray<z.ZodEffects<z.ZodString, string, string>, "many">>;
389
422
  }, "strip", z.ZodTypeAny, {
390
423
  name: string;
391
424
  enabled?: boolean | undefined;
392
425
  url?: string | undefined;
393
426
  args?: string[] | undefined;
394
427
  command?: string | undefined;
428
+ credentialRef?: string | undefined;
395
429
  env?: Record<string, string> | undefined;
396
430
  transport?: "stdio" | "sse" | "streamable-http" | "inprocess" | undefined;
397
431
  headers?: Record<string, string> | undefined;
398
432
  envVars?: string[] | undefined;
399
433
  bearerTokenEnvVar?: string | undefined;
400
434
  envHeaders?: Record<string, string> | undefined;
401
- credentialRef?: string | undefined;
435
+ allowedTools?: string[] | undefined;
436
+ disabledTools?: string[] | undefined;
402
437
  }, {
403
438
  name: string;
404
439
  enabled?: boolean | undefined;
405
440
  url?: string | undefined;
406
441
  args?: string[] | undefined;
407
442
  command?: string | undefined;
443
+ credentialRef?: string | undefined;
408
444
  env?: Record<string, string> | undefined;
409
445
  transport?: "stdio" | "sse" | "streamable-http" | "inprocess" | undefined;
410
446
  headers?: Record<string, string> | undefined;
411
447
  envVars?: string[] | undefined;
412
448
  bearerTokenEnvVar?: string | undefined;
413
449
  envHeaders?: Record<string, string> | undefined;
414
- credentialRef?: string | undefined;
450
+ allowedTools?: string[] | undefined;
451
+ disabledTools?: string[] | undefined;
415
452
  }>>, Record<string, {
416
453
  name: string;
417
454
  enabled?: boolean | undefined;
418
455
  url?: string | undefined;
419
456
  args?: string[] | undefined;
420
457
  command?: string | undefined;
458
+ credentialRef?: string | undefined;
421
459
  env?: Record<string, string> | undefined;
422
460
  transport?: "stdio" | "sse" | "streamable-http" | "inprocess" | undefined;
423
461
  headers?: Record<string, string> | undefined;
424
462
  envVars?: string[] | undefined;
425
463
  bearerTokenEnvVar?: string | undefined;
426
464
  envHeaders?: Record<string, string> | undefined;
427
- credentialRef?: string | undefined;
465
+ allowedTools?: string[] | undefined;
466
+ disabledTools?: string[] | undefined;
428
467
  }>, unknown>>;
429
468
  /**
430
- * User supplements for PLUGIN-provided MCP servers, keyed by the server's
431
- * `<plugin>:<server>` name. Layered onto the plugin config at merge time
432
- * (mergePluginMcpServers). Only env/credential fields are accepted —
433
- * command/args/url/transport are intentionally absent and `.strict()`
434
- * rejects them, so a plugin update is never shadowed by a stale copy.
469
+ * User policy/supplements for PLUGIN-provided MCP servers, keyed by the
470
+ * server's `<plugin>:<server>` name. Layered onto the plugin config at merge
471
+ * time (mergePluginMcpServers). Only server/tool policy + env/credential
472
+ * fields are accepted — command/args/url/transport are intentionally absent and
473
+ * `.strict()` rejects them, so an update is never shadowed by a stale copy.
435
474
  */
436
475
  mcpServerOverrides: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodObject<{
476
+ enabled: z.ZodOptional<z.ZodBoolean>;
477
+ allowedTools: z.ZodOptional<z.ZodArray<z.ZodEffects<z.ZodString, string, string>, "many">>;
478
+ disabledTools: z.ZodOptional<z.ZodArray<z.ZodEffects<z.ZodString, string, string>, "many">>;
437
479
  env: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
438
480
  envVars: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
439
481
  credentialRef: z.ZodOptional<z.ZodString>;
440
482
  bearerTokenEnvVar: z.ZodOptional<z.ZodString>;
441
483
  envHeaders: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
442
484
  }, "strict", z.ZodTypeAny, {
485
+ enabled?: boolean | undefined;
486
+ credentialRef?: string | undefined;
443
487
  env?: Record<string, string> | undefined;
444
488
  envVars?: string[] | undefined;
445
489
  bearerTokenEnvVar?: string | undefined;
446
490
  envHeaders?: Record<string, string> | undefined;
447
- credentialRef?: string | undefined;
491
+ allowedTools?: string[] | undefined;
492
+ disabledTools?: string[] | undefined;
448
493
  }, {
494
+ enabled?: boolean | undefined;
495
+ credentialRef?: string | undefined;
449
496
  env?: Record<string, string> | undefined;
450
497
  envVars?: string[] | undefined;
451
498
  bearerTokenEnvVar?: string | undefined;
452
499
  envHeaders?: Record<string, string> | undefined;
453
- credentialRef?: string | undefined;
500
+ allowedTools?: string[] | undefined;
501
+ disabledTools?: string[] | undefined;
454
502
  }>>>;
455
503
  /**
456
504
  * Skill names hidden from the LLM. Names include the full
@@ -466,6 +514,19 @@ export declare const SettingsSchema: z.ZodObject<{
466
514
  * names (no colon suffix). See scanSkills(opts.disabledPlugins).
467
515
  */
468
516
  disabledPlugins: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
517
+ /** Globally disabled Panel Apps, including their declared tools and bundled Skills. */
518
+ disabledPanelApps: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
519
+ /**
520
+ * Explicit project binding for installed Panel Apps. Installed apps form a
521
+ * global catalog, but only IDs in this project-owned list contribute panel
522
+ * UI, Agent tools, bundled Skills, or project-scoped storage.
523
+ */
524
+ panelAppBindings: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
525
+ /**
526
+ * Legacy per-project Panel App policy. `on` is read as an explicit binding
527
+ * during migration; new writes use panelAppBindings.
528
+ */
529
+ panelAppOverrides: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodEnum<["inherit", "on", "off"]>>>;
469
530
  /**
470
531
  * Sub-agent role names (the `name` in .code-shell/agents/*.md) to
471
532
  * hide from the registry. A disabled role is filtered out at load
@@ -485,6 +546,8 @@ export declare const SettingsSchema: z.ZodObject<{
485
546
  agents: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodEnum<["inherit", "on", "off"]>>>;
486
547
  mcp: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodEnum<["inherit", "on", "off"]>>>;
487
548
  builtin: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodEnum<["inherit", "on", "off"]>>>;
549
+ /** Per-project Pet capability preferences layered over the user baseline. */
550
+ pet: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodEnum<["inherit", "on", "off"]>>>;
488
551
  /**
489
552
  * Per-hook overlay for PLUGIN-provided hooks, keyed by
490
553
  * `pluginHookKey()` (`<plugin>:<RawEvent>:<command>`). Finer-grained
@@ -499,6 +562,7 @@ export declare const SettingsSchema: z.ZodObject<{
499
562
  skills?: Record<string, "off" | "on" | "inherit"> | undefined;
500
563
  plugins?: Record<string, "off" | "on" | "inherit"> | undefined;
501
564
  agents?: Record<string, "off" | "on" | "inherit"> | undefined;
565
+ pet?: Record<string, "off" | "on" | "inherit"> | undefined;
502
566
  pluginHooks?: Record<string, "off" | "on" | "inherit"> | undefined;
503
567
  }, {
504
568
  builtin?: Record<string, "off" | "on" | "inherit"> | undefined;
@@ -506,8 +570,95 @@ export declare const SettingsSchema: z.ZodObject<{
506
570
  skills?: Record<string, "off" | "on" | "inherit"> | undefined;
507
571
  plugins?: Record<string, "off" | "on" | "inherit"> | undefined;
508
572
  agents?: Record<string, "off" | "on" | "inherit"> | undefined;
573
+ pet?: Record<string, "off" | "on" | "inherit"> | undefined;
509
574
  pluginHooks?: Record<string, "off" | "on" | "inherit"> | undefined;
510
575
  }>>;
576
+ /**
577
+ * 由 WorkspaceProfile 激活事务整体拥有的子树(profile/activation.ts)。
578
+ * 激活/切换 = 原子全量重写本子树;关闭 = 删除本子树。
579
+ * `overrides` 是 profile 声明展开的 force-enable 快照,折叠时排在
580
+ * 用户手写 capabilityOverrides 之下(用户按 key 永远赢,见 overlay.ts
581
+ * 的 effectiveProjectOverrides)。只存在于 PROJECT settings。
582
+ */
583
+ profile: z.ZodOptional<z.ZodObject<{
584
+ active: z.ZodString;
585
+ preset: z.ZodOptional<z.ZodString>;
586
+ overrides: z.ZodOptional<z.ZodObject<{
587
+ skills: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodEnum<["inherit", "on", "off"]>>>;
588
+ plugins: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodEnum<["inherit", "on", "off"]>>>;
589
+ agents: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodEnum<["inherit", "on", "off"]>>>;
590
+ mcp: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodEnum<["inherit", "on", "off"]>>>;
591
+ builtin: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodEnum<["inherit", "on", "off"]>>>;
592
+ /** Per-project Pet capability preferences layered over the user baseline. */
593
+ pet: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodEnum<["inherit", "on", "off"]>>>;
594
+ /**
595
+ * Per-hook overlay for PLUGIN-provided hooks, keyed by
596
+ * `pluginHookKey()` (`<plugin>:<RawEvent>:<command>`). Finer-grained
597
+ * than `plugins` (which kills a whole plugin): "off" suppresses one
598
+ * hook for this project only. Only "off" is meaningful today — plugin
599
+ * hooks have no global disable list to force back "on" from.
600
+ */
601
+ pluginHooks: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodEnum<["inherit", "on", "off"]>>>;
602
+ }, "strip", z.ZodTypeAny, {
603
+ builtin?: Record<string, "off" | "on" | "inherit"> | undefined;
604
+ mcp?: Record<string, "off" | "on" | "inherit"> | undefined;
605
+ skills?: Record<string, "off" | "on" | "inherit"> | undefined;
606
+ plugins?: Record<string, "off" | "on" | "inherit"> | undefined;
607
+ agents?: Record<string, "off" | "on" | "inherit"> | undefined;
608
+ pet?: Record<string, "off" | "on" | "inherit"> | undefined;
609
+ pluginHooks?: Record<string, "off" | "on" | "inherit"> | undefined;
610
+ }, {
611
+ builtin?: Record<string, "off" | "on" | "inherit"> | undefined;
612
+ mcp?: Record<string, "off" | "on" | "inherit"> | undefined;
613
+ skills?: Record<string, "off" | "on" | "inherit"> | undefined;
614
+ plugins?: Record<string, "off" | "on" | "inherit"> | undefined;
615
+ agents?: Record<string, "off" | "on" | "inherit"> | undefined;
616
+ pet?: Record<string, "off" | "on" | "inherit"> | undefined;
617
+ pluginHooks?: Record<string, "off" | "on" | "inherit"> | undefined;
618
+ }>>;
619
+ }, "strip", z.ZodTypeAny, {
620
+ active: string;
621
+ preset?: string | undefined;
622
+ overrides?: {
623
+ builtin?: Record<string, "off" | "on" | "inherit"> | undefined;
624
+ mcp?: Record<string, "off" | "on" | "inherit"> | undefined;
625
+ skills?: Record<string, "off" | "on" | "inherit"> | undefined;
626
+ plugins?: Record<string, "off" | "on" | "inherit"> | undefined;
627
+ agents?: Record<string, "off" | "on" | "inherit"> | undefined;
628
+ pet?: Record<string, "off" | "on" | "inherit"> | undefined;
629
+ pluginHooks?: Record<string, "off" | "on" | "inherit"> | undefined;
630
+ } | undefined;
631
+ }, {
632
+ active: string;
633
+ preset?: string | undefined;
634
+ overrides?: {
635
+ builtin?: Record<string, "off" | "on" | "inherit"> | undefined;
636
+ mcp?: Record<string, "off" | "on" | "inherit"> | undefined;
637
+ skills?: Record<string, "off" | "on" | "inherit"> | undefined;
638
+ plugins?: Record<string, "off" | "on" | "inherit"> | undefined;
639
+ agents?: Record<string, "off" | "on" | "inherit"> | undefined;
640
+ pet?: Record<string, "off" | "on" | "inherit"> | undefined;
641
+ pluginHooks?: Record<string, "off" | "on" | "inherit"> | undefined;
642
+ } | undefined;
643
+ }>>;
644
+ /**
645
+ * Workspace 数据源绑定(只存 ref/scope/readPolicy,绝不存 secret)。
646
+ * 语义见 docs/todo/workspace-datasource-binding-adr.md §1.2。
647
+ * 只存在于 PROJECT settings。
648
+ */
649
+ sources: z.ZodOptional<z.ZodArray<z.ZodObject<{
650
+ sourceId: z.ZodString;
651
+ scopes: z.ZodArray<z.ZodString, "many">;
652
+ readPolicy: z.ZodDefault<z.ZodEnum<["ask", "deny"]>>;
653
+ }, "strip", z.ZodTypeAny, {
654
+ sourceId: string;
655
+ scopes: string[];
656
+ readPolicy: "deny" | "ask";
657
+ }, {
658
+ sourceId: string;
659
+ scopes: string[];
660
+ readPolicy?: "deny" | "ask" | undefined;
661
+ }>, "many">>;
511
662
  /**
512
663
  * Feature flags overlay: a map of flag name → boolean that overrides the
513
664
  * compiled-in defaults (see settings/feature-flags.ts FEATURE_FLAGS).
@@ -558,43 +709,6 @@ export declare const SettingsSchema: z.ZodObject<{
558
709
  compatFileNames?: string[] | undefined;
559
710
  ignoreGitBoundary?: boolean | undefined;
560
711
  }>>;
561
- arena: z.ZodDefault<z.ZodObject<{
562
- participants: z.ZodDefault<z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodObject<{
563
- name: z.ZodString;
564
- model: z.ZodString;
565
- provider: z.ZodOptional<z.ZodString>;
566
- apiKey: z.ZodOptional<z.ZodString>;
567
- baseUrl: z.ZodOptional<z.ZodString>;
568
- }, "strip", z.ZodTypeAny, {
569
- name: string;
570
- model: string;
571
- provider?: string | undefined;
572
- baseUrl?: string | undefined;
573
- apiKey?: string | undefined;
574
- }, {
575
- name: string;
576
- model: string;
577
- provider?: string | undefined;
578
- baseUrl?: string | undefined;
579
- apiKey?: string | undefined;
580
- }>]>, "many">>;
581
- }, "strip", z.ZodTypeAny, {
582
- participants: (string | {
583
- name: string;
584
- model: string;
585
- provider?: string | undefined;
586
- baseUrl?: string | undefined;
587
- apiKey?: string | undefined;
588
- })[];
589
- }, {
590
- participants?: (string | {
591
- name: string;
592
- model: string;
593
- provider?: string | undefined;
594
- baseUrl?: string | undefined;
595
- apiKey?: string | undefined;
596
- })[] | undefined;
597
- }>>;
598
712
  search: z.ZodDefault<z.ZodObject<{
599
713
  provider: z.ZodDefault<z.ZodEnum<["serper", "tavily", "searxng"]>>;
600
714
  apiKey: z.ZodOptional<z.ZodString>;
@@ -839,16 +953,16 @@ export declare const SettingsSchema: z.ZodObject<{
839
953
  command: string;
840
954
  event: string;
841
955
  disabled?: boolean | undefined;
956
+ cwd?: string | undefined;
842
957
  matcher?: string | undefined;
843
958
  timeout_ms?: number | undefined;
844
- cwd?: string | undefined;
845
959
  }, {
846
960
  command: string;
847
961
  event: string;
848
962
  disabled?: boolean | undefined;
963
+ cwd?: string | undefined;
849
964
  matcher?: string | undefined;
850
965
  timeout_ms?: number | undefined;
851
- cwd?: string | undefined;
852
966
  }>, "many">>;
853
967
  /**
854
968
  * External coding-agent orchestration (Claude Code / Codex CLI).
@@ -864,14 +978,14 @@ export declare const SettingsSchema: z.ZodObject<{
864
978
  trustedWorkspaces: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
865
979
  autoStartInTrustedWorkspaces: z.ZodOptional<z.ZodBoolean>;
866
980
  }, "strip", z.ZodTypeAny, {
867
- defaultMode?: "safe" | "dangerous" | undefined;
868
981
  command?: string | undefined;
982
+ defaultMode?: "dangerous" | "safe" | undefined;
869
983
  dangerousArgs?: string[] | undefined;
870
984
  trustedWorkspaces?: string[] | undefined;
871
985
  autoStartInTrustedWorkspaces?: boolean | undefined;
872
986
  }, {
873
- defaultMode?: "safe" | "dangerous" | undefined;
874
987
  command?: string | undefined;
988
+ defaultMode?: "dangerous" | "safe" | undefined;
875
989
  dangerousArgs?: string[] | undefined;
876
990
  trustedWorkspaces?: string[] | undefined;
877
991
  autoStartInTrustedWorkspaces?: boolean | undefined;
@@ -888,8 +1002,8 @@ export declare const SettingsSchema: z.ZodObject<{
888
1002
  }>>;
889
1003
  }, "strip", z.ZodTypeAny, {
890
1004
  claudeCode?: {
891
- defaultMode?: "safe" | "dangerous" | undefined;
892
1005
  command?: string | undefined;
1006
+ defaultMode?: "dangerous" | "safe" | undefined;
893
1007
  dangerousArgs?: string[] | undefined;
894
1008
  trustedWorkspaces?: string[] | undefined;
895
1009
  autoStartInTrustedWorkspaces?: boolean | undefined;
@@ -900,8 +1014,8 @@ export declare const SettingsSchema: z.ZodObject<{
900
1014
  } | undefined;
901
1015
  }, {
902
1016
  claudeCode?: {
903
- defaultMode?: "safe" | "dangerous" | undefined;
904
1017
  command?: string | undefined;
1018
+ defaultMode?: "dangerous" | "safe" | undefined;
905
1019
  dangerousArgs?: string[] | undefined;
906
1020
  trustedWorkspaces?: string[] | undefined;
907
1021
  autoStartInTrustedWorkspaces?: boolean | undefined;
@@ -927,7 +1041,7 @@ export declare const SettingsSchema: z.ZodObject<{
927
1041
  }>>;
928
1042
  }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
929
1043
  agent: z.ZodDefault<z.ZodObject<{
930
- preset: z.ZodDefault<z.ZodString>;
1044
+ preset: z.ZodOptional<z.ZodString>;
931
1045
  enabledBuiltinTools: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
932
1046
  disabledBuiltinTools: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
933
1047
  customSystemPrompt: z.ZodOptional<z.ZodString>;
@@ -945,9 +1059,9 @@ export declare const SettingsSchema: z.ZodObject<{
945
1059
  compatCodex?: boolean | undefined;
946
1060
  }>>;
947
1061
  }, "strip", z.ZodTypeAny, {
948
- preset: string;
949
1062
  enabledBuiltinTools: string[];
950
1063
  disabledBuiltinTools: string[];
1064
+ preset?: string | undefined;
951
1065
  customSystemPrompt?: string | undefined;
952
1066
  appendSystemPrompt?: string | undefined;
953
1067
  responseLanguage?: string | undefined;
@@ -977,6 +1091,33 @@ export declare const SettingsSchema: z.ZodObject<{
977
1091
  * Can also be disabled via env var `DISABLE_AUTOUPDATER=1`.
978
1092
  */
979
1093
  autoUpdates: z.ZodDefault<z.ZodBoolean>;
1094
+ /**
1095
+ * Pet (Mimi) global-view preferences.
1096
+ */
1097
+ pet: z.ZodDefault<z.ZodObject<{
1098
+ /**
1099
+ * Show external Codex CLI/App sessions in the Pet global view. When off,
1100
+ * the host does not scan or tail Codex session files at all. Default off.
1101
+ */
1102
+ showExternalCodexSessions: z.ZodDefault<z.ZodBoolean>;
1103
+ /** Same, for external Claude Code CLI sessions. Default off. */
1104
+ showExternalClaudeSessions: z.ZodDefault<z.ZodBoolean>;
1105
+ /**
1106
+ * Auto-extract durable memories + an event-journal entry from each closed
1107
+ * Mimi topic segment. When off, segment closure still archives the model
1108
+ * context (so it cannot grow without bound) but writes no journal/memory.
1109
+ * Default on.
1110
+ */
1111
+ memoryAutoExtract: z.ZodDefault<z.ZodBoolean>;
1112
+ }, "strip", z.ZodTypeAny, {
1113
+ showExternalCodexSessions: boolean;
1114
+ showExternalClaudeSessions: boolean;
1115
+ memoryAutoExtract: boolean;
1116
+ }, {
1117
+ showExternalCodexSessions?: boolean | undefined;
1118
+ showExternalClaudeSessions?: boolean | undefined;
1119
+ memoryAutoExtract?: boolean | undefined;
1120
+ }>>;
980
1121
  /**
981
1122
  * Image generation is a general capability, decoupled from LLM providers
982
1123
  * (TODO 7.1): a vendor may use different keys/endpoints/models for chat vs
@@ -1150,16 +1291,16 @@ export declare const SettingsSchema: z.ZodObject<{
1150
1291
  }, "strip", z.ZodTypeAny, {
1151
1292
  id: string;
1152
1293
  model: string;
1153
- catalogId: string;
1154
1294
  tag: "text" | "image" | "video" | "audio";
1295
+ catalogId: string;
1155
1296
  baseUrl?: string | undefined;
1156
1297
  credentialId?: string | undefined;
1157
1298
  paramValues?: Record<string, unknown> | undefined;
1158
1299
  }, {
1159
1300
  id: string;
1160
1301
  model: string;
1161
- catalogId: string;
1162
1302
  tag: "text" | "image" | "video" | "audio";
1303
+ catalogId: string;
1163
1304
  baseUrl?: string | undefined;
1164
1305
  credentialId?: string | undefined;
1165
1306
  paramValues?: Record<string, unknown> | undefined;
@@ -1205,21 +1346,21 @@ export declare const SettingsSchema: z.ZodObject<{
1205
1346
  argsPattern?: Record<string, string> | undefined;
1206
1347
  }>, "many">>;
1207
1348
  }, "strip", z.ZodTypeAny, {
1208
- defaultMode: "auto" | "default" | "acceptEdits" | "dontAsk" | "bypassPermissions" | "plan";
1209
1349
  rules: {
1210
1350
  tool: string;
1211
1351
  decision: "allow" | "deny" | "ask";
1212
1352
  reason?: string | undefined;
1213
1353
  argsPattern?: Record<string, string> | undefined;
1214
1354
  }[];
1355
+ defaultMode: "default" | "auto" | "acceptEdits" | "dontAsk" | "bypassPermissions" | "plan";
1215
1356
  }, {
1216
- defaultMode?: "auto" | "default" | "acceptEdits" | "dontAsk" | "bypassPermissions" | "plan" | undefined;
1217
1357
  rules?: {
1218
1358
  tool: string;
1219
1359
  decision: "allow" | "deny" | "ask";
1220
1360
  reason?: string | undefined;
1221
1361
  argsPattern?: Record<string, string> | undefined;
1222
1362
  }[] | undefined;
1363
+ defaultMode?: "default" | "auto" | "acceptEdits" | "dontAsk" | "bypassPermissions" | "plan" | undefined;
1223
1364
  }>>;
1224
1365
  context: z.ZodDefault<z.ZodObject<{
1225
1366
  maxTokens: z.ZodDefault<z.ZodNumber>;
@@ -1267,71 +1408,88 @@ export declare const SettingsSchema: z.ZodObject<{
1267
1408
  envHeaders: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
1268
1409
  credentialRef: z.ZodOptional<z.ZodString>;
1269
1410
  enabled: z.ZodOptional<z.ZodBoolean>;
1411
+ allowedTools: z.ZodOptional<z.ZodArray<z.ZodEffects<z.ZodString, string, string>, "many">>;
1412
+ disabledTools: z.ZodOptional<z.ZodArray<z.ZodEffects<z.ZodString, string, string>, "many">>;
1270
1413
  }, "strip", z.ZodTypeAny, {
1271
1414
  name: string;
1272
1415
  enabled?: boolean | undefined;
1273
1416
  url?: string | undefined;
1274
1417
  args?: string[] | undefined;
1275
1418
  command?: string | undefined;
1419
+ credentialRef?: string | undefined;
1276
1420
  env?: Record<string, string> | undefined;
1277
1421
  transport?: "stdio" | "sse" | "streamable-http" | "inprocess" | undefined;
1278
1422
  headers?: Record<string, string> | undefined;
1279
1423
  envVars?: string[] | undefined;
1280
1424
  bearerTokenEnvVar?: string | undefined;
1281
1425
  envHeaders?: Record<string, string> | undefined;
1282
- credentialRef?: string | undefined;
1426
+ allowedTools?: string[] | undefined;
1427
+ disabledTools?: string[] | undefined;
1283
1428
  }, {
1284
1429
  name: string;
1285
1430
  enabled?: boolean | undefined;
1286
1431
  url?: string | undefined;
1287
1432
  args?: string[] | undefined;
1288
1433
  command?: string | undefined;
1434
+ credentialRef?: string | undefined;
1289
1435
  env?: Record<string, string> | undefined;
1290
1436
  transport?: "stdio" | "sse" | "streamable-http" | "inprocess" | undefined;
1291
1437
  headers?: Record<string, string> | undefined;
1292
1438
  envVars?: string[] | undefined;
1293
1439
  bearerTokenEnvVar?: string | undefined;
1294
1440
  envHeaders?: Record<string, string> | undefined;
1295
- credentialRef?: string | undefined;
1441
+ allowedTools?: string[] | undefined;
1442
+ disabledTools?: string[] | undefined;
1296
1443
  }>>, Record<string, {
1297
1444
  name: string;
1298
1445
  enabled?: boolean | undefined;
1299
1446
  url?: string | undefined;
1300
1447
  args?: string[] | undefined;
1301
1448
  command?: string | undefined;
1449
+ credentialRef?: string | undefined;
1302
1450
  env?: Record<string, string> | undefined;
1303
1451
  transport?: "stdio" | "sse" | "streamable-http" | "inprocess" | undefined;
1304
1452
  headers?: Record<string, string> | undefined;
1305
1453
  envVars?: string[] | undefined;
1306
1454
  bearerTokenEnvVar?: string | undefined;
1307
1455
  envHeaders?: Record<string, string> | undefined;
1308
- credentialRef?: string | undefined;
1456
+ allowedTools?: string[] | undefined;
1457
+ disabledTools?: string[] | undefined;
1309
1458
  }>, unknown>>;
1310
1459
  /**
1311
- * User supplements for PLUGIN-provided MCP servers, keyed by the server's
1312
- * `<plugin>:<server>` name. Layered onto the plugin config at merge time
1313
- * (mergePluginMcpServers). Only env/credential fields are accepted —
1314
- * command/args/url/transport are intentionally absent and `.strict()`
1315
- * rejects them, so a plugin update is never shadowed by a stale copy.
1460
+ * User policy/supplements for PLUGIN-provided MCP servers, keyed by the
1461
+ * server's `<plugin>:<server>` name. Layered onto the plugin config at merge
1462
+ * time (mergePluginMcpServers). Only server/tool policy + env/credential
1463
+ * fields are accepted — command/args/url/transport are intentionally absent and
1464
+ * `.strict()` rejects them, so an update is never shadowed by a stale copy.
1316
1465
  */
1317
1466
  mcpServerOverrides: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodObject<{
1467
+ enabled: z.ZodOptional<z.ZodBoolean>;
1468
+ allowedTools: z.ZodOptional<z.ZodArray<z.ZodEffects<z.ZodString, string, string>, "many">>;
1469
+ disabledTools: z.ZodOptional<z.ZodArray<z.ZodEffects<z.ZodString, string, string>, "many">>;
1318
1470
  env: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
1319
1471
  envVars: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
1320
1472
  credentialRef: z.ZodOptional<z.ZodString>;
1321
1473
  bearerTokenEnvVar: z.ZodOptional<z.ZodString>;
1322
1474
  envHeaders: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
1323
1475
  }, "strict", z.ZodTypeAny, {
1476
+ enabled?: boolean | undefined;
1477
+ credentialRef?: string | undefined;
1324
1478
  env?: Record<string, string> | undefined;
1325
1479
  envVars?: string[] | undefined;
1326
1480
  bearerTokenEnvVar?: string | undefined;
1327
1481
  envHeaders?: Record<string, string> | undefined;
1328
- credentialRef?: string | undefined;
1482
+ allowedTools?: string[] | undefined;
1483
+ disabledTools?: string[] | undefined;
1329
1484
  }, {
1485
+ enabled?: boolean | undefined;
1486
+ credentialRef?: string | undefined;
1330
1487
  env?: Record<string, string> | undefined;
1331
1488
  envVars?: string[] | undefined;
1332
1489
  bearerTokenEnvVar?: string | undefined;
1333
1490
  envHeaders?: Record<string, string> | undefined;
1334
- credentialRef?: string | undefined;
1491
+ allowedTools?: string[] | undefined;
1492
+ disabledTools?: string[] | undefined;
1335
1493
  }>>>;
1336
1494
  /**
1337
1495
  * Skill names hidden from the LLM. Names include the full
@@ -1347,6 +1505,19 @@ export declare const SettingsSchema: z.ZodObject<{
1347
1505
  * names (no colon suffix). See scanSkills(opts.disabledPlugins).
1348
1506
  */
1349
1507
  disabledPlugins: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
1508
+ /** Globally disabled Panel Apps, including their declared tools and bundled Skills. */
1509
+ disabledPanelApps: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
1510
+ /**
1511
+ * Explicit project binding for installed Panel Apps. Installed apps form a
1512
+ * global catalog, but only IDs in this project-owned list contribute panel
1513
+ * UI, Agent tools, bundled Skills, or project-scoped storage.
1514
+ */
1515
+ panelAppBindings: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
1516
+ /**
1517
+ * Legacy per-project Panel App policy. `on` is read as an explicit binding
1518
+ * during migration; new writes use panelAppBindings.
1519
+ */
1520
+ panelAppOverrides: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodEnum<["inherit", "on", "off"]>>>;
1350
1521
  /**
1351
1522
  * Sub-agent role names (the `name` in .code-shell/agents/*.md) to
1352
1523
  * hide from the registry. A disabled role is filtered out at load
@@ -1366,6 +1537,8 @@ export declare const SettingsSchema: z.ZodObject<{
1366
1537
  agents: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodEnum<["inherit", "on", "off"]>>>;
1367
1538
  mcp: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodEnum<["inherit", "on", "off"]>>>;
1368
1539
  builtin: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodEnum<["inherit", "on", "off"]>>>;
1540
+ /** Per-project Pet capability preferences layered over the user baseline. */
1541
+ pet: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodEnum<["inherit", "on", "off"]>>>;
1369
1542
  /**
1370
1543
  * Per-hook overlay for PLUGIN-provided hooks, keyed by
1371
1544
  * `pluginHookKey()` (`<plugin>:<RawEvent>:<command>`). Finer-grained
@@ -1380,6 +1553,7 @@ export declare const SettingsSchema: z.ZodObject<{
1380
1553
  skills?: Record<string, "off" | "on" | "inherit"> | undefined;
1381
1554
  plugins?: Record<string, "off" | "on" | "inherit"> | undefined;
1382
1555
  agents?: Record<string, "off" | "on" | "inherit"> | undefined;
1556
+ pet?: Record<string, "off" | "on" | "inherit"> | undefined;
1383
1557
  pluginHooks?: Record<string, "off" | "on" | "inherit"> | undefined;
1384
1558
  }, {
1385
1559
  builtin?: Record<string, "off" | "on" | "inherit"> | undefined;
@@ -1387,8 +1561,95 @@ export declare const SettingsSchema: z.ZodObject<{
1387
1561
  skills?: Record<string, "off" | "on" | "inherit"> | undefined;
1388
1562
  plugins?: Record<string, "off" | "on" | "inherit"> | undefined;
1389
1563
  agents?: Record<string, "off" | "on" | "inherit"> | undefined;
1564
+ pet?: Record<string, "off" | "on" | "inherit"> | undefined;
1390
1565
  pluginHooks?: Record<string, "off" | "on" | "inherit"> | undefined;
1391
1566
  }>>;
1567
+ /**
1568
+ * 由 WorkspaceProfile 激活事务整体拥有的子树(profile/activation.ts)。
1569
+ * 激活/切换 = 原子全量重写本子树;关闭 = 删除本子树。
1570
+ * `overrides` 是 profile 声明展开的 force-enable 快照,折叠时排在
1571
+ * 用户手写 capabilityOverrides 之下(用户按 key 永远赢,见 overlay.ts
1572
+ * 的 effectiveProjectOverrides)。只存在于 PROJECT settings。
1573
+ */
1574
+ profile: z.ZodOptional<z.ZodObject<{
1575
+ active: z.ZodString;
1576
+ preset: z.ZodOptional<z.ZodString>;
1577
+ overrides: z.ZodOptional<z.ZodObject<{
1578
+ skills: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodEnum<["inherit", "on", "off"]>>>;
1579
+ plugins: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodEnum<["inherit", "on", "off"]>>>;
1580
+ agents: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodEnum<["inherit", "on", "off"]>>>;
1581
+ mcp: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodEnum<["inherit", "on", "off"]>>>;
1582
+ builtin: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodEnum<["inherit", "on", "off"]>>>;
1583
+ /** Per-project Pet capability preferences layered over the user baseline. */
1584
+ pet: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodEnum<["inherit", "on", "off"]>>>;
1585
+ /**
1586
+ * Per-hook overlay for PLUGIN-provided hooks, keyed by
1587
+ * `pluginHookKey()` (`<plugin>:<RawEvent>:<command>`). Finer-grained
1588
+ * than `plugins` (which kills a whole plugin): "off" suppresses one
1589
+ * hook for this project only. Only "off" is meaningful today — plugin
1590
+ * hooks have no global disable list to force back "on" from.
1591
+ */
1592
+ pluginHooks: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodEnum<["inherit", "on", "off"]>>>;
1593
+ }, "strip", z.ZodTypeAny, {
1594
+ builtin?: Record<string, "off" | "on" | "inherit"> | undefined;
1595
+ mcp?: Record<string, "off" | "on" | "inherit"> | undefined;
1596
+ skills?: Record<string, "off" | "on" | "inherit"> | undefined;
1597
+ plugins?: Record<string, "off" | "on" | "inherit"> | undefined;
1598
+ agents?: Record<string, "off" | "on" | "inherit"> | undefined;
1599
+ pet?: Record<string, "off" | "on" | "inherit"> | undefined;
1600
+ pluginHooks?: Record<string, "off" | "on" | "inherit"> | undefined;
1601
+ }, {
1602
+ builtin?: Record<string, "off" | "on" | "inherit"> | undefined;
1603
+ mcp?: Record<string, "off" | "on" | "inherit"> | undefined;
1604
+ skills?: Record<string, "off" | "on" | "inherit"> | undefined;
1605
+ plugins?: Record<string, "off" | "on" | "inherit"> | undefined;
1606
+ agents?: Record<string, "off" | "on" | "inherit"> | undefined;
1607
+ pet?: Record<string, "off" | "on" | "inherit"> | undefined;
1608
+ pluginHooks?: Record<string, "off" | "on" | "inherit"> | undefined;
1609
+ }>>;
1610
+ }, "strip", z.ZodTypeAny, {
1611
+ active: string;
1612
+ preset?: string | undefined;
1613
+ overrides?: {
1614
+ builtin?: Record<string, "off" | "on" | "inherit"> | undefined;
1615
+ mcp?: Record<string, "off" | "on" | "inherit"> | undefined;
1616
+ skills?: Record<string, "off" | "on" | "inherit"> | undefined;
1617
+ plugins?: Record<string, "off" | "on" | "inherit"> | undefined;
1618
+ agents?: Record<string, "off" | "on" | "inherit"> | undefined;
1619
+ pet?: Record<string, "off" | "on" | "inherit"> | undefined;
1620
+ pluginHooks?: Record<string, "off" | "on" | "inherit"> | undefined;
1621
+ } | undefined;
1622
+ }, {
1623
+ active: string;
1624
+ preset?: string | undefined;
1625
+ overrides?: {
1626
+ builtin?: Record<string, "off" | "on" | "inherit"> | undefined;
1627
+ mcp?: Record<string, "off" | "on" | "inherit"> | undefined;
1628
+ skills?: Record<string, "off" | "on" | "inherit"> | undefined;
1629
+ plugins?: Record<string, "off" | "on" | "inherit"> | undefined;
1630
+ agents?: Record<string, "off" | "on" | "inherit"> | undefined;
1631
+ pet?: Record<string, "off" | "on" | "inherit"> | undefined;
1632
+ pluginHooks?: Record<string, "off" | "on" | "inherit"> | undefined;
1633
+ } | undefined;
1634
+ }>>;
1635
+ /**
1636
+ * Workspace 数据源绑定(只存 ref/scope/readPolicy,绝不存 secret)。
1637
+ * 语义见 docs/todo/workspace-datasource-binding-adr.md §1.2。
1638
+ * 只存在于 PROJECT settings。
1639
+ */
1640
+ sources: z.ZodOptional<z.ZodArray<z.ZodObject<{
1641
+ sourceId: z.ZodString;
1642
+ scopes: z.ZodArray<z.ZodString, "many">;
1643
+ readPolicy: z.ZodDefault<z.ZodEnum<["ask", "deny"]>>;
1644
+ }, "strip", z.ZodTypeAny, {
1645
+ sourceId: string;
1646
+ scopes: string[];
1647
+ readPolicy: "deny" | "ask";
1648
+ }, {
1649
+ sourceId: string;
1650
+ scopes: string[];
1651
+ readPolicy?: "deny" | "ask" | undefined;
1652
+ }>, "many">>;
1392
1653
  /**
1393
1654
  * Feature flags overlay: a map of flag name → boolean that overrides the
1394
1655
  * compiled-in defaults (see settings/feature-flags.ts FEATURE_FLAGS).
@@ -1439,43 +1700,6 @@ export declare const SettingsSchema: z.ZodObject<{
1439
1700
  compatFileNames?: string[] | undefined;
1440
1701
  ignoreGitBoundary?: boolean | undefined;
1441
1702
  }>>;
1442
- arena: z.ZodDefault<z.ZodObject<{
1443
- participants: z.ZodDefault<z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodObject<{
1444
- name: z.ZodString;
1445
- model: z.ZodString;
1446
- provider: z.ZodOptional<z.ZodString>;
1447
- apiKey: z.ZodOptional<z.ZodString>;
1448
- baseUrl: z.ZodOptional<z.ZodString>;
1449
- }, "strip", z.ZodTypeAny, {
1450
- name: string;
1451
- model: string;
1452
- provider?: string | undefined;
1453
- baseUrl?: string | undefined;
1454
- apiKey?: string | undefined;
1455
- }, {
1456
- name: string;
1457
- model: string;
1458
- provider?: string | undefined;
1459
- baseUrl?: string | undefined;
1460
- apiKey?: string | undefined;
1461
- }>]>, "many">>;
1462
- }, "strip", z.ZodTypeAny, {
1463
- participants: (string | {
1464
- name: string;
1465
- model: string;
1466
- provider?: string | undefined;
1467
- baseUrl?: string | undefined;
1468
- apiKey?: string | undefined;
1469
- })[];
1470
- }, {
1471
- participants?: (string | {
1472
- name: string;
1473
- model: string;
1474
- provider?: string | undefined;
1475
- baseUrl?: string | undefined;
1476
- apiKey?: string | undefined;
1477
- })[] | undefined;
1478
- }>>;
1479
1703
  search: z.ZodDefault<z.ZodObject<{
1480
1704
  provider: z.ZodDefault<z.ZodEnum<["serper", "tavily", "searxng"]>>;
1481
1705
  apiKey: z.ZodOptional<z.ZodString>;
@@ -1720,16 +1944,16 @@ export declare const SettingsSchema: z.ZodObject<{
1720
1944
  command: string;
1721
1945
  event: string;
1722
1946
  disabled?: boolean | undefined;
1947
+ cwd?: string | undefined;
1723
1948
  matcher?: string | undefined;
1724
1949
  timeout_ms?: number | undefined;
1725
- cwd?: string | undefined;
1726
1950
  }, {
1727
1951
  command: string;
1728
1952
  event: string;
1729
1953
  disabled?: boolean | undefined;
1954
+ cwd?: string | undefined;
1730
1955
  matcher?: string | undefined;
1731
1956
  timeout_ms?: number | undefined;
1732
- cwd?: string | undefined;
1733
1957
  }>, "many">>;
1734
1958
  /**
1735
1959
  * External coding-agent orchestration (Claude Code / Codex CLI).
@@ -1745,14 +1969,14 @@ export declare const SettingsSchema: z.ZodObject<{
1745
1969
  trustedWorkspaces: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
1746
1970
  autoStartInTrustedWorkspaces: z.ZodOptional<z.ZodBoolean>;
1747
1971
  }, "strip", z.ZodTypeAny, {
1748
- defaultMode?: "safe" | "dangerous" | undefined;
1749
1972
  command?: string | undefined;
1973
+ defaultMode?: "dangerous" | "safe" | undefined;
1750
1974
  dangerousArgs?: string[] | undefined;
1751
1975
  trustedWorkspaces?: string[] | undefined;
1752
1976
  autoStartInTrustedWorkspaces?: boolean | undefined;
1753
1977
  }, {
1754
- defaultMode?: "safe" | "dangerous" | undefined;
1755
1978
  command?: string | undefined;
1979
+ defaultMode?: "dangerous" | "safe" | undefined;
1756
1980
  dangerousArgs?: string[] | undefined;
1757
1981
  trustedWorkspaces?: string[] | undefined;
1758
1982
  autoStartInTrustedWorkspaces?: boolean | undefined;
@@ -1769,8 +1993,8 @@ export declare const SettingsSchema: z.ZodObject<{
1769
1993
  }>>;
1770
1994
  }, "strip", z.ZodTypeAny, {
1771
1995
  claudeCode?: {
1772
- defaultMode?: "safe" | "dangerous" | undefined;
1773
1996
  command?: string | undefined;
1997
+ defaultMode?: "dangerous" | "safe" | undefined;
1774
1998
  dangerousArgs?: string[] | undefined;
1775
1999
  trustedWorkspaces?: string[] | undefined;
1776
2000
  autoStartInTrustedWorkspaces?: boolean | undefined;
@@ -1781,8 +2005,8 @@ export declare const SettingsSchema: z.ZodObject<{
1781
2005
  } | undefined;
1782
2006
  }, {
1783
2007
  claudeCode?: {
1784
- defaultMode?: "safe" | "dangerous" | undefined;
1785
2008
  command?: string | undefined;
2009
+ defaultMode?: "dangerous" | "safe" | undefined;
1786
2010
  dangerousArgs?: string[] | undefined;
1787
2011
  trustedWorkspaces?: string[] | undefined;
1788
2012
  autoStartInTrustedWorkspaces?: boolean | undefined;
@@ -1808,7 +2032,7 @@ export declare const SettingsSchema: z.ZodObject<{
1808
2032
  }>>;
1809
2033
  }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
1810
2034
  agent: z.ZodDefault<z.ZodObject<{
1811
- preset: z.ZodDefault<z.ZodString>;
2035
+ preset: z.ZodOptional<z.ZodString>;
1812
2036
  enabledBuiltinTools: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
1813
2037
  disabledBuiltinTools: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
1814
2038
  customSystemPrompt: z.ZodOptional<z.ZodString>;
@@ -1826,9 +2050,9 @@ export declare const SettingsSchema: z.ZodObject<{
1826
2050
  compatCodex?: boolean | undefined;
1827
2051
  }>>;
1828
2052
  }, "strip", z.ZodTypeAny, {
1829
- preset: string;
1830
2053
  enabledBuiltinTools: string[];
1831
2054
  disabledBuiltinTools: string[];
2055
+ preset?: string | undefined;
1832
2056
  customSystemPrompt?: string | undefined;
1833
2057
  appendSystemPrompt?: string | undefined;
1834
2058
  responseLanguage?: string | undefined;
@@ -1858,6 +2082,33 @@ export declare const SettingsSchema: z.ZodObject<{
1858
2082
  * Can also be disabled via env var `DISABLE_AUTOUPDATER=1`.
1859
2083
  */
1860
2084
  autoUpdates: z.ZodDefault<z.ZodBoolean>;
2085
+ /**
2086
+ * Pet (Mimi) global-view preferences.
2087
+ */
2088
+ pet: z.ZodDefault<z.ZodObject<{
2089
+ /**
2090
+ * Show external Codex CLI/App sessions in the Pet global view. When off,
2091
+ * the host does not scan or tail Codex session files at all. Default off.
2092
+ */
2093
+ showExternalCodexSessions: z.ZodDefault<z.ZodBoolean>;
2094
+ /** Same, for external Claude Code CLI sessions. Default off. */
2095
+ showExternalClaudeSessions: z.ZodDefault<z.ZodBoolean>;
2096
+ /**
2097
+ * Auto-extract durable memories + an event-journal entry from each closed
2098
+ * Mimi topic segment. When off, segment closure still archives the model
2099
+ * context (so it cannot grow without bound) but writes no journal/memory.
2100
+ * Default on.
2101
+ */
2102
+ memoryAutoExtract: z.ZodDefault<z.ZodBoolean>;
2103
+ }, "strip", z.ZodTypeAny, {
2104
+ showExternalCodexSessions: boolean;
2105
+ showExternalClaudeSessions: boolean;
2106
+ memoryAutoExtract: boolean;
2107
+ }, {
2108
+ showExternalCodexSessions?: boolean | undefined;
2109
+ showExternalClaudeSessions?: boolean | undefined;
2110
+ memoryAutoExtract?: boolean | undefined;
2111
+ }>>;
1861
2112
  /**
1862
2113
  * Image generation is a general capability, decoupled from LLM providers
1863
2114
  * (TODO 7.1): a vendor may use different keys/endpoints/models for chat vs
@@ -2031,16 +2282,16 @@ export declare const SettingsSchema: z.ZodObject<{
2031
2282
  }, "strip", z.ZodTypeAny, {
2032
2283
  id: string;
2033
2284
  model: string;
2034
- catalogId: string;
2035
2285
  tag: "text" | "image" | "video" | "audio";
2286
+ catalogId: string;
2036
2287
  baseUrl?: string | undefined;
2037
2288
  credentialId?: string | undefined;
2038
2289
  paramValues?: Record<string, unknown> | undefined;
2039
2290
  }, {
2040
2291
  id: string;
2041
2292
  model: string;
2042
- catalogId: string;
2043
2293
  tag: "text" | "image" | "video" | "audio";
2294
+ catalogId: string;
2044
2295
  baseUrl?: string | undefined;
2045
2296
  credentialId?: string | undefined;
2046
2297
  paramValues?: Record<string, unknown> | undefined;
@@ -2086,21 +2337,21 @@ export declare const SettingsSchema: z.ZodObject<{
2086
2337
  argsPattern?: Record<string, string> | undefined;
2087
2338
  }>, "many">>;
2088
2339
  }, "strip", z.ZodTypeAny, {
2089
- defaultMode: "auto" | "default" | "acceptEdits" | "dontAsk" | "bypassPermissions" | "plan";
2090
2340
  rules: {
2091
2341
  tool: string;
2092
2342
  decision: "allow" | "deny" | "ask";
2093
2343
  reason?: string | undefined;
2094
2344
  argsPattern?: Record<string, string> | undefined;
2095
2345
  }[];
2346
+ defaultMode: "default" | "auto" | "acceptEdits" | "dontAsk" | "bypassPermissions" | "plan";
2096
2347
  }, {
2097
- defaultMode?: "auto" | "default" | "acceptEdits" | "dontAsk" | "bypassPermissions" | "plan" | undefined;
2098
2348
  rules?: {
2099
2349
  tool: string;
2100
2350
  decision: "allow" | "deny" | "ask";
2101
2351
  reason?: string | undefined;
2102
2352
  argsPattern?: Record<string, string> | undefined;
2103
2353
  }[] | undefined;
2354
+ defaultMode?: "default" | "auto" | "acceptEdits" | "dontAsk" | "bypassPermissions" | "plan" | undefined;
2104
2355
  }>>;
2105
2356
  context: z.ZodDefault<z.ZodObject<{
2106
2357
  maxTokens: z.ZodDefault<z.ZodNumber>;
@@ -2148,71 +2399,88 @@ export declare const SettingsSchema: z.ZodObject<{
2148
2399
  envHeaders: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
2149
2400
  credentialRef: z.ZodOptional<z.ZodString>;
2150
2401
  enabled: z.ZodOptional<z.ZodBoolean>;
2402
+ allowedTools: z.ZodOptional<z.ZodArray<z.ZodEffects<z.ZodString, string, string>, "many">>;
2403
+ disabledTools: z.ZodOptional<z.ZodArray<z.ZodEffects<z.ZodString, string, string>, "many">>;
2151
2404
  }, "strip", z.ZodTypeAny, {
2152
2405
  name: string;
2153
2406
  enabled?: boolean | undefined;
2154
2407
  url?: string | undefined;
2155
2408
  args?: string[] | undefined;
2156
2409
  command?: string | undefined;
2410
+ credentialRef?: string | undefined;
2157
2411
  env?: Record<string, string> | undefined;
2158
2412
  transport?: "stdio" | "sse" | "streamable-http" | "inprocess" | undefined;
2159
2413
  headers?: Record<string, string> | undefined;
2160
2414
  envVars?: string[] | undefined;
2161
2415
  bearerTokenEnvVar?: string | undefined;
2162
2416
  envHeaders?: Record<string, string> | undefined;
2163
- credentialRef?: string | undefined;
2417
+ allowedTools?: string[] | undefined;
2418
+ disabledTools?: string[] | undefined;
2164
2419
  }, {
2165
2420
  name: string;
2166
2421
  enabled?: boolean | undefined;
2167
2422
  url?: string | undefined;
2168
2423
  args?: string[] | undefined;
2169
2424
  command?: string | undefined;
2425
+ credentialRef?: string | undefined;
2170
2426
  env?: Record<string, string> | undefined;
2171
2427
  transport?: "stdio" | "sse" | "streamable-http" | "inprocess" | undefined;
2172
2428
  headers?: Record<string, string> | undefined;
2173
2429
  envVars?: string[] | undefined;
2174
2430
  bearerTokenEnvVar?: string | undefined;
2175
2431
  envHeaders?: Record<string, string> | undefined;
2176
- credentialRef?: string | undefined;
2432
+ allowedTools?: string[] | undefined;
2433
+ disabledTools?: string[] | undefined;
2177
2434
  }>>, Record<string, {
2178
2435
  name: string;
2179
2436
  enabled?: boolean | undefined;
2180
2437
  url?: string | undefined;
2181
2438
  args?: string[] | undefined;
2182
2439
  command?: string | undefined;
2440
+ credentialRef?: string | undefined;
2183
2441
  env?: Record<string, string> | undefined;
2184
2442
  transport?: "stdio" | "sse" | "streamable-http" | "inprocess" | undefined;
2185
2443
  headers?: Record<string, string> | undefined;
2186
2444
  envVars?: string[] | undefined;
2187
2445
  bearerTokenEnvVar?: string | undefined;
2188
2446
  envHeaders?: Record<string, string> | undefined;
2189
- credentialRef?: string | undefined;
2447
+ allowedTools?: string[] | undefined;
2448
+ disabledTools?: string[] | undefined;
2190
2449
  }>, unknown>>;
2191
2450
  /**
2192
- * User supplements for PLUGIN-provided MCP servers, keyed by the server's
2193
- * `<plugin>:<server>` name. Layered onto the plugin config at merge time
2194
- * (mergePluginMcpServers). Only env/credential fields are accepted —
2195
- * command/args/url/transport are intentionally absent and `.strict()`
2196
- * rejects them, so a plugin update is never shadowed by a stale copy.
2451
+ * User policy/supplements for PLUGIN-provided MCP servers, keyed by the
2452
+ * server's `<plugin>:<server>` name. Layered onto the plugin config at merge
2453
+ * time (mergePluginMcpServers). Only server/tool policy + env/credential
2454
+ * fields are accepted — command/args/url/transport are intentionally absent and
2455
+ * `.strict()` rejects them, so an update is never shadowed by a stale copy.
2197
2456
  */
2198
2457
  mcpServerOverrides: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodObject<{
2458
+ enabled: z.ZodOptional<z.ZodBoolean>;
2459
+ allowedTools: z.ZodOptional<z.ZodArray<z.ZodEffects<z.ZodString, string, string>, "many">>;
2460
+ disabledTools: z.ZodOptional<z.ZodArray<z.ZodEffects<z.ZodString, string, string>, "many">>;
2199
2461
  env: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
2200
2462
  envVars: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
2201
2463
  credentialRef: z.ZodOptional<z.ZodString>;
2202
2464
  bearerTokenEnvVar: z.ZodOptional<z.ZodString>;
2203
2465
  envHeaders: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
2204
2466
  }, "strict", z.ZodTypeAny, {
2467
+ enabled?: boolean | undefined;
2468
+ credentialRef?: string | undefined;
2205
2469
  env?: Record<string, string> | undefined;
2206
2470
  envVars?: string[] | undefined;
2207
2471
  bearerTokenEnvVar?: string | undefined;
2208
2472
  envHeaders?: Record<string, string> | undefined;
2209
- credentialRef?: string | undefined;
2473
+ allowedTools?: string[] | undefined;
2474
+ disabledTools?: string[] | undefined;
2210
2475
  }, {
2476
+ enabled?: boolean | undefined;
2477
+ credentialRef?: string | undefined;
2211
2478
  env?: Record<string, string> | undefined;
2212
2479
  envVars?: string[] | undefined;
2213
2480
  bearerTokenEnvVar?: string | undefined;
2214
2481
  envHeaders?: Record<string, string> | undefined;
2215
- credentialRef?: string | undefined;
2482
+ allowedTools?: string[] | undefined;
2483
+ disabledTools?: string[] | undefined;
2216
2484
  }>>>;
2217
2485
  /**
2218
2486
  * Skill names hidden from the LLM. Names include the full
@@ -2228,6 +2496,19 @@ export declare const SettingsSchema: z.ZodObject<{
2228
2496
  * names (no colon suffix). See scanSkills(opts.disabledPlugins).
2229
2497
  */
2230
2498
  disabledPlugins: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
2499
+ /** Globally disabled Panel Apps, including their declared tools and bundled Skills. */
2500
+ disabledPanelApps: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
2501
+ /**
2502
+ * Explicit project binding for installed Panel Apps. Installed apps form a
2503
+ * global catalog, but only IDs in this project-owned list contribute panel
2504
+ * UI, Agent tools, bundled Skills, or project-scoped storage.
2505
+ */
2506
+ panelAppBindings: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
2507
+ /**
2508
+ * Legacy per-project Panel App policy. `on` is read as an explicit binding
2509
+ * during migration; new writes use panelAppBindings.
2510
+ */
2511
+ panelAppOverrides: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodEnum<["inherit", "on", "off"]>>>;
2231
2512
  /**
2232
2513
  * Sub-agent role names (the `name` in .code-shell/agents/*.md) to
2233
2514
  * hide from the registry. A disabled role is filtered out at load
@@ -2247,6 +2528,8 @@ export declare const SettingsSchema: z.ZodObject<{
2247
2528
  agents: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodEnum<["inherit", "on", "off"]>>>;
2248
2529
  mcp: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodEnum<["inherit", "on", "off"]>>>;
2249
2530
  builtin: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodEnum<["inherit", "on", "off"]>>>;
2531
+ /** Per-project Pet capability preferences layered over the user baseline. */
2532
+ pet: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodEnum<["inherit", "on", "off"]>>>;
2250
2533
  /**
2251
2534
  * Per-hook overlay for PLUGIN-provided hooks, keyed by
2252
2535
  * `pluginHookKey()` (`<plugin>:<RawEvent>:<command>`). Finer-grained
@@ -2261,6 +2544,7 @@ export declare const SettingsSchema: z.ZodObject<{
2261
2544
  skills?: Record<string, "off" | "on" | "inherit"> | undefined;
2262
2545
  plugins?: Record<string, "off" | "on" | "inherit"> | undefined;
2263
2546
  agents?: Record<string, "off" | "on" | "inherit"> | undefined;
2547
+ pet?: Record<string, "off" | "on" | "inherit"> | undefined;
2264
2548
  pluginHooks?: Record<string, "off" | "on" | "inherit"> | undefined;
2265
2549
  }, {
2266
2550
  builtin?: Record<string, "off" | "on" | "inherit"> | undefined;
@@ -2268,8 +2552,95 @@ export declare const SettingsSchema: z.ZodObject<{
2268
2552
  skills?: Record<string, "off" | "on" | "inherit"> | undefined;
2269
2553
  plugins?: Record<string, "off" | "on" | "inherit"> | undefined;
2270
2554
  agents?: Record<string, "off" | "on" | "inherit"> | undefined;
2555
+ pet?: Record<string, "off" | "on" | "inherit"> | undefined;
2271
2556
  pluginHooks?: Record<string, "off" | "on" | "inherit"> | undefined;
2272
2557
  }>>;
2558
+ /**
2559
+ * 由 WorkspaceProfile 激活事务整体拥有的子树(profile/activation.ts)。
2560
+ * 激活/切换 = 原子全量重写本子树;关闭 = 删除本子树。
2561
+ * `overrides` 是 profile 声明展开的 force-enable 快照,折叠时排在
2562
+ * 用户手写 capabilityOverrides 之下(用户按 key 永远赢,见 overlay.ts
2563
+ * 的 effectiveProjectOverrides)。只存在于 PROJECT settings。
2564
+ */
2565
+ profile: z.ZodOptional<z.ZodObject<{
2566
+ active: z.ZodString;
2567
+ preset: z.ZodOptional<z.ZodString>;
2568
+ overrides: z.ZodOptional<z.ZodObject<{
2569
+ skills: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodEnum<["inherit", "on", "off"]>>>;
2570
+ plugins: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodEnum<["inherit", "on", "off"]>>>;
2571
+ agents: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodEnum<["inherit", "on", "off"]>>>;
2572
+ mcp: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodEnum<["inherit", "on", "off"]>>>;
2573
+ builtin: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodEnum<["inherit", "on", "off"]>>>;
2574
+ /** Per-project Pet capability preferences layered over the user baseline. */
2575
+ pet: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodEnum<["inherit", "on", "off"]>>>;
2576
+ /**
2577
+ * Per-hook overlay for PLUGIN-provided hooks, keyed by
2578
+ * `pluginHookKey()` (`<plugin>:<RawEvent>:<command>`). Finer-grained
2579
+ * than `plugins` (which kills a whole plugin): "off" suppresses one
2580
+ * hook for this project only. Only "off" is meaningful today — plugin
2581
+ * hooks have no global disable list to force back "on" from.
2582
+ */
2583
+ pluginHooks: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodEnum<["inherit", "on", "off"]>>>;
2584
+ }, "strip", z.ZodTypeAny, {
2585
+ builtin?: Record<string, "off" | "on" | "inherit"> | undefined;
2586
+ mcp?: Record<string, "off" | "on" | "inherit"> | undefined;
2587
+ skills?: Record<string, "off" | "on" | "inherit"> | undefined;
2588
+ plugins?: Record<string, "off" | "on" | "inherit"> | undefined;
2589
+ agents?: Record<string, "off" | "on" | "inherit"> | undefined;
2590
+ pet?: Record<string, "off" | "on" | "inherit"> | undefined;
2591
+ pluginHooks?: Record<string, "off" | "on" | "inherit"> | undefined;
2592
+ }, {
2593
+ builtin?: Record<string, "off" | "on" | "inherit"> | undefined;
2594
+ mcp?: Record<string, "off" | "on" | "inherit"> | undefined;
2595
+ skills?: Record<string, "off" | "on" | "inherit"> | undefined;
2596
+ plugins?: Record<string, "off" | "on" | "inherit"> | undefined;
2597
+ agents?: Record<string, "off" | "on" | "inherit"> | undefined;
2598
+ pet?: Record<string, "off" | "on" | "inherit"> | undefined;
2599
+ pluginHooks?: Record<string, "off" | "on" | "inherit"> | undefined;
2600
+ }>>;
2601
+ }, "strip", z.ZodTypeAny, {
2602
+ active: string;
2603
+ preset?: string | undefined;
2604
+ overrides?: {
2605
+ builtin?: Record<string, "off" | "on" | "inherit"> | undefined;
2606
+ mcp?: Record<string, "off" | "on" | "inherit"> | undefined;
2607
+ skills?: Record<string, "off" | "on" | "inherit"> | undefined;
2608
+ plugins?: Record<string, "off" | "on" | "inherit"> | undefined;
2609
+ agents?: Record<string, "off" | "on" | "inherit"> | undefined;
2610
+ pet?: Record<string, "off" | "on" | "inherit"> | undefined;
2611
+ pluginHooks?: Record<string, "off" | "on" | "inherit"> | undefined;
2612
+ } | undefined;
2613
+ }, {
2614
+ active: string;
2615
+ preset?: string | undefined;
2616
+ overrides?: {
2617
+ builtin?: Record<string, "off" | "on" | "inherit"> | undefined;
2618
+ mcp?: Record<string, "off" | "on" | "inherit"> | undefined;
2619
+ skills?: Record<string, "off" | "on" | "inherit"> | undefined;
2620
+ plugins?: Record<string, "off" | "on" | "inherit"> | undefined;
2621
+ agents?: Record<string, "off" | "on" | "inherit"> | undefined;
2622
+ pet?: Record<string, "off" | "on" | "inherit"> | undefined;
2623
+ pluginHooks?: Record<string, "off" | "on" | "inherit"> | undefined;
2624
+ } | undefined;
2625
+ }>>;
2626
+ /**
2627
+ * Workspace 数据源绑定(只存 ref/scope/readPolicy,绝不存 secret)。
2628
+ * 语义见 docs/todo/workspace-datasource-binding-adr.md §1.2。
2629
+ * 只存在于 PROJECT settings。
2630
+ */
2631
+ sources: z.ZodOptional<z.ZodArray<z.ZodObject<{
2632
+ sourceId: z.ZodString;
2633
+ scopes: z.ZodArray<z.ZodString, "many">;
2634
+ readPolicy: z.ZodDefault<z.ZodEnum<["ask", "deny"]>>;
2635
+ }, "strip", z.ZodTypeAny, {
2636
+ sourceId: string;
2637
+ scopes: string[];
2638
+ readPolicy: "deny" | "ask";
2639
+ }, {
2640
+ sourceId: string;
2641
+ scopes: string[];
2642
+ readPolicy?: "deny" | "ask" | undefined;
2643
+ }>, "many">>;
2273
2644
  /**
2274
2645
  * Feature flags overlay: a map of flag name → boolean that overrides the
2275
2646
  * compiled-in defaults (see settings/feature-flags.ts FEATURE_FLAGS).
@@ -2320,43 +2691,6 @@ export declare const SettingsSchema: z.ZodObject<{
2320
2691
  compatFileNames?: string[] | undefined;
2321
2692
  ignoreGitBoundary?: boolean | undefined;
2322
2693
  }>>;
2323
- arena: z.ZodDefault<z.ZodObject<{
2324
- participants: z.ZodDefault<z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodObject<{
2325
- name: z.ZodString;
2326
- model: z.ZodString;
2327
- provider: z.ZodOptional<z.ZodString>;
2328
- apiKey: z.ZodOptional<z.ZodString>;
2329
- baseUrl: z.ZodOptional<z.ZodString>;
2330
- }, "strip", z.ZodTypeAny, {
2331
- name: string;
2332
- model: string;
2333
- provider?: string | undefined;
2334
- baseUrl?: string | undefined;
2335
- apiKey?: string | undefined;
2336
- }, {
2337
- name: string;
2338
- model: string;
2339
- provider?: string | undefined;
2340
- baseUrl?: string | undefined;
2341
- apiKey?: string | undefined;
2342
- }>]>, "many">>;
2343
- }, "strip", z.ZodTypeAny, {
2344
- participants: (string | {
2345
- name: string;
2346
- model: string;
2347
- provider?: string | undefined;
2348
- baseUrl?: string | undefined;
2349
- apiKey?: string | undefined;
2350
- })[];
2351
- }, {
2352
- participants?: (string | {
2353
- name: string;
2354
- model: string;
2355
- provider?: string | undefined;
2356
- baseUrl?: string | undefined;
2357
- apiKey?: string | undefined;
2358
- })[] | undefined;
2359
- }>>;
2360
2694
  search: z.ZodDefault<z.ZodObject<{
2361
2695
  provider: z.ZodDefault<z.ZodEnum<["serper", "tavily", "searxng"]>>;
2362
2696
  apiKey: z.ZodOptional<z.ZodString>;
@@ -2601,16 +2935,16 @@ export declare const SettingsSchema: z.ZodObject<{
2601
2935
  command: string;
2602
2936
  event: string;
2603
2937
  disabled?: boolean | undefined;
2938
+ cwd?: string | undefined;
2604
2939
  matcher?: string | undefined;
2605
2940
  timeout_ms?: number | undefined;
2606
- cwd?: string | undefined;
2607
2941
  }, {
2608
2942
  command: string;
2609
2943
  event: string;
2610
2944
  disabled?: boolean | undefined;
2945
+ cwd?: string | undefined;
2611
2946
  matcher?: string | undefined;
2612
2947
  timeout_ms?: number | undefined;
2613
- cwd?: string | undefined;
2614
2948
  }>, "many">>;
2615
2949
  /**
2616
2950
  * External coding-agent orchestration (Claude Code / Codex CLI).
@@ -2626,14 +2960,14 @@ export declare const SettingsSchema: z.ZodObject<{
2626
2960
  trustedWorkspaces: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
2627
2961
  autoStartInTrustedWorkspaces: z.ZodOptional<z.ZodBoolean>;
2628
2962
  }, "strip", z.ZodTypeAny, {
2629
- defaultMode?: "safe" | "dangerous" | undefined;
2630
2963
  command?: string | undefined;
2964
+ defaultMode?: "dangerous" | "safe" | undefined;
2631
2965
  dangerousArgs?: string[] | undefined;
2632
2966
  trustedWorkspaces?: string[] | undefined;
2633
2967
  autoStartInTrustedWorkspaces?: boolean | undefined;
2634
2968
  }, {
2635
- defaultMode?: "safe" | "dangerous" | undefined;
2636
2969
  command?: string | undefined;
2970
+ defaultMode?: "dangerous" | "safe" | undefined;
2637
2971
  dangerousArgs?: string[] | undefined;
2638
2972
  trustedWorkspaces?: string[] | undefined;
2639
2973
  autoStartInTrustedWorkspaces?: boolean | undefined;
@@ -2650,8 +2984,8 @@ export declare const SettingsSchema: z.ZodObject<{
2650
2984
  }>>;
2651
2985
  }, "strip", z.ZodTypeAny, {
2652
2986
  claudeCode?: {
2653
- defaultMode?: "safe" | "dangerous" | undefined;
2654
2987
  command?: string | undefined;
2988
+ defaultMode?: "dangerous" | "safe" | undefined;
2655
2989
  dangerousArgs?: string[] | undefined;
2656
2990
  trustedWorkspaces?: string[] | undefined;
2657
2991
  autoStartInTrustedWorkspaces?: boolean | undefined;
@@ -2662,8 +2996,8 @@ export declare const SettingsSchema: z.ZodObject<{
2662
2996
  } | undefined;
2663
2997
  }, {
2664
2998
  claudeCode?: {
2665
- defaultMode?: "safe" | "dangerous" | undefined;
2666
2999
  command?: string | undefined;
3000
+ defaultMode?: "dangerous" | "safe" | undefined;
2667
3001
  dangerousArgs?: string[] | undefined;
2668
3002
  trustedWorkspaces?: string[] | undefined;
2669
3003
  autoStartInTrustedWorkspaces?: boolean | undefined;