niceeval 0.13.1 → 0.13.2

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 (548) hide show
  1. package/INDEX.md +25 -2
  2. package/README.md +9 -10
  3. package/README.zh.md +9 -10
  4. package/dist/agents/ai-sdk.cjs.map +1 -1
  5. package/dist/agents/ai-sdk.d.cts +1 -1
  6. package/dist/agents/ai-sdk.d.mts +1 -1
  7. package/dist/agents/ai-sdk.d.ts +1 -1
  8. package/dist/agents/bub-install-spec.cjs +19 -5
  9. package/dist/agents/bub-install-spec.cjs.map +1 -1
  10. package/dist/agents/bub-install-spec.d.cts +9 -2
  11. package/dist/agents/bub-install-spec.d.mts +9 -2
  12. package/dist/agents/bub-install-spec.d.ts +9 -2
  13. package/dist/agents/bub-install-spec.js +14 -12
  14. package/dist/agents/bub.cjs +10 -6
  15. package/dist/agents/bub.cjs.map +1 -1
  16. package/dist/agents/bub.d.cts +2 -2
  17. package/dist/agents/bub.d.mts +2 -2
  18. package/dist/agents/bub.d.ts +2 -2
  19. package/dist/agents/claude-code.cjs.map +1 -1
  20. package/dist/agents/claude-code.d.cts +2 -2
  21. package/dist/agents/claude-code.d.mts +2 -2
  22. package/dist/agents/claude-code.d.ts +2 -2
  23. package/dist/agents/codex.cjs +4 -4
  24. package/dist/agents/codex.cjs.map +1 -1
  25. package/dist/agents/codex.d.cts +3 -3
  26. package/dist/agents/codex.d.mts +3 -3
  27. package/dist/agents/codex.d.ts +3 -3
  28. package/dist/agents/coding-cli-versions.cjs +10 -1
  29. package/dist/agents/coding-cli-versions.cjs.map +1 -1
  30. package/dist/agents/coding-cli-versions.d.cts +8 -3
  31. package/dist/agents/coding-cli-versions.d.mts +8 -3
  32. package/dist/agents/coding-cli-versions.d.ts +8 -3
  33. package/dist/agents/coding-cli-versions.js +18 -12
  34. package/dist/agents/deepseek-harness.cjs +151 -0
  35. package/dist/agents/deepseek-harness.cjs.map +1 -0
  36. package/dist/agents/deepseek-harness.d.cts +14 -0
  37. package/dist/agents/deepseek-harness.d.mts +14 -0
  38. package/dist/agents/deepseek-harness.d.ts +14 -0
  39. package/dist/agents/deepseek-harness.js +7 -0
  40. package/dist/agents/deepseek-harness.js.map +1 -0
  41. package/dist/agents/exact-npm-plugins.cjs +28 -0
  42. package/dist/agents/exact-npm-plugins.cjs.map +1 -0
  43. package/dist/agents/exact-npm-plugins.d.cts +10 -0
  44. package/dist/agents/exact-npm-plugins.d.mts +10 -0
  45. package/dist/agents/exact-npm-plugins.d.ts +10 -0
  46. package/dist/agents/exact-npm-plugins.js +8 -0
  47. package/dist/agents/exact-npm-plugins.js.map +1 -0
  48. package/dist/agents/index.cjs +5 -1
  49. package/dist/agents/index.cjs.map +1 -1
  50. package/dist/agents/index.d.cts +4 -0
  51. package/dist/agents/index.d.mts +4 -0
  52. package/dist/agents/index.d.ts +4 -0
  53. package/dist/agents/index.js +54 -50
  54. package/dist/agents/index.mjs +54 -50
  55. package/dist/agents/omp.cjs +170 -0
  56. package/dist/agents/omp.cjs.map +1 -0
  57. package/dist/agents/omp.d.cts +14 -0
  58. package/dist/agents/omp.d.mts +14 -0
  59. package/dist/agents/omp.d.ts +14 -0
  60. package/dist/agents/omp.js +7 -0
  61. package/dist/agents/omp.js.map +1 -0
  62. package/dist/agents/openclaw.cjs +51 -2
  63. package/dist/agents/openclaw.cjs.map +1 -1
  64. package/dist/agents/openclaw.d.cts +2 -0
  65. package/dist/agents/openclaw.d.mts +2 -0
  66. package/dist/agents/openclaw.d.ts +2 -0
  67. package/dist/agents/types.cjs.map +1 -1
  68. package/dist/agents/types.d.cts +4 -4
  69. package/dist/agents/types.d.mts +4 -4
  70. package/dist/agents/types.d.ts +4 -4
  71. package/dist/agents/ui-message-stream.cjs +24 -7
  72. package/dist/agents/ui-message-stream.cjs.map +1 -1
  73. package/dist/analysis/api.cjs +28 -2
  74. package/dist/analysis/api.cjs.map +1 -1
  75. package/dist/analysis/api.d.cts +22 -1
  76. package/dist/analysis/api.d.mts +22 -1
  77. package/dist/analysis/api.d.ts +22 -1
  78. package/dist/analysis/api.js +8 -6
  79. package/dist/analysis/bindings.cjs +11 -18
  80. package/dist/analysis/bindings.cjs.map +1 -1
  81. package/dist/analysis/bindings.d.cts +177 -49
  82. package/dist/analysis/bindings.d.mts +177 -49
  83. package/dist/analysis/bindings.d.ts +177 -49
  84. package/dist/analysis/contracts.cjs +1 -0
  85. package/dist/analysis/contracts.cjs.map +1 -1
  86. package/dist/analysis/contracts.d.cts +43 -3
  87. package/dist/analysis/contracts.d.mts +43 -3
  88. package/dist/analysis/contracts.d.ts +43 -3
  89. package/dist/analysis/cost-projection.cjs +2 -1
  90. package/dist/analysis/cost-projection.cjs.map +1 -1
  91. package/dist/analysis/cost-projection.d.cts +1 -1
  92. package/dist/analysis/cost-projection.d.mts +1 -1
  93. package/dist/analysis/cost-projection.d.ts +1 -1
  94. package/dist/analysis/cost.cjs +13 -3
  95. package/dist/analysis/cost.cjs.map +1 -1
  96. package/dist/analysis/cost.d.cts +10 -3
  97. package/dist/analysis/cost.d.mts +10 -3
  98. package/dist/analysis/cost.d.ts +10 -3
  99. package/dist/analysis/experiment-groups.cjs +96 -0
  100. package/dist/analysis/experiment-groups.cjs.map +1 -0
  101. package/dist/analysis/experiment-groups.d.cts +9 -0
  102. package/dist/analysis/experiment-groups.d.mts +9 -0
  103. package/dist/analysis/experiment-groups.d.ts +9 -0
  104. package/dist/analysis/experiment-groups.js +10 -0
  105. package/dist/analysis/experiment-groups.js.map +1 -0
  106. package/dist/analysis/index.cjs +4 -1
  107. package/dist/analysis/index.cjs.map +1 -1
  108. package/dist/analysis/index.d.cts +4 -2
  109. package/dist/analysis/index.d.mts +4 -2
  110. package/dist/analysis/index.d.ts +4 -2
  111. package/dist/analysis/index.js +40 -36
  112. package/dist/analysis/index.mjs +40 -36
  113. package/dist/assertions/limits.cjs +4 -0
  114. package/dist/assertions/limits.cjs.map +1 -1
  115. package/dist/assertions/limits.d.cts +4 -0
  116. package/dist/assertions/limits.d.mts +4 -0
  117. package/dist/assertions/limits.d.ts +4 -0
  118. package/dist/assertions/match.cjs +63 -25
  119. package/dist/assertions/match.cjs.map +1 -1
  120. package/dist/assertions/match.d.cts +7 -0
  121. package/dist/assertions/match.d.mts +7 -0
  122. package/dist/assertions/match.d.ts +7 -0
  123. package/dist/assertions/record/attachment.cjs +32 -4
  124. package/dist/assertions/record/attachment.cjs.map +1 -1
  125. package/dist/assertions/record/diff.cjs +10 -4
  126. package/dist/assertions/record/diff.cjs.map +1 -1
  127. package/dist/assertions/record/producer.cjs +101 -4
  128. package/dist/assertions/record/producer.cjs.map +1 -1
  129. package/dist/assertions/record/producer.d.cts +4 -1
  130. package/dist/assertions/record/producer.d.mts +4 -1
  131. package/dist/assertions/record/producer.d.ts +4 -1
  132. package/dist/assertions/runtime.cjs +45 -5
  133. package/dist/assertions/runtime.cjs.map +1 -1
  134. package/dist/cli/record.cjs +113 -8
  135. package/dist/cli/record.cjs.map +1 -1
  136. package/dist/cli/record.d.cts +20 -1
  137. package/dist/cli/record.d.mts +20 -1
  138. package/dist/cli/record.d.ts +20 -1
  139. package/dist/cli/record.js +4 -2
  140. package/dist/cli.cjs +386 -31
  141. package/dist/cli.cjs.map +1 -1
  142. package/dist/cli.d.cts +10 -2
  143. package/dist/cli.d.mts +10 -2
  144. package/dist/cli.d.ts +10 -2
  145. package/dist/context/send-retry.cjs +4 -4
  146. package/dist/context/send-retry.cjs.map +1 -1
  147. package/dist/coordination/host/runtime.cjs +8 -30
  148. package/dist/coordination/host/runtime.cjs.map +1 -1
  149. package/dist/coordination/host/runtime.d.cts +3 -3
  150. package/dist/coordination/host/runtime.d.mts +3 -3
  151. package/dist/coordination/host/runtime.d.ts +3 -3
  152. package/dist/coordination/host/types.cjs.map +1 -1
  153. package/dist/coordination/host/types.d.cts +0 -5
  154. package/dist/coordination/host/types.d.mts +0 -5
  155. package/dist/coordination/host/types.d.ts +0 -5
  156. package/dist/coordination/platform/node.cjs +90 -9
  157. package/dist/coordination/platform/node.cjs.map +1 -1
  158. package/dist/define.cjs +25 -1
  159. package/dist/define.cjs.map +1 -1
  160. package/dist/experiment/host/index.cjs +1 -0
  161. package/dist/experiment/host/index.cjs.map +1 -1
  162. package/dist/i18n/en.cjs +26 -8
  163. package/dist/i18n/en.cjs.map +1 -1
  164. package/dist/i18n/en.d.cts +19 -6
  165. package/dist/i18n/en.d.mts +19 -6
  166. package/dist/i18n/en.d.ts +19 -6
  167. package/dist/index.cjs.map +1 -1
  168. package/dist/index.d.cts +1 -1
  169. package/dist/index.d.mts +1 -1
  170. package/dist/index.d.ts +1 -1
  171. package/dist/o11y/parsers/hermes.cjs +1 -1
  172. package/dist/o11y/parsers/hermes.cjs.map +1 -1
  173. package/dist/o11y/prices.json +1 -1
  174. package/dist/o11y/record/families.cjs +12 -3
  175. package/dist/o11y/record/families.cjs.map +1 -1
  176. package/dist/o11y/record/families.d.cts +8 -8
  177. package/dist/o11y/record/families.d.mts +8 -8
  178. package/dist/o11y/record/families.d.ts +8 -8
  179. package/dist/o11y/record/family-projectors.d.cts +66 -18
  180. package/dist/o11y/record/family-projectors.d.mts +66 -18
  181. package/dist/o11y/record/family-projectors.d.ts +66 -18
  182. package/dist/o11y/record/family-writers.d.cts +11 -3
  183. package/dist/o11y/record/family-writers.d.mts +11 -3
  184. package/dist/o11y/record/family-writers.d.ts +11 -3
  185. package/dist/o11y/record/runner-producer.cjs +14 -4
  186. package/dist/o11y/record/runner-producer.cjs.map +1 -1
  187. package/dist/record/codec/core.d.cts +2 -2
  188. package/dist/record/codec/core.d.mts +2 -2
  189. package/dist/record/codec/core.d.ts +2 -2
  190. package/dist/record/family/catalog.d.cts +44 -12
  191. package/dist/record/family/catalog.d.mts +44 -12
  192. package/dist/record/family/catalog.d.ts +44 -12
  193. package/dist/record/family/index.js +128 -124
  194. package/dist/record/family/observability-v1.cjs +35 -0
  195. package/dist/record/family/observability-v1.cjs.map +1 -0
  196. package/dist/record/family/observability-v1.d.cts +3 -0
  197. package/dist/record/family/observability-v1.d.mts +3 -0
  198. package/dist/record/family/observability-v1.d.ts +3 -0
  199. package/dist/record/family/observability-v1.js +6 -0
  200. package/dist/record/family/observability-v1.js.map +1 -0
  201. package/dist/record/family/observability.cjs +58 -9
  202. package/dist/record/family/observability.cjs.map +1 -1
  203. package/dist/record/family/observability.d.cts +1014 -15
  204. package/dist/record/family/observability.d.mts +1014 -15
  205. package/dist/record/family/observability.d.ts +1014 -15
  206. package/dist/record/family/observability.js +22 -18
  207. package/dist/record/host/runtime.cjs +600 -31
  208. package/dist/record/host/runtime.cjs.map +1 -1
  209. package/dist/record/host/types.cjs.map +1 -1
  210. package/dist/record/host/types.d.cts +33 -9
  211. package/dist/record/host/types.d.mts +33 -9
  212. package/dist/record/host/types.d.ts +33 -9
  213. package/dist/record/maintenance/runtime.cjs +1 -2
  214. package/dist/record/maintenance/runtime.cjs.map +1 -1
  215. package/dist/record/model/core.cjs.map +1 -1
  216. package/dist/record/model/core.d.cts +1 -1
  217. package/dist/record/model/core.d.mts +1 -1
  218. package/dist/record/model/core.d.ts +1 -1
  219. package/dist/record/model/definition.d.cts +6 -6
  220. package/dist/record/model/definition.d.mts +6 -6
  221. package/dist/record/model/definition.d.ts +6 -6
  222. package/dist/record/model/identifiers.cjs +1 -1
  223. package/dist/record/model/identifiers.cjs.map +1 -1
  224. package/dist/record/model/identifiers.d.cts +1 -1
  225. package/dist/record/model/identifiers.d.mts +1 -1
  226. package/dist/record/model/identifiers.d.ts +1 -1
  227. package/dist/record/platform/node.cjs +159 -23
  228. package/dist/record/platform/node.cjs.map +1 -1
  229. package/dist/record/platform/services.cjs.map +1 -1
  230. package/dist/record/platform/services.d.cts +15 -2
  231. package/dist/record/platform/services.d.mts +15 -2
  232. package/dist/record/platform/services.d.ts +15 -2
  233. package/dist/record/reader/errors.cjs +37 -1
  234. package/dist/record/reader/errors.cjs.map +1 -1
  235. package/dist/record/reader/errors.d.cts +49 -1
  236. package/dist/record/reader/errors.d.mts +49 -1
  237. package/dist/record/reader/errors.d.ts +49 -1
  238. package/dist/record/reader/errors.js +22 -12
  239. package/dist/record/reader/format.cjs +76 -17
  240. package/dist/record/reader/format.cjs.map +1 -1
  241. package/dist/record/reader/format.d.cts +11 -4
  242. package/dist/record/reader/format.d.mts +11 -4
  243. package/dist/record/reader/format.d.ts +11 -4
  244. package/dist/record/reader/format.js +2 -0
  245. package/dist/record/reader/index.js +32 -18
  246. package/dist/record/reader/runtime.cjs +64 -0
  247. package/dist/record/reader/runtime.cjs.map +1 -1
  248. package/dist/record/reader/runtime.d.cts +15 -0
  249. package/dist/record/reader/runtime.d.mts +15 -0
  250. package/dist/record/reader/runtime.d.ts +15 -0
  251. package/dist/record/reader/runtime.js +2 -0
  252. package/dist/report/assets/styles.css +53 -29
  253. package/dist/report/built-in/analysis-values.cjs +21 -13
  254. package/dist/report/built-in/analysis-values.cjs.map +1 -1
  255. package/dist/report/built-in/analysis-values.d.cts +11 -22
  256. package/dist/report/built-in/analysis-values.d.mts +11 -22
  257. package/dist/report/built-in/analysis-values.d.ts +11 -22
  258. package/dist/report/built-in/analysis-values.js +4 -6
  259. package/dist/report/built-in/index.cjs +1 -3
  260. package/dist/report/built-in/index.cjs.map +1 -1
  261. package/dist/report/built-in/index.d.cts +1 -1
  262. package/dist/report/built-in/index.d.mts +1 -1
  263. package/dist/report/built-in/index.d.ts +1 -1
  264. package/dist/report/built-in/index.js +4 -8
  265. package/dist/report/built-in/index.mjs +4 -8
  266. package/dist/report/built-in/machine.cjs +0 -2
  267. package/dist/report/built-in/machine.cjs.map +1 -1
  268. package/dist/report/built-in/machine.d.cts +0 -2
  269. package/dist/report/built-in/machine.d.mts +0 -2
  270. package/dist/report/built-in/machine.d.ts +0 -2
  271. package/dist/report/built-in/result-components.cjs +49 -51
  272. package/dist/report/built-in/result-components.cjs.map +1 -1
  273. package/dist/report/built-in/result-components.d.cts +16 -17
  274. package/dist/report/built-in/result-components.d.mts +16 -17
  275. package/dist/report/built-in/result-components.d.ts +16 -17
  276. package/dist/report/built-in/result-components.js +0 -4
  277. package/dist/report/built-in/run-membership-overview.cjs +126 -17
  278. package/dist/report/built-in/run-membership-overview.cjs.map +1 -1
  279. package/dist/report/built-in/run-membership-overview.d.cts +14 -0
  280. package/dist/report/built-in/run-membership-overview.d.mts +14 -0
  281. package/dist/report/built-in/run-membership-overview.d.ts +14 -0
  282. package/dist/report/built-in/run-membership-overview.js +4 -2
  283. package/dist/report/built-in/standard.cjs +80 -45
  284. package/dist/report/built-in/standard.cjs.map +1 -1
  285. package/dist/report/built-in/standard.d.cts +19 -41
  286. package/dist/report/built-in/standard.d.mts +19 -41
  287. package/dist/report/built-in/standard.d.ts +19 -41
  288. package/dist/report/built-in/standard.js +6 -6
  289. package/dist/report/components/attempt-detail/compute.cjs +78 -2
  290. package/dist/report/components/attempt-detail/compute.cjs.map +1 -1
  291. package/dist/report/components/attempt-detail/compute.d.cts +1 -1
  292. package/dist/report/components/attempt-detail/compute.d.mts +1 -1
  293. package/dist/report/components/attempt-detail/compute.d.ts +1 -1
  294. package/dist/report/components/attempt-detail/content.cjs +1 -1
  295. package/dist/report/components/attempt-detail/content.cjs.map +1 -1
  296. package/dist/report/components/entity-lists/compute.cjs +42 -5
  297. package/dist/report/components/entity-lists/compute.cjs.map +1 -1
  298. package/dist/report/components/entity-lists/compute.d.cts +10 -8
  299. package/dist/report/components/entity-lists/compute.d.mts +10 -8
  300. package/dist/report/components/entity-lists/compute.d.ts +10 -8
  301. package/dist/report/components/entity-lists/content.cjs +31 -6
  302. package/dist/report/components/entity-lists/content.cjs.map +1 -1
  303. package/dist/report/components/entity-lists/index.cjs +9 -4
  304. package/dist/report/components/entity-lists/index.cjs.map +1 -1
  305. package/dist/report/components/entity-lists/index.d.cts +4 -7
  306. package/dist/report/components/entity-lists/index.d.mts +4 -7
  307. package/dist/report/components/entity-lists/index.d.ts +4 -7
  308. package/dist/report/components/summaries/compute.cjs +8 -1
  309. package/dist/report/components/summaries/compute.cjs.map +1 -1
  310. package/dist/report/components/summaries/compute.d.cts +9 -1
  311. package/dist/report/components/summaries/compute.d.mts +9 -1
  312. package/dist/report/components/summaries/compute.d.ts +9 -1
  313. package/dist/report/components/summaries/index.cjs +48 -4
  314. package/dist/report/components/summaries/index.cjs.map +1 -1
  315. package/dist/report/components/summaries/index.d.cts +7 -4
  316. package/dist/report/components/summaries/index.d.mts +7 -4
  317. package/dist/report/components/summaries/index.d.ts +7 -4
  318. package/dist/report/definition/cell.cjs +3 -0
  319. package/dist/report/definition/cell.cjs.map +1 -1
  320. package/dist/report/definition/cell.d.cts +2 -0
  321. package/dist/report/definition/cell.d.mts +2 -0
  322. package/dist/report/definition/cell.d.ts +2 -0
  323. package/dist/report/definition/primitives/chart.cjs +8 -5
  324. package/dist/report/definition/primitives/chart.cjs.map +1 -1
  325. package/dist/report/definition/primitives/points-dataset.cjs +1 -0
  326. package/dist/report/definition/primitives/points-dataset.cjs.map +1 -1
  327. package/dist/report/definition/primitives.cjs +15 -2
  328. package/dist/report/definition/primitives.cjs.map +1 -1
  329. package/dist/report/definition/report.cjs +27 -3
  330. package/dist/report/definition/report.cjs.map +1 -1
  331. package/dist/report/definition/report.d.cts +8 -0
  332. package/dist/report/definition/report.d.mts +8 -0
  333. package/dist/report/definition/report.d.ts +8 -0
  334. package/dist/report/execution/machine.cjs +30 -14
  335. package/dist/report/execution/machine.cjs.map +1 -1
  336. package/dist/report/execution/machine.d.cts +20 -10
  337. package/dist/report/execution/machine.d.mts +20 -10
  338. package/dist/report/execution/machine.d.ts +20 -10
  339. package/dist/report/execution/machine.js +6 -6
  340. package/dist/report/host/execute.cjs +25 -16
  341. package/dist/report/host/execute.cjs.map +1 -1
  342. package/dist/report/host/execute.d.cts +4 -0
  343. package/dist/report/host/execute.d.mts +4 -0
  344. package/dist/report/host/execute.d.ts +4 -0
  345. package/dist/report/host/from-record.cjs +22 -5
  346. package/dist/report/host/from-record.cjs.map +1 -1
  347. package/dist/report/host/machine.cjs +53 -11
  348. package/dist/report/host/machine.cjs.map +1 -1
  349. package/dist/report/host/site-runtime.cjs +9 -8
  350. package/dist/report/host/site-runtime.cjs.map +1 -1
  351. package/dist/report/host/site-runtime.d.cts +1 -1
  352. package/dist/report/host/site-runtime.d.mts +1 -1
  353. package/dist/report/host/site-runtime.d.ts +1 -1
  354. package/dist/report/host/static.cjs +56 -9
  355. package/dist/report/host/static.cjs.map +1 -1
  356. package/dist/report/index.cjs.map +1 -1
  357. package/dist/report/index.d.cts +1 -1
  358. package/dist/report/index.d.mts +1 -1
  359. package/dist/report/index.d.ts +1 -1
  360. package/dist/report/model/dataset.cjs +7 -2
  361. package/dist/report/model/dataset.cjs.map +1 -1
  362. package/dist/report/model/locale.cjs +2 -0
  363. package/dist/report/model/locale.cjs.map +1 -1
  364. package/dist/report/model/locale.d.cts +1 -0
  365. package/dist/report/model/locale.d.mts +1 -0
  366. package/dist/report/model/locale.d.ts +1 -0
  367. package/dist/report/model/metrics.cjs +3 -1
  368. package/dist/report/model/metrics.cjs.map +1 -1
  369. package/dist/report/model/pricing.cjs +16 -11
  370. package/dist/report/model/pricing.cjs.map +1 -1
  371. package/dist/report/react/styles.css +53 -29
  372. package/dist/runner/adoption.cjs +1 -0
  373. package/dist/runner/adoption.cjs.map +1 -1
  374. package/dist/runner/attempt.cjs +44 -5
  375. package/dist/runner/attempt.cjs.map +1 -1
  376. package/dist/runner/attempt.d.cts +13 -1
  377. package/dist/runner/attempt.d.mts +13 -1
  378. package/dist/runner/attempt.d.ts +13 -1
  379. package/dist/runner/config-identity.cjs +10 -2
  380. package/dist/runner/config-identity.cjs.map +1 -1
  381. package/dist/runner/config-identity.d.cts +4 -2
  382. package/dist/runner/config-identity.d.mts +4 -2
  383. package/dist/runner/config-identity.d.ts +4 -2
  384. package/dist/runner/feedback/human.cjs +298 -59
  385. package/dist/runner/feedback/human.cjs.map +1 -1
  386. package/dist/runner/feedback/json.cjs +14 -6
  387. package/dist/runner/feedback/json.cjs.map +1 -1
  388. package/dist/runner/feedback/json.d.cts +3 -2
  389. package/dist/runner/feedback/json.d.mts +3 -2
  390. package/dist/runner/feedback/json.d.ts +3 -2
  391. package/dist/runner/feedback/reducer.cjs +2 -0
  392. package/dist/runner/feedback/reducer.cjs.map +1 -1
  393. package/dist/runner/judge-config.cjs +1 -1
  394. package/dist/runner/judge-config.cjs.map +1 -1
  395. package/dist/runner/ledger.cjs +124 -12
  396. package/dist/runner/ledger.cjs.map +1 -1
  397. package/dist/runner/project-current.cjs +13 -5
  398. package/dist/runner/project-current.cjs.map +1 -1
  399. package/dist/runner/run.cjs +564 -256
  400. package/dist/runner/run.cjs.map +1 -1
  401. package/dist/runner/sandbox-pool.cjs +161 -30
  402. package/dist/runner/sandbox-pool.cjs.map +1 -1
  403. package/dist/runner/sandbox-pool.d.cts +34 -2
  404. package/dist/runner/sandbox-pool.d.mts +34 -2
  405. package/dist/runner/sandbox-pool.d.ts +34 -2
  406. package/dist/runner/shared-state-lease.cjs +803 -0
  407. package/dist/runner/shared-state-lease.cjs.map +1 -0
  408. package/dist/runner/shared-state-lease.d.cts +121 -0
  409. package/dist/runner/shared-state-lease.d.mts +121 -0
  410. package/dist/runner/shared-state-lease.d.ts +121 -0
  411. package/dist/runner/shared-state-lease.js +24 -0
  412. package/dist/runner/shared-state-lease.js.map +1 -0
  413. package/dist/runner/teardown-registry.cjs +97 -34
  414. package/dist/runner/teardown-registry.cjs.map +1 -1
  415. package/dist/runner/teardown-registry.d.cts +27 -1
  416. package/dist/runner/teardown-registry.d.mts +27 -1
  417. package/dist/runner/teardown-registry.d.ts +27 -1
  418. package/dist/runner/teardown-registry.js +20 -16
  419. package/dist/runner/types.cjs.map +1 -1
  420. package/dist/runner/types.d.cts +31 -5
  421. package/dist/runner/types.d.mts +31 -5
  422. package/dist/runner/types.d.ts +31 -5
  423. package/dist/sample/analysis.cjs +249 -459
  424. package/dist/sample/analysis.cjs.map +1 -1
  425. package/dist/sample/capability.cjs +138 -7
  426. package/dist/sample/capability.cjs.map +1 -1
  427. package/dist/sample/capability.d.cts +3 -1
  428. package/dist/sample/capability.d.mts +3 -1
  429. package/dist/sample/capability.d.ts +3 -1
  430. package/dist/sample/capability.js +8 -6
  431. package/dist/sandbox/docker-agent-image.cjs +5 -1
  432. package/dist/sandbox/docker-agent-image.cjs.map +1 -1
  433. package/dist/sandbox/docker-agent-image.d.cts +2 -0
  434. package/dist/sandbox/docker-agent-image.d.mts +2 -0
  435. package/dist/sandbox/docker-agent-image.d.ts +2 -0
  436. package/dist/sandbox/docker-agent-image.js +14 -10
  437. package/dist/sandbox/docker-profile/schema.cjs +283 -534
  438. package/dist/sandbox/docker-profile/schema.cjs.map +1 -1
  439. package/dist/sandbox/docker-profile/schema.d.cts +10 -27
  440. package/dist/sandbox/docker-profile/schema.d.mts +10 -27
  441. package/dist/sandbox/docker-profile/schema.d.ts +10 -27
  442. package/dist/sandbox/e2b-agent-template.cjs +5 -2
  443. package/dist/sandbox/e2b-agent-template.cjs.map +1 -1
  444. package/dist/sandbox/index.cjs +4 -2
  445. package/dist/sandbox/index.cjs.map +1 -1
  446. package/dist/sandbox/index.d.cts +1 -1
  447. package/dist/sandbox/index.d.mts +1 -1
  448. package/dist/sandbox/index.d.ts +1 -1
  449. package/dist/sandbox/index.js +120 -116
  450. package/dist/sandbox/index.mjs +120 -116
  451. package/dist/sandbox/keep-registry.cjs +28 -66
  452. package/dist/sandbox/keep-registry.cjs.map +1 -1
  453. package/dist/sandbox/types.cjs.map +1 -1
  454. package/dist/sandbox/types.d.cts +1 -1
  455. package/dist/sandbox/types.d.mts +1 -1
  456. package/dist/sandbox/types.d.ts +1 -1
  457. package/dist/shared/aggregate.cjs +16 -6
  458. package/dist/shared/aggregate.cjs.map +1 -1
  459. package/dist/shared/aggregate.d.cts +12 -4
  460. package/dist/shared/aggregate.d.mts +12 -4
  461. package/dist/shared/aggregate.d.ts +12 -4
  462. package/dist/shared/turn-label.cjs +20 -2
  463. package/dist/shared/turn-label.cjs.map +1 -1
  464. package/dist/shared/turn-label.d.cts +2 -0
  465. package/dist/shared/turn-label.d.mts +2 -0
  466. package/dist/shared/turn-label.d.ts +2 -0
  467. package/dist/shared/turn-label.js +4 -2
  468. package/dist/vendor/remark/remark-gfm.cjs +7 -7
  469. package/dist/vendor/remark/remark-gfm.cjs.map +1 -1
  470. package/dist/vendor/remark/remark-parse.cjs +12 -12
  471. package/dist/vendor/remark/remark-parse.cjs.map +1 -1
  472. package/dist/vendor/remark/remark.cjs +13 -13
  473. package/dist/vendor/remark/remark.cjs.map +1 -1
  474. package/dist/view/server.cjs +6 -0
  475. package/dist/view/server.cjs.map +1 -1
  476. package/docs-site/images/hitl-handshake-zh.svg +3 -3
  477. package/docs-site/zh/examples/ai-agent-application.mdx +1 -1
  478. package/docs-site/zh/examples/coding-agent-extensions.mdx +1 -1
  479. package/docs-site/zh/examples/integrations/ai-sdk-v7.mdx +4 -3
  480. package/docs-site/zh/examples/integrations/claude-sdk.mdx +3 -3
  481. package/docs-site/zh/examples/integrations/codex-sdk.mdx +5 -5
  482. package/docs-site/zh/examples/integrations/langgraph.mdx +4 -4
  483. package/docs-site/zh/examples/integrations/pi-sdk.mdx +5 -5
  484. package/docs-site/zh/explanation/adapter.mdx +5 -5
  485. package/docs-site/zh/explanation/assert.mdx +7 -7
  486. package/docs-site/zh/explanation/drive.mdx +4 -2
  487. package/docs-site/zh/explanation/evals.mdx +10 -8
  488. package/docs-site/zh/explanation/experiment.mdx +2 -2
  489. package/docs-site/zh/explanation/hitl.mdx +9 -9
  490. package/docs-site/zh/explanation/judge.mdx +5 -5
  491. package/docs-site/zh/explanation/overview.mdx +3 -3
  492. package/docs-site/zh/explanation/runner.mdx +1 -1
  493. package/docs-site/zh/index.mdx +3 -3
  494. package/docs-site/zh/reference/builtin-agents.mdx +13 -13
  495. package/docs-site/zh/reference/capabilities.mdx +1 -1
  496. package/docs-site/zh/reference/cli.mdx +18 -12
  497. package/docs-site/zh/reference/define-agent.mdx +130 -5
  498. package/docs-site/zh/reference/define-config.mdx +2 -2
  499. package/docs-site/zh/reference/define-eval.mdx +4 -4
  500. package/docs-site/zh/reference/events.mdx +11 -11
  501. package/docs-site/zh/reference/official-adapters.mdx +6 -6
  502. package/docs-site/zh/reference/results-data.mdx +6 -0
  503. package/docs-site/zh/troubleshooting/debugging.mdx +1 -1
  504. package/docs-site/zh/troubleshooting/recover-after-kill.mdx +37 -5
  505. package/docs-site/zh/tutorials/accept-results.mdx +72 -0
  506. package/docs-site/zh/tutorials/agent-onboarding.mdx +6 -6
  507. package/docs-site/zh/tutorials/authoring.mdx +9 -13
  508. package/docs-site/zh/tutorials/ci-integration.mdx +6 -6
  509. package/docs-site/zh/tutorials/compare-runs.mdx +61 -0
  510. package/docs-site/zh/tutorials/concurrency.mdx +13 -12
  511. package/docs-site/zh/tutorials/configuration.mdx +4 -6
  512. package/docs-site/zh/tutorials/connect-your-agent.mdx +1 -1
  513. package/docs-site/zh/tutorials/control-run-cost.mdx +58 -0
  514. package/docs-site/zh/tutorials/criteria-files.mdx +2 -2
  515. package/docs-site/zh/tutorials/custom-reports.mdx +2 -2
  516. package/docs-site/zh/tutorials/debug-lifecycle-plan.mdx +46 -0
  517. package/docs-site/zh/tutorials/docker-in-docker.mdx +52 -43
  518. package/docs-site/zh/tutorials/eval-groups.mdx +6 -6
  519. package/docs-site/zh/tutorials/evaluation-kinds.mdx +3 -3
  520. package/docs-site/zh/tutorials/experiments.mdx +2 -3
  521. package/docs-site/zh/tutorials/handle-execution-failures.mdx +18 -10
  522. package/docs-site/zh/tutorials/install-custom-sandbox-agent.mdx +16 -8
  523. package/docs-site/zh/tutorials/nixos-managed-dind.mdx +160 -0
  524. package/docs-site/zh/tutorials/plugins.mdx +14 -0
  525. package/docs-site/zh/tutorials/rerun-and-cache.mdx +4 -2
  526. package/docs-site/zh/tutorials/sandbox-agent.mdx +17 -11
  527. package/docs-site/zh/tutorials/sandbox-providers.mdx +17 -13
  528. package/docs-site/zh/tutorials/sandbox-reuse.mdx +12 -19
  529. package/docs-site/zh/tutorials/select-and-preview.mdx +65 -0
  530. package/docs-site/zh/tutorials/verify-judge.mdx +78 -0
  531. package/docs-site/zh/tutorials/viewing-results.mdx +38 -1
  532. package/docs-site/zh/tutorials/write-experiment.mdx +7 -5
  533. package/docs-site/zh/tutorials/write-send.mdx +9 -8
  534. package/package.json +9 -5
  535. package/dist/report/built-in/overview.cjs +0 -44
  536. package/dist/report/built-in/overview.cjs.map +0 -1
  537. package/dist/report/built-in/overview.d.cts +0 -6
  538. package/dist/report/built-in/overview.d.mts +0 -6
  539. package/dist/report/built-in/overview.d.ts +0 -6
  540. package/dist/report/built-in/overview.js +0 -9
  541. package/dist/report/built-in/overview.js.map +0 -1
  542. package/dist/runner/gate-lease.cjs +0 -283
  543. package/dist/runner/gate-lease.cjs.map +0 -1
  544. package/dist/runner/gate-lease.d.cts +0 -62
  545. package/dist/runner/gate-lease.d.mts +0 -62
  546. package/dist/runner/gate-lease.d.ts +0 -62
  547. package/dist/runner/gate-lease.js +0 -22
  548. package/dist/runner/gate-lease.js.map +0 -1
