openpond 0.2.62 → 0.2.63

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 (496) hide show
  1. package/README.md +2 -0
  2. package/dist/app-server.d.ts +1053 -63
  3. package/dist/app-server.js +1 -1
  4. package/dist/chunks/{acp-DYRBDJRU.js → acp-H3MJCPHX.js} +1 -1
  5. package/dist/chunks/{acp-agent-UTLP7C3I.js → acp-agent-DWA7272M.js} +1 -1
  6. package/dist/chunks/actions-command-IIYOO4LL.js +2 -0
  7. package/dist/chunks/{app-layer-N2H3RBEN.js → app-layer-K7H2WJ56.js} +1 -1
  8. package/dist/chunks/app-server-connected-apps-RM5E2VWF.js +2 -0
  9. package/dist/chunks/app-server-evaluations-XGMGS67X.js +2 -0
  10. package/dist/chunks/app-server-harness-services-BHD6S5II.js +2 -0
  11. package/dist/chunks/app-server-runtime-LFIL6F7D.js +2 -0
  12. package/dist/chunks/apps-QKAHJGQ4.js +2 -0
  13. package/dist/chunks/chunk-25XXZS3E.js +2 -0
  14. package/dist/chunks/chunk-27JGS3KB.js +12 -0
  15. package/dist/chunks/{chunk-7JBB4PXS.js → chunk-2HAWOMZK.js} +1 -1
  16. package/dist/chunks/chunk-2LJCJOJ7.js +2 -0
  17. package/dist/chunks/{chunk-CN5OXQ7A.js → chunk-3YXYBYWK.js} +1 -1
  18. package/dist/chunks/{chunk-GEKORCMN.js → chunk-42V4NV2F.js} +1 -1
  19. package/dist/chunks/{chunk-VAJSRUAB.js → chunk-4FNCBA3Y.js} +1 -1
  20. package/dist/chunks/{chunk-F7D4BMTO.js → chunk-4L6DU6Z2.js} +1 -1
  21. package/dist/chunks/{chunk-SZKFNKWO.js → chunk-4SZ3HKHU.js} +1 -1
  22. package/dist/chunks/chunk-5EP2DZLJ.js +2 -0
  23. package/dist/chunks/chunk-5FU5RLML.js +2 -0
  24. package/dist/chunks/{chunk-6SH4B7DV.js → chunk-5MHYGMJG.js} +1 -1
  25. package/dist/chunks/{chunk-MEK7DLX3.js → chunk-6EBCS57F.js} +1 -1
  26. package/dist/chunks/chunk-6RS4NAOY.js +2 -0
  27. package/dist/chunks/{chunk-NVHZRKXB.js → chunk-7HRLWPPZ.js} +1 -1
  28. package/dist/chunks/chunk-7O6Z3VOZ.js +2 -0
  29. package/dist/chunks/{chunk-P74RR2GB.js → chunk-7WYL2IDD.js} +1 -1
  30. package/dist/chunks/chunk-7YLXGILH.js +2 -0
  31. package/dist/chunks/chunk-7ZLXFKRI.js +2 -0
  32. package/dist/chunks/{chunk-NWOK6NLE.js → chunk-AH26AQN7.js} +1 -1
  33. package/dist/chunks/chunk-AHOBCBVZ.js +2 -0
  34. package/dist/chunks/chunk-B5R53U74.js +2 -0
  35. package/dist/chunks/{chunk-NKZNPTLA.js → chunk-BPZOABMC.js} +1 -1
  36. package/dist/chunks/{chunk-2IIBCCOK.js → chunk-BSPFY3Y5.js} +1 -1
  37. package/dist/chunks/{chunk-5OSM75X5.js → chunk-BU27SLZP.js} +2 -2
  38. package/dist/chunks/chunk-C2AXMKK4.js +2 -0
  39. package/dist/chunks/{chunk-AMO5DVKM.js → chunk-C2LAEGOW.js} +2 -2
  40. package/dist/chunks/{chunk-GNCEZ3UP.js → chunk-CZ5R4JXZ.js} +1 -1
  41. package/dist/chunks/{chunk-JIFUGA3U.js → chunk-DABBHWSF.js} +1 -1
  42. package/dist/chunks/{chunk-VK4TPZTA.js → chunk-DLANLLKH.js} +1 -1
  43. package/dist/chunks/{chunk-WGLVSGFA.js → chunk-DQI5TE6A.js} +2 -2
  44. package/dist/chunks/chunk-DTTFUANI.js +12 -0
  45. package/dist/chunks/{chunk-4TM75R7V.js → chunk-DUL6DXOI.js} +1 -1
  46. package/dist/chunks/{chunk-TGEGXTPR.js → chunk-ELX7VRSU.js} +1 -1
  47. package/dist/chunks/chunk-ERL2M773.js +3 -0
  48. package/dist/chunks/{chunk-4PZWGNX4.js → chunk-ERT32RZA.js} +4 -4
  49. package/dist/chunks/{chunk-RTJCELRR.js → chunk-EZRUWIP6.js} +1 -1
  50. package/dist/chunks/{chunk-LJDBR3RN.js → chunk-F6UQ6PPK.js} +1 -1
  51. package/dist/chunks/chunk-F7QTIHXX.js +2 -0
  52. package/dist/chunks/chunk-FAKDGLZQ.js +8 -0
  53. package/dist/chunks/{chunk-FFWOTZQM.js → chunk-FVRII5XO.js} +1 -1
  54. package/dist/chunks/{chunk-C7M2WBWZ.js → chunk-FYYYECHE.js} +51 -49
  55. package/dist/chunks/chunk-G32BO6M5.js +4 -0
  56. package/dist/chunks/{chunk-NBE74GLF.js → chunk-G6OR5NB6.js} +1 -1
  57. package/dist/chunks/{chunk-GQGLPKU4.js → chunk-GGJUWIGR.js} +1 -1
  58. package/dist/chunks/{chunk-VSQXDS6H.js → chunk-GPL2Z65R.js} +1 -1
  59. package/dist/chunks/{chunk-INO67SEN.js → chunk-GS6ZUSIN.js} +2 -2
  60. package/dist/chunks/{chunk-47AXSBPV.js → chunk-GVARQXYI.js} +1 -1
  61. package/dist/chunks/chunk-GXCUH2VV.js +17 -0
  62. package/dist/chunks/{chunk-OCC43RSJ.js → chunk-GXZCMO6S.js} +1 -1
  63. package/dist/chunks/{chunk-CLFYRN46.js → chunk-H6C4MAUN.js} +1 -1
  64. package/dist/chunks/{chunk-HBLN4OLY.js → chunk-HUCBKXTU.js} +1 -1
  65. package/dist/chunks/{chunk-M5IX6VUA.js → chunk-IHB5GTOJ.js} +2 -2
  66. package/dist/chunks/{chunk-J3B2GM4A.js → chunk-IWWXIUAQ.js} +1 -1
  67. package/dist/chunks/chunk-J572ANHX.js +13 -0
  68. package/dist/chunks/{chunk-AKZPMKWP.js → chunk-J7ZTPXRQ.js} +1 -1
  69. package/dist/chunks/{chunk-CJUVHE4U.js → chunk-JORRZ4BB.js} +1 -1
  70. package/dist/chunks/chunk-JSQRLLN6.js +2 -0
  71. package/dist/chunks/chunk-KCOTDUGW.js +2 -0
  72. package/dist/chunks/{chunk-NK4JKB7C.js → chunk-KHTAAVC2.js} +1 -1
  73. package/dist/chunks/{chunk-LRRBYIGH.js → chunk-LK2K3SPM.js} +2 -2
  74. package/dist/chunks/{chunk-557XSPVS.js → chunk-LKKMLBOH.js} +1 -1
  75. package/dist/chunks/{chunk-U456UP3N.js → chunk-LSZJ5M3X.js} +1 -1
  76. package/dist/chunks/chunk-M3FLEZ4E.js +4 -0
  77. package/dist/chunks/{chunk-Y2KPHVZK.js → chunk-M3SCON53.js} +1 -1
  78. package/dist/chunks/{chunk-VPDG2V2R.js → chunk-MEGKXGW3.js} +1 -1
  79. package/dist/chunks/chunk-MPNJ2BB4.js +2 -0
  80. package/dist/chunks/{chunk-4RZBGKT7.js → chunk-N33D7KCW.js} +1 -1
  81. package/dist/chunks/chunk-N42HT64M.js +2 -0
  82. package/dist/chunks/{chunk-SD64CLJX.js → chunk-N4VHLJBZ.js} +1 -1
  83. package/dist/chunks/chunk-NEJLJ2XY.js +2 -0
  84. package/dist/chunks/chunk-NG2L6D7G.js +2 -0
  85. package/dist/chunks/{chunk-GV3LFSMI.js → chunk-NLYZ5K7U.js} +1 -1
  86. package/dist/chunks/{chunk-F4TJ7WQV.js → chunk-NT7N6KLE.js} +1 -1
  87. package/dist/chunks/{chunk-PAE3PQEC.js → chunk-NZTCH6K5.js} +1 -1
  88. package/dist/chunks/{chunk-BEI4YULC.js → chunk-OG33QAG6.js} +1 -1
  89. package/dist/chunks/chunk-OTUBJV6C.js +6 -0
  90. package/dist/chunks/{chunk-RH43WLBX.js → chunk-PBTXLQAU.js} +1 -1
  91. package/dist/chunks/{chunk-3R4MSE2S.js → chunk-QJ6KUVAR.js} +1 -1
  92. package/dist/chunks/{chunk-7JXZNCBC.js → chunk-QU4UE73E.js} +1 -1
  93. package/dist/chunks/{chunk-WQMXEZVE.js → chunk-R6VJDOQM.js} +3 -3
  94. package/dist/chunks/{chunk-FUSCTBJI.js → chunk-R6WMY6AH.js} +1 -1
  95. package/dist/chunks/{chunk-EIX2V2KU.js → chunk-RDSVU6F6.js} +1 -1
  96. package/dist/chunks/{chunk-R4PDSOB4.js → chunk-RFMME46Z.js} +1 -1
  97. package/dist/chunks/{chunk-GW5SE3FM.js → chunk-RZUCVF2Q.js} +1 -1
  98. package/dist/chunks/{chunk-UC3FXTDL.js → chunk-SFKZITAG.js} +5 -5
  99. package/dist/chunks/{chunk-5A6ER3M2.js → chunk-SHJY5RLU.js} +1 -1
  100. package/dist/chunks/chunk-SI5W5LBV.js +2 -0
  101. package/dist/chunks/chunk-SO42ZB5K.js +2 -0
  102. package/dist/chunks/{chunk-2UDAKLJ4.js → chunk-TCOTXCV6.js} +1 -1
  103. package/dist/chunks/{chunk-QCSLEMZF.js → chunk-U2K7QJCG.js} +1 -1
  104. package/dist/chunks/{chunk-ISIXFK6U.js → chunk-UH4JSSRL.js} +28 -28
  105. package/dist/chunks/{chunk-X4ZT22SG.js → chunk-UPWJSNL5.js} +1 -1
  106. package/dist/chunks/chunk-URNMC46H.js +157 -0
  107. package/dist/chunks/{chunk-NLQ2UPN2.js → chunk-V7KR74NO.js} +1 -1
  108. package/dist/chunks/{chunk-HXZXDDKW.js → chunk-VHXDWAEH.js} +1 -1
  109. package/dist/chunks/{chunk-NE4ESZPT.js → chunk-W2TICQ62.js} +1 -1
  110. package/dist/chunks/chunk-WP2L2NY2.js +2 -0
  111. package/dist/chunks/chunk-WSOUMXH3.js +24 -0
  112. package/dist/chunks/chunk-WWQNMC7C.js +6 -0
  113. package/dist/chunks/chunk-XMHIQ3SK.js +5 -0
  114. package/dist/chunks/{chunk-5MTN6KXV.js → chunk-XNOMIWEY.js} +1 -1
  115. package/dist/chunks/{chunk-ZXT7V64X.js → chunk-XOB6FKQV.js} +1 -1
  116. package/dist/chunks/chunk-Y766IN7Y.js +2 -0
  117. package/dist/chunks/chunk-YCZZ62C2.js +2 -0
  118. package/dist/chunks/chunk-YM4PSVFW.js +4 -0
  119. package/dist/chunks/chunk-YNQWJWIC.js +10 -0
  120. package/dist/chunks/{chunk-GSWBNJGZ.js → chunk-Z3BWCFLV.js} +1 -1
  121. package/dist/chunks/{chunk-GOIKLFXK.js → chunk-ZG6353RM.js} +1 -1
  122. package/dist/chunks/{chunk-T6C5BNXK.js → chunk-ZPTKR3GB.js} +1 -1
  123. package/dist/chunks/{chunk-MNXNZDDW.js → chunk-ZYVHOVKL.js} +1 -1
  124. package/dist/chunks/chunk-ZZHXQCNB.js +22 -0
  125. package/dist/chunks/cli-PSXMIJTF.js +2 -0
  126. package/dist/chunks/{configuration-command-BU2RPG33.js → configuration-command-XYKMXIWF.js} +1 -1
  127. package/dist/chunks/connected-app-executor-6G2LA3PQ.js +2 -0
  128. package/dist/chunks/connected-evidence-IRXYN6YD.js +2 -0
  129. package/dist/chunks/{connected-starting-assets-V5QXRK5Q.js → connected-starting-assets-JONPTII6.js} +1 -1
  130. package/dist/chunks/{continual-FLW6DAJK.js → continual-Z7MO2PF6.js} +1 -1
  131. package/dist/chunks/core-commands-WWN7X3XC.js +2 -0
  132. package/dist/chunks/dataset-preparation-authoring-F3OZIQSP.js +4 -0
  133. package/dist/chunks/datasets-2PC2HP7N.js +2 -0
  134. package/dist/chunks/desktop-test-VU6AFAMO.js +3 -0
  135. package/dist/chunks/dist-47AYOIH6.js +2 -0
  136. package/dist/chunks/{dist-DCSLPBO2.js → dist-MXBEBM4D.js} +1 -1
  137. package/dist/chunks/evaluation-coordination-UOWZHHC5.js +2 -0
  138. package/dist/chunks/experiment-improvements-EB2CV5RA.js +2 -0
  139. package/dist/chunks/experiments-SZQYR6MH.js +2 -0
  140. package/dist/chunks/experiments-signal-2KJCP25D.js +2 -0
  141. package/dist/chunks/{help-PXUUREHZ.js → help-7HXFWIKS.js} +1 -1
  142. package/dist/chunks/host-profile-evaluation-tools-Y2LQ4WQN.js +2 -0
  143. package/dist/chunks/host-profile-external-dataset-FRIGXOO7.js +2 -0
  144. package/dist/chunks/hosted-app-server-composition-PGKQNDW6.js +2 -0
  145. package/dist/chunks/hosted-experiment-improvement-UXC542SZ.js +3 -0
  146. package/dist/chunks/hosted-harness-runtime-6PEI7F2U.js +2 -0
  147. package/dist/chunks/hosted-profile-candidate-HM44BIUX.js +3 -0
  148. package/dist/chunks/hosted-profile-compiler-UAZ4PHYE.js +2 -0
  149. package/dist/chunks/hosted-profile-evaluation-control-EUL57FAB.js +2 -0
  150. package/dist/chunks/hosted-profile-evaluation-inspection-7USY75Z4.js +3 -0
  151. package/dist/chunks/hosted-profile-evaluation-preparation-2LSMZQNA.js +3 -0
  152. package/dist/chunks/{hosted-tasksets-X2YCFYEJ.js → hosted-tasksets-WGXGXJ7E.js} +1 -1
  153. package/dist/chunks/human-review-M26UKGJL.js +2 -0
  154. package/dist/chunks/{import-JWZSZCE4.js → import-6SI4BEKS.js} +2 -2
  155. package/dist/chunks/learning-HM3NWOV5.js +2 -0
  156. package/dist/chunks/local-harness-improvement-runtime-QGWFWNSR.js +2 -0
  157. package/dist/chunks/local-harness-taskset-review-KS4WPMN6.js +2 -0
  158. package/dist/chunks/model-projects-YUAMBQTO.js +2 -0
  159. package/dist/chunks/opchat-AG4CWVY4.js +3 -0
  160. package/dist/chunks/opchat-bounded-chat-IQMP5IIO.js +2 -0
  161. package/dist/chunks/organizations-KDKX77XZ.js +2 -0
  162. package/dist/chunks/{profile-ELE2D7HU.js → profile-O5HL5DTQ.js} +1 -1
  163. package/dist/chunks/project-action-payload-QA24HYGF.js +2 -0
  164. package/dist/chunks/project-agent-XBOOM5TS.js +2 -0
  165. package/dist/chunks/published-experiment-source-GZGN354O.js +2 -0
  166. package/dist/chunks/refiner-profile-service-BJMOYKTC.js +2 -0
  167. package/dist/chunks/{runtime-776NUSE7.js → runtime-XBA744HJ.js} +2 -2
  168. package/dist/chunks/sandbox-command-5ECGS7DG.js +2 -0
  169. package/dist/chunks/{sandbox-template-WP6YCGBK.js → sandbox-template-27U3FQN7.js} +1 -1
  170. package/dist/chunks/saved-work-KUNVTJ7O.js +2 -0
  171. package/dist/chunks/{send-turn-RPB65PME.js → send-turn-FIPWOXWV.js} +1 -1
  172. package/dist/chunks/src-BLWX6DRG.js +424 -0
  173. package/dist/chunks/{src-2R4CMCJ5.js → src-PU7QTFO5.js} +1 -1
  174. package/dist/chunks/standalone-experiment-turn-owner-XIE46VNH.js +2 -0
  175. package/dist/chunks/store-chat-resources-YOEJ2BI6.js +2 -0
  176. package/dist/chunks/{store-continual-support-reviews-R62D2HD6.js → store-continual-support-reviews-FOMYYS25.js} +1 -1
  177. package/dist/chunks/{store-conversation-serving-25O7BAR2.js → store-conversation-serving-K324SQTO.js} +1 -1
  178. package/dist/chunks/{store-create-improve-T5E2GUKK.js → store-create-improve-3LQMIYAP.js} +1 -1
  179. package/dist/chunks/{store-datasets-5Y4U5L3R.js → store-datasets-3KSX7RSO.js} +1 -1
  180. package/dist/chunks/store-evaluation-results-LHCCNNE6.js +7 -0
  181. package/dist/chunks/{store-harness-evaluation-review-settings-I2R3HPO3.js → store-harness-evaluation-review-settings-AAN7KKJ5.js} +1 -1
  182. package/dist/chunks/{store-harness-refinement-candidates-SUT45FQX.js → store-harness-refinement-candidates-3PHL3BUY.js} +1 -1
  183. package/dist/chunks/store-harness-workspaces-ZHNCNWVI.js +2 -0
  184. package/dist/chunks/store-human-review-QJY3ZPPF.js +7 -0
  185. package/dist/chunks/store-learned-preference-migration-validation-X32SRBOM.js +2 -0
  186. package/dist/chunks/{store-learning-MFS4DGQR.js → store-learning-DW3QLQXU.js} +1 -1
  187. package/dist/chunks/{store-learning-credentials-BECWEG2Y.js → store-learning-credentials-67QNTPA7.js} +1 -1
  188. package/dist/chunks/{store-local-experiments-LOH4F4TF.js → store-local-experiments-QTVHJAEP.js} +1 -1
  189. package/dist/chunks/store-model-batch-review-PBYQZJJJ.js +2 -0
  190. package/dist/chunks/store-model-configuration-3SU73CMS.js +3 -0
  191. package/dist/chunks/store-model-project-preparation-TFCG2F2F.js +2 -0
  192. package/dist/chunks/store-ponder-history-WDLMXBIJ.js +2 -0
  193. package/dist/chunks/store-ponder-hosted-DX6E2BVW.js +4 -0
  194. package/dist/chunks/{store-preference-comparison-RNIFLJRW.js → store-preference-comparison-DWV5XSMY.js} +1 -1
  195. package/dist/chunks/{store-schedules-DVQ2PP4F.js → store-schedules-2KUY4T6M.js} +1 -1
  196. package/dist/chunks/{store-sidebar-file-bookmarks-LXWFFYCZ.js → store-sidebar-file-bookmarks-A4XCS7RM.js} +1 -1
  197. package/dist/chunks/{store-sidebar-preferences-4HH7LX6N.js → store-sidebar-preferences-V2PKRXUZ.js} +1 -1
  198. package/dist/chunks/{store-subagents-JLW4GD4Q.js → store-subagents-UGVEFA6M.js} +1 -1
  199. package/dist/chunks/store-task-inbox-QABI4ZAH.js +33 -0
  200. package/dist/chunks/{store-task-inventory-NJXRXFLC.js → store-task-inventory-GEQIZELY.js} +1 -1
  201. package/dist/chunks/store-taskset-drafts-GXABQR5G.js +9 -0
  202. package/dist/chunks/{store-training-VRLU6NFX.js → store-training-CQV7PL3V.js} +1 -1
  203. package/dist/chunks/{store-training-jobs-3ZHG4LGI.js → store-training-jobs-XKN6K66J.js} +18 -10
  204. package/dist/chunks/{store-training-models-KWQD5PRP.js → store-training-models-Q7DTTR4S.js} +1 -1
  205. package/dist/chunks/{store-usage-ZRS3ILF2.js → store-usage-XGAX7NLB.js} +1 -1
  206. package/dist/chunks/{taskset-QDMCQQDJ.js → taskset-ARKJQKYQ.js} +1 -1
  207. package/dist/chunks/taskset-packages-X4K65DTW.js +2 -0
  208. package/dist/chunks/taskset-packages-XK7FSD45.js +2 -0
  209. package/dist/chunks/{teams-bot-GF272RGC.js → teams-bot-UTQAJA6H.js} +1 -1
  210. package/dist/chunks/training-3IWW4256.js +2 -0
  211. package/dist/chunks/{training-DF5UEPY3.js → training-RVIESURJ.js} +1 -1
  212. package/dist/chunks/training-error-2EWDOQ4G.js +2 -0
  213. package/dist/chunks/training-hosted-PFJHYTEU.js +2 -0
  214. package/dist/chunks/training-hosted-checkpoint-evaluation-JJPP7KFW.js +2 -0
  215. package/dist/chunks/training-hosted-feedback-5B2KJGOT.js +2 -0
  216. package/dist/chunks/training-hosted-learning-Y7NHRY4V.js +2 -0
  217. package/dist/chunks/training-hosted-report-UVGTPDOK.js +2 -0
  218. package/dist/chunks/training-hosted-serving-report-OX4A5OKB.js +2 -0
  219. package/dist/chunks/training-hosted-workers-LST4ZUXN.js +2 -0
  220. package/dist/chunks/training-model-start-ROLS3E4V.js +2 -0
  221. package/dist/chunks/{web-search-5RUXYIOF.js → web-search-7FBUBZ66.js} +1 -1
  222. package/dist/chunks/{workspaces-JRY2IE7H.js → workspaces-G3CMY7ZA.js} +1 -1
  223. package/dist/cli.js +1 -1
  224. package/dist/index.js +1 -1
  225. package/dist/sandbox/url.d.ts +3 -1
  226. package/dist/skills/LICENSE +21 -0
  227. package/dist/skills/manifest.json +168 -0
  228. package/dist/skills/openpond-agent-authoring/SKILL.md +9 -3
  229. package/dist/skills/openpond-agent-authoring/references/profile-layout.md +1 -1
  230. package/dist/skills/openpond-agent-authoring/references/validation-and-repair.md +2 -2
  231. package/dist/skills/openpond-cli/SKILL.md +11 -7
  232. package/dist/skills/openpond-cli/references/experiments-and-training.md +1 -1
  233. package/dist/skills/openpond-refiner-authoring/SKILL.md +4 -0
  234. package/dist/skills/openpond-skill-authoring/SKILL.md +5 -1
  235. package/dist/web/assets/App-DY2R8Z6r.js +53 -0
  236. package/dist/web/assets/{AppDialog-BurL61qE.js → AppDialog-8Y0FYalT.js} +1 -1
  237. package/dist/web/assets/AppTerminalPanel-YcnBD5DF.js +2 -0
  238. package/dist/web/assets/{AppToastContext-DZLErwj0.js → AppToastContext-BiQbbVxq.js} +1 -1
  239. package/dist/web/assets/AppsView-Dtte4h6e.js +1 -0
  240. package/dist/web/assets/{AttachmentTypeIcon-CpMSfHCK.js → AttachmentTypeIcon-DgADV7dn.js} +1 -1
  241. package/dist/web/assets/BrowserSidebar-BUqDvEv9.js +1 -0
  242. package/dist/web/assets/{CartesianChart-CEbM980A.js → CartesianChart-J4ChOjvG.js} +1 -1
  243. package/dist/web/assets/ChatTimelineEntry-DC93wlDa.js +8 -0
  244. package/dist/web/assets/ChatTimelineEntry-DztFb85D.css +1 -0
  245. package/dist/web/assets/{CollaborationTabs-DrKJmJZK.js → CollaborationTabs-CFCpk2Ck.js} +1 -1
  246. package/dist/web/assets/CommandMenu-EPPjB14H.js +1 -0
  247. package/dist/web/assets/{CommunityView-BzpIq1lD.js → CommunityView-Okydjpqm.js} +1 -1
  248. package/dist/web/assets/ComposerAttachments-RXCiE88M.js +2 -0
  249. package/dist/web/assets/{ComposerCreateImproveStrip-ChplO9YP.js → ComposerCreateImproveStrip-CSngc8-V.js} +1 -1
  250. package/dist/web/assets/{ConversationImportsSettings-DRHgc7j_.js → ConversationImportsSettings-DS73kyfj.js} +1 -1
  251. package/dist/web/assets/FilePagePreview-Qc4B0vue.js +2 -0
  252. package/dist/web/assets/{GetStartedView-CaBk_mX6.js → GetStartedView-DGFPQ1We.js} +1 -1
  253. package/dist/web/assets/{GettingStartedDialog-JtFLyU3F.js → GettingStartedDialog-DFBYQdHz.js} +1 -1
  254. package/dist/web/assets/{HostedModelLearningReview-hhcjDifK.js → HostedModelLearningReview-BDu3FlcU.js} +1 -1
  255. package/dist/web/assets/{HostedModelLearningSettings-CY8198Y1.js → HostedModelLearningSettings-CHaTHwC8.js} +1 -1
  256. package/dist/web/assets/HtmlVisual-C7GlEVfH.css +1 -0
  257. package/dist/web/assets/HtmlVisual-D9Mh7xds.js +81 -0
  258. package/dist/web/assets/LabModelVersionDetailPage-DgY7lAu5.js +1 -0
  259. package/dist/web/assets/{LabSkillSidebar-HibUEEko.js → LabSkillSidebar-BwtlThO7.js} +1 -1
  260. package/dist/web/assets/LabsRoute-BV7ZJGEw.js +101 -0
  261. package/dist/web/assets/MainChatThread-pzHKd_YN.js +2 -0
  262. package/dist/web/assets/MainPane-6OlLiKKb.js +10 -0
  263. package/dist/web/assets/MainPane-Dje-hfUM.css +1 -0
  264. package/dist/web/assets/NativeSetupTerminal-CPDChcMi.js +2 -0
  265. package/dist/web/assets/NativeSkillSidebar-BEJvt5_H.js +1 -0
  266. package/dist/web/assets/{NewProjectDialog-t9Imnb__.js → NewProjectDialog-CjrjgkTN.js} +1 -1
  267. package/dist/web/assets/{OutputsPage-CeGq_F1S.js → OutputsPage-jzx93QQ3.js} +1 -1
  268. package/dist/web/assets/{PageChrome-VHME5V8j.js → PageChrome-C1M13qG2.js} +1 -1
  269. package/dist/web/assets/{ProjectsPage-2TMZoEPB.js → ProjectsPage-DZrjlMp2.js} +1 -1
  270. package/dist/web/assets/RightChatPanelStack-BsxJg9sy.js +1 -0
  271. package/dist/web/assets/RightSidebarHomePanel-CCVQ9LMB.js +1 -0
  272. package/dist/web/assets/ScheduledWorkPage-Cw1ja2GF.js +1 -0
  273. package/dist/web/assets/{SettingsView-Y8f98GSE.css → SettingsView-Cc0376pY.css} +1 -1
  274. package/dist/web/assets/SettingsView-CckoIki3.js +5 -0
  275. package/dist/web/assets/TasksetDraftEditorPrimitives-ByC8bDjp.js +1 -0
  276. package/dist/web/assets/TeamChatView-OprnSKLF.js +1 -0
  277. package/dist/web/assets/{TerminalOverlay-DlhRpi-X.js → TerminalOverlay-d7A2F9Lx.js} +2 -2
  278. package/dist/web/assets/TrainingCreationPanel-Cyn6R6I6.js +1 -0
  279. package/dist/web/assets/{TrainingDraftPanel-BhhZPPuY.js → TrainingDraftPanel-Mpb5e7t5.js} +1 -1
  280. package/dist/web/assets/TrainingRunLineage-PXzWR65d.css +1 -0
  281. package/dist/web/assets/TrainingRunLineage-VcKz7dIR.js +1 -0
  282. package/dist/web/assets/{UsageSettingsSection-DTZslBeW.js → UsageSettingsSection-FhYymrfc.js} +2 -2
  283. package/dist/web/assets/WorkSidebarPanel-u87uptH0.js +1 -0
  284. package/dist/web/assets/WorkspaceDiffPanel-B5rlW7bA.js +11 -0
  285. package/dist/web/assets/WorkspaceEnvironmentMenu-C8y3537a.js +35 -0
  286. package/dist/web/assets/{WorkspaceFileLocation-ChEeZffU.js → WorkspaceFileLocation-LrEWj4UK.js} +1 -1
  287. package/dist/web/assets/{WorkspaceGitDialogs-D_RUXhTi.js → WorkspaceGitDialogs-NRIMXnkS.js} +1 -1
  288. package/dist/web/assets/{WorkspaceMonacoEditor-BJxaiDrj.js → WorkspaceMonacoEditor-CvDGjKAL.js} +3 -3
  289. package/dist/web/assets/WorkspacePdfPreview-BZ0BbnHv.js +2 -0
  290. package/dist/web/assets/{WorkspacePresentationPreview-A28Poeca.js → WorkspacePresentationPreview-DJrjrvT0.js} +1 -1
  291. package/dist/web/assets/app-models-CUA9XB9U.js +1 -0
  292. package/dist/web/assets/bot-6OhUEmkE.js +1 -0
  293. package/dist/web/assets/browser-sidebar-links-ZyYiYBBd.js +1 -0
  294. package/dist/web/assets/chat-resources-CI8KFVO5.js +1 -0
  295. package/dist/web/assets/{chevron-down-dYn0pd4Q.js → chevron-down-jmVA1BIf.js} +1 -1
  296. package/dist/web/assets/chevron-right-BYmDQ7ti.js +1 -0
  297. package/dist/web/assets/chevron-up-CstyLXH3.js +1 -0
  298. package/dist/web/assets/{chunk-ZFYI4P6C-BmsNtSkR.js → chunk-ONGOAEY6-C__DQmRT.js} +5 -5
  299. package/dist/web/assets/{chunk-BYNVSWIQ-DWh9SmdB.js → chunk-SQBYHWZU-DumrB9SB.js} +1 -1
  300. package/dist/web/assets/{client-choice-storage-DTTLbrYt.js → client-choice-storage-BdQ_YDuk.js} +1 -1
  301. package/dist/web/assets/{cloud-upload-CRMPCFnq.js → cloud-upload-Ck1ufAr8.js} +1 -1
  302. package/dist/web/assets/contracts-BLiqJxBv.js +1 -0
  303. package/dist/web/assets/{copy-DR4ielPn.js → copy-CPkbMfXt.js} +1 -1
  304. package/dist/web/assets/{createLucideIcon-DmttVQ_a.js → createLucideIcon-CXQny8HU.js} +1 -1
  305. package/dist/web/assets/{cssMode-d-2GuNvW.js → cssMode-CYxYl_om.js} +1 -1
  306. package/dist/web/assets/{external-link-B4rPiZEp.js → external-link-CDKOLG_v.js} +1 -1
  307. package/dist/web/assets/{folder-open-BrIUcUk_.js → folder-open-CEtOb_lK.js} +1 -1
  308. package/dist/web/assets/{folder-plus-DwImGEt-.js → folder-plus-CVMYZs3e.js} +1 -1
  309. package/dist/web/assets/{git-commit-horizontal-Ds1mkrlW.js → git-commit-horizontal-DDyhPjxS.js} +1 -1
  310. package/dist/web/assets/{htmlMode-s15GR0Fn.js → htmlMode-DoY4V_j0.js} +1 -1
  311. package/dist/web/assets/icons-D7jkCa2d.js +1 -0
  312. package/dist/web/assets/{image-CY-sHbfQ.js → image-B-PjDSwU.js} +1 -1
  313. package/dist/web/assets/{index-DYrLeSyY.js → index-D9WbJMSq.js} +2 -2
  314. package/dist/web/assets/index-g7UqJhnX.css +1 -0
  315. package/dist/web/assets/{info-aSvM8YlJ.js → info-CCnw-K3b.js} +1 -1
  316. package/dist/web/assets/intake-contracts-BW0Y0C2R.js +1 -0
  317. package/dist/web/assets/{jsonMode-vos9H2hz.js → jsonMode-CeOpZdPj.js} +1 -1
  318. package/dist/web/assets/loader-circle-CPaJeTDy.js +1 -0
  319. package/dist/web/assets/{lspLanguageFeatures-pQmEaoMt.js → lspLanguageFeatures-DAbgLCqZ.js} +1 -1
  320. package/dist/web/assets/{maximize-2-DgF6ZVOM.js → maximize-2-BZX38cpr.js} +1 -1
  321. package/dist/web/assets/message-square-CvgSecgD.js +1 -0
  322. package/dist/web/assets/{monaco.contribution-BPwsKvRB.js → monaco.contribution-CF2JDhi4.js} +2 -2
  323. package/dist/web/assets/{monaco.contribution-CJlccVX3.js → monaco.contribution-cbDqt48m.js} +2 -2
  324. package/dist/web/assets/{monaco.contribution-BbMpa0_-.js → monaco.contribution-m2ze2EsL.js} +2 -2
  325. package/dist/web/assets/{monaco.contribution-pWurLXbm.js → monaco.contribution-yeyow_-Q.js} +2 -2
  326. package/dist/web/assets/{monitor-DlEV241C.js → monitor-By0s4hxb.js} +1 -1
  327. package/dist/web/assets/{paperclip-fnRZSIRc.js → paperclip-BJ2QgJLa.js} +1 -1
  328. package/dist/web/assets/{pdf-CT3zVKCE.js → pdf-C4x-1jjP.js} +1 -1
  329. package/dist/web/assets/pdf.worker.min-BrEVksTu.js +1 -0
  330. package/dist/web/assets/play-D_SuGDBM.js +1 -0
  331. package/dist/web/assets/plus-yw95Iaj8.js +1 -0
  332. package/dist/web/assets/{presentation-Bb8ecExR.js → presentation-I86G1Gd9.js} +1 -1
  333. package/dist/web/assets/{python-DXA1xp0A.js → python-CqFTPj8r.js} +1 -1
  334. package/dist/web/assets/{refresh-cw-B53QjxMO.js → refresh-cw-Dga35Eay.js} +1 -1
  335. package/dist/web/assets/requests-BCbaFiqV.js +1 -0
  336. package/dist/web/assets/{reward-checks-5AOStF27.js → reward-checks-Bcq9ETCA.js} +1 -1
  337. package/dist/web/assets/{save-V1Q4Fcqa.js → save-BLKjYtzR.js} +1 -1
  338. package/dist/web/assets/settings-D7C-Auyi.js +21 -0
  339. package/dist/web/assets/{settings-lists-CtH1A57b.js → settings-lists-DMKA1lCN.js} +5 -5
  340. package/dist/web/assets/square-BY5lG2Ol.js +1 -0
  341. package/dist/web/assets/{square-terminal-Dmgkm5zY.js → square-terminal-B-n7vUex.js} +1 -1
  342. package/dist/web/assets/submit-issue-command-B7Hrt2tU.js +3 -0
  343. package/dist/web/assets/{toggleHighContrast-B-BD2K2Q.js → toggleHighContrast-BhmBE5XE.js} +1 -1
  344. package/dist/web/assets/training-QrdkRQZQ.js +2 -0
  345. package/dist/web/assets/{training-model-data-14942K_Z.js → training-model-data-DB-jg6L_.js} +12 -12
  346. package/dist/web/assets/{tsMode-DdgIcxK3.js → tsMode-BSWEII2p.js} +1 -1
  347. package/dist/web/assets/{upload-82Y6RjLi.js → upload-C4MPhQn8.js} +1 -1
  348. package/dist/web/assets/{useAccountSettings-BgHXNpq_.js → useAccountSettings-9oqWdRLs.js} +1 -1
  349. package/dist/web/assets/useAgentInventory-isO79ui9.js +1 -0
  350. package/dist/web/assets/{useLocalAgentSchedules-CsKv22Hs.js → useLocalAgentSchedules-CZX6PxoK.js} +1 -1
  351. package/dist/web/assets/{useQuery-CPC2wsWm.js → useQuery-BD0Uexmh.js} +1 -1
  352. package/dist/web/assets/{wifi-off-DXOoDN9l.js → wifi-off-Cloe0WuQ.js} +1 -1
  353. package/dist/web/assets/{workers-Clf4hKt5.js → workers-BXagz5eg.js} +1 -1
  354. package/dist/web/assets/x-Dqpel42h.js +1 -0
  355. package/dist/web/assets/{yaml-I1tf8Uxx.js → yaml-sBdvVbCc.js} +1 -1
  356. package/dist/web/index.html +2 -2
  357. package/docs/command-reference.md +22 -4
  358. package/package.json +5 -2
  359. package/dist/chunks/actions-command-6LF4Z4WK.js +0 -2
  360. package/dist/chunks/app-server-connected-apps-3T546FE7.js +0 -2
  361. package/dist/chunks/app-server-evaluations-TXD747QA.js +0 -2
  362. package/dist/chunks/app-server-harness-services-BBCDV5P3.js +0 -2
  363. package/dist/chunks/app-server-runtime-VEJPDAFP.js +0 -2
  364. package/dist/chunks/apps-CTT2XYRR.js +0 -2
  365. package/dist/chunks/chunk-4M3YW3EQ.js +0 -13
  366. package/dist/chunks/chunk-4U2FNXQW.js +0 -2
  367. package/dist/chunks/chunk-547AUVKN.js +0 -2
  368. package/dist/chunks/chunk-557YG77L.js +0 -2
  369. package/dist/chunks/chunk-7KTARW23.js +0 -2
  370. package/dist/chunks/chunk-B42QQUZY.js +0 -2
  371. package/dist/chunks/chunk-EWOTDVDJ.js +0 -4
  372. package/dist/chunks/chunk-GAQLXFOT.js +0 -2
  373. package/dist/chunks/chunk-GLDYJM7O.js +0 -1
  374. package/dist/chunks/chunk-HKV7RX5E.js +0 -2
  375. package/dist/chunks/chunk-IWK3RTLR.js +0 -2
  376. package/dist/chunks/chunk-JX6OX6XE.js +0 -12
  377. package/dist/chunks/chunk-JY3YSI54.js +0 -2
  378. package/dist/chunks/chunk-LILXHGIA.js +0 -2
  379. package/dist/chunks/chunk-LJPO3TEL.js +0 -17
  380. package/dist/chunks/chunk-MNFW5WLD.js +0 -6
  381. package/dist/chunks/chunk-N5GPINVP.js +0 -2
  382. package/dist/chunks/chunk-N663LL27.js +0 -2
  383. package/dist/chunks/chunk-NOSBNHGC.js +0 -18
  384. package/dist/chunks/chunk-NR5VASQB.js +0 -2
  385. package/dist/chunks/chunk-O3MHHGC5.js +0 -151
  386. package/dist/chunks/chunk-OZ6LRNRE.js +0 -2
  387. package/dist/chunks/chunk-PGO4FRHU.js +0 -10
  388. package/dist/chunks/chunk-QAVQJZCM.js +0 -2
  389. package/dist/chunks/chunk-RBDUMASL.js +0 -2
  390. package/dist/chunks/chunk-TM4VEMNN.js +0 -2
  391. package/dist/chunks/chunk-TUCKED4T.js +0 -4
  392. package/dist/chunks/chunk-TVTFEGTU.js +0 -2
  393. package/dist/chunks/chunk-TW3SRBLU.js +0 -22
  394. package/dist/chunks/chunk-UT6F6AIB.js +0 -12
  395. package/dist/chunks/chunk-VE6ZIGUQ.js +0 -2
  396. package/dist/chunks/chunk-VI32G77S.js +0 -2
  397. package/dist/chunks/chunk-VWRTE64Y.js +0 -2
  398. package/dist/chunks/chunk-XSB3T4JZ.js +0 -5
  399. package/dist/chunks/chunk-XWDFXM3S.js +0 -2
  400. package/dist/chunks/chunk-ZQHPGEYT.js +0 -2
  401. package/dist/chunks/cli-GCSO2OAI.js +0 -2
  402. package/dist/chunks/connected-app-executor-UDE7U4KG.js +0 -2
  403. package/dist/chunks/connected-evidence-GXIY2L7C.js +0 -2
  404. package/dist/chunks/core-commands-NJ6TGND4.js +0 -2
  405. package/dist/chunks/dataset-preparation-authoring-IUXUQK3L.js +0 -4
  406. package/dist/chunks/datasets-AH56DKLZ.js +0 -2
  407. package/dist/chunks/desktop-test-PYUTEOWO.js +0 -3
  408. package/dist/chunks/dist-5267UT3V.js +0 -2
  409. package/dist/chunks/evaluation-coordination-3AUICOC5.js +0 -2
  410. package/dist/chunks/experiment-improvements-YS7GGPDW.js +0 -2
  411. package/dist/chunks/experiments-EJZK7FPT.js +0 -2
  412. package/dist/chunks/experiments-signal-NKUIJCIY.js +0 -2
  413. package/dist/chunks/host-profile-evaluation-tools-CTC5JQPD.js +0 -2
  414. package/dist/chunks/host-profile-external-dataset-GJWDY3YT.js +0 -2
  415. package/dist/chunks/hosted-app-server-composition-TLJSKMJT.js +0 -2
  416. package/dist/chunks/hosted-experiment-improvement-TIVXXRPG.js +0 -3
  417. package/dist/chunks/hosted-harness-runtime-SFLJEZFI.js +0 -2
  418. package/dist/chunks/hosted-profile-candidate-DKEMVIYG.js +0 -3
  419. package/dist/chunks/hosted-profile-compiler-V6YR6EHO.js +0 -2
  420. package/dist/chunks/hosted-profile-evaluation-control-ERCXAPZD.js +0 -2
  421. package/dist/chunks/hosted-profile-evaluation-inspection-Q3AIIIB6.js +0 -3
  422. package/dist/chunks/hosted-profile-evaluation-preparation-ELLGH44Z.js +0 -3
  423. package/dist/chunks/human-review-5WM6MSON.js +0 -2
  424. package/dist/chunks/learning-KVLTMRLD.js +0 -2
  425. package/dist/chunks/local-harness-improvement-runtime-IGIKM6GJ.js +0 -2
  426. package/dist/chunks/local-harness-taskset-review-DR2ZIDOH.js +0 -2
  427. package/dist/chunks/model-projects-H22KENI4.js +0 -2
  428. package/dist/chunks/opchat-3S6TSDZO.js +0 -3
  429. package/dist/chunks/opchat-bounded-chat-B7LPCD4U.js +0 -2
  430. package/dist/chunks/organizations-62YNTZTO.js +0 -2
  431. package/dist/chunks/project-action-payload-32F4X2BB.js +0 -2
  432. package/dist/chunks/project-agent-O4REKO6T.js +0 -2
  433. package/dist/chunks/published-experiment-source-DAOTJLIN.js +0 -2
  434. package/dist/chunks/refiner-profile-service-DYMZ7J3X.js +0 -2
  435. package/dist/chunks/sandbox-command-UQ26NDIX.js +0 -2
  436. package/dist/chunks/saved-work-PG52WCRQ.js +0 -2
  437. package/dist/chunks/src-AU6LG7E6.js +0 -421
  438. package/dist/chunks/standalone-experiment-turn-owner-SD3SUTKX.js +0 -2
  439. package/dist/chunks/store-chat-resources-T4LR7K25.js +0 -2
  440. package/dist/chunks/store-evaluation-results-WUVJWCFU.js +0 -7
  441. package/dist/chunks/store-harness-workspaces-IFEFY5CK.js +0 -2
  442. package/dist/chunks/store-human-review-ZQNLZRGG.js +0 -7
  443. package/dist/chunks/store-learned-preference-migration-validation-UH6MJQSH.js +0 -2
  444. package/dist/chunks/store-model-batch-review-QO4VVKWC.js +0 -2
  445. package/dist/chunks/store-model-configuration-C3HSOFD5.js +0 -3
  446. package/dist/chunks/store-model-project-preparation-RQ2YTC2Y.js +0 -2
  447. package/dist/chunks/store-task-inbox-DL5RYFPO.js +0 -33
  448. package/dist/chunks/store-taskset-drafts-UFGN4SGF.js +0 -9
  449. package/dist/chunks/taskset-packages-CBLJFWDQ.js +0 -2
  450. package/dist/chunks/training-error-L5V5IBX3.js +0 -2
  451. package/dist/chunks/training-hosted-I2NDBYGS.js +0 -2
  452. package/dist/chunks/training-hosted-report-4F25RZZ4.js +0 -2
  453. package/dist/chunks/training-hosted-workers-KI767T4Y.js +0 -2
  454. package/dist/skills/openpond-desktop-harness/SKILL.md +0 -113
  455. package/dist/skills/openpond-desktop-harness/agents/openai.yaml +0 -4
  456. package/dist/web/assets/App-DHJVXTI2.js +0 -54
  457. package/dist/web/assets/AppTerminalPanel-RjFlF-a4.js +0 -2
  458. package/dist/web/assets/AppsView-ttlr9ckQ.js +0 -1
  459. package/dist/web/assets/BrowserSidebar-Cp2l0kg0.js +0 -1
  460. package/dist/web/assets/ChatTimelineEntry-BITv20Ze.js +0 -1
  461. package/dist/web/assets/CommandMenu-6oj8FUr6.js +0 -1
  462. package/dist/web/assets/ComposerAttachments-6en7m_ov.js +0 -2
  463. package/dist/web/assets/FilePagePreview-CW4J_1u7.js +0 -2
  464. package/dist/web/assets/LabModelVersionDetailPage-f0tHT-Sn.js +0 -1
  465. package/dist/web/assets/LabsRoute-B61l1b8P.js +0 -101
  466. package/dist/web/assets/MainChatThread-egKi0gLk.js +0 -2
  467. package/dist/web/assets/MainPane-2dj6Dg4l.js +0 -95
  468. package/dist/web/assets/MainPane-BwHw3UYp.css +0 -1
  469. package/dist/web/assets/NativeSetupTerminal-CNHTByLo.js +0 -2
  470. package/dist/web/assets/NativeSkillSidebar-DCdMbSfe.js +0 -1
  471. package/dist/web/assets/RightChatPanelStack-B3mBViGC.js +0 -1
  472. package/dist/web/assets/RightSidebarHomePanel-CxDYSyyx.js +0 -1
  473. package/dist/web/assets/ScheduledWorkPage-Dh47iH11.js +0 -1
  474. package/dist/web/assets/SettingsView-D2bu3tK_.js +0 -5
  475. package/dist/web/assets/TeamChatView-CN17AsgA.js +0 -1
  476. package/dist/web/assets/TrainingCreationPanel-DJKzaNFj.js +0 -1
  477. package/dist/web/assets/TrainingMetricWorkbench-DBy8F1xp.js +0 -1
  478. package/dist/web/assets/WorkSidebarPanel-Ds-eTQLs.js +0 -1
  479. package/dist/web/assets/WorkspaceDiffPanel-D_iyg2D4.js +0 -11
  480. package/dist/web/assets/WorkspaceEnvironmentMenu-Fn-NlfMQ.js +0 -35
  481. package/dist/web/assets/app-models-BviS9b7U.js +0 -1
  482. package/dist/web/assets/browser-sidebar-links-ujSvTf5h.js +0 -1
  483. package/dist/web/assets/chat-resources-3SvnVeKv.js +0 -1
  484. package/dist/web/assets/chevron-right-sFx2xRvT.js +0 -1
  485. package/dist/web/assets/contracts-BHTOD1nd.js +0 -1
  486. package/dist/web/assets/icons-CK5-nxVC.js +0 -1
  487. package/dist/web/assets/index-Dezj4Z2p.css +0 -1
  488. package/dist/web/assets/loader-circle-cyf35w3i.js +0 -1
  489. package/dist/web/assets/play-wI_3FLr4.js +0 -1
  490. package/dist/web/assets/plus-DoJe4fLj.js +0 -1
  491. package/dist/web/assets/settings-BKmRueaw.js +0 -21
  492. package/dist/web/assets/square-BqSK-hv9.js +0 -1
  493. package/dist/web/assets/submit-issue-command-DRgUboVW.js +0 -3
  494. package/dist/web/assets/training-managed-adapter-BXNwgd3P.js +0 -1
  495. package/dist/web/assets/useAgentInventory-B-LNn3up.js +0 -1
  496. package/dist/web/assets/x-IPhrr4ju.js +0 -1
