@aitne/daemon 0.1.6 → 0.1.8

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 (963) hide show
  1. package/dist/adapters/dashboard-adapter.d.ts +18 -2
  2. package/dist/adapters/dashboard-adapter.d.ts.map +1 -1
  3. package/dist/adapters/dashboard-adapter.js +101 -51
  4. package/dist/adapters/dashboard-adapter.js.map +1 -1
  5. package/dist/adapters/discord.d.ts +8 -0
  6. package/dist/adapters/discord.d.ts.map +1 -1
  7. package/dist/adapters/discord.js +100 -21
  8. package/dist/adapters/discord.js.map +1 -1
  9. package/dist/adapters/message-hub.d.ts.map +1 -1
  10. package/dist/adapters/message-hub.js +7 -1
  11. package/dist/adapters/message-hub.js.map +1 -1
  12. package/dist/adapters/notification-manager.d.ts +102 -2
  13. package/dist/adapters/notification-manager.d.ts.map +1 -1
  14. package/dist/adapters/notification-manager.js +228 -8
  15. package/dist/adapters/notification-manager.js.map +1 -1
  16. package/dist/adapters/outbound-text.d.ts +16 -0
  17. package/dist/adapters/outbound-text.d.ts.map +1 -1
  18. package/dist/adapters/outbound-text.js +118 -1
  19. package/dist/adapters/outbound-text.js.map +1 -1
  20. package/dist/adapters/primary-platform-resolver.d.ts +69 -0
  21. package/dist/adapters/primary-platform-resolver.d.ts.map +1 -0
  22. package/dist/adapters/primary-platform-resolver.js +55 -0
  23. package/dist/adapters/primary-platform-resolver.js.map +1 -0
  24. package/dist/adapters/slack-adapter.d.ts +28 -0
  25. package/dist/adapters/slack-adapter.d.ts.map +1 -1
  26. package/dist/adapters/slack-adapter.js +134 -35
  27. package/dist/adapters/slack-adapter.js.map +1 -1
  28. package/dist/adapters/telegram-adapter.d.ts +7 -1
  29. package/dist/adapters/telegram-adapter.d.ts.map +1 -1
  30. package/dist/adapters/telegram-adapter.js +49 -18
  31. package/dist/adapters/telegram-adapter.js.map +1 -1
  32. package/dist/adapters/whatsapp-adapter.d.ts +33 -0
  33. package/dist/adapters/whatsapp-adapter.d.ts.map +1 -1
  34. package/dist/adapters/whatsapp-adapter.js +84 -0
  35. package/dist/adapters/whatsapp-adapter.js.map +1 -1
  36. package/dist/api/directory-picker.d.ts.map +1 -1
  37. package/dist/api/directory-picker.js +14 -0
  38. package/dist/api/directory-picker.js.map +1 -1
  39. package/dist/api/env-writer.d.ts.map +1 -1
  40. package/dist/api/env-writer.js +6 -1
  41. package/dist/api/env-writer.js.map +1 -1
  42. package/dist/api/helpers/agent-errors.d.ts +2600 -0
  43. package/dist/api/helpers/agent-errors.d.ts.map +1 -0
  44. package/dist/api/helpers/agent-errors.js +2506 -0
  45. package/dist/api/helpers/agent-errors.js.map +1 -0
  46. package/dist/api/integration-route-gate.d.ts.map +1 -1
  47. package/dist/api/integration-route-gate.js +10 -3
  48. package/dist/api/integration-route-gate.js.map +1 -1
  49. package/dist/api/routes/agent-schedule-plan-match.d.ts +5 -0
  50. package/dist/api/routes/agent-schedule-plan-match.d.ts.map +1 -0
  51. package/dist/api/routes/agent-schedule-plan-match.js +101 -0
  52. package/dist/api/routes/agent-schedule-plan-match.js.map +1 -0
  53. package/dist/api/routes/agent-schedule.d.ts +4 -0
  54. package/dist/api/routes/agent-schedule.d.ts.map +1 -0
  55. package/dist/api/routes/agent-schedule.js +750 -0
  56. package/dist/api/routes/agent-schedule.js.map +1 -0
  57. package/dist/api/routes/agent.d.ts.map +1 -1
  58. package/dist/api/routes/agent.js +209 -366
  59. package/dist/api/routes/agent.js.map +1 -1
  60. package/dist/api/routes/apple-calendar.d.ts.map +1 -1
  61. package/dist/api/routes/apple-calendar.js +109 -27
  62. package/dist/api/routes/apple-calendar.js.map +1 -1
  63. package/dist/api/routes/attachments.d.ts.map +1 -1
  64. package/dist/api/routes/attachments.js +113 -21
  65. package/dist/api/routes/attachments.js.map +1 -1
  66. package/dist/api/routes/backends.d.ts.map +1 -1
  67. package/dist/api/routes/backends.js +100 -4
  68. package/dist/api/routes/backends.js.map +1 -1
  69. package/dist/api/routes/books.d.ts.map +1 -1
  70. package/dist/api/routes/books.js +58 -18
  71. package/dist/api/routes/books.js.map +1 -1
  72. package/dist/api/routes/calendar.d.ts +3 -2
  73. package/dist/api/routes/calendar.d.ts.map +1 -1
  74. package/dist/api/routes/calendar.js +330 -55
  75. package/dist/api/routes/calendar.js.map +1 -1
  76. package/dist/api/routes/commands.d.ts.map +1 -1
  77. package/dist/api/routes/commands.js +20 -1
  78. package/dist/api/routes/commands.js.map +1 -1
  79. package/dist/api/routes/context/index.d.ts +33 -0
  80. package/dist/api/routes/context/index.d.ts.map +1 -0
  81. package/dist/api/routes/context/index.js +193 -0
  82. package/dist/api/routes/context/index.js.map +1 -0
  83. package/dist/api/routes/context/locks.d.ts +4 -0
  84. package/dist/api/routes/context/locks.d.ts.map +1 -0
  85. package/dist/api/routes/context/locks.js +136 -0
  86. package/dist/api/routes/context/locks.js.map +1 -0
  87. package/dist/api/routes/context/path-resolve.d.ts +15 -0
  88. package/dist/api/routes/context/path-resolve.d.ts.map +1 -0
  89. package/dist/api/routes/context/path-resolve.js +109 -0
  90. package/dist/api/routes/context/path-resolve.js.map +1 -0
  91. package/dist/api/routes/context/permissions.d.ts +35 -0
  92. package/dist/api/routes/context/permissions.d.ts.map +1 -0
  93. package/dist/api/routes/context/permissions.js +192 -0
  94. package/dist/api/routes/context/permissions.js.map +1 -0
  95. package/dist/api/routes/context/read.d.ts +4 -0
  96. package/dist/api/routes/context/read.d.ts.map +1 -0
  97. package/dist/api/routes/context/read.js +295 -0
  98. package/dist/api/routes/context/read.js.map +1 -0
  99. package/dist/api/routes/context/repair.d.ts +4 -0
  100. package/dist/api/routes/context/repair.d.ts.map +1 -0
  101. package/dist/api/routes/context/repair.js +114 -0
  102. package/dist/api/routes/context/repair.js.map +1 -0
  103. package/dist/api/routes/context/snapshots.d.ts +4 -0
  104. package/dist/api/routes/context/snapshots.d.ts.map +1 -0
  105. package/dist/api/routes/context/snapshots.js +177 -0
  106. package/dist/api/routes/context/snapshots.js.map +1 -0
  107. package/dist/api/routes/context/write.d.ts +4 -0
  108. package/dist/api/routes/context/write.d.ts.map +1 -0
  109. package/dist/api/routes/context/write.js +570 -0
  110. package/dist/api/routes/context/write.js.map +1 -0
  111. package/dist/api/routes/context.d.ts +2 -43
  112. package/dist/api/routes/context.d.ts.map +1 -1
  113. package/dist/api/routes/context.js +415 -558
  114. package/dist/api/routes/context.js.map +1 -1
  115. package/dist/api/routes/dashboard/config.d.ts +4 -0
  116. package/dist/api/routes/dashboard/config.d.ts.map +1 -0
  117. package/dist/api/routes/dashboard/config.js +499 -0
  118. package/dist/api/routes/dashboard/config.js.map +1 -0
  119. package/dist/api/routes/dashboard/conversations.d.ts +4 -0
  120. package/dist/api/routes/dashboard/conversations.d.ts.map +1 -0
  121. package/dist/api/routes/dashboard/conversations.js +309 -0
  122. package/dist/api/routes/dashboard/conversations.js.map +1 -0
  123. package/dist/api/routes/dashboard/cost-approvals.d.ts +29 -0
  124. package/dist/api/routes/dashboard/cost-approvals.d.ts.map +1 -0
  125. package/dist/api/routes/dashboard/cost-approvals.js +259 -0
  126. package/dist/api/routes/dashboard/cost-approvals.js.map +1 -0
  127. package/dist/api/routes/dashboard/index.d.ts +27 -0
  128. package/dist/api/routes/dashboard/index.d.ts.map +1 -0
  129. package/dist/api/routes/dashboard/index.js +47 -0
  130. package/dist/api/routes/dashboard/index.js.map +1 -0
  131. package/dist/api/routes/dashboard/messaging.d.ts +4 -0
  132. package/dist/api/routes/dashboard/messaging.d.ts.map +1 -0
  133. package/dist/api/routes/dashboard/messaging.js +351 -0
  134. package/dist/api/routes/dashboard/messaging.js.map +1 -0
  135. package/dist/api/routes/dashboard/notifications.d.ts +4 -0
  136. package/dist/api/routes/dashboard/notifications.d.ts.map +1 -0
  137. package/dist/api/routes/dashboard/notifications.js +109 -0
  138. package/dist/api/routes/dashboard/notifications.js.map +1 -0
  139. package/dist/api/routes/dashboard/oauth-google.d.ts +4 -0
  140. package/dist/api/routes/dashboard/oauth-google.d.ts.map +1 -0
  141. package/dist/api/routes/dashboard/oauth-google.js +293 -0
  142. package/dist/api/routes/dashboard/oauth-google.js.map +1 -0
  143. package/dist/api/routes/dashboard/schedule-readonly.d.ts +4 -0
  144. package/dist/api/routes/dashboard/schedule-readonly.d.ts.map +1 -0
  145. package/dist/api/routes/dashboard/schedule-readonly.js +46 -0
  146. package/dist/api/routes/dashboard/schedule-readonly.js.map +1 -0
  147. package/dist/api/routes/dashboard/secrets.d.ts +24 -0
  148. package/dist/api/routes/dashboard/secrets.d.ts.map +1 -0
  149. package/dist/api/routes/dashboard/secrets.js +307 -0
  150. package/dist/api/routes/dashboard/secrets.js.map +1 -0
  151. package/dist/api/routes/dashboard/snapshots.d.ts +4 -0
  152. package/dist/api/routes/dashboard/snapshots.d.ts.map +1 -0
  153. package/dist/api/routes/dashboard/snapshots.js +33 -0
  154. package/dist/api/routes/dashboard/snapshots.js.map +1 -0
  155. package/dist/api/routes/dashboard.d.ts.map +1 -1
  156. package/dist/api/routes/dashboard.js +20 -12
  157. package/dist/api/routes/dashboard.js.map +1 -1
  158. package/dist/api/routes/delegated.d.ts +5 -4
  159. package/dist/api/routes/delegated.d.ts.map +1 -1
  160. package/dist/api/routes/delegated.js +6 -5
  161. package/dist/api/routes/delegated.js.map +1 -1
  162. package/dist/api/routes/docs.d.ts.map +1 -1
  163. package/dist/api/routes/docs.js +72 -9
  164. package/dist/api/routes/docs.js.map +1 -1
  165. package/dist/api/routes/entities.d.ts.map +1 -1
  166. package/dist/api/routes/entities.js +112 -43
  167. package/dist/api/routes/entities.js.map +1 -1
  168. package/dist/api/routes/fs.d.ts.map +1 -1
  169. package/dist/api/routes/fs.js +27 -12
  170. package/dist/api/routes/fs.js.map +1 -1
  171. package/dist/api/routes/git-templates.d.ts.map +1 -1
  172. package/dist/api/routes/git-templates.js +107 -27
  173. package/dist/api/routes/git-templates.js.map +1 -1
  174. package/dist/api/routes/git.d.ts.map +1 -1
  175. package/dist/api/routes/git.js +55 -11
  176. package/dist/api/routes/git.js.map +1 -1
  177. package/dist/api/routes/github.d.ts.map +1 -1
  178. package/dist/api/routes/github.js +110 -17
  179. package/dist/api/routes/github.js.map +1 -1
  180. package/dist/api/routes/integrations/crud-patch.d.ts +17 -0
  181. package/dist/api/routes/integrations/crud-patch.d.ts.map +1 -0
  182. package/dist/api/routes/integrations/crud-patch.js +600 -0
  183. package/dist/api/routes/integrations/crud-patch.js.map +1 -0
  184. package/dist/api/routes/integrations/crud.d.ts +16 -0
  185. package/dist/api/routes/integrations/crud.d.ts.map +1 -0
  186. package/dist/api/routes/integrations/crud.js +158 -0
  187. package/dist/api/routes/integrations/crud.js.map +1 -0
  188. package/dist/api/routes/integrations/exec.d.ts +23 -0
  189. package/dist/api/routes/integrations/exec.d.ts.map +1 -0
  190. package/dist/api/routes/integrations/exec.js +356 -0
  191. package/dist/api/routes/integrations/exec.js.map +1 -0
  192. package/dist/api/routes/integrations/index.d.ts +62 -0
  193. package/dist/api/routes/integrations/index.d.ts.map +1 -0
  194. package/dist/api/routes/integrations/index.js +70 -0
  195. package/dist/api/routes/integrations/index.js.map +1 -0
  196. package/dist/api/routes/integrations/integrations/crud.d.ts +16 -0
  197. package/dist/api/routes/integrations/integrations/crud.d.ts.map +1 -0
  198. package/dist/api/routes/integrations/integrations/crud.js +158 -0
  199. package/dist/api/routes/integrations/integrations/crud.js.map +1 -0
  200. package/dist/api/routes/integrations/integrations/index.d.ts +55 -0
  201. package/dist/api/routes/integrations/integrations/index.d.ts.map +1 -0
  202. package/dist/api/routes/integrations/integrations/index.js +65 -0
  203. package/dist/api/routes/integrations/integrations/index.js.map +1 -0
  204. package/dist/api/routes/integrations/integrations/invoke.d.ts +38 -0
  205. package/dist/api/routes/integrations/integrations/invoke.d.ts.map +1 -0
  206. package/dist/api/routes/integrations/integrations/invoke.js +320 -0
  207. package/dist/api/routes/integrations/integrations/invoke.js.map +1 -0
  208. package/dist/api/routes/integrations/integrations/probe.d.ts +21 -0
  209. package/dist/api/routes/integrations/integrations/probe.d.ts.map +1 -0
  210. package/dist/api/routes/integrations/integrations/probe.js +247 -0
  211. package/dist/api/routes/integrations/integrations/probe.js.map +1 -0
  212. package/dist/api/routes/integrations/invoke.d.ts +38 -0
  213. package/dist/api/routes/integrations/invoke.d.ts.map +1 -0
  214. package/dist/api/routes/integrations/invoke.js +320 -0
  215. package/dist/api/routes/integrations/invoke.js.map +1 -0
  216. package/dist/api/routes/integrations/probe.d.ts +21 -0
  217. package/dist/api/routes/integrations/probe.d.ts.map +1 -0
  218. package/dist/api/routes/integrations/probe.js +247 -0
  219. package/dist/api/routes/integrations/probe.js.map +1 -0
  220. package/dist/api/routes/integrations.d.ts.map +1 -1
  221. package/dist/api/routes/integrations.js +65 -13
  222. package/dist/api/routes/integrations.js.map +1 -1
  223. package/dist/api/routes/knowledge.d.ts.map +1 -1
  224. package/dist/api/routes/knowledge.js +13 -2
  225. package/dist/api/routes/knowledge.js.map +1 -1
  226. package/dist/api/routes/mail/_pa_wip_mail/app-password.d.ts +4 -0
  227. package/dist/api/routes/mail/_pa_wip_mail/app-password.d.ts.map +1 -0
  228. package/dist/api/routes/mail/_pa_wip_mail/app-password.js +192 -0
  229. package/dist/api/routes/mail/_pa_wip_mail/app-password.js.map +1 -0
  230. package/dist/api/routes/mail/_pa_wip_mail/body-helpers.d.ts +55 -0
  231. package/dist/api/routes/mail/_pa_wip_mail/body-helpers.d.ts.map +1 -0
  232. package/dist/api/routes/mail/_pa_wip_mail/body-helpers.js +91 -0
  233. package/dist/api/routes/mail/_pa_wip_mail/body-helpers.js.map +1 -0
  234. package/dist/api/routes/mail/_pa_wip_mail/dependencies.d.ts +36 -0
  235. package/dist/api/routes/mail/_pa_wip_mail/dependencies.d.ts.map +1 -0
  236. package/dist/api/routes/mail/_pa_wip_mail/dependencies.js +2 -0
  237. package/dist/api/routes/mail/_pa_wip_mail/dependencies.js.map +1 -0
  238. package/dist/api/routes/mail/_pa_wip_mail/gating.d.ts +45 -0
  239. package/dist/api/routes/mail/_pa_wip_mail/gating.d.ts.map +1 -0
  240. package/dist/api/routes/mail/_pa_wip_mail/gating.js +98 -0
  241. package/dist/api/routes/mail/_pa_wip_mail/gating.js.map +1 -0
  242. package/dist/api/routes/mail/_pa_wip_mail/mail/accounts.d.ts +4 -0
  243. package/dist/api/routes/mail/_pa_wip_mail/mail/accounts.d.ts.map +1 -0
  244. package/dist/api/routes/mail/_pa_wip_mail/mail/accounts.js +289 -0
  245. package/dist/api/routes/mail/_pa_wip_mail/mail/accounts.js.map +1 -0
  246. package/dist/api/routes/mail/_pa_wip_mail/mail/app-password.d.ts +4 -0
  247. package/dist/api/routes/mail/_pa_wip_mail/mail/app-password.d.ts.map +1 -0
  248. package/dist/api/routes/mail/_pa_wip_mail/mail/app-password.js +192 -0
  249. package/dist/api/routes/mail/_pa_wip_mail/mail/app-password.js.map +1 -0
  250. package/dist/api/routes/mail/_pa_wip_mail/mail/body-helpers.d.ts +55 -0
  251. package/dist/api/routes/mail/_pa_wip_mail/mail/body-helpers.d.ts.map +1 -0
  252. package/dist/api/routes/mail/_pa_wip_mail/mail/body-helpers.js +91 -0
  253. package/dist/api/routes/mail/_pa_wip_mail/mail/body-helpers.js.map +1 -0
  254. package/dist/api/routes/mail/_pa_wip_mail/mail/dependencies.d.ts +36 -0
  255. package/dist/api/routes/mail/_pa_wip_mail/mail/dependencies.d.ts.map +1 -0
  256. package/dist/api/routes/mail/_pa_wip_mail/mail/dependencies.js +2 -0
  257. package/dist/api/routes/mail/_pa_wip_mail/mail/dependencies.js.map +1 -0
  258. package/dist/api/routes/mail/_pa_wip_mail/mail/drafts.d.ts +5 -0
  259. package/dist/api/routes/mail/_pa_wip_mail/mail/drafts.d.ts.map +1 -0
  260. package/dist/api/routes/mail/_pa_wip_mail/mail/drafts.js +139 -0
  261. package/dist/api/routes/mail/_pa_wip_mail/mail/drafts.js.map +1 -0
  262. package/dist/api/routes/mail/_pa_wip_mail/mail/gating.d.ts +45 -0
  263. package/dist/api/routes/mail/_pa_wip_mail/mail/gating.d.ts.map +1 -0
  264. package/dist/api/routes/mail/_pa_wip_mail/mail/gating.js +98 -0
  265. package/dist/api/routes/mail/_pa_wip_mail/mail/gating.js.map +1 -0
  266. package/dist/api/routes/mail/_pa_wip_mail/mail/index.d.ts +18 -0
  267. package/dist/api/routes/mail/_pa_wip_mail/mail/index.d.ts.map +1 -0
  268. package/dist/api/routes/mail/_pa_wip_mail/mail/index.js +40 -0
  269. package/dist/api/routes/mail/_pa_wip_mail/mail/index.js.map +1 -0
  270. package/dist/api/routes/mail/_pa_wip_mail/mail/messages.d.ts +15 -0
  271. package/dist/api/routes/mail/_pa_wip_mail/mail/messages.d.ts.map +1 -0
  272. package/dist/api/routes/mail/_pa_wip_mail/mail/messages.js +239 -0
  273. package/dist/api/routes/mail/_pa_wip_mail/mail/messages.js.map +1 -0
  274. package/dist/api/routes/mail/_pa_wip_mail/mail/outlook-config.d.ts +4 -0
  275. package/dist/api/routes/mail/_pa_wip_mail/mail/outlook-config.d.ts.map +1 -0
  276. package/dist/api/routes/mail/_pa_wip_mail/mail/outlook-config.js +73 -0
  277. package/dist/api/routes/mail/_pa_wip_mail/mail/outlook-config.js.map +1 -0
  278. package/dist/api/routes/mail/_pa_wip_mail/mail/provider-resolver.d.ts +64 -0
  279. package/dist/api/routes/mail/_pa_wip_mail/mail/provider-resolver.d.ts.map +1 -0
  280. package/dist/api/routes/mail/_pa_wip_mail/mail/provider-resolver.js +286 -0
  281. package/dist/api/routes/mail/_pa_wip_mail/mail/provider-resolver.js.map +1 -0
  282. package/dist/api/routes/mail/_pa_wip_mail/mail/providers.d.ts +4 -0
  283. package/dist/api/routes/mail/_pa_wip_mail/mail/providers.d.ts.map +1 -0
  284. package/dist/api/routes/mail/_pa_wip_mail/mail/providers.js +73 -0
  285. package/dist/api/routes/mail/_pa_wip_mail/mail/providers.js.map +1 -0
  286. package/dist/api/routes/mail/_pa_wip_mail/mail/tags-folders.d.ts +5 -0
  287. package/dist/api/routes/mail/_pa_wip_mail/mail/tags-folders.d.ts.map +1 -0
  288. package/dist/api/routes/mail/_pa_wip_mail/mail/tags-folders.js +35 -0
  289. package/dist/api/routes/mail/_pa_wip_mail/mail/tags-folders.js.map +1 -0
  290. package/dist/api/routes/mail/_pa_wip_mail/mail/validators.d.ts +23 -0
  291. package/dist/api/routes/mail/_pa_wip_mail/mail/validators.d.ts.map +1 -0
  292. package/dist/api/routes/mail/_pa_wip_mail/mail/validators.js +131 -0
  293. package/dist/api/routes/mail/_pa_wip_mail/mail/validators.js.map +1 -0
  294. package/dist/api/routes/mail/_pa_wip_mail/provider-resolver.d.ts +64 -0
  295. package/dist/api/routes/mail/_pa_wip_mail/provider-resolver.d.ts.map +1 -0
  296. package/dist/api/routes/mail/_pa_wip_mail/provider-resolver.js +286 -0
  297. package/dist/api/routes/mail/_pa_wip_mail/provider-resolver.js.map +1 -0
  298. package/dist/api/routes/mail/_pa_wip_mail/search-health.d.ts +4 -0
  299. package/dist/api/routes/mail/_pa_wip_mail/search-health.d.ts.map +1 -0
  300. package/dist/api/routes/mail/_pa_wip_mail/search-health.js +131 -0
  301. package/dist/api/routes/mail/_pa_wip_mail/search-health.js.map +1 -0
  302. package/dist/api/routes/mail/_pa_wip_mail/validators.d.ts +23 -0
  303. package/dist/api/routes/mail/_pa_wip_mail/validators.d.ts.map +1 -0
  304. package/dist/api/routes/mail/_pa_wip_mail/validators.js +131 -0
  305. package/dist/api/routes/mail/_pa_wip_mail/validators.js.map +1 -0
  306. package/dist/api/routes/mail/accounts.d.ts +4 -0
  307. package/dist/api/routes/mail/accounts.d.ts.map +1 -0
  308. package/dist/api/routes/mail/accounts.js +289 -0
  309. package/dist/api/routes/mail/accounts.js.map +1 -0
  310. package/dist/api/routes/mail/app-password.d.ts +4 -0
  311. package/dist/api/routes/mail/app-password.d.ts.map +1 -0
  312. package/dist/api/routes/mail/app-password.js +192 -0
  313. package/dist/api/routes/mail/app-password.js.map +1 -0
  314. package/dist/api/routes/mail/body-helpers.d.ts +56 -0
  315. package/dist/api/routes/mail/body-helpers.d.ts.map +1 -0
  316. package/dist/api/routes/mail/body-helpers.js +91 -0
  317. package/dist/api/routes/mail/body-helpers.js.map +1 -0
  318. package/dist/api/routes/mail/dependencies.d.ts +36 -0
  319. package/dist/api/routes/mail/dependencies.d.ts.map +1 -0
  320. package/dist/api/routes/mail/dependencies.js +2 -0
  321. package/dist/api/routes/mail/dependencies.js.map +1 -0
  322. package/dist/api/routes/mail/drafts.d.ts +5 -0
  323. package/dist/api/routes/mail/drafts.d.ts.map +1 -0
  324. package/dist/api/routes/mail/drafts.js +139 -0
  325. package/dist/api/routes/mail/drafts.js.map +1 -0
  326. package/dist/api/routes/mail/gating.d.ts +45 -0
  327. package/dist/api/routes/mail/gating.d.ts.map +1 -0
  328. package/dist/api/routes/mail/gating.js +99 -0
  329. package/dist/api/routes/mail/gating.js.map +1 -0
  330. package/dist/api/routes/mail/index.d.ts +18 -0
  331. package/dist/api/routes/mail/index.d.ts.map +1 -0
  332. package/dist/api/routes/mail/index.js +40 -0
  333. package/dist/api/routes/mail/index.js.map +1 -0
  334. package/dist/api/routes/mail/messages.d.ts +15 -0
  335. package/dist/api/routes/mail/messages.d.ts.map +1 -0
  336. package/dist/api/routes/mail/messages.js +239 -0
  337. package/dist/api/routes/mail/messages.js.map +1 -0
  338. package/dist/api/routes/mail/outlook-config.d.ts +4 -0
  339. package/dist/api/routes/mail/outlook-config.d.ts.map +1 -0
  340. package/dist/api/routes/mail/outlook-config.js +73 -0
  341. package/dist/api/routes/mail/outlook-config.js.map +1 -0
  342. package/dist/api/routes/mail/provider-resolver.d.ts +64 -0
  343. package/dist/api/routes/mail/provider-resolver.d.ts.map +1 -0
  344. package/dist/api/routes/mail/provider-resolver.js +286 -0
  345. package/dist/api/routes/mail/provider-resolver.js.map +1 -0
  346. package/dist/api/routes/mail/providers.d.ts +4 -0
  347. package/dist/api/routes/mail/providers.d.ts.map +1 -0
  348. package/dist/api/routes/mail/providers.js +73 -0
  349. package/dist/api/routes/mail/providers.js.map +1 -0
  350. package/dist/api/routes/mail/search-health.d.ts +4 -0
  351. package/dist/api/routes/mail/search-health.d.ts.map +1 -0
  352. package/dist/api/routes/mail/search-health.js +131 -0
  353. package/dist/api/routes/mail/search-health.js.map +1 -0
  354. package/dist/api/routes/mail/tags-folders.d.ts +5 -0
  355. package/dist/api/routes/mail/tags-folders.d.ts.map +1 -0
  356. package/dist/api/routes/mail/tags-folders.js +35 -0
  357. package/dist/api/routes/mail/tags-folders.js.map +1 -0
  358. package/dist/api/routes/mail/validators.d.ts +23 -0
  359. package/dist/api/routes/mail/validators.d.ts.map +1 -0
  360. package/dist/api/routes/mail/validators.js +131 -0
  361. package/dist/api/routes/mail/validators.js.map +1 -0
  362. package/dist/api/routes/mail.d.ts.map +1 -1
  363. package/dist/api/routes/mail.js +259 -67
  364. package/dist/api/routes/mail.js.map +1 -1
  365. package/dist/api/routes/managed-tasks.d.ts.map +1 -1
  366. package/dist/api/routes/managed-tasks.js +142 -54
  367. package/dist/api/routes/managed-tasks.js.map +1 -1
  368. package/dist/api/routes/mcp.d.ts.map +1 -1
  369. package/dist/api/routes/mcp.js +115 -47
  370. package/dist/api/routes/mcp.js.map +1 -1
  371. package/dist/api/routes/metrics.d.ts +1 -1
  372. package/dist/api/routes/metrics.js +2 -2
  373. package/dist/api/routes/notion.d.ts.map +1 -1
  374. package/dist/api/routes/notion.js +230 -54
  375. package/dist/api/routes/notion.js.map +1 -1
  376. package/dist/api/routes/observations.d.ts.map +1 -1
  377. package/dist/api/routes/observations.js +40 -169
  378. package/dist/api/routes/observations.js.map +1 -1
  379. package/dist/api/routes/obsidian.d.ts.map +1 -1
  380. package/dist/api/routes/obsidian.js +193 -32
  381. package/dist/api/routes/obsidian.js.map +1 -1
  382. package/dist/api/routes/profile-questions.d.ts.map +1 -1
  383. package/dist/api/routes/profile-questions.js +19 -3
  384. package/dist/api/routes/profile-questions.js.map +1 -1
  385. package/dist/api/routes/receipts.d.ts.map +1 -1
  386. package/dist/api/routes/receipts.js +64 -24
  387. package/dist/api/routes/receipts.js.map +1 -1
  388. package/dist/api/routes/recurring-schedules.d.ts.map +1 -1
  389. package/dist/api/routes/recurring-schedules.js +243 -13
  390. package/dist/api/routes/recurring-schedules.js.map +1 -1
  391. package/dist/api/routes/repositories.d.ts.map +1 -1
  392. package/dist/api/routes/repositories.js +278 -104
  393. package/dist/api/routes/repositories.js.map +1 -1
  394. package/dist/api/routes/schedule-model-resolver.d.ts +153 -0
  395. package/dist/api/routes/schedule-model-resolver.d.ts.map +1 -0
  396. package/dist/api/routes/schedule-model-resolver.js +282 -0
  397. package/dist/api/routes/schedule-model-resolver.js.map +1 -0
  398. package/dist/api/routes/schedule-options.d.ts +25 -0
  399. package/dist/api/routes/schedule-options.d.ts.map +1 -0
  400. package/dist/api/routes/schedule-options.js +77 -0
  401. package/dist/api/routes/schedule-options.js.map +1 -0
  402. package/dist/api/routes/schedule-validation.d.ts +146 -0
  403. package/dist/api/routes/schedule-validation.d.ts.map +1 -0
  404. package/dist/api/routes/schedule-validation.js +153 -0
  405. package/dist/api/routes/schedule-validation.js.map +1 -0
  406. package/dist/api/routes/setup.d.ts.map +1 -1
  407. package/dist/api/routes/setup.js +100 -26
  408. package/dist/api/routes/setup.js.map +1 -1
  409. package/dist/api/routes/skills.d.ts.map +1 -1
  410. package/dist/api/routes/skills.js +81 -30
  411. package/dist/api/routes/skills.js.map +1 -1
  412. package/dist/api/routes/sot-bindings.d.ts.map +1 -1
  413. package/dist/api/routes/sot-bindings.js +46 -11
  414. package/dist/api/routes/sot-bindings.js.map +1 -1
  415. package/dist/api/routes/sse.d.ts.map +1 -1
  416. package/dist/api/routes/sse.js +6 -1
  417. package/dist/api/routes/sse.js.map +1 -1
  418. package/dist/api/routes/system.d.ts.map +1 -1
  419. package/dist/api/routes/system.js +15 -2
  420. package/dist/api/routes/system.js.map +1 -1
  421. package/dist/api/routes/travel-bookings.d.ts.map +1 -1
  422. package/dist/api/routes/travel-bookings.js +26 -9
  423. package/dist/api/routes/travel-bookings.js.map +1 -1
  424. package/dist/api/routes/travel-time.d.ts.map +1 -1
  425. package/dist/api/routes/travel-time.js +50 -10
  426. package/dist/api/routes/travel-time.js.map +1 -1
  427. package/dist/api/routes/wiki.d.ts.map +1 -1
  428. package/dist/api/routes/wiki.js +49 -8
  429. package/dist/api/routes/wiki.js.map +1 -1
  430. package/dist/api/server.d.ts +15 -3
  431. package/dist/api/server.d.ts.map +1 -1
  432. package/dist/api/server.js +32 -10
  433. package/dist/api/server.js.map +1 -1
  434. package/dist/bootstrap/adapters.d.ts.map +1 -1
  435. package/dist/bootstrap/adapters.js +7 -4
  436. package/dist/bootstrap/adapters.js.map +1 -1
  437. package/dist/bootstrap/api.d.ts +205 -0
  438. package/dist/bootstrap/api.d.ts.map +1 -0
  439. package/dist/bootstrap/api.js +443 -0
  440. package/dist/bootstrap/api.js.map +1 -0
  441. package/dist/bootstrap/db.d.ts +119 -0
  442. package/dist/bootstrap/db.d.ts.map +1 -0
  443. package/dist/bootstrap/db.js +294 -0
  444. package/dist/bootstrap/db.js.map +1 -0
  445. package/dist/bootstrap/event-pipeline.d.ts +308 -0
  446. package/dist/bootstrap/event-pipeline.d.ts.map +1 -0
  447. package/dist/bootstrap/event-pipeline.js +704 -0
  448. package/dist/bootstrap/event-pipeline.js.map +1 -0
  449. package/dist/bootstrap/observers.d.ts +148 -0
  450. package/dist/bootstrap/observers.d.ts.map +1 -0
  451. package/dist/bootstrap/observers.js +558 -0
  452. package/dist/bootstrap/observers.js.map +1 -0
  453. package/dist/bootstrap/schedule-helpers.d.ts +122 -0
  454. package/dist/bootstrap/schedule-helpers.d.ts.map +1 -1
  455. package/dist/bootstrap/schedule-helpers.js +202 -4
  456. package/dist/bootstrap/schedule-helpers.js.map +1 -1
  457. package/dist/config.d.ts.map +1 -1
  458. package/dist/config.js +20 -3
  459. package/dist/config.js.map +1 -1
  460. package/dist/core/abort-utils.d.ts +14 -0
  461. package/dist/core/abort-utils.d.ts.map +1 -0
  462. package/dist/core/abort-utils.js +36 -0
  463. package/dist/core/abort-utils.js.map +1 -0
  464. package/dist/core/agent-core.d.ts +22 -3
  465. package/dist/core/agent-core.d.ts.map +1 -1
  466. package/dist/core/agent-core.js +3 -1
  467. package/dist/core/agent-core.js.map +1 -1
  468. package/dist/core/backends/auth-health-monitor.js +2 -3
  469. package/dist/core/backends/auth-health-monitor.js.map +1 -1
  470. package/dist/core/backends/backend-router.d.ts +11 -1
  471. package/dist/core/backends/backend-router.d.ts.map +1 -1
  472. package/dist/core/backends/backend-router.js +97 -2
  473. package/dist/core/backends/backend-router.js.map +1 -1
  474. package/dist/core/backends/claude-code-core.d.ts +51 -0
  475. package/dist/core/backends/claude-code-core.d.ts.map +1 -1
  476. package/dist/core/backends/claude-code-core.js +134 -11
  477. package/dist/core/backends/claude-code-core.js.map +1 -1
  478. package/dist/core/backends/claude-tool-collection.js +1 -1
  479. package/dist/core/backends/codex-core.d.ts +13 -1
  480. package/dist/core/backends/codex-core.d.ts.map +1 -1
  481. package/dist/core/backends/codex-core.js +436 -22
  482. package/dist/core/backends/codex-core.js.map +1 -1
  483. package/dist/core/backends/gemini-cli-core.d.ts +5 -1
  484. package/dist/core/backends/gemini-cli-core.d.ts.map +1 -1
  485. package/dist/core/backends/gemini-cli-core.js +298 -15
  486. package/dist/core/backends/gemini-cli-core.js.map +1 -1
  487. package/dist/core/backends/install-methods.d.ts.map +1 -1
  488. package/dist/core/backends/install-methods.js +22 -0
  489. package/dist/core/backends/install-methods.js.map +1 -1
  490. package/dist/core/backends/model-registry.d.ts +9 -4
  491. package/dist/core/backends/model-registry.d.ts.map +1 -1
  492. package/dist/core/backends/model-registry.js +153 -23
  493. package/dist/core/backends/model-registry.js.map +1 -1
  494. package/dist/core/backends/native-skill-discovery-probe.d.ts +80 -0
  495. package/dist/core/backends/native-skill-discovery-probe.d.ts.map +1 -0
  496. package/dist/core/backends/native-skill-discovery-probe.js +175 -0
  497. package/dist/core/backends/native-skill-discovery-probe.js.map +1 -0
  498. package/dist/core/backends/opencode-basic-auth-fetch.d.ts +27 -0
  499. package/dist/core/backends/opencode-basic-auth-fetch.d.ts.map +1 -0
  500. package/dist/core/backends/opencode-basic-auth-fetch.js +40 -0
  501. package/dist/core/backends/opencode-basic-auth-fetch.js.map +1 -0
  502. package/dist/core/backends/opencode-config-builder.d.ts +86 -0
  503. package/dist/core/backends/opencode-config-builder.d.ts.map +1 -0
  504. package/dist/core/backends/opencode-config-builder.js +172 -0
  505. package/dist/core/backends/opencode-config-builder.js.map +1 -0
  506. package/dist/core/backends/opencode-core.d.ts +316 -0
  507. package/dist/core/backends/opencode-core.d.ts.map +1 -0
  508. package/dist/core/backends/opencode-core.js +1502 -0
  509. package/dist/core/backends/opencode-core.js.map +1 -0
  510. package/dist/core/backends/opencode-event-mapper.d.ts +133 -0
  511. package/dist/core/backends/opencode-event-mapper.d.ts.map +1 -0
  512. package/dist/core/backends/opencode-event-mapper.js +198 -0
  513. package/dist/core/backends/opencode-event-mapper.js.map +1 -0
  514. package/dist/core/backends/opencode-mcp.d.ts +82 -0
  515. package/dist/core/backends/opencode-mcp.d.ts.map +1 -0
  516. package/dist/core/backends/opencode-mcp.js +165 -0
  517. package/dist/core/backends/opencode-mcp.js.map +1 -0
  518. package/dist/core/backends/opencode-server-manager.d.ts +114 -0
  519. package/dist/core/backends/opencode-server-manager.d.ts.map +1 -0
  520. package/dist/core/backends/opencode-server-manager.js +222 -0
  521. package/dist/core/backends/opencode-server-manager.js.map +1 -0
  522. package/dist/core/backends/opencode-types.d.ts +46 -0
  523. package/dist/core/backends/opencode-types.d.ts.map +1 -0
  524. package/dist/core/backends/opencode-types.js +14 -0
  525. package/dist/core/backends/opencode-types.js.map +1 -0
  526. package/dist/core/backends/plan-presets.d.ts +18 -5
  527. package/dist/core/backends/plan-presets.d.ts.map +1 -1
  528. package/dist/core/backends/plan-presets.js +144 -23
  529. package/dist/core/backends/plan-presets.js.map +1 -1
  530. package/dist/core/backends/process-config-cascade.d.ts +35 -0
  531. package/dist/core/backends/process-config-cascade.d.ts.map +1 -1
  532. package/dist/core/backends/process-config-cascade.js +35 -1
  533. package/dist/core/backends/process-config-cascade.js.map +1 -1
  534. package/dist/core/backends/prompt-utils.d.ts.map +1 -1
  535. package/dist/core/backends/prompt-utils.js +0 -2
  536. package/dist/core/backends/prompt-utils.js.map +1 -1
  537. package/dist/core/backends/quota-reset-hints.d.ts +44 -0
  538. package/dist/core/backends/quota-reset-hints.d.ts.map +1 -0
  539. package/dist/core/backends/quota-reset-hints.js +117 -0
  540. package/dist/core/backends/quota-reset-hints.js.map +1 -0
  541. package/dist/core/bang-commands/commands-close.d.ts +24 -0
  542. package/dist/core/bang-commands/commands-close.d.ts.map +1 -0
  543. package/dist/core/bang-commands/commands-close.js +24 -0
  544. package/dist/core/bang-commands/commands-close.js.map +1 -0
  545. package/dist/core/bang-commands/commands-cost.d.ts.map +1 -1
  546. package/dist/core/bang-commands/commands-cost.js +13 -0
  547. package/dist/core/bang-commands/commands-cost.js.map +1 -1
  548. package/dist/core/bang-commands/commands-help.d.ts.map +1 -1
  549. package/dist/core/bang-commands/commands-help.js +44 -5
  550. package/dist/core/bang-commands/commands-help.js.map +1 -1
  551. package/dist/core/bang-commands/commands-report.d.ts.map +1 -1
  552. package/dist/core/bang-commands/commands-report.js +1 -0
  553. package/dist/core/bang-commands/commands-report.js.map +1 -1
  554. package/dist/core/bang-commands/commands-stop-start.d.ts.map +1 -1
  555. package/dist/core/bang-commands/commands-stop-start.js +2 -0
  556. package/dist/core/bang-commands/commands-stop-start.js.map +1 -1
  557. package/dist/core/bang-commands/commands-wiki.d.ts.map +1 -1
  558. package/dist/core/bang-commands/commands-wiki.js +12 -1
  559. package/dist/core/bang-commands/commands-wiki.js.map +1 -1
  560. package/dist/core/bang-commands/format-utils.d.ts +13 -1
  561. package/dist/core/bang-commands/format-utils.d.ts.map +1 -1
  562. package/dist/core/bang-commands/format-utils.js +21 -2
  563. package/dist/core/bang-commands/format-utils.js.map +1 -1
  564. package/dist/core/bang-commands/index.d.ts +1 -0
  565. package/dist/core/bang-commands/index.d.ts.map +1 -1
  566. package/dist/core/bang-commands/index.js +3 -0
  567. package/dist/core/bang-commands/index.js.map +1 -1
  568. package/dist/core/bang-commands/registry.d.ts +50 -0
  569. package/dist/core/bang-commands/registry.d.ts.map +1 -1
  570. package/dist/core/bang-commands/registry.js +164 -19
  571. package/dist/core/bang-commands/registry.js.map +1 -1
  572. package/dist/core/channel-timeline.d.ts +18 -1
  573. package/dist/core/channel-timeline.d.ts.map +1 -1
  574. package/dist/core/channel-timeline.js +44 -0
  575. package/dist/core/channel-timeline.js.map +1 -1
  576. package/dist/core/context/activity-view-runner.js +9 -1
  577. package/dist/core/context/activity-view-runner.js.map +1 -1
  578. package/dist/core/context/default-schedules-runner.js +44 -4
  579. package/dist/core/context/default-schedules-runner.js.map +1 -1
  580. package/dist/core/context/domain-index-runner.js +9 -1
  581. package/dist/core/context/domain-index-runner.js.map +1 -1
  582. package/dist/core/context/entity-source-rename.d.ts.map +1 -1
  583. package/dist/core/context/entity-source-rename.js +9 -1
  584. package/dist/core/context/entity-source-rename.js.map +1 -1
  585. package/dist/core/context/policy-index-runner.js +9 -1
  586. package/dist/core/context/policy-index-runner.js.map +1 -1
  587. package/dist/core/context/reconciler-runner.js +9 -1
  588. package/dist/core/context/reconciler-runner.js.map +1 -1
  589. package/dist/core/context-builder.d.ts +97 -2
  590. package/dist/core/context-builder.d.ts.map +1 -1
  591. package/dist/core/context-builder.js +303 -30
  592. package/dist/core/context-builder.js.map +1 -1
  593. package/dist/core/context-frontmatter.d.ts +6 -0
  594. package/dist/core/context-frontmatter.d.ts.map +1 -1
  595. package/dist/core/context-frontmatter.js +120 -8
  596. package/dist/core/context-frontmatter.js.map +1 -1
  597. package/dist/core/context-health.js +21 -9
  598. package/dist/core/context-health.js.map +1 -1
  599. package/dist/core/context-validation/_pa_wip_context_validation/index.d.ts +19 -0
  600. package/dist/core/context-validation/_pa_wip_context_validation/index.d.ts.map +1 -0
  601. package/dist/core/context-validation/_pa_wip_context_validation/index.js +19 -0
  602. package/dist/core/context-validation/_pa_wip_context_validation/index.js.map +1 -0
  603. package/dist/core/context-validation/_pa_wip_context_validation/prepare-write.d.ts +94 -0
  604. package/dist/core/context-validation/_pa_wip_context_validation/prepare-write.d.ts.map +1 -0
  605. package/dist/core/context-validation/_pa_wip_context_validation/prepare-write.js +130 -0
  606. package/dist/core/context-validation/_pa_wip_context_validation/prepare-write.js.map +1 -0
  607. package/dist/core/context-validation/_pa_wip_context_validation/routine-rulebook.d.ts +60 -0
  608. package/dist/core/context-validation/_pa_wip_context_validation/routine-rulebook.d.ts.map +1 -0
  609. package/dist/core/context-validation/_pa_wip_context_validation/routine-rulebook.js +156 -0
  610. package/dist/core/context-validation/_pa_wip_context_validation/routine-rulebook.js.map +1 -0
  611. package/dist/core/context-validation/_pa_wip_context_validation/section.d.ts +41 -0
  612. package/dist/core/context-validation/_pa_wip_context_validation/section.d.ts.map +1 -0
  613. package/dist/core/context-validation/_pa_wip_context_validation/section.js +82 -0
  614. package/dist/core/context-validation/_pa_wip_context_validation/section.js.map +1 -0
  615. package/dist/core/context-validation/_pa_wip_context_validation/snapshot-debounce.d.ts +52 -0
  616. package/dist/core/context-validation/_pa_wip_context_validation/snapshot-debounce.d.ts.map +1 -0
  617. package/dist/core/context-validation/_pa_wip_context_validation/snapshot-debounce.js +110 -0
  618. package/dist/core/context-validation/_pa_wip_context_validation/snapshot-debounce.js.map +1 -0
  619. package/dist/core/context-validation/_pa_wip_context_validation/today.d.ts +85 -0
  620. package/dist/core/context-validation/_pa_wip_context_validation/today.d.ts.map +1 -0
  621. package/dist/core/context-validation/_pa_wip_context_validation/today.js +162 -0
  622. package/dist/core/context-validation/_pa_wip_context_validation/today.js.map +1 -0
  623. package/dist/core/context-validation/index.d.ts +19 -0
  624. package/dist/core/context-validation/index.d.ts.map +1 -0
  625. package/dist/core/context-validation/index.js +19 -0
  626. package/dist/core/context-validation/index.js.map +1 -0
  627. package/dist/core/context-validation/prepare-write.d.ts +95 -0
  628. package/dist/core/context-validation/prepare-write.d.ts.map +1 -0
  629. package/dist/core/context-validation/prepare-write.js +135 -0
  630. package/dist/core/context-validation/prepare-write.js.map +1 -0
  631. package/dist/core/context-validation/routine-rulebook.d.ts +60 -0
  632. package/dist/core/context-validation/routine-rulebook.d.ts.map +1 -0
  633. package/dist/core/context-validation/routine-rulebook.js +156 -0
  634. package/dist/core/context-validation/routine-rulebook.js.map +1 -0
  635. package/dist/core/context-validation/section.d.ts +41 -0
  636. package/dist/core/context-validation/section.d.ts.map +1 -0
  637. package/dist/core/context-validation/section.js +82 -0
  638. package/dist/core/context-validation/section.js.map +1 -0
  639. package/dist/core/context-validation/snapshot-debounce.d.ts +52 -0
  640. package/dist/core/context-validation/snapshot-debounce.d.ts.map +1 -0
  641. package/dist/core/context-validation/snapshot-debounce.js +110 -0
  642. package/dist/core/context-validation/snapshot-debounce.js.map +1 -0
  643. package/dist/core/context-validation/today.d.ts +85 -0
  644. package/dist/core/context-validation/today.d.ts.map +1 -0
  645. package/dist/core/context-validation/today.js +168 -0
  646. package/dist/core/context-validation/today.js.map +1 -0
  647. package/dist/core/daemon-api-cli.d.ts +6 -5
  648. package/dist/core/daemon-api-cli.d.ts.map +1 -1
  649. package/dist/core/daemon-api-cli.js +73 -32
  650. package/dist/core/daemon-api-cli.js.map +1 -1
  651. package/dist/core/dispatcher-error-handling.d.ts +13 -0
  652. package/dist/core/dispatcher-error-handling.d.ts.map +1 -1
  653. package/dist/core/dispatcher-error-handling.js +69 -0
  654. package/dist/core/dispatcher-error-handling.js.map +1 -1
  655. package/dist/core/dispatcher-hourly-check.d.ts +73 -1
  656. package/dist/core/dispatcher-hourly-check.d.ts.map +1 -1
  657. package/dist/core/dispatcher-hourly-check.js +249 -151
  658. package/dist/core/dispatcher-hourly-check.js.map +1 -1
  659. package/dist/core/dispatcher-message-handler.d.ts +11 -1
  660. package/dist/core/dispatcher-message-handler.d.ts.map +1 -1
  661. package/dist/core/dispatcher-message-handler.js +165 -47
  662. package/dist/core/dispatcher-message-handler.js.map +1 -1
  663. package/dist/core/dispatcher-morning-routine.d.ts +38 -30
  664. package/dist/core/dispatcher-morning-routine.d.ts.map +1 -1
  665. package/dist/core/dispatcher-morning-routine.js +162 -104
  666. package/dist/core/dispatcher-morning-routine.js.map +1 -1
  667. package/dist/core/dispatcher-prompt.d.ts +4 -1
  668. package/dist/core/dispatcher-prompt.d.ts.map +1 -1
  669. package/dist/core/dispatcher-prompt.js +18 -2
  670. package/dist/core/dispatcher-prompt.js.map +1 -1
  671. package/dist/core/dispatcher-repository-helpers.d.ts.map +1 -1
  672. package/dist/core/dispatcher-repository-helpers.js +5 -1
  673. package/dist/core/dispatcher-repository-helpers.js.map +1 -1
  674. package/dist/core/dispatcher-result-processor.d.ts.map +1 -1
  675. package/dist/core/dispatcher-result-processor.js +9 -4
  676. package/dist/core/dispatcher-result-processor.js.map +1 -1
  677. package/dist/core/dispatcher-scheduled-tasks.d.ts +1 -1
  678. package/dist/core/dispatcher-scheduled-tasks.d.ts.map +1 -1
  679. package/dist/core/dispatcher-scheduled-tasks.js +79 -16
  680. package/dist/core/dispatcher-scheduled-tasks.js.map +1 -1
  681. package/dist/core/dispatcher-types.d.ts +84 -12
  682. package/dist/core/dispatcher-types.d.ts.map +1 -1
  683. package/dist/core/dispatcher-types.js.map +1 -1
  684. package/dist/core/dispatcher.d.ts +50 -1
  685. package/dist/core/dispatcher.d.ts.map +1 -1
  686. package/dist/core/dispatcher.js +143 -8
  687. package/dist/core/dispatcher.js.map +1 -1
  688. package/dist/core/dm-freshness-metrics.d.ts +6 -5
  689. package/dist/core/dm-freshness-metrics.d.ts.map +1 -1
  690. package/dist/core/dm-freshness-metrics.js +7 -6
  691. package/dist/core/dm-freshness-metrics.js.map +1 -1
  692. package/dist/core/evening-review-verify.d.ts +164 -0
  693. package/dist/core/evening-review-verify.d.ts.map +1 -0
  694. package/dist/core/evening-review-verify.js +637 -0
  695. package/dist/core/evening-review-verify.js.map +1 -0
  696. package/dist/core/fetch-window-prompt-loader.d.ts +47 -0
  697. package/dist/core/fetch-window-prompt-loader.d.ts.map +1 -0
  698. package/dist/core/fetch-window-prompt-loader.js +72 -0
  699. package/dist/core/fetch-window-prompt-loader.js.map +1 -0
  700. package/dist/core/management-md.d.ts.map +1 -1
  701. package/dist/core/management-md.js +23 -9
  702. package/dist/core/management-md.js.map +1 -1
  703. package/dist/core/management-registry.d.ts +13 -21
  704. package/dist/core/management-registry.d.ts.map +1 -1
  705. package/dist/core/management-registry.js +27 -48
  706. package/dist/core/management-registry.js.map +1 -1
  707. package/dist/core/metrics.d.ts +88 -1
  708. package/dist/core/metrics.d.ts.map +1 -1
  709. package/dist/core/metrics.js +78 -2
  710. package/dist/core/metrics.js.map +1 -1
  711. package/dist/core/morning/agent-journal-appender.d.ts +197 -0
  712. package/dist/core/morning/agent-journal-appender.d.ts.map +1 -0
  713. package/dist/core/morning/agent-journal-appender.js +458 -0
  714. package/dist/core/morning/agent-journal-appender.js.map +1 -0
  715. package/dist/core/morning/handoff-parser.d.ts +45 -0
  716. package/dist/core/morning/handoff-parser.d.ts.map +1 -0
  717. package/dist/core/morning/handoff-parser.js +117 -0
  718. package/dist/core/morning/handoff-parser.js.map +1 -0
  719. package/dist/core/morning/journal-skeleton-builder.d.ts +157 -0
  720. package/dist/core/morning/journal-skeleton-builder.d.ts.map +1 -0
  721. package/dist/core/morning/journal-skeleton-builder.js +303 -0
  722. package/dist/core/morning/journal-skeleton-builder.js.map +1 -0
  723. package/dist/core/morning/orchestrator.d.ts +312 -0
  724. package/dist/core/morning/orchestrator.d.ts.map +1 -0
  725. package/dist/core/morning/orchestrator.js +827 -0
  726. package/dist/core/morning/orchestrator.js.map +1 -0
  727. package/dist/core/morning/parent-audit-emitter.d.ts +82 -0
  728. package/dist/core/morning/parent-audit-emitter.d.ts.map +1 -0
  729. package/dist/core/morning/parent-audit-emitter.js +120 -0
  730. package/dist/core/morning/parent-audit-emitter.js.map +1 -0
  731. package/dist/core/morning/roadmap-skeleton-builder.d.ts +159 -0
  732. package/dist/core/morning/roadmap-skeleton-builder.d.ts.map +1 -0
  733. package/dist/core/morning/roadmap-skeleton-builder.js +338 -0
  734. package/dist/core/morning/roadmap-skeleton-builder.js.map +1 -0
  735. package/dist/core/output-language-policy.js +1 -1
  736. package/dist/core/output-language-policy.js.map +1 -1
  737. package/dist/core/policy-files.d.ts +19 -2
  738. package/dist/core/policy-files.d.ts.map +1 -1
  739. package/dist/core/policy-files.js +65 -7
  740. package/dist/core/policy-files.js.map +1 -1
  741. package/dist/core/pre-pass-freshness.d.ts +28 -0
  742. package/dist/core/pre-pass-freshness.d.ts.map +1 -0
  743. package/dist/core/pre-pass-freshness.js +10 -0
  744. package/dist/core/pre-pass-freshness.js.map +1 -0
  745. package/dist/core/previous-week-digest.d.ts +130 -0
  746. package/dist/core/previous-week-digest.d.ts.map +1 -0
  747. package/dist/core/previous-week-digest.js +257 -0
  748. package/dist/core/previous-week-digest.js.map +1 -0
  749. package/dist/core/prompts.js +3 -3
  750. package/dist/core/prompts.js.map +1 -1
  751. package/dist/core/quiet-hours-sync.d.ts.map +1 -1
  752. package/dist/core/quiet-hours-sync.js +7 -0
  753. package/dist/core/quiet-hours-sync.js.map +1 -1
  754. package/dist/core/recurrence.d.ts +13 -0
  755. package/dist/core/recurrence.d.ts.map +1 -1
  756. package/dist/core/recurrence.js +108 -13
  757. package/dist/core/recurrence.js.map +1 -1
  758. package/dist/core/release-assets.d.ts +21 -1
  759. package/dist/core/release-assets.d.ts.map +1 -1
  760. package/dist/core/release-assets.js +58 -3
  761. package/dist/core/release-assets.js.map +1 -1
  762. package/dist/core/repository-management-docs.d.ts.map +1 -1
  763. package/dist/core/repository-management-docs.js +14 -4
  764. package/dist/core/repository-management-docs.js.map +1 -1
  765. package/dist/core/review-context.d.ts.map +1 -1
  766. package/dist/core/review-context.js +29 -1
  767. package/dist/core/review-context.js.map +1 -1
  768. package/dist/core/roadmap-maintenance.d.ts +213 -0
  769. package/dist/core/roadmap-maintenance.d.ts.map +1 -0
  770. package/dist/core/roadmap-maintenance.js +706 -0
  771. package/dist/core/roadmap-maintenance.js.map +1 -0
  772. package/dist/core/roadmap-validate.d.ts +5 -0
  773. package/dist/core/roadmap-validate.d.ts.map +1 -1
  774. package/dist/core/roadmap-validate.js +6 -69
  775. package/dist/core/roadmap-validate.js.map +1 -1
  776. package/dist/core/routine-acquisition-plan.d.ts +43 -7
  777. package/dist/core/routine-acquisition-plan.d.ts.map +1 -1
  778. package/dist/core/routine-acquisition-plan.js +99 -8
  779. package/dist/core/routine-acquisition-plan.js.map +1 -1
  780. package/dist/core/routine-fetch-window-retry.d.ts +41 -2
  781. package/dist/core/routine-fetch-window-retry.d.ts.map +1 -1
  782. package/dist/core/routine-fetch-window-retry.js +91 -8
  783. package/dist/core/routine-fetch-window-retry.js.map +1 -1
  784. package/dist/core/routine-fetch-window-runner.d.ts +55 -21
  785. package/dist/core/routine-fetch-window-runner.d.ts.map +1 -1
  786. package/dist/core/routine-fetch-window-runner.js +258 -35
  787. package/dist/core/routine-fetch-window-runner.js.map +1 -1
  788. package/dist/core/routine-windows.d.ts +17 -13
  789. package/dist/core/routine-windows.d.ts.map +1 -1
  790. package/dist/core/routine-windows.js +78 -36
  791. package/dist/core/routine-windows.js.map +1 -1
  792. package/dist/core/scheduler.d.ts +121 -37
  793. package/dist/core/scheduler.d.ts.map +1 -1
  794. package/dist/core/scheduler.js +359 -80
  795. package/dist/core/scheduler.js.map +1 -1
  796. package/dist/core/session-manager.d.ts +25 -6
  797. package/dist/core/session-manager.d.ts.map +1 -1
  798. package/dist/core/session-manager.js +32 -15
  799. package/dist/core/session-manager.js.map +1 -1
  800. package/dist/core/skeleton.d.ts.map +1 -1
  801. package/dist/core/skeleton.js +23 -23
  802. package/dist/core/skeleton.js.map +1 -1
  803. package/dist/core/skills-compiler.d.ts +275 -25
  804. package/dist/core/skills-compiler.d.ts.map +1 -1
  805. package/dist/core/skills-compiler.js +844 -205
  806. package/dist/core/skills-compiler.js.map +1 -1
  807. package/dist/core/skills-manifest.d.ts +104 -0
  808. package/dist/core/skills-manifest.d.ts.map +1 -1
  809. package/dist/core/skills-manifest.js +350 -39
  810. package/dist/core/skills-manifest.js.map +1 -1
  811. package/dist/core/wiki/git-precompile.d.ts +9 -0
  812. package/dist/core/wiki/git-precompile.d.ts.map +1 -1
  813. package/dist/core/wiki/git-precompile.js +7 -1
  814. package/dist/core/wiki/git-precompile.js.map +1 -1
  815. package/dist/core/workdir.d.ts +30 -1
  816. package/dist/core/workdir.d.ts.map +1 -1
  817. package/dist/core/workdir.js +140 -15
  818. package/dist/core/workdir.js.map +1 -1
  819. package/dist/db/entities-store.d.ts +5 -5
  820. package/dist/db/entities-store.js +5 -5
  821. package/dist/db/hourly-check-signals.d.ts.map +1 -1
  822. package/dist/db/hourly-check-signals.js +121 -35
  823. package/dist/db/hourly-check-signals.js.map +1 -1
  824. package/dist/db/observations.d.ts +1 -1
  825. package/dist/db/observations.js +1 -1
  826. package/dist/db/observations.js.map +1 -1
  827. package/dist/db/recurring-schedules.d.ts +32 -1
  828. package/dist/db/recurring-schedules.d.ts.map +1 -1
  829. package/dist/db/recurring-schedules.js +29 -10
  830. package/dist/db/recurring-schedules.js.map +1 -1
  831. package/dist/db/repositories-store.d.ts +2 -1
  832. package/dist/db/repositories-store.d.ts.map +1 -1
  833. package/dist/db/repositories-store.js +38 -3
  834. package/dist/db/repositories-store.js.map +1 -1
  835. package/dist/db/schema.d.ts.map +1 -1
  836. package/dist/db/schema.js +157 -51
  837. package/dist/db/schema.js.map +1 -1
  838. package/dist/db/wiki-store.d.ts.map +1 -1
  839. package/dist/db/wiki-store.js +3 -0
  840. package/dist/db/wiki-store.js.map +1 -1
  841. package/dist/index.js +308 -1473
  842. package/dist/index.js.map +1 -1
  843. package/dist/messaging/magic-phrase.d.ts +16 -0
  844. package/dist/messaging/magic-phrase.d.ts.map +1 -1
  845. package/dist/messaging/magic-phrase.js +53 -0
  846. package/dist/messaging/magic-phrase.js.map +1 -1
  847. package/dist/messaging/owner-channels.d.ts +24 -0
  848. package/dist/messaging/owner-channels.d.ts.map +1 -1
  849. package/dist/messaging/owner-channels.js +38 -0
  850. package/dist/messaging/owner-channels.js.map +1 -1
  851. package/dist/messaging/setup-welcome-dm.d.ts +30 -0
  852. package/dist/messaging/setup-welcome-dm.d.ts.map +1 -0
  853. package/dist/messaging/setup-welcome-dm.js +86 -0
  854. package/dist/messaging/setup-welcome-dm.js.map +1 -0
  855. package/dist/observers/calendar-poller.d.ts +2 -0
  856. package/dist/observers/calendar-poller.d.ts.map +1 -1
  857. package/dist/observers/calendar-poller.js +76 -54
  858. package/dist/observers/calendar-poller.js.map +1 -1
  859. package/dist/observers/delegated-sync-worker.d.ts +62 -0
  860. package/dist/observers/delegated-sync-worker.d.ts.map +1 -1
  861. package/dist/observers/delegated-sync-worker.js +128 -1
  862. package/dist/observers/delegated-sync-worker.js.map +1 -1
  863. package/dist/observers/git-watcher.d.ts +22 -0
  864. package/dist/observers/git-watcher.d.ts.map +1 -1
  865. package/dist/observers/git-watcher.js +31 -7
  866. package/dist/observers/git-watcher.js.map +1 -1
  867. package/dist/observers/imminent-event-scheduler.d.ts +2 -0
  868. package/dist/observers/imminent-event-scheduler.d.ts.map +1 -1
  869. package/dist/observers/imminent-event-scheduler.js +29 -0
  870. package/dist/observers/imminent-event-scheduler.js.map +1 -1
  871. package/dist/observers/notion-poller.d.ts +2 -0
  872. package/dist/observers/notion-poller.d.ts.map +1 -1
  873. package/dist/observers/notion-poller.js +44 -6
  874. package/dist/observers/notion-poller.js.map +1 -1
  875. package/dist/observers/poll-guard.d.ts +63 -0
  876. package/dist/observers/poll-guard.d.ts.map +1 -0
  877. package/dist/observers/poll-guard.js +89 -0
  878. package/dist/observers/poll-guard.js.map +1 -0
  879. package/dist/safety/absolute-block-audit.d.ts +17 -0
  880. package/dist/safety/absolute-block-audit.d.ts.map +1 -1
  881. package/dist/safety/absolute-block-audit.js +28 -2
  882. package/dist/safety/absolute-block-audit.js.map +1 -1
  883. package/dist/safety/agent-write-tracker.d.ts +42 -1
  884. package/dist/safety/agent-write-tracker.d.ts.map +1 -1
  885. package/dist/safety/agent-write-tracker.js +81 -1
  886. package/dist/safety/agent-write-tracker.js.map +1 -1
  887. package/dist/safety/always-disallowed.d.ts +34 -0
  888. package/dist/safety/always-disallowed.d.ts.map +1 -1
  889. package/dist/safety/always-disallowed.js +114 -7
  890. package/dist/safety/always-disallowed.js.map +1 -1
  891. package/dist/safety/audit.d.ts +20 -0
  892. package/dist/safety/audit.d.ts.map +1 -1
  893. package/dist/safety/audit.js +126 -0
  894. package/dist/safety/audit.js.map +1 -1
  895. package/dist/safety/risk-classifier.d.ts +17 -1
  896. package/dist/safety/risk-classifier.d.ts.map +1 -1
  897. package/dist/safety/risk-classifier.js +75 -7
  898. package/dist/safety/risk-classifier.js.map +1 -1
  899. package/dist/safety/subprocess-block-scanner.d.ts +89 -0
  900. package/dist/safety/subprocess-block-scanner.d.ts.map +1 -0
  901. package/dist/safety/subprocess-block-scanner.js +177 -0
  902. package/dist/safety/subprocess-block-scanner.js.map +1 -0
  903. package/dist/scheduler/hourly-check-gate.d.ts +23 -9
  904. package/dist/scheduler/hourly-check-gate.d.ts.map +1 -1
  905. package/dist/scheduler/hourly-check-gate.js +11 -6
  906. package/dist/scheduler/hourly-check-gate.js.map +1 -1
  907. package/dist/secrets/backend-api-key-env.d.ts.map +1 -1
  908. package/dist/secrets/backend-api-key-env.js +1 -0
  909. package/dist/secrets/backend-api-key-env.js.map +1 -1
  910. package/dist/services/delegated-backend-invoker.d.ts.map +1 -1
  911. package/dist/services/delegated-backend-invoker.js +8 -1
  912. package/dist/services/delegated-backend-invoker.js.map +1 -1
  913. package/dist/services/delegated-invoker-audit.d.ts.map +1 -1
  914. package/dist/services/delegated-invoker-audit.js +5 -1
  915. package/dist/services/delegated-invoker-audit.js.map +1 -1
  916. package/dist/services/delegated-proxy-config.d.ts +3 -2
  917. package/dist/services/delegated-proxy-config.d.ts.map +1 -1
  918. package/dist/services/delegated-proxy-config.js.map +1 -1
  919. package/dist/services/integrations/extract-write-item-id.d.ts +5 -2
  920. package/dist/services/integrations/extract-write-item-id.d.ts.map +1 -1
  921. package/dist/services/integrations/extract-write-item-id.js.map +1 -1
  922. package/dist/services/mcp/generators/index.d.ts +1 -0
  923. package/dist/services/mcp/generators/index.d.ts.map +1 -1
  924. package/dist/services/mcp/generators/index.js +3 -0
  925. package/dist/services/mcp/generators/index.js.map +1 -1
  926. package/dist/services/mcp/sdk-observations-server.d.ts +60 -0
  927. package/dist/services/mcp/sdk-observations-server.d.ts.map +1 -0
  928. package/dist/services/mcp/sdk-observations-server.js +161 -0
  929. package/dist/services/mcp/sdk-observations-server.js.map +1 -0
  930. package/dist/services/mcp/session-materializer.d.ts.map +1 -1
  931. package/dist/services/mcp/session-materializer.js +13 -9
  932. package/dist/services/mcp/session-materializer.js.map +1 -1
  933. package/dist/services/mcp/types.d.ts +1 -0
  934. package/dist/services/mcp/types.d.ts.map +1 -1
  935. package/dist/services/notion.d.ts +19 -1
  936. package/dist/services/notion.d.ts.map +1 -1
  937. package/dist/services/notion.js +41 -2
  938. package/dist/services/notion.js.map +1 -1
  939. package/dist/services/observations-batch.d.ts +100 -0
  940. package/dist/services/observations-batch.d.ts.map +1 -0
  941. package/dist/services/observations-batch.js +258 -0
  942. package/dist/services/observations-batch.js.map +1 -0
  943. package/dist/services/voice/transcriber.d.ts +23 -0
  944. package/dist/services/voice/transcriber.d.ts.map +1 -1
  945. package/dist/services/voice/transcriber.js +55 -0
  946. package/dist/services/voice/transcriber.js.map +1 -1
  947. package/dist/settings/runtime-settings.d.ts +9 -6
  948. package/dist/settings/runtime-settings.d.ts.map +1 -1
  949. package/dist/settings/runtime-settings.js +50 -17
  950. package/dist/settings/runtime-settings.js.map +1 -1
  951. package/package.json +3 -2
  952. package/dist/api/delegated-proxy-helper.d.ts +0 -33
  953. package/dist/api/delegated-proxy-helper.d.ts.map +0 -1
  954. package/dist/api/delegated-proxy-helper.js +0 -54
  955. package/dist/api/delegated-proxy-helper.js.map +0 -1
  956. package/dist/core/roadmap-merge.d.ts +0 -7
  957. package/dist/core/roadmap-merge.d.ts.map +0 -1
  958. package/dist/core/roadmap-merge.js +0 -187
  959. package/dist/core/roadmap-merge.js.map +0 -1
  960. package/dist/db/test-schemas.d.ts +0 -23
  961. package/dist/db/test-schemas.d.ts.map +0 -1
  962. package/dist/db/test-schemas.js +0 -111
  963. package/dist/db/test-schemas.js.map +0 -1