@@ -0,0 +1,151 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.deepSeekHarnessAgent = deepSeekHarnessAgent;
4
+ const effect_1 = require("effect");
5
+ const define_ts_1 = require("../define.cjs");
6
+ const util_ts_1 = require("../util.cjs");
7
+ const send_failures_ts_1 = require("../context/send-failures.cjs");
8
+ const shared_ts_1 = require("./shared.cjs");
9
+ const npm_staged_ts_1 = require("./npm-staged.cjs");
10
+ const commands_ts_1 = require("../sandbox/commands.cjs");
11
+ const shell_ts_1 = require("../sandbox/shell.cjs");
12
+ const exact_npm_plugins_ts_1 = require("./exact-npm-plugins.cjs");
13
+ const coding_cli_versions_ts_1 = require("./coding-cli-versions.cjs");
14
+ const DSH_EVIDENCE_COVERAGE = {
15
+ events: { status: "unavailable", reason: "DSH headless mode exposes only the final assistant text." },
16
+ actions: { status: "unavailable", reason: "DSH headless mode does not expose tool lifecycle events." },
17
+ messages: { status: "complete" },
18
+ usage: { status: "unavailable", reason: "DSH headless mode does not expose token usage." },
19
+ status: { status: "complete" },
20
+ data: { status: "unavailable", reason: "DSH headless mode does not expose a separate Turn.data value." },
21
+ };
22
+ const DSH_PNPM_VERSION = "10.17.1";
23
+ function dshPluginLayer(cliVersion, plugins) {
24
+ const identity = {
25
+ agent: "deepseek-harness-plugins",
26
+ version: cliVersion,
27
+ revision: (0, exact_npm_plugins_ts_1.exactNpmPluginRevision)(plugins),
28
+ };
29
+ const expected = JSON.stringify(plugins);
30
+ const verify = `const fs=require("node:fs"),path=require("node:path");` +
31
+ `const expected=${expected},root=process.env.DSH_HOME+"/profiles/headless";` +
32
+ `const profile=JSON.parse(fs.readFileSync(path.join(root,"package.json"),"utf8"));` +
33
+ `const deps=profile.dependencies||{},names=Object.keys(deps);` +
34
+ `if(JSON.stringify(names)!==JSON.stringify(expected.map(x=>x.name)))process.exit(1);` +
35
+ `const bundles=profile.dsh?.profile?.bundles||[];` +
36
+ `const external=bundles.filter(x=>x!=="@deepseek-ai/dsh-base"&&x!=="@deepseek-ai/dsh-headless");` +
37
+ `if(JSON.stringify(external)!==JSON.stringify(expected.map(x=>x.name)))process.exit(1);` +
38
+ `for(const x of expected){if(deps[x.name]!==x.version)process.exit(1);` +
39
+ `const p=JSON.parse(fs.readFileSync(path.join(root,"node_modules",x.name,"package.json"),"utf8"));` +
40
+ `if(p.name!==x.name||p.version!==x.version||!p.dsh?.bundle)process.exit(1);}`;
41
+ const probeScript = `DSH_HOME="$HOME/.niceeval-dsh" node -e ${(0, shell_ts_1.shellQuote)(verify)}`;
42
+ return {
43
+ ensure: { identity, probe: (0, commands_ts_1.shell)(probeScript) },
44
+ installer: {
45
+ identity,
46
+ installMode: "sandbox-network",
47
+ install: async (sandbox, context) => {
48
+ const specs = plugins.map((plugin) => (0, shell_ts_1.shellQuote)(plugin.spec)).join(" ");
49
+ const script = `set -eu
50
+ export DSH_HOME="$HOME/.niceeval-dsh"
51
+ rm -rf "$DSH_HOME/profiles/headless"
52
+ wrapper_dir="$HOME/.niceeval-dsh/.niceeval-bin"
53
+ mkdir -p "$wrapper_dir"
54
+ printf '%s\n' '#!/bin/sh' 'exec corepack pnpm@${DSH_PNPM_VERSION} "$@"' > "$wrapper_dir/pnpm"
55
+ chmod +x "$wrapper_dir/pnpm"
56
+ PATH="$wrapper_dir:$PATH" dsh plugin --profile headless add ${specs}
57
+ DSH_HOME="$DSH_HOME" dsh --profile headless --dump-config >/dev/null`;
58
+ await sandbox.runShellOrThrow(script, { signal: context.signal });
59
+ },
60
+ },
61
+ };
62
+ }
63
+ function resolveApiKey(config) {
64
+ return config?.apiKey ?? (0, util_ts_1.getEnv)("DSH_API_KEY") ?? (0, util_ts_1.requireEnv)("DEEPSEEK_API_KEY");
65
+ }
66
+ function resolveBaseUrl(config) {
67
+ return config?.baseUrl ?? (0, util_ts_1.getEnv)("DSH_BASE_URL") ?? (0, util_ts_1.getEnv)("DEEPSEEK_BASE_URL");
68
+ }
69
+ /** DeepSeek Harness sandbox adapter backed by its one-shot headless profile. */
70
+ function deepSeekHarnessAgent(config) {
71
+ const version = config?.version ?? coding_cli_versions_ts_1.DEFAULT_DEEPSEEK_HARNESS_CLI_VERSION;
72
+ const plugins = (0, exact_npm_plugins_ts_1.normalizeExactNpmPlugins)(config?.plugins, "deepSeekHarnessAgent plugins");
73
+ const install = (0, npm_staged_ts_1.createNpmCliInstaller)({
74
+ identity: {
75
+ agent: "deepseek-harness",
76
+ version,
77
+ revision: String(coding_cli_versions_ts_1.AGENT_BASELINE_RECIPE_REVISION["deepseek-harness"]),
78
+ },
79
+ packageName: "@deepseek-ai/dsh",
80
+ bin: "dsh",
81
+ });
82
+ const homes = new Map();
83
+ const pluginLayer = plugins.length === 0 ? undefined : dshPluginLayer(version, plugins);
84
+ return (0, define_ts_1.defineSandboxAgent)({
85
+ name: "deepseek-harness",
86
+ evidenceCoverage: DSH_EVIDENCE_COVERAGE,
87
+ ensure: pluginLayer === undefined ? install.ensure : [install.ensure, pluginLayer.ensure],
88
+ installers: pluginLayer === undefined
89
+ ? [install.installer]
90
+ : [install.installer, pluginLayer.installer],
91
+ async setup(sb, ctx) {
92
+ const homeResult = await sb.runShell('test -n "$HOME" && printf "%s" "$HOME"');
93
+ const home = homeResult.stdout.trim();
94
+ if (homeResult.exitCode !== 0 || !home.startsWith("/")) {
95
+ throw new Error("DeepSeek Harness setup requires an absolute sandbox HOME directory");
96
+ }
97
+ const dshHome = `${home}/.niceeval-dsh`;
98
+ homes.set(sb.sandboxId, dshHome);
99
+ const settings = {
100
+ "agent-default-model": {
101
+ provider: "deepseek-official",
102
+ model: ctx.model ?? "deepseek-v4-flash",
103
+ },
104
+ permission: {
105
+ defaultPreset: "danger-full-access",
106
+ },
107
+ };
108
+ await shared_ts_1.shared.writeFile(sb, `${dshHome}/settings.yaml`, JSON.stringify(settings, null, 2));
109
+ },
110
+ send: (input, ctx) => effect_1.Effect.runPromise(effect_1.Effect.scoped(effect_1.Effect.gen(function* () {
111
+ const dshBin = yield* (0, npm_staged_ts_1.resolveAgentBinEffect)(ctx.sandbox, "dsh");
112
+ return yield* effect_1.Effect.tryPromise({
113
+ try: async (signal) => {
114
+ const apiKey = resolveApiKey(config);
115
+ const dshHome = homes.get(ctx.sandbox.sandboxId);
116
+ if (!dshHome)
117
+ throw new Error("DeepSeek Harness setup state is unavailable");
118
+ const env = {
119
+ DEEPSEEK_API_KEY: apiKey,
120
+ DSH_HOME: dshHome,
121
+ ...ctx.telemetry?.env,
122
+ };
123
+ const baseUrl = resolveBaseUrl(config);
124
+ if (baseUrl)
125
+ env.DEEPSEEK_BASE_URL = baseUrl;
126
+ const res = await ctx.sandbox.runCommand(dshBin, ["--profile", "headless", input.text], {
127
+ env,
128
+ sensitiveValues: [apiKey],
129
+ stream: true,
130
+ signal,
131
+ });
132
+ const text = res.stdout.trim();
133
+ if (res.exitCode !== 0 || !text) {
134
+ throw (0, send_failures_ts_1.makeSendFailure)({
135
+ acceptance: "unknown",
136
+ message: res.exitCode !== 0
137
+ ? shared_ts_1.shared.diagnoseFailure(res, [], undefined)
138
+ : "DeepSeek Harness exited successfully without a final assistant message.",
139
+ process: res,
140
+ });
141
+ }
142
+ const events = [{ type: "message", role: "assistant", text }];
143
+ return { events, status: "completed" };
144
+ },
145
+ catch: (cause) => cause,
146
+ });
147
+ })), { signal: ctx.signal }),
148
+ });
149
+ }
150
+ exports.default = deepSeekHarnessAgent;
151
+ //# sourceMappingURL=deepseek-harness.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deepseek-harness.js","sourceRoot":"","sources":["deepseek-harness.ts"],"names":[],"mappings":"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","sourcesContent":["import { Effect } from \"effect\";\nimport { defineSandboxAgent } from \"../define.ts\";\nimport { getEnv, requireEnv } from \"../util.ts\";\nimport type { Agent, EvidenceCoverage, StreamEvent } from \"../types.ts\";\nimport { makeSendFailure } from \"../context/send-failures.ts\";\nimport { shared } from \"./shared.ts\";\nimport { createNpmCliInstaller, resolveAgentBinEffect } from \"./npm-staged.ts\";\nimport { shell } from \"../sandbox/commands.ts\";\nimport { shellQuote } from \"../sandbox/shell.ts\";\nimport type { AgentEnsure, AgentInstaller } from \"./types.ts\";\nimport { exactNpmPluginRevision, normalizeExactNpmPlugins, type ExactNpmPlugin, } from \"./exact-npm-plugins.ts\";\nimport { AGENT_BASELINE_RECIPE_REVISION, DEFAULT_DEEPSEEK_HARNESS_CLI_VERSION, } from \"./coding-cli-versions.ts\";\nconst DSH_EVIDENCE_COVERAGE: EvidenceCoverage = {\n events: { status: \"unavailable\", reason: \"DSH headless mode exposes only the final assistant text.\" },\n actions: { status: \"unavailable\", reason: \"DSH headless mode does not expose tool lifecycle events.\" },\n messages: { status: \"complete\" },\n usage: { status: \"unavailable\", reason: \"DSH headless mode does not expose token usage.\" },\n status: { status: \"complete\" },\n data: { status: \"unavailable\", reason: \"DSH headless mode does not expose a separate Turn.data value.\" },\n};\nexport interface DeepSeekHarnessConfig {\n /** DeepSeek-compatible API key. Defaults to DSH_API_KEY, then DEEPSEEK_API_KEY. */\n apiKey?: string;\n /** DeepSeek-compatible endpoint. Defaults to DSH_BASE_URL, then DEEPSEEK_BASE_URL. */\n baseUrl?: string;\n /** Exact npm version of `@deepseek-ai/dsh`. */\n version?: string;\n /** Native DSH bundles as exact npm package@version declarations. */\n plugins?: readonly string[];\n}\nconst DSH_PNPM_VERSION = \"10.17.1\";\nfunction dshPluginLayer(cliVersion: string, plugins: readonly ExactNpmPlugin[]): {\n ensure: AgentEnsure;\n installer: AgentInstaller;\n} {\n const identity = {\n agent: \"deepseek-harness-plugins\",\n version: cliVersion,\n revision: exactNpmPluginRevision(plugins),\n };\n const expected = JSON.stringify(plugins);\n const verify = `const fs=require(\"node:fs\"),path=require(\"node:path\");` +\n `const expected=${expected},root=process.env.DSH_HOME+\"/profiles/headless\";` +\n `const profile=JSON.parse(fs.readFileSync(path.join(root,\"package.json\"),\"utf8\"));` +\n `const deps=profile.dependencies||{},names=Object.keys(deps);` +\n `if(JSON.stringify(names)!==JSON.stringify(expected.map(x=>x.name)))process.exit(1);` +\n `const bundles=profile.dsh?.profile?.bundles||[];` +\n `const external=bundles.filter(x=>x!==\"@deepseek-ai/dsh-base\"&&x!==\"@deepseek-ai/dsh-headless\");` +\n `if(JSON.stringify(external)!==JSON.stringify(expected.map(x=>x.name)))process.exit(1);` +\n `for(const x of expected){if(deps[x.name]!==x.version)process.exit(1);` +\n `const p=JSON.parse(fs.readFileSync(path.join(root,\"node_modules\",x.name,\"package.json\"),\"utf8\"));` +\n `if(p.name!==x.name||p.version!==x.version||!p.dsh?.bundle)process.exit(1);}`;\n const probeScript = `DSH_HOME=\"$HOME/.niceeval-dsh\" node -e ${shellQuote(verify)}`;\n return {\n ensure: { identity, probe: shell(probeScript) },\n installer: {\n identity,\n installMode: \"sandbox-network\",\n install: async (sandbox, context) => {\n const specs = plugins.map((plugin) => shellQuote(plugin.spec)).join(\" \");\n const script = `set -eu\nexport DSH_HOME=\"$HOME/.niceeval-dsh\"\nrm -rf \"$DSH_HOME/profiles/headless\"\nwrapper_dir=\"$HOME/.niceeval-dsh/.niceeval-bin\"\nmkdir -p \"$wrapper_dir\"\nprintf '%s\\n' '#!/bin/sh' 'exec corepack pnpm@${DSH_PNPM_VERSION} \"$@\"' > \"$wrapper_dir/pnpm\"\nchmod +x \"$wrapper_dir/pnpm\"\nPATH=\"$wrapper_dir:$PATH\" dsh plugin --profile headless add ${specs}\nDSH_HOME=\"$DSH_HOME\" dsh --profile headless --dump-config >/dev/null`;\n await sandbox.runShellOrThrow(script, { signal: context.signal });\n },\n },\n };\n}\nfunction resolveApiKey(config?: DeepSeekHarnessConfig): string {\n return config?.apiKey ?? getEnv(\"DSH_API_KEY\") ?? requireEnv(\"DEEPSEEK_API_KEY\");\n}\nfunction resolveBaseUrl(config?: DeepSeekHarnessConfig): string | undefined {\n return config?.baseUrl ?? getEnv(\"DSH_BASE_URL\") ?? getEnv(\"DEEPSEEK_BASE_URL\");\n}\n/** DeepSeek Harness sandbox adapter backed by its one-shot headless profile. */\nexport function deepSeekHarnessAgent(config?: DeepSeekHarnessConfig): Agent {\n const version = config?.version ?? DEFAULT_DEEPSEEK_HARNESS_CLI_VERSION;\n const plugins = normalizeExactNpmPlugins(config?.plugins, \"deepSeekHarnessAgent plugins\");\n const install = createNpmCliInstaller({\n identity: {\n agent: \"deepseek-harness\",\n version,\n revision: String(AGENT_BASELINE_RECIPE_REVISION[\"deepseek-harness\"]),\n },\n packageName: \"@deepseek-ai/dsh\",\n bin: \"dsh\",\n });\n const homes = new Map<string, string>();\n const pluginLayer = plugins.length === 0 ? undefined : dshPluginLayer(version, plugins);\n return defineSandboxAgent({\n name: \"deepseek-harness\",\n evidenceCoverage: DSH_EVIDENCE_COVERAGE,\n ensure: pluginLayer === undefined ? install.ensure : [install.ensure, pluginLayer.ensure],\n installers: pluginLayer === undefined\n ? [install.installer]\n : [install.installer, pluginLayer.installer],\n async setup(sb, ctx) {\n const homeResult = await sb.runShell('test -n \"$HOME\" && printf \"%s\" \"$HOME\"');\n const home = homeResult.stdout.trim();\n if (homeResult.exitCode !== 0 || !home.startsWith(\"/\")) {\n throw new Error(\"DeepSeek Harness setup requires an absolute sandbox HOME directory\");\n }\n const dshHome = `${home}/.niceeval-dsh`;\n homes.set(sb.sandboxId, dshHome);\n const settings = {\n \"agent-default-model\": {\n provider: \"deepseek-official\",\n model: ctx.model ?? \"deepseek-v4-flash\",\n },\n permission: {\n defaultPreset: \"danger-full-access\",\n },\n };\n await shared.writeFile(sb, `${dshHome}/settings.yaml`, JSON.stringify(settings, null, 2));\n },\n send: (input, ctx) => Effect.runPromise(Effect.scoped(Effect.gen(function* () {\n const dshBin = yield* resolveAgentBinEffect(ctx.sandbox, \"dsh\");\n return yield* Effect.tryPromise({\n try: async (signal) => {\n const apiKey = resolveApiKey(config);\n const dshHome = homes.get(ctx.sandbox.sandboxId);\n if (!dshHome)\n throw new Error(\"DeepSeek Harness setup state is unavailable\");\n const env: globalThis.Record<string, string> = {\n DEEPSEEK_API_KEY: apiKey,\n DSH_HOME: dshHome,\n ...ctx.telemetry?.env,\n };\n const baseUrl = resolveBaseUrl(config);\n if (baseUrl)\n env.DEEPSEEK_BASE_URL = baseUrl;\n const res = await ctx.sandbox.runCommand(dshBin, [\"--profile\", \"headless\", input.text], {\n env,\n sensitiveValues: [apiKey],\n stream: true,\n signal,\n });\n const text = res.stdout.trim();\n if (res.exitCode !== 0 || !text) {\n throw makeSendFailure({\n acceptance: \"unknown\",\n message: res.exitCode !== 0\n ? shared.diagnoseFailure(res, [], undefined)\n : \"DeepSeek Harness exited successfully without a final assistant message.\",\n process: res,\n });\n }\n const events: StreamEvent[] = [{ type: \"message\", role: \"assistant\", text }];\n return { events, status: \"completed\" as const };\n },\n catch: (cause) => cause,\n });\n })), { signal: ctx.signal }),\n });\n}\nexport default deepSeekHarnessAgent;\n"]}
@@ -0,0 +1,14 @@
1
+ import type { Agent } from "../types.cjs";
2
+ export interface DeepSeekHarnessConfig {
3
+ /** DeepSeek-compatible API key. Defaults to DSH_API_KEY, then DEEPSEEK_API_KEY. */
4
+ apiKey?: string;
5
+ /** DeepSeek-compatible endpoint. Defaults to DSH_BASE_URL, then DEEPSEEK_BASE_URL. */
6
+ baseUrl?: string;
7
+ /** Exact npm version of `@deepseek-ai/dsh`. */
8
+ version?: string;
9
+ /** Native DSH bundles as exact npm package@version declarations. */
10
+ plugins?: readonly string[];
11
+ }
12
+ /** DeepSeek Harness sandbox adapter backed by its one-shot headless profile. */
13
+ export declare function deepSeekHarnessAgent(config?: DeepSeekHarnessConfig): Agent;
14
+ export default deepSeekHarnessAgent;
@@ -0,0 +1,14 @@
1
+ import type { Agent } from "../types.mjs";
2
+ export interface DeepSeekHarnessConfig {
3
+ /** DeepSeek-compatible API key. Defaults to DSH_API_KEY, then DEEPSEEK_API_KEY. */
4
+ apiKey?: string;
5
+ /** DeepSeek-compatible endpoint. Defaults to DSH_BASE_URL, then DEEPSEEK_BASE_URL. */
6
+ baseUrl?: string;
7
+ /** Exact npm version of `@deepseek-ai/dsh`. */
8
+ version?: string;
9
+ /** Native DSH bundles as exact npm package@version declarations. */
10
+ plugins?: readonly string[];
11
+ }
12
+ /** DeepSeek Harness sandbox adapter backed by its one-shot headless profile. */
13
+ export declare function deepSeekHarnessAgent(config?: DeepSeekHarnessConfig): Agent;
14
+ export default deepSeekHarnessAgent;
@@ -0,0 +1,14 @@
1
+ import type { Agent } from "../types.js";
2
+ export interface DeepSeekHarnessConfig {
3
+ /** DeepSeek-compatible API key. Defaults to DSH_API_KEY, then DEEPSEEK_API_KEY. */
4
+ apiKey?: string;
5
+ /** DeepSeek-compatible endpoint. Defaults to DSH_BASE_URL, then DEEPSEEK_BASE_URL. */
6
+ baseUrl?: string;
7
+ /** Exact npm version of `@deepseek-ai/dsh`. */
8
+ version?: string;
9
+ /** Native DSH bundles as exact npm package@version declarations. */
10
+ plugins?: readonly string[];
11
+ }
12
+ /** DeepSeek Harness sandbox adapter backed by its one-shot headless profile. */
13
+ export declare function deepSeekHarnessAgent(config?: DeepSeekHarnessConfig): Agent;
14
+ export default deepSeekHarnessAgent;
@@ -0,0 +1,7 @@
1
+ import { createRequire as __niceevalCreateRequire } from "node:module";
2
+ const __niceevalRequire = __niceevalCreateRequire(import.meta.url);
3
+ const __niceevalCanonical = __niceevalRequire("./deepseek-harness.cjs");
4
+ const __niceevalExport0 = __niceevalCanonical["deepSeekHarnessAgent"];
5
+ export { __niceevalExport0 as deepSeekHarnessAgent };
6
+ export default __niceevalCanonical.default;
7
+ //# sourceMappingURL=deepseek-harness.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deepseek-harness.js","sources":[],"names":[],"mappings":""}
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.normalizeExactNpmPlugins = normalizeExactNpmPlugins;
4
+ exports.exactNpmPluginRevision = exactNpmPluginRevision;
5
+ const PACKAGE = String.raw `(?:@[a-z0-9][a-z0-9._-]*/)?[a-z0-9][a-z0-9._-]*`;
6
+ const VERSION = String.raw `\d+\.\d+\.\d+(?:-[0-9A-Za-z.-]+)?(?:\+[0-9A-Za-z.-]+)?`;
7
+ const EXACT_NPM_SPEC = new RegExp(`^(${PACKAGE})@(${VERSION})$`);
8
+ /** Keep declaration order, but reject tags/ranges/duplicates before a Sandbox is created. */
9
+ function normalizeExactNpmPlugins(input, label) {
10
+ const seen = new Set();
11
+ return Object.freeze((input ?? []).map((raw, index) => {
12
+ const spec = raw.trim();
13
+ const match = EXACT_NPM_SPEC.exec(spec);
14
+ if (match === null) {
15
+ throw new TypeError(`${label}[${index}] must be an exact npm package@version (tags and ranges are not accepted).`);
16
+ }
17
+ const [, name, version] = match;
18
+ if (seen.has(name))
19
+ throw new TypeError(`${label} contains duplicate package ${name}.`);
20
+ seen.add(name);
21
+ return Object.freeze({ name, version, spec });
22
+ }));
23
+ }
24
+ /** Readable identity: the normalized declaration itself is persisted in agentInstalls/config identity. */
25
+ function exactNpmPluginRevision(plugins) {
26
+ return `exact-npm-v1:${plugins.map((plugin) => plugin.spec).join(",")}`;
27
+ }
28
+ //# sourceMappingURL=exact-npm-plugins.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"exact-npm-plugins.js","sourceRoot":"","sources":["exact-npm-plugins.ts"],"names":[],"mappings":";;AAUA,4DAcC;AAED,wDAEC;AAtBD,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,CAAC,iDAAiD,CAAC;AAC7E,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,CAAC,wDAAwD,CAAC;AACpF,MAAM,cAAc,GAAG,IAAI,MAAM,CAAC,KAAK,OAAO,MAAM,OAAO,IAAI,CAAC,CAAC;AACjE,6FAA6F;AAC7F,SAAgB,wBAAwB,CAAC,KAAoC,EAAE,KAAa;IACxF,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE;QAClD,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;QACxB,MAAM,KAAK,GAAG,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACxC,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;YACjB,MAAM,IAAI,SAAS,CAAC,GAAG,KAAK,IAAI,KAAK,4EAA4E,CAAC,CAAC;QACvH,CAAC;QACD,MAAM,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,GAAG,KAAK,CAAC;QAChC,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC;YACd,MAAM,IAAI,SAAS,CAAC,GAAG,KAAK,+BAA+B,IAAI,GAAG,CAAC,CAAC;QACxE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACf,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;IAClD,CAAC,CAAC,CAAC,CAAC;AACR,CAAC;AACD,0GAA0G;AAC1G,SAAgB,sBAAsB,CAAC,OAAkC;IACrE,OAAO,gBAAgB,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;AAC5E,CAAC","sourcesContent":["/** A provider-owned native plugin pinned to one immutable npm version. */\nexport interface ExactNpmPlugin {\n readonly name: string;\n readonly version: string;\n readonly spec: string;\n}\nconst PACKAGE = String.raw `(?:@[a-z0-9][a-z0-9._-]*/)?[a-z0-9][a-z0-9._-]*`;\nconst VERSION = String.raw `\\d+\\.\\d+\\.\\d+(?:-[0-9A-Za-z.-]+)?(?:\\+[0-9A-Za-z.-]+)?`;\nconst EXACT_NPM_SPEC = new RegExp(`^(${PACKAGE})@(${VERSION})$`);\n/** Keep declaration order, but reject tags/ranges/duplicates before a Sandbox is created. */\nexport function normalizeExactNpmPlugins(input: readonly string[] | undefined, label: string): readonly ExactNpmPlugin[] {\n const seen = new Set<string>();\n return Object.freeze((input ?? []).map((raw, index) => {\n const spec = raw.trim();\n const match = EXACT_NPM_SPEC.exec(spec);\n if (match === null) {\n throw new TypeError(`${label}[${index}] must be an exact npm package@version (tags and ranges are not accepted).`);\n }\n const [, name, version] = match;\n if (seen.has(name))\n throw new TypeError(`${label} contains duplicate package ${name}.`);\n seen.add(name);\n return Object.freeze({ name, version, spec });\n }));\n}\n/** Readable identity: the normalized declaration itself is persisted in agentInstalls/config identity. */\nexport function exactNpmPluginRevision(plugins: readonly ExactNpmPlugin[]): string {\n return `exact-npm-v1:${plugins.map((plugin) => plugin.spec).join(\",\")}`;\n}\n"]}
@@ -0,0 +1,10 @@
1
+ /** A provider-owned native plugin pinned to one immutable npm version. */
2
+ export interface ExactNpmPlugin {
3
+ readonly name: string;
4
+ readonly version: string;
5
+ readonly spec: string;
6
+ }
7
+ /** Keep declaration order, but reject tags/ranges/duplicates before a Sandbox is created. */
8
+ export declare function normalizeExactNpmPlugins(input: readonly string[] | undefined, label: string): readonly ExactNpmPlugin[];
9
+ /** Readable identity: the normalized declaration itself is persisted in agentInstalls/config identity. */
10
+ export declare function exactNpmPluginRevision(plugins: readonly ExactNpmPlugin[]): string;
@@ -0,0 +1,10 @@
1
+ /** A provider-owned native plugin pinned to one immutable npm version. */
2
+ export interface ExactNpmPlugin {
3
+ readonly name: string;
4
+ readonly version: string;
5
+ readonly spec: string;
6
+ }
7
+ /** Keep declaration order, but reject tags/ranges/duplicates before a Sandbox is created. */
8
+ export declare function normalizeExactNpmPlugins(input: readonly string[] | undefined, label: string): readonly ExactNpmPlugin[];
9
+ /** Readable identity: the normalized declaration itself is persisted in agentInstalls/config identity. */
10
+ export declare function exactNpmPluginRevision(plugins: readonly ExactNpmPlugin[]): string;
@@ -0,0 +1,10 @@
1
+ /** A provider-owned native plugin pinned to one immutable npm version. */
2
+ export interface ExactNpmPlugin {
3
+ readonly name: string;
4
+ readonly version: string;
5
+ readonly spec: string;
6
+ }
7
+ /** Keep declaration order, but reject tags/ranges/duplicates before a Sandbox is created. */
8
+ export declare function normalizeExactNpmPlugins(input: readonly string[] | undefined, label: string): readonly ExactNpmPlugin[];
9
+ /** Readable identity: the normalized declaration itself is persisted in agentInstalls/config identity. */
10
+ export declare function exactNpmPluginRevision(plugins: readonly ExactNpmPlugin[]): string;
@@ -0,0 +1,8 @@
1
+ import { createRequire as __niceevalCreateRequire } from "node:module";
2
+ const __niceevalRequire = __niceevalCreateRequire(import.meta.url);
3
+ const __niceevalCanonical = __niceevalRequire("./exact-npm-plugins.cjs");
4
+ const __niceevalExport0 = __niceevalCanonical["exactNpmPluginRevision"];
5
+ export { __niceevalExport0 as exactNpmPluginRevision };
6
+ const __niceevalExport1 = __niceevalCanonical["normalizeExactNpmPlugins"];
7
+ export { __niceevalExport1 as normalizeExactNpmPlugins };
8
+ //# sourceMappingURL=exact-npm-plugins.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"exact-npm-plugins.js","sources":[],"names":[],"mappings":""}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.openClawAgent = exports.hermesAgent = exports.openCodeAgent = exports.bubAgent = exports.codexAgent = exports.claudeCodeAgent = exports.BUILTIN_AGENTS = exports.aiSdkAgent = exports.turnFromAiSdk = exports.deltaStream = exports.driveFrameStream = exports.createLangGraphEventStream = exports.createCodexThreadEventStream = exports.createPiAgentEventStream = exports.createClaudeSdkEventStream = exports.sseJsonFrames = exports.turnFromResponses = exports.turnFromChatCompletion = exports.responsesEvidenceCoverage = exports.chatCompletionEvidenceCoverage = exports.uiMessageStreamAgent = exports.mapCodexSpans = exports.heuristicTag = exports.tagSpan = exports.normalizeExternalCause = exports.externalCauseText = exports.externalCauseMessageChain = exports.sendFailureText = exports.makeSendFailure = exports.opaqueCommandProjection = exports.notCommandProjection = exports.normalizeLogicalCommand = exports.commandProjection = exports.LOGICAL_COMMAND_NORMALIZER = exports.completeEvidenceCoverage = exports.agentBin = exports.createNpmCliInstaller = exports.shared = exports.createSessionSlot = exports.defineSandboxAgent = exports.defineAgent = void 0;
3
+ exports.deepSeekHarnessAgent = exports.ompAgent = exports.openClawAgent = exports.hermesAgent = exports.openCodeAgent = exports.bubAgent = exports.codexAgent = exports.claudeCodeAgent = exports.BUILTIN_AGENTS = exports.aiSdkAgent = exports.turnFromAiSdk = exports.deltaStream = exports.driveFrameStream = exports.createLangGraphEventStream = exports.createCodexThreadEventStream = exports.createPiAgentEventStream = exports.createClaudeSdkEventStream = exports.sseJsonFrames = exports.turnFromResponses = exports.turnFromChatCompletion = exports.responsesEvidenceCoverage = exports.chatCompletionEvidenceCoverage = exports.uiMessageStreamAgent = exports.mapCodexSpans = exports.heuristicTag = exports.tagSpan = exports.normalizeExternalCause = exports.externalCauseText = exports.externalCauseMessageChain = exports.sendFailureText = exports.makeSendFailure = exports.opaqueCommandProjection = exports.notCommandProjection = exports.normalizeLogicalCommand = exports.commandProjection = exports.LOGICAL_COMMAND_NORMALIZER = exports.completeEvidenceCoverage = exports.agentBin = exports.createNpmCliInstaller = exports.shared = exports.createSessionSlot = exports.defineSandboxAgent = exports.defineAgent = void 0;
4
4
  // niceeval/adapter 公开导出:「连到哪个 AI」相关的类型 + 内置 adapter + 自定义 adapter 的入口。
