@koda-sl/baker-cli 0.549.0 → 0.551.0-dev.ad2740332

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 (858) hide show
  1. package/README.md +18 -1
  2. package/dist/account-IG3U6UXZ.js +82 -0
  3. package/dist/account-JCQYOGJD.js +82 -0
  4. package/dist/account-reads-LOCJMS35.js +219 -0
  5. package/dist/account-users-AZPQPHD3.js +64 -0
  6. package/dist/account-writes-BSSKSTZ2.js +68 -0
  7. package/dist/accounts-2PZV6VRS.js +80 -0
  8. package/dist/accounts-5I6USVT7.js +701 -0
  9. package/dist/actions-TSNXITQM.js +55 -0
  10. package/dist/activecampaign-2RKR6P74.js +938 -0
  11. package/dist/ad-group-writes-KMB3OMJG.js +172 -0
  12. package/dist/ad-groups-E67CNQS4.js +70 -0
  13. package/dist/ad-writes-FNMKNFUN.js +176 -0
  14. package/dist/add-ENUFKN5V.js +305 -0
  15. package/dist/add-SRHNKSJT.js +107 -0
  16. package/dist/ads-4LASBP4G.js +79 -0
  17. package/dist/ads-X33452HM.js +48 -0
  18. package/dist/advertisers-XO5EJXR5.js +123 -0
  19. package/dist/analytics-AZTZVHVA.js +447 -0
  20. package/dist/analytics-ED3NBGJJ.js +2437 -0
  21. package/dist/animate-OWXAT2RK.js +480 -0
  22. package/dist/assign-SIXEBHRW.js +80 -0
  23. package/dist/audience-size-ACNA4JIX.js +76 -0
  24. package/dist/audiences-3R574STZ.js +280 -0
  25. package/dist/audit-K5BEYW7G.js +154 -0
  26. package/dist/autocomplete-XIYI56SU.js +114 -0
  27. package/dist/avatars-C5CUPLIV.js +38 -0
  28. package/dist/bid-pricing-2UF6O2K6.js +103 -0
  29. package/dist/brand-ATWMTJFS.js +22 -0
  30. package/dist/brief-A65JXAER.js +543 -0
  31. package/dist/campaign-groups-F5C7C7NG.js +99 -0
  32. package/dist/campaign-writes-TNW7KKQQ.js +168 -0
  33. package/dist/campaign-writes-Z2J24SUZ.js +176 -0
  34. package/dist/campaigns-43OS6EUG.js +78 -0
  35. package/dist/campaigns-TQZXAMWE.js +111 -0
  36. package/dist/campaigns-XTNWM3VV.js +113 -0
  37. package/dist/canvas-UGO5IHCA.js +46 -0
  38. package/dist/capabilities-XHPLFYH2.js +147 -0
  39. package/dist/catalog-7LINLVVY.js +66 -0
  40. package/dist/catalogs-IR22RGZD.js +130 -0
  41. package/dist/changes-JAGWBHQC.js +143 -0
  42. package/dist/chatgpt-NE2RBMFK.js +47 -0
  43. package/dist/chats-QFZ4DGI7.js +449 -0
  44. package/dist/check-AEMZGF5G.js +107 -0
  45. package/dist/chunk-34JTMTPJ.js +224 -0
  46. package/dist/chunk-3C42N42Q.js +297 -0
  47. package/dist/chunk-3EUITH4J.js +638 -0
  48. package/dist/chunk-4IRJ5JXA.js +46 -0
  49. package/dist/chunk-4QGNRCSE.js +930 -0
  50. package/dist/chunk-4XFP43NH.js +142 -0
  51. package/dist/chunk-5EHSDRMJ.js +377 -0
  52. package/dist/chunk-5IFFPSEN.js +225 -0
  53. package/dist/chunk-64ALJ6TJ.js +274 -0
  54. package/dist/chunk-6KGMWAUL.js +494 -0
  55. package/dist/chunk-6OIKNJ7G.js +26 -0
  56. package/dist/chunk-6ZUGN27V.js +103 -0
  57. package/dist/chunk-7MWELLCN.js +51 -0
  58. package/dist/chunk-7UFV6H7J.js +167 -0
  59. package/dist/chunk-B3CDNANO.js +843 -0
  60. package/dist/chunk-B3LSWNUR.js +392 -0
  61. package/dist/chunk-BIHU5GCE.js +19 -0
  62. package/dist/chunk-BNI5DAB7.js +783 -0
  63. package/dist/chunk-CISE4DOX.js +89 -0
  64. package/dist/chunk-CVWYS7SE.js +191 -0
  65. package/dist/chunk-CXRS5YLB.js +150 -0
  66. package/dist/chunk-E5H7JIWB.js +3510 -0
  67. package/dist/chunk-EI6R7GKQ.js +275 -0
  68. package/dist/chunk-F3CZFUXZ.js +3187 -0
  69. package/dist/chunk-F3CZFUXZ.js.map +1 -0
  70. package/dist/chunk-F743MUNY.js +344 -0
  71. package/dist/chunk-FEVA2MNA.js +438 -0
  72. package/dist/chunk-FJXSVDWW.js +203 -0
  73. package/dist/chunk-G6J6AWTE.js +5471 -0
  74. package/dist/chunk-GCZK4BMB.js +5368 -0
  75. package/dist/chunk-GKIYKOJW.js +156 -0
  76. package/dist/chunk-GKMDBLTQ.js +7852 -0
  77. package/dist/chunk-GKMDBLTQ.js.map +1 -0
  78. package/dist/chunk-H4CLWLYF.js +4269 -0
  79. package/dist/chunk-H4CLWLYF.js.map +1 -0
  80. package/dist/chunk-H4OVNGUK.js +91 -0
  81. package/dist/chunk-HWOOMK5A.js +66 -0
  82. package/dist/chunk-IABSARSS.js +334 -0
  83. package/dist/chunk-IAOKMWUF.js +910 -0
  84. package/dist/chunk-ICEYCLRU.js +679 -0
  85. package/dist/chunk-JBNT444M.js +285 -0
  86. package/dist/chunk-K3HZVRBJ.js +8954 -0
  87. package/dist/chunk-KCZY5Y4E.js +61 -0
  88. package/dist/chunk-KTO2Y3DI.js +1646 -0
  89. package/dist/chunk-L7AJMZ6Z.js +24026 -0
  90. package/dist/chunk-L7AJMZ6Z.js.map +1 -0
  91. package/dist/chunk-LDFM37DM.js +148 -0
  92. package/dist/chunk-LHC6OHQ6.js +857 -0
  93. package/dist/chunk-LMSV7NQY.js +455 -0
  94. package/dist/chunk-LPDHNMOY.js +57 -0
  95. package/dist/chunk-METHLFNZ.js +63 -0
  96. package/dist/chunk-MI3HAKXY.js +170 -0
  97. package/dist/chunk-P6FMQHJJ.js +131 -0
  98. package/dist/chunk-PT73IEI6.js +479 -0
  99. package/dist/chunk-Q6LCL67T.js +1518 -0
  100. package/dist/chunk-RFGO4DHJ.js +2209 -0
  101. package/dist/chunk-RMTM22JO.js +685 -0
  102. package/dist/chunk-RQOSSYVH.js +718 -0
  103. package/dist/chunk-RQOSSYVH.js.map +1 -0
  104. package/dist/chunk-S2L2A2ZN.js +430 -0
  105. package/dist/chunk-SA3P64PQ.js +169 -0
  106. package/dist/chunk-SIKCVWM3.js +76 -0
  107. package/dist/chunk-SIOLRCLE.js +831 -0
  108. package/dist/chunk-TK6BXI5A.js +392 -0
  109. package/dist/chunk-V4UJERGL.js +64 -0
  110. package/dist/chunk-V6NFLQKX.js +207 -0
  111. package/dist/chunk-VISKG4IA.js +547 -0
  112. package/dist/chunk-WJ6KKTIU.js +23 -0
  113. package/dist/chunk-WPZTFSED.js +163 -0
  114. package/dist/chunk-X5UMVG4S.js +249 -0
  115. package/dist/chunk-X7ROPKZT.js +197 -0
  116. package/dist/chunk-XDJZH2JV.js +604 -0
  117. package/dist/chunk-XU6XQPNM.js +1919 -0
  118. package/dist/chunk-YKFGXS26.js +228 -0
  119. package/dist/chunk-YQB66YKJ.js +98 -0
  120. package/dist/chunk-YSTAPNQP.js +1902 -0
  121. package/dist/chunk-ZSLZOUGC.js +91 -0
  122. package/dist/claim-R6OG5IHM.js +200 -0
  123. package/dist/cli.js +34 -33
  124. package/dist/cli.js.map +1 -1
  125. package/dist/companies-M36P2XXN.js +198 -0
  126. package/dist/company-NQAS3QF6.js +308 -0
  127. package/dist/complete-FJHCHRYO.js +84 -0
  128. package/dist/connect-TEWDGN6C.js +45 -0
  129. package/dist/conversation-UC7PXJQ3.js +96 -0
  130. package/dist/conversion-report-R4KJI4VA.js +127 -0
  131. package/dist/conversion-upload-command-WCLWA27O.js +439 -0
  132. package/dist/conversion-writes-XIQEIDPS.js +122 -0
  133. package/dist/conversions-D7P3KVQK.js +140 -0
  134. package/dist/conversions-RMBQNW3T.js +78 -0
  135. package/dist/create-GMZHI4BK.js +62 -0
  136. package/dist/create-J2AICQFF.js +135 -0
  137. package/dist/create-RVR33UQM.js +239 -0
  138. package/dist/create-VXHOWOVI.js +210 -0
  139. package/dist/creatives-SLKM5XNE.js +223 -0
  140. package/dist/creatives-YMFRT6SE.js +58 -0
  141. package/dist/credentials-T3IID6QG.js +290 -0
  142. package/dist/critique-2Y53EQ3S.js +1451 -0
  143. package/dist/critique-SMLSUHY2.js +232 -0
  144. package/dist/crm-E35C36E3.js +323 -0
  145. package/dist/crm-TPV4H4KN.js +227 -0
  146. package/dist/currency-BY647ZB7.js +88 -0
  147. package/dist/customers-PH376T52.js +65 -0
  148. package/dist/delete-4MNN3QXP.js +67 -0
  149. package/dist/delete-7PEW3V6J.js +69 -0
  150. package/dist/delete-TRONZNM2.js +57 -0
  151. package/dist/demographics-EZXWOSZE.js +141 -0
  152. package/dist/discard-PHO5BKEZ.js +69 -0
  153. package/dist/discover-TAJUFO5R.js +172 -0
  154. package/dist/domain-7GNF7QHV.js +101 -0
  155. package/dist/download-A4EYH6VD.js +172 -0
  156. package/dist/draft-NQG5RBSF.js +220 -0
  157. package/dist/draft-PA3L7VG6.js +342 -0
  158. package/dist/draft-QQWTEXVT.js +313 -0
  159. package/dist/draft-RGSDXFFT.js +408 -0
  160. package/dist/draft-SKEGKHIK.js +288 -0
  161. package/dist/engine/index.js +8 -8
  162. package/dist/experiments-DEUWFSDQ.js +236 -0
  163. package/dist/facets-KWT2NAGR.js +117 -0
  164. package/dist/feedback-A56L3VWN.js +115 -0
  165. package/dist/feedback-O3BVHXJA.js +136 -0
  166. package/dist/feedback-O3BVHXJA.js.map +1 -0
  167. package/dist/feedback-record-FE4P5MKS.js +269 -0
  168. package/dist/fetch-M5U4E5IE.js +204 -0
  169. package/dist/fit-AYFRRDAN.js +65 -0
  170. package/dist/flows-QKR7JW6H.js +250 -0
  171. package/dist/fonts-RUHNGL7R.js +39 -0
  172. package/dist/forecast-V7IPL6EC.js +121 -0
  173. package/dist/forecast-VOND3WVO.js +169 -0
  174. package/dist/funnel-WNVS53CO.js +397 -0
  175. package/dist/generate-SW5KLHXG.js +263 -0
  176. package/dist/get-AJNPJIX6.js +59 -0
  177. package/dist/get-ZLRSDJM6.js +82 -0
  178. package/dist/google-VYARAUQH.js +3270 -0
  179. package/dist/google-ads-3PIHLIIF.js +198 -0
  180. package/dist/history-34E26WGP.js +153 -0
  181. package/dist/history-7DF5HFJT.js +69 -0
  182. package/dist/history-LWAKFSHW.js +102 -0
  183. package/dist/hubspot-HH7KVQU5.js +782 -0
  184. package/dist/ideas-VFZXVUFZ.js +45 -0
  185. package/dist/images-LB4E2F5I.js +92 -0
  186. package/dist/ingest-LRUKF3EK.js +27 -0
  187. package/dist/ingest-VZ77AODJ.js +123 -0
  188. package/dist/insights-YVV5MHPQ.js +132 -0
  189. package/dist/inspect-X6XU4CXL.js +192 -0
  190. package/dist/intent-GIAQDMHF.js +95 -0
  191. package/dist/keyword-gap-NZF75XGF.js +130 -0
  192. package/dist/keyword-metrics-P546E6KW.js +200 -0
  193. package/dist/keywords-for-site-AEFJ5BTU.js +131 -0
  194. package/dist/landing-RKO3LUST.js +28 -0
  195. package/dist/languages-GGNN7FEK.js +40 -0
  196. package/dist/leads-OVYF2EKX.js +115 -0
  197. package/dist/learn-UWJ24ZD5.js +207 -0
  198. package/dist/line-item-writes-46K4NKPJ.js +211 -0
  199. package/dist/line-items-YRSGOQFS.js +107 -0
  200. package/dist/link-XXRDZQFM.js +67 -0
  201. package/dist/linkedin-W4OWO6QA.js +1330 -0
  202. package/dist/linkedin-person-SQTWLIN5.js +139 -0
  203. package/dist/list-E6WPSAQK.js +154 -0
  204. package/dist/list-S34STWB3.js +306 -0
  205. package/dist/list-XERZMEWU.js +67 -0
  206. package/dist/locations-7RYEWKJO.js +69 -0
  207. package/dist/locations-BU4ZGWAS.js +40 -0
  208. package/dist/log-CDN4H2JY.js +95 -0
  209. package/dist/make-JE7V2RWR.js +1367 -0
  210. package/dist/map-SPSJ532D.js +436 -0
  211. package/dist/mcp-PBPHIS4Q.js +729 -0
  212. package/dist/media-sources-MZL4XML4.js +35 -0
  213. package/dist/members-RDNSONMW.js +47 -0
  214. package/dist/metrics-Z75Q2FHP.js +152 -0
  215. package/dist/models-X2IXXAD6.js +155 -0
  216. package/dist/normalize-4KL73UBE.js +144 -0
  217. package/dist/options-7MN5WH3J.js +125 -0
  218. package/dist/organization-NJT4G355.js +949 -0
  219. package/dist/performance-PG5T4D7M.js +27 -0
  220. package/dist/performance-SB2KLMTO.js +5565 -0
  221. package/dist/pixels-DBSPNHIE.js +62 -0
  222. package/dist/promoted-tweet-writes-PCWFF2EG.js +183 -0
  223. package/dist/promoted-tweets-ZSXREC4V.js +119 -0
  224. package/dist/publish-FIYZNQYO.js +344 -0
  225. package/dist/query-NMQKS4MY.js +62 -0
  226. package/dist/reddit-7WRZ5B3I.js +29 -0
  227. package/dist/refresh-IKHSUY3E.js +97 -0
  228. package/dist/release-JCKOGRTY.js +63 -0
  229. package/dist/relevant-pages-JRIDJL4L.js +99 -0
  230. package/dist/remove-KE63VJ3M.js +53 -0
  231. package/dist/reopen-4YSAVTOS.js +66 -0
  232. package/dist/rerun-K5SQ6GAQ.js +96 -0
  233. package/dist/research-OFHOHRFD.js +75 -0
  234. package/dist/research-ORXD6AV4.js +265 -0
  235. package/dist/reset-4CLSOD77.js +57 -0
  236. package/dist/reset-BN4FDUZB.js +57 -0
  237. package/dist/resolve-F6QVMQGX.js +124 -0
  238. package/dist/retry-JGAJF6CN.js +65 -0
  239. package/dist/retry-NJUIX2QT.js +63 -0
  240. package/dist/revenue-BYGHXTYJ.js +91 -0
  241. package/dist/rules-MWTPVJTK.js +99 -0
  242. package/dist/rules-add-3MJRAYXB.js +465 -0
  243. package/dist/run-CXD7RKYN.js +71 -0
  244. package/dist/run-NDJSLZNE.js +69 -0
  245. package/dist/scaffold-ad-2N7H7ACP.js +1513 -0
  246. package/dist/scaffold-static-ad-R7T766AD.js +1011 -0
  247. package/dist/scaffold-video-22HVSFRR.js +885 -0
  248. package/dist/schedule-ZEREUVXT.js +64 -0
  249. package/dist/scheduled-agents-5URJWW2E.js +55 -0
  250. package/dist/schema-NQ7DXUHX.js +135 -0
  251. package/dist/schema-U6GAKTQZ.js +121 -0
  252. package/dist/search-T5JFYDCZ.js +177 -0
  253. package/dist/select-SDFGLXMV.js +110 -0
  254. package/dist/set-prompt-JI5W6VPR.js +199 -0
  255. package/dist/setup-links-TOL7BFBE.js +144 -0
  256. package/dist/shopify-QXOGNIVU.js +3980 -0
  257. package/dist/site-NJDIUQY6.js +180 -0
  258. package/dist/sources-EMUT5MV7.js +457 -0
  259. package/dist/sources-M4IJL4H7.js +30 -0
  260. package/dist/stale-YYJNWLIE.js +90 -0
  261. package/dist/status-UZJGIDRI.js +65 -0
  262. package/dist/studio-OV2ZY5W3.js +49 -0
  263. package/dist/sync-T3E7SP7B.js +57 -0
  264. package/dist/sync-definition-TLY4FQKC.js +70 -0
  265. package/dist/tags-DPI3CAPB.js +23 -0
  266. package/dist/tags-DS3W4EDB.js +26 -0
  267. package/dist/tags-HSUBVXPJ.js +227 -0
  268. package/dist/tags-WP7W57FY.js +23 -0
  269. package/dist/tags-WWZFKW3Y.js +23 -0
  270. package/dist/targeting-criteria-PICDCHEV.js +113 -0
  271. package/dist/targets-WOMHJXY7.js +106 -0
  272. package/dist/testimonials-LDL66SSG.js +32 -0
  273. package/dist/themes-RRLYZ46U.js +95 -0
  274. package/dist/top-companies-RBRWAW27.js +111 -0
  275. package/dist/transcript-V6LZKOKQ.js +165 -0
  276. package/dist/translate-53TPL46A.js +603 -0
  277. package/dist/triggers-DDV73LZ4.js +144 -0
  278. package/dist/unlink-PLS3GA5V.js +70 -0
  279. package/dist/unstage-GSWMVEVP.js +88 -0
  280. package/dist/update-CIMCN33A.js +155 -0
  281. package/dist/update-KK7QO2KE.js +101 -0
  282. package/dist/update-X2H3GZ4I.js +192 -0
  283. package/dist/update-XNV6KHYK.js +66 -0
  284. package/dist/upload-OL2S2OSA.js +130 -0
  285. package/dist/url-options-2TQCGD2W.js +131 -0
  286. package/dist/url-params-QNSGNQ6N.js +101 -0
  287. package/dist/validate-KC3UA552.js +125 -0
  288. package/dist/videos-GBD36TD2.js +41 -0
  289. package/dist/viewer-check-LQUD2OYO.js +83 -0
  290. package/dist/web-K3L2BKAH.js +173 -0
  291. package/dist/winning-ads-X3VYALHK.js +86 -0
  292. package/dist/write-commands-XUOCRBME.js +1525 -0
  293. package/dist/x-65WPQWOP.js +47 -0
  294. package/package.json +1 -1
  295. package/dist/account-2HJ4GKHN.js +0 -82
  296. package/dist/account-MTMCQQYH.js +0 -82
  297. package/dist/account-reads-X36NPCX5.js +0 -219
  298. package/dist/account-users-FJ63HUJT.js +0 -64
  299. package/dist/account-writes-FZ3KCJZY.js +0 -68
  300. package/dist/accounts-PLZTPM52.js +0 -701
  301. package/dist/accounts-VYQINKID.js +0 -80
  302. package/dist/actions-NKCYYR7Q.js +0 -55
  303. package/dist/activecampaign-LQHDIHN5.js +0 -938
  304. package/dist/ad-group-writes-XGG3WQEO.js +0 -172
  305. package/dist/ad-groups-GZIPUN64.js +0 -70
  306. package/dist/ad-writes-2VTRWQLW.js +0 -176
  307. package/dist/add-6EHN5G6X.js +0 -107
  308. package/dist/add-HLBKTI3H.js +0 -305
  309. package/dist/ads-CWXQLZCC.js +0 -48
  310. package/dist/ads-LNWALF6G.js +0 -79
  311. package/dist/advertisers-YMIPR2QG.js +0 -123
  312. package/dist/analytics-37M6Z37U.js +0 -2437
  313. package/dist/analytics-6VAB2VYM.js +0 -447
  314. package/dist/animate-DM4OUJMR.js +0 -480
  315. package/dist/assign-V25HMGMU.js +0 -80
  316. package/dist/audience-size-FKNAK4QD.js +0 -76
  317. package/dist/audiences-7D5VPOWF.js +0 -280
  318. package/dist/audit-6VVUMMYL.js +0 -154
  319. package/dist/autocomplete-NETVGJRC.js +0 -114
  320. package/dist/avatars-HH4LOUA3.js +0 -38
  321. package/dist/bid-pricing-SCTUSHFI.js +0 -103
  322. package/dist/brand-FTPQYYDU.js +0 -22
  323. package/dist/brief-MCKNRSWM.js +0 -543
  324. package/dist/campaign-groups-ZNKBTXPV.js +0 -99
  325. package/dist/campaign-writes-5TWXZ44R.js +0 -168
  326. package/dist/campaign-writes-H22P6YPW.js +0 -176
  327. package/dist/campaigns-265JXD2Z.js +0 -78
  328. package/dist/campaigns-E64SHT67.js +0 -111
  329. package/dist/campaigns-GYNO5P22.js +0 -113
  330. package/dist/canvas-E4ZT2K7I.js +0 -46
  331. package/dist/capabilities-RVNBW4OL.js +0 -147
  332. package/dist/catalog-DPUQBZZ7.js +0 -66
  333. package/dist/catalogs-SBXFAD3X.js +0 -130
  334. package/dist/changes-HXVZUJMH.js +0 -143
  335. package/dist/chatgpt-UXJPCGZU.js +0 -47
  336. package/dist/chats-4SQSGOFC.js +0 -449
  337. package/dist/check-4WC2RLDR.js +0 -107
  338. package/dist/chunk-3I66ZQTI.js +0 -203
  339. package/dist/chunk-3SEXQVMX.js +0 -91
  340. package/dist/chunk-4D73PLXU.js +0 -843
  341. package/dist/chunk-4EGXO63N.js +0 -479
  342. package/dist/chunk-4S5ZAG4S.js +0 -63
  343. package/dist/chunk-5UEBOBLO.js +0 -170
  344. package/dist/chunk-6FLUNQHT.js +0 -91
  345. package/dist/chunk-6I7N2WYU.js +0 -19
  346. package/dist/chunk-6KWT3Z35.js +0 -103
  347. package/dist/chunk-AI2SKWZE.js +0 -197
  348. package/dist/chunk-ANV42DGJ.js +0 -455
  349. package/dist/chunk-AYEWXTSF.js +0 -392
  350. package/dist/chunk-CKIDKN6H.js +0 -191
  351. package/dist/chunk-D4NK7SPT.js +0 -930
  352. package/dist/chunk-DNZVBP2W.js +0 -61
  353. package/dist/chunk-DYTBVVQX.js +0 -679
  354. package/dist/chunk-EBWOLUII.js +0 -24026
  355. package/dist/chunk-EBWOLUII.js.map +0 -1
  356. package/dist/chunk-EH34RWKR.js +0 -604
  357. package/dist/chunk-EOMY5SUJ.js +0 -783
  358. package/dist/chunk-EQAEWL6A.js +0 -547
  359. package/dist/chunk-F5UU5PAE.js +0 -494
  360. package/dist/chunk-FVDC6AKZ.js +0 -150
  361. package/dist/chunk-G4VG6ZV3.js +0 -430
  362. package/dist/chunk-GEQUWPAX.js +0 -715
  363. package/dist/chunk-GEQUWPAX.js.map +0 -1
  364. package/dist/chunk-GN7K3NPI.js +0 -148
  365. package/dist/chunk-H6CS7VSO.js +0 -1902
  366. package/dist/chunk-HBDWE7WK.js +0 -98
  367. package/dist/chunk-I6JPTDKR.js +0 -377
  368. package/dist/chunk-IGIACW2B.js +0 -207
  369. package/dist/chunk-IRINY4B2.js +0 -2209
  370. package/dist/chunk-J4JY435Z.js +0 -438
  371. package/dist/chunk-JAC6JVCI.js +0 -26
  372. package/dist/chunk-JLLGXYOZ.js +0 -857
  373. package/dist/chunk-JY3OJBKZ.js +0 -3510
  374. package/dist/chunk-KIXVHP2C.js +0 -1919
  375. package/dist/chunk-LODEDXCD.js +0 -156
  376. package/dist/chunk-MCJ5I5LR.js +0 -3187
  377. package/dist/chunk-MCJ5I5LR.js.map +0 -1
  378. package/dist/chunk-MEK7SMWO.js +0 -685
  379. package/dist/chunk-MELSTI6W.js +0 -66
  380. package/dist/chunk-MSMTG6OC.js +0 -4269
  381. package/dist/chunk-MSMTG6OC.js.map +0 -1
  382. package/dist/chunk-MZPS46OR.js +0 -76
  383. package/dist/chunk-NBWZVBDG.js +0 -131
  384. package/dist/chunk-P3VY5JEM.js +0 -274
  385. package/dist/chunk-PXGR3VGW.js +0 -1646
  386. package/dist/chunk-QK3HMAVU.js +0 -5471
  387. package/dist/chunk-QYKZ3FVE.js +0 -51
  388. package/dist/chunk-RHEWQB5O.js +0 -638
  389. package/dist/chunk-RP36XHWT.js +0 -46
  390. package/dist/chunk-SNWFM2DB.js +0 -228
  391. package/dist/chunk-SWPJZJTY.js +0 -8954
  392. package/dist/chunk-SXYEIZND.js +0 -275
  393. package/dist/chunk-T62SKL4T.js +0 -831
  394. package/dist/chunk-T7SOINEA.js +0 -169
  395. package/dist/chunk-TARINRA4.js +0 -1518
  396. package/dist/chunk-TBIDT7FG.js +0 -392
  397. package/dist/chunk-TNHIYELA.js +0 -249
  398. package/dist/chunk-TNZUMU55.js +0 -167
  399. package/dist/chunk-UT77RVVU.js +0 -142
  400. package/dist/chunk-VOUCQ2YW.js +0 -64
  401. package/dist/chunk-VR2AF7I7.js +0 -7823
  402. package/dist/chunk-VR2AF7I7.js.map +0 -1
  403. package/dist/chunk-VVMRSEW6.js +0 -23
  404. package/dist/chunk-WFJ7KR5K.js +0 -163
  405. package/dist/chunk-WLA7CA4G.js +0 -297
  406. package/dist/chunk-WOE4TZHJ.js +0 -285
  407. package/dist/chunk-XJ2GXHU4.js +0 -57
  408. package/dist/chunk-XLG3SJ3K.js +0 -334
  409. package/dist/chunk-XYNQMRNX.js +0 -5368
  410. package/dist/chunk-YDGBWP3I.js +0 -89
  411. package/dist/chunk-Z4TWYYM3.js +0 -910
  412. package/dist/chunk-ZEUAJAKN.js +0 -225
  413. package/dist/chunk-ZKYJYBDR.js +0 -344
  414. package/dist/chunk-ZL43WZBX.js +0 -224
  415. package/dist/claim-G4MRH7Q7.js +0 -200
  416. package/dist/companies-TV5SX7IW.js +0 -198
  417. package/dist/company-W2N3H7AG.js +0 -308
  418. package/dist/complete-CTS2VDY5.js +0 -84
  419. package/dist/connect-64CFSYYE.js +0 -45
  420. package/dist/conversation-T57OY4L4.js +0 -96
  421. package/dist/conversion-report-RB2MU7UD.js +0 -127
  422. package/dist/conversion-upload-command-HFZYKVXA.js +0 -439
  423. package/dist/conversion-writes-56AIPXPK.js +0 -122
  424. package/dist/conversions-NRX76ZIT.js +0 -78
  425. package/dist/conversions-P75BZDDN.js +0 -140
  426. package/dist/create-2IFLWXCE.js +0 -135
  427. package/dist/create-2ZM3SAMX.js +0 -239
  428. package/dist/create-I6AVOYOS.js +0 -210
  429. package/dist/create-YKV66SQ6.js +0 -62
  430. package/dist/creatives-4HMWWE4O.js +0 -58
  431. package/dist/creatives-CSXTXOTD.js +0 -223
  432. package/dist/credentials-YQND7EIL.js +0 -290
  433. package/dist/critique-ABUU725C.js +0 -232
  434. package/dist/critique-EBQKUWBV.js +0 -1451
  435. package/dist/crm-4GXVHO4R.js +0 -323
  436. package/dist/crm-G2QOW4WY.js +0 -227
  437. package/dist/currency-CHBV6WIO.js +0 -88
  438. package/dist/customers-SNDSWS2C.js +0 -65
  439. package/dist/delete-AXECUWUU.js +0 -57
  440. package/dist/delete-WSWCPQ4R.js +0 -67
  441. package/dist/delete-YE3ZJKGK.js +0 -69
  442. package/dist/demographics-UPLQV4VW.js +0 -141
  443. package/dist/discard-D3SPLQP2.js +0 -69
  444. package/dist/discover-ZU2DAV23.js +0 -172
  445. package/dist/domain-OXNE56NK.js +0 -101
  446. package/dist/download-DGVEUXKX.js +0 -172
  447. package/dist/draft-2SMIRPNZ.js +0 -220
  448. package/dist/draft-2YTMB4YM.js +0 -313
  449. package/dist/draft-EWGNZUU4.js +0 -288
  450. package/dist/draft-L7EN5TZD.js +0 -342
  451. package/dist/draft-R7BNWMBR.js +0 -408
  452. package/dist/experiments-C3M65LMP.js +0 -236
  453. package/dist/facets-SGS4HDCM.js +0 -117
  454. package/dist/feedback-256D3HOY.js +0 -115
  455. package/dist/feedback-record-FDOIZ3HV.js +0 -269
  456. package/dist/fetch-EODKEOLX.js +0 -204
  457. package/dist/fit-VEUYZEG6.js +0 -65
  458. package/dist/flows-RCOWB5BY.js +0 -250
  459. package/dist/fonts-33UOE4X3.js +0 -39
  460. package/dist/forecast-372Q6KQZ.js +0 -169
  461. package/dist/forecast-I3WRFKQL.js +0 -121
  462. package/dist/funnel-MLPPNJQK.js +0 -397
  463. package/dist/generate-JQIK3UYS.js +0 -263
  464. package/dist/get-AOHHMPZC.js +0 -59
  465. package/dist/get-SORMH25W.js +0 -82
  466. package/dist/google-JHTOX6WM.js +0 -3270
  467. package/dist/google-ads-CNREZMRN.js +0 -198
  468. package/dist/history-D5UQTJ4H.js +0 -102
  469. package/dist/history-VNLS2TKB.js +0 -69
  470. package/dist/history-ZE7OQGDR.js +0 -153
  471. package/dist/hubspot-WGP36QI3.js +0 -782
  472. package/dist/ideas-4F5JG4UV.js +0 -45
  473. package/dist/images-Q5MZ75SL.js +0 -92
  474. package/dist/ingest-52X3B37O.js +0 -123
  475. package/dist/ingest-NXISET6E.js +0 -27
  476. package/dist/insights-XY6II7TX.js +0 -132
  477. package/dist/inspect-JD4WLZ57.js +0 -192
  478. package/dist/intent-5QUPPZNI.js +0 -95
  479. package/dist/keyword-gap-IG3EFLDH.js +0 -130
  480. package/dist/keyword-metrics-DDW4MSLX.js +0 -200
  481. package/dist/keywords-for-site-3UM6THUN.js +0 -131
  482. package/dist/landing-EAEMVCED.js +0 -28
  483. package/dist/languages-LNHWSCMT.js +0 -40
  484. package/dist/leads-MITJNZWB.js +0 -115
  485. package/dist/learn-VLUC2TXW.js +0 -207
  486. package/dist/line-item-writes-HLQYQ4KG.js +0 -211
  487. package/dist/line-items-64KIKPCB.js +0 -107
  488. package/dist/link-NNSG5YQ4.js +0 -67
  489. package/dist/linkedin-JYN5LGP2.js +0 -1330
  490. package/dist/linkedin-person-OPCUWPLI.js +0 -139
  491. package/dist/list-5U4Z3PWU.js +0 -306
  492. package/dist/list-7S4KTZNU.js +0 -154
  493. package/dist/list-VQQICPK3.js +0 -67
  494. package/dist/locations-64JNCQID.js +0 -69
  495. package/dist/locations-KVAAO7LD.js +0 -40
  496. package/dist/log-63ZVYC6L.js +0 -95
  497. package/dist/make-7ITIZUJI.js +0 -1367
  498. package/dist/map-MTR4V7KE.js +0 -436
  499. package/dist/mcp-HKMQLXBC.js +0 -729
  500. package/dist/media-sources-ZBSBTB4C.js +0 -35
  501. package/dist/members-MTRJ3ZRS.js +0 -47
  502. package/dist/metrics-MXGA3EFS.js +0 -152
  503. package/dist/models-Z6SUHWKI.js +0 -155
  504. package/dist/normalize-SAKXSFEX.js +0 -144
  505. package/dist/options-L7B3SDIX.js +0 -125
  506. package/dist/organization-FFRNHVC5.js +0 -949
  507. package/dist/performance-AJA7YGOO.js +0 -5565
  508. package/dist/performance-F72KFQU5.js +0 -27
  509. package/dist/pixels-H642RPK4.js +0 -62
  510. package/dist/promoted-tweet-writes-32RAOXQR.js +0 -183
  511. package/dist/promoted-tweets-KMLFRWDN.js +0 -119
  512. package/dist/publish-FOSPQ2BE.js +0 -344
  513. package/dist/query-FT2BA3WH.js +0 -62
  514. package/dist/reddit-5PYYZNBJ.js +0 -29
  515. package/dist/refresh-AOHTPXU4.js +0 -97
  516. package/dist/release-G2UKFAQY.js +0 -63
  517. package/dist/relevant-pages-OCHLUV5K.js +0 -99
  518. package/dist/remove-K5C2URJE.js +0 -53
  519. package/dist/reopen-PWROABUC.js +0 -66
  520. package/dist/rerun-CVJYCCNK.js +0 -96
  521. package/dist/research-KLWC3JBI.js +0 -75
  522. package/dist/research-Z3OJXOS4.js +0 -265
  523. package/dist/reset-3QL7IOHF.js +0 -57
  524. package/dist/reset-GPO4MCSM.js +0 -57
  525. package/dist/resolve-7SW7FZ7Q.js +0 -124
  526. package/dist/retry-HNCUDQ7S.js +0 -63
  527. package/dist/retry-NVMOGTZD.js +0 -65
  528. package/dist/revenue-HDJFYUEB.js +0 -91
  529. package/dist/rules-RYHWD4HA.js +0 -99
  530. package/dist/rules-add-EMDFBYDA.js +0 -465
  531. package/dist/run-2XRDPVHX.js +0 -71
  532. package/dist/run-PXHQKRY5.js +0 -69
  533. package/dist/scaffold-ad-RJAXMKOX.js +0 -1513
  534. package/dist/scaffold-static-ad-4HLSHPJI.js +0 -1011
  535. package/dist/scaffold-video-UH6OOIQW.js +0 -885
  536. package/dist/schedule-WT22OEBF.js +0 -64
  537. package/dist/scheduled-agents-BLIDNRFX.js +0 -55
  538. package/dist/schema-FUCZHUNV.js +0 -135
  539. package/dist/schema-NSXMRNWM.js +0 -121
  540. package/dist/search-S5O3L4KX.js +0 -177
  541. package/dist/select-ISIQXRPF.js +0 -110
  542. package/dist/set-prompt-MAQN5CYY.js +0 -199
  543. package/dist/setup-links-HANLAGD2.js +0 -144
  544. package/dist/shopify-PKWH7WXV.js +0 -3980
  545. package/dist/site-GADKB2RP.js +0 -180
  546. package/dist/sources-CA7JLF4P.js +0 -30
  547. package/dist/sources-HUXVRGDH.js +0 -457
  548. package/dist/stale-2A33KEE7.js +0 -90
  549. package/dist/status-5JTRE3OM.js +0 -65
  550. package/dist/studio-6ZXUKA4G.js +0 -49
  551. package/dist/sync-RJFMKM6D.js +0 -57
  552. package/dist/sync-definition-AKZUCLEV.js +0 -70
  553. package/dist/tags-B2EXVMNS.js +0 -23
  554. package/dist/tags-JUIKSERD.js +0 -227
  555. package/dist/tags-LP6I7GY4.js +0 -26
  556. package/dist/tags-UHD43CAG.js +0 -23
  557. package/dist/tags-WJFCPOP7.js +0 -23
  558. package/dist/targeting-criteria-2LKBD5IH.js +0 -113
  559. package/dist/targets-O5JYFOCY.js +0 -106
  560. package/dist/testimonials-P63TKNJ2.js +0 -32
  561. package/dist/themes-R3A6IVQN.js +0 -95
  562. package/dist/top-companies-F7DUMWXA.js +0 -111
  563. package/dist/transcript-4RFSQA5U.js +0 -165
  564. package/dist/translate-WOJFJRAC.js +0 -603
  565. package/dist/triggers-4MHFN3VV.js +0 -144
  566. package/dist/unlink-5AXBQOIL.js +0 -70
  567. package/dist/unstage-SIBXT25Y.js +0 -88
  568. package/dist/update-4BDOO53L.js +0 -101
  569. package/dist/update-NNEMJQ4D.js +0 -155
  570. package/dist/update-O76YSKXB.js +0 -192
  571. package/dist/update-YS4QI2KP.js +0 -66
  572. package/dist/upload-XVV3HQ5W.js +0 -130
  573. package/dist/url-options-YZ6UG3NY.js +0 -131
  574. package/dist/url-params-XL5URMTG.js +0 -101
  575. package/dist/validate-42Q7X2KK.js +0 -125
  576. package/dist/videos-HMKEY5WY.js +0 -41
  577. package/dist/viewer-check-4XFEWEH3.js +0 -83
  578. package/dist/web-PYG3AOYS.js +0 -173
  579. package/dist/winning-ads-74BKOBVN.js +0 -86
  580. package/dist/write-commands-43GTQIR6.js +0 -1525
  581. package/dist/x-6WSV55RN.js +0 -47
  582. /package/dist/{account-2HJ4GKHN.js.map → account-IG3U6UXZ.js.map} +0 -0
  583. /package/dist/{account-MTMCQQYH.js.map → account-JCQYOGJD.js.map} +0 -0
  584. /package/dist/{account-reads-X36NPCX5.js.map → account-reads-LOCJMS35.js.map} +0 -0
  585. /package/dist/{account-users-FJ63HUJT.js.map → account-users-AZPQPHD3.js.map} +0 -0
  586. /package/dist/{account-writes-FZ3KCJZY.js.map → account-writes-BSSKSTZ2.js.map} +0 -0
  587. /package/dist/{accounts-VYQINKID.js.map → accounts-2PZV6VRS.js.map} +0 -0
  588. /package/dist/{accounts-PLZTPM52.js.map → accounts-5I6USVT7.js.map} +0 -0
  589. /package/dist/{actions-NKCYYR7Q.js.map → actions-TSNXITQM.js.map} +0 -0
  590. /package/dist/{activecampaign-LQHDIHN5.js.map → activecampaign-2RKR6P74.js.map} +0 -0
  591. /package/dist/{ad-group-writes-XGG3WQEO.js.map → ad-group-writes-KMB3OMJG.js.map} +0 -0
  592. /package/dist/{ad-groups-GZIPUN64.js.map → ad-groups-E67CNQS4.js.map} +0 -0
  593. /package/dist/{ad-writes-2VTRWQLW.js.map → ad-writes-FNMKNFUN.js.map} +0 -0
  594. /package/dist/{add-HLBKTI3H.js.map → add-ENUFKN5V.js.map} +0 -0
  595. /package/dist/{add-6EHN5G6X.js.map → add-SRHNKSJT.js.map} +0 -0
  596. /package/dist/{ads-LNWALF6G.js.map → ads-4LASBP4G.js.map} +0 -0
  597. /package/dist/{ads-CWXQLZCC.js.map → ads-X33452HM.js.map} +0 -0
  598. /package/dist/{advertisers-YMIPR2QG.js.map → advertisers-XO5EJXR5.js.map} +0 -0
  599. /package/dist/{analytics-6VAB2VYM.js.map → analytics-AZTZVHVA.js.map} +0 -0
  600. /package/dist/{analytics-37M6Z37U.js.map → analytics-ED3NBGJJ.js.map} +0 -0
  601. /package/dist/{animate-DM4OUJMR.js.map → animate-OWXAT2RK.js.map} +0 -0
  602. /package/dist/{assign-V25HMGMU.js.map → assign-SIXEBHRW.js.map} +0 -0
  603. /package/dist/{audience-size-FKNAK4QD.js.map → audience-size-ACNA4JIX.js.map} +0 -0
  604. /package/dist/{audiences-7D5VPOWF.js.map → audiences-3R574STZ.js.map} +0 -0
  605. /package/dist/{audit-6VVUMMYL.js.map → audit-K5BEYW7G.js.map} +0 -0
  606. /package/dist/{autocomplete-NETVGJRC.js.map → autocomplete-XIYI56SU.js.map} +0 -0
  607. /package/dist/{avatars-HH4LOUA3.js.map → avatars-C5CUPLIV.js.map} +0 -0
  608. /package/dist/{bid-pricing-SCTUSHFI.js.map → bid-pricing-2UF6O2K6.js.map} +0 -0
  609. /package/dist/{brand-FTPQYYDU.js.map → brand-ATWMTJFS.js.map} +0 -0
  610. /package/dist/{brief-MCKNRSWM.js.map → brief-A65JXAER.js.map} +0 -0
  611. /package/dist/{campaign-groups-ZNKBTXPV.js.map → campaign-groups-F5C7C7NG.js.map} +0 -0
  612. /package/dist/{campaign-writes-5TWXZ44R.js.map → campaign-writes-TNW7KKQQ.js.map} +0 -0
  613. /package/dist/{campaign-writes-H22P6YPW.js.map → campaign-writes-Z2J24SUZ.js.map} +0 -0
  614. /package/dist/{campaigns-265JXD2Z.js.map → campaigns-43OS6EUG.js.map} +0 -0
  615. /package/dist/{campaigns-E64SHT67.js.map → campaigns-TQZXAMWE.js.map} +0 -0
  616. /package/dist/{campaigns-GYNO5P22.js.map → campaigns-XTNWM3VV.js.map} +0 -0
  617. /package/dist/{canvas-E4ZT2K7I.js.map → canvas-UGO5IHCA.js.map} +0 -0
  618. /package/dist/{capabilities-RVNBW4OL.js.map → capabilities-XHPLFYH2.js.map} +0 -0
  619. /package/dist/{catalog-DPUQBZZ7.js.map → catalog-7LINLVVY.js.map} +0 -0
  620. /package/dist/{catalogs-SBXFAD3X.js.map → catalogs-IR22RGZD.js.map} +0 -0
  621. /package/dist/{changes-HXVZUJMH.js.map → changes-JAGWBHQC.js.map} +0 -0
  622. /package/dist/{chatgpt-UXJPCGZU.js.map → chatgpt-NE2RBMFK.js.map} +0 -0
  623. /package/dist/{chats-4SQSGOFC.js.map → chats-QFZ4DGI7.js.map} +0 -0
  624. /package/dist/{check-4WC2RLDR.js.map → check-AEMZGF5G.js.map} +0 -0
  625. /package/dist/{chunk-ZL43WZBX.js.map → chunk-34JTMTPJ.js.map} +0 -0
  626. /package/dist/{chunk-WLA7CA4G.js.map → chunk-3C42N42Q.js.map} +0 -0
  627. /package/dist/{chunk-RHEWQB5O.js.map → chunk-3EUITH4J.js.map} +0 -0
  628. /package/dist/{chunk-RP36XHWT.js.map → chunk-4IRJ5JXA.js.map} +0 -0
  629. /package/dist/{chunk-D4NK7SPT.js.map → chunk-4QGNRCSE.js.map} +0 -0
  630. /package/dist/{chunk-UT77RVVU.js.map → chunk-4XFP43NH.js.map} +0 -0
  631. /package/dist/{chunk-I6JPTDKR.js.map → chunk-5EHSDRMJ.js.map} +0 -0
  632. /package/dist/{chunk-ZEUAJAKN.js.map → chunk-5IFFPSEN.js.map} +0 -0
  633. /package/dist/{chunk-P3VY5JEM.js.map → chunk-64ALJ6TJ.js.map} +0 -0
  634. /package/dist/{chunk-F5UU5PAE.js.map → chunk-6KGMWAUL.js.map} +0 -0
  635. /package/dist/{chunk-JAC6JVCI.js.map → chunk-6OIKNJ7G.js.map} +0 -0
  636. /package/dist/{chunk-6KWT3Z35.js.map → chunk-6ZUGN27V.js.map} +0 -0
  637. /package/dist/{chunk-QYKZ3FVE.js.map → chunk-7MWELLCN.js.map} +0 -0
  638. /package/dist/{chunk-TNZUMU55.js.map → chunk-7UFV6H7J.js.map} +0 -0
  639. /package/dist/{chunk-4D73PLXU.js.map → chunk-B3CDNANO.js.map} +0 -0
  640. /package/dist/{chunk-AYEWXTSF.js.map → chunk-B3LSWNUR.js.map} +0 -0
  641. /package/dist/{chunk-6I7N2WYU.js.map → chunk-BIHU5GCE.js.map} +0 -0
  642. /package/dist/{chunk-EOMY5SUJ.js.map → chunk-BNI5DAB7.js.map} +0 -0
  643. /package/dist/{chunk-YDGBWP3I.js.map → chunk-CISE4DOX.js.map} +0 -0
  644. /package/dist/{chunk-CKIDKN6H.js.map → chunk-CVWYS7SE.js.map} +0 -0
  645. /package/dist/{chunk-FVDC6AKZ.js.map → chunk-CXRS5YLB.js.map} +0 -0
  646. /package/dist/{chunk-JY3OJBKZ.js.map → chunk-E5H7JIWB.js.map} +0 -0
  647. /package/dist/{chunk-SXYEIZND.js.map → chunk-EI6R7GKQ.js.map} +0 -0
  648. /package/dist/{chunk-ZKYJYBDR.js.map → chunk-F743MUNY.js.map} +0 -0
  649. /package/dist/{chunk-J4JY435Z.js.map → chunk-FEVA2MNA.js.map} +0 -0
  650. /package/dist/{chunk-3I66ZQTI.js.map → chunk-FJXSVDWW.js.map} +0 -0
  651. /package/dist/{chunk-QK3HMAVU.js.map → chunk-G6J6AWTE.js.map} +0 -0
  652. /package/dist/{chunk-XYNQMRNX.js.map → chunk-GCZK4BMB.js.map} +0 -0
  653. /package/dist/{chunk-LODEDXCD.js.map → chunk-GKIYKOJW.js.map} +0 -0
  654. /package/dist/{chunk-3SEXQVMX.js.map → chunk-H4OVNGUK.js.map} +0 -0
  655. /package/dist/{chunk-MELSTI6W.js.map → chunk-HWOOMK5A.js.map} +0 -0
  656. /package/dist/{chunk-XLG3SJ3K.js.map → chunk-IABSARSS.js.map} +0 -0
  657. /package/dist/{chunk-Z4TWYYM3.js.map → chunk-IAOKMWUF.js.map} +0 -0
  658. /package/dist/{chunk-DYTBVVQX.js.map → chunk-ICEYCLRU.js.map} +0 -0
  659. /package/dist/{chunk-WOE4TZHJ.js.map → chunk-JBNT444M.js.map} +0 -0
  660. /package/dist/{chunk-SWPJZJTY.js.map → chunk-K3HZVRBJ.js.map} +0 -0
  661. /package/dist/{chunk-DNZVBP2W.js.map → chunk-KCZY5Y4E.js.map} +0 -0
  662. /package/dist/{chunk-PXGR3VGW.js.map → chunk-KTO2Y3DI.js.map} +0 -0
  663. /package/dist/{chunk-GN7K3NPI.js.map → chunk-LDFM37DM.js.map} +0 -0
  664. /package/dist/{chunk-JLLGXYOZ.js.map → chunk-LHC6OHQ6.js.map} +0 -0
  665. /package/dist/{chunk-ANV42DGJ.js.map → chunk-LMSV7NQY.js.map} +0 -0
  666. /package/dist/{chunk-XJ2GXHU4.js.map → chunk-LPDHNMOY.js.map} +0 -0
  667. /package/dist/{chunk-4S5ZAG4S.js.map → chunk-METHLFNZ.js.map} +0 -0
  668. /package/dist/{chunk-5UEBOBLO.js.map → chunk-MI3HAKXY.js.map} +0 -0
  669. /package/dist/{chunk-NBWZVBDG.js.map → chunk-P6FMQHJJ.js.map} +0 -0
  670. /package/dist/{chunk-4EGXO63N.js.map → chunk-PT73IEI6.js.map} +0 -0
  671. /package/dist/{chunk-TARINRA4.js.map → chunk-Q6LCL67T.js.map} +0 -0
  672. /package/dist/{chunk-IRINY4B2.js.map → chunk-RFGO4DHJ.js.map} +0 -0
  673. /package/dist/{chunk-MEK7SMWO.js.map → chunk-RMTM22JO.js.map} +0 -0
  674. /package/dist/{chunk-G4VG6ZV3.js.map → chunk-S2L2A2ZN.js.map} +0 -0
  675. /package/dist/{chunk-T7SOINEA.js.map → chunk-SA3P64PQ.js.map} +0 -0
  676. /package/dist/{chunk-MZPS46OR.js.map → chunk-SIKCVWM3.js.map} +0 -0
  677. /package/dist/{chunk-T62SKL4T.js.map → chunk-SIOLRCLE.js.map} +0 -0
  678. /package/dist/{chunk-TBIDT7FG.js.map → chunk-TK6BXI5A.js.map} +0 -0
  679. /package/dist/{chunk-VOUCQ2YW.js.map → chunk-V4UJERGL.js.map} +0 -0
  680. /package/dist/{chunk-IGIACW2B.js.map → chunk-V6NFLQKX.js.map} +0 -0
  681. /package/dist/{chunk-EQAEWL6A.js.map → chunk-VISKG4IA.js.map} +0 -0
  682. /package/dist/{chunk-VVMRSEW6.js.map → chunk-WJ6KKTIU.js.map} +0 -0
  683. /package/dist/{chunk-WFJ7KR5K.js.map → chunk-WPZTFSED.js.map} +0 -0
  684. /package/dist/{chunk-TNHIYELA.js.map → chunk-X5UMVG4S.js.map} +0 -0
  685. /package/dist/{chunk-AI2SKWZE.js.map → chunk-X7ROPKZT.js.map} +0 -0
  686. /package/dist/{chunk-EH34RWKR.js.map → chunk-XDJZH2JV.js.map} +0 -0
  687. /package/dist/{chunk-KIXVHP2C.js.map → chunk-XU6XQPNM.js.map} +0 -0
  688. /package/dist/{chunk-SNWFM2DB.js.map → chunk-YKFGXS26.js.map} +0 -0
  689. /package/dist/{chunk-HBDWE7WK.js.map → chunk-YQB66YKJ.js.map} +0 -0
  690. /package/dist/{chunk-H6CS7VSO.js.map → chunk-YSTAPNQP.js.map} +0 -0
  691. /package/dist/{chunk-6FLUNQHT.js.map → chunk-ZSLZOUGC.js.map} +0 -0
  692. /package/dist/{claim-G4MRH7Q7.js.map → claim-R6OG5IHM.js.map} +0 -0
  693. /package/dist/{companies-TV5SX7IW.js.map → companies-M36P2XXN.js.map} +0 -0
  694. /package/dist/{company-W2N3H7AG.js.map → company-NQAS3QF6.js.map} +0 -0
  695. /package/dist/{complete-CTS2VDY5.js.map → complete-FJHCHRYO.js.map} +0 -0
  696. /package/dist/{connect-64CFSYYE.js.map → connect-TEWDGN6C.js.map} +0 -0
  697. /package/dist/{conversation-T57OY4L4.js.map → conversation-UC7PXJQ3.js.map} +0 -0
  698. /package/dist/{conversion-report-RB2MU7UD.js.map → conversion-report-R4KJI4VA.js.map} +0 -0
  699. /package/dist/{conversion-upload-command-HFZYKVXA.js.map → conversion-upload-command-WCLWA27O.js.map} +0 -0
  700. /package/dist/{conversion-writes-56AIPXPK.js.map → conversion-writes-XIQEIDPS.js.map} +0 -0
  701. /package/dist/{conversions-P75BZDDN.js.map → conversions-D7P3KVQK.js.map} +0 -0
  702. /package/dist/{conversions-NRX76ZIT.js.map → conversions-RMBQNW3T.js.map} +0 -0
  703. /package/dist/{create-YKV66SQ6.js.map → create-GMZHI4BK.js.map} +0 -0
  704. /package/dist/{create-2IFLWXCE.js.map → create-J2AICQFF.js.map} +0 -0
  705. /package/dist/{create-2ZM3SAMX.js.map → create-RVR33UQM.js.map} +0 -0
  706. /package/dist/{create-I6AVOYOS.js.map → create-VXHOWOVI.js.map} +0 -0
  707. /package/dist/{creatives-CSXTXOTD.js.map → creatives-SLKM5XNE.js.map} +0 -0
  708. /package/dist/{creatives-4HMWWE4O.js.map → creatives-YMFRT6SE.js.map} +0 -0
  709. /package/dist/{credentials-YQND7EIL.js.map → credentials-T3IID6QG.js.map} +0 -0
  710. /package/dist/{critique-EBQKUWBV.js.map → critique-2Y53EQ3S.js.map} +0 -0
  711. /package/dist/{critique-ABUU725C.js.map → critique-SMLSUHY2.js.map} +0 -0
  712. /package/dist/{crm-4GXVHO4R.js.map → crm-E35C36E3.js.map} +0 -0
  713. /package/dist/{crm-G2QOW4WY.js.map → crm-TPV4H4KN.js.map} +0 -0
  714. /package/dist/{currency-CHBV6WIO.js.map → currency-BY647ZB7.js.map} +0 -0
  715. /package/dist/{customers-SNDSWS2C.js.map → customers-PH376T52.js.map} +0 -0
  716. /package/dist/{delete-WSWCPQ4R.js.map → delete-4MNN3QXP.js.map} +0 -0
  717. /package/dist/{delete-YE3ZJKGK.js.map → delete-7PEW3V6J.js.map} +0 -0
  718. /package/dist/{delete-AXECUWUU.js.map → delete-TRONZNM2.js.map} +0 -0
  719. /package/dist/{demographics-UPLQV4VW.js.map → demographics-EZXWOSZE.js.map} +0 -0
  720. /package/dist/{discard-D3SPLQP2.js.map → discard-PHO5BKEZ.js.map} +0 -0
  721. /package/dist/{discover-ZU2DAV23.js.map → discover-TAJUFO5R.js.map} +0 -0
  722. /package/dist/{domain-OXNE56NK.js.map → domain-7GNF7QHV.js.map} +0 -0
  723. /package/dist/{download-DGVEUXKX.js.map → download-A4EYH6VD.js.map} +0 -0
  724. /package/dist/{draft-2SMIRPNZ.js.map → draft-NQG5RBSF.js.map} +0 -0
  725. /package/dist/{draft-L7EN5TZD.js.map → draft-PA3L7VG6.js.map} +0 -0
  726. /package/dist/{draft-2YTMB4YM.js.map → draft-QQWTEXVT.js.map} +0 -0
  727. /package/dist/{draft-R7BNWMBR.js.map → draft-RGSDXFFT.js.map} +0 -0
  728. /package/dist/{draft-EWGNZUU4.js.map → draft-SKEGKHIK.js.map} +0 -0
  729. /package/dist/{experiments-C3M65LMP.js.map → experiments-DEUWFSDQ.js.map} +0 -0
  730. /package/dist/{facets-SGS4HDCM.js.map → facets-KWT2NAGR.js.map} +0 -0
  731. /package/dist/{feedback-256D3HOY.js.map → feedback-A56L3VWN.js.map} +0 -0
  732. /package/dist/{feedback-record-FDOIZ3HV.js.map → feedback-record-FE4P5MKS.js.map} +0 -0
  733. /package/dist/{fetch-EODKEOLX.js.map → fetch-M5U4E5IE.js.map} +0 -0
  734. /package/dist/{fit-VEUYZEG6.js.map → fit-AYFRRDAN.js.map} +0 -0
  735. /package/dist/{flows-RCOWB5BY.js.map → flows-QKR7JW6H.js.map} +0 -0
  736. /package/dist/{fonts-33UOE4X3.js.map → fonts-RUHNGL7R.js.map} +0 -0
  737. /package/dist/{forecast-I3WRFKQL.js.map → forecast-V7IPL6EC.js.map} +0 -0
  738. /package/dist/{forecast-372Q6KQZ.js.map → forecast-VOND3WVO.js.map} +0 -0
  739. /package/dist/{funnel-MLPPNJQK.js.map → funnel-WNVS53CO.js.map} +0 -0
  740. /package/dist/{generate-JQIK3UYS.js.map → generate-SW5KLHXG.js.map} +0 -0
  741. /package/dist/{get-AOHHMPZC.js.map → get-AJNPJIX6.js.map} +0 -0
  742. /package/dist/{get-SORMH25W.js.map → get-ZLRSDJM6.js.map} +0 -0
  743. /package/dist/{google-JHTOX6WM.js.map → google-VYARAUQH.js.map} +0 -0
  744. /package/dist/{google-ads-CNREZMRN.js.map → google-ads-3PIHLIIF.js.map} +0 -0
  745. /package/dist/{history-ZE7OQGDR.js.map → history-34E26WGP.js.map} +0 -0
  746. /package/dist/{history-VNLS2TKB.js.map → history-7DF5HFJT.js.map} +0 -0
  747. /package/dist/{history-D5UQTJ4H.js.map → history-LWAKFSHW.js.map} +0 -0
  748. /package/dist/{hubspot-WGP36QI3.js.map → hubspot-HH7KVQU5.js.map} +0 -0
  749. /package/dist/{ideas-4F5JG4UV.js.map → ideas-VFZXVUFZ.js.map} +0 -0
  750. /package/dist/{images-Q5MZ75SL.js.map → images-LB4E2F5I.js.map} +0 -0
  751. /package/dist/{ingest-NXISET6E.js.map → ingest-LRUKF3EK.js.map} +0 -0
  752. /package/dist/{ingest-52X3B37O.js.map → ingest-VZ77AODJ.js.map} +0 -0
  753. /package/dist/{insights-XY6II7TX.js.map → insights-YVV5MHPQ.js.map} +0 -0
  754. /package/dist/{inspect-JD4WLZ57.js.map → inspect-X6XU4CXL.js.map} +0 -0
  755. /package/dist/{intent-5QUPPZNI.js.map → intent-GIAQDMHF.js.map} +0 -0
  756. /package/dist/{keyword-gap-IG3EFLDH.js.map → keyword-gap-NZF75XGF.js.map} +0 -0
  757. /package/dist/{keyword-metrics-DDW4MSLX.js.map → keyword-metrics-P546E6KW.js.map} +0 -0
  758. /package/dist/{keywords-for-site-3UM6THUN.js.map → keywords-for-site-AEFJ5BTU.js.map} +0 -0
  759. /package/dist/{landing-EAEMVCED.js.map → landing-RKO3LUST.js.map} +0 -0
  760. /package/dist/{languages-LNHWSCMT.js.map → languages-GGNN7FEK.js.map} +0 -0
  761. /package/dist/{leads-MITJNZWB.js.map → leads-OVYF2EKX.js.map} +0 -0
  762. /package/dist/{learn-VLUC2TXW.js.map → learn-UWJ24ZD5.js.map} +0 -0
  763. /package/dist/{line-item-writes-HLQYQ4KG.js.map → line-item-writes-46K4NKPJ.js.map} +0 -0
  764. /package/dist/{line-items-64KIKPCB.js.map → line-items-YRSGOQFS.js.map} +0 -0
  765. /package/dist/{link-NNSG5YQ4.js.map → link-XXRDZQFM.js.map} +0 -0
  766. /package/dist/{linkedin-JYN5LGP2.js.map → linkedin-W4OWO6QA.js.map} +0 -0
  767. /package/dist/{linkedin-person-OPCUWPLI.js.map → linkedin-person-SQTWLIN5.js.map} +0 -0
  768. /package/dist/{list-7S4KTZNU.js.map → list-E6WPSAQK.js.map} +0 -0
  769. /package/dist/{list-5U4Z3PWU.js.map → list-S34STWB3.js.map} +0 -0
  770. /package/dist/{list-VQQICPK3.js.map → list-XERZMEWU.js.map} +0 -0
  771. /package/dist/{locations-64JNCQID.js.map → locations-7RYEWKJO.js.map} +0 -0
  772. /package/dist/{locations-KVAAO7LD.js.map → locations-BU4ZGWAS.js.map} +0 -0
  773. /package/dist/{log-63ZVYC6L.js.map → log-CDN4H2JY.js.map} +0 -0
  774. /package/dist/{make-7ITIZUJI.js.map → make-JE7V2RWR.js.map} +0 -0
  775. /package/dist/{map-MTR4V7KE.js.map → map-SPSJ532D.js.map} +0 -0
  776. /package/dist/{mcp-HKMQLXBC.js.map → mcp-PBPHIS4Q.js.map} +0 -0
  777. /package/dist/{media-sources-ZBSBTB4C.js.map → media-sources-MZL4XML4.js.map} +0 -0
  778. /package/dist/{members-MTRJ3ZRS.js.map → members-RDNSONMW.js.map} +0 -0
  779. /package/dist/{metrics-MXGA3EFS.js.map → metrics-Z75Q2FHP.js.map} +0 -0
  780. /package/dist/{models-Z6SUHWKI.js.map → models-X2IXXAD6.js.map} +0 -0
  781. /package/dist/{normalize-SAKXSFEX.js.map → normalize-4KL73UBE.js.map} +0 -0
  782. /package/dist/{options-L7B3SDIX.js.map → options-7MN5WH3J.js.map} +0 -0
  783. /package/dist/{organization-FFRNHVC5.js.map → organization-NJT4G355.js.map} +0 -0
  784. /package/dist/{performance-F72KFQU5.js.map → performance-PG5T4D7M.js.map} +0 -0
  785. /package/dist/{performance-AJA7YGOO.js.map → performance-SB2KLMTO.js.map} +0 -0
  786. /package/dist/{pixels-H642RPK4.js.map → pixels-DBSPNHIE.js.map} +0 -0
  787. /package/dist/{promoted-tweet-writes-32RAOXQR.js.map → promoted-tweet-writes-PCWFF2EG.js.map} +0 -0
  788. /package/dist/{promoted-tweets-KMLFRWDN.js.map → promoted-tweets-ZSXREC4V.js.map} +0 -0
  789. /package/dist/{publish-FOSPQ2BE.js.map → publish-FIYZNQYO.js.map} +0 -0
  790. /package/dist/{query-FT2BA3WH.js.map → query-NMQKS4MY.js.map} +0 -0
  791. /package/dist/{reddit-5PYYZNBJ.js.map → reddit-7WRZ5B3I.js.map} +0 -0
  792. /package/dist/{refresh-AOHTPXU4.js.map → refresh-IKHSUY3E.js.map} +0 -0
  793. /package/dist/{release-G2UKFAQY.js.map → release-JCKOGRTY.js.map} +0 -0
  794. /package/dist/{relevant-pages-OCHLUV5K.js.map → relevant-pages-JRIDJL4L.js.map} +0 -0
  795. /package/dist/{remove-K5C2URJE.js.map → remove-KE63VJ3M.js.map} +0 -0
  796. /package/dist/{reopen-PWROABUC.js.map → reopen-4YSAVTOS.js.map} +0 -0
  797. /package/dist/{rerun-CVJYCCNK.js.map → rerun-K5SQ6GAQ.js.map} +0 -0
  798. /package/dist/{research-KLWC3JBI.js.map → research-OFHOHRFD.js.map} +0 -0
  799. /package/dist/{research-Z3OJXOS4.js.map → research-ORXD6AV4.js.map} +0 -0
  800. /package/dist/{reset-GPO4MCSM.js.map → reset-4CLSOD77.js.map} +0 -0
  801. /package/dist/{reset-3QL7IOHF.js.map → reset-BN4FDUZB.js.map} +0 -0
  802. /package/dist/{resolve-7SW7FZ7Q.js.map → resolve-F6QVMQGX.js.map} +0 -0
  803. /package/dist/{retry-NVMOGTZD.js.map → retry-JGAJF6CN.js.map} +0 -0
  804. /package/dist/{retry-HNCUDQ7S.js.map → retry-NJUIX2QT.js.map} +0 -0
  805. /package/dist/{revenue-HDJFYUEB.js.map → revenue-BYGHXTYJ.js.map} +0 -0
  806. /package/dist/{rules-RYHWD4HA.js.map → rules-MWTPVJTK.js.map} +0 -0
  807. /package/dist/{rules-add-EMDFBYDA.js.map → rules-add-3MJRAYXB.js.map} +0 -0
  808. /package/dist/{run-2XRDPVHX.js.map → run-CXD7RKYN.js.map} +0 -0
  809. /package/dist/{run-PXHQKRY5.js.map → run-NDJSLZNE.js.map} +0 -0
  810. /package/dist/{scaffold-ad-RJAXMKOX.js.map → scaffold-ad-2N7H7ACP.js.map} +0 -0
  811. /package/dist/{scaffold-static-ad-4HLSHPJI.js.map → scaffold-static-ad-R7T766AD.js.map} +0 -0
  812. /package/dist/{scaffold-video-UH6OOIQW.js.map → scaffold-video-22HVSFRR.js.map} +0 -0
  813. /package/dist/{schedule-WT22OEBF.js.map → schedule-ZEREUVXT.js.map} +0 -0
  814. /package/dist/{scheduled-agents-BLIDNRFX.js.map → scheduled-agents-5URJWW2E.js.map} +0 -0
  815. /package/dist/{schema-FUCZHUNV.js.map → schema-NQ7DXUHX.js.map} +0 -0
  816. /package/dist/{schema-NSXMRNWM.js.map → schema-U6GAKTQZ.js.map} +0 -0
  817. /package/dist/{search-S5O3L4KX.js.map → search-T5JFYDCZ.js.map} +0 -0
  818. /package/dist/{select-ISIQXRPF.js.map → select-SDFGLXMV.js.map} +0 -0
  819. /package/dist/{set-prompt-MAQN5CYY.js.map → set-prompt-JI5W6VPR.js.map} +0 -0
  820. /package/dist/{setup-links-HANLAGD2.js.map → setup-links-TOL7BFBE.js.map} +0 -0
  821. /package/dist/{shopify-PKWH7WXV.js.map → shopify-QXOGNIVU.js.map} +0 -0
  822. /package/dist/{site-GADKB2RP.js.map → site-NJDIUQY6.js.map} +0 -0
  823. /package/dist/{sources-HUXVRGDH.js.map → sources-EMUT5MV7.js.map} +0 -0
  824. /package/dist/{sources-CA7JLF4P.js.map → sources-M4IJL4H7.js.map} +0 -0
  825. /package/dist/{stale-2A33KEE7.js.map → stale-YYJNWLIE.js.map} +0 -0
  826. /package/dist/{status-5JTRE3OM.js.map → status-UZJGIDRI.js.map} +0 -0
  827. /package/dist/{studio-6ZXUKA4G.js.map → studio-OV2ZY5W3.js.map} +0 -0
  828. /package/dist/{sync-RJFMKM6D.js.map → sync-T3E7SP7B.js.map} +0 -0
  829. /package/dist/{sync-definition-AKZUCLEV.js.map → sync-definition-TLY4FQKC.js.map} +0 -0
  830. /package/dist/{tags-WJFCPOP7.js.map → tags-DPI3CAPB.js.map} +0 -0
  831. /package/dist/{tags-LP6I7GY4.js.map → tags-DS3W4EDB.js.map} +0 -0
  832. /package/dist/{tags-JUIKSERD.js.map → tags-HSUBVXPJ.js.map} +0 -0
  833. /package/dist/{tags-UHD43CAG.js.map → tags-WP7W57FY.js.map} +0 -0
  834. /package/dist/{tags-B2EXVMNS.js.map → tags-WWZFKW3Y.js.map} +0 -0
  835. /package/dist/{targeting-criteria-2LKBD5IH.js.map → targeting-criteria-PICDCHEV.js.map} +0 -0
  836. /package/dist/{targets-O5JYFOCY.js.map → targets-WOMHJXY7.js.map} +0 -0
  837. /package/dist/{testimonials-P63TKNJ2.js.map → testimonials-LDL66SSG.js.map} +0 -0
  838. /package/dist/{themes-R3A6IVQN.js.map → themes-RRLYZ46U.js.map} +0 -0
  839. /package/dist/{top-companies-F7DUMWXA.js.map → top-companies-RBRWAW27.js.map} +0 -0
  840. /package/dist/{transcript-4RFSQA5U.js.map → transcript-V6LZKOKQ.js.map} +0 -0
  841. /package/dist/{translate-WOJFJRAC.js.map → translate-53TPL46A.js.map} +0 -0
  842. /package/dist/{triggers-4MHFN3VV.js.map → triggers-DDV73LZ4.js.map} +0 -0
  843. /package/dist/{unlink-5AXBQOIL.js.map → unlink-PLS3GA5V.js.map} +0 -0
  844. /package/dist/{unstage-SIBXT25Y.js.map → unstage-GSWMVEVP.js.map} +0 -0
  845. /package/dist/{update-NNEMJQ4D.js.map → update-CIMCN33A.js.map} +0 -0
  846. /package/dist/{update-4BDOO53L.js.map → update-KK7QO2KE.js.map} +0 -0
  847. /package/dist/{update-O76YSKXB.js.map → update-X2H3GZ4I.js.map} +0 -0
  848. /package/dist/{update-YS4QI2KP.js.map → update-XNV6KHYK.js.map} +0 -0
  849. /package/dist/{upload-XVV3HQ5W.js.map → upload-OL2S2OSA.js.map} +0 -0
  850. /package/dist/{url-options-YZ6UG3NY.js.map → url-options-2TQCGD2W.js.map} +0 -0
  851. /package/dist/{url-params-XL5URMTG.js.map → url-params-QNSGNQ6N.js.map} +0 -0
  852. /package/dist/{validate-42Q7X2KK.js.map → validate-KC3UA552.js.map} +0 -0
  853. /package/dist/{videos-HMKEY5WY.js.map → videos-GBD36TD2.js.map} +0 -0
  854. /package/dist/{viewer-check-4XFEWEH3.js.map → viewer-check-LQUD2OYO.js.map} +0 -0
  855. /package/dist/{web-PYG3AOYS.js.map → web-K3L2BKAH.js.map} +0 -0
  856. /package/dist/{winning-ads-74BKOBVN.js.map → winning-ads-X3VYALHK.js.map} +0 -0
  857. /package/dist/{write-commands-43GTQIR6.js.map → write-commands-XUOCRBME.js.map} +0 -0
  858. /package/dist/{x-6WSV55RN.js.map → x-65WPQWOP.js.map} +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/command-loading.ts","../src/profile-help.ts","../src/agent-profile.ts"],"sourcesContent":["import type { Resolvable, SubCommandsDef } from \"citty\";\n\n/**\n * Which command families one `baker` invocation has to load.\n *\n * Loading every family is what made each `baker` process hold ~135 MB of heap\n * while it waited on one HTTP call: twenty parallel agents ran sixty of them and\n * filled an 8 GB Runtime. A command needs its own family and nothing else.\n */\nexport function familiesToLoad(argv: readonly string[], families: readonly string[]): string[] | \"all\" {\n const first = argv.find((token) => !token.startsWith(\"-\"));\n // `schema` reads the registry every family fills as it loads.\n if (first !== undefined && first !== \"schema\" && families.includes(first)) return [first];\n return \"all\";\n}\n\nexport type LoadableCommand = { meta?: Resolvable<unknown>; subCommands?: Resolvable<SubCommandsDef> };\n\nasync function resolved<T>(value: Resolvable<T>): Promise<T> {\n return typeof value === \"function\" ? await (value as () => T | Promise<T>)() : await value;\n}\n\n/** The command's subcommands, loaded in place if they were declared lazily. */\nasync function subCommandsOf(command: LoadableCommand): Promise<SubCommandsDef | undefined> {\n if (command.subCommands === undefined) return undefined;\n const subCommands = await resolved(command.subCommands);\n command.subCommands = subCommands;\n return subCommands;\n}\n\n/**\n * The subcommand of `command` that `token` names, by its name or an alias, as\n * citty finds it — loaded in place. An alias lives in the subcommand's own\n * meta, so a token that is no name loads the siblings to read theirs.\n */\nexport async function loadSubCommandNamed(\n command: LoadableCommand,\n token: string,\n): Promise<[string, LoadableCommand] | null> {\n const subCommands = await subCommandsOf(command);\n if (!subCommands) return null;\n const named = subCommands[token];\n if (named !== undefined) {\n const loaded = await resolved(named);\n subCommands[token] = loaded;\n return [token, loaded];\n }\n for (const [name, sub] of Object.entries(subCommands)) {\n const loaded = await resolved(sub);\n subCommands[name] = loaded;\n const meta = (await resolved(loaded.meta ?? {})) as { alias?: unknown };\n const aliases = Array.isArray(meta.alias) ? meta.alias : meta.alias === undefined ? [] : [meta.alias];\n if (aliases.includes(token)) return [name, loaded];\n }\n return null;\n}\n\n/** Loads, in place, every command at every depth. */\nexport async function loadAllCommands(command: LoadableCommand): Promise<void> {\n const subCommands = await subCommandsOf(command);\n if (!subCommands) return;\n for (const [name, sub] of Object.entries(subCommands)) {\n const loaded = await resolved(sub);\n subCommands[name] = loaded;\n await loadAllCommands(loaded);\n }\n}\n\n/**\n * Loads, in place, the command `argv` names and every parent on the way — and\n * nothing else, so the flag guards in `cli.ts` see the command they judge while\n * its siblings stay unloaded. Everything loads for `schema` and an unknown\n * name, which need the whole tree. It stops at the first flag: the organization\n * guard (`agent-profile.ts`) walks on past one itself, and loads the subtree a\n * `--help` lists.\n */\nexport async function loadCommands<T extends LoadableCommand>(root: T, argv: readonly string[]): Promise<T> {\n const families = Object.keys((await subCommandsOf(root)) ?? {});\n if (familiesToLoad(argv, families) === \"all\") {\n await loadAllCommands(root);\n return root;\n }\n let command: LoadableCommand = root;\n for (const token of argv) {\n if (token === \"--\" || token.startsWith(\"-\")) break;\n const subCommands = await subCommandsOf(command);\n const sub = subCommands?.[token];\n if (!subCommands || sub === undefined) break;\n const loaded = await resolved(sub);\n subCommands[token] = loaded;\n command = loaded;\n }\n return root;\n}\n","/**\n * What a command's help says, for the agent reading it.\n *\n * Descriptions are written for a company's agent, which may run every command:\n * they cite writes as examples (`baker ads meta campaigns create …`) and say a\n * family \"lists campaigns, or stages writes\". Read by the organization's agent,\n * which may only read, each is a call it would make and be refused. So a line\n * that names a command the reader may not run leaves its help, and where a\n * family holds commands the reader may not run, so does the talk of staging\n * them. A family the reader may change whole (the organization's own Scheduled\n * agents) keeps its staging, because it is how that family works.\n */\n\nimport type { AgentProfile } from \"./agent-profile.ts\";\n\ntype HelpNode = { meta?: unknown; subCommands?: unknown };\ntype Offers = (path: string) => boolean;\n\nfunction loadedSubCommands(node: HelpNode): Array<[string, HelpNode]> {\n const subCommands = node.subCommands;\n if (typeof subCommands !== \"object\" || subCommands === null) return [];\n return Object.entries(subCommands as Record<string, unknown>).flatMap(([name, sub]) =>\n typeof sub === \"object\" && sub !== null ? [[name, sub as HelpNode] as [string, HelpNode]] : [],\n );\n}\n\nfunction subCommandNames(node: HelpNode): string[] {\n const subCommands = node.subCommands;\n return typeof subCommands === \"object\" && subCommands !== null ? Object.keys(subCommands) : [];\n}\n\n/**\n * The command words name (`baker <words>`, or a family's command in backticks),\n * as far as the tree reaches; none when the first is no family. Where the tree\n * is not loaded this far (another family, a sibling this call never needed),\n * the words as written stand for the command: `offers` reads a command by its\n * leading words, so an argument after them changes nothing.\n */\nfunction commandOf(root: HelpNode, mention: string): string[] {\n const words = mention.trim().split(/\\s+/);\n let node: HelpNode = root;\n const path: string[] = [];\n for (const word of words) {\n const loaded = loadedSubCommands(node).find(([name]) => name === word)?.[1];\n if (!loaded) {\n // Not loaded is not \"not there\": a lazy entry of that name stands for the words written.\n return subCommandNames(node).includes(word) ? [words.join(\" \")] : path.length > 0 ? [path.join(\" \")] : [];\n }\n node = loaded;\n path.push(word);\n }\n return [path.join(\" \")];\n}\n\nfunction indentOf(line: string): number {\n return line.length - line.trimStart().length;\n}\n\n/**\n * The lines without those `drops` says go, each taken with what continues it:\n * the lines indented under it, the next line after a trailing `\\`, and the rest\n * of a sentence wrapped onto the lines below. `drops` returns the kept text of\n * a line, or null to drop it.\n */\nfunction dropping(lines: string[], drops: (line: string) => string | null): string[] {\n const kept: string[] = [];\n let carried: ((line: string) => boolean) | null = null;\n for (const line of lines) {\n if (carried?.(line)) continue;\n carried = null;\n const rest = drops(line);\n if (rest !== null) {\n kept.push(rest);\n continue;\n }\n const indent = indentOf(line);\n if (/\\\\\\s*$/.test(line)) {\n let open = true;\n carried = (next) => {\n const continues = open;\n open = /\\\\\\s*$/.test(next);\n return continues;\n };\n } else if (indent === 0 && !/[.:!?)]\\s*$/.test(line)) {\n let open = true;\n carried = (next) => {\n const continues = open && next.trim() !== \"\" && indentOf(next) === 0;\n open = continues && !/[.:!?)]\\s*$/.test(next);\n return continues;\n };\n } else if (indent > 0) {\n carried = (next) => next.trim() !== \"\" && indentOf(next) > indent;\n }\n }\n return kept;\n}\n\n/** A line that stands alone — an example, a table row, a \"Label: …\" entry — goes whole. */\nconst STANDALONE_LINE = /^(?:\\s|baker\\b|[A-Z][\\w ]{0,30}:\\s)/;\n\nfunction balanced(text: string): boolean {\n return (text.match(/\\(/g)?.length ?? 0) === (text.match(/\\)/g)?.length ?? 0);\n}\n\n/** Each command the text names, at where it names it: `baker <words>`, or a family's `<words>` in backticks. */\nfunction commandMentions(root: HelpNode, text: string): Array<{ at: number; words: string }> {\n const families = new Set(subCommandNames(root));\n const quoted = [...text.matchAll(/`([a-z][\\w-]*(?:[ \\t][a-z][\\w-]*)*)(?=[`\\s<])/g)].filter((match) =>\n families.has((match[1] ?? \"\").split(/\\s+/)[0] ?? \"\"),\n );\n return [...text.matchAll(/`?\\bbaker ((?:[a-z][\\w-]*[ \\t]?)+)/g), ...quoted].map((match) => ({\n at: match.index,\n words: match[1] ?? \"\",\n }));\n}\n\n/**\n * Where the text first mentions something the reader may not use — a command\n * it is not offered, or a flag it is refused (`--add-trigger`) — or -1.\n */\nfunction firstUnusable(root: HelpNode, text: string, offered: Offers, refusedFlags: readonly string[]): number {\n const commands = commandMentions(root, text)\n .filter(({ words }) => commandOf(root, words).some((path) => !offered(path)))\n .map(({ at }) => at);\n const flags = refusedFlags.flatMap((flag) => {\n const match = new RegExp(`--${flag}(?![\\\\w-])`).exec(text);\n return match ? [match.index] : [];\n });\n const at = [...commands, ...flags];\n return at.length > 0 ? Math.min(...at) : -1;\n}\n\n/**\n * The sentence without what it says about something the reader may not use:\n * cut back to the clause before the mention when one stands on its own, else\n * dropped.\n */\nfunction sentenceWithout(sentence: string, unusableAt: number): string {\n if (unusableAt === -1) return sentence;\n const before = sentence.slice(0, unusableAt).replace(/`$/, \"\");\n const cut = Math.max(before.lastIndexOf(\", \"), before.lastIndexOf(\" — \"), before.lastIndexOf(\"; \"));\n const clause = cut === -1 ? \"\" : before.slice(0, cut).trim();\n // \"To undo one, `baker …`\" only led to the command.\n const leadsIn = /^(?:to|use|run|call|for|with)\\b/i.test(clause);\n return clause.split(/\\s+/).length >= 3 && balanced(clause) && !leadsIn ? `${clause}.` : \"\";\n}\n\n/** A sentence that leans on the one before it (\"It never touches a live tag.\"). */\nconst LEANS_BACK = /^(?:it|they|this|that|these|those)\\b/i;\n\n/** The text without any mention of a command the reader may not run, or a flag it is refused. */\nexport function withoutUnoffered(\n root: HelpNode,\n text: string,\n offered: Offers,\n refusedFlags: readonly string[] = [],\n): string {\n const unusable = (part: string) => firstUnusable(root, part, offered, refusedFlags);\n return dropping(text.split(\"\\n\"), (line) => {\n if (unusable(line) === -1) return line;\n if (STANDALONE_LINE.test(line)) return null;\n const kept: string[] = [];\n let dropped = false;\n for (const sentence of line.split(/(?<=[.!?])\\s+/)) {\n const rest: string = dropped && LEANS_BACK.test(sentence) ? \"\" : sentenceWithout(sentence, unusable(sentence));\n dropped = rest === \"\";\n if (rest !== \"\") kept.push(rest);\n }\n return kept.length === 0 ? null : kept.join(\" \");\n }).join(\"\\n\");\n}\n\n/** Whether anything loaded under `path` is a command the reader may not run. */\nfunction holdsUnoffered(node: HelpNode, path: string[], offered: Offers): boolean {\n return loadedSubCommands(node).some(\n ([name, sub]) => !offered([...path, name].join(\" \")) || holdsUnoffered(sub, [...path, name], offered),\n );\n}\n\n/** A sentence or line that is about staging a change, from its first words. */\nconst WRITE_TALK =\n /^(?:stage\\b|staged\\b|staging\\b|write subcommands\\b|writes\\b|then stage\\b|drafts:|staged vs published\\b|lifecycle:|nothing staged\\b|on publish\\b|\\w+(?: \\/ \\w+)*\\s+—\\s+stage\\b)/i;\n\n/** The tail of a sentence offering a change: \"List campaigns, or stage writes (…)\". */\nconst WRITE_CLAUSE =\n /(?:\\s*(?:[,;]|\\s—|\\s-)\\s*(?:(?:or|plus|and)\\s+)?|\\s+(?:or|plus|and)\\s+)(?:stage[sd]?|staged)\\b[^.]*/gi;\n\n/** \"List, show, amend or clear …\": a sentence opening on a list of this command's own verbs. */\nconst VERB_LIST = /^((?:[A-Za-z]+, )*[A-Za-z]+,? (?:or|and) [a-z]+)\\b/;\n\n/** The sentence naming, of the verbs it opens on, only those the reader may run; \"\" when none. */\nfunction withOfferedVerbs(sentence: string, children: ReadonlySet<string>, unoffered: ReadonlySet<string>): string {\n const list = VERB_LIST.exec(sentence)?.[1];\n if (!list) return sentence;\n const verbs = list.split(/,\\s*(?:(?:or|and)\\s+)?|\\s+(?:or|and)\\s+/).map((verb) => verb.toLowerCase());\n if (!verbs.every((verb) => children.has(verb))) return sentence;\n const kept = verbs.filter((verb) => !unoffered.has(verb));\n if (kept.length === 0) return \"\";\n const named = kept.length === 1 ? (kept[0] ?? \"\") : `${kept.slice(0, -1).join(\", \")} or ${kept.at(-1)}`;\n return `${named.charAt(0).toUpperCase()}${named.slice(1)}${sentence.slice(list.length)}`;\n}\n\n/** Whether text opens on the name of a command here the reader may not run (\"Release if…\", \" associate-campaign / …\"). */\nfunction opensOnUnoffered(text: string, unoffered: ReadonlySet<string>): boolean {\n const first =\n text\n .trim()\n .split(/[\\s/]+/)[0]\n ?.toLowerCase() ?? \"\";\n return unoffered.has(first);\n}\n\n/** A line that is about a change: staging talk, a command it may not run, or \"Library writes (…):\" over reads. */\nfunction isWriteLine(line: string, unoffered: ReadonlySet<string>): boolean {\n if (WRITE_TALK.test(line.trim())) return true;\n if (indentOf(line) > 0) return opensOnUnoffered(line, unoffered);\n return /:\\s*$/.test(line) && /\\bwrites?\\b/i.test(line);\n}\n\nfunction withoutWriteTalk(paragraph: string, children: ReadonlySet<string>, unoffered: ReadonlySet<string>): string {\n const prose = (text: string) =>\n text\n .replace(WRITE_CLAUSE, \"\")\n .split(/(?<=[.!?])\\s+/)\n .map((sentence) => withOfferedVerbs(sentence, children, unoffered))\n .filter(\n (sentence) => sentence !== \"\" && !WRITE_TALK.test(sentence.trim()) && !opensOnUnoffered(sentence, unoffered),\n )\n .join(\" \");\n const lines = paragraph.split(\"\\n\");\n // Examples, tables and headings are kept line by line, and a line of prose among them sentence by sentence.\n if (lines.some((line) => /^\\s/.test(line) || STANDALONE_LINE.test(line) || /:\\s*$/.test(line))) {\n return dropping(lines, (line) => {\n if (isWriteLine(line, unoffered)) return null;\n if (indentOf(line) > 0 || STANDALONE_LINE.test(line) || !/[.!?]\\s*$/.test(line)) return line;\n const kept = prose(line);\n return kept === \"\" ? null : kept;\n }).join(\"\\n\");\n }\n return prose(lines.join(\" \"));\n}\n\n/** \"Subcommands: list (default), remove, clear.\" names only the ones the reader may run. */\nfunction withOfferedSubcommands(text: string, path: string[], offered: Offers): string {\n return text.replace(/Subcommands: ([^.]*)\\./g, (_whole, list: string) => {\n const kept = list.split(/,\\s*/).filter((item) => offered([...path, item.split(/\\s/)[0] ?? \"\"].join(\" \")));\n return kept.length > 0 ? `Subcommands: ${kept.join(\", \")}.` : \"\";\n });\n}\n\n/** Drops a heading whose block below it was emptied, and the blank lines left behind. */\nfunction tidy(text: string): string {\n const lines = text.split(\"\\n\");\n const kept = lines.filter((line, index) => {\n if (!/:\\s*$/.test(line)) return true;\n const next = lines.slice(index + 1).find((later) => later.trim() !== \"\");\n return next !== undefined && /^\\s/.test(next) && lines[index + 1]?.trim() !== \"\";\n });\n return kept\n .join(\"\\n\")\n .replace(/\\n{3,}/g, \"\\n\\n\")\n .replace(/^(?:[ \\t]*\\n)+/, \"\")\n .trimEnd();\n}\n\nexport function describedFor(\n root: HelpNode,\n description: string,\n path: string[],\n node: HelpNode,\n profile: AgentProfile,\n offered: Offers,\n refusedFlags: readonly string[] = [],\n): string {\n const cited = withoutUnoffered(root, description, offered, refusedFlags);\n if (profile === \"company\" || !holdsUnoffered(node, path, offered)) return tidy(cited);\n const children = new Set(subCommandNames(node));\n const unoffered = new Set([...children].filter((name) => !offered([...path, name].join(\" \"))));\n const shaped = cited\n .split(/\\n\\s*\\n/)\n .map((paragraph) => withoutWriteTalk(withOfferedSubcommands(paragraph, path, offered), children, unoffered))\n .join(\"\\n\\n\");\n const text = tidy(shaped);\n if (text !== \"\") return text;\n const reads = loadedSubCommands(node).flatMap(([name]) => (offered([...path, name].join(\" \")) ? [name] : []));\n return reads.length > 0 ? `Read: ${reads.join(\", \")}.` : \"\";\n}\n","import { type LoadableCommand, loadAllCommands, loadSubCommandNamed } from \"./command-loading.ts\";\nimport { optionalWorkspaceKind } from \"./env.ts\";\nimport { describedFor, withoutUnoffered } from \"./profile-help.ts\";\n\n/**\n * Which commands this CLI offers the agent running it.\n *\n * One CLI serves two agents. A company's agent works inside its own workspace\n * and changes it; it is offered everything, except the organization family,\n * which is for reading other companies and means nothing to it. The\n * organization workspace's agent reads every company of its organization and\n * changes none of them: it is offered the reads alone, plus the research and\n * judgment it runs as itself, and its own Scheduled agents.\n *\n * This is what the agent is shown, not what it is allowed: the backend refuses\n * a write naming a company whatever the CLI does (`readNamedCompany`). Kept as\n * an explicit list so a new command is hidden from the organization until\n * someone decides it only reads.\n */\n\nexport type AgentProfile = \"company\" | \"organization\";\n\n/** Set on the organization workspace's Runtime (`runtimeSession/nodeActions.ts`). */\nexport function agentProfile(workspaceKind: string | undefined = optionalWorkspaceKind()): AgentProfile {\n return workspaceKind === \"organization\" ? \"organization\" : \"company\";\n}\n\n/** Families only the organization workspace runs: hidden from a company's agent. */\nconst ORGANIZATION_ONLY = [\"organization\"];\n\n/**\n * Every command the organization workspace's agent is offered, as typed. An\n * entry offers that command and everything under it.\n */\nexport const ORGANIZATION_COMMANDS: readonly string[] = [\n \"schema\",\n \"capabilities\",\n \"organization\",\n // A defect or gap in Baker itself, to the Baker team's tracker: it changes no\n // company, and the guard and the publish skill this workspace shares send it here.\n \"feedback\",\n // What a company did and has.\n \"chats\",\n \"history\",\n \"actions list\",\n \"actions log\",\n \"actions get\",\n \"actions status\",\n \"actions draft list\",\n \"actions tags list\",\n // The organization's own Scheduled agents, which live in this workspace:\n // staged like a company's, applied at Publish. Naming a company is still a\n // read only (`readNamedCompany`), so none of these reaches one.\n \"scheduled-agents\",\n \"experiment status\",\n \"experiment history\",\n \"flows list\",\n \"flows show\",\n \"flows schema\",\n \"testimonials get\",\n \"testimonials search\",\n \"testimonials list\",\n \"testimonials tags list\",\n \"testimonials sources list\",\n \"images get\",\n \"images search\",\n \"images library\",\n \"images tags list\",\n // A page's or a link's pictures and videos, to the workspace's own disk: a\n // client's logo, the photos on its site, the video it sent. Firecrawl reads\n // the page; nothing reaches any library (`--auto-ingest` is refused below).\n \"images download\",\n \"images extract\",\n \"videos get\",\n \"videos search\",\n \"videos tags list\",\n \"videos fetch\",\n \"studio get\",\n \"studio list\",\n \"avatars list\",\n \"avatars get\",\n \"creatives performance\",\n \"creatives feedback read\",\n \"landing export status\",\n \"landing export list\",\n \"site show\",\n \"site domain list\",\n \"lead-routes list\",\n \"lead-routes fields\",\n \"credentials list\",\n \"setup-links list\",\n \"media-sources list\",\n \"posts list\",\n \"posts get\",\n \"posts search\",\n \"mcp connected\",\n \"mcp catalog\",\n \"mcp tools\",\n \"mcp execute\",\n \"mcp list\",\n // Ads, every platform: accounts, structure, results, staged drafts.\n \"ads google accounts\",\n \"ads google currency\",\n \"ads google url-options\",\n \"ads google changes\",\n \"ads google invoices\",\n \"ads google identity-verification\",\n \"ads google previews\",\n \"ads google brands\",\n \"ads google query\",\n \"ads google keywords discover\",\n \"ads google keywords metrics\",\n \"ads google keywords forecast\",\n \"ads google keywords themes\",\n \"ads google keywords locations\",\n \"ads google keywords languages\",\n \"ads google keywords list\",\n \"ads google budgets list\",\n \"ads google campaigns list\",\n \"ads google ad-groups list\",\n \"ads google negative-keywords list\",\n \"ads google keyword-lists list\",\n \"ads google ads list\",\n \"ads google assets list\",\n \"ads google asset-groups list\",\n \"ads google audiences list\",\n \"ads google audiences targeting\",\n \"ads google conversions list\",\n \"ads google bidding-strategies list\",\n \"ads google labels list\",\n \"ads google campaign-criteria list\",\n \"ads google ad-group-criteria list\",\n \"ads google ad-group-bid-modifiers list\",\n \"ads google account-exclusions list\",\n \"ads google asset-group-signals list\",\n \"ads google merchant-center list\",\n \"ads google draft list\",\n \"ads google draft show\",\n \"ads meta accounts\",\n \"ads meta account\",\n \"ads meta businesses\",\n \"ads meta pages\",\n \"ads meta lead-forms list\",\n \"ads meta leads\",\n \"ads meta campaigns list\",\n \"ads meta adsets list\",\n \"ads meta ads list\",\n \"ads meta creatives list\",\n \"ads meta audiences list\",\n \"ads meta custom-conversions list\",\n \"ads meta pixels\",\n \"ads meta activities\",\n \"ads meta insights\",\n \"ads meta draft list\",\n \"ads meta draft show\",\n \"ads linkedin accounts\",\n \"ads linkedin account detail\",\n \"ads linkedin campaign-groups list\",\n \"ads linkedin campaigns list\",\n \"ads linkedin creatives list\",\n \"ads linkedin draft list\",\n \"ads linkedin draft show\",\n \"ads linkedin analytics\",\n \"ads linkedin demographics\",\n \"ads linkedin companies\",\n \"ads linkedin top-companies\",\n \"ads linkedin resolve\",\n \"ads linkedin facets list\",\n \"ads linkedin facets values\",\n \"ads linkedin audience-size\",\n \"ads linkedin bid-pricing\",\n \"ads linkedin forecast\",\n \"ads linkedin leads\",\n \"ads linkedin conversions list\",\n \"ads linkedin conversions health\",\n \"ads linkedin conversation\",\n \"ads linkedin audit\",\n \"ads linkedin url-params\",\n \"ads x accounts\",\n \"ads x funding\",\n \"ads x campaigns list\",\n \"ads x line-items list\",\n \"ads x promoted-tweets list\",\n \"ads x tweets\",\n \"ads x cards\",\n \"ads x draft list\",\n \"ads x draft show\",\n \"ads x media\",\n \"ads x audiences\",\n \"ads x targeting-criteria list\",\n \"ads x targeting-constants\",\n \"ads x active-entities\",\n \"ads x stats job-status\",\n \"ads chatgpt account show\",\n \"ads chatgpt campaigns list\",\n \"ads chatgpt ad-groups list\",\n \"ads chatgpt ads list\",\n \"ads chatgpt conversions list\",\n \"ads chatgpt conversions events\",\n \"ads chatgpt conversions report\",\n \"ads chatgpt audiences list\",\n \"ads chatgpt catalogs list\",\n \"ads chatgpt catalogs uploads\",\n \"ads chatgpt catalogs products\",\n \"ads chatgpt history\",\n \"ads chatgpt insights\",\n \"ads chatgpt locations\",\n \"ads chatgpt draft list\",\n \"ads chatgpt draft show\",\n // Baker's synced copy of every platform's results, which the live reads above\n // point at first. Reads only: each `show` beside its staged changes.\n \"ads performance overview\",\n \"ads performance trend\",\n // Who the ads brought: counts per ad and per persona answer, and the ladder\n // and persona map they are counted by (`adPerformance/peopleRoute.ts`).\n \"ads performance people\",\n \"ads performance personas\",\n \"ads performance ladder\",\n \"ads performance persona-fields\",\n \"ads performance accounts\",\n \"ads performance setup\",\n \"ads performance entities\",\n \"ads performance entity\",\n \"ads performance changes\",\n \"ads performance impact\",\n \"ads performance creatives\",\n \"ads performance families show\",\n \"ads performance families choices\",\n \"ads performance creative-health\",\n \"ads performance creative-assets\",\n \"ads performance health\",\n \"ads performance breakdown\",\n \"ads performance search-terms\",\n \"ads performance pacing\",\n \"ads performance funnel\",\n \"ads performance tracking\",\n \"ads performance landings\",\n \"ads performance live-in\",\n \"ads performance status\",\n \"ads performance goals show\",\n \"ads performance progress\",\n \"ads performance diagnose\",\n \"ads performance pulse\",\n \"ads performance anomalies\",\n \"ads performance recap\",\n \"ads performance targets show\",\n \"ads performance budget-recommendations\",\n \"ads performance attention show\",\n \"ads performance currency show\",\n \"ads performance brand-split\",\n \"ads performance impression-share\",\n \"ads performance keyword-quality\",\n \"ads performance google-report\",\n \"ads performance budgets show\",\n \"ads performance segments show\",\n // Pages and measurement.\n \"analytics overview\",\n \"analytics traffic\",\n \"analytics funnel\",\n \"analytics flow\",\n \"analytics page\",\n \"analytics triggers\",\n \"analytics releases\",\n \"analytics paid\",\n \"analytics delivery\",\n \"analytics submissions\",\n \"analytics geo\",\n \"analytics bots\",\n \"analytics landings\",\n \"analytics tags\",\n \"analytics events\",\n \"analytics feed\",\n \"analytics lookup\",\n \"analytics devices\",\n \"analytics ads\",\n \"analytics conversions\",\n \"analytics sends\",\n \"analytics tracking\",\n \"analytics arrivals\",\n \"analytics sending-events\",\n \"analytics sources\",\n \"analytics website-tag\",\n \"analytics sites\",\n \"analytics questionnaire\",\n \"analytics presets\",\n \"funnel\",\n \"ga4 properties\",\n \"ga4 config\",\n \"ga4 audit\",\n \"ga4 query\",\n \"ga4 draft list\",\n \"ga4 draft show\",\n \"gsc\",\n \"tags list\",\n \"tags draft\",\n \"tag-manager containers\",\n \"tag-manager read\",\n \"tag-manager draft list\",\n \"tag-manager draft show\",\n // CRM and accounts.\n \"hubspot\",\n \"accounts influenced\",\n \"accounts engagement\",\n \"accounts warm\",\n \"accounts company\",\n \"accounts campaigns\",\n \"accounts crm status\",\n \"accounts crm check\",\n \"accounts crm contract\",\n // Research and judgment, run as the workspace itself (never with --company).\n // Not `research customers`, which writes into a company's Knowledge, nor\n // `winning-ads fit`, which judges an ad against a company's own COMPANY.md.\n \"research web\",\n \"research fetch\",\n \"research cite\",\n \"research linkedin-person\",\n \"research transcript\",\n \"research company\",\n \"research google-ads\",\n \"research reddit\",\n \"research advertisers\",\n \"research autocomplete\",\n \"research countries\",\n \"research intent\",\n \"research keyword-metrics\",\n \"research keywords-for-site\",\n \"research keyword-gap\",\n \"research languages\",\n \"research lighthouse\",\n \"research relevant-pages\",\n \"decide\",\n // The organization workspace's own vault, ranked like a company's.\n \"knowledge search\",\n \"winning-ads search\",\n \"winning-ads advertisers\",\n // Adds a brand to Baker's shared library with nobody following it, so a\n // client being set up can be read there: its channels, ads and landings.\n \"winning-ads add\",\n \"winning-ads discover\",\n \"winning-ads following\",\n \"winning-ads feed\",\n \"winning-ads winners\",\n \"winning-ads ads\",\n \"winning-ads profile\",\n \"winning-ads launches\",\n \"winning-ads landings\",\n \"winning-ads search-copy\",\n \"winning-ads content\",\n \"winning-ads hooks\",\n \"winning-ads mechanisms\",\n \"winning-ads formats\",\n];\n\nfunction covers(entry: string, path: string): boolean {\n return path === entry || path.startsWith(`${entry} `);\n}\n\n/**\n * Whether `path` (a command as typed, `\"ads meta campaigns list\"`) is offered\n * to `profile`. A group is offered when anything under it is, so the way to an\n * offered command stays open.\n */\nexport function offers(profile: AgentProfile, path: string): boolean {\n if (path === \"\") return true;\n if (profile === \"company\") {\n return !ORGANIZATION_ONLY.some((family) => covers(family, path));\n }\n return ORGANIZATION_COMMANDS.some((entry) => covers(entry, path) || covers(path, entry));\n}\n\n/**\n * The flags that change something, on commands the organization is offered to\n * read. `funnel` reads the funnel and `funnel --add-trigger` changes it, so the\n * command is offered and these are refused, and left out of its help.\n */\nexport const ORGANIZATION_WRITE_FLAGS: Readonly<Record<string, readonly string[]>> = {\n \"images extract\": [\"auto-ingest\", \"context\"],\n funnel: [\"steps\", \"step\", \"add-trigger\", \"remove-trigger\", \"event\", \"remove-step\", \"preset\"],\n \"analytics conversions\": [\"event\", \"name\", \"rename\", \"to\", \"remove-name\", \"count-mode\", \"remove\"],\n \"analytics sends\": [\n \"set\",\n \"source-event\",\n \"from\",\n \"platform\",\n \"tag\",\n \"event\",\n \"account\",\n \"parameter\",\n \"id\",\n \"remove\",\n ],\n \"analytics sources\": [\n \"server\",\n \"create\",\n \"create-hubspot\",\n \"create-activecampaign\",\n \"events\",\n \"account\",\n \"set-trigger\",\n \"set-amount\",\n \"amount-property\",\n \"currency\",\n \"write\",\n \"name\",\n \"map\",\n \"field\",\n \"pause\",\n \"resume\",\n \"remove\",\n ],\n \"analytics sites\": [\"add\", \"remove\"],\n};\n\nfunction kebabCase(name: string): string {\n return name.replace(/[A-Z]/g, (letter) => `-${letter.toLowerCase()}`);\n}\n\n/** The first flag in `argv` the organization is refused on the command at `path`, if any. */\nfunction refusedFlagIn(path: string, argv: readonly string[]): string | null {\n const refused = ORGANIZATION_WRITE_FLAGS[path];\n if (!refused) return null;\n const end = argv.indexOf(\"--\");\n for (const token of end === -1 ? argv : argv.slice(0, end)) {\n if (!token.startsWith(\"--\")) continue;\n const name = kebabCase(token.slice(2).split(\"=\")[0] ?? \"\").replace(/^no-/, \"\");\n if (refused.includes(name)) return name;\n }\n return null;\n}\n\ntype ProfiledCommand = { meta?: unknown; subCommands?: unknown };\n\n/** What the organization's agent is told when it reaches for a command it is not offered. */\nexport const ORGANIZATION_REFUSAL =\n \"The organization workspace only reads its companies, and this command changes something. A change to a company is made in that company's own chat; here, read it and show it in a Report.\";\n\nfunction hide(command: ProfiledCommand): void {\n if (typeof command.meta === \"object\" && command.meta !== null) {\n (command.meta as { hidden?: boolean }).hidden = true;\n }\n}\n\n/**\n * Rewrites, in place, what each loaded command `profile` is shown says\n * (`profile-help.ts`), and takes off it the flags `profile` is refused. Args are\n * replaced rather than edited: one definition can be shared between commands.\n */\nfunction describeOffered(root: ProfiledCommand, command: ProfiledCommand, profile: AgentProfile, path: string[]): void {\n const meta = command.meta as { hidden?: boolean; description?: unknown } | undefined;\n if (meta?.hidden === true) return;\n const offered = (cited: string) => offers(profile, cited);\n const refusedFlags = profile === \"organization\" ? (ORGANIZATION_WRITE_FLAGS[path.join(\" \")] ?? []) : [];\n if (typeof meta?.description === \"string\") {\n meta.description = describedFor(root, meta.description, path, command, profile, offered, refusedFlags);\n }\n const shaped = command as { args?: unknown };\n if (typeof shaped.args === \"object\" && shaped.args !== null) {\n shaped.args = Object.fromEntries(\n Object.entries(shaped.args as Record<string, unknown>).flatMap(([name, arg]) => {\n if (refusedFlags.includes(kebabCase(name))) return [];\n const description = (arg as { description?: unknown } | null)?.description;\n return [\n [\n name,\n typeof description === \"string\"\n ? { ...(arg as object), description: withoutUnoffered(root, description, offered, refusedFlags) }\n : arg,\n ],\n ];\n }),\n );\n }\n const subCommands = command.subCommands;\n if (typeof subCommands !== \"object\" || subCommands === null) return;\n for (const [name, sub] of Object.entries(subCommands as Record<string, unknown>)) {\n if (typeof sub === \"object\" && sub !== null)\n describeOffered(root, sub as ProfiledCommand, profile, [...path, name]);\n }\n}\n\n/** Marks, in place, every loaded command `profile` is not offered as hidden from help. */\nfunction hideUnoffered(command: ProfiledCommand, profile: AgentProfile, path: string[]): void {\n const subCommands = command.subCommands;\n if (typeof subCommands !== \"object\" || subCommands === null) return;\n for (const [name, sub] of Object.entries(subCommands as Record<string, unknown>)) {\n if (typeof sub !== \"object\" || sub === null) continue;\n const subPath = [...path, name];\n if (!offers(profile, subPath.join(\" \"))) hide(sub as ProfiledCommand);\n hideUnoffered(sub as ProfiledCommand, profile, subPath);\n }\n}\n\ntype ArgDefinition = { type?: unknown; alias?: unknown };\n\nfunction camelCase(name: string): string {\n return name.replace(/-([a-z0-9])/g, (_, letter: string) => letter.toUpperCase());\n}\n\nfunction aliases(of: unknown): unknown[] {\n return Array.isArray(of) ? of : of === undefined ? [] : [of];\n}\n\n/** Whether `flag` takes the token after it as its value on `command`, as citty reads it. */\nfunction takesValue(command: ProfiledCommand & { args?: unknown }, flag: string): boolean {\n if (flag.includes(\"=\") || typeof command.args !== \"object\" || command.args === null) return false;\n const name = flag.replace(/^-{1,2}/, \"\");\n return Object.entries(command.args as Record<string, ArgDefinition>).some(\n ([key, definition]) =>\n (definition.type === \"string\" || definition.type === \"enum\") &&\n (camelCase(key) === camelCase(name) || aliases(definition.alias).includes(name)),\n );\n}\n\n/**\n * The command `argv` addresses, found the way citty finds it: flags, and the\n * value after one that takes it, are skipped, so a flag before a command's name\n * cannot leave the path at its group. Each step is loaded on the way —\n * `loadCommands` stops at the first flag, and `--company` is taken off only\n * after it ran, so the guard cannot lean on what it loaded.\n */\nasync function addressedCommand(\n root: ProfiledCommand,\n argv: readonly string[],\n): Promise<{ path: string; command: ProfiledCommand }> {\n const path: string[] = [];\n let command: ProfiledCommand = root;\n for (let index = 0; index < argv.length; index++) {\n const token = argv[index] ?? \"\";\n if (token === \"--\") break;\n if (token.startsWith(\"-\")) {\n if (takesValue(command, token)) index++;\n continue;\n }\n const next = await loadSubCommandNamed(command as LoadableCommand, token);\n if (!next) break;\n path.push(next[0]);\n command = next[1] as ProfiledCommand;\n }\n return { path: path.join(\" \"), command };\n}\n\n/**\n * Shapes the loaded command tree for the agent running it: what it is not\n * offered leaves its help, and the organization's agent is refused a command it\n * is not offered (the returned message; `null` when it may run). A company's\n * agent is never refused: the organization's commands are only out of its help,\n * because a Report published from the organization workspace runs them on a\n * runner that has no profile of its own.\n */\nexport async function applyAgentProfile(\n root: ProfiledCommand,\n profile: AgentProfile,\n argv: readonly string[],\n): Promise<string | null> {\n const { path, command } = await addressedCommand(root, argv);\n // A walk that ends on a group prints its usage — `--help` anywhere, past `--`\n // too, or no command or an unknown one — listing its subcommands, which are\n // hidden only once loaded. A walk that reaches a command loads nothing more.\n await loadAllCommands(command as LoadableCommand);\n // Judged before the help is shaped, which takes the refused flags off the command.\n const refused = profile === \"organization\" && (!offers(profile, path) || refusedFlagIn(path, argv) !== null);\n hideUnoffered(root, profile, []);\n describeOffered(root, root, profile, []);\n return refused ? ORGANIZATION_REFUSAL : null;\n}\n"],"mappings":"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,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA;AAAA;AAAA,EAIA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAEA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAEA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAEA;AAAA,EACA;AAAA,EACA;AAAA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","names":["aliases","at"]}