@@ -17,21 +17,38 @@
17
17
  export const DEFAULT_CLAUDE_LITE_MODEL = "claude-haiku-4-5-20251001";
18
18
  export const DEFAULT_CLAUDE_MEDIUM_MODEL = "claude-sonnet-4-6";
19
19
  export const DEFAULT_CLAUDE_HIGH_MODEL = "claude-opus-4-7";
20
- // Codex (gpt-5.4-mini doubles as both lite and medium until OpenAI ships a
21
- // distinct mid-tier; gpt-5.5 is the flagship reasoning model. The
22
- // non-thinking gpt-5.5-chat-latest marketed as "GPT-5.5 Instant"
23
- // is registered as a selectable high-tier alternative but is not the
24
- // canonical default; operators pin it manually when low latency
25
- // matters more than deeper reasoning.)
20
+ // Codex (gpt-5.4-mini is the lite-tier pick; gpt-5.4 is the medium-tier
21
+ // default morning_routine / hourly_check / evening_review run on this.
22
+ // gpt-5.5 and gpt-5.5-chat-latest are the flagship reasoning models and
23
+ // stay registered at high tier as selectable opt-ins, but the seeded
24
+ // default for Codex's high tier is also gpt-5.4: gpt-5.5 carries Opus-
25
+ // class pricing (~$5 in / $30 out per MTok), and we don't want to spend
26
+ // that by default on surfaces that the user merely lets fall through to
27
+ // tier defaults. Operators who want gpt-5.5 pin it per row from
28
+ // /settings/models. See `SEED_HIGH_TIER_OVERRIDE` below.)
26
29
  export const DEFAULT_CODEX_LITE_MODEL = "gpt-5.4-mini";