5
5
  var define_ts_1 = require("../define.cjs");
6
6
  Object.defineProperty(exports, "defineAgent", { enumerable: true, get: function () { return define_ts_1.defineAgent; } });
@@ -89,4 +89,8 @@ var hermes_ts_1 = require("./hermes.cjs");
89
89
  Object.defineProperty(exports, "hermesAgent", { enumerable: true, get: function () { return hermes_ts_1.hermesAgent; } });
90
90
  var openclaw_ts_1 = require("./openclaw.cjs");
91
91
  Object.defineProperty(exports, "openClawAgent", { enumerable: true, get: function () { return openclaw_ts_1.openClawAgent; } });
92
+ var omp_ts_1 = require("./omp.cjs");
93
+ Object.defineProperty(exports, "ompAgent", { enumerable: true, get: function () { return omp_ts_1.ompAgent; } });
94
+ var deepseek_harness_ts_1 = require("./deepseek-harness.cjs");
95
+ Object.defineProperty(exports, "deepSeekHarnessAgent", { enumerable: true, get: function () { return deepseek_harness_ts_1.deepSeekHarnessAgent; } });
92
96
  //# sourceMappingURL=index.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":";;;AAAA,uEAAuE;AACvE,0CAA+D;AAAtD,wGAAA,WAAW,OAAA;AAAE,+GAAA,kBAAkB,OAAA;AACxC,qDAAsD;AAA7C,oHAAA,iBAAiB,OAAA;AAC1B,yCAAqC;AAA5B,mGAAA,MAAM,OAAA;AAEf,iDAAkE;AAAzD,sHAAA,qBAAqB,OAAA;AAAE,yGAAA,QAAQ,OAAA;AAExC,8DAA8D;AAC9D,iEAAiE;AACjE,yDAAqE;AAA5D,uHAAA,wBAAwB,OAAA;AAEjC,qDAAqD;AACrD,2EAA2E;AAC3E,uDAAuD;AACvD,uEAAuK;AAA9J,mIAAA,0BAA0B,OAAA;AAAE,0HAAA,iBAAiB,OAAA;AAAE,gIAAA,uBAAuB,OAAA;AAAE,6HAAA,oBAAoB,OAAA;AAAE,gIAAA,uBAAuB,OAAA;AAE9H,+DAA+D;AAC/D,qDAAqD;AACrD,wCAAwC;AACxC,qDAAqD;AACrD,gEAA+E;AAAtE,mHAAA,eAAe,OAAA;AAAE,mHAAA,eAAe,OAAA;AAGzC,iEAAmH;AAA1G,8HAAA,yBAAyB,OAAA;AAAE,sHAAA,iBAAiB,OAAA;AAAE,2HAAA,sBAAsB,OAAA;AAE7E,iEAAiE;AACjE,mEAAmE;AACnE,2DAA2D;AAC3D,yEAAyE;AACzE,0DAAkE;AAAzD,uGAAA,OAAO,OAAA;AAAE,4GAAA,YAAY,OAAA;AAE9B,0DAA8D;AAArD,yGAAA,aAAa,OAAA;AACtB,+DAA8D;AAArD,4HAAA,oBAAoB,OAAA;AAE7B,qDAAqD;AACrD,yBAAyB;AACzB,uDAA2I;AAAlI,kIAAA,8BAA8B,OAAA;AAAE,6HAAA,yBAAyB,OAAA;AAAE,0HAAA,sBAAsB,OAAA;AAAE,qHAAA,iBAAiB,OAAA;AAE7G,0DAA0D;AAC1D,mDAAqI;AAA5H,+GAAA,aAAa,OAAA;AAAE,4HAAA,0BAA0B,OAAA;AAAE,0HAAA,wBAAwB,OAAA;AAAE,8HAAA,4BAA4B,OAAA;AAE1G,2DAA2D;AAC3D,+CAA4D;AAAnD,0HAAA,0BAA0B,OAAA;AAEnC,6EAA6E;AAC7E,qDAAqD;AACrD,iDAAiD;AACjD,+DAA+D;AAC/D,+CAA+D;AAAtD,gHAAA,gBAAgB,OAAA;AAAE,2GAAA,WAAW,OAAA;AAEtC,mEAAmE;AACnE,yDAAyD;AACzD,yCAAwD;AAA/C,0GAAA,aAAa,OAAA;AAAE,uGAAA,UAAU,OAAA;AAElC,2CAA8C;AAArC,4GAAA,cAAc,OAAA;AACvB,mDAAmD;AAA1C,iHAAA,eAAe,OAAA;AACxB,uCAAwC;AAA/B,sGAAA,UAAU,OAAA;AACnB,mCAAoC;AAA3B,kGAAA,QAAQ,OAAA;AACjB,6CAA8C;AAArC,4GAAA,aAAa,OAAA;AACtB,yCAA0C;AAAjC,wGAAA,WAAW,OAAA;AACpB,6CAA8C;AAArC,4GAAA,aAAa,OAAA","sourcesContent":["// niceeval/adapter 公开导出:「连到哪个 AI」相关的类型 + 内置 adapter + 自定义 adapter 的入口。\nexport { defineAgent, defineSandboxAgent } from \"../define.ts\";\nexport { createSessionSlot } from \"./session-slot.ts\";\nexport { shared } from \"./shared.ts\";\nexport type { Shared } from \"./shared.ts\";\nexport { createNpmCliInstaller, agentBin } from \"./npm-staged.ts\";\nexport type { NpmCliInstallerOptions } from \"./npm-staged.ts\";\n// 证据覆盖声明:官方 SDK 适配器声明全通道 complete 用 completeEvidenceCoverage;\n// 手写映射按实际情况声明(见 docs/feature/adapters/architecture/evidence.md)。\nexport { completeEvidenceCoverage } from \"../assertions/coverage.ts\";\nexport type { EvidenceCoverageStatus, EvidenceCoverageEntry, EvidenceCoverage, TurnEvidenceCoverage, } from \"../types.ts\";\n// tool operation 的 command 分类只能由 Adapter 根据原生协议事实产生。\n// structured argv 走 commandProjection() 与同一 logical-command/v1 normalizer;\n// 无法安全取得 argv 时显式 opaque,确认不是 command 时显式 not-command。\nexport { LOGICAL_COMMAND_NORMALIZER, commandProjection, normalizeLogicalCommand, notCommandProjection, opaqueCommandProjection, } from \"../o11y/command-projection.ts\";\nexport type { CommandProjection, LogicalCommandInvocation, LogicalCommandNormalizer, OriginalCommandInvocation, OriginalCommandOpaqueReason, } from \"../o11y/types.ts\";\n// 执行失败分类:`Agent.classifySendFailure` 认的结构化 envelope 与同源摘要。两轴词表\n// (FailureClass / FailureScope)与包根导出的是同一个形状——adapter\n// 作者与 eval 作者各自的入口拿到同一份类型。判据、分类链与重试执行体见\n// docs/feature/error-classification/architecture.md。\nexport { makeSendFailure, sendFailureText } from \"../context/send-failures.ts\";\nexport type { SendFailure, SendFailureClassifier } from \"../context/send-failures.ts\";\nexport type { FailureClass, FailureScope } from \"../shared/failure-class.ts\";\nexport { externalCauseMessageChain, externalCauseText, normalizeExternalCause } from \"../shared/external-cause.ts\";\nexport type { ExternalCause, ExternalCauseFact, ExternalCauseLink } from \"../shared/external-cause.ts\";\n// span → canonical GenAI 归一(只服务瀑布图,不喂断言)。私有埋点写自己的 spanMapper 时用:\n// tagSpan 把判定写回 span(原属性只增不改),heuristicTag 是通用兜底判定;mapCodexSpans 是\n// 现成的参考实现(无侵入接 codex 后端时直接声明 `spanMapper: mapCodexSpans`)。\n// 映射目标(什么属性亮起瀑布图的什么)见 docs-site/zh/tutorials/connect-otel.mdx「瀑布图画得准不准」。\nexport { tagSpan, heuristicTag } from \"../o11y/otlp/canonical.ts\";\nexport type { SpanTag } from \"../o11y/otlp/canonical.ts\";\nexport { mapCodexSpans } from \"../o11y/otlp/mappers/codex.ts\";\nexport { uiMessageStreamAgent } from \"./ui-message-stream.ts\";\nexport type { UiMessageStreamAgentOptions, UIMessageLike, UIMessagePartLike } from \"./ui-message-stream.ts\";\n// 两种 OpenAI 响应形状(不限于 OpenAI 官方,任何声明兼容这两种协议形状的服务都能用)的\n// 官方转换器:整段响应 → Turn,零映射。\nexport { chatCompletionEvidenceCoverage, responsesEvidenceCoverage, turnFromChatCompletion, turnFromResponses, } from \"./openai-compat.ts\";\nexport type { ChatCompletionLike, ChatCompletionCustomToolCallLike, ChatCompletionFunctionToolCallLike, ChatCompletionMessageLike, ChatCompletionToolCallLike, ChatCompletionUnknownToolCallLike, ChatCompletionUsageLike, ResponseFunctionCallItemLike, ResponseLike, ResponseMessageItemLike, ResponseOutputItemLike, ResponseOutputTextLike, ResponseUsageLike, } from \"./openai-compat.ts\";\n// SDK 原生事件流 → 标准事件的官方转换器(无侵入 adapter 只剩传输粘合)+ 通用 SSE 读帧器。\nexport { sseJsonFrames, createClaudeSdkEventStream, createPiAgentEventStream, createCodexThreadEventStream } from \"./sdk-streams.ts\";\nexport type { SseFrameCursor, ClaudeSdkMessageLike, ClaudeSdkStream, PiAgentEventLike, PiAgentStream, CodexThreadEventLike, CodexThreadStream, } from \"./sdk-streams.ts\";\n// LangGraph 官方事件流转换器(不绑定 transport,不提供 langGraphAgent 工厂)。\nexport { createLangGraphEventStream } from \"./langgraph.ts\";\nexport type { LangGraphEventLike, LangGraphContentBlockLike, LangGraphStream } from \"./langgraph.ts\";\n// 通用「拼装方式」件:逐帧驱动循环、逐 token/参数增量累加器。见 docs-site/zh/tutorials/write-send.mdx——\n// 这些和任何具体协议无关,自己写 adapter 时优先拿这些拼,只有 transport(怎么发)与\n// 「帧类型 → 操作」这张映射表才是真正要手写的。会话续接与 HITL 停轮现场不再是可选件,\n// 而是 ctx.session(AgentSession)本身的 typed slot 与 id/capture 存取器。\nexport { driveFrameStream, deltaStream } from \"./streaming.ts\";\nexport type { FrameReducer, FrameHook, DeltaOp, DeltaStreamSpec } from \"./streaming.ts\";\n// tracing 管线的内置实现 aiSdkOtel() 在 `niceeval/adapter/otel`(独立子路径,不从这里\n// re-export):OTel 三件套是可选 peer 依赖,只有 import 那个入口的项目才需要安装。\nexport { turnFromAiSdk, aiSdkAgent } from \"./ai-sdk.ts\";\nexport type { AiSdkAgentOptions, AiSdkGenerateContext, AiSdkResultLike, AiSdkStepLike, AiSdkTelemetrySettings, AiSdkToolCallLike, AiSdkToolResultLike, AiSdkTracing, AiSdkTurn, AiSdkTurnTelemetry, AiSdkUsageLike, } from \"./ai-sdk.ts\";\nexport { BUILTIN_AGENTS } from \"./builtin.ts\";\nexport { claudeCodeAgent } from \"./claude-code.ts\";\nexport { codexAgent } from \"./codex.ts\";\nexport { bubAgent } from \"./bub.ts\";\nexport { openCodeAgent } from \"./opencode.ts\";\nexport { hermesAgent } from \"./hermes.ts\";\nexport { openClawAgent } from \"./openclaw.ts\";\nexport type { ClaudeCodeConfig, ClaudeCodePluginSpec } from \"./claude-code.ts\";\nexport type { CodexConfig, CodexPluginSpec } from \"./codex.ts\";\nexport type { BubConfig, PythonPluginSpec } from \"./bub.ts\";\nexport type { OpenCodeConfig } from \"./opencode.ts\";\nexport type { HermesConfig } from \"./hermes.ts\";\nexport type { OpenClawConfig } from \"./openclaw.ts\";\nexport type { Agent, AgentContext, AgentIdentity, AgentInstallMode, AgentArtifactPlatform, AgentStagedArtifact, AgentEnsureOutcome, AgentEnsure, AgentInstaller, AgentArtifactContext, AgentInstallContext, StagedAgentInstallContext, DirectAgent, DirectAgentDef, DirectAgentSetup, DirectAgentTeardown, AgentSession, SessionSlot, AgentSetup, AgentSetupManifest, AgentSetupSkill, AgentTeardown, AgentTracing, SpanMapper, Telemetry, SandboxAgentDef, SandboxAgent, SandboxAgentContext, SandboxAgentSetupContext, McpServer, SkillSpec, } from \"../types.ts\";\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":";;;AAAA,uEAAuE;AACvE,0CAA+D;AAAtD,wGAAA,WAAW,OAAA;AAAE,+GAAA,kBAAkB,OAAA;AACxC,qDAAsD;AAA7C,oHAAA,iBAAiB,OAAA;AAC1B,yCAAqC;AAA5B,mGAAA,MAAM,OAAA;AAEf,iDAAkE;AAAzD,sHAAA,qBAAqB,OAAA;AAAE,yGAAA,QAAQ,OAAA;AAExC,8DAA8D;AAC9D,iEAAiE;AACjE,yDAAqE;AAA5D,uHAAA,wBAAwB,OAAA;AAEjC,qDAAqD;AACrD,2EAA2E;AAC3E,uDAAuD;AACvD,uEAAuK;AAA9J,mIAAA,0BAA0B,OAAA;AAAE,0HAAA,iBAAiB,OAAA;AAAE,gIAAA,uBAAuB,OAAA;AAAE,6HAAA,oBAAoB,OAAA;AAAE,gIAAA,uBAAuB,OAAA;AAE9H,+DAA+D;AAC/D,qDAAqD;AACrD,wCAAwC;AACxC,qDAAqD;AACrD,gEAA+E;AAAtE,mHAAA,eAAe,OAAA;AAAE,mHAAA,eAAe,OAAA;AAGzC,iEAAmH;AAA1G,8HAAA,yBAAyB,OAAA;AAAE,sHAAA,iBAAiB,OAAA;AAAE,2HAAA,sBAAsB,OAAA;AAE7E,iEAAiE;AACjE,mEAAmE;AACnE,2DAA2D;AAC3D,yEAAyE;AACzE,0DAAkE;AAAzD,uGAAA,OAAO,OAAA;AAAE,4GAAA,YAAY,OAAA;AAE9B,0DAA8D;AAArD,yGAAA,aAAa,OAAA;AACtB,+DAA8D;AAArD,4HAAA,oBAAoB,OAAA;AAE7B,qDAAqD;AACrD,yBAAyB;AACzB,uDAA2I;AAAlI,kIAAA,8BAA8B,OAAA;AAAE,6HAAA,yBAAyB,OAAA;AAAE,0HAAA,sBAAsB,OAAA;AAAE,qHAAA,iBAAiB,OAAA;AAE7G,0DAA0D;AAC1D,mDAAqI;AAA5H,+GAAA,aAAa,OAAA;AAAE,4HAAA,0BAA0B,OAAA;AAAE,0HAAA,wBAAwB,OAAA;AAAE,8HAAA,4BAA4B,OAAA;AAE1G,2DAA2D;AAC3D,+CAA4D;AAAnD,0HAAA,0BAA0B,OAAA;AAEnC,6EAA6E;AAC7E,qDAAqD;AACrD,iDAAiD;AACjD,+DAA+D;AAC/D,+CAA+D;AAAtD,gHAAA,gBAAgB,OAAA;AAAE,2GAAA,WAAW,OAAA;AAEtC,mEAAmE;AACnE,yDAAyD;AACzD,yCAAwD;AAA/C,0GAAA,aAAa,OAAA;AAAE,uGAAA,UAAU,OAAA;AAElC,2CAA8C;AAArC,4GAAA,cAAc,OAAA;AACvB,mDAAmD;AAA1C,iHAAA,eAAe,OAAA;AACxB,uCAAwC;AAA/B,sGAAA,UAAU,OAAA;AACnB,mCAAoC;AAA3B,kGAAA,QAAQ,OAAA;AACjB,6CAA8C;AAArC,4GAAA,aAAa,OAAA;AACtB,yCAA0C;AAAjC,wGAAA,WAAW,OAAA;AACpB,6CAA8C;AAArC,4GAAA,aAAa,OAAA;AACtB,mCAAoC;AAA3B,kGAAA,QAAQ,OAAA;AACjB,6DAA6D;AAApD,2HAAA,oBAAoB,OAAA","sourcesContent":["// niceeval/adapter 公开导出:「连到哪个 AI」相关的类型 + 内置 adapter + 自定义 adapter 的入口。\nexport { defineAgent, defineSandboxAgent } from \"../define.ts\";\nexport { createSessionSlot } from \"./session-slot.ts\";\nexport { shared } from \"./shared.ts\";\nexport type { Shared } from \"./shared.ts\";\nexport { createNpmCliInstaller, agentBin } from \"./npm-staged.ts\";\nexport type { NpmCliInstallerOptions } from \"./npm-staged.ts\";\n// 证据覆盖声明:官方 SDK 适配器声明全通道 complete 用 completeEvidenceCoverage;\n// 手写映射按实际情况声明(见 docs/feature/adapters/architecture/evidence.md)。\nexport { completeEvidenceCoverage } from \"../assertions/coverage.ts\";\nexport type { EvidenceCoverageStatus, EvidenceCoverageEntry, EvidenceCoverage, TurnEvidenceCoverage, } from \"../types.ts\";\n// tool operation 的 command 分类只能由 Adapter 根据原生协议事实产生。\n// structured argv 走 commandProjection() 与同一 logical-command/v1 normalizer;\n// 无法安全取得 argv 时显式 opaque,确认不是 command 时显式 not-command。\nexport { LOGICAL_COMMAND_NORMALIZER, commandProjection, normalizeLogicalCommand, notCommandProjection, opaqueCommandProjection, } from \"../o11y/command-projection.ts\";\nexport type { CommandProjection, LogicalCommandInvocation, LogicalCommandNormalizer, OriginalCommandInvocation, OriginalCommandOpaqueReason, } from \"../o11y/types.ts\";\n// 执行失败分类:`Agent.classifySendFailure` 认的结构化 envelope 与同源摘要。两轴词表\n// (FailureClass / FailureScope)与包根导出的是同一个形状——adapter\n// 作者与 eval 作者各自的入口拿到同一份类型。判据、分类链与重试执行体见\n// docs/feature/error-classification/architecture.md。\nexport { makeSendFailure, sendFailureText } from \"../context/send-failures.ts\";\nexport type { SendFailure, SendFailureClassifier } from \"../context/send-failures.ts\";\nexport type { FailureClass, FailureScope } from \"../shared/failure-class.ts\";\nexport { externalCauseMessageChain, externalCauseText, normalizeExternalCause } from \"../shared/external-cause.ts\";\nexport type { ExternalCause, ExternalCauseFact, ExternalCauseLink } from \"../shared/external-cause.ts\";\n// span → canonical GenAI 归一(只服务瀑布图,不喂断言)。私有埋点写自己的 spanMapper 时用:\n// tagSpan 把判定写回 span(原属性只增不改),heuristicTag 是通用兜底判定;mapCodexSpans 是\n// 现成的参考实现(无侵入接 codex 后端时直接声明 `spanMapper: mapCodexSpans`)。\n// 映射目标(什么属性亮起瀑布图的什么)见 docs-site/zh/tutorials/connect-otel.mdx「瀑布图画得准不准」。\nexport { tagSpan, heuristicTag } from \"../o11y/otlp/canonical.ts\";\nexport type { SpanTag } from \"../o11y/otlp/canonical.ts\";\nexport { mapCodexSpans } from \"../o11y/otlp/mappers/codex.ts\";\nexport { uiMessageStreamAgent } from \"./ui-message-stream.ts\";\nexport type { UiMessageStreamAgentOptions, UIMessageLike, UIMessagePartLike } from \"./ui-message-stream.ts\";\n// 两种 OpenAI 响应形状(不限于 OpenAI 官方,任何声明兼容这两种协议形状的服务都能用)的\n// 官方转换器:整段响应 → Turn,零映射。\nexport { chatCompletionEvidenceCoverage, responsesEvidenceCoverage, turnFromChatCompletion, turnFromResponses, } from \"./openai-compat.ts\";\nexport type { ChatCompletionLike, ChatCompletionCustomToolCallLike, ChatCompletionFunctionToolCallLike, ChatCompletionMessageLike, ChatCompletionToolCallLike, ChatCompletionUnknownToolCallLike, ChatCompletionUsageLike, ResponseFunctionCallItemLike, ResponseLike, ResponseMessageItemLike, ResponseOutputItemLike, ResponseOutputTextLike, ResponseUsageLike, } from \"./openai-compat.ts\";\n// SDK 原生事件流 → 标准事件的官方转换器(无侵入 adapter 只剩传输粘合)+ 通用 SSE 读帧器。\nexport { sseJsonFrames, createClaudeSdkEventStream, createPiAgentEventStream, createCodexThreadEventStream } from \"./sdk-streams.ts\";\nexport type { SseFrameCursor, ClaudeSdkMessageLike, ClaudeSdkStream, PiAgentEventLike, PiAgentStream, CodexThreadEventLike, CodexThreadStream, } from \"./sdk-streams.ts\";\n// LangGraph 官方事件流转换器(不绑定 transport,不提供 langGraphAgent 工厂)。\nexport { createLangGraphEventStream } from \"./langgraph.ts\";\nexport type { LangGraphEventLike, LangGraphContentBlockLike, LangGraphStream } from \"./langgraph.ts\";\n// 通用「拼装方式」件:逐帧驱动循环、逐 token/参数增量累加器。见 docs-site/zh/tutorials/write-send.mdx——\n// 这些和任何具体协议无关,自己写 adapter 时优先拿这些拼,只有 transport(怎么发)与\n// 「帧类型 → 操作」这张映射表才是真正要手写的。会话续接与 HITL 停轮现场不再是可选件,\n// 而是 ctx.session(AgentSession)本身的 typed slot 与 id/capture 存取器。\nexport { driveFrameStream, deltaStream } from \"./streaming.ts\";\nexport type { FrameReducer, FrameHook, DeltaOp, DeltaStreamSpec } from \"./streaming.ts\";\n// tracing 管线的内置实现 aiSdkOtel() 在 `niceeval/adapter/otel`(独立子路径,不从这里\n// re-export):OTel 三件套是可选 peer 依赖,只有 import 那个入口的项目才需要安装。\nexport { turnFromAiSdk, aiSdkAgent } from \"./ai-sdk.ts\";\nexport type { AiSdkAgentOptions, AiSdkGenerateContext, AiSdkResultLike, AiSdkStepLike, AiSdkTelemetrySettings, AiSdkToolCallLike, AiSdkToolResultLike, AiSdkTracing, AiSdkTurn, AiSdkTurnTelemetry, AiSdkUsageLike, } from \"./ai-sdk.ts\";\nexport { BUILTIN_AGENTS } from \"./builtin.ts\";\nexport { claudeCodeAgent } from \"./claude-code.ts\";\nexport { codexAgent } from \"./codex.ts\";\nexport { bubAgent } from \"./bub.ts\";\nexport { openCodeAgent } from \"./opencode.ts\";\nexport { hermesAgent } from \"./hermes.ts\";\nexport { openClawAgent } from \"./openclaw.ts\";\nexport { ompAgent } from \"./omp.ts\";\nexport { deepSeekHarnessAgent } from \"./deepseek-harness.ts\";\nexport type { ClaudeCodeConfig, ClaudeCodePluginSpec } from \"./claude-code.ts\";\nexport type { CodexConfig, CodexPluginSpec } from \"./codex.ts\";\nexport type { BubConfig, PythonPluginSpec } from \"./bub.ts\";\nexport type { OpenCodeConfig } from \"./opencode.ts\";\nexport type { HermesConfig } from \"./hermes.ts\";\nexport type { OpenClawConfig } from \"./openclaw.ts\";\nexport type { OmpConfig } from \"./omp.ts\";\nexport type { DeepSeekHarnessConfig } from \"./deepseek-harness.ts\";\nexport type { Agent, AgentContext, AgentIdentity, AgentInstallMode, AgentArtifactPlatform, AgentStagedArtifact, AgentEnsureOutcome, AgentEnsure, AgentInstaller, AgentArtifactContext, AgentInstallContext, StagedAgentInstallContext, DirectAgent, DirectAgentDef, DirectAgentSetup, DirectAgentTeardown, AgentSession, SessionSlot, AgentSetup, AgentSetupManifest, AgentSetupSkill, AgentTeardown, AgentTracing, SpanMapper, Telemetry, SandboxAgentDef, SandboxAgent, SandboxAgentContext, SandboxAgentSetupContext, McpServer, SkillSpec, } from \"../types.ts\";\n"]}