@@ -0,0 +1,2 @@
1
+ import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
2
+ import{a as c}from"./chunk-FTQLQJQV.js";function b(n){return n!==null&&typeof n=="object"&&!Array.isArray(n)?n:{}}c(b,"record");function _(n){return typeof n=="number"&&Number.isFinite(n)?n:null}c(_,"finite");function d(n){let t=_(n);return t!==null&&t>=0?t:null}c(d,"nonnegative");function l(n){let t=n.filter(u=>u!==null).sort((u,a)=>u-a),r=t.length?t.reduce((u,a)=>u+a,0):null,o=c(u=>t.length?t[Math.max(0,Math.ceil(t.length*u)-1)]:null,"quantile");return{observations:t.length,missing:n.length-t.length,total:r,mean:r===null?null:r/t.length,min:t[0]??null,max:t.at(-1)??null,p50:o(.5),p95:o(.95)}}c(l,"statistics");function U(n,t){return Object.fromEntries(t.map(r=>[r,l(n.map(o=>d(o[r])))]))}c(U,"timingStatistics");function J(n,t){return Object.fromEntries(t.map(r=>{let{total:o,...u}=l(n.map(a=>d(a[r])));return[r,u]}))}c(J,"distributionStatistics");function W(n){if(!n.length)return null;let t=n.reduce((r,o)=>r+o,0)/n.length;return Math.sqrt(n.reduce((r,o)=>r+(o-t)**2,0)/n.length)}c(W,"populationStd");function v(n){return typeof n=="string"&&/^[a-zA-Z0-9_.:-]{1,200}$/.test(n)?n:null}c(v,"code");function z(n){let t=new Map;for(let r of n)r!==null&&t.set(r,(t.get(r)??0)+1);return Object.fromEntries([...t].sort(([r],[o])=>r.localeCompare(o)))}c(z,"counts");var X=["commandTotalSeconds","requestPreparationSeconds","vllmRequestSeconds","vllmQueueSeconds","vllmPrefillSeconds","vllmDecodeSeconds","vllmTimeToFirstTokenSeconds","vllmInferenceSeconds","tokenizationSeconds","workerQueueSeconds","workerBatchWaitSeconds"],Y=["inputPreparationSeconds","parameterHashSeconds","residentLoadSeconds","oldAndReferenceForwardSeconds","optimizerForwardBackwardSeconds","postUpdateForwardSeconds","checkpointSaveSeconds","adapterSerializationSeconds","adapterCompositionSeconds","serializedAdapterVerificationSeconds","optimizerStateSerializationSeconds","deferredDiagnosticsSerializationSeconds","totalTrainStepSeconds"];function oe(n){let{job:t,outputs:r}=n,o=n.servingEvidence;if(o&&(o.jobId!==t.id||o.teamId!==t.teamId))throw new Error("Hosted serving report evidence belongs to a different job or workspace.");if(o&&Object.values(t.rolloutProgress).some(e=>e!==0))throw new Error("Hosted serving report cannot contain training progress.");let u=o?.cleanupComplete===null||!o?r.receipt?.cleanupComplete??null:o.cleanupComplete&&r.receipt?.cleanupComplete!==!1,a=n.recoverySourceJob,K=a?.state==="succeeded"&&a.phase==="completed"&&a.rolloutProgress.groupsCompleted>0&&a.rolloutProgress.groupsCompleted<a.rolloutProgress.groupsTarget&&a.rolloutProgress.groupsTarget===t.rolloutProgress.groupsTarget;if(t.recovery&&(!a||a.id!==t.recovery.sourceJobId||a.teamId!==t.teamId||!a.completedAt||!["failed","cancelled"].includes(a.state)&&!K||a.rolloutProgress.groupsCompleted!==t.recovery.completedGroups||a.rolloutProgress.optimizerUpdatesApplied+a.rolloutProgress.optimizerUpdatesSkipped!==t.recovery.completedGroups))throw new Error("Hosted recovery report requires the unchanged terminal source run's progress.");let w=t.recovery&&a?a.rolloutProgress:{groupsCompleted:0,optimizerUpdatesApplied:0,optimizerUpdatesSkipped:0},S={groupsCompleted:t.rolloutProgress.groupsCompleted-w.groupsCompleted,groupsTarget:t.rolloutProgress.groupsTarget-w.groupsCompleted,optimizerUpdatesApplied:t.rolloutProgress.optimizerUpdatesApplied-w.optimizerUpdatesApplied,optimizerUpdatesSkipped:t.rolloutProgress.optimizerUpdatesSkipped-w.optimizerUpdatesSkipped};if(Object.values(S).some(e=>e<0))throw new Error("Hosted recovery source progress exceeds the recovered run's progress.");if(n.events.length>1e5)throw new Error("Hosted report exceeds 100,000 events.");if(n.events.some(e=>e.jobId!==t.id)||r.outputs.some(e=>e.jobId!==t.id)||r.receipt&&(r.receipt.jobId!==t.id||r.receipt.teamId!==t.teamId))throw new Error("Hosted report evidence belongs to a different job or workspace.");let C=new Map;for(let e of n.events){let i=C.get(e.id);if(i&&i.sequence===e.sequence&&JSON.stringify(i)!==JSON.stringify(e))throw new Error("Hosted report contains conflicting event snapshots.");(!i||e.sequence>=i.sequence)&&C.set(e.id,e)}let f=[...C.values()],g=f.filter(e=>e.data.metricKind==="rollout_trajectory"),m=g.filter(e=>e.data.rewardEligible===!0),T=g.filter(e=>e.data.rewardEligible===!1),y=m.filter(e=>_(e.data.reward)!==null),P=f.filter(e=>e.data.metricKind==="inference_command"),h=f.filter(e=>e.data.metricKind==="policy_optimization"),R=f.filter(e=>e.type==="optimizer_skipped_no_signal"),D=f.filter(e=>e.data.metricKind==="gpu_allocation"),V=f.filter(e=>e.data.metricKind==="physical_gpu_worker"),N=[],s=c((e,i)=>N.push({code:e,message:i}),"add");t.recovery&&s("checkpoint_recovery_reuses_progress","Cumulative progress includes the source run; throughput and per-update cost use only this execution's new updates.");let H=n.versionBeforeRead===t.version;H||s("job_changed_during_read","The job changed during these reads; rerun for a stable snapshot."),!g.length&&!o&&s("no_recorded_trajectories","No trajectory evidence is present; this report cannot assess model quality or learning."),T.length&&s("ineligible_trajectories","Infrastructure-ineligible trajectories are excluded from reward statistics."),m.length!==y.length&&s("eligible_rewards_pending","Some eligible trajectories have no finite grade yet."),R.length&&s("no_signal_groups","Recorded groups produced zero standardized advantage and skipped optimization; inspect reward/task quality before increasing the budget.");let O=t.executionMode==="qualification";O&&s("qualification_only","This run collects original-model evidence; optimizer updates were not requested."),o&&s("serving_only","This run serves an existing checkpoint; optimizer work and model publication were not requested."),o?.executionMode==="frozen_evaluation"&&t.terminalReason==="checkpoint_evaluation_complete"?s("checkpoint_evaluation_complete","The frozen evaluation finished and entered its ordinary cancellation/cleanup lifecycle."):t.terminalReason&&s("terminal_reason_present","The job has a terminal reason; inspect official status/logs for its details."),!r.receipt&&o?.cleanupAttestation?s("public_execution_receipt_unavailable","Native custody is reported from the owner attestation; no public final execution receipt or reconciled invoice is available."):r.receipt||s("execution_receipt_unavailable","No final execution receipt is available; cleanup and reconciled execution evidence remain unverified here."),u===!1&&s("cleanup_incomplete","Recorded cleanup evidence does not attest completed cleanup.");let x=new Map;for(let e of m){let i=v(e.data.rolloutGroupId);if(!i)continue;let p=x.get(i)??[];p.push(e),x.set(i,p)}let L=[...x].map(([e,i])=>{let p=i.map(A=>_(A.data.reward)).filter(A=>A!==null),G=W(p);return{groupId:e,recordedEligible:i.length,recordedScored:p.length,rewardMean:l(p).mean,rewardStd:G,allRecordedRewardsEqual:p.length>=2&&G===0,optimizerSkippedNoSignal:R.some(A=>A.data.rolloutGroupId===e)}}),j=new Set(y.flatMap(e=>Object.entries(b(e.data.rewardComponents)).filter(([i,p])=>v(i)&&_(p)!==null).map(([i])=>i))),Q=Object.fromEntries([...j].sort().map(e=>[e,l(y.map(i=>_(b(i.data.rewardComponents)[e])))]));y.length&&![...j].some(e=>e!=="reward")?s("per_grader_reward_breakdown_unavailable","Eligible aggregate rewards are recorded, but no separate finite numeric component fields are present. Per-grader coverage and scores are unavailable; missing breakdowns are not zero grades."):j.size&&s("reward_component_binding_unverified","Reward components summarize finite numeric event fields only. The reward field is aggregate; other fields are not established as individual grader scores without matching the frozen grader binding.");let E=P.map(e=>b(e.data.timings)),Z=h.map(e=>b(e.data.timings));P.length&&E.some(e=>d(e.vllmRequestSeconds)===null)&&s("inference_timing_incomplete","Some inference commands lack request timing; missing measurements are not zero durations."),h.length<S.optimizerUpdatesApplied&&s("optimizer_event_coverage_incomplete","Fewer optimizer events were returned than applied updates; report evidence may be incomplete."),R.length<S.optimizerUpdatesSkipped&&s("no_signal_event_coverage_incomplete","Fewer no-signal events were returned than skipped updates; group details may be incomplete.");let B=Date.parse(t.completedAt??n.generatedAt);if(!Number.isFinite(B)||!Number.isFinite(Date.parse(n.generatedAt)))throw new Error("Hosted report timestamp is invalid.");let k=Math.max(0,(B-Date.parse(t.createdAt))/1e3),I=c(e=>k>0?e*3600/k:null,"hourlyRate"),q=l(g.map(e=>d(e.data.outputTokens))),M=new Map;for(let e of D.sort((i,p)=>i.sequence-p.sequence)){let i=v(e.data.allocationId);i&&M.set(i,e)}let F=new Map;for(let e of V.sort((i,p)=>i.sequence-p.sequence)){let i=v(e.data.physicalWorkerId);i&&F.set(i,e)}let $=t.completedAt!==null;return{schemaVersion:"openpond.trainingRunReport.v1",generatedAt:n.generatedAt,job:{id:t.id,teamId:t.teamId,submissionHash:t.submissionHash,kind:t.kind,executionMode:o?.executionMode??(O?"qualification":"training"),state:t.state,phase:t.phase,version:t.version,terminalReasonPresent:t.terminalReason!==null,createdAt:t.createdAt,completedAt:t.completedAt,...t.recovery?{recovery:t.recovery}:{},...o?{serving:o.source}:{}},evidence:{jobRevisionStableDuringRead:H,versionBeforeRead:n.versionBeforeRead,versionAfterRead:t.version,readModel:"independent_authenticated_reads_not_an_atomic_snapshot",returnedEvents:n.events.length,uniqueEvents:f.length,scope:o?"public_events_and_authenticated_native_serving_metadata":"returned_public_event_snapshot",terminal:$,...o?{nativeServingJobVersion:o.nativeJobVersion}:{},recoverySourceJobVersion:t.recovery?a.version:null,completeness:"Only recorded events are summarized; absent instrumentation is not proof of no work."},progress:{...t.rolloutProgress,currentExecution:S,inherited:{groupsCompleted:w.groupsCompleted,optimizerUpdatesApplied:w.optimizerUpdatesApplied,optimizerUpdatesSkipped:w.optimizerUpdatesSkipped}},wall:{elapsedSeconds:k,inferenceCommands:P.length,optimizerEvents:h.length},throughput:{recordedTrajectoriesPerWallHour:I(g.length),recordedEligibleTrajectoriesPerWallHour:I(m.length),appliedUpdatesPerWallHour:I(S.optimizerUpdatesApplied),recordedOutputTokensPerWallSecond:k>0&&q.total!==null?q.total/k:null,note:"Execution throughput includes startup, waits and cleanup, and excludes inherited updates; this is not engine decode tokens/second."},trajectories:{recorded:g.length,eligible:m.length,ineligible:T.length,eligibilityUnknown:g.length-m.length-T.length,scoredEligible:y.length,pendingEligibleGrades:m.length-y.length,inputTokens:l(g.map(e=>d(e.data.inputTokens))),outputTokens:q,eligibleRewards:l(m.map(e=>_(e.data.reward))),rewardComponents:Q,terminalClasses:z(g.map(e=>v(e.data.terminalClass))),ineligibleTerminalClasses:z(T.map(e=>v(e.data.terminalClass))),groups:L,groupCoverageNote:"Within-group statistics cover recorded eligible scores only; equal partial scores do not establish a completed no-signal group."},failures:{commandErrorCodes:z(f.map(e=>v(e.data.errorCode))),outboxErrorCodes:z(f.map(e=>v(e.data.lastErrorCode))),providerFailureCodes:z([...F.values()].map(e=>v(e.data.failureCode)))},learning:{noSignalGroupsRecorded:R.length,samplingLogprobMae:l(h.map(e=>d(e.data.samplingLogprobMae))),entropy:l(h.map(e=>d(e.data.entropy))),gradientNorm:l(h.map(e=>d(e.data.gradientNorm))),behaviorPolicyKlPreUpdate:l(h.map(e=>d(e.data.behaviorPolicyKlPreUpdate))),baseOrReferenceKl:l(h.map(e=>d(e.data.kl)))},timings:{environmentSeconds:U(g.map(e=>b(e.data.executionTiming)),["initializationSeconds","policySeconds","environmentSeconds","cleanupSeconds","totalRolloutSeconds"]),toolCalls:l(g.map(e=>d(b(e.data.executionTiming).toolCalls))),toolFailures:l(g.map(e=>d(b(e.data.executionTiming).toolFailures))),inferenceSeconds:U(E,X),optimizerSeconds:U(Z,Y),cachedPromptTokens:l(E.map(e=>d(e.vllmCachedPromptTokens))),note:"Totals are sums of recorded work. Nested timings and concurrent requests overlap; do not sum these into wall time or infer idle time from them."},gpuActivity:{inference:J(E,["gpuActivitySampleCount","gpuUtilizationMeanPercent","gpuUtilizationMaxPercent","gpuMemoryBusUtilizationMeanPercent","gpuActivityWindowSeconds","gpuActivityObservedSpanSeconds","gpuInterRequestGapSeconds","gpuInterRequestSampleCount","gpuInterRequestUtilizationMeanPercent"]),optimizer:J(h.map(e=>b(e.data.hardware)),["gpuActivitySampleCount","gpuUtilizationMeanPercent","gpuUtilizationMaxPercent","gpuMemoryBusUtilizationMeanPercent","gpuActivityWindowSeconds","gpuActivityObservedSpanSeconds"]),note:"Device-wide one-second samples can include other co-resident work. Between-request activity is worker-wide, not attributed tool or idle time. Per-window statistics are not time-weighted whole-job utilization; short windows may have no samples."},costs:{accountingBasis:"job_accrued_meter_not_final_provider_invoice",jobAccruedSpendUsd:t.accruedSpendUsd,executionReceiptSpendUsd:r.receipt?.spendUsd??null,perRecordedEligibleTrajectoryUsd:m.length?t.accruedSpendUsd/m.length:null,perAppliedUpdateUsd:S.optimizerUpdatesApplied?t.accruedSpendUsd/S.optimizerUpdatesApplied:null,allocationGpuUsd:l([...M.values()].map(e=>d(e.data.accruedGpuUsd))),allocationGpuSeconds:l([...M.values()].map(e=>d(e.data.accruedGpuSeconds))),physicalInvoiceTotalUsd:null,note:"Job, receipt and allocation amounts are overlapping accounting views, not additive charges. Physical startup/idle/storage and provider settlement are not established by this report."},cleanup:{executionReceiptAvailable:r.receipt!==null,complete:u,...o?{nativeAttestationAvailable:o.cleanupAttestation!==null,nativeCustody:o.cleanupAttestation}:{}},findings:N}}c(oe,"buildHostedTrainingReport");export{oe as buildHostedTrainingReport};
@@ -0,0 +1,2 @@
1
+ import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
2
+ import{a}from"./chunk-SO42ZB5K.js";import"./chunk-PF56N7ZY.js";import"./chunk-FTQLQJQV.js";export{a as parseHostedServingReportEvidence};
@@ -0,0 +1,2 @@
1
+ import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
2
+ import{A as r}from"./chunk-PF56N7ZY.js";import{a as l}from"./chunk-FTQLQJQV.js";var c=r.object({workerId:r.string().min(1).max(191),expectedControlRevision:r.string().regex(/^[a-f0-9]{64}$/),idempotencyKey:r.string().min(1).max(191),jobId:r.string().min(1).max(191).optional(),maximumStorageUsd:r.number().positive().max(10).optional(),warmIdleDeadlineAt:r.iso.datetime({offset:!0}).optional(),maximumIdleUsd:r.number().positive().max(10).optional(),sessionId:r.string().min(1).max(191).optional(),sessionDeadlineAt:r.iso.datetime({offset:!0}).optional(),maximumSessionUsd:r.number().positive().max(30).optional(),idleGraceSeconds:r.number().int().min(120).max(28800).optional(),preservePhysicalUntilDeadline:r.boolean().optional()}).strict().refine(e=>e.preservePhysicalUntilDeadline===!0||e.idleGraceSeconds===void 0||e.idleGraceSeconds<=10800,{path:["idleGraceSeconds"],message:"Ordinary session idle grace cannot exceed three hours."});async function u(e){let t="/v1/managed-rl/physical-workers",s;if(e.action==="hosted-workers"){if(e.target)throw new Error("hosted-workers does not accept an identifier.")}else if(e.action==="hosted-worker"){if(!e.target)throw new Error("hosted-worker requires a physical worker ID.");t+=`/${encodeURIComponent(e.target)}`}else{let o=e.action.replace("hosted-worker-","");if(!["stop","resume","retire","warm-idle","retain-session"].includes(o))throw new Error(`Unknown physical worker action: ${o}`);if(!e.confirmed)throw new Error("Worker lifecycle changes require --yes.");let{workerId:m,...n}=c.parse(await e.readInput());if(n.preservePhysicalUntilDeadline!==void 0&&o!=="retain-session")throw new Error("Physical preservation is available only on retain-session with a fixed deadline and budget.");if(o==="stop"&&!n.maximumStorageUsd)throw new Error("Stopping requires maximumStorageUsd for bounded retained storage.");if(o==="resume"&&!n.jobId)throw new Error("Resuming requires an admitted queued jobId with its own compute budget.");if(o==="warm-idle"&&(!n.warmIdleDeadlineAt||!n.maximumIdleUsd))throw new Error("Warm idle requires warmIdleDeadlineAt and maximumIdleUsd; the server caps retention at three hours.");if(o==="retain-session"&&(!n.sessionId||!n.sessionDeadlineAt||!n.maximumSessionUsd||!n.idleGraceSeconds))throw new Error("Session retention requires sessionId, sessionDeadlineAt, maximumSessionUsd, and idleGraceSeconds; its deadline and active-plus-idle execution budget cannot be renewed; reserve cleanup costs separately.");t+=`/${encodeURIComponent(m)}/control`,s=JSON.stringify({...n,action:o})}let a=new Headers(e.headers);a.set("accept","application/json"),s&&a.set("content-type","application/json");let d=await e.request(new URL(t,e.baseUrl),{method:s?"POST":"GET",headers:a,body:s}),i=await d.json();if(!d.ok){let o=i&&typeof i=="object"&&"error"in i&&typeof i.error=="string"?i.error:"worker_request_failed";throw new Error(`Physical worker request failed (${d.status}): ${o}. Read hosted-worker before retrying a lifecycle mutation.`)}return i}l(u,"runHostedWorkerCommand");export{u as runHostedWorkerCommand};
@@ -0,0 +1,2 @@
1
+ import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
2
+ import{c as a,f as d,g as b}from"./chunk-3M53YXEI.js";import"./chunk-N42HT64M.js";import{a as g}from"./chunk-NG2L6D7G.js";import"./chunk-ABF3W2MO.js";import"./chunk-RV7PUSI2.js";import"./chunk-KCV5VN4X.js";import"./chunk-OE22TAXP.js";import{O as v}from"./chunk-J572ANHX.js";import"./chunk-PBZCXPPC.js";import"./chunk-NJLULBTM.js";import"./chunk-VVNV4NNW.js";import"./chunk-PF56N7ZY.js";import{a as u}from"./chunk-FTQLQJQV.js";import{randomUUID as x}from"node:crypto";import{createInterface as h}from"node:readline/promises";function $(i){let e=a(i,"gpuType"),s=a(i,"availabilityId"),p=a(i,"gpuPlacementObjective");if(e||s){if(!e||!s||p)throw new Error("Choose --gpu-type with --availability-id, or --gpu-placement-objective.");return g.parse({mode:"manual",gpuType:e,availabilityId:s})}return p?g.parse({mode:"automatic",objective:p}):void 0}u($,"trainingGpuChoice");async function O(i){let{options:e,client:s,teamId:p}=i,f=a(e,"batchId");if(!f)throw new Error("training start --team-id requires --batch-id <sealed-approved-batch-id>.");let y=process.stdin.isTTY&&process.stdout.isTTY&&!d(e.json),m=d(e.yes);if(!m&&!y)throw new Error("Noninteractive training start requires --yes and an explicitly approved --max-spend or saved budget.");for(let r of["manifest","comparisonSeriesEntry","retentionDays","exportApproved"])if(e[r]!==void 0)throw new Error(`Hosted saved-Model starts use the retained configuration; ${r} is not a run override.`);let[{project:o},w]=await Promise.all([i.models.get(i.modelId),i.learning.get("batch",f)]),c=$(e)??o.trainingSetup.managedGpuSelection,t=b(e.maxSpend,"max-spend")??o.trainingSetup.preferredMaximumSpendUsd;if(y&&!m){let r=h({input:process.stdin,output:process.stdout});try{let l=await r.question(`Maximum budget in USD${t===null?"":` [${t}]`}: `);l.trim()&&(t=Number(l.trim()))}finally{r.close()}}if(t===null||!Number.isFinite(t)||t<=0||t>1e6)throw new Error("Choose an explicit positive --max-spend or save a positive Model budget before starting.");let n=await s.prepareRun({schemaVersion:"openpond.trainingPreparationRequest.v1",teamId:p,operationId:a(e,"operationId")||x(),projectId:a(e,"projectId")||null,configuration:{id:o.id,expectedRevision:o.revision,expectedEtag:o.etag},batch:v(w),name:a(e,"name")||o.name,maximumSpendUsd:t,...c?{gpuSelection:c}:{}});if(d(e.json)||console.log(`Retained preparation: ${n.plan.id}`),d(e.json)||(console.log(`Prepared run: ${n.plan.id}; approved maximum $${t}.`),console.log(`Model: ${o.name}@${n.plan.source.modelProject.revision}; batch: ${n.plan.request.batch.id}@${n.plan.request.batch.revision}.`),console.log(`GPU choice: ${c?.mode==="manual"?`${c.gpuType} / ${c.availabilityId}`:`Automatic (${c?.objective??o.trainingSetup.managedGpuPlacementObjective})`}.`)),!m){let r=h({input:process.stdin,output:process.stdout});try{let l=await r.question(`Start this exact prepared run with a $${t} maximum? [y/N] `);if(!["y","yes"].includes(l.trim().toLowerCase()))throw new Error(`Training was not started. Preparation ${n.plan.id} is retained for review or cancellation.`)}finally{r.close()}}return{preparation:await s.startPreparation(n.plan.id,{teamId:p,planHash:n.plan.contentHash,expectedRevision:n.revision})}}u(O,"startHostedModel");export{O as startHostedModel,$ as trainingGpuChoice};
@@ -1,2 +1,2 @@
1
1
  import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