@@ -0,0 +1,430 @@
1
+ import {
2
+ agentProfile
3
+ } from "./chunk-RQOSSYVH.js";
4
+ import {
5
+ AUTO_PUBLISH_REFUSAL,
6
+ MAX_AI_CONDITION_CHARS,
7
+ TRIGGER_KINDS,
8
+ TRIGGER_KIND_IDS,
9
+ TRIGGER_TARGETS,
10
+ TRIGGER_TARGET_FIELDS,
11
+ TRIGGER_TARGET_FIELD_IDS,
12
+ firstTimes,
13
+ isTriggerKind,
14
+ parseConditionsExpression
15
+ } from "./chunk-GKMDBLTQ.js";
16
+ import {
17
+ ApiError,
18
+ validateConvexId
19
+ } from "./chunk-B2OHCWYB.js";
20
+ import {
21
+ getEnv
22
+ } from "./chunk-E54435XT.js";
23
+ import {
24
+ writeJson
25
+ } from "./chunk-WCIS4FZH.js";
26
+
27
+ // src/commands/scheduled-agents/shared.ts
28
+ var TEMP_SCHEDULED_AGENT_PREFIX = "temp_agent_";
29
+ var TEMP_ID_PREFIX = "temp_";
30
+ function writeOk(data, hints) {
31
+ writeJson({ ok: true, data: data ?? null, ...hints && hints.length > 0 ? { hints } : {} });
32
+ }
33
+ function failValidation(message) {
34
+ writeJson({ ok: false, error: { code: "VALIDATION_ERROR", message } });
35
+ process.exit(1);
36
+ }
37
+ function failApi(err) {
38
+ if (err instanceof ApiError) {
39
+ writeJson({ ok: false, error: { code: err.code, message: err.message } });
40
+ process.exit(1);
41
+ }
42
+ if (err instanceof Error) {
43
+ writeJson({ ok: false, error: { code: "INTERNAL_ERROR", message: err.message } });
44
+ process.exit(1);
45
+ }
46
+ writeJson({ ok: false, error: { code: "INTERNAL_ERROR", message: "Unexpected error" } });
47
+ process.exit(1);
48
+ }
49
+ var AUTO_PUBLISH_ARG = {
50
+ "auto-publish": {
51
+ type: "string",
52
+ description: "Not available to the agent: publishing every run unreviewed is switched on by the user, on the item, after this chat is published. Passing it is refused and tells you what to ask them.",
53
+ required: false
54
+ }
55
+ };
56
+ function refuseAutoPublish(args) {
57
+ if (args["auto-publish"] === void 0) {
58
+ return;
59
+ }
60
+ writeJson({
61
+ ok: false,
62
+ error: {
63
+ code: "FORBIDDEN",
64
+ message: AUTO_PUBLISH_REFUSAL,
65
+ fix: {
66
+ action: "ask_user",
67
+ explanation: 'Run the command again without --auto-publish. After this chat is published, ask the user to open the item in Scheduled agents and switch on "Publish its work on its own" under "When a run finishes" \u2014 until then each run waits for their review.'
68
+ }
69
+ }
70
+ });
71
+ process.exit(1);
72
+ }
73
+ function isTempScheduledAgentId(id) {
74
+ return id.startsWith(TEMP_SCHEDULED_AGENT_PREFIX);
75
+ }
76
+ function isOtherTempId(id) {
77
+ return id.startsWith(TEMP_ID_PREFIX) && !isTempScheduledAgentId(id);
78
+ }
79
+ function validateScheduledAgentRef(ref) {
80
+ if (isOtherTempId(ref)) {
81
+ failValidation(`Scheduled agent temp IDs must start with ${TEMP_SCHEDULED_AGENT_PREFIX}.`);
82
+ }
83
+ if (!isTempScheduledAgentId(ref)) {
84
+ validateConvexId(ref);
85
+ }
86
+ }
87
+ var TRIGGER_ARG_DESCRIPTION = `What makes this run. ${TRIGGER_KIND_IDS.map(
88
+ (id) => `${id}: ${TRIGGER_KINDS[id].description}`
89
+ ).join(" ")} For the two time ones, pass --cron or --run-at instead and the kind is implied.`;
90
+ var TRIGGER_KIND_LIST = [...TRIGGER_KIND_IDS];
91
+ var NARROWING_DESCRIPTIONS = {
92
+ eventName: "With --trigger event.received: only this event name (a source's name, or one your site sends). Omit it to run on any event.",
93
+ toolkit: "With --trigger app.event (required): the connected tool, by its slug \u2014 gmail, slack, googlesheets.",
94
+ account: "With --trigger app.event (required): which connected account of that tool, by id (a tool can be connected more than once).",
95
+ appEvent: "With --trigger app.event (required): what happens in the tool, by the tool's own id \u2014 GMAIL_NEW_GMAIL_MESSAGE. `targets --field appEvent --app <tool>` lists them with the settings each needs.",
96
+ provider: "With --trigger connection.created, connection.removed or connection.needs_reconnect: only this tool (google-ads, hubspot, meta, or a connected tool's slug such as slack). Omit it for any tool.",
97
+ flowId: "With --trigger form.submitted or flow.step.submitted: which Form, by slug. Omit it on form.submitted for any Form.",
98
+ stepId: "With --trigger flow.step.submitted: which step of that Form, by id \u2014 `targets --field stepId --form <slug>` lists them by name.",
99
+ page: "With --trigger landing.created or landing.published: only this page, by slug. Omit it for any page.",
100
+ tag: "With --trigger task.created, task.claimed, task.completed, landing.created or landing.published: only ones carrying this tag. Omit it for any.",
101
+ experimentId: 'With --trigger experiment.decided, experiment.ended or experiment.concluded: only this test. Omit it for any test. Not for experiment.started \u2014 narrow that with --when "page = <page>".',
102
+ taskId: "With --trigger task.claimed or task.completed: only this Task, by id (a temp_ id of a Task staged in this chat works too). Omit it for any Task.",
103
+ agentId: "With --trigger session.published, session.publish_failed or session.publish_incomplete: only the runs of this scheduled agent, by id (a temp_agent_ id staged in this chat works too). Required on session.published from a chat \u2014 to follow up on this chat's own publish, use --trigger session.settled --session this.",
104
+ platform: "With --trigger session.publish_incomplete: only when this platform's changes did not all land \u2014 google-ads, meta-ads, linkedin-ads, x-ads, chatgpt-ads, tag-manager, ga4 or shopify. Omit it for any.",
105
+ collection: "With --trigger knowledge.updated: only this Knowledge collection. Omit it for any of them.",
106
+ sourceId: "With --trigger review.received: only reviews from this review source, by id. Omit it for any source.",
107
+ advertiserId: "With --trigger advertiser.new_ads: only this followed advertiser, by id. Omit it for any of them.",
108
+ adAccount: "With --trigger ad_alert.opened, ad_alert.claimed, ad_alert.fixed or ad_alert.closed: only alerts on this ad account, as <platform>:<ad account id> (meta:123). Omit it for any account.",
109
+ alertRule: 'With --trigger ad_alert.opened, ad_alert.claimed, ad_alert.fixed or ad_alert.closed: only this kind of alert, by the rule `baker ads performance attention` names (budget_cut, efficiency_degraded, tracking_broke). Omit it for any. Narrow by severity with --when "severity = critical".',
110
+ socialAccount: "With --trigger social.post_published: only posts by this followed account, by its key (linkedin:in/jacintofleta, instagram:nike \u2014 `baker media-sources list`). Omit it for any account.",
111
+ chatId: "With --trigger session.settled (required): `this` \u2014 the chat you are in. It runs once, after this chat is published and its work is fully live: pages served, every ad, Tag Manager, Analytics and store change landed or failed. Start here for any check or report on this chat's own work after it publishes.",
112
+ personRole: "With --trigger social.post_published: only posts by people with this role \u2014 ceo, founder, cto, cmo, head_of_sales, sales, marketing, employee, creator. Omit it for any account, pages included."
113
+ };
114
+ var NARROWING_ARGS = {
115
+ ...Object.fromEntries(
116
+ TRIGGER_TARGET_FIELD_IDS.map((field) => [
117
+ TRIGGER_TARGET_FIELDS[field].flag,
118
+ {
119
+ type: "string",
120
+ description: `${NARROWING_DESCRIPTIONS[field]} \`baker scheduled-agents targets --trigger <kind> --field ${field}\` lists the values.`,
121
+ required: false
122
+ }
123
+ ])
124
+ ),
125
+ config: {
126
+ type: "string",
127
+ description: `With --trigger app.event: the event's own settings as a JSON object \u2014 they filter inside the tool, before anything is sent. A Gmail search ('{"query":"from:ana@acme.com"}'), a label, a Slack channel, a GitHub repository ('{"owner":"acme","repo":"site"}'). \`targets --field appEvent --app <tool> --event <id>\` lists each setting with its examples.`,
128
+ required: false
129
+ }
130
+ };
131
+ function validateRunAt(runAt) {
132
+ if (!runAt.endsWith("Z")) {
133
+ failValidation("--run-at must be an ISO UTC timestamp ending in Z.");
134
+ }
135
+ const parsed = Date.parse(runAt);
136
+ if (!Number.isFinite(parsed)) {
137
+ failValidation("--run-at must be a valid ISO timestamp.");
138
+ }
139
+ if (parsed <= Date.now()) {
140
+ failValidation(
141
+ `--run-at ${runAt} has already passed. A one-off item only runs at a time still to come \u2014 pass a later ISO UTC timestamp, and check which timezone you converted from if you worked it out from a local time.`
142
+ );
143
+ }
144
+ }
145
+ function buildTriggerBody(args, options) {
146
+ const cron = args.cron;
147
+ const runAt = args["run-at"];
148
+ const timezone = args.timezone;
149
+ const kind = args.trigger;
150
+ const given = [cron, runAt, kind].filter(Boolean).length;
151
+ if (given > 1) {
152
+ failValidation("--cron, --run-at and --trigger are mutually exclusive.");
153
+ }
154
+ refuseNarrowingWithoutKind(args, kind, given);
155
+ if (runAt) {
156
+ validateRunAt(runAt);
157
+ return { runAt, ...timezone ? { timezone } : {} };
158
+ }
159
+ if (cron) {
160
+ return { cron, ...timezone ? { timezone } : {} };
161
+ }
162
+ if (kind) {
163
+ return { trigger: triggerFromFlags(kind, args), ...timezone ? { timezone } : {} };
164
+ }
165
+ if (timezone && !options.required) {
166
+ return { timezone };
167
+ }
168
+ if (options.required) {
169
+ failValidation(
170
+ `A trigger is required. Pass --cron or --run-at for a time-based one, or --trigger with one of: ${TRIGGER_KIND_IDS.join(", ")}.`
171
+ );
172
+ }
173
+ return void 0;
174
+ }
175
+ function flagText(args, key) {
176
+ const value = args[key];
177
+ return typeof value === "string" && value.trim().length > 0 ? value.trim() : void 0;
178
+ }
179
+ function refuseMisusedKinds(kind, args) {
180
+ if (kind === "time.once") {
181
+ failValidation("Use --run-at for a one-off, rather than --trigger time.once.");
182
+ }
183
+ if (kind === "time.cron") {
184
+ failValidation("Use --cron for a repeating schedule, rather than --trigger time.cron.");
185
+ }
186
+ if (kind === "experiment.started" && flagText(args, "experiment")) {
187
+ failValidation(
188
+ 'A test that exists has already started, so --experiment never fires on experiment.started. Leave it off and add --when "page = <page>" to watch one page.'
189
+ );
190
+ }
191
+ }
192
+ function refuseStrayFlags(kind, args) {
193
+ const allowed = new Set(TRIGGER_TARGETS[kind].map((target) => TRIGGER_TARGET_FIELDS[target.field].flag));
194
+ const stray = TRIGGER_TARGET_FIELD_IDS.map((field) => TRIGGER_TARGET_FIELDS[field].flag).filter(
195
+ (flag) => !allowed.has(flag) && flagText(args, flag) !== void 0 && !(kind === "experiment.started" && flag === "experiment")
196
+ );
197
+ if (stray.length === 0) {
198
+ return;
199
+ }
200
+ failValidation(
201
+ `${stray.map((flag) => `--${flag}`).join(", ")} does not narrow ${kind}. ${allowed.size > 0 ? `It can be pointed with ${[...allowed].map((flag) => `--${flag}`).join(", ")}.` : "It runs every time it happens \u2014 narrow it with --when rules over its payload instead."}`
202
+ );
203
+ }
204
+ var NARROWING_FLAGS = [...TRIGGER_TARGET_FIELD_IDS.map((field) => TRIGGER_TARGET_FIELDS[field].flag), "config"];
205
+ function refuseNarrowingWithoutKind(args, kind, given) {
206
+ if (kind) {
207
+ return;
208
+ }
209
+ const stray = NARROWING_FLAGS.filter((flag) => flagText(args, flag) !== void 0);
210
+ if (stray.length === 0) {
211
+ return;
212
+ }
213
+ const flags = stray.map((flag) => `--${flag}`).join(", ");
214
+ failValidation(
215
+ given > 0 ? `${flags} does not narrow --cron or --run-at: a time trigger runs every time it comes round. Use --trigger <kind> with ${flags} instead, or leave ${flags} off.` : `${flags} narrows a trigger, and no trigger was given. Pass --trigger <kind> too \u2014 the item's whole trigger, with ${flags} \u2014 or leave ${flags} off.`
216
+ );
217
+ }
218
+ function configFromFlag(kind, args) {
219
+ const config = flagText(args, "config");
220
+ if (!config) {
221
+ return {};
222
+ }
223
+ if (kind !== "app.event") {
224
+ failValidation("--config is only for --trigger app.event: the settings of what happens in the tool.");
225
+ }
226
+ let parsed;
227
+ try {
228
+ parsed = JSON.parse(config);
229
+ } catch {
230
+ parsed = null;
231
+ }
232
+ if (typeof parsed !== "object" || parsed === null || Array.isArray(parsed)) {
233
+ failValidation(`--config must be a JSON object, e.g. '{"labelIds":"INBOX"}'.`);
234
+ }
235
+ return { configJson: config };
236
+ }
237
+ function withoutMetaActPrefix(adAccount) {
238
+ return adAccount.replace(/^meta:act_/i, "meta:");
239
+ }
240
+ function triggerFromFlags(kind, args) {
241
+ if (!isTriggerKind(kind)) {
242
+ failValidation(`--trigger must be one of: ${TRIGGER_KIND_IDS.join(", ")}.`);
243
+ }
244
+ refuseMisusedKinds(kind, args);
245
+ refuseStrayFlags(kind, args);
246
+ const narrowings = {};
247
+ for (const { field, required } of TRIGGER_TARGETS[kind]) {
248
+ const value = flagText(args, TRIGGER_TARGET_FIELDS[field].flag);
249
+ if (value) {
250
+ narrowings[field] = field === "adAccount" ? withoutMetaActPrefix(value) : value;
251
+ } else if (required) {
252
+ failValidation(
253
+ `--trigger ${kind} needs --${TRIGGER_TARGET_FIELDS[field].flag}. \`baker scheduled-agents targets --trigger ${kind} --field ${field}\` lists what it can be.`
254
+ );
255
+ }
256
+ }
257
+ return { kind, ...narrowings, ...configFromFlag(kind, args) };
258
+ }
259
+ function parseOccurrences(raw) {
260
+ if (raw === void 0) {
261
+ return void 0;
262
+ }
263
+ if (typeof raw !== "string") {
264
+ failValidation("--occurrences must be a comma-separated list of whole numbers, e.g. 1 or 1,3.");
265
+ }
266
+ const parts = raw.split(",").map((part) => part.trim()).filter((part) => part.length > 0);
267
+ const numbers = parts.map((part) => Number(part));
268
+ if (numbers.length === 0 || numbers.some((n) => !Number.isInteger(n) || n <= 0)) {
269
+ failValidation("--occurrences must be a comma-separated list of whole numbers above zero, e.g. 1 or 1,3.");
270
+ }
271
+ return numbers;
272
+ }
273
+ function parseBooleanFlag(raw, flagName) {
274
+ if (raw === void 0) {
275
+ return void 0;
276
+ }
277
+ if (raw === true || raw === "true") {
278
+ return true;
279
+ }
280
+ if (raw === false || raw === "false") {
281
+ return false;
282
+ }
283
+ failValidation(`${flagName} must be true or false.`);
284
+ }
285
+ var REACTION_ARGS = {
286
+ when: {
287
+ type: "string",
288
+ description: "Only run when what arrived passes these rules: `<field> <operator> <value>` joined by AND or by OR (either case). Fields are the trigger's payload fields (`baker scheduled-agents triggers --trigger <kind>` lists them; a webhook's are whatever was posted; an app.event's are what `targets --field appEvent --app <tool> --event <id>` says it sends). Operators: =, !=, contains, does not contain, starts with, ends with, >, <, >=, <=, in (comma list), exists, missing. Example: --when \"deal.stage = won AND amount > 10000\". A payload that fails is not counted and starts nothing. `none` clears the rules.",
289
+ required: false
290
+ },
291
+ "ai-check": {
292
+ type: "string",
293
+ description: 'Only run when AI judges that what arrived meets this condition, in plain words \u2014 for what no --when rule can say: --ai-check "the person writes on behalf of a company, not as a student or for personal use". Checked after --when, on what passed it; a turned-down arrival is not counted and starts nothing, and shows in `history` with its score. Say the boundary cases ("a freelancer counts as a company"). Emails and phones are hidden from it, as from the run \u2014 an email domain is a --when rule. Not for a time-based start (--cron, --run-at). `none` removes it.',
294
+ required: false
295
+ },
296
+ times: {
297
+ type: "string",
298
+ description: "Only the first N times it fires (and its --when rules pass), then never again. `--times 1` is only the first time. Shorthand for --occurrences 1,2,\u2026,N.",
299
+ required: false
300
+ },
301
+ payload: {
302
+ type: "string",
303
+ description: "include (default) or omit. Whether the run's first message carries what arrived \u2014 the posted body, the event's properties, the Form's answers (emails and phones masked). Place single values in --prompt with {{payload.<field>}} instead; those are filled either way.",
304
+ required: false
305
+ },
306
+ cooldown: {
307
+ type: "string",
308
+ description: "At most one run per this many minutes, however often it fires. 0 removes it.",
309
+ required: false
310
+ }
311
+ };
312
+ var SLACK_ARG = {
313
+ slack: {
314
+ type: "string",
315
+ description: "Tell each run in Slack: `here` (the Slack conversation this chat came from), `me` (a direct message to the person in this chat), `#channel` (a channel linked to this company), or `off`. Each run opens its own thread there and Baker reports on it: what it found, what it needs, whether to publish.",
316
+ required: false
317
+ }
318
+ };
319
+ function companiesArg(profile = agentProfile()) {
320
+ return profile === "organization" ? {
321
+ companies: {
322
+ type: "string",
323
+ description: "The companies whose events it hears, by id, comma-separated (`baker organization companies` lists them), or `all`. Left out, it hears every company, including ones added later. Only on a trigger that happens in a company; one company's Form, page or tag is a --when rule instead.",
324
+ required: false
325
+ }
326
+ } : {};
327
+ }
328
+ function companiesBody(args) {
329
+ return typeof args.companies === "string" && args.companies.trim().length > 0 ? { companies: args.companies.trim() } : {};
330
+ }
331
+ function slackBody(args) {
332
+ return typeof args.slack === "string" && args.slack.trim().length > 0 ? { slack: args.slack.trim() } : {};
333
+ }
334
+ function wholeNumber(raw, flag, { min }) {
335
+ if (raw === void 0) {
336
+ return void 0;
337
+ }
338
+ const value = Number(raw);
339
+ if (!Number.isInteger(value) || value < min) {
340
+ failValidation(`${flag} must be a whole number of at least ${min}.`);
341
+ }
342
+ return value;
343
+ }
344
+ function reactionBody(args) {
345
+ const occurrences = occurrencesFromFlags(args);
346
+ const when = whenFromFlag(args.when);
347
+ const includePayload = payloadFromFlag(args.payload);
348
+ const cooldownMinutes = wholeNumber(args.cooldown, "--cooldown", { min: 0 });
349
+ const aiCondition = aiCheckFromFlag(args["ai-check"]);
350
+ return {
351
+ ...occurrences !== void 0 ? { occurrences } : {},
352
+ ...when !== void 0 ? { when } : {},
353
+ ...aiCondition !== void 0 ? { aiCondition } : {},
354
+ ...includePayload !== void 0 ? { includePayload } : {},
355
+ ...cooldownMinutes !== void 0 ? { cooldownMinutes } : {}
356
+ };
357
+ }
358
+ function occurrencesFromFlags(args) {
359
+ const times = wholeNumber(args.times, "--times", { min: 1 });
360
+ const occurrences = parseOccurrences(args.occurrences);
361
+ if (times !== void 0 && occurrences !== void 0) {
362
+ failValidation("Pass --times or --occurrences, not both \u2014 --times 3 is --occurrences 1,2,3.");
363
+ }
364
+ return times !== void 0 ? firstTimes(times) : occurrences;
365
+ }
366
+ function whenFromFlag(raw) {
367
+ if (typeof raw !== "string") {
368
+ return void 0;
369
+ }
370
+ const text = raw.trim();
371
+ if (text.length === 0 || text.toLowerCase() === "none") {
372
+ return "none";
373
+ }
374
+ const parsed = parseConditionsExpression(text);
375
+ if (!parsed.ok) {
376
+ failValidation(parsed.error);
377
+ }
378
+ return text;
379
+ }
380
+ function aiCheckFromFlag(raw) {
381
+ if (typeof raw !== "string") {
382
+ return void 0;
383
+ }
384
+ const text = raw.trim();
385
+ if (text.length === 0 || text.toLowerCase() === "none") {
386
+ return "none";
387
+ }
388
+ if (text.length > MAX_AI_CONDITION_CHARS) {
389
+ failValidation(
390
+ `--ai-check is at most ${MAX_AI_CONDITION_CHARS} characters: say the condition, not the job. The job goes in --prompt.`
391
+ );
392
+ }
393
+ return text;
394
+ }
395
+ function payloadFromFlag(raw) {
396
+ if (raw === void 0) {
397
+ return void 0;
398
+ }
399
+ if (raw !== "include" && raw !== "omit") {
400
+ failValidation("--payload must be include or omit.");
401
+ }
402
+ return raw === "include";
403
+ }
404
+ function chatBody() {
405
+ const id = getEnv().BAKER_CHAT_ID;
406
+ return id ? { chatId: id } : {};
407
+ }
408
+
409
+ export {
410
+ writeOk,
411
+ failValidation,
412
+ failApi,
413
+ AUTO_PUBLISH_ARG,
414
+ refuseAutoPublish,
415
+ isTempScheduledAgentId,
416
+ validateScheduledAgentRef,
417
+ TRIGGER_ARG_DESCRIPTION,
418
+ TRIGGER_KIND_LIST,
419
+ NARROWING_ARGS,
420
+ buildTriggerBody,
421
+ parseBooleanFlag,
422
+ REACTION_ARGS,
423
+ SLACK_ARG,
424
+ companiesArg,
425
+ companiesBody,
426
+ slackBody,
427
+ reactionBody,
428
+ chatBody
429
+ };
430
+ //# sourceMappingURL=chunk-S2L2A2ZN.js.map