@@ -35,10 +35,14 @@ export { bubAgent } from "./bub.cjs";
35
35
  export { openCodeAgent } from "./opencode.cjs";
36
36
  export { hermesAgent } from "./hermes.cjs";
37
37
  export { openClawAgent } from "./openclaw.cjs";
38
+ export { ompAgent } from "./omp.cjs";
39
+ export { deepSeekHarnessAgent } from "./deepseek-harness.cjs";
38
40
  export type { ClaudeCodeConfig, ClaudeCodePluginSpec } from "./claude-code.cjs";
39
41
  export type { CodexConfig, CodexPluginSpec } from "./codex.cjs";
40
42
  export type { BubConfig, PythonPluginSpec } from "./bub.cjs";
41
43
  export type { OpenCodeConfig } from "./opencode.cjs";
42
44
  export type { HermesConfig } from "./hermes.cjs";
43
45
  export type { OpenClawConfig } from "./openclaw.cjs";
46
+ export type { OmpConfig } from "./omp.cjs";
47
+ export type { DeepSeekHarnessConfig } from "./deepseek-harness.cjs";
44
48
  export type { Agent, AgentContext, AgentIdentity, AgentInstallMode, AgentArtifactPlatform, AgentStagedArtifact, AgentEnsureOutcome, AgentEnsure, AgentInstaller, AgentArtifactContext, AgentInstallContext, StagedAgentInstallContext, DirectAgent, DirectAgentDef, DirectAgentSetup, DirectAgentTeardown, AgentSession, SessionSlot, AgentSetup, AgentSetupManifest, AgentSetupSkill, AgentTeardown, AgentTracing, SpanMapper, Telemetry, SandboxAgentDef, SandboxAgent, SandboxAgentContext, SandboxAgentSetupContext, McpServer, SkillSpec, } from "../types.cjs";
