@noxsoft/anima 2.0.2 → 2.0.4

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 (829) hide show
  1. package/README.md +1260 -28
  2. package/dist/accounts-Bth3PpPD.js +260 -0
  3. package/dist/accounts-D8CPKNkN.js +259 -0
  4. package/dist/acp-cli-ByK6lS6c.js +1081 -0
  5. package/dist/acp-cli-CaQCjIw4.js +1084 -0
  6. package/dist/agent-BgIkqd3F.js +725 -0
  7. package/dist/agent-N5BDcge4.js +725 -0
  8. package/dist/agent-events-COH7NDW2.js +182 -0
  9. package/dist/agent-scope-CPphqq-U.js +452 -0
  10. package/dist/agent-scope-DZgptr9J.js +452 -0
  11. package/dist/agent-scope-cj2QCT6R.js +112 -0
  12. package/dist/agents-NEudYMdg.js +774 -0
  13. package/dist/agents.config-Bujs-NIy.js +182 -0
  14. package/dist/agents.config-jp7OLssr.js +182 -0
  15. package/dist/argv-BMZMiW7v.js +73 -0
  16. package/dist/audit-C-UJhfdv.js +2401 -0
  17. package/dist/audit-CeCO7SK5.js +2401 -0
  18. package/dist/auth-BNZsOHGF.js +648 -0
  19. package/dist/auth-DMPZWzEa.js +639 -0
  20. package/dist/auth-choice-5VnaGMD-.js +2681 -0
  21. package/dist/auth-choice-DA2k4vs8.js +2681 -0
  22. package/dist/auth-health-B7FqA26_.js +149 -0
  23. package/dist/auth-health-VO_MPqVX.js +149 -0
  24. package/dist/auth-profiles-BDrNYX_n.js +1564 -0
  25. package/dist/auth-profiles-CxSHydjn.js +2689 -0
  26. package/dist/banner-BtDZPRzi.js +294 -0
  27. package/dist/browser-cli-8yQMpxb8.js +1679 -0
  28. package/dist/browser-cli-Czg3JtDH.js +1676 -0
  29. package/dist/build-info.json +3 -3
  30. package/dist/bundled/boot-md/handler.js +16 -16
  31. package/dist/bundled/bootstrap-extra-files/handler.js +4 -4
  32. package/dist/bundled/command-logger/handler.js +1 -1
  33. package/dist/bundled/session-memory/handler.js +5 -5
  34. package/dist/call-BIzCaKZb.js +282 -0
  35. package/dist/call-BYDpTVCZ.js +282 -0
  36. package/dist/canvas-host/a2ui/.bundle.hash +1 -1
  37. package/dist/catalog-CqKiUgu6.js +185 -0
  38. package/dist/catalog-DMfEg-oK.js +185 -0
  39. package/dist/channel-options-BrtCtyrT.js +32 -0
  40. package/dist/channel-options-CO21Gl8p.js +33 -0
  41. package/dist/channel-selection-Bbm1lq3P.js +51 -0
  42. package/dist/channel-selection-CqcX7Ocw.js +51 -0
  43. package/dist/channel-web-DrsT6OAE.js +2162 -0
  44. package/dist/channels-cli-Juyh1S6n.js +1304 -0
  45. package/dist/channels-cli-zNvi1m5c.js +1306 -0
  46. package/dist/channels-status-issues-CqzqshW4.js +18 -0
  47. package/dist/channels-status-issues-DdJdO866.js +18 -0
  48. package/dist/chrome-C4dOMO8z.js +1601 -0
  49. package/dist/chrome-DdcDzAtH.js +1629 -0
  50. package/dist/chrome-U3DRzjJD.js +1601 -0
  51. package/dist/chunk-D2nLsrEW.js +348 -0
  52. package/dist/clack-prompter-BI3RDW5w.js +92 -0
  53. package/dist/clack-prompter-Dwr1m_IZ.js +92 -0
  54. package/dist/cli/daemon-cli.js +1 -1
  55. package/dist/cli-C3cpDaz8.js +99 -0
  56. package/dist/cli-CjWUGdGC.js +101 -0
  57. package/dist/cli-session-BVjY_XrW.js +5463 -0
  58. package/dist/cli-session-gtuYN2Iq.js +5408 -0
  59. package/dist/client-Dswwze5_.js +1692 -0
  60. package/dist/client-LRKFjo4A.js +1692 -0
  61. package/dist/clipboard-BZKS9O1u.js +31 -0
  62. package/dist/clipboard-DES8b1AM.js +31 -0
  63. package/dist/command-format-CP1YTNCl.js +52 -0
  64. package/dist/command-format-CVL4K5cj.js +52 -0
  65. package/dist/command-format-G6N2zghg.js +38 -0
  66. package/dist/command-registry-BBvNvysr.js +248 -0
  67. package/dist/commands-AZ3n8Y2c.js +726 -0
  68. package/dist/commands-BMnD_QRY.js +726 -0
  69. package/dist/commands-registry-cFqZ6Ib4.js +766 -0
  70. package/dist/commands-registry-q13H7ng5.js +766 -0
  71. package/dist/common-CX5458fH.js +287 -0
  72. package/dist/common-DJbnT8ws.js +287 -0
  73. package/dist/completion-cli-BADRBcIl.js +432 -0
  74. package/dist/completion-cli-DMQgiObF.js +431 -0
  75. package/dist/config-CU-Axg8P.js +5704 -0
  76. package/dist/config-DaqbUdkI.js +5705 -0
  77. package/dist/config-cli-BPlbwiuA.js +244 -0
  78. package/dist/config-cli-DXgZJkPU.js +247 -0
  79. package/dist/config-guard-Ba49JNds.js +76 -0
  80. package/dist/config-guard-Cu0qMKZJ.js +93 -0
  81. package/dist/config-kVVm5EYV.js +6523 -0
  82. package/dist/config-sync-CzLnLTXt.js +91 -0
  83. package/dist/config-sync-DuydxPWx.js +91 -0
  84. package/dist/configure-CHgacLyi.js +960 -0
  85. package/dist/configure-DfHXDa1L.js +959 -0
  86. package/dist/context-DzgXOckU.js +60 -0
  87. package/dist/control-service-8_wKHwBa.js +72 -0
  88. package/dist/control-service-BtL1Jto_.js +72 -0
  89. package/dist/cron-cli-BCzSR2c0.js +448 -0
  90. package/dist/cron-cli-CCWNkykU.js +451 -0
  91. package/dist/daemon-cli-Bjkbu9Vy.js +565 -0
  92. package/dist/daemon-cli-CmlHcC1J.js +566 -0
  93. package/dist/daemon-cli.js +16 -16
  94. package/dist/daemon-runtime-C0tz7VAC.js +460 -0
  95. package/dist/daemon-runtime-rUTqCVwJ.js +460 -0
  96. package/dist/deliver-BBggsviM.js +1097 -0
  97. package/dist/deliver-CePITOl8.js +1162 -0
  98. package/dist/deliver-DFnVaetP.js +1097 -0
  99. package/dist/delivery-queue-BJQK3oh5.js +220 -0
  100. package/dist/deps-CeEKhrp7.js +42 -0
  101. package/dist/devices-cli-DQrDMrZH.js +198 -0
  102. package/dist/devices-cli-Oe-A1Dv0.js +195 -0
  103. package/dist/diagnostics-DxMFrBLO.js +35 -0
  104. package/dist/diagnostics-m79ZlMmZ.js +35 -0
  105. package/dist/directory-cli-BL6h8cGF.js +246 -0
  106. package/dist/directory-cli-Cjgmi_sj.js +243 -0
  107. package/dist/dispatcher-DAFbQM-c.js +100 -0
  108. package/dist/dispatcher-DNd40gUn.js +100 -0
  109. package/dist/dist-CqDI82ei.js +929 -0
  110. package/dist/dist-DnHRxR5U.js +929 -0
  111. package/dist/dns-cli-CFtV3BXK.js +200 -0
  112. package/dist/dns-cli-NyIHvQ5S.js +197 -0
  113. package/dist/dock-BdXLb5oY.js +753 -0
  114. package/dist/dock-jYICmNcI.js +753 -0
  115. package/dist/docs-cli-CrOaIK_H.js +161 -0
  116. package/dist/docs-cli-D_cmJDSr.js +159 -0
  117. package/dist/doctor-BpGxKrBl.js +1815 -0
  118. package/dist/doctor-D12wNQPU.js +1813 -0
  119. package/dist/doctor-completion-DeOfofek.js +92 -0
  120. package/dist/doctor-completion-DwjqdEcK.js +92 -0
  121. package/dist/doctor-config-flow-BI3mpkbd.js +1232 -0
  122. package/dist/doctor-config-flow-wMHheFkC.js +1232 -0
  123. package/dist/engine-BCtL-AMw.js +563 -0
  124. package/dist/engine-Bk_UT413.js +563 -0
  125. package/dist/entry.js +5 -5
  126. package/dist/env-v6411I8h.js +32 -0
  127. package/dist/exec-B7sUS164.js +1167 -0
  128. package/dist/exec-approvals-CroGJRUg.js +1221 -0
  129. package/dist/exec-approvals-cli-BTxF_RsH.js +371 -0
  130. package/dist/exec-approvals-cli-n1gyGwH2.js +368 -0
  131. package/dist/exec-mhSykkaa.js +255 -0
  132. package/dist/extensionAPI.js +3 -3
  133. package/dist/frontmatter-BmHq0vRD.js +204 -0
  134. package/dist/gateway-cli-DDBadlrS.js +19971 -0
  135. package/dist/gateway-cli-IZNkOMBe.js +19972 -0
  136. package/dist/gateway-rpc-Dtx8HN-n.js +28 -0
  137. package/dist/gateway-rpc-L2PVSqGj.js +28 -0
  138. package/dist/github-copilot-auth-DKyqDaGU.js +1418 -0
  139. package/dist/github-copilot-auth-DXpOMSd3.js +1418 -0
  140. package/dist/gmail-setup-utils-BKNczIJ9.js +428 -0
  141. package/dist/gmail-setup-utils-co0ppccC.js +428 -0
  142. package/dist/health-Bm8ZTvC3.js +1253 -0
  143. package/dist/health-DUf1gt4E.js +1258 -0
  144. package/dist/health-format-BksT6F68.js +208 -0
  145. package/dist/health-format-uzh1xYLD.js +208 -0
  146. package/dist/heartbeat-visibility-1TJb1Zao.js +98 -0
  147. package/dist/heartbeat-visibility-CwodtdcX.js +98 -0
  148. package/dist/help-format-C6cv_aZp.js +17 -0
  149. package/dist/helpers-N-uSFKOn.js +10 -0
  150. package/dist/hooks-cli-1POsXqOl.js +993 -0
  151. package/dist/hooks-cli-BGjILbze.js +991 -0
  152. package/dist/hooks-status-DE07n5RC.js +356 -0
  153. package/dist/hooks-status-Du-d1jde.js +356 -0
  154. package/dist/image-ops-B_AYV3tp.js +541 -0
  155. package/dist/image-ops-Bp0C6Mvr.js +541 -0
  156. package/dist/index.js +82 -82
  157. package/dist/init-9A0s7bWG.js +122 -0
  158. package/dist/init-DoyCHJDC.js +122 -0
  159. package/dist/installs-D1C9wHAq.js +383 -0
  160. package/dist/installs-Dh4dHayM.js +383 -0
  161. package/dist/ipv4-DCItfaJo.js +1964 -0
  162. package/dist/ipv4-DSOUVx0i.js +1964 -0
  163. package/dist/lanes-BvSnHq2h.js +232 -0
  164. package/dist/lifecycle-core-BY4WIf9g.js +388 -0
  165. package/dist/lifecycle-core-TQKyXO-6.js +387 -0
  166. package/dist/links-CNu_8RZl.js +15 -0
  167. package/dist/links-D2tt2ouh.js +15 -0
  168. package/dist/llm-slug-generator.js +4 -4
  169. package/dist/logging-BIeRw0WR.js +15 -0
  170. package/dist/logging-C7lb3Vjc.js +15 -0
  171. package/dist/login-DXWKewA2.js +59 -0
  172. package/dist/login-Fhh4uWmf.js +61 -0
  173. package/dist/login-pPs3UO38.js +61 -0
  174. package/dist/login-qr-CevLD8cV.js +326 -0
  175. package/dist/login-qr-GF2JMIy-.js +323 -0
  176. package/dist/login-qr-ZYYKD6Yt.js +321 -0
  177. package/dist/logs-cli-CzXbX8HZ.js +242 -0
  178. package/dist/logs-cli-D9ngH9PF.js +245 -0
  179. package/dist/manager-BD5rA3w0.js +3244 -0
  180. package/dist/manager-BDPgBQSH.js +3246 -0
  181. package/dist/manager-DRWMWM--.js +3244 -0
  182. package/dist/manifest-registry-DbvPaBXY.js +748 -0
  183. package/dist/manifest-registry-kHX_MFa1.js +748 -0
  184. package/dist/markdown-tables-CqwihY2m.js +347 -0
  185. package/dist/markdown-tables-DJV7eAJZ.js +348 -0
  186. package/dist/media-lUqN-0O9.js +1342 -0
  187. package/dist/memory-cli-BLXSpgnN.js +868 -0
  188. package/dist/memory-cli-BcGVkkRJ.js +869 -0
  189. package/dist/message-channel-D_jIO87f.js +110 -0
  190. package/dist/migrate-BpVOar4L.js +157 -0
  191. package/dist/migrate-CkgGDkWy.js +157 -0
  192. package/dist/model-selection-Cqt6aJ0G.js +2691 -0
  193. package/dist/models-CExsNQPH.js +2510 -0
  194. package/dist/models-cli-Ba3Jmwev.js +2739 -0
  195. package/dist/models-cli-iDAlsbL2.js +258 -0
  196. package/dist/net-0A_zcaQD.js +218 -0
  197. package/dist/node-cli-ATmwCXIk.js +1319 -0
  198. package/dist/node-cli-DYFR_V25.js +1322 -0
  199. package/dist/node-service-CN4LqR1A.js +67 -0
  200. package/dist/node-service-CWt3MdSC.js +67 -0
  201. package/dist/nodes-cli-BeVmhTz3.js +1197 -0
  202. package/dist/nodes-cli-QeJIfa18.js +1200 -0
  203. package/dist/nodes-screen-DHyWAlla.js +234 -0
  204. package/dist/nodes-screen-qs3jRBPk.js +234 -0
  205. package/dist/note-CSlg2BnB.js +73 -0
  206. package/dist/note-Ctvglhp1.js +73 -0
  207. package/dist/npm-registry-spec-DQd4M22q.js +351 -0
  208. package/dist/npm-registry-spec-PxisIMts.js +351 -0
  209. package/dist/onboard-DeruD10m.js +1166 -0
  210. package/dist/onboard-SAcu5N6N.js +1165 -0
  211. package/dist/onboard-channels-C4iSfFXR.js +672 -0
  212. package/dist/onboard-channels-oVTVgoyg.js +672 -0
  213. package/dist/onboard-helpers-B8roRwLP.js +365 -0
  214. package/dist/onboard-helpers-Dgh26hgP.js +365 -0
  215. package/dist/onboarding-Bi-ac8we.js +911 -0
  216. package/dist/onboarding-C2gjB2u8.js +910 -0
  217. package/dist/orchestrator-DlbAYMQP.js +357 -0
  218. package/dist/orchestrator-DlwVRVDA.js +357 -0
  219. package/dist/outbound-CkKgc6iR.js +2062 -0
  220. package/dist/outbound-Vfm5yDh3.js +214 -0
  221. package/dist/outbound-bs_VK51X.js +214 -0
  222. package/dist/outbound-send-deps-DDjiMfEL.js +55 -0
  223. package/dist/pairing-cli-CJYeuEik.js +118 -0
  224. package/dist/pairing-cli-mqopHI8s.js +121 -0
  225. package/dist/pairing-store-BsXzUDPv.js +388 -0
  226. package/dist/pairing-store-DoNj00-X.js +388 -0
  227. package/dist/path-env-C_xpiG8l.js +89 -0
  228. package/dist/path-env-DSSMHu5A.js +89 -0
  229. package/dist/paths-B1vRVCad.js +126 -0
  230. package/dist/paths-BMuHNFxg.js +238 -0
  231. package/dist/paths-BXQQzXGQ.js +129 -0
  232. package/dist/paths-Buw_geoe.js +54 -0
  233. package/dist/paths-DA9WYabg.js +222 -0
  234. package/dist/paths-DfQGx0_k.js +129 -0
  235. package/dist/pi-auth-json-DOPW3e4X.js +78 -0
  236. package/dist/pi-auth-json-MruLmI_X.js +82 -0
  237. package/dist/pi-auth-json-lae_wwwo.js +80 -0
  238. package/dist/pi-model-discovery-7q0GxMrp.js +3 -0
  239. package/dist/pi-tools.policy-Csmla32P.js +200 -0
  240. package/dist/pi-tools.policy-xYdDLEv9.js +200 -0
  241. package/dist/plugin-auto-enable-CViVVWgg.js +282 -0
  242. package/dist/plugin-auto-enable-CjZ238UI.js +282 -0
  243. package/dist/plugin-registry-B4Aw2hzq.js +32 -0
  244. package/dist/plugin-registry-DW81arxW.js +32 -0
  245. package/dist/plugin-sdk/cli/cli-name.d.ts +1 -1
  246. package/dist/plugin-sdk/config/paths.d.ts +2 -2
  247. package/dist/plugin-sdk/index.js +7 -7
  248. package/dist/plugins-DhcGAPDB.js +38 -0
  249. package/dist/plugins-DtghNRtM.js +168 -0
  250. package/dist/plugins-cli-4vWTmOAb.js +736 -0
  251. package/dist/plugins-cli-CdTMbP0X.js +734 -0
  252. package/dist/polls-D6eCdatA.js +1343 -0
  253. package/dist/ports-BtZx-JKD.js +96 -0
  254. package/dist/ports-C8bKN8s0.js +96 -0
  255. package/dist/ports-DHiKnPRX.js +344 -0
  256. package/dist/ports-vd93M_Pt.js +317 -0
  257. package/dist/program-CX3aUVeb.js +176 -0
  258. package/dist/program-context-BPos0ivo.js +496 -0
  259. package/dist/progress-oiAjiiNi.js +133 -0
  260. package/dist/prompt-style-Cm4wOtKm.js +9 -0
  261. package/dist/pw-ai-4QbK5YFe.js +1865 -0
  262. package/dist/pw-ai-BWz3Cxt7.js +1868 -0
  263. package/dist/pw-ai-C83HBue2.js +1867 -0
  264. package/dist/qmd-manager-BcMeZiGD.js +938 -0
  265. package/dist/qmd-manager-CPypGJ0P.js +935 -0
  266. package/dist/qmd-manager-CRrSkfia.js +937 -0
  267. package/dist/register.agent-DDY8KJhn.js +265 -0
  268. package/dist/register.agent-DKawm-9d.js +1003 -0
  269. package/dist/register.anima-CEWUo29k.js +193 -0
  270. package/dist/register.anima-DBWz2rk_.js +193 -0
  271. package/dist/register.configure-BX67qV8k.js +103 -0
  272. package/dist/register.configure-CWsySuiq.js +101 -0
  273. package/dist/register.maintenance-0k-ZNhDg.js +543 -0
  274. package/dist/register.maintenance-BIwx1fzX.js +543 -0
  275. package/dist/register.message-CXPsoakA.js +657 -0
  276. package/dist/register.message-DA3jvfgI.js +660 -0
  277. package/dist/register.onboard-C4HG7Hqv.js +170 -0
  278. package/dist/register.onboard-GOpdif-j.js +170 -0
  279. package/dist/register.setup-B17vZT7C.js +175 -0
  280. package/dist/register.setup-GJyUDCqh.js +175 -0
  281. package/dist/register.status-health-sessions-D5876dGx.js +313 -0
  282. package/dist/register.status-health-sessions-lOewVIZR.js +142 -0
  283. package/dist/register.subclis-Dwnujj5C.js +255 -0
  284. package/dist/reply-CR5T_oQJ.js +32212 -0
  285. package/dist/reply-prefix-BcrS4Umd.js +100 -0
  286. package/dist/reply-prefix-Btb5o2NH.js +100 -0
  287. package/dist/reply-r089HuRA.js +32212 -0
  288. package/dist/routes-B4czFzIb.js +1820 -0
  289. package/dist/routes-ucJWAk5O.js +1820 -0
  290. package/dist/rpc-BnKxnQ0v.js +70 -0
  291. package/dist/rpc-DgE-xnyx.js +70 -0
  292. package/dist/run-main-B74kv84C.js +371 -0
  293. package/dist/runtime-guard-CKFdts2L.js +60 -0
  294. package/dist/sandbox-CJTS3er6.js +858 -0
  295. package/dist/sandbox-DBSiVHt_.js +859 -0
  296. package/dist/sandbox-cli-CrkjyU5M.js +461 -0
  297. package/dist/sandbox-cli-D1r5y6Sz.js +458 -0
  298. package/dist/security-cli-BZUdnkhn.js +462 -0
  299. package/dist/security-cli-DS09ebvA.js +465 -0
  300. package/dist/server-context-C0xZbYhg.js +824 -0
  301. package/dist/server-context-DVh2z7om.js +824 -0
  302. package/dist/server-node-events-bu9lpkMH.js +233 -0
  303. package/dist/server-node-events-i1Rrww31.js +231 -0
  304. package/dist/service-CJJwLEor.js +642 -0
  305. package/dist/service-DxLxBhaU.js +642 -0
  306. package/dist/service-audit-DB4Y3Ekp.js +488 -0
  307. package/dist/service-audit-M8y4TXVb.js +488 -0
  308. package/dist/session-CGxOLFs2.js +179 -0
  309. package/dist/session-DTTbdKb0.js +181 -0
  310. package/dist/session-cost-usage-FcdJl9c3.js +600 -0
  311. package/dist/session-cost-usage-qdfsGU2a.js +600 -0
  312. package/dist/session-yOhWcsD2.js +181 -0
  313. package/dist/sessions-B-Cu7JZq.js +1296 -0
  314. package/dist/sessions-BgLN4KFr.js +180 -0
  315. package/dist/sessions-CnRjwdVr.js +1296 -0
  316. package/dist/sessions-wRKla1Qh.js +2038 -0
  317. package/dist/shared-DS3UaJSP.js +66 -0
  318. package/dist/shared-DxNHzky3.js +77 -0
  319. package/dist/shared-Qpt4hUDi.js +66 -0
  320. package/dist/shared-kzrojZ1B.js +77 -0
  321. package/dist/skill-scanner-DLJji5Ye.js +263 -0
  322. package/dist/skills-BWFIEp4j.js +807 -0
  323. package/dist/skills-DV4zKdCx.js +808 -0
  324. package/dist/skills-cli-BY53ILm2.js +289 -0
  325. package/dist/skills-cli-CO3gxl8A.js +286 -0
  326. package/dist/skills-status-DX5pcqY3.js +166 -0
  327. package/dist/skills-status-zhcKzGkp.js +166 -0
  328. package/dist/sqlite-B6MojU1I.js +321 -0
  329. package/dist/sqlite-CuprTGR7.js +453 -0
  330. package/dist/sqlite-dzD-jMjs.js +368 -0
  331. package/dist/start-Cu3aLoSf.js +297 -0
  332. package/dist/start-Dz7tMAl8.js +296 -0
  333. package/dist/status-CaSxhxfV.js +2132 -0
  334. package/dist/status-D2C0JCX3.js +2137 -0
  335. package/dist/status-DlFMsQzh.js +27 -0
  336. package/dist/status-G0CITnKR.js +27 -0
  337. package/dist/status.update-CHjhVxJY.js +79 -0
  338. package/dist/status.update-DVFelehi.js +79 -0
  339. package/dist/subagent-registry-3Xb4el-8.js +14 -0
  340. package/dist/subagent-registry-CdSjz14I.js +2760 -0
  341. package/dist/subagent-registry-DNDhbHWi.js +2759 -0
  342. package/dist/subsystem-DfKstnEK.js +860 -0
  343. package/dist/system-cli-B5mt0FWa.js +82 -0
  344. package/dist/system-cli-Dg3UQ3Zz.js +79 -0
  345. package/dist/systemd-B43AvOGx.js +452 -0
  346. package/dist/systemd-RpPE0XGg.js +452 -0
  347. package/dist/systemd-hints-DMJT-Bbc.js +36 -0
  348. package/dist/systemd-hints-vRInKcz9.js +36 -0
  349. package/dist/systemd-linger-Dzyxqsod.js +75 -0
  350. package/dist/systemd-linger-EujbmI5A.js +75 -0
  351. package/dist/table-DhXHfRX2.js +279 -0
  352. package/dist/table-bWCLW-3P.js +279 -0
  353. package/dist/timeout-Ddn-5kAO.js +232 -0
  354. package/dist/tokens-3psI_Qk2.js +14 -0
  355. package/dist/tokens-BaM53PEx.js +14 -0
  356. package/dist/trash-Bmxs1Rnm.js +23 -0
  357. package/dist/trash-C39a6hKA.js +23 -0
  358. package/dist/tui-BHgBWhHE.js +3894 -0
  359. package/dist/tui-cli-B9Sq5-cC.js +50 -0
  360. package/dist/tui-cli-Dw7v4JoJ.js +47 -0
  361. package/dist/tui-mUwDwqvd.js +3894 -0
  362. package/dist/update-DF0GHG0j.js +317 -0
  363. package/dist/update-DoZLVjva.js +317 -0
  364. package/dist/update-check-Bt1dVPVN.js +400 -0
  365. package/dist/update-check-D5qAKes7.js +400 -0
  366. package/dist/update-cli-BNu2Oi7H.js +1105 -0
  367. package/dist/update-cli-D36AmALA.js +1105 -0
  368. package/dist/update-runner-CNQQaTwA.js +894 -0
  369. package/dist/update-runner-CvxZmbu-.js +894 -0
  370. package/dist/usage-BGCwNnjk.js +4516 -0
  371. package/dist/utils-DZ8pnOD5.js +243 -0
  372. package/dist/web-B5QG839O.js +46842 -0
  373. package/dist/web-Cmnvk9v0.js +2203 -0
  374. package/dist/web-Cv2KnTnL.js +63 -0
  375. package/dist/webhooks-cli-B6y89Pj_.js +319 -0
  376. package/dist/webhooks-cli-BDzHON4w.js +316 -0
  377. package/dist/whatsapp-actions-C_5MwVxM.js +45 -0
  378. package/dist/whatsapp-actions-hgYA12To.js +53 -0
  379. package/dist/whatsapp-actions-zTiVOoOV.js +49 -0
  380. package/dist/widearea-dns-BeIdnISJ.js +127 -0
  381. package/dist/widearea-dns-CF1gxpJ-.js +127 -0
  382. package/dist/workspace-DLna1IxR.js +649 -0
  383. package/dist/ws-log-Q4wO1Ztb.js +267 -0
  384. package/dist/ws-log-xF0kxDzp.js +267 -0
  385. package/package.json +1 -2
  386. package/dist/accounts-Cc5E4IDO.js +0 -260
  387. package/dist/accounts-CcVrwKqv.js +0 -259
  388. package/dist/acp-cli-DvphOKuh.js +0 -1081
  389. package/dist/acp-cli-p28pQ65a.js +0 -1084
  390. package/dist/agent-Cj7uDJaZ.js +0 -725
  391. package/dist/agent-Cuj9-2sT.js +0 -725
  392. package/dist/agent-events-BEBQsyE5.js +0 -182
  393. package/dist/agent-scope-BVf4aSwY.js +0 -112
  394. package/dist/agent-scope-OZi7lb8S.js +0 -452
  395. package/dist/agent-scope-V1bi9OYL.js +0 -452
  396. package/dist/agents-BUWqn_Ui.js +0 -774
  397. package/dist/agents.config-Dvo2ULxs.js +0 -182
  398. package/dist/agents.config-d6H0_3oj.js +0 -182
  399. package/dist/argv-DqUHKf0o.js +0 -73
  400. package/dist/audit-C6okOOSh.js +0 -2401
  401. package/dist/audit-VWjIdwC7.js +0 -2401
  402. package/dist/auth-91o2YM96.js +0 -648
  403. package/dist/auth-choice-CAmACV13.js +0 -2681
  404. package/dist/auth-choice-p3SeHPj2.js +0 -2681
  405. package/dist/auth-health-B_jXrWe6.js +0 -149
  406. package/dist/auth-health-DCicUKYR.js +0 -149
  407. package/dist/auth-lZ26wsbN.js +0 -639
  408. package/dist/auth-profiles-CCDD56dU.js +0 -1564
  409. package/dist/auth-profiles-DxI8L7bs.js +0 -2689
  410. package/dist/banner-Cohn04J6.js +0 -294
  411. package/dist/browser-cli-DANzjztE.js +0 -1676
  412. package/dist/browser-cli-WjsVH741.js +0 -1679
  413. package/dist/call-BAHvlu2G.js +0 -282
  414. package/dist/call-Ct7EGP_L.js +0 -282
  415. package/dist/catalog-BAayBt1L.js +0 -185
  416. package/dist/catalog-BNsf97BM.js +0 -185
  417. package/dist/channel-options-Dx9nPlX8.js +0 -33
  418. package/dist/channel-options-ZdvXrTGs.js +0 -32
  419. package/dist/channel-selection-CujyiWGM.js +0 -51
  420. package/dist/channel-selection-DfGpCyh2.js +0 -51
  421. package/dist/channel-web-CC0hkgkR.js +0 -2162
  422. package/dist/channels-cli-D7lNBpIb.js +0 -1304
  423. package/dist/channels-cli-DUPG8WDv.js +0 -1306
  424. package/dist/channels-status-issues-DBc1pU_R.js +0 -18
  425. package/dist/channels-status-issues-DjO9MHIG.js +0 -18
  426. package/dist/chrome-Bi6iZ5sG.js +0 -1601
  427. package/dist/chrome-DNSv7Cpy.js +0 -1629
  428. package/dist/chrome-DScZx4Lk.js +0 -1601
  429. package/dist/chunk-mxPVo000.js +0 -348
  430. package/dist/clack-prompter-B0kl7shw.js +0 -92
  431. package/dist/clack-prompter-B1YxZdRy.js +0 -92
  432. package/dist/cli-CfHUkOD0.js +0 -101
  433. package/dist/cli-ClMrIh6l.js +0 -99
  434. package/dist/cli-session-BkPTd9Pk.js +0 -5463
  435. package/dist/cli-session-Dd8DKb5a.js +0 -5408
  436. package/dist/client-C1avc0vD.js +0 -1692
  437. package/dist/client-CC94YZrT.js +0 -1692
  438. package/dist/clipboard-B2fBy8tG.js +0 -31
  439. package/dist/clipboard-BbGnZskJ.js +0 -31
  440. package/dist/command-format-Clp46jkj.js +0 -38
  441. package/dist/command-format-DELazozB.js +0 -52
  442. package/dist/command-format-SkzzRqR1.js +0 -52
  443. package/dist/command-registry-DZ4hkmA0.js +0 -248
  444. package/dist/commands-DtYZJSPn.js +0 -568
  445. package/dist/commands-Dujk1JmY.js +0 -568
  446. package/dist/commands-registry-Bd0xbvwG.js +0 -766
  447. package/dist/commands-registry-DYfRSVF3.js +0 -766
  448. package/dist/common-D6bu0zHC.js +0 -287
  449. package/dist/common-zW9Y2P1B.js +0 -287
  450. package/dist/completion-cli-tSe7Pmqm.js +0 -431
  451. package/dist/completion-cli-vn4IScs5.js +0 -432
  452. package/dist/config-C8rUDJXY.js +0 -5704
  453. package/dist/config-CLZ_XGVw.js +0 -6523
  454. package/dist/config-SY8M0kM_.js +0 -5705
  455. package/dist/config-cli-1V7D2Wsw.js +0 -247
  456. package/dist/config-cli-CjWEC81L.js +0 -244
  457. package/dist/config-guard-BW2gpKj_.js +0 -93
  458. package/dist/config-guard-BvxuzHpo.js +0 -76
  459. package/dist/config-sync-CoIIbEOe.js +0 -91
  460. package/dist/config-sync-DvAttep0.js +0 -91
  461. package/dist/configure-Bf0oupCE.js +0 -959
  462. package/dist/configure-DRM-7zFf.js +0 -960
  463. package/dist/context-D5iEFzv9.js +0 -60
  464. package/dist/control-service-C8m8F9pr.js +0 -72
  465. package/dist/control-service-DKotCWCg.js +0 -72
  466. package/dist/cron-cli-DB_FLYHD.js +0 -448
  467. package/dist/cron-cli-bxm5lrrO.js +0 -451
  468. package/dist/daemon-cli-1LsOnICv.js +0 -566
  469. package/dist/daemon-cli-CC2NrJ7a.js +0 -565
  470. package/dist/daemon-runtime-BXZhtBL9.js +0 -460
  471. package/dist/daemon-runtime-DW4USC7r.js +0 -460
  472. package/dist/deliver-B4HuPwJA.js +0 -1162
  473. package/dist/deliver-LiY5oL52.js +0 -1097
  474. package/dist/deliver-xrmk7xjh.js +0 -1097
  475. package/dist/delivery-queue-TnQykYsg.js +0 -220
  476. package/dist/deps-CMMOiOsF.js +0 -42
  477. package/dist/devices-cli-Be5he2SA.js +0 -195
  478. package/dist/devices-cli-z6ecoFe9.js +0 -198
  479. package/dist/diagnostics-Dj75aEHN.js +0 -35
  480. package/dist/diagnostics-DlIw6fqD.js +0 -35
  481. package/dist/directory-cli-CEy-0nxj.js +0 -243
  482. package/dist/directory-cli-DpzKcigr.js +0 -246
  483. package/dist/dispatcher-10Shiuz3.js +0 -100
  484. package/dist/dispatcher-3Jae6AiW.js +0 -100
  485. package/dist/dns-cli-Bat1pkc-.js +0 -200
  486. package/dist/dns-cli-NohNyEo0.js +0 -197
  487. package/dist/dock-DbxBBv30.js +0 -753
  488. package/dist/dock-cPBY4qGl.js +0 -753
  489. package/dist/docs-cli-BWp6p-Tq.js +0 -161
  490. package/dist/docs-cli-x22FnZfL.js +0 -159
  491. package/dist/doctor-BrT5m_on.js +0 -1815
  492. package/dist/doctor-Pp2HVnjM.js +0 -1813
  493. package/dist/doctor-completion-DNTimX9o.js +0 -92
  494. package/dist/doctor-completion-ylN9QAJ6.js +0 -92
  495. package/dist/doctor-config-flow-D1w3700T.js +0 -1232
  496. package/dist/doctor-config-flow-Dq50iE1R.js +0 -1232
  497. package/dist/engine-B9avUJL5.js +0 -563
  498. package/dist/engine-BiUQ25D4.js +0 -563
  499. package/dist/env-0lJfCPsw.js +0 -32
  500. package/dist/exec-BenD3A5l.js +0 -1167
  501. package/dist/exec-Bv3pyjeM.js +0 -255
  502. package/dist/exec-approvals-CdLmKX2R.js +0 -1221
  503. package/dist/exec-approvals-cli-DXfV6G8H.js +0 -368
  504. package/dist/exec-approvals-cli-J2cZs10o.js +0 -371
  505. package/dist/frontmatter-YijVi0FQ.js +0 -204
  506. package/dist/gateway-cli-DOAbA0pc.js +0 -19972
  507. package/dist/gateway-cli-QpWtBhQy.js +0 -19971
  508. package/dist/gateway-rpc-DJKBil9s.js +0 -28
  509. package/dist/gateway-rpc-DVterpLP.js +0 -28
  510. package/dist/github-copilot-auth-4IUFp669.js +0 -1418
  511. package/dist/github-copilot-auth-C9E0IROs.js +0 -1418
  512. package/dist/gmail-setup-utils-BPo_LkKI.js +0 -428
  513. package/dist/gmail-setup-utils-D3Yqgor7.js +0 -428
  514. package/dist/health-BeZnqp6m.js +0 -1258
  515. package/dist/health-Cn2OoVWZ.js +0 -1253
  516. package/dist/health-format-CdP99j3Y.js +0 -208
  517. package/dist/health-format-JEChH08S.js +0 -208
  518. package/dist/heartbeat-visibility-BL3WAchI.js +0 -98
  519. package/dist/heartbeat-visibility-CQ9QimI7.js +0 -98
  520. package/dist/help-format-Dl4bsrLI.js +0 -17
  521. package/dist/helpers-ZKNRexvX.js +0 -10
  522. package/dist/hooks-cli-D99hXt7K.js +0 -991
  523. package/dist/hooks-cli-DMB8RiEO.js +0 -993
  524. package/dist/hooks-status-B-e96dZj.js +0 -356
  525. package/dist/hooks-status-C_9sE0ox.js +0 -356
  526. package/dist/image-ops-Dlt3T7th.js +0 -541
  527. package/dist/image-ops-omlvdfah.js +0 -541
  528. package/dist/init-Bm04RagW.js +0 -122
  529. package/dist/init-CaJBf4p1.js +0 -122
  530. package/dist/installs-C2iMRBVz.js +0 -383
  531. package/dist/installs-D-cPGdCw.js +0 -383
  532. package/dist/ipv4-Bf7NS3QU.js +0 -1964
  533. package/dist/ipv4-wWNs8IH_.js +0 -1964
  534. package/dist/lanes-CNxj3tit.js +0 -232
  535. package/dist/lifecycle-core-B_7XRcvF.js +0 -388
  536. package/dist/lifecycle-core-By83PVAK.js +0 -387
  537. package/dist/links-BfjHVTB_.js +0 -15
  538. package/dist/links-DPGe0OHw.js +0 -15
  539. package/dist/logging-DB6BQmhi.js +0 -15
  540. package/dist/logging-mcb66J0p.js +0 -15
  541. package/dist/login-BDCg6D0N.js +0 -61
  542. package/dist/login-BDfnbjnZ.js +0 -59
  543. package/dist/login-BqH1itcg.js +0 -61
  544. package/dist/login-qr-CyOw3R4r.js +0 -321
  545. package/dist/login-qr-D8ECtb72.js +0 -323
  546. package/dist/login-qr-RnR7e4Bw.js +0 -326
  547. package/dist/logs-cli--j89L74J.js +0 -245
  548. package/dist/logs-cli-DpEMg_Gq.js +0 -242
  549. package/dist/manager-B4OyvcxT.js +0 -3244
  550. package/dist/manager-Cqc1CeH7.js +0 -3246
  551. package/dist/manager-DUyQPFvj.js +0 -3244
  552. package/dist/manifest-registry-CW1zCyRF.js +0 -748
  553. package/dist/manifest-registry-D4lM2RdV.js +0 -748
  554. package/dist/markdown-tables-BT1X6jqH.js +0 -347
  555. package/dist/markdown-tables-DHgOK2vI.js +0 -348
  556. package/dist/media-THyainiE.js +0 -1342
  557. package/dist/memory-cli-BKocCWXM.js +0 -868
  558. package/dist/memory-cli-Jmma-xI_.js +0 -869
  559. package/dist/message-channel-dSTVVCyX.js +0 -110
  560. package/dist/migrate-BR6iAIjO.js +0 -157
  561. package/dist/migrate-D0EcMs0f.js +0 -157
  562. package/dist/model-selection-YcSr9CgC.js +0 -2691
  563. package/dist/models-1vUQBVfw.js +0 -2510
  564. package/dist/models-cli-BK3BwUhL.js +0 -2739
  565. package/dist/models-cli-DECrM8oA.js +0 -258
  566. package/dist/net-B5lXhYLV.js +0 -218
  567. package/dist/node-cli-cLHUNpPD.js +0 -1319
  568. package/dist/node-cli-fO7Y132S.js +0 -1322
  569. package/dist/node-service-BFxHJsno.js +0 -67
  570. package/dist/node-service-DUnan4uK.js +0 -67
  571. package/dist/nodes-cli-BCq35E6N.js +0 -1200
  572. package/dist/nodes-cli-vD7MwAKP.js +0 -1197
  573. package/dist/nodes-screen-1YiLkqr5.js +0 -234
  574. package/dist/nodes-screen-DZeD8hE5.js +0 -234
  575. package/dist/note-Bi8Wb8DV.js +0 -73
  576. package/dist/note-uiuPxhyX.js +0 -73
  577. package/dist/npm-registry-spec-B-XIShkB.js +0 -351
  578. package/dist/npm-registry-spec-za3itb5Y.js +0 -351
  579. package/dist/onboard-Ds6w_sWo.js +0 -1165
  580. package/dist/onboard-SAVx3bp4.js +0 -1166
  581. package/dist/onboard-channels-Cg_EkBa4.js +0 -672
  582. package/dist/onboard-channels-D7NbA55V.js +0 -672
  583. package/dist/onboard-helpers-DO_hgZb9.js +0 -365
  584. package/dist/onboard-helpers-_XgJgeqh.js +0 -365
  585. package/dist/onboarding-3hLmDd0r.js +0 -911
  586. package/dist/onboarding-B4LKLsbU.js +0 -910
  587. package/dist/orchestrator-BKzmyBWy.js +0 -357
  588. package/dist/orchestrator-BN3QCz2s.js +0 -357
  589. package/dist/outbound-BgA9hNlP.js +0 -2062
  590. package/dist/outbound-CjdvVhUI.js +0 -214
  591. package/dist/outbound-DOGe6qb2.js +0 -214
  592. package/dist/outbound-send-deps-Du5aBpd7.js +0 -55
  593. package/dist/pairing-cli-2vnyg_Nd.js +0 -118
  594. package/dist/pairing-cli-BH1KQtNV.js +0 -121
  595. package/dist/pairing-store-DJz_9Gv0.js +0 -388
  596. package/dist/pairing-store-DmOzxcuk.js +0 -388
  597. package/dist/path-env-Bu6k0jDQ.js +0 -89
  598. package/dist/path-env-C0zQSjw8.js +0 -89
  599. package/dist/paths-BTc4nk-6.js +0 -126
  600. package/dist/paths-BgUi2Z2G.js +0 -54
  601. package/dist/paths-C6VCWKo3.js +0 -238
  602. package/dist/paths-CCxa0o9c.js +0 -222
  603. package/dist/paths-CxRf2rBG.js +0 -129
  604. package/dist/paths-hcX1Gqg5.js +0 -129
  605. package/dist/pi-auth-json-B68R7q7_.js +0 -82
  606. package/dist/pi-auth-json-CR0jXAgq.js +0 -78
  607. package/dist/pi-auth-json-ZYzi3nxs.js +0 -80
  608. package/dist/pi-model-discovery-Cxs4pvC2.js +0 -3
  609. package/dist/pi-tools.policy-D81U5xy0.js +0 -200
  610. package/dist/pi-tools.policy-DSHkkb5b.js +0 -200
  611. package/dist/plugin-auto-enable-CxF4bpDN.js +0 -282
  612. package/dist/plugin-auto-enable-jNaAeyEh.js +0 -282
  613. package/dist/plugin-registry-C7XWotZG.js +0 -32
  614. package/dist/plugin-registry-DcUCbGax.js +0 -32
  615. package/dist/plugins-B362e77G.js +0 -168
  616. package/dist/plugins-CmSUIUNi.js +0 -38
  617. package/dist/plugins-cli-BsCEnoQ7.js +0 -734
  618. package/dist/plugins-cli-QSIsMUG7.js +0 -736
  619. package/dist/polls-CItfB1H8.js +0 -1343
  620. package/dist/ports-BVLMN1Sr.js +0 -96
  621. package/dist/ports-CqLSlU6Z.js +0 -317
  622. package/dist/ports-D94CwCrv.js +0 -344
  623. package/dist/ports-D_NHthOz.js +0 -96
  624. package/dist/program-DkJHjI0R.js +0 -176
  625. package/dist/program-context-DnyGM2SC.js +0 -496
  626. package/dist/progress-Bek_GyWS.js +0 -133
  627. package/dist/prompt-style-lu0clOOE.js +0 -9
  628. package/dist/pw-ai-BLVMuSLv.js +0 -1867
  629. package/dist/pw-ai-DZJWEF_f.js +0 -1865
  630. package/dist/pw-ai-dzf-ptcn.js +0 -1868
  631. package/dist/qmd-manager-Cur_Ekn0.js +0 -937
  632. package/dist/qmd-manager-DNAUuwjK.js +0 -938
  633. package/dist/qmd-manager-DepEoASu.js +0 -935
  634. package/dist/register.agent-CSWvzOkR.js +0 -265
  635. package/dist/register.agent-UeH2NXmH.js +0 -1003
  636. package/dist/register.anima-DOdee0dh.js +0 -193
  637. package/dist/register.anima-HHDWsz6r.js +0 -193
  638. package/dist/register.configure-CSJFxdz9.js +0 -103
  639. package/dist/register.configure-D84Fvcz4.js +0 -101
  640. package/dist/register.maintenance-B3pvNbZb.js +0 -543
  641. package/dist/register.maintenance-BKVOwkw6.js +0 -543
  642. package/dist/register.message-BAO6CPl2.js +0 -657
  643. package/dist/register.message-OXoOKE_6.js +0 -660
  644. package/dist/register.onboard-BK_ixVmD.js +0 -170
  645. package/dist/register.onboard-cfCaPx6j.js +0 -170
  646. package/dist/register.setup-BGfDnzph.js +0 -175
  647. package/dist/register.setup-Y-Q74M-0.js +0 -175
  648. package/dist/register.status-health-sessions-CT14eitH.js +0 -142
  649. package/dist/register.status-health-sessions-TfZMzAUn.js +0 -313
  650. package/dist/register.subclis-BZwdlNHC.js +0 -255
  651. package/dist/reply-mlsExaZm.js +0 -32212
  652. package/dist/reply-prefix-B0CfR4bM.js +0 -100
  653. package/dist/reply-prefix-w4a39ybC.js +0 -100
  654. package/dist/reply-qalRISe_.js +0 -32212
  655. package/dist/routes-CENsHJyg.js +0 -1820
  656. package/dist/routes-DO0HqW2e.js +0 -1820
  657. package/dist/rpc-C0pjNhBi.js +0 -70
  658. package/dist/rpc-DZ44PIXE.js +0 -70
  659. package/dist/run-main-BMpKw8Mp.js +0 -371
  660. package/dist/runtime-guard-BSUFiAQV.js +0 -60
  661. package/dist/sandbox-BIGfMYEI.js +0 -858
  662. package/dist/sandbox-DxP3IpUP.js +0 -859
  663. package/dist/sandbox-cli-DtLGH8sL.js +0 -461
  664. package/dist/sandbox-cli-_Tg7lfJ_.js +0 -458
  665. package/dist/security-cli-BRwgbedo.js +0 -462
  666. package/dist/security-cli-D3bSuyZt.js +0 -465
  667. package/dist/server-context-49XFFxFg.js +0 -824
  668. package/dist/server-context-LrlgrZzS.js +0 -824
  669. package/dist/server-node-events-Dm52i7NW.js +0 -231
  670. package/dist/server-node-events-QX523UyF.js +0 -233
  671. package/dist/service-BNVpYcQe.js +0 -642
  672. package/dist/service-D56aMXUB.js +0 -642
  673. package/dist/service-audit-D0X_XAB2.js +0 -488
  674. package/dist/service-audit-qmf6XMmP.js +0 -488
  675. package/dist/session-CrQQLLhx.js +0 -179
  676. package/dist/session-LocsOOWJ.js +0 -181
  677. package/dist/session-Vlce2BAT.js +0 -181
  678. package/dist/session-cost-usage-BwiTZuKl.js +0 -600
  679. package/dist/session-cost-usage-DT9YNXTJ.js +0 -600
  680. package/dist/sessions-BfV53TbG.js +0 -1296
  681. package/dist/sessions-BimpX_km.js +0 -180
  682. package/dist/sessions-DcXpzig0.js +0 -1296
  683. package/dist/sessions-Wd18dukK.js +0 -2038
  684. package/dist/shared-Bsr69u_7.js +0 -77
  685. package/dist/shared-Cgly1vPb.js +0 -66
  686. package/dist/shared-JOo05hST.js +0 -66
  687. package/dist/shared-f7dvQsi7.js +0 -77
  688. package/dist/skill-scanner-CkaVLABv.js +0 -263
  689. package/dist/skills-B-G7UHOa.js +0 -808
  690. package/dist/skills-B5LQx4lT.js +0 -807
  691. package/dist/skills-cli-DUGe2ZWW.js +0 -286
  692. package/dist/skills-cli-DtOk0bvK.js +0 -289
  693. package/dist/skills-status-Clq9ZnYu.js +0 -166
  694. package/dist/skills-status-JQluhU-P.js +0 -166
  695. package/dist/sqlite-BukcjdJa.js +0 -321
  696. package/dist/sqlite-CGcOZZ0C.js +0 -368
  697. package/dist/sqlite-Ck6f9KWc.js +0 -453
  698. package/dist/start--xmSFepB.js +0 -372
  699. package/dist/start-BdlZbqrr.js +0 -371
  700. package/dist/status-BgoeFm6g.js +0 -2137
  701. package/dist/status-BjjDrUq7.js +0 -27
  702. package/dist/status-Ct0DgOZ-.js +0 -2132
  703. package/dist/status-RA_uNmK0.js +0 -27
  704. package/dist/status.update-BjOH3GlS.js +0 -79
  705. package/dist/status.update-DLU1qBf0.js +0 -79
  706. package/dist/subagent-registry-9RLdKxES.js +0 -2760
  707. package/dist/subagent-registry-Byuex3zp.js +0 -2759
  708. package/dist/subagent-registry-DOBunBYS.js +0 -14
  709. package/dist/subsystem-Dowf8fSU.js +0 -860
  710. package/dist/system-cli-C5oBpzni.js +0 -79
  711. package/dist/system-cli-DXNKD_Id.js +0 -82
  712. package/dist/systemd-BSrHDyeU.js +0 -452
  713. package/dist/systemd-By5xdSB4.js +0 -452
  714. package/dist/systemd-hints-BtjL_5Rh.js +0 -36
  715. package/dist/systemd-hints-sJmr6cjb.js +0 -36
  716. package/dist/systemd-linger-CTmV2Gci.js +0 -75
  717. package/dist/systemd-linger-CmyqQkeC.js +0 -75
  718. package/dist/table-BL0lJzsm.js +0 -279
  719. package/dist/table-DoiRPsn0.js +0 -279
  720. package/dist/timeout-CswI_K-U.js +0 -232
  721. package/dist/tokens-C-X7wDKj.js +0 -14
  722. package/dist/tokens-DkvqA72p.js +0 -14
  723. package/dist/trash-BJLK1vMn.js +0 -23
  724. package/dist/trash-_x5UZ94k.js +0 -23
  725. package/dist/tui-BHjxDFZC.js +0 -3894
  726. package/dist/tui-CgOocwN8.js +0 -3894
  727. package/dist/tui-cli-5ANH8dE5.js +0 -47
  728. package/dist/tui-cli-BQ4P-JW_.js +0 -50
  729. package/dist/update-LFgxHHPd.js +0 -317
  730. package/dist/update-TxptCqk7.js +0 -317
  731. package/dist/update-check-CWc7YXmc.js +0 -400
  732. package/dist/update-check-IhlWaui6.js +0 -400
  733. package/dist/update-cli-PtXU62w7.js +0 -1105
  734. package/dist/update-cli-Va0EtETG.js +0 -1105
  735. package/dist/update-runner-BLeKFkiB.js +0 -894
  736. package/dist/update-runner-Iuzpc-_y.js +0 -894
  737. package/dist/usage-ApGvBLVg.js +0 -4516
  738. package/dist/utils-Bsw__U-F.js +0 -243
  739. package/dist/web-B6_Ky60G.js +0 -63
  740. package/dist/web-EZLQEWXY.js +0 -46842
  741. package/dist/web-pec8YJUX.js +0 -2203
  742. package/dist/webhooks-cli-BYQKTHTp.js +0 -319
  743. package/dist/webhooks-cli-C2_xtsUQ.js +0 -316
  744. package/dist/whatsapp-actions-C72VCq8f.js +0 -49
  745. package/dist/whatsapp-actions-Ck9Uv0Nw.js +0 -45
  746. package/dist/whatsapp-actions-D0reTj2k.js +0 -53
  747. package/dist/widearea-dns-B6ocX23x.js +0 -127
  748. package/dist/widearea-dns-NsEUNYwz.js +0 -127
  749. package/dist/workspace-Dcfoy5JJ.js +0 -649
  750. package/dist/ws-log-N8R5MvGE.js +0 -267
  751. package/dist/ws-log-gwFxPxj5.js +0 -267
  752. /package/dist/{auto-update-CUeF99gI.js → auto-update-CpF0fycd.js} +0 -0
  753. /package/dist/{auto-update-cgkp9ZTJ.js → auto-update-DNWdO7uF.js} +0 -0
  754. /package/dist/{brew-CVZkr0GU.js → brew-nqf_MiE4.js} +0 -0
  755. /package/dist/{budget-DxYQSekw.js → budget-CPedI-qW.js} +0 -0
  756. /package/dist/{budget-BWBp8Res.js → budget-CRpvqDRX.js} +0 -0
  757. /package/dist/{cli-utils-DtAxdCte.js → cli-utils-C1YHVD4o.js} +0 -0
  758. /package/dist/{command-options-CSbuuqHr.js → command-options-BbponVnw.js} +0 -0
  759. /package/dist/{command-options-Cp1tf96a.js → command-options-s0gnvXnS.js} +0 -0
  760. /package/dist/{constants-O8yBqCBv.js → constants-Dhb6zSIV.js} +0 -0
  761. /package/dist/{dangerous-tools-5ObDWy1N.js → dangerous-tools-DGTtJ_JR.js} +0 -0
  762. /package/dist/{dangerous-tools-Jwr7jqNw.js → dangerous-tools-DxrfTOfT.js} +0 -0
  763. /package/dist/{delivery-queue-B6IHz4Ry.js → delivery-queue-Bxm0nzw7.js} +0 -0
  764. /package/dist/{display-BDOsXu8F.js → display-Jy3UdGzA.js} +0 -0
  765. /package/dist/{errors-CHow2wtt.js → errors-CKaCqKga.js} +0 -0
  766. /package/dist/{exec-BizYYQgP.js → exec-DDmuVVNq.js} +0 -0
  767. /package/dist/{format-Mq6iU0_5.js → format-ByEjgyTF.js} +0 -0
  768. /package/dist/{format-duration-DhWzz_5b.js → format-duration-Aaj5tjJd.js} +0 -0
  769. /package/dist/{format-relative-C6kUHuOj.js → format-relative-79_Y1n2Y.js} +0 -0
  770. /package/dist/{help-format-DUBI91Ti.js → help-format-BMKzarov.js} +0 -0
  771. /package/dist/{helpers-eJFa4K6r.js → helpers-DpEB9Mh0.js} +0 -0
  772. /package/dist/{helpers-DLgbkcEn.js → helpers-FMld9sBT.js} +0 -0
  773. /package/dist/{input-provenance-DJBdpeKk.js → input-provenance-Cy_KnBlP.js} +0 -0
  774. /package/dist/{is-main-Dt9DTcH1.js → is-main-yjaVwMtJ.js} +0 -0
  775. /package/dist/{loader-l2OBdJ8x.js → loader-Br7Vr0zn.js} +0 -0
  776. /package/dist/{loader-BoYxRfcW.js → loader-CkmOrXcC.js} +0 -0
  777. /package/dist/{logging-BdnOSVPD.js → logging-CY-Q5cwf.js} +0 -0
  778. /package/dist/{message-channel-w4F2b2F6.js → message-channel-dua8OOGJ.js} +0 -0
  779. /package/dist/{mime-B1ZoR53M.js → mime-CBg4KybI.js} +0 -0
  780. /package/dist/{model-param-b-DPwyNGn8.js → model-param-b-DW9f0NN8.js} +0 -0
  781. /package/dist/{node-match-8XZnaid6.js → node-match-BV8bTBd4.js} +0 -0
  782. /package/dist/{normalize-GDK8JTNW.js → normalize-_lmlBOW9.js} +0 -0
  783. /package/dist/{openclaw-root-C85WMnVV.js → openclaw-root-JPvmPTf7.js} +0 -0
  784. /package/dist/{outbound-send-deps-ANnAhImn.js → outbound-send-deps-BfUvuWGa.js} +0 -0
  785. /package/dist/{parse-6-2MDhdT.js → parse-CZRwKocn.js} +0 -0
  786. /package/dist/{parse-log-line-Bqh1SSzC.js → parse-log-line-CvrZEK6A.js} +0 -0
  787. /package/dist/{parse-log-line-DUZCjXbl.js → parse-log-line-mLdat0AH.js} +0 -0
  788. /package/dist/{parse-port-BKB9Exlg.js → parse-port-BSOOdo7I.js} +0 -0
  789. /package/dist/{parse-port-DrfvwwiL.js → parse-port-Y0NK62x1.js} +0 -0
  790. /package/dist/{parse-timeout-Di_tcEmi.js → parse-timeout-DVPQ3n9j.js} +0 -0
  791. /package/dist/{paths-DcVEkYX5.js → paths-DHjlJ6cn.js} +0 -0
  792. /package/dist/{pi-model-discovery-DsRqYJLy.js → pi-model-discovery-DzEIEgHL.js} +0 -0
  793. /package/dist/{plugins-CDJw924T.js → plugins-D6PBOdkn.js} +0 -0
  794. /package/dist/{program-context-Bvn8046-.js → program-context-Q1hkT73c.js} +0 -0
  795. /package/dist/{progress-CbZ2D53A.js → progress-C9Ha1NJh.js} +0 -0
  796. /package/dist/{prompt-style-DKy6qQxR.js → prompt-style-DQi8j03a.js} +0 -0
  797. /package/dist/{prompts-BI__va99.js → prompts-BEHxUC3w.js} +0 -0
  798. /package/dist/{prompts-_dDWkCAz.js → prompts-CSOhuiqe.js} +0 -0
  799. /package/dist/{queue-D_u34pbL.js → queue-BJGo7kAB.js} +0 -0
  800. /package/dist/{queue-PG591iID.js → queue-DYgUbdoq.js} +0 -0
  801. /package/dist/{redact-ClVwO7Nn.js → redact-CyKvdFrg.js} +0 -0
  802. /package/dist/{registry-Bs_DJK9E.js → registry-C5MAYD4V.js} +0 -0
  803. /package/dist/{registry-D_zlP1U-.js → registry-CRrXXVs0.js} +0 -0
  804. /package/dist/{requirements-BzZxj2Wu.js → requirements-CGkxTCu4.js} +0 -0
  805. /package/dist/{requirements-DIW1svgA.js → requirements-CIDaOcbO.js} +0 -0
  806. /package/dist/{runtime-guard-DeOXA_86.js → runtime-guard-nL3Lp8T-.js} +0 -0
  807. /package/dist/{secret-equal-Dghy3xsA.js → secret-equal-DJpmLXlG.js} +0 -0
  808. /package/dist/{send-BhAfdGII.js → send-CTcxgDDU.js} +0 -0
  809. /package/dist/{send-ga9udK1_.js → send-DPezUR3-.js} +0 -0
  810. /package/dist/{send-C2t9xpXI.js → send-DZQTaG7-.js} +0 -0
  811. /package/dist/{send-DigO-i9j.js → send-VDff2gra.js} +0 -0
  812. /package/dist/{send-Dz2BDHll.js → send-bgQNV8d1.js} +0 -0
  813. /package/dist/{session-key-BGiG_JcT.js → session-key-CQT-NR6w.js} +0 -0
  814. /package/dist/{shell-argv-CAq1mLa2.js → shell-argv-n9IueeJQ.js} +0 -0
  815. /package/dist/{skill-scanner-Coo4QoCd.js → skill-scanner-o6NgVMD9.js} +0 -0
  816. /package/dist/{status-CMnlcBVc.js → status-C53kTIXF.js} +0 -0
  817. /package/dist/{status-tDZPwewW.js → status-CZDDA_Sy.js} +0 -0
  818. /package/dist/{system-run-command-X9lDJIy0.js → system-run-command-BCjUffN9.js} +0 -0
  819. /package/dist/{system-run-command-DGk7dwQP.js → system-run-command-CqAqKL9K.js} +0 -0
  820. /package/dist/{tailnet-CuiNECdL.js → tailnet-Ciwjv243.js} +0 -0
  821. /package/dist/{templates-CeYJjVzw.js → templates-37RKpACb.js} +0 -0
  822. /package/dist/{templates-I3Z0xplD.js → templates-DPalk30o.js} +0 -0
  823. /package/dist/{thinking-BXEswx1X.js → thinking-2hxwmvTl.js} +0 -0
  824. /package/dist/{transcript-events-C1hdue6u.js → transcript-events-Bp7fGnwv.js} +0 -0
  825. /package/dist/{transcript-tools-DuyYOkUq.js → transcript-tools-D4Lbxlka.js} +0 -0
  826. /package/dist/{usage-format-BAirWUSO.js → usage-format-6Uar63S0.js} +0 -0
  827. /package/dist/{utils-C9sj30YY.js → utils-DT8uXjFS.js} +0 -0
  828. /package/dist/{wsl-CqyuRvtM.js → wsl-CrPvx2kZ.js} +0 -0
  829. /package/dist/{wsl-ymJYvc9Q.js → wsl-UvJ5dHah.js} +0 -0