2
- import{a,b,c,d,e}from"./chunk-AKZPMKWP.js";import"./chunk-MNFW5WLD.js";import"./chunk-4N4EH3RJ.js";import"./chunk-HFJUXKT5.js";import"./chunk-5ZBLCWEJ.js";import"./chunk-JCLTFDVW.js";import"./chunk-6FA3GG5B.js";import"./chunk-2EPR4HLF.js";import"./chunk-BKEDG3A4.js";import"./chunk-OE22TAXP.js";import"./chunk-UGOK7VTC.js";import"./chunk-VVNV4NNW.js";import"./chunk-PF56N7ZY.js";import"./chunk-FTQLQJQV.js";export{a as createHostedWebSearchExecutor,b as createWebSearchExecutorFromEnv,d as normalizeSearchApiUrl,e as normalizeWebSearchRequest,c as resolveWebSearchEndpoint};
2
+ import{a,b,c,d,e}from"./chunk-J7ZTPXRQ.js";import"./chunk-WWQNMC7C.js";import"./chunk-4N4EH3RJ.js";import"./chunk-HFJUXKT5.js";import"./chunk-5ZBLCWEJ.js";import"./chunk-JCLTFDVW.js";import"./chunk-6FA3GG5B.js";import"./chunk-2EPR4HLF.js";import"./chunk-BKEDG3A4.js";import"./chunk-OE22TAXP.js";import"./chunk-UGOK7VTC.js";import"./chunk-VVNV4NNW.js";import"./chunk-PF56N7ZY.js";import"./chunk-FTQLQJQV.js";export{a as createHostedWebSearchExecutor,b as createWebSearchExecutorFromEnv,d as normalizeSearchApiUrl,e as normalizeWebSearchRequest,c as resolveWebSearchEndpoint};
@@ -1,2 +1,2 @@
1
1
  import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