@@ -35,10 +35,14 @@ export { bubAgent } from "./bub.mjs";
35
35
  export { openCodeAgent } from "./opencode.mjs";
36
36
  export { hermesAgent } from "./hermes.mjs";
37
37
  export { openClawAgent } from "./openclaw.mjs";
38
+ export { ompAgent } from "./omp.mjs";
39
+ export { deepSeekHarnessAgent } from "./deepseek-harness.mjs";
38
40
  export type { ClaudeCodeConfig, ClaudeCodePluginSpec } from "./claude-code.mjs";
39
41
  export type { CodexConfig, CodexPluginSpec } from "./codex.mjs";
40
42
  export type { BubConfig, PythonPluginSpec } from "./bub.mjs";
41
43
  export type { OpenCodeConfig } from "./opencode.mjs";
42
44
  export type { HermesConfig } from "./hermes.mjs";
43
45
  export type { OpenClawConfig } from "./openclaw.mjs";
46
+ export type { OmpConfig } from "./omp.mjs";
47
+ export type { DeepSeekHarnessConfig } from "./deepseek-harness.mjs";
44
48
  export type { Agent, AgentContext, AgentIdentity, AgentInstallMode, AgentArtifactPlatform, AgentStagedArtifact, AgentEnsureOutcome, AgentEnsure, AgentInstaller, AgentArtifactContext, AgentInstallContext, StagedAgentInstallContext, DirectAgent, DirectAgentDef, DirectAgentSetup, DirectAgentTeardown, AgentSession, SessionSlot, AgentSetup, AgentSetupManifest, AgentSetupSkill, AgentTeardown, AgentTracing, SpanMapper, Telemetry, SandboxAgentDef, SandboxAgent, SandboxAgentContext, SandboxAgentSetupContext, McpServer, SkillSpec, } from "../types.mjs";