@@ -0,0 +1,808 @@
1
+ import { t as createSubsystemLogger } from "./subsystem-DfKstnEK.js";
2
+ import { b as resolveUserPath, t as CONFIG_DIR } from "./utils-DZ8pnOD5.js";
3
+ import { n as resolveAnimaPackageRootSync } from "./openclaw-root-0yHXtO35.js";
4
+ import { t as parseBooleanValue } from "./boolean-Wzu0-e0P.js";
5
+ import { a as MANIFEST_KEY, d as resolveMemorySlotDecision, i as LEGACY_MANIFEST_KEYS, l as normalizePluginsConfig, t as loadPluginManifestRegistry, u as resolveEnableState } from "./manifest-registry-kHX_MFa1.js";
6
+ import { fileURLToPath } from "node:url";
7
+ import fs from "node:fs";
8
+ import os from "node:os";
9
+ import path from "node:path";
10
+ import JSON5 from "json5";
11
+ import fs$1 from "node:fs/promises";
12
+ import YAML from "yaml";
13
+ import { formatSkillsForPrompt, loadSkillsFromDir } from "@mariozechner/pi-coding-agent";
14
+
15
+ //#region src/shared/config-eval.ts
16
+ function isTruthy(value) {
17
+ if (value === void 0 || value === null) return false;
18
+ if (typeof value === "boolean") return value;
19
+ if (typeof value === "number") return value !== 0;
20
+ if (typeof value === "string") return value.trim().length > 0;
21
+ return true;
22
+ }
23
+ function resolveConfigPath(config, pathStr) {
24
+ const parts = pathStr.split(".").filter(Boolean);
25
+ let current = config;
26
+ for (const part of parts) {
27
+ if (typeof current !== "object" || current === null) return;
28
+ current = current[part];
29
+ }
30
+ return current;
31
+ }
32
+ function isConfigPathTruthyWithDefaults(config, pathStr, defaults) {
33
+ const value = resolveConfigPath(config, pathStr);
34
+ if (value === void 0 && pathStr in defaults) return defaults[pathStr] ?? false;
35
+ return isTruthy(value);
36
+ }
37
+ function resolveRuntimePlatform() {
38
+ return process.platform;
39
+ }
40
+ function windowsPathExtensions() {
41
+ const raw = process.env.PATHEXT;
42
+ return ["", ...(raw !== void 0 ? raw.split(";").map((v) => v.trim()) : [
43
+ ".EXE",
44
+ ".CMD",
45
+ ".BAT",
46
+ ".COM"
47
+ ]).filter(Boolean)];
48
+ }
49
+ let cachedHasBinaryPath;
50
+ let cachedHasBinaryPathExt;
51
+ const hasBinaryCache = /* @__PURE__ */ new Map();
52
+ function hasBinary(bin) {
53
+ const pathEnv = process.env.PATH ?? "";
54
+ const pathExt = process.platform === "win32" ? process.env.PATHEXT ?? "" : "";
55
+ if (cachedHasBinaryPath !== pathEnv || cachedHasBinaryPathExt !== pathExt) {
56
+ cachedHasBinaryPath = pathEnv;
57
+ cachedHasBinaryPathExt = pathExt;
58
+ hasBinaryCache.clear();
59
+ }
60
+ if (hasBinaryCache.has(bin)) return hasBinaryCache.get(bin);
61
+ const parts = pathEnv.split(path.delimiter).filter(Boolean);
62
+ const extensions = process.platform === "win32" ? windowsPathExtensions() : [""];
63
+ for (const part of parts) for (const ext of extensions) {
64
+ const candidate = path.join(part, bin + ext);
65
+ try {
66
+ fs.accessSync(candidate, fs.constants.X_OK);
67
+ hasBinaryCache.set(bin, true);
68
+ return true;
69
+ } catch {}
70
+ }
71
+ hasBinaryCache.set(bin, false);
72
+ return false;
73
+ }
74
+
75
+ //#endregion
76
+ //#region src/markdown/frontmatter.ts
77
+ function stripQuotes(value) {
78
+ if (value.startsWith("\"") && value.endsWith("\"") || value.startsWith("'") && value.endsWith("'")) return value.slice(1, -1);
79
+ return value;
80
+ }
81
+ function coerceFrontmatterValue(value) {
82
+ if (value === null || value === void 0) return;
83
+ if (typeof value === "string") return value.trim();
84
+ if (typeof value === "number" || typeof value === "boolean") return String(value);
85
+ if (typeof value === "object") try {
86
+ return JSON.stringify(value);
87
+ } catch {
88
+ return;
89
+ }
90
+ }
91
+ function parseYamlFrontmatter(block) {
92
+ try {
93
+ const parsed = YAML.parse(block);
94
+ if (!parsed || typeof parsed !== "object" || Array.isArray(parsed)) return null;
95
+ const result = {};
96
+ for (const [rawKey, value] of Object.entries(parsed)) {
97
+ const key = rawKey.trim();
98
+ if (!key) continue;
99
+ const coerced = coerceFrontmatterValue(value);
100
+ if (coerced === void 0) continue;
101
+ result[key] = coerced;
102
+ }
103
+ return result;
104
+ } catch {
105
+ return null;
106
+ }
107
+ }
108
+ function extractMultiLineValue(lines, startIndex) {
109
+ const match = lines[startIndex].match(/^([\w-]+):\s*(.*)$/);
110
+ if (!match) return {
111
+ value: "",
112
+ linesConsumed: 1
113
+ };
114
+ const inlineValue = match[2].trim();
115
+ if (inlineValue) return {
116
+ value: inlineValue,
117
+ linesConsumed: 1
118
+ };
119
+ const valueLines = [];
120
+ let i = startIndex + 1;
121
+ while (i < lines.length) {
122
+ const line = lines[i];
123
+ if (line.length > 0 && !line.startsWith(" ") && !line.startsWith(" ")) break;
124
+ valueLines.push(line);
125
+ i++;
126
+ }
127
+ return {
128
+ value: valueLines.join("\n").trim(),
129
+ linesConsumed: i - startIndex
130
+ };
131
+ }
132
+ function parseLineFrontmatter(block) {
133
+ const frontmatter = {};
134
+ const lines = block.split("\n");
135
+ let i = 0;
136
+ while (i < lines.length) {
137
+ const match = lines[i].match(/^([\w-]+):\s*(.*)$/);
138
+ if (!match) {
139
+ i++;
140
+ continue;
141
+ }
142
+ const key = match[1];
143
+ const inlineValue = match[2].trim();
144
+ if (!key) {
145
+ i++;
146
+ continue;
147
+ }
148
+ if (!inlineValue && i + 1 < lines.length) {
149
+ const nextLine = lines[i + 1];
150
+ if (nextLine.startsWith(" ") || nextLine.startsWith(" ")) {
151
+ const { value, linesConsumed } = extractMultiLineValue(lines, i);
152
+ if (value) frontmatter[key] = value;
153
+ i += linesConsumed;
154
+ continue;
155
+ }
156
+ }
157
+ const value = stripQuotes(inlineValue);
158
+ if (value) frontmatter[key] = value;
159
+ i++;
160
+ }
161
+ return frontmatter;
162
+ }
163
+ function parseFrontmatterBlock(content) {
164
+ const normalized = content.replace(/\r\n/g, "\n").replace(/\r/g, "\n");
165
+ if (!normalized.startsWith("---")) return {};
166
+ const endIndex = normalized.indexOf("\n---", 3);
167
+ if (endIndex === -1) return {};
168
+ const block = normalized.slice(4, endIndex);
169
+ const lineParsed = parseLineFrontmatter(block);
170
+ const yamlParsed = parseYamlFrontmatter(block);
171
+ if (yamlParsed === null) return lineParsed;
172
+ const merged = { ...yamlParsed };
173
+ for (const [key, value] of Object.entries(lineParsed)) if (value.startsWith("{") || value.startsWith("[")) merged[key] = value;
174
+ return merged;
175
+ }
176
+
177
+ //#endregion
178
+ //#region src/shared/frontmatter.ts
179
+ function normalizeStringList(input) {
180
+ if (!input) return [];
181
+ if (Array.isArray(input)) return input.map((value) => String(value).trim()).filter(Boolean);
182
+ if (typeof input === "string") return input.split(",").map((value) => value.trim()).filter(Boolean);
183
+ return [];
184
+ }
185
+ function getFrontmatterString(frontmatter, key) {
186
+ const raw = frontmatter[key];
187
+ return typeof raw === "string" ? raw : void 0;
188
+ }
189
+ function parseFrontmatterBool(value, fallback) {
190
+ const parsed = parseBooleanValue(value);
191
+ return parsed === void 0 ? fallback : parsed;
192
+ }
193
+ function resolveAnimaManifestBlock(params) {
194
+ const raw = getFrontmatterString(params.frontmatter, params.key ?? "metadata");
195
+ if (!raw) return;
196
+ try {
197
+ const parsed = JSON5.parse(raw);
198
+ if (!parsed || typeof parsed !== "object") return;
199
+ const manifestKeys = [MANIFEST_KEY, ...LEGACY_MANIFEST_KEYS];
200
+ for (const key of manifestKeys) {
201
+ const candidate = parsed[key];
202
+ if (candidate && typeof candidate === "object") return candidate;
203
+ }
204
+ return;
205
+ } catch {
206
+ return;
207
+ }
208
+ }
209
+
210
+ //#endregion
211
+ //#region src/agents/skills/frontmatter.ts
212
+ function parseFrontmatter(content) {
213
+ return parseFrontmatterBlock(content);
214
+ }
215
+ function parseInstallSpec(input) {
216
+ if (!input || typeof input !== "object") return;
217
+ const raw = input;
218
+ const kind = (typeof raw.kind === "string" ? raw.kind : typeof raw.type === "string" ? raw.type : "").trim().toLowerCase();
219
+ if (kind !== "brew" && kind !== "node" && kind !== "go" && kind !== "uv" && kind !== "download") return;
220
+ const spec = { kind };
221
+ if (typeof raw.id === "string") spec.id = raw.id;
222
+ if (typeof raw.label === "string") spec.label = raw.label;
223
+ const bins = normalizeStringList(raw.bins);
224
+ if (bins.length > 0) spec.bins = bins;
225
+ const osList = normalizeStringList(raw.os);
226
+ if (osList.length > 0) spec.os = osList;
227
+ if (typeof raw.formula === "string") spec.formula = raw.formula;
228
+ if (typeof raw.package === "string") spec.package = raw.package;
229
+ if (typeof raw.module === "string") spec.module = raw.module;
230
+ if (typeof raw.url === "string") spec.url = raw.url;
231
+ if (typeof raw.archive === "string") spec.archive = raw.archive;
232
+ if (typeof raw.extract === "boolean") spec.extract = raw.extract;
233
+ if (typeof raw.stripComponents === "number") spec.stripComponents = raw.stripComponents;
234
+ if (typeof raw.targetDir === "string") spec.targetDir = raw.targetDir;
235
+ return spec;
236
+ }
237
+ function resolveAnimaMetadata(frontmatter) {
238
+ const metadataObj = resolveAnimaManifestBlock({ frontmatter });
239
+ if (!metadataObj) return;
240
+ const requiresRaw = typeof metadataObj.requires === "object" && metadataObj.requires !== null ? metadataObj.requires : void 0;
241
+ const install = (Array.isArray(metadataObj.install) ? metadataObj.install : []).map((entry) => parseInstallSpec(entry)).filter((entry) => Boolean(entry));
242
+ const osRaw = normalizeStringList(metadataObj.os);
243
+ return {
244
+ always: typeof metadataObj.always === "boolean" ? metadataObj.always : void 0,
245
+ emoji: typeof metadataObj.emoji === "string" ? metadataObj.emoji : void 0,
246
+ homepage: typeof metadataObj.homepage === "string" ? metadataObj.homepage : void 0,
247
+ skillKey: typeof metadataObj.skillKey === "string" ? metadataObj.skillKey : void 0,
248
+ primaryEnv: typeof metadataObj.primaryEnv === "string" ? metadataObj.primaryEnv : void 0,
249
+ os: osRaw.length > 0 ? osRaw : void 0,
250
+ requires: requiresRaw ? {
251
+ bins: normalizeStringList(requiresRaw.bins),
252
+ anyBins: normalizeStringList(requiresRaw.anyBins),
253
+ env: normalizeStringList(requiresRaw.env),
254
+ config: normalizeStringList(requiresRaw.config)
255
+ } : void 0,
256
+ install: install.length > 0 ? install : void 0
257
+ };
258
+ }
259
+ function resolveSkillInvocationPolicy(frontmatter) {
260
+ return {
261
+ userInvocable: parseFrontmatterBool(getFrontmatterString(frontmatter, "user-invocable"), true),
262
+ disableModelInvocation: parseFrontmatterBool(getFrontmatterString(frontmatter, "disable-model-invocation"), false)
263
+ };
264
+ }
265
+ function resolveSkillKey(skill, entry) {
266
+ return entry?.metadata?.skillKey ?? skill.name;
267
+ }
268
+
269
+ //#endregion
270
+ //#region src/agents/skills/config.ts
271
+ const DEFAULT_CONFIG_VALUES = {
272
+ "browser.enabled": true,
273
+ "browser.evaluateEnabled": true
274
+ };
275
+ function isConfigPathTruthy(config, pathStr) {
276
+ return isConfigPathTruthyWithDefaults(config, pathStr, DEFAULT_CONFIG_VALUES);
277
+ }
278
+ function resolveSkillConfig(config, skillKey) {
279
+ const skills = config?.skills?.entries;
280
+ if (!skills || typeof skills !== "object") return;
281
+ const entry = skills[skillKey];
282
+ if (!entry || typeof entry !== "object") return;
283
+ return entry;
284
+ }
285
+ function normalizeAllowlist(input) {
286
+ if (!input) return;
287
+ if (!Array.isArray(input)) return;
288
+ const normalized = input.map((entry) => String(entry).trim()).filter(Boolean);
289
+ return normalized.length > 0 ? normalized : void 0;
290
+ }
291
+ const BUNDLED_SOURCES = new Set(["anima-bundled"]);
292
+ function isBundledSkill(entry) {
293
+ return BUNDLED_SOURCES.has(entry.skill.source);
294
+ }
295
+ function resolveBundledAllowlist(config) {
296
+ return normalizeAllowlist(config?.skills?.allowBundled);
297
+ }
298
+ function isBundledSkillAllowed(entry, allowlist) {
299
+ if (!allowlist || allowlist.length === 0) return true;
300
+ if (!isBundledSkill(entry)) return true;
301
+ const key = resolveSkillKey(entry.skill, entry);
302
+ return allowlist.includes(key) || allowlist.includes(entry.skill.name);
303
+ }
304
+ function shouldIncludeSkill(params) {
305
+ const { entry, config, eligibility } = params;
306
+ const skillConfig = resolveSkillConfig(config, resolveSkillKey(entry.skill, entry));
307
+ const allowBundled = normalizeAllowlist(config?.skills?.allowBundled);
308
+ const osList = entry.metadata?.os ?? [];
309
+ const remotePlatforms = eligibility?.remote?.platforms ?? [];
310
+ if (skillConfig?.enabled === false) return false;
311
+ if (!isBundledSkillAllowed(entry, allowBundled)) return false;
312
+ if (osList.length > 0 && !osList.includes(resolveRuntimePlatform()) && !remotePlatforms.some((platform) => osList.includes(platform))) return false;
313
+ if (entry.metadata?.always === true) return true;
314
+ const requiredBins = entry.metadata?.requires?.bins ?? [];
315
+ if (requiredBins.length > 0) for (const bin of requiredBins) {
316
+ if (hasBinary(bin)) continue;
317
+ if (eligibility?.remote?.hasBin?.(bin)) continue;
318
+ return false;
319
+ }
320
+ const requiredAnyBins = entry.metadata?.requires?.anyBins ?? [];
321
+ if (requiredAnyBins.length > 0) {
322
+ if (!(requiredAnyBins.some((bin) => hasBinary(bin)) || eligibility?.remote?.hasAnyBin?.(requiredAnyBins))) return false;
323
+ }
324
+ const requiredEnv = entry.metadata?.requires?.env ?? [];
325
+ if (requiredEnv.length > 0) for (const envName of requiredEnv) {
326
+ if (process.env[envName]) continue;
327
+ if (skillConfig?.env?.[envName]) continue;
328
+ if (skillConfig?.apiKey && entry.metadata?.primaryEnv === envName) continue;
329
+ return false;
330
+ }
331
+ const requiredConfig = entry.metadata?.requires?.config ?? [];
332
+ if (requiredConfig.length > 0) {
333
+ for (const configPath of requiredConfig) if (!isConfigPathTruthy(config, configPath)) return false;
334
+ }
335
+ return true;
336
+ }
337
+
338
+ //#endregion
339
+ //#region src/agents/sandbox-paths.ts
340
+ const UNICODE_SPACES = /[\u00A0\u2000-\u200A\u202F\u205F\u3000]/g;
341
+ const HTTP_URL_RE = /^https?:\/\//i;
342
+ const DATA_URL_RE = /^data:/i;
343
+ function normalizeUnicodeSpaces(str) {
344
+ return str.replace(UNICODE_SPACES, " ");
345
+ }
346
+ function expandPath(filePath) {
347
+ const normalized = normalizeUnicodeSpaces(filePath);
348
+ if (normalized === "~") return os.homedir();
349
+ if (normalized.startsWith("~/")) return os.homedir() + normalized.slice(1);
350
+ return normalized;
351
+ }
352
+ function resolveToCwd(filePath, cwd) {
353
+ const expanded = expandPath(filePath);
354
+ if (path.isAbsolute(expanded)) return expanded;
355
+ return path.resolve(cwd, expanded);
356
+ }
357
+ function resolveSandboxInputPath(filePath, cwd) {
358
+ return resolveToCwd(filePath, cwd);
359
+ }
360
+ function resolveSandboxPath(params) {
361
+ const resolved = resolveSandboxInputPath(params.filePath, params.cwd);
362
+ const rootResolved = path.resolve(params.root);
363
+ const relative = path.relative(rootResolved, resolved);
364
+ if (!relative || relative === "") return {
365
+ resolved,
366
+ relative: ""
367
+ };
368
+ if (relative.startsWith("..") || path.isAbsolute(relative)) throw new Error(`Path escapes sandbox root (${shortPath(rootResolved)}): ${params.filePath}`);
369
+ return {
370
+ resolved,
371
+ relative
372
+ };
373
+ }
374
+ async function assertSandboxPath(params) {
375
+ const resolved = resolveSandboxPath(params);
376
+ await assertNoSymlinkEscape(resolved.relative, path.resolve(params.root), { allowFinalSymlink: params.allowFinalSymlink });
377
+ return resolved;
378
+ }
379
+ function assertMediaNotDataUrl(media) {
380
+ const raw = media.trim();
381
+ if (DATA_URL_RE.test(raw)) throw new Error("data: URLs are not supported for media. Use buffer instead.");
382
+ }
383
+ async function resolveSandboxedMediaSource(params) {
384
+ const raw = params.media.trim();
385
+ if (!raw) return raw;
386
+ if (HTTP_URL_RE.test(raw)) return raw;
387
+ let candidate = raw;
388
+ if (/^file:\/\//i.test(candidate)) try {
389
+ candidate = fileURLToPath(candidate);
390
+ } catch {
391
+ throw new Error(`Invalid file:// URL for sandboxed media: ${raw}`);
392
+ }
393
+ return (await assertSandboxPath({
394
+ filePath: candidate,
395
+ cwd: params.sandboxRoot,
396
+ root: params.sandboxRoot
397
+ })).resolved;
398
+ }
399
+ async function assertNoSymlinkEscape(relative, root, options) {
400
+ if (!relative) return;
401
+ const rootReal = await tryRealpath(root);
402
+ const parts = relative.split(path.sep).filter(Boolean);
403
+ let current = root;
404
+ for (let idx = 0; idx < parts.length; idx += 1) {
405
+ const part = parts[idx];
406
+ const isLast = idx === parts.length - 1;
407
+ current = path.join(current, part);
408
+ try {
409
+ if ((await fs$1.lstat(current)).isSymbolicLink()) {
410
+ if (options?.allowFinalSymlink && isLast) return;
411
+ const target = await tryRealpath(current);
412
+ if (!isPathInside(rootReal, target)) throw new Error(`Symlink escapes sandbox root (${shortPath(rootReal)}): ${shortPath(current)}`);
413
+ current = target;
414
+ }
415
+ } catch (err) {
416
+ if (err.code === "ENOENT") return;
417
+ throw err;
418
+ }
419
+ }
420
+ }
421
+ async function tryRealpath(value) {
422
+ try {
423
+ return await fs$1.realpath(value);
424
+ } catch {
425
+ return path.resolve(value);
426
+ }
427
+ }
428
+ function isPathInside(root, target) {
429
+ const relative = path.relative(root, target);
430
+ if (!relative || relative === "") return true;
431
+ return !(relative.startsWith("..") || path.isAbsolute(relative));
432
+ }
433
+ function shortPath(value) {
434
+ if (value.startsWith(os.homedir())) return `~${value.slice(os.homedir().length)}`;
435
+ return value;
436
+ }
437
+
438
+ //#endregion
439
+ //#region src/agents/skills/bundled-dir.ts
440
+ function looksLikeSkillsDir(dir) {
441
+ try {
442
+ const entries = fs.readdirSync(dir, { withFileTypes: true });
443
+ for (const entry of entries) {
444
+ if (entry.name.startsWith(".")) continue;
445
+ const fullPath = path.join(dir, entry.name);
446
+ if (entry.isFile() && entry.name.endsWith(".md")) return true;
447
+ if (entry.isDirectory()) {
448
+ if (fs.existsSync(path.join(fullPath, "SKILL.md"))) return true;
449
+ }
450
+ }
451
+ } catch {
452
+ return false;
453
+ }
454
+ return false;
455
+ }
456
+ function resolveBundledSkillsDir(opts = {}) {
457
+ const override = process.env.ANIMA_BUNDLED_SKILLS_DIR?.trim();
458
+ if (override) return override;
459
+ try {
460
+ const execPath = opts.execPath ?? process.execPath;
461
+ const execDir = path.dirname(execPath);
462
+ const sibling = path.join(execDir, "skills");
463
+ if (fs.existsSync(sibling)) return sibling;
464
+ } catch {}
465
+ try {
466
+ const moduleUrl = opts.moduleUrl ?? import.meta.url;
467
+ const moduleDir = path.dirname(fileURLToPath(moduleUrl));
468
+ const packageRoot = resolveAnimaPackageRootSync({
469
+ argv1: opts.argv1 ?? process.argv[1],
470
+ moduleUrl,
471
+ cwd: opts.cwd ?? process.cwd()
472
+ });
473
+ if (packageRoot) {
474
+ const candidate = path.join(packageRoot, "skills");
475
+ if (looksLikeSkillsDir(candidate)) return candidate;
476
+ }
477
+ let current = moduleDir;
478
+ for (let depth = 0; depth < 6; depth += 1) {
479
+ const candidate = path.join(current, "skills");
480
+ if (looksLikeSkillsDir(candidate)) return candidate;
481
+ const next = path.dirname(current);
482
+ if (next === current) break;
483
+ current = next;
484
+ }
485
+ } catch {}
486
+ }
487
+
488
+ //#endregion
489
+ //#region src/agents/skills/plugin-skills.ts
490
+ const log = createSubsystemLogger("skills");
491
+ function resolvePluginSkillDirs(params) {
492
+ const workspaceDir = params.workspaceDir.trim();
493
+ if (!workspaceDir) return [];
494
+ const registry = loadPluginManifestRegistry({
495
+ workspaceDir,
496
+ config: params.config
497
+ });
498
+ if (registry.plugins.length === 0) return [];
499
+ const normalizedPlugins = normalizePluginsConfig(params.config?.plugins);
500
+ const memorySlot = normalizedPlugins.slots.memory;
501
+ let selectedMemoryPluginId = null;
502
+ const seen = /* @__PURE__ */ new Set();
503
+ const resolved = [];
504
+ for (const record of registry.plugins) {
505
+ if (!record.skills || record.skills.length === 0) continue;
506
+ if (!resolveEnableState(record.id, record.origin, normalizedPlugins).enabled) continue;
507
+ const memoryDecision = resolveMemorySlotDecision({
508
+ id: record.id,
509
+ kind: record.kind,
510
+ slot: memorySlot,
511
+ selectedId: selectedMemoryPluginId
512
+ });
513
+ if (!memoryDecision.enabled) continue;
514
+ if (memoryDecision.selected && record.kind === "memory") selectedMemoryPluginId = record.id;
515
+ for (const raw of record.skills) {
516
+ const trimmed = raw.trim();
517
+ if (!trimmed) continue;
518
+ const candidate = path.resolve(record.rootDir, trimmed);
519
+ if (!fs.existsSync(candidate)) {
520
+ log.warn(`plugin skill path not found (${record.id}): ${candidate}`);
521
+ continue;
522
+ }
523
+ if (seen.has(candidate)) continue;
524
+ seen.add(candidate);
525
+ resolved.push(candidate);
526
+ }
527
+ }
528
+ return resolved;
529
+ }
530
+
531
+ //#endregion
532
+ //#region src/agents/skills/serialize.ts
533
+ const SKILLS_SYNC_QUEUE = /* @__PURE__ */ new Map();
534
+ async function serializeByKey(key, task) {
535
+ const next = (SKILLS_SYNC_QUEUE.get(key) ?? Promise.resolve()).then(task, task);
536
+ SKILLS_SYNC_QUEUE.set(key, next);
537
+ try {
538
+ return await next;
539
+ } finally {
540
+ if (SKILLS_SYNC_QUEUE.get(key) === next) SKILLS_SYNC_QUEUE.delete(key);
541
+ }
542
+ }
543
+
544
+ //#endregion
545
+ //#region src/agents/skills/workspace.ts
546
+ const fsp = fs.promises;
547
+ const skillsLogger = createSubsystemLogger("skills");
548
+ const skillCommandDebugOnce = /* @__PURE__ */ new Set();
549
+ function debugSkillCommandOnce(messageKey, message, meta) {
550
+ if (skillCommandDebugOnce.has(messageKey)) return;
551
+ skillCommandDebugOnce.add(messageKey);
552
+ skillsLogger.debug(message, meta);
553
+ }
554
+ function filterSkillEntries(entries, config, skillFilter, eligibility) {
555
+ let filtered = entries.filter((entry) => shouldIncludeSkill({
556
+ entry,
557
+ config,
558
+ eligibility
559
+ }));
560
+ if (skillFilter !== void 0) {
561
+ const normalized = skillFilter.map((entry) => String(entry).trim()).filter(Boolean);
562
+ const label = normalized.length > 0 ? normalized.join(", ") : "(none)";
563
+ console.log(`[skills] Applying skill filter: ${label}`);
564
+ filtered = normalized.length > 0 ? filtered.filter((entry) => normalized.includes(entry.skill.name)) : [];
565
+ console.log(`[skills] After filter: ${filtered.map((entry) => entry.skill.name).join(", ")}`);
566
+ }
567
+ return filtered;
568
+ }
569
+ const SKILL_COMMAND_MAX_LENGTH = 32;
570
+ const SKILL_COMMAND_FALLBACK = "skill";
571
+ const SKILL_COMMAND_DESCRIPTION_MAX_LENGTH = 100;
572
+ function sanitizeSkillCommandName(raw) {
573
+ return raw.toLowerCase().replace(/[^a-z0-9_]+/g, "_").replace(/_+/g, "_").replace(/^_+|_+$/g, "").slice(0, SKILL_COMMAND_MAX_LENGTH) || SKILL_COMMAND_FALLBACK;
574
+ }
575
+ function resolveUniqueSkillCommandName(base, used) {
576
+ const normalizedBase = base.toLowerCase();
577
+ if (!used.has(normalizedBase)) return base;
578
+ for (let index = 2; index < 1e3; index += 1) {
579
+ const suffix = `_${index}`;
580
+ const maxBaseLength = Math.max(1, SKILL_COMMAND_MAX_LENGTH - suffix.length);
581
+ const candidate = `${base.slice(0, maxBaseLength)}${suffix}`;
582
+ const candidateKey = candidate.toLowerCase();
583
+ if (!used.has(candidateKey)) return candidate;
584
+ }
585
+ return `${base.slice(0, Math.max(1, SKILL_COMMAND_MAX_LENGTH - 2))}_x`;
586
+ }
587
+ function loadSkillEntries(workspaceDir, opts) {
588
+ const loadSkills = (params) => {
589
+ const loaded = loadSkillsFromDir(params);
590
+ if (Array.isArray(loaded)) return loaded;
591
+ if (loaded && typeof loaded === "object" && "skills" in loaded && Array.isArray(loaded.skills)) return loaded.skills;
592
+ return [];
593
+ };
594
+ const managedSkillsDir = opts?.managedSkillsDir ?? path.join(CONFIG_DIR, "skills");
595
+ const workspaceSkillsDir = path.resolve(workspaceDir, "skills");
596
+ const bundledSkillsDir = opts?.bundledSkillsDir ?? resolveBundledSkillsDir();
597
+ const extraDirs = (opts?.config?.skills?.load?.extraDirs ?? []).map((d) => typeof d === "string" ? d.trim() : "").filter(Boolean);
598
+ const pluginSkillDirs = resolvePluginSkillDirs({
599
+ workspaceDir,
600
+ config: opts?.config
601
+ });
602
+ const mergedExtraDirs = [...extraDirs, ...pluginSkillDirs];
603
+ const bundledSkills = bundledSkillsDir ? loadSkills({
604
+ dir: bundledSkillsDir,
605
+ source: "anima-bundled"
606
+ }) : [];
607
+ const extraSkills = mergedExtraDirs.flatMap((dir) => {
608
+ return loadSkills({
609
+ dir: resolveUserPath(dir),
610
+ source: "anima-extra"
611
+ });
612
+ });
613
+ const managedSkills = loadSkills({
614
+ dir: managedSkillsDir,
615
+ source: "anima-managed"
616
+ });
617
+ const personalAgentsSkills = loadSkills({
618
+ dir: path.resolve(os.homedir(), ".agents", "skills"),
619
+ source: "agents-skills-personal"
620
+ });
621
+ const projectAgentsSkills = loadSkills({
622
+ dir: path.resolve(workspaceDir, ".agents", "skills"),
623
+ source: "agents-skills-project"
624
+ });
625
+ const workspaceSkills = loadSkills({
626
+ dir: workspaceSkillsDir,
627
+ source: "anima-workspace"
628
+ });
629
+ const merged = /* @__PURE__ */ new Map();
630
+ for (const skill of extraSkills) merged.set(skill.name, skill);
631
+ for (const skill of bundledSkills) merged.set(skill.name, skill);
632
+ for (const skill of managedSkills) merged.set(skill.name, skill);
633
+ for (const skill of personalAgentsSkills) merged.set(skill.name, skill);
634
+ for (const skill of projectAgentsSkills) merged.set(skill.name, skill);
635
+ for (const skill of workspaceSkills) merged.set(skill.name, skill);
636
+ return Array.from(merged.values()).map((skill) => {
637
+ let frontmatter = {};
638
+ try {
639
+ frontmatter = parseFrontmatter(fs.readFileSync(skill.filePath, "utf-8"));
640
+ } catch {}
641
+ return {
642
+ skill,
643
+ frontmatter,
644
+ metadata: resolveAnimaMetadata(frontmatter),
645
+ invocation: resolveSkillInvocationPolicy(frontmatter)
646
+ };
647
+ });
648
+ }
649
+ function buildWorkspaceSkillSnapshot(workspaceDir, opts) {
650
+ const eligible = filterSkillEntries(opts?.entries ?? loadSkillEntries(workspaceDir, opts), opts?.config, opts?.skillFilter, opts?.eligibility);
651
+ const resolvedSkills = eligible.filter((entry) => entry.invocation?.disableModelInvocation !== true).map((entry) => entry.skill);
652
+ return {
653
+ prompt: [opts?.eligibility?.remote?.note?.trim(), formatSkillsForPrompt(resolvedSkills)].filter(Boolean).join("\n"),
654
+ skills: eligible.map((entry) => ({
655
+ name: entry.skill.name,
656
+ primaryEnv: entry.metadata?.primaryEnv
657
+ })),
658
+ resolvedSkills,
659
+ version: opts?.snapshotVersion
660
+ };
661
+ }
662
+ function loadWorkspaceSkillEntries(workspaceDir, opts) {
663
+ return loadSkillEntries(workspaceDir, opts);
664
+ }
665
+ function resolveUniqueSyncedSkillDirName(base, used) {
666
+ if (!used.has(base)) {
667
+ used.add(base);
668
+ return base;
669
+ }
670
+ for (let index = 2; index < 1e4; index += 1) {
671
+ const candidate = `${base}-${index}`;
672
+ if (!used.has(candidate)) {
673
+ used.add(candidate);
674
+ return candidate;
675
+ }
676
+ }
677
+ let fallbackIndex = 1e4;
678
+ let fallback = `${base}-${fallbackIndex}`;
679
+ while (used.has(fallback)) {
680
+ fallbackIndex += 1;
681
+ fallback = `${base}-${fallbackIndex}`;
682
+ }
683
+ used.add(fallback);
684
+ return fallback;
685
+ }
686
+ function resolveSyncedSkillDestinationPath(params) {
687
+ const sourceDirName = path.basename(params.entry.skill.baseDir).trim();
688
+ if (!sourceDirName || sourceDirName === "." || sourceDirName === "..") return null;
689
+ return resolveSandboxPath({
690
+ filePath: resolveUniqueSyncedSkillDirName(sourceDirName, params.usedDirNames),
691
+ cwd: params.targetSkillsDir,
692
+ root: params.targetSkillsDir
693
+ }).resolved;
694
+ }
695
+ async function syncSkillsToWorkspace(params) {
696
+ const sourceDir = resolveUserPath(params.sourceWorkspaceDir);
697
+ const targetDir = resolveUserPath(params.targetWorkspaceDir);
698
+ if (sourceDir === targetDir) return;
699
+ await serializeByKey(`syncSkills:${targetDir}`, async () => {
700
+ const targetSkillsDir = path.join(targetDir, "skills");
701
+ const entries = loadSkillEntries(sourceDir, {
702
+ config: params.config,
703
+ managedSkillsDir: params.managedSkillsDir,
704
+ bundledSkillsDir: params.bundledSkillsDir
705
+ });
706
+ await fsp.rm(targetSkillsDir, {
707
+ recursive: true,
708
+ force: true
709
+ });
710
+ await fsp.mkdir(targetSkillsDir, { recursive: true });
711
+ const usedDirNames = /* @__PURE__ */ new Set();
712
+ for (const entry of entries) {
713
+ let dest = null;
714
+ try {
715
+ dest = resolveSyncedSkillDestinationPath({
716
+ targetSkillsDir,
717
+ entry,
718
+ usedDirNames
719
+ });
720
+ } catch (error) {
721
+ const message = error instanceof Error ? error.message : JSON.stringify(error);
722
+ console.warn(`[skills] Failed to resolve safe destination for ${entry.skill.name}: ${message}`);
723
+ continue;
724
+ }
725
+ if (!dest) {
726
+ console.warn(`[skills] Failed to resolve safe destination for ${entry.skill.name}: invalid source directory name`);
727
+ continue;
728
+ }
729
+ try {
730
+ await fsp.cp(entry.skill.baseDir, dest, {
731
+ recursive: true,
732
+ force: true
733
+ });
734
+ } catch (error) {
735
+ const message = error instanceof Error ? error.message : JSON.stringify(error);
736
+ console.warn(`[skills] Failed to copy ${entry.skill.name} to sandbox: ${message}`);
737
+ }
738
+ }
739
+ });
740
+ }
741
+ function buildWorkspaceSkillCommandSpecs(workspaceDir, opts) {
742
+ const userInvocable = filterSkillEntries(opts?.entries ?? loadSkillEntries(workspaceDir, opts), opts?.config, opts?.skillFilter, opts?.eligibility).filter((entry) => entry.invocation?.userInvocable !== false);
743
+ const used = /* @__PURE__ */ new Set();
744
+ for (const reserved of opts?.reservedNames ?? []) used.add(reserved.toLowerCase());
745
+ const specs = [];
746
+ for (const entry of userInvocable) {
747
+ const rawName = entry.skill.name;
748
+ const base = sanitizeSkillCommandName(rawName);
749
+ if (base !== rawName) debugSkillCommandOnce(`sanitize:${rawName}:${base}`, `Sanitized skill command name "${rawName}" to "/${base}".`, {
750
+ rawName,
751
+ sanitized: `/${base}`
752
+ });
753
+ const unique = resolveUniqueSkillCommandName(base, used);
754
+ if (unique !== base) debugSkillCommandOnce(`dedupe:${rawName}:${unique}`, `De-duplicated skill command name for "${rawName}" to "/${unique}".`, {
755
+ rawName,
756
+ deduped: `/${unique}`
757
+ });
758
+ used.add(unique.toLowerCase());
759
+ const rawDescription = entry.skill.description?.trim() || rawName;
760
+ const description = rawDescription.length > SKILL_COMMAND_DESCRIPTION_MAX_LENGTH ? rawDescription.slice(0, SKILL_COMMAND_DESCRIPTION_MAX_LENGTH - 1) + "…" : rawDescription;
761
+ const dispatch = (() => {
762
+ const kindRaw = (entry.frontmatter?.["command-dispatch"] ?? entry.frontmatter?.["command_dispatch"] ?? "").trim().toLowerCase();
763
+ if (!kindRaw) return;
764
+ if (kindRaw !== "tool") return;
765
+ const toolName = (entry.frontmatter?.["command-tool"] ?? entry.frontmatter?.["command_tool"] ?? "").trim();
766
+ if (!toolName) {
767
+ debugSkillCommandOnce(`dispatch:missingTool:${rawName}`, `Skill command "/${unique}" requested tool dispatch but did not provide command-tool. Ignoring dispatch.`, {
768
+ skillName: rawName,
769
+ command: unique
770
+ });
771
+ return;
772
+ }
773
+ const argModeRaw = (entry.frontmatter?.["command-arg-mode"] ?? entry.frontmatter?.["command_arg_mode"] ?? "").trim().toLowerCase();
774
+ if (!(!argModeRaw || argModeRaw === "raw" ? "raw" : null)) debugSkillCommandOnce(`dispatch:badArgMode:${rawName}:${argModeRaw}`, `Skill command "/${unique}" requested tool dispatch but has unknown command-arg-mode. Falling back to raw.`, {
775
+ skillName: rawName,
776
+ command: unique,
777
+ argMode: argModeRaw
778
+ });
779
+ return {
780
+ kind: "tool",
781
+ toolName,
782
+ argMode: "raw"
783
+ };
784
+ })();
785
+ specs.push({
786
+ name: unique,
787
+ skillName: rawName,
788
+ description,
789
+ ...dispatch ? { dispatch } : {}
790
+ });
791
+ }
792
+ return specs;
793
+ }
794
+
795
+ //#endregion
796
+ //#region src/agents/skills.ts
797
+ function resolveSkillsInstallPreferences(config) {
798
+ const raw = config?.skills?.install;
799
+ const preferBrew = raw?.preferBrew ?? true;
800
+ const manager = (typeof raw?.nodeManager === "string" ? raw.nodeManager.trim() : "").toLowerCase();
801
+ return {
802
+ preferBrew,
803
+ nodeManager: manager === "pnpm" || manager === "yarn" || manager === "bun" || manager === "npm" ? manager : "npm"
804
+ };
805
+ }
806
+
807
+ //#endregion
808
+ export { resolveRuntimePlatform as C, isConfigPathTruthyWithDefaults as S, normalizeStringList as _, syncSkillsToWorkspace as a, parseFrontmatterBlock as b, assertMediaNotDataUrl as c, isBundledSkillAllowed as d, isConfigPathTruthy as f, getFrontmatterString as g, resolveSkillKey as h, loadWorkspaceSkillEntries as i, assertSandboxPath as l, resolveSkillConfig as m, buildWorkspaceSkillCommandSpecs as n, resolvePluginSkillDirs as o, resolveBundledAllowlist as p, buildWorkspaceSkillSnapshot as r, resolveBundledSkillsDir as s, resolveSkillsInstallPreferences as t, resolveSandboxedMediaSource as u, parseFrontmatterBool as v, hasBinary as x, resolveAnimaManifestBlock as y };