2
- import{a as F,b as G,c as H,d as I,e as J,f as K,g as L,h as M,i as N,j as O,k as P,l as Q,m as R,n as S,o as T}from"./chunk-VK4TPZTA.js";import{A,B,C,D,E,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z}from"./chunk-YU3C6U5V.js";import"./chunk-557XSPVS.js";import"./chunk-FTQLQJQV.js";export{a as MACOS_GIT_MISSING_DEVELOPER_TOOLS_ERROR,C as appWorkspacePaths,B as assertSafeBranchName,d as checkWorkspaceGitAvailability,S as checkoutBranch,T as checkoutBranchAtPath,G as clearWorkspaceDiffCacheForTests,D as cloneWorkspace,Q as createAndCheckoutBranch,R as createAndCheckoutBranchAtPath,A as expectedRemoteUrl,t as isGeneratedWorkspacePath,i as isGitRepo,c as isMacOSGitDeveloperToolsMissing,u as isVisibleGitWorkspaceFile,r as isWorkspaceDirectory,E as lastFetchAt,z as listPlainWorkspaceFiles,J as loadGitCommitDiffAtPath,H as loadWorkspaceDiff,I as loadWorkspaceDiffAtPath,K as loadWorkspaceFile,N as loadWorkspaceFileAtPath,L as loadWorkspaceImageFile,M as loadWorkspaceImageFileAtPath,O as loadWorkspaceState,P as loadWorkspaceStateAtPath,n as localVideoContentType,F as mapWorkspaceDiffEntriesWithConcurrency,s as normalizeWorkspaceFilePath,w as parseBranchStatusLine,x as parseNumstat,v as parseStatusLine,h as pathExists,p as readLocalImageFile,q as readLocalVideoFile,l as readWorkspaceDocumentPreview,k as readWorkspaceFile,o as readWorkspaceImageFile,g as redactRemoteUrl,b as runWorkspaceCommand,f as sourceFromRemote,e as startMacOSCommandLineToolsInstall,j as truncatePatch,y as uniqueSortedPaths,m as workspaceImageContentType};
2
+ import{a as F,b as G,c as H,d as I,e as J,f as K,g as L,h as M,i as N,j as O,k as P,l as Q,m as R,n as S,o as T}from"./chunk-DLANLLKH.js";import{A,B,C,D,E,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z}from"./chunk-YU3C6U5V.js";import"./chunk-LKKMLBOH.js";import"./chunk-FTQLQJQV.js";export{a as MACOS_GIT_MISSING_DEVELOPER_TOOLS_ERROR,C as appWorkspacePaths,B as assertSafeBranchName,d as checkWorkspaceGitAvailability,S as checkoutBranch,T as checkoutBranchAtPath,G as clearWorkspaceDiffCacheForTests,D as cloneWorkspace,Q as createAndCheckoutBranch,R as createAndCheckoutBranchAtPath,A as expectedRemoteUrl,t as isGeneratedWorkspacePath,i as isGitRepo,c as isMacOSGitDeveloperToolsMissing,u as isVisibleGitWorkspaceFile,r as isWorkspaceDirectory,E as lastFetchAt,z as listPlainWorkspaceFiles,J as loadGitCommitDiffAtPath,H as loadWorkspaceDiff,I as loadWorkspaceDiffAtPath,K as loadWorkspaceFile,N as loadWorkspaceFileAtPath,L as loadWorkspaceImageFile,M as loadWorkspaceImageFileAtPath,O as loadWorkspaceState,P as loadWorkspaceStateAtPath,n as localVideoContentType,F as mapWorkspaceDiffEntriesWithConcurrency,s as normalizeWorkspaceFilePath,w as parseBranchStatusLine,x as parseNumstat,v as parseStatusLine,h as pathExists,p as readLocalImageFile,q as readLocalVideoFile,l as readWorkspaceDocumentPreview,k as readWorkspaceFile,o as readWorkspaceImageFile,g as redactRemoteUrl,b as runWorkspaceCommand,f as sourceFromRemote,e as startMacOSCommandLineToolsInstall,j as truncatePatch,y as uniqueSortedPaths,m as workspaceImageContentType};
package/dist/cli.js CHANGED
@@ -1,5 +1,5 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
3
- import{a as d}from"./chunks/chunk-AZ7BL5FL.js";import{b as f}from"./chunks/chunk-7JBB4PXS.js";import{g as u}from"./chunks/chunk-UC3FXTDL.js";import{a as c}from"./chunks/chunk-XRKFTPHD.js";import{a as m,b as l}from"./chunks/chunk-BSHAIAXY.js";import"./chunks/chunk-XWPC3AN4.js";import{f as a}from"./chunks/chunk-3M53YXEI.js";import"./chunks/chunk-GLUWATL5.js";import{a as s}from"./chunks/chunk-FTQLQJQV.js";function C(e){return!e.command&&a(e.options.version)?"version":a(e.options.checkUpdate)?"check-update":!e.command&&a(e.options.help)?"help":!e.command&&a(e.options.tui)?"tui":e.command?"command":"ui"}s(C,"resolveCliTopLevelAction");async function w(e=process.argv.slice(2)){if(await P(e))return;let{command:i,options:o,rest:t}=f(e);typeof o.home=="string"&&(process.env.OPENPOND_HOME=(await import("./chunks/dist-HSC43RG4.js")).resolveOpenPondHome({home:o.home}));let r=C({command:i,options:o});if(r==="version"){console.log(c());return}if(r==="check-update"){await(await import("./chunks/core-commands-NJ6TGND4.js")).runCheckUpdate();return}if(r==="help"){(await import("./chunks/help-PXUUREHZ.js")).printHelp();return}let n=m(o),p=l(o);if(n&&(process.env.OPENPOND_ACCOUNT=n),p&&(process.env.OPENPOND_BASE_URL=p),r==="tui"){await(await import("./chunks/app-layer-N2H3RBEN.js")).runOpenPondTerminalCommand(o,t);return}if(r==="ui"){await(await import("./chunks/app-layer-N2H3RBEN.js")).runOpenPondServerCommand("web",o,t);return}await u({command:i,options:o,rest:t})||((await import("./chunks/help-PXUUREHZ.js")).printHelp(),process.exit(1))}s(w,"runOpenPondCli");async function P(e){if(e[0]==="__dataset-preparation-authoring")return await(await import("./chunks/dataset-preparation-authoring-IUXUQK3L.js")).runDatasetPreparationAuthoringCli(e.slice(1)),!0;if(e[0]==="__inspect-hosted-profile-evaluation")return await(await import("./chunks/hosted-profile-compiler-V6YR6EHO.js")).runHostedProfileInspectionCli(e.slice(1)),!0;if(e[0]==="__prepare-hosted-profile-evaluation")return await(await import("./chunks/hosted-profile-compiler-V6YR6EHO.js")).runHostedProfileEvaluationCli(e.slice(1)),!0;if(e[0]==="__hosted-experiment-improvement")return await(await import("./chunks/hosted-experiment-improvement-TIVXXRPG.js")).runHostedExperimentImprovementCli(e.slice(1)),!0;if(e[0]==="__compile-hosted-profile-candidate")return await(await import("./chunks/hosted-profile-candidate-DKEMVIYG.js")).runHostedProfileCandidateCli(e.slice(1)),!0;if(e[0]==="__compile-hosted-profile")return await(await import("./chunks/hosted-profile-compiler-V6YR6EHO.js")).runHostedProfileCompilerCli(e.slice(1)),!0;if(e[0]==="__app-server"){process.argv=[process.execPath,"openpond-app-server",...e.slice(1)];let[{createOpenPondAppServer:i},{runOpenPondAppServerCli:o}]=await Promise.all([import("./chunks/app-server-runtime-VEJPDAFP.js"),import("./chunks/cli-GCSO2OAI.js")]);return await o(i),!0}if(e[0]==="__server"){process.argv=[process.execPath,"openpond-server",...e.slice(1)];let[{createOpenPondServer:i},{runOpenPondServerCli:o}]=await Promise.all([import("./chunks/src-AU6LG7E6.js"),import("./chunks/cli-GCSO2OAI.js")]),{createOpenPondAppServer:t}=await import("./chunks/app-server-runtime-VEJPDAFP.js");return await o({createOpenPondServer:i,createOpenPondAppServer:t}),!0}return e[0]==="__terminal"?(await(await import("./chunks/src-2R4CMCJ5.js")).runOpenPondTerminalCli(e.slice(1)),!0):!1}s(P,"runEmbeddedCompanion");w().catch(async e=>{if(e instanceof d){process.exitCode=e.exitCode;return}let i=e instanceof Error?e.message:String(e),o=e.issue,t=(await import("./chunks/training-error-L5V5IBX3.js")).trainingCliError(e);if(process.argv.includes("--json")&&!(e instanceof Error&&e.name==="OpenPondChildProcessExitError"))console.log(JSON.stringify({error:o??t??{code:"CLI_ERROR",message:i}}));else if(o&&typeof o=="object"){let n=o;console.error(`${n.code}: ${n.message}
3
+ import{a as d}from"./chunks/chunk-AZ7BL5FL.js";import{b as f}from"./chunks/chunk-2HAWOMZK.js";import{g as u}from"./chunks/chunk-SFKZITAG.js";import{a as c}from"./chunks/chunk-XRKFTPHD.js";import{a as m,b as l}from"./chunks/chunk-BSHAIAXY.js";import"./chunks/chunk-XWPC3AN4.js";import{f as a}from"./chunks/chunk-3M53YXEI.js";import"./chunks/chunk-GLUWATL5.js";import{a as s}from"./chunks/chunk-FTQLQJQV.js";function C(e){return!e.command&&a(e.options.version)?"version":a(e.options.checkUpdate)?"check-update":!e.command&&a(e.options.help)?"help":!e.command&&a(e.options.tui)?"tui":e.command?"command":"ui"}s(C,"resolveCliTopLevelAction");async function w(e=process.argv.slice(2)){if(await P(e))return;let{command:i,options:o,rest:t}=f(e);typeof o.home=="string"&&(process.env.OPENPOND_HOME=(await import("./chunks/dist-HSC43RG4.js")).resolveOpenPondHome({home:o.home}));let r=C({command:i,options:o});if(r==="version"){console.log(c());return}if(r==="check-update"){await(await import("./chunks/core-commands-WWN7X3XC.js")).runCheckUpdate();return}if(r==="help"){(await import("./chunks/help-7HXFWIKS.js")).printHelp();return}let n=m(o),p=l(o);if(n&&(process.env.OPENPOND_ACCOUNT=n),p&&(process.env.OPENPOND_BASE_URL=p),r==="tui"){await(await import("./chunks/app-layer-K7H2WJ56.js")).runOpenPondTerminalCommand(o,t);return}if(r==="ui"){await(await import("./chunks/app-layer-K7H2WJ56.js")).runOpenPondServerCommand("web",o,t);return}await u({command:i,options:o,rest:t})||((await import("./chunks/help-7HXFWIKS.js")).printHelp(),process.exit(1))}s(w,"runOpenPondCli");async function P(e){if(e[0]==="__dataset-preparation-authoring")return await(await import("./chunks/dataset-preparation-authoring-F3OZIQSP.js")).runDatasetPreparationAuthoringCli(e.slice(1)),!0;if(e[0]==="__inspect-hosted-profile-evaluation")return await(await import("./chunks/hosted-profile-compiler-UAZ4PHYE.js")).runHostedProfileInspectionCli(e.slice(1)),!0;if(e[0]==="__prepare-hosted-profile-evaluation")return await(await import("./chunks/hosted-profile-compiler-UAZ4PHYE.js")).runHostedProfileEvaluationCli(e.slice(1)),!0;if(e[0]==="__hosted-experiment-improvement")return await(await import("./chunks/hosted-experiment-improvement-UXC542SZ.js")).runHostedExperimentImprovementCli(e.slice(1)),!0;if(e[0]==="__compile-hosted-profile-candidate")return await(await import("./chunks/hosted-profile-candidate-HM44BIUX.js")).runHostedProfileCandidateCli(e.slice(1)),!0;if(e[0]==="__compile-hosted-profile")return await(await import("./chunks/hosted-profile-compiler-UAZ4PHYE.js")).runHostedProfileCompilerCli(e.slice(1)),!0;if(e[0]==="__app-server"){process.argv=[process.execPath,"openpond-app-server",...e.slice(1)];let[{createOpenPondAppServer:i},{runOpenPondAppServerCli:o}]=await Promise.all([import("./chunks/app-server-runtime-LFIL6F7D.js"),import("./chunks/cli-PSXMIJTF.js")]);return await o(i),!0}if(e[0]==="__server"){process.argv=[process.execPath,"openpond-server",...e.slice(1)];let[{createOpenPondServer:i},{runOpenPondServerCli:o}]=await Promise.all([import("./chunks/src-BLWX6DRG.js"),import("./chunks/cli-PSXMIJTF.js")]),{createOpenPondAppServer:t}=await import("./chunks/app-server-runtime-LFIL6F7D.js");return await o({createOpenPondServer:i,createOpenPondAppServer:t}),!0}return e[0]==="__terminal"?(await(await import("./chunks/src-PU7QTFO5.js")).runOpenPondTerminalCli(e.slice(1)),!0):!1}s(P,"runEmbeddedCompanion");w().catch(async e=>{if(e instanceof d){process.exitCode=e.exitCode;return}let i=e instanceof Error?e.message:String(e),o=e.issue,t=(await import("./chunks/training-error-2EWDOQ4G.js")).trainingCliError(e);if(process.argv.includes("--json")&&!(e instanceof Error&&e.name==="OpenPondChildProcessExitError"))console.log(JSON.stringify({error:o??t??{code:"CLI_ERROR",message:i}}));else if(o&&typeof o=="object"){let n=o;console.error(`${n.code}: ${n.message}
4
4
  ${n.path}
5
5
  ${n.action}`)}else console.error(t?`${t.code}: ${i}`:i);let r=typeof e.exitCode=="number"?e.exitCode:1;process.exit(r)});export{w as runOpenPondCli};
package/dist/index.js CHANGED
@@ -1,2 +1,2 @@
1
1
  import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
2
- import{a as Qe}from"./chunks/chunk-Q34IF4PW.js";import{a as fe,b as $e,c as ge,d as ye,e as Ve,f as Re,g as Ae,h as Ye,i as Ce,j as Oe}from"./chunks/chunk-6XSSM4WT.js";import{a as ze,b as de,c as Je}from"./chunks/chunk-22UARBPW.js";import"./chunks/chunk-X37KMV27.js";import{A as zt,B as Jt,C as $t,D as Vt,E as Yt,F as Qt,G as Xt,H as Zt,I as en,J as tn,K as nn,L as on,b as Ot,c as St,d as Tt,e as Pt,f as wt,g as Et,h as xt,i as bt,j as Lt,k as Bt,l as Dt,m as It,n as vt,o as Ut,p as Mt,q as _t,r as Ht,s as Nt,t as qt,u as kt,v as Kt,w as Ft,x as Gt,y as jt,z as Wt}from"./chunks/chunk-T6JN4PND.js";import"./chunks/chunk-JEISPWWM.js";import{$ as Ct,A as z,B as J,C as $,D as V,E as Y,F as Q,G as X,H as Z,I as ee,J as te,K as ne,L as oe,M as se,N as re,O as ae,P as je,Q as le,U as We,V as pe,W as ie,X as ce,Y as ue,Z as me,_ as he,a as qe,b as ke,c as E,d as x,e as b,f as L,g as B,h as D,i as I,j as v,k as Ke,l as U,n as Fe,o as M,p as _,q as H,r as N,s as q,t as Ge,u as k,v as K,w as F,x as G,y as j,z as W}from"./chunks/chunk-MILEWROZ.js";import"./chunks/chunk-NOSBNHGC.js";import{a as Rt,b as At}from"./chunks/chunk-JX6OX6XE.js";import"./chunks/chunk-BT5YNE5U.js";import{a as be,b as Le,c as Be,d as De,e as Ie,f as ve,g as Ue,h as Me,i as _e}from"./chunks/chunk-UTNGEMW5.js";import"./chunks/chunk-QCSLEMZF.js";import"./chunks/chunk-B42QQUZY.js";import"./chunks/chunk-7KTARW23.js";import{a as P,b as w,c as He,d as Ne}from"./chunks/chunk-GLUWATL5.js";import"./chunks/chunk-OSVGNONV.js";import{a as yt}from"./chunks/chunk-XWDFXM3S.js";import"./chunks/chunk-YBNKGA5C.js";import"./chunks/chunk-LAOLJDVB.js";import"./chunks/chunk-UWHIU24L.js";import"./chunks/chunk-LV3CQ72P.js";import"./chunks/chunk-JCLTFDVW.js";import"./chunks/chunk-ABF3W2MO.js";import"./chunks/chunk-RV7PUSI2.js";import"./chunks/chunk-KCV5VN4X.js";import"./chunks/chunk-3A7HZJNE.js";import{a as sn,b as rn,c as an,d as ln,e as pn,f as cn,g as un,h as mn,i as hn,j as dn,k as fn,l as gn,m as yn,n as Rn,o as An,p as Cn,q as On,r as Sn,s as Tn,t as Pn,u as wn}from"./chunks/chunk-ERJV5BMC.js";import"./chunks/chunk-6FA3GG5B.js";import"./chunks/chunk-2EPR4HLF.js";import"./chunks/chunk-BKEDG3A4.js";import"./chunks/chunk-OE22TAXP.js";import"./chunks/chunk-UGOK7VTC.js";import"./chunks/chunk-4M3YW3EQ.js";import"./chunks/chunk-PBZCXPPC.js";import"./chunks/chunk-NJLULBTM.js";import"./chunks/chunk-VVNV4NNW.js";import"./chunks/chunk-PF56N7ZY.js";import{a as s}from"./chunks/chunk-FTQLQJQV.js";function Xe(t,e=14){if(t.length<e+1)return null;let r=0,o=0;for(let l=1;l<=e;l+=1){let m=t[l]-t[l-1];m>=0?r+=m:o-=m}let a=r/e,i=o/e;for(let l=e+1;l<t.length;l+=1){let m=t[l]-t[l-1],d=m>0?m:0,n=m<0?-m:0;a=(a*(e-1)+d)/e,i=(i*(e-1)+n)/e}return i===0?100:100-100/(1+a/i)}s(Xe,"computeRsi");function T(t,e){if(t.length<e)return[];let r=[],o=0;for(let a=0;a<t.length;a+=1)o+=t[a],a>=e&&(o-=t[a-e]),a>=e-1&&r.push(o/e);return r}s(T,"computeSmaSeries");function Ze(t,e){let r=T(t,e);return r.length>0?r[r.length-1]:null}s(Ze,"computeSma");function A(t,e){if(t.length<e)return[];let r=2/(e+1),a=t.slice(0,e).reduce((p,l)=>p+l,0)/e,i=[a];for(let p=e;p<t.length;p+=1)a=t[p]*r+a*(1-r),i.push(a);return i}s(A,"computeEmaSeries");function et(t,e){let r=A(t,e);return r.length>0?r[r.length-1]:null}s(et,"computeEma");function tt(t){let e=A(t,12),r=A(t,26);if(e.length===0||r.length===0)return null;let o=e.length-r.length,a=r.map((m,d)=>e[d+o]-m),i=A(a,9);if(i.length===0)return null;let p=a[a.length-1],l=i[i.length-1];return{macd:p,signalLine:l,histogram:p-l}}s(tt,"computeMacd");function nt(t,e,r,o){if(t.length<o)return null;let a=e==="ema"?A(t,r):T(t,r),i=e==="ema"?A(t,o):T(t,o);if(a.length===0||i.length===0)return null;let p=a.length-i.length;if(p<0)return null;let l=i.length-1,m=a[l+p],d=i[l],n=l-1,c=n>=0?a[n+p]:null,u=n>=0?i[n]:null,h="neutral";return c!=null&&u!=null?c<=u&&m>d?h="bullish-cross":c>=u&&m<d?h="bearish-cross":m>d?h="bullish":m<d&&(h="bearish"):m>d?h="bullish":m<d&&(h="bearish"),{fast:m,slow:d,signal:h}}s(nt,"computeMaCross");function ot(t,e=20,r=2){if(t.length<e)return null;let o=t.slice(-e),a=o.reduce((l,m)=>l+m,0)/e,i=o.reduce((l,m)=>l+Math.pow(m-a,2),0)/e,p=Math.sqrt(i);return{middle:a,upper:a+r*p,lower:a-r*p}}s(ot,"computeBollinger");function st(t,e=24){if(t.length<2)return null;let r=t[t.length-1],o=Math.max(0,t.length-1-e),a=t[o];if(a===0)return null;let i=(r-a)/a*100;return{previous:a,percent:i}}s(st,"computePriceChange");function rt(t,e=14){if(t.length<e+1)return null;let r=[];for(let i=1;i<t.length;i+=1){let p=t[i],l=t[i-1],m=p.high-p.low,d=Math.abs(p.high-l.close),n=Math.abs(p.low-l.close);r.push(Math.max(m,d,n))}return r.length<e?null:r.slice(-e).reduce((i,p)=>i+p,0)/e}s(rt,"computeAtr");function Te(t){return t.replace(/\/$/,"")}s(Te,"resolveUrl");function at(t){let e=process.env.OPENPOND_BASE_URL,r=t.baseUrl||e||P;return Te(r.trim())}s(at,"resolveBaseUrl");function lt(t){let e=process.env.OPENPOND_API_URL,r=t.apiUrl||e||w;return Te(r.trim())}s(lt,"resolveApiUrl");function pt(t,e){return fe({apiBaseUrl:e,opChatApiBaseUrl:t.opChatApiUrl,chatApiBaseUrl:t.chatApiUrl})}s(pt,"resolveChatApiUrl");function it(t,e){let r=process.env.OPENPOND_TOOL_URL,o=t.toolUrl||r||e;return Te(o.trim())}s(it,"resolveToolUrl");function ct(t){let e=t.apiKey?.trim();if(e)return e;let r=process.env.OPENPOND_API_KEY?.trim();if(r)return r;throw new Error("OPENPOND_API_KEY is required")}s(ct,"resolveApiKey");function ut(t){let e=t.split("/").filter(Boolean);if(e.length!==2)throw new Error("expected <handle>/<repo>");return{handle:e[0],repo:e[1]}}s(ut,"parseHandleRepo");function Pe(t){return(t||"").trim().toLowerCase()}s(Pe,"normalizeRepoName");function mt(t){if(!t||typeof t!="object")return{name:"unknown",raw:t};let e=t,r=e.profile||e.function,o=typeof e.name=="string"?e.name:typeof r?.name=="string"?r.name:"unknown",a=typeof e.description=="string"?e.description:typeof r?.description=="string"?r.description:void 0;return{name:o,description:a,raw:t}}s(mt,"normalizeToolSummary");function ht(t){if(!t)return[];if(Array.isArray(t.toolsJson))return t.toolsJson;if(t.metadataJson&&typeof t.metadataJson=="object"){let e=t.metadataJson.tools;if(Array.isArray(e))return e}return[]}s(ht,"extractDeploymentTools");async function O(t){let{handle:e,repo:r}=ut(t.target),o=await Se({apiBase:t.apiBase,apiKey:t.apiKey,useCache:t.useCache,cacheTtlMs:t.cacheTtlMs,forceRefresh:t.forceRefresh}),a=Pe(r),i=o.find(p=>p.handle&&p.handle!==e?!1:[p.repo,p.gitRepo,p.id].map(Pe).includes(a));if(!i)throw new Error(`app not found for ${e}/${r}`);return{app:i,handle:e,repo:r}}s(O,"resolveAppTarget");async function Se(t){if(t.useCache&&!t.forceRefresh){let r=await ce({apiBase:t.apiBase,apiKey:t.apiKey,ttlMs:t.cacheTtlMs});if(r)return r}let e=await v(t.apiBase,t.apiKey);return t.useCache&&await ue({apiBase:t.apiBase,apiKey:t.apiKey,apps:e}),e}s(Se,"fetchAppsWithCache");async function we(t){if(t.useCache&&!t.forceRefresh){let o=await me({apiBase:t.apiBase,apiKey:t.apiKey,ttlMs:t.cacheTtlMs});if(o)return o}let e=await k(t.apiBase,t.apiKey),r=Array.isArray(e.tools)?e.tools:[];return t.useCache&&await he({apiBase:t.apiBase,apiKey:t.apiKey,tools:r}),r}s(we,"fetchToolsWithCache");function dt(t){if(!t)return"POST";let e=t.toUpperCase();switch(e){case"GET":case"POST":case"PUT":case"DELETE":return e;default:throw new Error("method must be GET, POST, PUT, or DELETE")}}s(dt,"normalizeMethod");async function ft(t,e){let r,o,a;return await de(t,{...e,onConversationId:s(i=>{r=i,e?.onConversationId?.(i)},"onConversationId"),onItems:s(i=>{for(let p of i){let l=p;!o&&typeof l.appId=="string"&&(o=l.appId,e?.onAppId?.(l.appId)),!a&&typeof l.deploymentId=="string"&&(a=l.deploymentId,e?.onDeploymentId?.(l.deploymentId))}e?.onItems?.(i)},"onItems")}),{conversationId:r,appId:o,deploymentId:a}}s(ft,"consumeAgentCreateStream");function vn(t){let e=ct(t),r=at(t),o=lt(t),a=pt(t,o),i=it(t,r),p=t.cacheTtlMs??ie,l=t.useCache!==!1,m=s(async()=>{l&&await Promise.all([Se({apiBase:o,apiKey:e,useCache:l,cacheTtlMs:p,forceRefresh:!0}),we({apiBase:o,apiKey:e,useCache:l,cacheTtlMs:p,forceRefresh:!0})])},"refreshCache"),d=s(async(n,c)=>(await D(o,e,n,{branch:c}))?.id??null,"resolveLatestDeploymentId");return{baseUrl:r,apiUrl:o,chatApiUrl:a,toolUrl:i,apiKey:e,account:{get:s(async()=>se(o,e),"get"),health:s(async()=>re(o,e),"health")},chat:{providers:s(async()=>Re({apiBaseUrl:a,token:e}),"providers"),provider:s(async n=>Ae({apiBaseUrl:a,token:e,provider:n}),"provider"),models:s(async()=>ge({apiBaseUrl:a,token:e}),"models"),model:s(async n=>ye({apiBaseUrl:a,token:e,model:n}),"model"),send:s(async n=>Ce({...n,apiBaseUrl:a,token:e}),"send"),stream:s(n=>Oe({...n,apiBaseUrl:a,token:e}),"stream")},tool:{list:s(async(n,c)=>{let{app:u}=await O({apiBase:o,apiKey:e,target:n,useCache:l,cacheTtlMs:p,forceRefresh:c?.forceRefresh}),h=c?.deploymentId||await d(u.id,c?.branch);if(!h)return{app:u,deploymentId:null,tools:[]};let g=await I(o,e,h),y=ht(g).map(mt);return{app:u,deploymentId:h,tools:y}},"list"),run:s(async(n,c,u)=>{let{app:h}=await O({apiBase:o,apiKey:e,target:n,useCache:l,cacheTtlMs:p,forceRefresh:u?.forceRefresh}),g=u?.deploymentId||await d(h.id,u?.branch);if(!g)throw new Error("no deployments found");let f=dt(u?.method);return pe(i,e,{appId:h.id,deploymentId:g,toolName:c,method:f,body:u?.body,headers:u?.headers})},"run")},deploy:{watch:s(async(n,c)=>{let{app:u}=await O({apiBase:o,apiKey:e,target:n,useCache:l,cacheTtlMs:p,forceRefresh:c?.forceRefresh}),h=c?.deploymentId||await d(u.id,c?.branch);if(!h)throw new Error("no deployments found");let g=c?.intervalMs??5e3,f=c?.timeoutMs??240*1e3,y=[],S=new Set,Ee=Date.now(),R=null;for(;Date.now()-Ee<f;){let xe=await L(o,e,h);for(let C of xe)S.has(C.id)||(S.add(C.id),y.push(C),c?.onLog?.(C));if(R=(await B(o,e,h)).status??null,c?.onStatus?.(R),R==="failed")return{deploymentId:h,status:R,logs:y};if(R==="running"||R==="deployed")return{deploymentId:h,status:R,logs:y};await new Promise(C=>setTimeout(C,g))}return{deploymentId:h,status:"timeout",logs:y}},"watch")},template:{status:s(async(n,c)=>{let{app:u}=await O({apiBase:o,apiKey:e,target:n,useCache:l,cacheTtlMs:p,forceRefresh:c?.forceRefresh});return M(o,e,u.id)},"status"),branches:s(async(n,c)=>{let{app:u}=await O({apiBase:o,apiKey:e,target:n,useCache:l,cacheTtlMs:p,forceRefresh:c?.forceRefresh});return _(o,e,u.id)},"branches"),update:s(async(n,c)=>{let{app:u}=await O({apiBase:o,apiKey:e,target:n,useCache:l,cacheTtlMs:p,forceRefresh:c?.forceRefresh}),h=c?.environment==="preview"?"preview":"production";return H(o,e,u.id,{environment:h})},"update")},opentool:{recipesList:s(async(n={})=>F(o,e,n),"recipesList"),recipesSearch:s(async n=>G(o,e,n),"recipesSearch"),recipeGet:s(async n=>j(o,e,n),"recipeGet"),rulesGet:s(async n=>W(o,e,n),"rulesGet")},apps:{list:s(async n=>{let c=await Se({apiBase:o,apiKey:e,useCache:l,cacheTtlMs:p,forceRefresh:n?.forceRefresh});return n?.handle?c.filter(u=>u.handle===n.handle):c},"list"),tools:s(async n=>we({apiBase:o,apiKey:e,useCache:l,cacheTtlMs:p,forceRefresh:n?.forceRefresh}),"tools"),performance:s(async n=>ne(o,e,{appId:n?.appId}),"performance"),summary:s(async n=>oe(o,e,n.appId),"summary"),schedules:s(async n=>K(o,e,n.appId),"schedules"),schedulesStart:s(async n=>{let{appId:c,...u}=n;return z(o,e,c,u)},"schedulesStart"),schedulesStop:s(async n=>J(o,e,n.appId),"schedulesStop"),schedulesStopCurrent:s(async()=>$(o,e),"schedulesStopCurrent"),scheduleRunNow:s(async n=>V(o,e,n),"scheduleRunNow"),scheduleDelete:s(async n=>Y(o,e,n.appId,n.scheduleId),"scheduleDelete"),scheduleExecutionLogs:s(async n=>Q(o,e,n.scheduleId,{limit:n.limit}),"scheduleExecutionLogs"),scheduleExecutionLog:s(async n=>Z(o,e,n.runId),"scheduleExecutionLog"),deploymentScheduleExecutionLogs:s(async n=>X(o,e,n.deploymentId,{limit:n.limit}),"deploymentScheduleExecutionLogs"),executionTimeline:s(async n=>ee(o,e,n.appId,{limit:n.limit}),"executionTimeline"),assistantRun:s(async n=>ae(o,e,n),"assistantRun"),agentCreate:s(async(n,c)=>{let{refreshCache:u,...h}=n,g={...h,streamDeployLogs:h.streamDeployLogs??!0},f=await te(o,e,g);if(!f.ok){let S=await f.text().catch(()=>"");throw new Error(`agent create failed: ${f.status} ${S}`)}let y=await ft(f,c);if(l&&u!==!1)try{await m()}catch{}return y},"agentCreate"),toolsExecute:s(async n=>le(o,e,n),"toolsExecute"),deploy:s(async n=>E(o,e,n.appId,{environment:n.environment,commitSha:n.commitSha,branch:n.branch}),"deploy"),startApp:s(async n=>{let{appId:c,...u}=n;return b(o,e,c,u)},"startApp"),promotePreview:s(async n=>{let{appId:c,...u}=n;return x(o,e,c,u)},"promotePreview"),envGet:s(async n=>q(o,e,n.appId),"envGet"),envSet:s(async n=>N(o,e,n.appId,{envVars:n.envVars}),"envSet")},repo:{create:s(async n=>{let{refreshCache:c,...u}=n,h=await U(o,e,u);if(l&&c!==!1)try{await m()}catch{}return h},"create")},cache:{refresh:m}}}s(vn,"createClient");export{ie as DEFAULT_CACHE_TTL_MS,It as DEFAULT_LOCAL_PROFILE,w as DEFAULT_OPENPOND_API_BASE_URL,Ne as DEFAULT_OPENPOND_CHAT_API_BASE_URL,He as DEFAULT_OPENPOND_OPCHAT_API_BASE_URL,P as DEFAULT_OPENPOND_WEB_BASE_URL,vt as DEFAULT_PROFILE_AGENT,an as OPENPOND_MANIFEST_FILE_NAME,Ot as OpenPondProfileSetupRequiredError,Rt as OpenPondSandboxClient,Dt as PROFILE_MANIFEST,Bt as PROFILE_REPO_MANIFEST,Ct as SANDBOX_RUNTIME_PROFILE_IDS,ln as SANDBOX_TEMPLATE_BUILD_PLAN_FILE_NAME,pn as SANDBOX_TEMPLATE_BUILD_PLAN_KIND,rn as SANDBOX_TEMPLATE_PREVIEW_PORT_MAX,sn as SANDBOX_TEMPLATE_PREVIEW_PORT_MIN,cn as SandboxTemplateManifestSchema,un as SandboxTemplateValidationDiagnosticSchema,qe as apiFetch,Tt as assertOpenPondProfileActionReady,St as buildOpenPondProfileSetupGate,re as checkOpenPondApiHealth,wt as collectProfileSourceUploadEntries,tn as commitActiveProfileChanges,ke as commitFiles,rt as computeAtr,ot as computeBollinger,et as computeEma,A as computeEmaSeries,nt as computeMaCross,tt as computeMacd,st as computePriceChange,Xe as computeRsi,Ze as computeSma,T as computeSmaSeries,ft as consumeAgentCreateStream,de as consumeStream,te as createAgentFromPrompt,vn as createClient,Fe as createHeadlessApps,Ke as createLocalProject,At as createOpenPondSandboxClient,U as createRepo,_t as defaultLocalProfileRepoPath,gn as defineSandboxTemplate,Y as deleteOrArchiveSchedule,E as deployApp,H as deployLatestTemplate,Ht as emptyProfileState,pe as executeHostedTool,le as executeUserTool,Ge as fetchToolManifest,Pt as formatOpenPondProfileSetupRequirement,fn as formatSandboxTemplateDiagnostics,Je as formatStreamItem,q as getAppEnvironment,ee as getAppExecutionTimeline,oe as getAppRuntimeSummary,ce as getCachedApps,me as getCachedTools,be as getConfigPath,I as getDeploymentDetail,L as getDeploymentLogs,B as getDeploymentStatus,D as getLatestDeploymentForApp,ye as getOpChatModel,Ae as getOpChatProvider,se as getOpenPondAccount,j as getOpenToolRecipe,W as getOpenToolRules,Z as getScheduleExecutionLog,M as getTemplateStatus,ne as getUserPerformance,xt as hostedPublishStatusFromPayload,Lt as hostedRunStatusFromRunSummary,bt as hostedRunSummaryFromPayload,Et as hostedSourceCheckStatusFromPayload,Nt as initLocalProfileRepo,Vt as inspectOpenPondProfileSource,Ft as installAgentPackageIntoActiveProfile,K as listAppSchedules,v as listApps,Ie as listConfiguredProfiles,X as listDeploymentScheduleExecutionLogs,Ve as listHostedModels,Ye as listHostedProviders,ge as listOpChatModels,Re as listOpChatProviders,F as listOpenToolRecipes,Q as listScheduleExecutionLogs,_ as listTemplateBranches,k as listUserTools,De as loadConfig,Be as loadGlobalConfig,qt as loadLocalProfileRepo,Wt as loadOpenPondProfileLibrary,Gt as loadOpenPondProfileState,zt as loadOpenPondProfileStateForRef,Yt as loadOpenPondProfileStateFromSource,Mt as mergeActiveLocalProfileConfig,Ut as mergeProfileRepoManifestEntry,ze as normalizeDataFrames,yt as normalizeSandboxApiUrl,jt as openPondProfileRef,dn as parseSandboxTemplateYaml,je as postAgentDigest,on as prepareAgentSdkRuntimePackage,x as promotePreviewToProduction,kt as registerLocalProfileRepo,$t as removeOpenPondProfile,Kt as renameActiveProfileAgent,Qt as requireActiveLocalProfile,$e as resolveHostedChatApiBaseUrl,fe as resolveOpChatApiBaseUrl,We as resolveWorkerBaseUrl,Zt as runAgentSdkProjectCommand,ae as runAssistantMode,Qe as runOpChatSmoke,en as runProfileCheck,Xt as runProfileSdkCommand,V as runScheduleNow,Sn as sandboxTemplateBuildMetadata,Tn as sandboxTemplateBuildPlan,Rn as sandboxTemplateDurableVolume,On as sandboxTemplateExecutableEntries,Cn as sandboxTemplateFileInput,wn as sandboxTemplateJsonSchema,An as sandboxTemplatePreviewPort,yn as sandboxTemplateResources,Pn as sandboxTemplateScaffoldFiles,Me as saveConfig,_e as saveGlobalConfig,Ue as saveProfileApiKey,nn as saveProfilePushStatus,G as searchOpenToolRecipes,Jt as selectOpenPondProfile,Ce as sendHostedChatTurn,ve as setActiveProfile,ue as setCachedApps,he as setCachedTools,b as startAppLifecycle,z as startAppSchedules,J as stopAppSchedules,$ as stopCurrentAppSchedules,Oe as streamHostedChatTurn,N as updateAppEnvironment,Le as updateGlobalConfig,hn as validateSandboxTemplateManifest,mn as validateSandboxTemplateYaml};
2
+ import{a as Qe}from"./chunks/chunk-Q34IF4PW.js";import{a as fe,b as $e,c as ge,d as ye,e as Ve,f as Re,g as Ae,h as Ye,i as Ce,j as Oe}from"./chunks/chunk-6XSSM4WT.js";import{a as ze,b as de,c as Je}from"./chunks/chunk-22UARBPW.js";import"./chunks/chunk-X37KMV27.js";import{A as zt,B as Jt,C as $t,D as Vt,E as Yt,F as Qt,G as Xt,H as Zt,I as en,J as tn,K as nn,L as on,b as Ot,c as St,d as Tt,e as Pt,f as wt,g as Et,h as xt,i as bt,j as Lt,k as Bt,l as Dt,m as It,n as vt,o as Ut,p as Mt,q as _t,r as Ht,s as Nt,t as qt,u as kt,v as Kt,w as Ft,x as Gt,y as jt,z as Wt}from"./chunks/chunk-T6JN4PND.js";import"./chunks/chunk-JEISPWWM.js";import{$ as Ct,A as z,B as J,C as $,D as V,E as Y,F as Q,G as X,H as Z,I as ee,J as te,K as ne,L as oe,M as se,N as re,O as ae,P as je,Q as le,U as We,V as pe,W as ie,X as ce,Y as ue,Z as me,_ as he,a as qe,b as ke,c as E,d as x,e as b,f as L,g as B,h as D,i as I,j as v,k as Ke,l as U,n as Fe,o as M,p as _,q as H,r as N,s as q,t as Ge,u as k,v as K,w as F,x as G,y as j,z as W}from"./chunks/chunk-MILEWROZ.js";import"./chunks/chunk-OTUBJV6C.js";import{a as Rt,b as At}from"./chunks/chunk-27JGS3KB.js";import"./chunks/chunk-BT5YNE5U.js";import{a as be,b as Le,c as Be,d as De,e as Ie,f as ve,g as Ue,h as Me,i as _e}from"./chunks/chunk-UTNGEMW5.js";import"./chunks/chunk-U2K7QJCG.js";import"./chunks/chunk-WSOUMXH3.js";import"./chunks/chunk-N42HT64M.js";import"./chunks/chunk-NG2L6D7G.js";import{a as P,b as w,c as He,d as Ne}from"./chunks/chunk-GLUWATL5.js";import"./chunks/chunk-OSVGNONV.js";import{a as yt}from"./chunks/chunk-2LJCJOJ7.js";import"./chunks/chunk-YBNKGA5C.js";import"./chunks/chunk-LAOLJDVB.js";import"./chunks/chunk-UWHIU24L.js";import"./chunks/chunk-JCLTFDVW.js";import"./chunks/chunk-LV3CQ72P.js";import"./chunks/chunk-ABF3W2MO.js";import"./chunks/chunk-RV7PUSI2.js";import"./chunks/chunk-KCV5VN4X.js";import"./chunks/chunk-3A7HZJNE.js";import{a as sn,b as rn,c as an,d as ln,e as pn,f as cn,g as un,h as mn,i as hn,j as dn,k as fn,l as gn,m as yn,n as Rn,o as An,p as Cn,q as On,r as Sn,s as Tn,t as Pn,u as wn}from"./chunks/chunk-ERJV5BMC.js";import"./chunks/chunk-6FA3GG5B.js";import"./chunks/chunk-2EPR4HLF.js";import"./chunks/chunk-BKEDG3A4.js";import"./chunks/chunk-OE22TAXP.js";import"./chunks/chunk-UGOK7VTC.js";import"./chunks/chunk-J572ANHX.js";import"./chunks/chunk-PBZCXPPC.js";import"./chunks/chunk-NJLULBTM.js";import"./chunks/chunk-VVNV4NNW.js";import"./chunks/chunk-PF56N7ZY.js";import{a as s}from"./chunks/chunk-FTQLQJQV.js";function Xe(t,e=14){if(t.length<e+1)return null;let r=0,o=0;for(let l=1;l<=e;l+=1){let m=t[l]-t[l-1];m>=0?r+=m:o-=m}let a=r/e,i=o/e;for(let l=e+1;l<t.length;l+=1){let m=t[l]-t[l-1],d=m>0?m:0,n=m<0?-m:0;a=(a*(e-1)+d)/e,i=(i*(e-1)+n)/e}return i===0?100:100-100/(1+a/i)}s(Xe,"computeRsi");function T(t,e){if(t.length<e)return[];let r=[],o=0;for(let a=0;a<t.length;a+=1)o+=t[a],a>=e&&(o-=t[a-e]),a>=e-1&&r.push(o/e);return r}s(T,"computeSmaSeries");function Ze(t,e){let r=T(t,e);return r.length>0?r[r.length-1]:null}s(Ze,"computeSma");function A(t,e){if(t.length<e)return[];let r=2/(e+1),a=t.slice(0,e).reduce((p,l)=>p+l,0)/e,i=[a];for(let p=e;p<t.length;p+=1)a=t[p]*r+a*(1-r),i.push(a);return i}s(A,"computeEmaSeries");function et(t,e){let r=A(t,e);return r.length>0?r[r.length-1]:null}s(et,"computeEma");function tt(t){let e=A(t,12),r=A(t,26);if(e.length===0||r.length===0)return null;let o=e.length-r.length,a=r.map((m,d)=>e[d+o]-m),i=A(a,9);if(i.length===0)return null;let p=a[a.length-1],l=i[i.length-1];return{macd:p,signalLine:l,histogram:p-l}}s(tt,"computeMacd");function nt(t,e,r,o){if(t.length<o)return null;let a=e==="ema"?A(t,r):T(t,r),i=e==="ema"?A(t,o):T(t,o);if(a.length===0||i.length===0)return null;let p=a.length-i.length;if(p<0)return null;let l=i.length-1,m=a[l+p],d=i[l],n=l-1,c=n>=0?a[n+p]:null,u=n>=0?i[n]:null,h="neutral";return c!=null&&u!=null?c<=u&&m>d?h="bullish-cross":c>=u&&m<d?h="bearish-cross":m>d?h="bullish":m<d&&(h="bearish"):m>d?h="bullish":m<d&&(h="bearish"),{fast:m,slow:d,signal:h}}s(nt,"computeMaCross");function ot(t,e=20,r=2){if(t.length<e)return null;let o=t.slice(-e),a=o.reduce((l,m)=>l+m,0)/e,i=o.reduce((l,m)=>l+Math.pow(m-a,2),0)/e,p=Math.sqrt(i);return{middle:a,upper:a+r*p,lower:a-r*p}}s(ot,"computeBollinger");function st(t,e=24){if(t.length<2)return null;let r=t[t.length-1],o=Math.max(0,t.length-1-e),a=t[o];if(a===0)return null;let i=(r-a)/a*100;return{previous:a,percent:i}}s(st,"computePriceChange");function rt(t,e=14){if(t.length<e+1)return null;let r=[];for(let i=1;i<t.length;i+=1){let p=t[i],l=t[i-1],m=p.high-p.low,d=Math.abs(p.high-l.close),n=Math.abs(p.low-l.close);r.push(Math.max(m,d,n))}return r.length<e?null:r.slice(-e).reduce((i,p)=>i+p,0)/e}s(rt,"computeAtr");function Te(t){return t.replace(/\/$/,"")}s(Te,"resolveUrl");function at(t){let e=process.env.OPENPOND_BASE_URL,r=t.baseUrl||e||P;return Te(r.trim())}s(at,"resolveBaseUrl");function lt(t){let e=process.env.OPENPOND_API_URL,r=t.apiUrl||e||w;return Te(r.trim())}s(lt,"resolveApiUrl");function pt(t,e){return fe({apiBaseUrl:e,opChatApiBaseUrl:t.opChatApiUrl,chatApiBaseUrl:t.chatApiUrl})}s(pt,"resolveChatApiUrl");function it(t,e){let r=process.env.OPENPOND_TOOL_URL,o=t.toolUrl||r||e;return Te(o.trim())}s(it,"resolveToolUrl");function ct(t){let e=t.apiKey?.trim();if(e)return e;let r=process.env.OPENPOND_API_KEY?.trim();if(r)return r;throw new Error("OPENPOND_API_KEY is required")}s(ct,"resolveApiKey");function ut(t){let e=t.split("/").filter(Boolean);if(e.length!==2)throw new Error("expected <handle>/<repo>");return{handle:e[0],repo:e[1]}}s(ut,"parseHandleRepo");function Pe(t){return(t||"").trim().toLowerCase()}s(Pe,"normalizeRepoName");function mt(t){if(!t||typeof t!="object")return{name:"unknown",raw:t};let e=t,r=e.profile||e.function,o=typeof e.name=="string"?e.name:typeof r?.name=="string"?r.name:"unknown",a=typeof e.description=="string"?e.description:typeof r?.description=="string"?r.description:void 0;return{name:o,description:a,raw:t}}s(mt,"normalizeToolSummary");function ht(t){if(!t)return[];if(Array.isArray(t.toolsJson))return t.toolsJson;if(t.metadataJson&&typeof t.metadataJson=="object"){let e=t.metadataJson.tools;if(Array.isArray(e))return e}return[]}s(ht,"extractDeploymentTools");async function O(t){let{handle:e,repo:r}=ut(t.target),o=await Se({apiBase:t.apiBase,apiKey:t.apiKey,useCache:t.useCache,cacheTtlMs:t.cacheTtlMs,forceRefresh:t.forceRefresh}),a=Pe(r),i=o.find(p=>p.handle&&p.handle!==e?!1:[p.repo,p.gitRepo,p.id].map(Pe).includes(a));if(!i)throw new Error(`app not found for ${e}/${r}`);return{app:i,handle:e,repo:r}}s(O,"resolveAppTarget");async function Se(t){if(t.useCache&&!t.forceRefresh){let r=await ce({apiBase:t.apiBase,apiKey:t.apiKey,ttlMs:t.cacheTtlMs});if(r)return r}let e=await v(t.apiBase,t.apiKey);return t.useCache&&await ue({apiBase:t.apiBase,apiKey:t.apiKey,apps:e}),e}s(Se,"fetchAppsWithCache");async function we(t){if(t.useCache&&!t.forceRefresh){let o=await me({apiBase:t.apiBase,apiKey:t.apiKey,ttlMs:t.cacheTtlMs});if(o)return o}let e=await k(t.apiBase,t.apiKey),r=Array.isArray(e.tools)?e.tools:[];return t.useCache&&await he({apiBase:t.apiBase,apiKey:t.apiKey,tools:r}),r}s(we,"fetchToolsWithCache");function dt(t){if(!t)return"POST";let e=t.toUpperCase();switch(e){case"GET":case"POST":case"PUT":case"DELETE":return e;default:throw new Error("method must be GET, POST, PUT, or DELETE")}}s(dt,"normalizeMethod");async function ft(t,e){let r,o,a;return await de(t,{...e,onConversationId:s(i=>{r=i,e?.onConversationId?.(i)},"onConversationId"),onItems:s(i=>{for(let p of i){let l=p;!o&&typeof l.appId=="string"&&(o=l.appId,e?.onAppId?.(l.appId)),!a&&typeof l.deploymentId=="string"&&(a=l.deploymentId,e?.onDeploymentId?.(l.deploymentId))}e?.onItems?.(i)},"onItems")}),{conversationId:r,appId:o,deploymentId:a}}s(ft,"consumeAgentCreateStream");function vn(t){let e=ct(t),r=at(t),o=lt(t),a=pt(t,o),i=it(t,r),p=t.cacheTtlMs??ie,l=t.useCache!==!1,m=s(async()=>{l&&await Promise.all([Se({apiBase:o,apiKey:e,useCache:l,cacheTtlMs:p,forceRefresh:!0}),we({apiBase:o,apiKey:e,useCache:l,cacheTtlMs:p,forceRefresh:!0})])},"refreshCache"),d=s(async(n,c)=>(await D(o,e,n,{branch:c}))?.id??null,"resolveLatestDeploymentId");return{baseUrl:r,apiUrl:o,chatApiUrl:a,toolUrl:i,apiKey:e,account:{get:s(async()=>se(o,e),"get"),health:s(async()=>re(o,e),"health")},chat:{providers:s(async()=>Re({apiBaseUrl:a,token:e}),"providers"),provider:s(async n=>Ae({apiBaseUrl:a,token:e,provider:n}),"provider"),models:s(async()=>ge({apiBaseUrl:a,token:e}),"models"),model:s(async n=>ye({apiBaseUrl:a,token:e,model:n}),"model"),send:s(async n=>Ce({...n,apiBaseUrl:a,token:e}),"send"),stream:s(n=>Oe({...n,apiBaseUrl:a,token:e}),"stream")},tool:{list:s(async(n,c)=>{let{app:u}=await O({apiBase:o,apiKey:e,target:n,useCache:l,cacheTtlMs:p,forceRefresh:c?.forceRefresh}),h=c?.deploymentId||await d(u.id,c?.branch);if(!h)return{app:u,deploymentId:null,tools:[]};let g=await I(o,e,h),y=ht(g).map(mt);return{app:u,deploymentId:h,tools:y}},"list"),run:s(async(n,c,u)=>{let{app:h}=await O({apiBase:o,apiKey:e,target:n,useCache:l,cacheTtlMs:p,forceRefresh:u?.forceRefresh}),g=u?.deploymentId||await d(h.id,u?.branch);if(!g)throw new Error("no deployments found");let f=dt(u?.method);return pe(i,e,{appId:h.id,deploymentId:g,toolName:c,method:f,body:u?.body,headers:u?.headers})},"run")},deploy:{watch:s(async(n,c)=>{let{app:u}=await O({apiBase:o,apiKey:e,target:n,useCache:l,cacheTtlMs:p,forceRefresh:c?.forceRefresh}),h=c?.deploymentId||await d(u.id,c?.branch);if(!h)throw new Error("no deployments found");let g=c?.intervalMs??5e3,f=c?.timeoutMs??240*1e3,y=[],S=new Set,Ee=Date.now(),R=null;for(;Date.now()-Ee<f;){let xe=await L(o,e,h);for(let C of xe)S.has(C.id)||(S.add(C.id),y.push(C),c?.onLog?.(C));if(R=(await B(o,e,h)).status??null,c?.onStatus?.(R),R==="failed")return{deploymentId:h,status:R,logs:y};if(R==="running"||R==="deployed")return{deploymentId:h,status:R,logs:y};await new Promise(C=>setTimeout(C,g))}return{deploymentId:h,status:"timeout",logs:y}},"watch")},template:{status:s(async(n,c)=>{let{app:u}=await O({apiBase:o,apiKey:e,target:n,useCache:l,cacheTtlMs:p,forceRefresh:c?.forceRefresh});return M(o,e,u.id)},"status"),branches:s(async(n,c)=>{let{app:u}=await O({apiBase:o,apiKey:e,target:n,useCache:l,cacheTtlMs:p,forceRefresh:c?.forceRefresh});return _(o,e,u.id)},"branches"),update:s(async(n,c)=>{let{app:u}=await O({apiBase:o,apiKey:e,target:n,useCache:l,cacheTtlMs:p,forceRefresh:c?.forceRefresh}),h=c?.environment==="preview"?"preview":"production";return H(o,e,u.id,{environment:h})},"update")},opentool:{recipesList:s(async(n={})=>F(o,e,n),"recipesList"),recipesSearch:s(async n=>G(o,e,n),"recipesSearch"),recipeGet:s(async n=>j(o,e,n),"recipeGet"),rulesGet:s(async n=>W(o,e,n),"rulesGet")},apps:{list:s(async n=>{let c=await Se({apiBase:o,apiKey:e,useCache:l,cacheTtlMs:p,forceRefresh:n?.forceRefresh});return n?.handle?c.filter(u=>u.handle===n.handle):c},"list"),tools:s(async n=>we({apiBase:o,apiKey:e,useCache:l,cacheTtlMs:p,forceRefresh:n?.forceRefresh}),"tools"),performance:s(async n=>ne(o,e,{appId:n?.appId}),"performance"),summary:s(async n=>oe(o,e,n.appId),"summary"),schedules:s(async n=>K(o,e,n.appId),"schedules"),schedulesStart:s(async n=>{let{appId:c,...u}=n;return z(o,e,c,u)},"schedulesStart"),schedulesStop:s(async n=>J(o,e,n.appId),"schedulesStop"),schedulesStopCurrent:s(async()=>$(o,e),"schedulesStopCurrent"),scheduleRunNow:s(async n=>V(o,e,n),"scheduleRunNow"),scheduleDelete:s(async n=>Y(o,e,n.appId,n.scheduleId),"scheduleDelete"),scheduleExecutionLogs:s(async n=>Q(o,e,n.scheduleId,{limit:n.limit}),"scheduleExecutionLogs"),scheduleExecutionLog:s(async n=>Z(o,e,n.runId),"scheduleExecutionLog"),deploymentScheduleExecutionLogs:s(async n=>X(o,e,n.deploymentId,{limit:n.limit}),"deploymentScheduleExecutionLogs"),executionTimeline:s(async n=>ee(o,e,n.appId,{limit:n.limit}),"executionTimeline"),assistantRun:s(async n=>ae(o,e,n),"assistantRun"),agentCreate:s(async(n,c)=>{let{refreshCache:u,...h}=n,g={...h,streamDeployLogs:h.streamDeployLogs??!0},f=await te(o,e,g);if(!f.ok){let S=await f.text().catch(()=>"");throw new Error(`agent create failed: ${f.status} ${S}`)}let y=await ft(f,c);if(l&&u!==!1)try{await m()}catch{}return y},"agentCreate"),toolsExecute:s(async n=>le(o,e,n),"toolsExecute"),deploy:s(async n=>E(o,e,n.appId,{environment:n.environment,commitSha:n.commitSha,branch:n.branch}),"deploy"),startApp:s(async n=>{let{appId:c,...u}=n;return b(o,e,c,u)},"startApp"),promotePreview:s(async n=>{let{appId:c,...u}=n;return x(o,e,c,u)},"promotePreview"),envGet:s(async n=>q(o,e,n.appId),"envGet"),envSet:s(async n=>N(o,e,n.appId,{envVars:n.envVars}),"envSet")},repo:{create:s(async n=>{let{refreshCache:c,...u}=n,h=await U(o,e,u);if(l&&c!==!1)try{await m()}catch{}return h},"create")},cache:{refresh:m}}}s(vn,"createClient");export{ie as DEFAULT_CACHE_TTL_MS,It as DEFAULT_LOCAL_PROFILE,w as DEFAULT_OPENPOND_API_BASE_URL,Ne as DEFAULT_OPENPOND_CHAT_API_BASE_URL,He as DEFAULT_OPENPOND_OPCHAT_API_BASE_URL,P as DEFAULT_OPENPOND_WEB_BASE_URL,vt as DEFAULT_PROFILE_AGENT,an as OPENPOND_MANIFEST_FILE_NAME,Ot as OpenPondProfileSetupRequiredError,Rt as OpenPondSandboxClient,Dt as PROFILE_MANIFEST,Bt as PROFILE_REPO_MANIFEST,Ct as SANDBOX_RUNTIME_PROFILE_IDS,ln as SANDBOX_TEMPLATE_BUILD_PLAN_FILE_NAME,pn as SANDBOX_TEMPLATE_BUILD_PLAN_KIND,rn as SANDBOX_TEMPLATE_PREVIEW_PORT_MAX,sn as SANDBOX_TEMPLATE_PREVIEW_PORT_MIN,cn as SandboxTemplateManifestSchema,un as SandboxTemplateValidationDiagnosticSchema,qe as apiFetch,Tt as assertOpenPondProfileActionReady,St as buildOpenPondProfileSetupGate,re as checkOpenPondApiHealth,wt as collectProfileSourceUploadEntries,tn as commitActiveProfileChanges,ke as commitFiles,rt as computeAtr,ot as computeBollinger,et as computeEma,A as computeEmaSeries,nt as computeMaCross,tt as computeMacd,st as computePriceChange,Xe as computeRsi,Ze as computeSma,T as computeSmaSeries,ft as consumeAgentCreateStream,de as consumeStream,te as createAgentFromPrompt,vn as createClient,Fe as createHeadlessApps,Ke as createLocalProject,At as createOpenPondSandboxClient,U as createRepo,_t as defaultLocalProfileRepoPath,gn as defineSandboxTemplate,Y as deleteOrArchiveSchedule,E as deployApp,H as deployLatestTemplate,Ht as emptyProfileState,pe as executeHostedTool,le as executeUserTool,Ge as fetchToolManifest,Pt as formatOpenPondProfileSetupRequirement,fn as formatSandboxTemplateDiagnostics,Je as formatStreamItem,q as getAppEnvironment,ee as getAppExecutionTimeline,oe as getAppRuntimeSummary,ce as getCachedApps,me as getCachedTools,be as getConfigPath,I as getDeploymentDetail,L as getDeploymentLogs,B as getDeploymentStatus,D as getLatestDeploymentForApp,ye as getOpChatModel,Ae as getOpChatProvider,se as getOpenPondAccount,j as getOpenToolRecipe,W as getOpenToolRules,Z as getScheduleExecutionLog,M as getTemplateStatus,ne as getUserPerformance,xt as hostedPublishStatusFromPayload,Lt as hostedRunStatusFromRunSummary,bt as hostedRunSummaryFromPayload,Et as hostedSourceCheckStatusFromPayload,Nt as initLocalProfileRepo,Vt as inspectOpenPondProfileSource,Ft as installAgentPackageIntoActiveProfile,K as listAppSchedules,v as listApps,Ie as listConfiguredProfiles,X as listDeploymentScheduleExecutionLogs,Ve as listHostedModels,Ye as listHostedProviders,ge as listOpChatModels,Re as listOpChatProviders,F as listOpenToolRecipes,Q as listScheduleExecutionLogs,_ as listTemplateBranches,k as listUserTools,De as loadConfig,Be as loadGlobalConfig,qt as loadLocalProfileRepo,Wt as loadOpenPondProfileLibrary,Gt as loadOpenPondProfileState,zt as loadOpenPondProfileStateForRef,Yt as loadOpenPondProfileStateFromSource,Mt as mergeActiveLocalProfileConfig,Ut as mergeProfileRepoManifestEntry,ze as normalizeDataFrames,yt as normalizeSandboxApiUrl,jt as openPondProfileRef,dn as parseSandboxTemplateYaml,je as postAgentDigest,on as prepareAgentSdkRuntimePackage,x as promotePreviewToProduction,kt as registerLocalProfileRepo,$t as removeOpenPondProfile,Kt as renameActiveProfileAgent,Qt as requireActiveLocalProfile,$e as resolveHostedChatApiBaseUrl,fe as resolveOpChatApiBaseUrl,We as resolveWorkerBaseUrl,Zt as runAgentSdkProjectCommand,ae as runAssistantMode,Qe as runOpChatSmoke,en as runProfileCheck,Xt as runProfileSdkCommand,V as runScheduleNow,Sn as sandboxTemplateBuildMetadata,Tn as sandboxTemplateBuildPlan,Rn as sandboxTemplateDurableVolume,On as sandboxTemplateExecutableEntries,Cn as sandboxTemplateFileInput,wn as sandboxTemplateJsonSchema,An as sandboxTemplatePreviewPort,yn as sandboxTemplateResources,Pn as sandboxTemplateScaffoldFiles,Me as saveConfig,_e as saveGlobalConfig,Ue as saveProfileApiKey,nn as saveProfilePushStatus,G as searchOpenToolRecipes,Jt as selectOpenPondProfile,Ce as sendHostedChatTurn,ve as setActiveProfile,ue as setCachedApps,he as setCachedTools,b as startAppLifecycle,z as startAppSchedules,J as stopAppSchedules,$ as stopCurrentAppSchedules,Oe as streamHostedChatTurn,N as updateAppEnvironment,Le as updateGlobalConfig,hn as validateSandboxTemplateManifest,mn as validateSandboxTemplateYaml};
@@ -1,2 +1,4 @@
1
- export declare function normalizeSandboxApiUrl(baseUrlOrApiUrl: string): string;
1
+ export declare function normalizeSandboxApiUrl(baseUrlOrApiUrl: string, options?: {
2
+ apiBaseUrl?: string;
3
+ }): string;
2
4
  export declare function apiRootUrlFromSandboxApiUrl(sandboxApiUrl: string): string;
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 OpenPond contributors
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
@@ -0,0 +1,168 @@
1
+ {
2
+ "schemaVersion": 1,
3
+ "license": "MIT",
4
+ "sourceRepository": "https://github.com/openpond/openpond",
5
+ "sourceDirectory": "apps/cli/skills",
6
+ "skills": [
7
+ {
8
+ "name": "openpond-cli",
9
+ "externalSupport": "CLI operations"
10
+ },
11
+ {
12
+ "name": "openpond-taskset-authoring",
13
+ "externalSupport": "CLI authoring and evaluation workflows"
14
+ },
15
+ {
16
+ "name": "openpond-agent-authoring",
17
+ "externalSupport": "CLI and Agent SDK source authoring"
18
+ },
19
+ {
20
+ "name": "openpond-skill-authoring",
21
+ "externalSupport": "Profile source authoring and packaged validation"
22
+ },
23
+ {
24
+ "name": "openpond-refiner-authoring",
25
+ "externalSupport": "Review Profile drafts; inspection and activation require Desktop tools"
26
+ }
27
+ ],
28
+ "package": "openpond",
29
+ "version": "0.2.63",
30
+ "sourceFiles": [
31
+ {
32
+ "path": "openpond-cli/SKILL.md",
33
+ "bytes": 4432,
34
+ "sha256": "30955d527bd8ef8001bf38b23ba0eb9ca63c886ef6a210edc99d518240c5e4f8"
35
+ },
36
+ {
37
+ "path": "openpond-cli/references/compact-resource-tables.md",
38
+ "bytes": 2953,
39
+ "sha256": "45e634f5636a27ecd165d5ff141b286851cb7fe69830b603fb9406e86c39220f"
40
+ },
41
+ {
42
+ "path": "openpond-cli/references/diagnose-and-improve.md",
43
+ "bytes": 3575,
44
+ "sha256": "c31f3f59576020f76c469c27c4ed85e18ae9b63a95ae6dd69b60c681529f9285"
45
+ },
46
+ {
47
+ "path": "openpond-cli/references/experiments-and-training.md",
48
+ "bytes": 27234,
49
+ "sha256": "cad7ddd3d9b8121fc7143e238698f75ce1a546784e234055bd2e3614b7696555"
50
+ },
51
+ {
52
+ "path": "openpond-taskset-authoring/SKILL.md",
53
+ "bytes": 7002,
54
+ "sha256": "3d3f1dc0520b9d276fc1d6b363c604b7b47c10685e1bcc3554977c6bad5b4b03"
55
+ },
56
+ {
57
+ "path": "openpond-taskset-authoring/artifact.json",
58
+ "bytes": 60044,
59
+ "sha256": "c38d055d389ddd57b62ef33e69ed1981c979644c3b229ea8c63219682b6065cf"
60
+ },
61
+ {
62
+ "path": "openpond-taskset-authoring/references/benchmarking.md",
63
+ "bytes": 1679,
64
+ "sha256": "10d7c02eb5fb9fc529fdd028bc033467acfca988df0ea1738e5077bf3ac077d6"
65
+ },
66
+ {
67
+ "path": "openpond-taskset-authoring/references/data-quality.md",
68
+ "bytes": 4273,
69
+ "sha256": "fe7745cef7f165b13e4542612477a6ee767025ec155aba3dbca9a6bf4a6e19bc"
70
+ },
71
+ {
72
+ "path": "openpond-taskset-authoring/references/failure-diagnosis.md",
73
+ "bytes": 6543,
74
+ "sha256": "1125b13de9a9d7bfb09c453333ef8857d5da03c376365ad4522bf07ffe62866d"
75
+ },
76
+ {
77
+ "path": "openpond-taskset-authoring/references/graders-and-rewards.md",
78
+ "bytes": 3602,
79
+ "sha256": "8f8adaee003d2ceabdd080bf6da642ca0a088109af1a8eb5ad922ec2d1406b3f"
80
+ },
81
+ {
82
+ "path": "openpond-taskset-authoring/references/method-selection.md",
83
+ "bytes": 1121,
84
+ "sha256": "13d6862ef01101ecb08435927a54eb6078eaa1f995ec097c75d075230e4f7623"
85
+ },
86
+ {
87
+ "path": "openpond-taskset-authoring/references/privacy-and-provenance.md",
88
+ "bytes": 819,
89
+ "sha256": "9d84220cf93037984ac871a5e7a7382368d6071f6a5a1d9d6fe529052891aafd"
90
+ },
91
+ {
92
+ "path": "openpond-taskset-authoring/references/task-design.md",
93
+ "bytes": 3520,
94
+ "sha256": "e64cd195f170e21e7ec7edf6439d3f50e27d26dcb5aebde567afdf7385ad2143"
95
+ },
96
+ {
97
+ "path": "openpond-agent-authoring/SKILL.md",
98
+ "bytes": 4405,
99
+ "sha256": "1b3bc0a62984e2244bfe78f64597bf0079049a151027955476a12007378a249c"
100
+ },
101
+ {
102
+ "path": "openpond-agent-authoring/references/action-and-chat-design.md",
103
+ "bytes": 925,
104
+ "sha256": "9fd3e430fd30102a83fc54c4e0a7a2f2fdeceec3df160553fad484509b22a699"
105
+ },
106
+ {
107
+ "path": "openpond-agent-authoring/references/integrations-and-setup.md",
108
+ "bytes": 829,
109
+ "sha256": "626fb1fb5896f93989f898a03161f3f0a72dbaf5ba48dff69be7ab04a58644ec"
110
+ },
111
+ {
112
+ "path": "openpond-agent-authoring/references/profile-layout.md",
113
+ "bytes": 1639,
114
+ "sha256": "783cf758610836a64c0f4c2320822f921c1f35faee0fde5570ae8e3f4d99fcf4"
115
+ },
116
+ {
117
+ "path": "openpond-agent-authoring/references/validation-and-repair.md",
118
+ "bytes": 1009,
119
+ "sha256": "d159e7fc3428b249f0609aab70749239a69a901a5c246e4da6a898d322cd84f9"
120
+ },
121
+ {
122
+ "path": "openpond-skill-authoring/SKILL.md",
123
+ "bytes": 3883,
124
+ "sha256": "8f4406e60b5961ac7f6abd994488c6e1534b05cb2a512eac8e7f862b5bca3466"
125
+ },
126
+ {
127
+ "path": "openpond-skill-authoring/references/copying-and-adaptation.md",
128
+ "bytes": 1220,
129
+ "sha256": "451aead982ec59ff57cfebc9c5fcba605559eae4e32f8e4ff33e0598ea9c23ad"
130
+ },
131
+ {
132
+ "path": "openpond-skill-authoring/references/skill-package-layout.md",
133
+ "bytes": 1355,
134
+ "sha256": "6fa67cc153972b74cb66cdb11435f6405f892c3ecd01a29a34576d9fbb1596c9"
135
+ },
136
+ {
137
+ "path": "openpond-skill-authoring/references/validation-and-repair.md",
138
+ "bytes": 1022,
139
+ "sha256": "a2914e7b15601f6dcdcd0bed03fd8be1bc0b561a156f2d53229d2f00b3a3587f"
140
+ },
141
+ {
142
+ "path": "openpond-skill-authoring/scripts/validate-skill.mjs",
143
+ "bytes": 4124,
144
+ "sha256": "5d5d5f816e64d361925c26db55426acdfa9c15e22853582e142cfb4f765255b0"
145
+ },
146
+ {
147
+ "path": "openpond-refiner-authoring/SKILL.md",
148
+ "bytes": 2751,
149
+ "sha256": "0e8b1881a31b6abc44811227851fb6caa55d25579981140ccc8846074834f120"
150
+ },
151
+ {
152
+ "path": "openpond-refiner-authoring/references/core-boundary.md",
153
+ "bytes": 502,
154
+ "sha256": "5ac2d6d6909b51ce819504673be896f43f032f8bd157e759b5604cf271695f99"
155
+ },
156
+ {
157
+ "path": "openpond-refiner-authoring/references/review-profile.md",
158
+ "bytes": 588,
159
+ "sha256": "56d648abea06b4eea6c9e13b04e4d1e2aa34efac3ffcf54f61edf61678b2015f"
160
+ },
161
+ {
162
+ "path": "openpond-refiner-authoring/references/validation-and-activation.md",
163
+ "bytes": 574,
164
+ "sha256": "a11fca1c4f7a84ccec05d83f6f48b865b72a2ec3852e17d30cf135717ee854f8"
165
+ }
166
+ ],
167
+ "licenseSha256": "4ff2b3e5998939bb3bca9a324012e79e2ba6f74d1887993e8b93c2e2b8597db7"
168
+ }
@@ -7,16 +7,22 @@ description: Create, improve, review, or repair source-backed OpenPond Profile A
7
7
 
8
8
  Create durable Agent source through a normal model turn. Do not create a Goal, Create/Improve run, plan/candidate lifecycle, worktree, or Apply step.
9
9
 
10
+ ## Execution interface
11
+
12
+ Inside OpenPond, use the Profile and Agent tools named below. In an external coding agent, first inspect `openpond profile current --json` and use its selected `sourcePath` as the Profile root. If no editable source is selected, request the intended source location or use `openpond profile load --path <repository>` only within the user's setup scope. Do not guess an app-data path.
13
+
14
+ Map `agent_inspect`, `agent_build`, `agent_validate`, `agent_eval`, and `agent_traces` to `openpond agent inspect|build|validate|eval|traces --cwd <agent-package> --json`. Run inspect, build, validate, then eval in order for the final check; there is no `openpond agent check` command. Read the installed command help and the package's SDK configuration before executing evals or actions; provider-backed behavior needs the user's execution scope and budget. `openpond profile catalog --json` refreshes the source view. Ordinary clarification uses the client's question mechanism.
15
+
10
16
  ## Workflow
11
17
 
12
- 1. Call `get_profile` first. Use only its selected, editable Profile root and the exact target Agent ID carried by the authoring intent.
18
+ 1. Resolve the selected Profile through the execution interface above (`get_profile` in OpenPond). Use only its selected, editable Profile root and the exact target Agent ID carried by the authoring intent.
13
19
  2. Inspect nearby Agent packages and the target Agent when improving one. Read relevant Profile settings and registration before editing.
14
20
  3. Ask one focused `ask_user` question only when a missing answer would materially change actions, behavior, integrations, setup, or output contracts.
15
21
  4. Create or edit the Agent SDK package directly beneath the selected Profile, normally `agents/<agent-id>`.
16
22
  5. Preserve unrelated dirty files and other Agents.
17
23
  6. Design the instructions, chat behavior, direct actions, schemas, integrations, setup requirements, evals, and user-facing documentation as one coherent Agent.
18
24
  7. Use `agent_inspect`, `agent_build`, `agent_validate`, `agent_eval`, `agent_run`, and `agent_traces` for SDK behavior. Do not hide SDK execution behind raw shell fragments.
19
- 8. Run `agent_check`. Repair the first failure and rerun until the complete check passes.
25
+ 8. Run `agent_check` in OpenPond, or the four CLI checks above externally. Repair the first failure and rerun until the complete check passes.
20
26
  9. Refresh and inspect the Profile catalog, then report changed files, public actions, check receipts, and any genuine blocker.
21
27
 
22
28
  Read [Profile and Agent layout](references/profile-layout.md) before creating or relocating source. Read [action and chat design](references/action-and-chat-design.md) while defining behavior. Read [integrations and setup](references/integrations-and-setup.md) when the Agent touches external systems. Read [validation and repair](references/validation-and-repair.md) before completion.
@@ -37,4 +43,4 @@ Read [Profile and Agent layout](references/profile-layout.md) before creating or
37
43
  - Never create Goal state, a hidden execution session, a candidate, or plan approval.
38
44
  - `agent_*` tools inspect, run, and validate; they do not own the authoring objective or write the Agent.
39
45
  - Do not weaken validation or evals to make checks pass.
40
- - Do not report success until `agent_check` passes against the active edited source.
46
+ - Do not report success until the supported complete check passes against the active edited source.
@@ -1,6 +1,6 @@
1
1
  # Profile and Agent Layout
2
2
 
3
- `get_profile` owns absolute path authority. Use this reference only for relative structure beneath the returned Profile source.
3
+ `get_profile` in OpenPond, or `openpond profile current --json` externally, owns absolute path authority. Use this reference only for relative structure beneath the returned Profile source.
4
4
 
5
5
  ```text
6
6
  openpond-profile.json
@@ -1,13 +1,13 @@
1
1
  # Validation and Repair
2
2
 
3
- Use the first-class Agent tools rather than raw SDK shell commands:
3
+ Inside OpenPond, use the first-class Agent tools. Externally, use the corresponding `openpond agent <operation> --cwd <agent-package> --json` commands described in the entrypoint:
4
4
 
5
5
  1. `agent_inspect` to confirm discovery, actions, source, and diagnostics.
6
6
  2. `agent_build` to refresh generated artifacts.
7
7
  3. `agent_validate` to enforce SDK contracts.
8
8
  4. `agent_eval` to run deterministic declared evals.
9
9
  5. `agent_run` and `agent_traces` when behavioral proof or failure diagnosis requires them.
10
- 6. `agent_check` as the mandatory final composite receipt.
10
+ 6. `agent_check` as the final composite receipt inside OpenPond; externally retain the successful inspect, build, validate, and eval results.
11
11
 
12
12
  `agent_check` runs inspect, build, validate, and eval in order and stops at the first failure. Repair the source, not the checker. Rerun until every step passes.
13
13
 
@@ -1,8 +1,6 @@
1
1
  ---
2
2
  name: openpond-cli
3
3
  description: Use the OpenPond CLI for datasets, graders, experiments, model training, repos, deployments, and tools.
4
- metadata:
5
- short-description: OpenPond CLI workflows
6
4
  ---
7
5
 
8
6
  # OpenPond CLI
@@ -22,13 +20,19 @@ the evaluated model and the training base/checkpoint are separate selections.
22
20
  ## Standalone setup
23
21
 
24
22
  For a terminal outside the app, first check whether the running desktop already
25
- has an account. Use its home with `--home` (development normally uses
26
- `~/.openpond/openpond-app-dev`) before diagnosing missing authentication. The
23
+ has an account. Use its configured home with `--home <selected-home>` before diagnosing
24
+ missing authentication. The
27
25
  following setup is for a new installation:
28
26
 
29
27
  - Install: `npm i -g openpond` (or `npx --package openpond openpond <cmd>`)
30
- - Auth: run `openpond login` or set `OPENPOND_API_KEY`
31
- - Non-interactive login: `openpond login --api-key opk_...`
28
+ - Check local context: `openpond --home <selected-home> home`, then `openpond --home <selected-home> profiles list`. The account listing reports credential presence, not successful authentication.
29
+ - Verify cloud access only when needed: `openpond --home <selected-home> account`. Use workspace IDs returned by the account or supplied by the Console; do not pick another workspace silently.
30
+ - If credentials are missing in the correct home, run interactive `openpond --home <selected-home> login` in a private terminal, or provide `OPENPOND_API_KEY` through the execution environment. Never put a real key in a prompt, command example, or source file.
31
+ - Local Profile inspection, source authoring, and validation do not require cloud login. Do not force cloud setup for local-only work.
32
+
33
+ External coding agents use their ordinary command/file tools and the installed `openpond` binary; app-only executors, environment prefixes, and resource attachments are available only inside OpenPond. Use `openpond profile current --json` for the selected Profile source, `openpond profile catalog --json` for its contents, and the authoring skill's external interface guidance. Do not invent app tool calls in an external client.
34
+
35
+ The canonical [setup guide](https://openpond.ai/agent-setup.md) covers client installation, updates, removal, and separate verification of skills, CLI, account, and workspace. Do not start inference, evaluations, training, publishing, or deployments as a setup check.
32
36
 
33
37
  ## Common workflows
34
38
 
@@ -61,4 +65,4 @@ Use the CLI to run OpenTool commands via `npx`:
61
65
  ## Config and URLs
62
66
 
63
67
  - Optional env vars: `OPENPOND_BASE_URL`, `OPENPOND_API_URL`, `OPENPOND_TOOL_URL`, `OPENPOND_API_KEY`
64
- - Cache file: `~/.openpond/cache.json` (auto-refreshes on next use)
68
+ - Home: stable defaults to `~/.openpond`; nightly to `~/.openpond-nightly`. `--home` or `OPENPOND_HOME` selects another home. Credentials are managed by the encrypted store; configuration lives in `config.toml` and disposable discovery caches in `cache/cache.sqlite`. Do not inspect or edit credential files directly.
@@ -72,7 +72,7 @@ Use that supplied prefix directly. Do not spend a command printing or probing it
72
72
 
73
73
  Use `datasets context --local --json` to inspect the current scope; `datasets select <id> --local --expected-revision <revision>` selects an existing dataset. `datasets new-experiment --local --operation-id <stable-id>` creates a configuration scope without compute. Scope selection/rename use `select-experiment` and `rename-experiment`; check their current help. These commands require app-supplied context. Mere `datasets list` discovery does not attach all records.
74
74
 
75
- Use the application's supplied local server context and OpenPond home when present. Pass that home with `--home`; the standard development desktop uses `~/.openpond/openpond-app-dev`. Check this context before diagnosing missing authentication. Do not guess a second installation, scrape credentials, or switch teams to get an operation to succeed. Local dataset commands use `--local`; hosted operations have their own explicit destination/account options. Local experiment execution may still call a paid remote inference provider.
75
+ Use the application's supplied local server context and OpenPond home when present. Pass that configured home with `--home <selected-home>`. Check this context before diagnosing missing authentication. Do not guess a second installation, scrape credentials, or switch teams to get an operation to succeed. Local dataset commands use `--local`; hosted operations have their own explicit destination/account options. Local experiment execution may still call a paid remote inference provider.
76
76
 
77
77
  For Diagnose, Improve, or grader repair, read [Diagnose and improve](diagnose-and-improve.md).
78
78
 
@@ -9,6 +9,10 @@ Update the separately versioned Review Profile through a normal Work turn. The a
9
9
 
10
10
  Invoke this Skill explicitly with `$openpond-refiner-authoring` followed by the requested change. It uses the same profile-skill loading path as every other shipped Skill; it is not a slash command or a separate authoring mode.
11
11
 
12
+ ## Execution interface
13
+
14
+ The `refiner_profile_inspect` and `refiner_profile_update` tools below are supplied by OpenPond Desktop. The public CLI currently has no equivalent Review Profile inspect/update/activation commands. External agents may review or edit an explicitly supplied `openpond.review.json` draft using the contract reference, but must report managed inspection, server validation, release, and activation as unavailable until those supported tools are connected. A local JSON edit is not a managed release. Do not invent CLI aliases, call private endpoints, or edit managed app-data paths to bypass this boundary.
15
+
12
16
  ## Workflow
13
17
 
14
18
  1. Call `refiner_profile_inspect` before proposing any change.
@@ -7,9 +7,13 @@ description: Create, copy, adapt, review, or update OpenPond Profile skill packa
7
7
 
8
8
  Create durable Profile skills through a normal model turn. The skill package is the source of truth; do not create a Goal, invoke an authoring executor, or substitute a generic template for source that the user asked to copy or adapt.
9
9
 
10
+ ## Execution interface
11
+
12
+ Inside OpenPond, resolve the selected source with `get_profile`. External coding agents use `openpond profile current --json` and its `sourcePath`; inspect `openpond profile catalog --json` for nearby skills. If no editable Profile is selected, resolve the user's intended source before writing. Use ordinary file tools and the packaged Node validator in either environment. There is no dependency on an app-only authoring executor. Clarify through the client's normal question mechanism.
13
+
10
14
  ## Workflow
11
15
 
12
- 1. Call `get_profile` before reading or writing Profile source. Use only its selected, editable Profile root.
16
+ 1. Resolve the Profile through the execution interface above before reading or writing source. Use only its selected, editable Profile root.
13
17
  2. Determine whether the request is create, edit, copy, or adapt. Treat an explicit skill name or source path as target authority.
14
18
  3. Inspect nearby Profile skills for local conventions.
15
19
  4. When an existing source package is named, inventory and read its complete relevant package: `SKILL.md`, referenced files, scripts, assets, and metadata. Do not infer its behavior from the directory name.