@@ -35,10 +35,14 @@ export { bubAgent } from "./bub.js";
35
35
  export { openCodeAgent } from "./opencode.js";
36
36
  export { hermesAgent } from "./hermes.js";
37
37
  export { openClawAgent } from "./openclaw.js";
38
+ export { ompAgent } from "./omp.js";
39
+ export { deepSeekHarnessAgent } from "./deepseek-harness.js";
38
40
  export type { ClaudeCodeConfig, ClaudeCodePluginSpec } from "./claude-code.js";
39
41
  export type { CodexConfig, CodexPluginSpec } from "./codex.js";
40
42
  export type { BubConfig, PythonPluginSpec } from "./bub.js";
41
43
  export type { OpenCodeConfig } from "./opencode.js";
42
44
  export type { HermesConfig } from "./hermes.js";
43
45
  export type { OpenClawConfig } from "./openclaw.js";
46
+ export type { OmpConfig } from "./omp.js";
47
+ export type { DeepSeekHarnessConfig } from "./deepseek-harness.js";
44
48
  export type { Agent, AgentContext, AgentIdentity, AgentInstallMode, AgentArtifactPlatform, AgentStagedArtifact, AgentEnsureOutcome, AgentEnsure, AgentInstaller, AgentArtifactContext, AgentInstallContext, StagedAgentInstallContext, DirectAgent, DirectAgentDef, DirectAgentSetup, DirectAgentTeardown, AgentSession, SessionSlot, AgentSetup, AgentSetupManifest, AgentSetupSkill, AgentTeardown, AgentTracing, SpanMapper, Telemetry, SandboxAgentDef, SandboxAgent, SandboxAgentContext, SandboxAgentSetupContext, McpServer, SkillSpec, } from "../types.js";