27
- export const DEFAULT_CODEX_MEDIUM_MODEL = "gpt-5.4-mini";
28
- export const DEFAULT_CODEX_HIGH_MODEL = "gpt-5.5";
29
- // Gemini (Google retired the dedicated "flash" mid-tier in the 3.1 series,
30
- // so flash-lite preview covers both the lite and medium picks; 3.1 pro
31
- // preview is the top tier).
30
+ export const DEFAULT_CODEX_MEDIUM_MODEL = "gpt-5.4";
31
+ export const DEFAULT_CODEX_HIGH_MODEL = "gpt-5.4";
32
+ // Gemini (Google retired the dedicated "flash" mid-tier in the 3.1 series
33
+ // and `gemini-2.5-flash` is deprecated, so the registry has no real
34
+ // medium-tier flash equivalent left. `gemini-3.1-pro-preview` is priced in
35
+ // the Sonnet band — $0.002/$0.012 per 1k in/out under 200k context, ~2/3
36
+ // the cost of Sonnet 4.6 — so it serves as the "main agent work" pick for
37
+ // every medium-tier surface (morning_routine, message.dm, hourly_check,
38
+ // evening / weekly / monthly review). High tier collapses onto the same
39
+ // model via `SEED_HIGH_TIER_OVERRIDE` below: there's no Opus-priced Google
40
+ // flagship worth defaulting to, and operators who genuinely want
41
+ // `gemini-2.5-pro` can pin it per-row from /settings/models. Lite stays
42
+ // pinned to flash-lite for delegated proxy + fetch_window/triage surfaces.
32
43
  export const DEFAULT_GEMINI_LITE_MODEL = "gemini-3.1-flash-lite-preview";