@@ -33,54 +33,58 @@ const __niceevalExport14 = __niceevalCanonical["createPiAgentEventStream"];
33
33
  export { __niceevalExport14 as createPiAgentEventStream };
34
34
  const __niceevalExport15 = __niceevalCanonical["createSessionSlot"];
35
35
  export { __niceevalExport15 as createSessionSlot };
36
- const __niceevalExport16 = __niceevalCanonical["defineAgent"];
37
- export { __niceevalExport16 as defineAgent };
38
- const __niceevalExport17 = __niceevalCanonical["defineSandboxAgent"];
39
- export { __niceevalExport17 as defineSandboxAgent };
40
- const __niceevalExport18 = __niceevalCanonical["deltaStream"];
41
- export { __niceevalExport18 as deltaStream };
42
- const __niceevalExport19 = __niceevalCanonical["driveFrameStream"];
43
- export { __niceevalExport19 as driveFrameStream };
44
- const __niceevalExport20 = __niceevalCanonical["externalCauseMessageChain"];
45
- export { __niceevalExport20 as externalCauseMessageChain };
46
- const __niceevalExport21 = __niceevalCanonical["externalCauseText"];
47
- export { __niceevalExport21 as externalCauseText };
48
- const __niceevalExport22 = __niceevalCanonical["hermesAgent"];
49
- export { __niceevalExport22 as hermesAgent };
50
- const __niceevalExport23 = __niceevalCanonical["heuristicTag"];
51
- export { __niceevalExport23 as heuristicTag };
52
- const __niceevalExport24 = __niceevalCanonical["makeSendFailure"];
53
- export { __niceevalExport24 as makeSendFailure };
54
- const __niceevalExport25 = __niceevalCanonical["mapCodexSpans"];
55
- export { __niceevalExport25 as mapCodexSpans };
56
- const __niceevalExport26 = __niceevalCanonical["normalizeExternalCause"];
57
- export { __niceevalExport26 as normalizeExternalCause };
58
- const __niceevalExport27 = __niceevalCanonical["normalizeLogicalCommand"];
59
- export { __niceevalExport27 as normalizeLogicalCommand };
60
- const __niceevalExport28 = __niceevalCanonical["notCommandProjection"];
61
- export { __niceevalExport28 as notCommandProjection };
62
- const __niceevalExport29 = __niceevalCanonical["opaqueCommandProjection"];
63
- export { __niceevalExport29 as opaqueCommandProjection };
64
- const __niceevalExport30 = __niceevalCanonical["openClawAgent"];
65
- export { __niceevalExport30 as openClawAgent };
66
- const __niceevalExport31 = __niceevalCanonical["openCodeAgent"];
67
- export { __niceevalExport31 as openCodeAgent };
68
- const __niceevalExport32 = __niceevalCanonical["responsesEvidenceCoverage"];
69
- export { __niceevalExport32 as responsesEvidenceCoverage };
70
- const __niceevalExport33 = __niceevalCanonical["sendFailureText"];
71
- export { __niceevalExport33 as sendFailureText };
72
- const __niceevalExport34 = __niceevalCanonical["shared"];
73
- export { __niceevalExport34 as shared };
74
- const __niceevalExport35 = __niceevalCanonical["sseJsonFrames"];
75
- export { __niceevalExport35 as sseJsonFrames };
76
- const __niceevalExport36 = __niceevalCanonical["tagSpan"];
77
- export { __niceevalExport36 as tagSpan };
78
- const __niceevalExport37 = __niceevalCanonical["turnFromAiSdk"];
79
- export { __niceevalExport37 as turnFromAiSdk };
80
- const __niceevalExport38 = __niceevalCanonical["turnFromChatCompletion"];
81
- export { __niceevalExport38 as turnFromChatCompletion };
82
- const __niceevalExport39 = __niceevalCanonical["turnFromResponses"];
83
- export { __niceevalExport39 as turnFromResponses };
84
- const __niceevalExport40 = __niceevalCanonical["uiMessageStreamAgent"];
85
- export { __niceevalExport40 as uiMessageStreamAgent };
36
+ const __niceevalExport16 = __niceevalCanonical["deepSeekHarnessAgent"];
37
+ export { __niceevalExport16 as deepSeekHarnessAgent };
38
+ const __niceevalExport17 = __niceevalCanonical["defineAgent"];
39
+ export { __niceevalExport17 as defineAgent };
40
+ const __niceevalExport18 = __niceevalCanonical["defineSandboxAgent"];
41
+ export { __niceevalExport18 as defineSandboxAgent };
42
+ const __niceevalExport19 = __niceevalCanonical["deltaStream"];
43
+ export { __niceevalExport19 as deltaStream };
44
+ const __niceevalExport20 = __niceevalCanonical["driveFrameStream"];
45
+ export { __niceevalExport20 as driveFrameStream };
46
+ const __niceevalExport21 = __niceevalCanonical["externalCauseMessageChain"];
47
+ export { __niceevalExport21 as externalCauseMessageChain };
48
+ const __niceevalExport22 = __niceevalCanonical["externalCauseText"];
49
+ export { __niceevalExport22 as externalCauseText };
50
+ const __niceevalExport23 = __niceevalCanonical["hermesAgent"];
51
+ export { __niceevalExport23 as hermesAgent };
52
+ const __niceevalExport24 = __niceevalCanonical["heuristicTag"];
53
+ export { __niceevalExport24 as heuristicTag };
54
+ const __niceevalExport25 = __niceevalCanonical["makeSendFailure"];
55
+ export { __niceevalExport25 as makeSendFailure };
56
+ const __niceevalExport26 = __niceevalCanonical["mapCodexSpans"];
57
+ export { __niceevalExport26 as mapCodexSpans };
58
+ const __niceevalExport27 = __niceevalCanonical["normalizeExternalCause"];
59
+ export { __niceevalExport27 as normalizeExternalCause };
60
+ const __niceevalExport28 = __niceevalCanonical["normalizeLogicalCommand"];
61
+ export { __niceevalExport28 as normalizeLogicalCommand };
62
+ const __niceevalExport29 = __niceevalCanonical["notCommandProjection"];
63
+ export { __niceevalExport29 as notCommandProjection };
64
+ const __niceevalExport30 = __niceevalCanonical["ompAgent"];
65
+ export { __niceevalExport30 as ompAgent };
66
+ const __niceevalExport31 = __niceevalCanonical["opaqueCommandProjection"];
67
+ export { __niceevalExport31 as opaqueCommandProjection };
68
+ const __niceevalExport32 = __niceevalCanonical["openClawAgent"];
69
+ export { __niceevalExport32 as openClawAgent };
70
+ const __niceevalExport33 = __niceevalCanonical["openCodeAgent"];
71
+ export { __niceevalExport33 as openCodeAgent };
72
+ const __niceevalExport34 = __niceevalCanonical["responsesEvidenceCoverage"];
73
+ export { __niceevalExport34 as responsesEvidenceCoverage };
74
+ const __niceevalExport35 = __niceevalCanonical["sendFailureText"];
75
+ export { __niceevalExport35 as sendFailureText };
76
+ const __niceevalExport36 = __niceevalCanonical["shared"];
77
+ export { __niceevalExport36 as shared };
78
+ const __niceevalExport37 = __niceevalCanonical["sseJsonFrames"];
79
+ export { __niceevalExport37 as sseJsonFrames };
80
+ const __niceevalExport38 = __niceevalCanonical["tagSpan"];
81
+ export { __niceevalExport38 as tagSpan };
82
+ const __niceevalExport39 = __niceevalCanonical["turnFromAiSdk"];
83
+ export { __niceevalExport39 as turnFromAiSdk };
84
+ const __niceevalExport40 = __niceevalCanonical["turnFromChatCompletion"];
85
+ export { __niceevalExport40 as turnFromChatCompletion };
86
+ const __niceevalExport41 = __niceevalCanonical["turnFromResponses"];
87
+ export { __niceevalExport41 as turnFromResponses };
88
+ const __niceevalExport42 = __niceevalCanonical["uiMessageStreamAgent"];
89
+ export { __niceevalExport42 as uiMessageStreamAgent };
86
90
  //# sourceMappingURL=index.js.map