33
- export const DEFAULT_GEMINI_MEDIUM_MODEL = "gemini-3.1-flash-lite-preview";
44
+ export const DEFAULT_GEMINI_MEDIUM_MODEL = "gemini-3.1-pro-preview";
34
45
  export const DEFAULT_GEMINI_HIGH_MODEL = "gemini-3.1-pro-preview";
46
+ // OpenCode static fallback defaults use provider/model composite IDs. The
47
+ // live OpenCode server may report different providers; runtime probing lands
48
+ // in a later phase, so Phase 1 seeds Anthropic-compatible safe defaults.
49
+ export const DEFAULT_OPENCODE_LITE_MODEL = "anthropic/claude-haiku-4-5";
50
+ export const DEFAULT_OPENCODE_MEDIUM_MODEL = "anthropic/claude-sonnet-4-6";
51
+ export const DEFAULT_OPENCODE_HIGH_MODEL = "anthropic/claude-opus-4-7";
35
52
  const MODEL_REGISTRY = [
36
53
  {
37
54
  backendId: "claude",
@@ -107,6 +124,58 @@ const MODEL_REGISTRY = [
107
124
  maxInputTokens: 200_000,
108
125
  maxOutputTokens: 64_000,
109
126
  },
127
+ {
128
+ backendId: "opencode",
129
+ modelId: "anthropic/claude-haiku-4-5",
130
+ label: "OpenCode Claude Haiku 4.5",
131
+ displayName: "Claude Haiku 4.5",
132
+ tier: "lite",
133
+ available: true,
134
+ supportsToolUse: true,
135
+ supportsStreaming: true,
136
+ supportsPromptCaching: true,
137
+ usdPer1kIn: 0.001,
138
+ usdPer1kOut: 0.005,
139
+ usdPer1kCacheRead: 0.0001,
140
+ usdPer1kCacheCreate: 0.00125,
141
+ maxInputTokens: 200_000,
142
+ maxOutputTokens: 64_000,
143
+ },
144
+ {
145
+ backendId: "opencode",
146
+ modelId: "anthropic/claude-sonnet-4-6",
147
+ label: "OpenCode Claude Sonnet 4.6",
148
+ displayName: "Claude Sonnet 4.6",
149
+ tier: "medium",
150
+ available: true,
151
+ supportsToolUse: true,
152
+ supportsStreaming: true,
153
+ supportsPromptCaching: true,
154
+ usdPer1kIn: 0.003,
155
+ usdPer1kOut: 0.015,
156
+ usdPer1kCacheRead: 0.0003,
157
+ usdPer1kCacheCreate: 0.00375,
158
+ maxInputTokens: 1_000_000,
159
+ maxOutputTokens: 64_000,
160
+ },
161
+ {
162
+ backendId: "opencode",
163
+ modelId: "anthropic/claude-opus-4-7",
164
+ label: "OpenCode Claude Opus 4.7",
165
+ displayName: "Claude Opus 4.7",
166
+ tier: "high",
167
+ available: true,
168
+ supportsToolUse: true,
169
+ supportsStreaming: true,
170
+ supportsPromptCaching: true,
171
+ usdPer1kIn: 0.015,
172
+ usdPer1kOut: 0.075,
173
+ usdPer1kCacheRead: 0.0015,
174
+ usdPer1kCacheCreate: 0.01875,
175
+ pricingTrusted: true,
176
+ maxInputTokens: 1_000_000,
177
+ maxOutputTokens: 128_000,
178
+ },
110
179
  {
111
180
  backendId: "codex",
112
181
  modelId: "gpt-5.5",
@@ -160,11 +229,19 @@ const MODEL_REGISTRY = [
160
229
  {
161
230
  backendId: "codex",
162
231
  modelId: "gpt-5.4",
163
- label: "GPT-5.4 (legacy)",
164
- displayName: "GPT-5.4 (legacy)",
165
- tier: "high",
232
+ label: "GPT-5.4",
233
+ displayName: "GPT-5.4",
234
+ // Promoted from `high` to `medium` after gpt-5.5 shipped: gpt-5.4 is
235
+ // priced ~half of gpt-5.5 for the same context shapes, and the
236
+ // medium-tier routines (morning_routine / hourly_check /
237
+ // evening_review / message.dm) do not benefit from gpt-5.5's
238
+ // deeper reasoning enough to justify the cost. gpt-5.4 is ALSO the
239
+ // seeded default for codex's high tier via `SEED_HIGH_TIER_OVERRIDE`
240
+ // — gpt-5.5 stays registered as a high-tier opt-in for surfaces that
241
+ // pin it explicitly from /settings/models, but is not the silent
242
+ // fall-through (Opus-class pricing makes that the wrong default).
243
+ tier: "medium",
166
244
  available: true,
167
- deprecated: true,
168
245
  supportsToolUse: true,
169
246
  supportsStreaming: true,
170
247
  supportsPromptCaching: true,
@@ -184,11 +261,10 @@ const MODEL_REGISTRY = [
184
261
  modelId: "gpt-5.4-mini",
185
262
  label: "GPT-5.4 Mini",
186
263
  displayName: "GPT-5.4 Mini",
187
- // OpenAI's smallest GPT-5-class chat model. Doubles as the canonical
188
- // pick for both `lite` and `medium` tiers on Codex until a true
189
- // mid-tier (gpt-5.5-mini) ships the registry uses `lite` here so
190
- // delegated proxy calls get routed to the cheapest option, while
191
- // `latestMediumFor("codex")` falls through to the same model.
264
+ // OpenAI's smallest GPT-5-class chat model. Canonical Codex lite-tier
265
+ // pick delegated proxy calls and observer-fired surfaces route
266
+ // here. Medium-tier surfaces now resolve to `gpt-5.4` directly via
267
+ // `latestMediumFor("codex")` instead of falling through to mini.
192
268
  tier: "lite",
193
269
  available: true,
194
270
  supportsToolUse: true,
@@ -253,7 +329,16 @@ const MODEL_REGISTRY = [
253
329
  modelId: "gemini-3.1-pro-preview",
254
330
  label: "Gemini 3.1 Pro (preview)",
255
331
  displayName: "Gemini 3.1 Pro (preview)",
256
- tier: "high",
332
+ // Classified as `medium` so `latestMediumFor("gemini")` resolves here
333
+ // instead of returning null (the deprecated `gemini-2.5-flash` is the
334
+ // only other medium candidate and is excluded by `!deprecated`). This
335
+ // is the "main agent work" pick on Gemini — pricing ~$0.002 / $0.012
336
+ // per 1k in/out is in the Sonnet band, and the latest-gen 3.1 Pro
337
+ // model reliably follows multi-step task flows that flash-lite
338
+ // (lite tier) silently skips. High tier collapses onto this same
339
+ // model via `SEED_HIGH_TIER_OVERRIDE.gemini` below; operators who
340
+ // want `gemini-2.5-pro` for high-tier surfaces pin it explicitly.
341
+ tier: "medium",
257
342
  // Official Gemini API pricing: https://ai.google.dev/pricing
258
343
  available: true,
259
344
  supportsToolUse: true,
@@ -438,11 +523,47 @@ export function cheapestLiteFor(backendId) {
438
523
  : cheapest).modelId;
439
524
  /* c8 ignore stop */
440
525
  }
526
+ /**
527
+ * Per-backend override for the high-tier *seeded default*. Keeps the
528
+ * "what high-tier models exist on this backend" question (answered by
529
+ * `latestHighFor`) separate from the "what model do we seed when a
530
+ * process key's default tier resolves to high" question (answered by
531
+ * `defaultModelForTier`).
532
+ *
533
+ * Codex's flagship reasoning model (gpt-5.5) is priced in the same band
534
+ * as Anthropic Opus — too expensive to be the silent fall-through for
535
+ * process keys that *happen* to be tagged high tier (delegated_task_heavy,
536
+ * advisor — note `morning_routine_initial` was retired by
537
+ * morning-routine-optimization.md Phase 7 in 2026-05-16, and both
538
+ * `setup` and `knowledge.import` were demoted to medium tier on
539
+ * 2026-05-16 as part of the "no Opus by default" pass). Operators
540
+ * who explicitly want gpt-5.5 pin it per row from
541
+ * /settings/models; the medium-tier model is the safe default. The
542
+ * referenced model must be present + non-deprecated in `MODEL_REGISTRY`
543
+ * — the lookup `findRegisteredModel` confirms before honoring the
544
+ * override; otherwise we fall through to the normal `latestHighFor`
545
+ * resolution.
546
+ */
547
+ const SEED_HIGH_TIER_OVERRIDE = {
548
+ codex: "gpt-5.4",
549
+ // `latestHighFor("gemini")` legitimately resolves to `gemini-2.5-pro`
550
+ // (the only non-deprecated registry entry tagged `tier: "high"` now that
551
+ // `gemini-3.1-pro-preview` carries `tier: "medium"`). 2.5-pro is fine for
552
+ // explicit opt-in, but for the silent fall-through on Aitne's seeded
553
+ // high-tier surfaces we want continuity with the medium tier — same
554
+ // 3.1-preview generation, no surprise version swap between
555
+ // `routine.morning_routine` and `knowledge.import`. The override flips
556
+ // the seed to 3.1-pro; `findRegisteredModel` confirms it's present and
557
+ // non-deprecated before honoring (same guard the Codex override uses).
558
+ gemini: "gemini-3.1-pro-preview",
559
+ };
441
560
  /**
442
561
  * Resolve the canonical default model id for a `(backendId, tier)` pair.
443
562
  * Falls back across tiers if the registry has no match (e.g. Codex has no
444
563
  * distinct medium model — `latestMediumFor("codex")` returns null and we
445
- * fall through to lite).
564
+ * fall through to lite). For the `high` tier, `SEED_HIGH_TIER_OVERRIDE`
565
+ * takes precedence — used to keep Codex's Opus-priced gpt-5.5 from
566
+ * silently becoming the default on every high-tier process key.
446
567
  */
447
568
  export function defaultModelForTier(backendId, tier) {
448
569
  if (tier === "lite") {
@@ -465,6 +586,15 @@ export function defaultModelForTier(backendId, tier) {
465
586
  ?? DEFAULT_CLAUDE_MEDIUM_MODEL;
466
587
  /* c8 ignore stop */
467
588
  }
589
+ const override = SEED_HIGH_TIER_OVERRIDE[backendId];
590
+ if (override) {
591
+ const found = MODEL_REGISTRY.find((model) => model.backendId === backendId
592
+ && model.modelId === override
593
+ && model.available
594
+ && !model.deprecated);
595
+ if (found)
596
+ return found.modelId;
597
+ }
468
598
  /* c8 ignore start — every backend has a high model; the fallbacks
469
599
  here only fire if a high tier is removed entirely. */
470
600
  return latestHighFor(backendId)
@@ -1 +1 @@
1
- {"version":3,"file":"model-registry.js","sourceRoot":"","sources":["../../../src/core/backends/model-registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"model-registry.js","sourceRoot":"","sources":["../../../src/core/backends/model-registry.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,80 @@
1
+ /**
2
+ * docs/design/appendices/skills-unification.md Phase 1 item 13 — forward-compat probe.
3
+ *
4
+ * Codex and Gemini did not ship native skill auto-discovery when Phase 1
5
+ * landed (which is why the instruction file carries a `<skill-index>`
6
+ * block + on-demand `Read` protocol). When their CLIs grow a built-in
7
+ * `skill` / `Skill` surface — analogous to the Claude Agent SDK's
8
+ * loader — we want a loud one-line signal so a follow-up PR can drop
9
+ * the `<skill-index>` block for that backend.
10
+ *
11
+ * Two detection strategies are wired here. They are complementary
12
+ * because the surface a future CLI exposes is not knowable in advance.
13
+ *
14
+ * 1. {@link noteNativeSkillToolIfPresent} — pure name-pattern scan
15
+ * against a tool-name list. Cheap defense-in-depth. The caller
16
+ * supplies whatever inventory it already has. Today's wiring (Codex
17
+ * `mcp__`-filtered probe, Gemini synthetic capability list) means
18
+ * this path will not actually fire on a future native surface
19
+ * because that surface won't be MCP-namespaced — but the function
20
+ * stays in case a richer inventory source lands later.
21
+ *
22
+ * 2. {@link probeCliNativeSkillSubcommand} — runs `<cli> --help` once
23
+ * and scans the output for a top-level `skill` / `skills`
24
+ * subcommand. This is the ground-truth signal. Verified at
25
+ * 2026-05-15:
26
+ * - `gemini --help` already lists `gemini skills <command>`
27
+ * (aliased `skill`). When this probe is wired, Gemini will be
28
+ * the first backend to trip the alarm.
29
+ * - `codex --help` does NOT yet ship a skill subcommand. Its
30
+ * `codex features list` carries `skill_mcp_dependency_install`
31
+ * (stable, true) and `skill_env_var_dependency_prompt` (under
32
+ * development) — both gate MCP dependency wiring, not skill
33
+ * discovery, so they are NOT load-bearing signals.
34
+ *
35
+ * Both probes are idempotent per process (`reportedKeys` /
36
+ * `subcommandReportedKeys`). Re-fires across daemon restarts, which is
37
+ * fine — the signal is meant to be noticed in logs during the rollout
38
+ * window, not deduplicated across boots.
39
+ *
40
+ * No-op for Claude (`materializeClaudeSession` already trusts the SDK
41
+ * loader) and for OpenCode (cwd auto-discovery is the source of truth;
42
+ * Phase 1 §R3 pins zero `<skill-index>` for that backend).
43
+ */
44
+ import type { BackendId } from "@aitne/shared";
45
+ export declare function noteNativeSkillToolIfPresent(backendId: Exclude<BackendId, "claude">, toolNames: readonly string[]): void;
46
+ /**
47
+ * Top-level command-line detector. Two anchors:
48
+ * - `<cli> skill[s]` literal — every CLI we care about renders its
49
+ * usage lines that way (e.g. `gemini skills <command>` — verified
50
+ * 2026-05-15, codex's hypothetical future form would be
51
+ * `codex skill <command>`).
52
+ * - Indented command-list entry `<indent>skill[s]<space>` — the
53
+ * "Commands:" block shape both yargs (Gemini) and clap (Codex)
54
+ * render.
55
+ *
56
+ * Case-insensitive so a `Skill` or `Skills` heading is not missed.
57
+ * Word-boundary terminator `\b` prevents false hits on `skill_search`
58
+ * or `skill_install`-style sub-tokens that are not load-bearing
59
+ * subcommand names.
60
+ */
61
+ declare function helpTextLooksLikeSkillSubcommand(helpText: string, backendId: string): boolean;
62
+ /**
63
+ * Probe the backend CLI's `--help` output for a top-level skill
64
+ * subcommand. Idempotent per process — once a backend has been
65
+ * reported, subsequent calls short-circuit.
66
+ *
67
+ * Designed to be called from `probeTools()` (which runs at integration
68
+ * mode-flip probe time). Failure modes are silent (missing CLI,
69
+ * non-zero exit, parse-fail, timeout) so the daemon's main flow is not
70
+ * blocked on a forward-compat heuristic.
71
+ */
72
+ export declare function probeCliNativeSkillSubcommand(cliPath: string | null, backendId: Exclude<BackendId, "claude" | "opencode">): Promise<void>;
73
+ /** Test-only: reset both dedupe sets so multiple probe invocations exercise
74
+ * the log path independently. */
75
+ export declare function __resetNativeSkillDiscoveryProbe(): void;
76
+ /** Test-only — extracted for direct coverage of the help-text matcher
77
+ * without paying for a subprocess. */
78
+ export declare const __test_helpTextLooksLikeSkillSubcommand: typeof helpTextLooksLikeSkillSubcommand;
79
+ export {};
80
+ //# sourceMappingURL=native-skill-discovery-probe.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"native-skill-discovery-probe.d.ts","sourceRoot":"","sources":["../../../src/core/backends/native-skill-discovery-probe.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0CG;AAGH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAsB/C,wBAAgB,4BAA4B,CAC1C,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,QAAQ,CAAC,EACvC,SAAS,EAAE,SAAS,MAAM,EAAE,GAC3B,IAAI,CAoBN;AAcD;;;;;;;;;;;;;;GAcG;AACH,iBAAS,gCAAgC,CACvC,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,GAChB,OAAO,CAOT;AAED;;;;;;;;;GASG;AACH,wBAAsB,6BAA6B,CACjD,OAAO,EAAE,MAAM,GAAG,IAAI,EACtB,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,QAAQ,GAAG,UAAU,CAAC,GACnD,OAAO,CAAC,IAAI,CAAC,CAgDf;AAED;kCACkC;AAClC,wBAAgB,gCAAgC,IAAI,IAAI,CAGvD;AAED;uCACuC;AACvC,eAAO,MAAM,uCAAuC,yCAAmC,CAAC"}
@@ -0,0 +1,175 @@
1
+ /**
2
+ * docs/design/appendices/skills-unification.md Phase 1 item 13 — forward-compat probe.
3
+ *
4
+ * Codex and Gemini did not ship native skill auto-discovery when Phase 1
5
+ * landed (which is why the instruction file carries a `<skill-index>`
6
+ * block + on-demand `Read` protocol). When their CLIs grow a built-in
7
+ * `skill` / `Skill` surface — analogous to the Claude Agent SDK's
8
+ * loader — we want a loud one-line signal so a follow-up PR can drop
9
+ * the `<skill-index>` block for that backend.
10
+ *
11
+ * Two detection strategies are wired here. They are complementary
12
+ * because the surface a future CLI exposes is not knowable in advance.
13
+ *
14
+ * 1. {@link noteNativeSkillToolIfPresent} — pure name-pattern scan
15
+ * against a tool-name list. Cheap defense-in-depth. The caller
16
+ * supplies whatever inventory it already has. Today's wiring (Codex
17
+ * `mcp__`-filtered probe, Gemini synthetic capability list) means
18
+ * this path will not actually fire on a future native surface
19
+ * because that surface won't be MCP-namespaced — but the function
20
+ * stays in case a richer inventory source lands later.
21
+ *
22
+ * 2. {@link probeCliNativeSkillSubcommand} — runs `<cli> --help` once
23
+ * and scans the output for a top-level `skill` / `skills`
24
+ * subcommand. This is the ground-truth signal. Verified at
25
+ * 2026-05-15:
26
+ * - `gemini --help` already lists `gemini skills <command>`
27
+ * (aliased `skill`). When this probe is wired, Gemini will be
28
+ * the first backend to trip the alarm.
29
+ * - `codex --help` does NOT yet ship a skill subcommand. Its
30
+ * `codex features list` carries `skill_mcp_dependency_install`
31
+ * (stable, true) and `skill_env_var_dependency_prompt` (under
32
+ * development) — both gate MCP dependency wiring, not skill
33
+ * discovery, so they are NOT load-bearing signals.
34
+ *
35
+ * Both probes are idempotent per process (`reportedKeys` /
36
+ * `subcommandReportedKeys`). Re-fires across daemon restarts, which is
37
+ * fine — the signal is meant to be noticed in logs during the rollout
38
+ * window, not deduplicated across boots.
39
+ *
40
+ * No-op for Claude (`materializeClaudeSession` already trusts the SDK
41
+ * loader) and for OpenCode (cwd auto-discovery is the source of truth;
42
+ * Phase 1 §R3 pins zero `<skill-index>` for that backend).
43
+ */
44
+ import { tmpdir } from "node:os";
45
+ import { createLogger } from "../../logging.js";
46
+ import { runLineCommand } from "./cli-utils.js";
47
+ const logger = createLogger("native-skill-discovery-probe");
48
+ /**
49
+ * Heuristic tool-name patterns that would suggest the CLI gained a skill
50
+ * loader. Matched case-insensitively against the FULL tool name (including
51
+ * any `mcp__<server>__` prefix). Conservative — false positives only
52
+ * trigger one extra log line, false negatives delay detection until a
53
+ * future PR tightens the heuristic.
54
+ */
55
+ const SKILL_LIKE_TOOL_PATTERNS = [
56
+ /^skill$/i,
57
+ /(^|_)skills?(_|$)/i, // matches `skill`, `Skill`, `skills`, `skill_load`, etc.
58
+ /skill_discover/i,
59
+ /load_skill/i,
60
+ ];
61
+ const reportedKeys = new Set();
62
+ export function noteNativeSkillToolIfPresent(backendId, toolNames) {
63
+ if (backendId === "opencode")
64
+ return; // R3 — auto-discovery is the source of truth
65
+ const matches = toolNames.filter((name) => SKILL_LIKE_TOOL_PATTERNS.some((re) => re.test(name)));
66
+ if (matches.length === 0)
67
+ return;
68
+ const key = `${backendId}:${matches.sort().join(",")}`;
69
+ if (reportedKeys.has(key))
70
+ return;
71
+ reportedKeys.add(key);
72
+ logger.warn({
73
+ backendId,
74
+ matches,
75
+ hint: "Native skill-discovery surface detected. Consider dropping the "
76
+ + "<skill-index> block from the instruction file for this backend "
77
+ + "in a follow-up PR (docs/design/appendices/skills-unification.md §Risks).",
78
+ }, "native_skill_discovery.candidate_tool_detected");
79
+ }
80
+ /**
81
+ * Per-backend dedupe set for the `<cli> --help` subcommand probe. Held
82
+ * separately from {@link reportedKeys} so the two probes don't suppress
83
+ * each other.
84
+ */
85
+ const subcommandReportedKeys = new Set();
86
+ /** Hard upper bound for the `--help` invocation; we only need its
87
+ * top-level command listing, which every CLI prints synchronously
88
+ * on stdout in well under 1 s. 5 s leaves room for cold-start. */
89
+ const HELP_PROBE_TIMEOUT_MS = 5_000;
90
+ /**
91
+ * Top-level command-line detector. Two anchors:
92
+ * - `<cli> skill[s]` literal — every CLI we care about renders its
93
+ * usage lines that way (e.g. `gemini skills <command>` — verified
94
+ * 2026-05-15, codex's hypothetical future form would be
95
+ * `codex skill <command>`).
96
+ * - Indented command-list entry `<indent>skill[s]<space>` — the
97
+ * "Commands:" block shape both yargs (Gemini) and clap (Codex)
98
+ * render.
99
+ *
100
+ * Case-insensitive so a `Skill` or `Skills` heading is not missed.
101
+ * Word-boundary terminator `\b` prevents false hits on `skill_search`
102
+ * or `skill_install`-style sub-tokens that are not load-bearing
103
+ * subcommand names.
104
+ */
105
+ function helpTextLooksLikeSkillSubcommand(helpText, backendId) {
106
+ const usageLine = new RegExp(`(^|\\n)\\s*${backendId}\\s+skills?\\b`, "i");
107
+ const commandsListEntry = /(^|\n)\s+skills?\b/i;
108
+ return usageLine.test(helpText) || commandsListEntry.test(helpText);
109
+ }
110
+ /**
111
+ * Probe the backend CLI's `--help` output for a top-level skill
112
+ * subcommand. Idempotent per process — once a backend has been
113
+ * reported, subsequent calls short-circuit.
114
+ *
115
+ * Designed to be called from `probeTools()` (which runs at integration
116
+ * mode-flip probe time). Failure modes are silent (missing CLI,
117
+ * non-zero exit, parse-fail, timeout) so the daemon's main flow is not
118
+ * blocked on a forward-compat heuristic.
119
+ */
120
+ export async function probeCliNativeSkillSubcommand(cliPath, backendId) {
121
+ if (subcommandReportedKeys.has(backendId))
122
+ return;
123
+ if (!cliPath)
124
+ return;
125
+ let stdoutLines;
126
+ let stderrLines;
127
+ let exitCode;
128
+ let timedOut;
129
+ try {
130
+ const result = await runLineCommand({
131
+ command: cliPath,
132
+ args: ["--help"],
133
+ cwd: tmpdir(),
134
+ timeoutMs: HELP_PROBE_TIMEOUT_MS,
135
+ });
136
+ stdoutLines = result.stdoutLines;
137
+ stderrLines = result.stderrLines;
138
+ exitCode = result.exitCode;
139
+ timedOut = result.timedOut;
140
+ }
141
+ catch (err) {
142
+ logger.debug({ backendId, err: err instanceof Error ? err.message : String(err) }, "native_skill_discovery.help_probe.spawn_failed");
143
+ return;
144
+ }
145
+ if (timedOut) {
146
+ logger.debug({ backendId }, "native_skill_discovery.help_probe.timed_out");
147
+ return;
148
+ }
149
+ // Some CLIs (gemini) print `--help` to stdout with exit 0; some flavours
150
+ // emit to stderr with exit 1. Accept either as long as we got output.
151
+ if (exitCode !== 0 && exitCode !== null && stdoutLines.length === 0) {
152
+ return;
153
+ }
154
+ const helpText = [...stdoutLines, ...stderrLines].join("\n");
155
+ if (!helpTextLooksLikeSkillSubcommand(helpText, backendId))
156
+ return;
157
+ subcommandReportedKeys.add(backendId);
158
+ logger.warn({
159
+ backendId,
160
+ hint: `${backendId} CLI ships a top-level \`skill\`/\`skills\` subcommand `
161
+ + "(native skill loader). Evaluate dropping the `<skill-index>` block "
162
+ + "+ on-demand `Read` protocol from this backend's instruction file "
163
+ + "(docs/design/appendices/skills-unification.md §Risks).",
164
+ }, "native_skill_discovery.subcommand_detected");
165
+ }
166
+ /** Test-only: reset both dedupe sets so multiple probe invocations exercise
167
+ * the log path independently. */
168
+ export function __resetNativeSkillDiscoveryProbe() {
169
+ reportedKeys.clear();
170
+ subcommandReportedKeys.clear();
171
+ }
172
+ /** Test-only — extracted for direct coverage of the help-text matcher
173
+ * without paying for a subprocess. */
174
+ export const __test_helpTextLooksLikeSkillSubcommand = helpTextLooksLikeSkillSubcommand;
175
+ //# sourceMappingURL=native-skill-discovery-probe.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"native-skill-discovery-probe.js","sourceRoot":"","sources":["../../../src/core/backends/native-skill-discovery-probe.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,27 @@
1
+ /**
2
+ * docs/design/appendices/opencode-backend.md §6.6.1 — HTTP Basic Auth `fetch` wrapper for
3
+ * the Remote-mode `RemoteOpencodeServerManager` (and as a defense-in-depth
4
+ * for Managed mode when `OPENCODE_SERVER_PASSWORD` is non-empty).
5
+ *
6
+ * Managed mode runs on loopback (`127.0.0.1`) and the spawned opencode
7
+ * server in 1.14.50 does not enforce Basic Auth by default — but if the
8
+ * operator's environment has a global `OPENCODE_SERVER_PASSWORD` set, the
9
+ * server will require the header. Always wiring this wrapper means the
10
+ * daemon stays correct under both setups without conditional plumbing.
11
+ *
12
+ * Phase 5 (Remote mode) is the primary consumer; in Phase 2 the wrapper
13
+ * is constructed and exercised by the manager's `fetch` injection slot.
14
+ */
15
+ export interface BasicAuthCredentials {
16
+ username: string;
17
+ password: string;
18
+ }
19
+ /**
20
+ * Return a `fetch`-compatible function that adds an HTTP Basic Auth
21
+ * `Authorization` header to every request when `credentials` is set.
22
+ * When `credentials` is null/undefined, the underlying fetch is returned
23
+ * unchanged — callers can wire this wrapper unconditionally without
24
+ * sniffing the keychain at every call site.
25
+ */
26
+ export declare function createBasicAuthFetch(credentials: BasicAuthCredentials | null | undefined, underlyingFetch?: typeof fetch): typeof fetch;
27
+ //# sourceMappingURL=opencode-basic-auth-fetch.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"opencode-basic-auth-fetch.d.ts","sourceRoot":"","sources":["../../../src/core/backends/opencode-basic-auth-fetch.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,MAAM,WAAW,oBAAoB;IACnC,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAClC,WAAW,EAAE,oBAAoB,GAAG,IAAI,GAAG,SAAS,EACpD,eAAe,GAAE,OAAO,KAAa,GACpC,OAAO,KAAK,CAiBd"}
@@ -0,0 +1,40 @@
1
+ /**
2
+ * docs/design/appendices/opencode-backend.md §6.6.1 — HTTP Basic Auth `fetch` wrapper for
3
+ * the Remote-mode `RemoteOpencodeServerManager` (and as a defense-in-depth
4
+ * for Managed mode when `OPENCODE_SERVER_PASSWORD` is non-empty).
5
+ *
6
+ * Managed mode runs on loopback (`127.0.0.1`) and the spawned opencode
7
+ * server in 1.14.50 does not enforce Basic Auth by default — but if the
8
+ * operator's environment has a global `OPENCODE_SERVER_PASSWORD` set, the
9
+ * server will require the header. Always wiring this wrapper means the
10
+ * daemon stays correct under both setups without conditional plumbing.
11
+ *
12
+ * Phase 5 (Remote mode) is the primary consumer; in Phase 2 the wrapper
13
+ * is constructed and exercised by the manager's `fetch` injection slot.
14
+ */
15
+ /**
16
+ * Return a `fetch`-compatible function that adds an HTTP Basic Auth
17
+ * `Authorization` header to every request when `credentials` is set.
18
+ * When `credentials` is null/undefined, the underlying fetch is returned
19
+ * unchanged — callers can wire this wrapper unconditionally without
20
+ * sniffing the keychain at every call site.
21
+ */
22
+ export function createBasicAuthFetch(credentials, underlyingFetch = fetch) {
23
+ if (!credentials)
24
+ return underlyingFetch;
25
+ const { username, password } = credentials;
26
+ if (!username || !password)
27
+ return underlyingFetch;
28
+ // RFC 7617 — username:password base64-encoded. Use Buffer to keep the
29
+ // call usable in non-browser Node runtimes.
30
+ const token = Buffer.from(`${username}:${password}`, "utf8").toString("base64");
31
+ const authHeader = `Basic ${token}`;
32
+ return async (input, init) => {
33
+ const headers = new Headers(init?.headers ?? {});
34
+ if (!headers.has("authorization")) {
35
+ headers.set("authorization", authHeader);
36
+ }
37
+ return underlyingFetch(input, { ...init, headers });
38
+ };
39
+ }
40
+ //# sourceMappingURL=opencode-basic-auth-fetch.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"opencode-basic-auth-fetch.js","sourceRoot":"","sources":["../../../src/core/backends/opencode-basic-auth-fetch.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAOH;;;;;;GAMG;AACH,MAAM,UAAU,oBAAoB,CAClC,WAAoD,EACpD,kBAAgC,KAAK;IAErC,IAAI,CAAC,WAAW;QAAE,OAAO,eAAe,CAAC;IACzC,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,WAAW,CAAC;IAC3C,IAAI,CAAC,QAAQ,IAAI,CAAC,QAAQ;QAAE,OAAO,eAAe,CAAC;IACnD,sEAAsE;IACtE,4CAA4C;IAC5C,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,QAAQ,IAAI,QAAQ,EAAE,EAAE,MAAM,CAAC,CAAC,QAAQ,CACnE,QAAQ,CACT,CAAC;IACF,MAAM,UAAU,GAAG,SAAS,KAAK,EAAE,CAAC;IACpC,OAAO,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;QAC3B,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,IAAI,EAAE,OAAO,IAAI,EAAE,CAAC,CAAC;QACjD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,EAAE,CAAC;YAClC,OAAO,CAAC,GAAG,CAAC,eAAe,EAAE,UAAU,CAAC,CAAC;QAC3C,CAAC;QACD,OAAO,eAAe,CAAC,KAAK,EAAE,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;IACtD,CAAC,CAAC;AACJ,CAAC"}