@xingular/harness 0.1.7 → 1.0.0

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 (683) hide show
  1. package/CHANGELOG.md +97 -1
  2. package/LICENSE +202 -0
  3. package/NOTICE.md +22 -0
  4. package/README.md +187 -85
  5. package/THIRD_PARTY_LICENSES.md +942 -0
  6. package/dist/cli.js +13701 -13498
  7. package/dist/sdk/accounts/accounts.d.ts +165 -0
  8. package/dist/sdk/accounts/accounts.js +730 -0
  9. package/dist/sdk/accounts/choices.d.ts +23 -0
  10. package/dist/sdk/accounts/choices.js +62 -0
  11. package/dist/sdk/accounts/env.d.ts +78 -0
  12. package/dist/sdk/accounts/env.js +294 -0
  13. package/dist/sdk/accounts/secrets.d.ts +16 -0
  14. package/dist/sdk/accounts/secrets.js +40 -0
  15. package/dist/sdk/accounts/store.d.ts +114 -0
  16. package/dist/sdk/accounts/store.js +255 -0
  17. package/dist/sdk/browser/config.d.ts +16 -0
  18. package/dist/sdk/browser/config.js +22 -0
  19. package/dist/sdk/browser/diagnostics.d.ts +4 -0
  20. package/dist/sdk/browser/diagnostics.js +38 -0
  21. package/dist/sdk/browser/index.d.ts +17 -0
  22. package/dist/sdk/browser/index.js +65 -0
  23. package/dist/sdk/browser/network.d.ts +10 -0
  24. package/dist/sdk/browser/network.js +59 -0
  25. package/dist/sdk/browser/session.d.ts +84 -0
  26. package/dist/sdk/browser/session.js +192 -0
  27. package/dist/sdk/browser/tools.d.ts +8 -0
  28. package/dist/sdk/browser/tools.js +329 -0
  29. package/dist/sdk/capabilities/api.d.ts +22 -0
  30. package/dist/sdk/capabilities/api.js +54 -0
  31. package/dist/sdk/capabilities/runSnapshot.d.ts +18 -0
  32. package/dist/sdk/capabilities/runSnapshot.js +47 -0
  33. package/dist/sdk/capabilities/types.d.ts +29 -0
  34. package/dist/sdk/capabilities/types.js +1 -0
  35. package/dist/sdk/cli.d.ts +2 -0
  36. package/dist/sdk/cli.js +142 -0
  37. package/dist/sdk/core/bus.d.ts +23 -0
  38. package/dist/sdk/core/bus.js +76 -0
  39. package/dist/sdk/core/caller.d.ts +22 -0
  40. package/dist/sdk/core/caller.js +16 -0
  41. package/dist/sdk/core/changes.d.ts +15 -0
  42. package/dist/sdk/core/changes.js +15 -0
  43. package/dist/sdk/core/effort.d.ts +2 -0
  44. package/dist/sdk/core/effort.js +1 -0
  45. package/dist/sdk/core/env.d.ts +18 -0
  46. package/dist/sdk/core/env.js +8 -0
  47. package/dist/sdk/core/errors.d.ts +15 -0
  48. package/dist/sdk/core/errors.js +24 -0
  49. package/dist/sdk/core/frontmatter.d.ts +12 -0
  50. package/dist/sdk/core/frontmatter.js +50 -0
  51. package/dist/sdk/core/fs.d.ts +18 -0
  52. package/dist/sdk/core/fs.js +106 -0
  53. package/dist/sdk/core/index.d.ts +24 -0
  54. package/dist/sdk/core/index.js +187 -0
  55. package/dist/sdk/core/path.d.ts +7 -0
  56. package/dist/sdk/core/path.js +79 -0
  57. package/dist/sdk/core/projects.d.ts +18 -0
  58. package/dist/sdk/core/projects.js +67 -0
  59. package/dist/sdk/core/secrets.d.ts +2 -0
  60. package/dist/sdk/core/secrets.js +5 -0
  61. package/dist/sdk/core/text.d.ts +7 -0
  62. package/dist/sdk/core/text.js +40 -0
  63. package/dist/sdk/doctor/checks.d.ts +5 -0
  64. package/dist/sdk/doctor/checks.js +208 -0
  65. package/dist/sdk/doctor/probe.d.ts +4 -0
  66. package/dist/sdk/doctor/probe.js +92 -0
  67. package/dist/sdk/doctor/service.d.ts +23 -0
  68. package/dist/sdk/doctor/service.js +144 -0
  69. package/dist/sdk/doctor/types.d.ts +141 -0
  70. package/dist/sdk/doctor/types.js +29 -0
  71. package/dist/sdk/harness.d.ts +133 -0
  72. package/dist/sdk/harness.js +299 -0
  73. package/dist/sdk/history/lessonPrompt.d.ts +2 -0
  74. package/dist/sdk/history/lessonPrompt.js +15 -0
  75. package/dist/sdk/history/lessons.d.ts +52 -0
  76. package/dist/sdk/history/lessons.js +173 -0
  77. package/dist/sdk/history/recall.d.ts +68 -0
  78. package/dist/sdk/history/recall.js +199 -0
  79. package/dist/sdk/history/trajectory.d.ts +7 -0
  80. package/dist/sdk/history/trajectory.js +216 -0
  81. package/dist/sdk/hub/catalog.json +123 -0
  82. package/dist/sdk/hub/cli.d.ts +7 -0
  83. package/dist/sdk/hub/cli.js +81 -0
  84. package/dist/sdk/hub/hub.d.ts +74 -0
  85. package/dist/sdk/hub/hub.js +474 -0
  86. package/dist/sdk/hub/schema.d.ts +280 -0
  87. package/dist/sdk/hub/schema.js +78 -0
  88. package/dist/sdk/index.d.ts +63 -0
  89. package/dist/sdk/index.js +48 -0
  90. package/dist/sdk/mcp/connections.d.ts +83 -0
  91. package/dist/sdk/mcp/connections.js +669 -0
  92. package/dist/sdk/mcp/manager.d.ts +26 -0
  93. package/dist/sdk/mcp/manager.js +124 -0
  94. package/dist/sdk/mcp/oauth.d.ts +35 -0
  95. package/dist/sdk/mcp/oauth.js +171 -0
  96. package/dist/sdk/mcp/scopeMigration.d.ts +19 -0
  97. package/dist/sdk/mcp/scopeMigration.js +198 -0
  98. package/dist/sdk/mcp/service.d.ts +160 -0
  99. package/dist/sdk/mcp/service.js +510 -0
  100. package/dist/sdk/mcp/types.d.ts +131 -0
  101. package/dist/sdk/mcp/types.js +49 -0
  102. package/dist/sdk/pi/runtime.d.ts +13 -0
  103. package/dist/sdk/pi/runtime.js +31 -0
  104. package/dist/sdk/plugins/api.d.ts +66 -0
  105. package/dist/sdk/plugins/api.js +155 -0
  106. package/dist/sdk/plugins/attachments.d.ts +46 -0
  107. package/dist/sdk/plugins/attachments.js +111 -0
  108. package/dist/sdk/plugins/builtin.d.ts +6 -0
  109. package/dist/sdk/plugins/builtin.js +68 -0
  110. package/dist/sdk/plugins/catalogue.d.ts +29 -0
  111. package/dist/sdk/plugins/catalogue.js +196 -0
  112. package/dist/sdk/plugins/cli.d.ts +13 -0
  113. package/dist/sdk/plugins/cli.js +187 -0
  114. package/dist/sdk/plugins/discover.d.ts +42 -0
  115. package/dist/sdk/plugins/discover.js +115 -0
  116. package/dist/sdk/plugins/firstParty.d.ts +50 -0
  117. package/dist/sdk/plugins/firstParty.js +113 -0
  118. package/dist/sdk/plugins/hooks.d.ts +94 -0
  119. package/dist/sdk/plugins/hooks.js +162 -0
  120. package/dist/sdk/plugins/identity.d.ts +19 -0
  121. package/dist/sdk/plugins/identity.js +48 -0
  122. package/dist/sdk/plugins/install.d.ts +20 -0
  123. package/dist/sdk/plugins/install.js +110 -0
  124. package/dist/sdk/plugins/inventory.d.ts +22 -0
  125. package/dist/sdk/plugins/inventory.js +110 -0
  126. package/dist/sdk/plugins/manifest.d.ts +13 -0
  127. package/dist/sdk/plugins/manifest.js +56 -0
  128. package/dist/sdk/plugins/plugins.d.ts +104 -0
  129. package/dist/sdk/plugins/plugins.js +164 -0
  130. package/dist/sdk/plugins/runtime.d.ts +9 -0
  131. package/dist/sdk/plugins/runtime.js +95 -0
  132. package/dist/sdk/plugins/trust.d.ts +44 -0
  133. package/dist/sdk/plugins/trust.js +120 -0
  134. package/dist/sdk/plugins/types.d.ts +159 -0
  135. package/dist/sdk/plugins/types.js +7 -0
  136. package/dist/sdk/prompt/compile.d.ts +174 -0
  137. package/dist/sdk/prompt/compile.js +396 -0
  138. package/dist/sdk/refine/cli.d.ts +4 -0
  139. package/dist/sdk/refine/cli.js +186 -0
  140. package/dist/sdk/refine/demo.d.ts +21 -0
  141. package/dist/sdk/refine/demo.js +114 -0
  142. package/dist/sdk/refine/evidence.d.ts +55 -0
  143. package/dist/sdk/refine/evidence.js +330 -0
  144. package/dist/sdk/refine/host.d.ts +51 -0
  145. package/dist/sdk/refine/host.js +76 -0
  146. package/dist/sdk/refine/ledger.d.ts +48 -0
  147. package/dist/sdk/refine/ledger.js +76 -0
  148. package/dist/sdk/refine/library.d.ts +55 -0
  149. package/dist/sdk/refine/library.js +177 -0
  150. package/dist/sdk/refine/pi.d.ts +72 -0
  151. package/dist/sdk/refine/pi.js +248 -0
  152. package/dist/sdk/refine/prompts.d.ts +45 -0
  153. package/dist/sdk/refine/prompts.js +390 -0
  154. package/dist/sdk/refine/recursion.d.ts +113 -0
  155. package/dist/sdk/refine/recursion.js +258 -0
  156. package/dist/sdk/refine/runner.d.ts +81 -0
  157. package/dist/sdk/refine/runner.js +150 -0
  158. package/dist/sdk/refine/selection.d.ts +57 -0
  159. package/dist/sdk/refine/selection.js +251 -0
  160. package/dist/sdk/refine/service.d.ts +84 -0
  161. package/dist/sdk/refine/service.js +165 -0
  162. package/dist/sdk/refine/suite.d.ts +67 -0
  163. package/dist/sdk/refine/suite.js +174 -0
  164. package/dist/sdk/refine/trajectory.d.ts +9 -0
  165. package/dist/sdk/refine/trajectory.js +68 -0
  166. package/dist/sdk/refine/types.d.ts +77 -0
  167. package/dist/sdk/refine/types.js +10 -0
  168. package/dist/sdk/server/methods.d.ts +3 -0
  169. package/dist/sdk/server/methods.js +370 -0
  170. package/dist/sdk/server/remote.d.ts +19 -0
  171. package/dist/sdk/server/remote.js +84 -0
  172. package/dist/sdk/server/rpc.d.ts +20 -0
  173. package/dist/sdk/server/rpc.js +102 -0
  174. package/dist/sdk/server/serve.d.ts +10 -0
  175. package/dist/sdk/server/serve.js +18 -0
  176. package/dist/sdk/sessions/approvals.d.ts +47 -0
  177. package/dist/sdk/sessions/approvals.js +119 -0
  178. package/dist/sdk/sessions/continuation.d.ts +48 -0
  179. package/dist/sdk/sessions/continuation.js +85 -0
  180. package/dist/sdk/sessions/contracts.d.ts +534 -0
  181. package/dist/sdk/sessions/contracts.js +299 -0
  182. package/dist/sdk/sessions/extensionUi.d.ts +19 -0
  183. package/dist/sdk/sessions/extensionUi.js +64 -0
  184. package/dist/sdk/sessions/history.d.ts +16 -0
  185. package/dist/sdk/sessions/history.js +68 -0
  186. package/dist/sdk/sessions/lineageJoin.d.ts +2 -0
  187. package/dist/sdk/sessions/lineageJoin.js +61 -0
  188. package/dist/sdk/sessions/planMode.d.ts +36 -0
  189. package/dist/sdk/sessions/planMode.js +84 -0
  190. package/dist/sdk/sessions/policy.d.ts +43 -0
  191. package/dist/sdk/sessions/policy.js +1 -0
  192. package/dist/sdk/sessions/pricing.d.ts +34 -0
  193. package/dist/sdk/sessions/pricing.js +40 -0
  194. package/dist/sdk/sessions/reasoningSummaries.d.ts +11 -0
  195. package/dist/sdk/sessions/reasoningSummaries.js +61 -0
  196. package/dist/sdk/sessions/registry.d.ts +102 -0
  197. package/dist/sdk/sessions/registry.js +383 -0
  198. package/dist/sdk/sessions/runIndex.d.ts +21 -0
  199. package/dist/sdk/sessions/runIndex.js +65 -0
  200. package/dist/sdk/sessions/runStore.d.ts +66 -0
  201. package/dist/sdk/sessions/runStore.js +335 -0
  202. package/dist/sdk/sessions/runner.d.ts +213 -0
  203. package/dist/sdk/sessions/runner.js +589 -0
  204. package/dist/sdk/sessions/sessions.d.ts +140 -0
  205. package/dist/sdk/sessions/sessions.js +394 -0
  206. package/dist/sdk/sessions/subagentService.d.ts +41 -0
  207. package/dist/sdk/sessions/subagentService.js +247 -0
  208. package/dist/sdk/sessions/subagents.d.ts +50 -0
  209. package/dist/sdk/sessions/subagents.js +68 -0
  210. package/dist/sdk/terminal/accountsMenu.d.ts +46 -0
  211. package/dist/sdk/terminal/accountsMenu.js +392 -0
  212. package/dist/sdk/terminal/cli.d.ts +20 -0
  213. package/dist/sdk/terminal/cli.js +121 -0
  214. package/dist/sdk/terminal/client.d.ts +15 -0
  215. package/dist/sdk/terminal/client.js +126 -0
  216. package/dist/sdk/terminal/control.d.ts +4 -0
  217. package/dist/sdk/terminal/control.js +25 -0
  218. package/dist/sdk/terminal/controller.d.ts +72 -0
  219. package/dist/sdk/terminal/controller.js +351 -0
  220. package/dist/sdk/terminal/hubMenu.d.ts +10 -0
  221. package/dist/sdk/terminal/hubMenu.js +34 -0
  222. package/dist/sdk/terminal/launch.d.ts +5 -0
  223. package/dist/sdk/terminal/launch.js +27 -0
  224. package/dist/sdk/terminal/logs.d.ts +14 -0
  225. package/dist/sdk/terminal/logs.js +59 -0
  226. package/dist/sdk/terminal/piExtension.d.ts +6 -0
  227. package/dist/sdk/terminal/piExtension.js +392 -0
  228. package/dist/sdk/terminal/pluginMenu.d.ts +34 -0
  229. package/dist/sdk/terminal/pluginMenu.js +101 -0
  230. package/dist/sdk/terminal/socket.d.ts +70 -0
  231. package/dist/sdk/terminal/socket.js +256 -0
  232. package/dist/sdk/terminal/standalone.d.ts +18 -0
  233. package/dist/sdk/terminal/standalone.js +146 -0
  234. package/dist/sdk/terminal/terminals.d.ts +176 -0
  235. package/dist/sdk/terminal/terminals.js +767 -0
  236. package/dist/sdk/terminal/trajectory.d.ts +10 -0
  237. package/dist/sdk/terminal/trajectory.js +30 -0
  238. package/dist/sdk/terminal/tui/chrome.d.ts +64 -0
  239. package/dist/sdk/terminal/tui/chrome.js +169 -0
  240. package/dist/sdk/terminal/tui/clipboardFiles.d.ts +11 -0
  241. package/dist/sdk/terminal/tui/clipboardFiles.js +74 -0
  242. package/dist/sdk/terminal/tui/commandPages.d.ts +7 -0
  243. package/dist/sdk/terminal/tui/commandPages.js +63 -0
  244. package/dist/sdk/terminal/tui/commands.d.ts +42 -0
  245. package/dist/sdk/terminal/tui/commands.js +276 -0
  246. package/dist/sdk/terminal/tui/dialogGeometry.d.ts +27 -0
  247. package/dist/sdk/terminal/tui/dialogGeometry.js +50 -0
  248. package/dist/sdk/terminal/tui/dialogs.d.ts +75 -0
  249. package/dist/sdk/terminal/tui/dialogs.js +363 -0
  250. package/dist/sdk/terminal/tui/keybindings.d.ts +11 -0
  251. package/dist/sdk/terminal/tui/keybindings.js +49 -0
  252. package/dist/sdk/terminal/tui/list.d.ts +73 -0
  253. package/dist/sdk/terminal/tui/list.js +196 -0
  254. package/dist/sdk/terminal/tui/modeChoices.d.ts +42 -0
  255. package/dist/sdk/terminal/tui/modeChoices.js +70 -0
  256. package/dist/sdk/terminal/tui/modelPicker.d.ts +55 -0
  257. package/dist/sdk/terminal/tui/modelPicker.js +155 -0
  258. package/dist/sdk/terminal/tui/mouse.d.ts +3 -0
  259. package/dist/sdk/terminal/tui/mouse.js +3 -0
  260. package/dist/sdk/terminal/tui/page.d.ts +14 -0
  261. package/dist/sdk/terminal/tui/page.js +1 -0
  262. package/dist/sdk/terminal/tui/pageOverlay.d.ts +27 -0
  263. package/dist/sdk/terminal/tui/pageOverlay.js +145 -0
  264. package/dist/sdk/terminal/tui/pages/accountsPage.d.ts +54 -0
  265. package/dist/sdk/terminal/tui/pages/accountsPage.js +181 -0
  266. package/dist/sdk/terminal/tui/pages/componentsPage.d.ts +47 -0
  267. package/dist/sdk/terminal/tui/pages/componentsPage.js +119 -0
  268. package/dist/sdk/terminal/tui/pages/doctorPage.d.ts +37 -0
  269. package/dist/sdk/terminal/tui/pages/doctorPage.js +145 -0
  270. package/dist/sdk/terminal/tui/pages/hubPage.d.ts +39 -0
  271. package/dist/sdk/terminal/tui/pages/hubPage.js +128 -0
  272. package/dist/sdk/terminal/tui/pages/logPage.d.ts +38 -0
  273. package/dist/sdk/terminal/tui/pages/logPage.js +189 -0
  274. package/dist/sdk/terminal/tui/pages/permissionsPage.d.ts +44 -0
  275. package/dist/sdk/terminal/tui/pages/permissionsPage.js +124 -0
  276. package/dist/sdk/terminal/tui/pages/pluginsPage.d.ts +57 -0
  277. package/dist/sdk/terminal/tui/pages/pluginsPage.js +243 -0
  278. package/dist/sdk/terminal/tui/pages/settingsPage.d.ts +55 -0
  279. package/dist/sdk/terminal/tui/pages/settingsPage.js +88 -0
  280. package/dist/sdk/terminal/tui/pages/trajectoryPage.d.ts +58 -0
  281. package/dist/sdk/terminal/tui/pages/trajectoryPage.js +377 -0
  282. package/dist/sdk/terminal/tui/piAdapter.d.ts +18 -0
  283. package/dist/sdk/terminal/tui/piAdapter.js +48 -0
  284. package/dist/sdk/terminal/tui/planMode.d.ts +2 -0
  285. package/dist/sdk/terminal/tui/planMode.js +2 -0
  286. package/dist/sdk/terminal/tui/questionPicker.d.ts +20 -0
  287. package/dist/sdk/terminal/tui/questionPicker.js +150 -0
  288. package/dist/sdk/terminal/tui/questions.d.ts +19 -0
  289. package/dist/sdk/terminal/tui/questions.js +42 -0
  290. package/dist/sdk/terminal/tui/runtime.d.ts +114 -0
  291. package/dist/sdk/terminal/tui/runtime.js +441 -0
  292. package/dist/sdk/terminal/tui/search.d.ts +22 -0
  293. package/dist/sdk/terminal/tui/search.js +60 -0
  294. package/dist/sdk/terminal/tui/selection.d.ts +16 -0
  295. package/dist/sdk/terminal/tui/selection.js +16 -0
  296. package/dist/sdk/terminal/tui/sessionUi.d.ts +3 -0
  297. package/dist/sdk/terminal/tui/sessionUi.js +30 -0
  298. package/dist/sdk/terminal/tui/settingsModel.d.ts +12 -0
  299. package/dist/sdk/terminal/tui/settingsModel.js +84 -0
  300. package/dist/sdk/terminal/tui/sideQuestion.d.ts +53 -0
  301. package/dist/sdk/terminal/tui/sideQuestion.js +197 -0
  302. package/dist/sdk/terminal/tui/skillInvocation.d.ts +9 -0
  303. package/dist/sdk/terminal/tui/skillInvocation.js +43 -0
  304. package/dist/sdk/terminal/tui/status.d.ts +18 -0
  305. package/dist/sdk/terminal/tui/status.js +67 -0
  306. package/dist/sdk/terminal/tui/theme.d.ts +45 -0
  307. package/dist/sdk/terminal/tui/theme.js +176 -0
  308. package/dist/sdk/terminal/tui/treeModel.d.ts +79 -0
  309. package/dist/sdk/terminal/tui/treeModel.js +483 -0
  310. package/dist/sdk/terminal/tui/treePicker.d.ts +49 -0
  311. package/dist/sdk/terminal/tui/treePicker.js +251 -0
  312. package/dist/sdk/terminal/tui/ui.d.ts +47 -0
  313. package/dist/sdk/terminal/tui/ui.js +148 -0
  314. package/dist/sdk/terminal/tui/workingStatus.d.ts +9 -0
  315. package/dist/sdk/terminal/tui/workingStatus.js +229 -0
  316. package/dist/sdk/tools/askUser.d.ts +6 -0
  317. package/dist/sdk/tools/askUser.js +74 -0
  318. package/dist/sdk/tools/checklist.d.ts +9 -0
  319. package/dist/sdk/tools/checklist.js +54 -0
  320. package/dist/sdk/tools/definitions.d.ts +30 -0
  321. package/dist/sdk/tools/definitions.js +117 -0
  322. package/dist/sdk/tools/dispatch.d.ts +16 -0
  323. package/dist/sdk/tools/dispatch.js +67 -0
  324. package/dist/sdk/tools/harnessTools.d.ts +6 -0
  325. package/dist/sdk/tools/harnessTools.js +20 -0
  326. package/dist/sdk/tools/sessionName.d.ts +7 -0
  327. package/dist/sdk/tools/sessionName.js +31 -0
  328. package/dist/sdk/tools/spawnSubagent.d.ts +4 -0
  329. package/dist/sdk/tools/spawnSubagent.js +49 -0
  330. package/dist/sdk/tools/types.d.ts +48 -0
  331. package/dist/sdk/tools/types.js +1 -0
  332. package/dist/sdk/variant/components.d.ts +34 -0
  333. package/dist/sdk/variant/components.js +230 -0
  334. package/dist/sdk/variant/materialise.d.ts +66 -0
  335. package/dist/sdk/variant/materialise.js +81 -0
  336. package/dist/sdk/variant/migrate.d.ts +4 -0
  337. package/dist/sdk/variant/migrate.js +41 -0
  338. package/dist/sdk/variant/seed.d.ts +20 -0
  339. package/dist/sdk/variant/seed.js +116 -0
  340. package/dist/sdk/variant/store.d.ts +82 -0
  341. package/dist/sdk/variant/store.js +151 -0
  342. package/dist/sdk/variant/surface.d.ts +56 -0
  343. package/dist/sdk/variant/surface.js +81 -0
  344. package/dist/sdk/variant/trust.d.ts +27 -0
  345. package/dist/sdk/variant/trust.js +64 -0
  346. package/dist/sdk/variant/variant.d.ts +71 -0
  347. package/dist/sdk/variant/variant.js +331 -0
  348. package/dist/sdk/web/markdown.d.ts +10 -0
  349. package/dist/sdk/web/markdown.js +66 -0
  350. package/dist/sdk/web/safeRequest.d.ts +34 -0
  351. package/dist/sdk/web/safeRequest.js +175 -0
  352. package/dist/sdk/web/search.d.ts +53 -0
  353. package/dist/sdk/web/search.js +168 -0
  354. package/dist/sdk/web/text.d.ts +2 -0
  355. package/dist/sdk/web/text.js +7 -0
  356. package/dist/sdk/web/tools.d.ts +22 -0
  357. package/dist/sdk/web/tools.js +195 -0
  358. package/dist/sdk/web/turndown-plugin-gfm.d.ts +4 -0
  359. package/dist/sdk/wiki/notes.d.ts +68 -0
  360. package/dist/sdk/wiki/notes.js +297 -0
  361. package/dist/sdk/world/actions.d.ts +23 -0
  362. package/dist/sdk/world/actions.js +31 -0
  363. package/dist/sdk/world/cli.d.ts +12 -0
  364. package/dist/sdk/world/cli.js +166 -0
  365. package/dist/sdk/world/images.d.ts +20 -0
  366. package/dist/sdk/world/images.js +48 -0
  367. package/dist/sdk/world/untrusted.d.ts +12 -0
  368. package/dist/sdk/world/untrusted.js +20 -0
  369. package/dist/sdk/world/world.d.ts +65 -0
  370. package/dist/sdk/world/world.js +80 -0
  371. package/dist/terminal-opentui.js +13612 -0
  372. package/dist/terminal-pi.js +808 -151
  373. package/docs/README.md +22 -0
  374. package/docs/architecture/00-overview.md +159 -0
  375. package/docs/architecture/01-extension-points.md +78 -0
  376. package/docs/architecture/02-sessions-and-runs.md +146 -0
  377. package/docs/architecture/03-variants.md +95 -0
  378. package/docs/architecture/04-prompt.md +102 -0
  379. package/docs/architecture/05-refinement.md +107 -0
  380. package/docs/architecture/06-plugins-and-capabilities.md +93 -0
  381. package/docs/architecture/07-tools-and-gate.md +88 -0
  382. package/docs/architecture/08-memory-and-history.md +94 -0
  383. package/docs/architecture/09-accounts-and-connectors.md +90 -0
  384. package/docs/architecture/10-server-protocol.md +84 -0
  385. package/docs/architecture/11-terminal.md +81 -0
  386. package/docs/architecture/12-storage.md +61 -0
  387. package/docs/architecture/13-world-tools.md +23 -0
  388. package/docs/architecture/README.md +114 -0
  389. package/docs/architecture/proposals/PROP-0001-reporting-section.md +106 -0
  390. package/docs/architecture/proposals/PROP-0002-retain-rollout-workspaces.md +104 -0
  391. package/docs/architecture/proposals/PROP-0003-executor-settings.md +81 -0
  392. package/docs/architecture/proposals/PROP-0004-flexible-reporting-guidance.md +71 -0
  393. package/docs/architecture/proposals/PROP-0005-xharness-cli-name.md +78 -0
  394. package/docs/architecture/proposals/PROP-0006-run-checklist.md +68 -0
  395. package/docs/architecture/proposals/PROP-0007-run-continuation.md +80 -0
  396. package/docs/architecture/proposals/PROP-0008-lessons-from-runs.md +80 -0
  397. package/docs/architecture/proposals/PROP-0009-foundation-and-variants.md +78 -0
  398. package/docs/architecture/proposals/PROP-0010-session-names.md +73 -0
  399. package/docs/architecture/proposals/PROP-0011-doctor.md +63 -0
  400. package/docs/architecture/proposals/PROP-0012-release-baseline.md +56 -0
  401. package/docs/architecture/proposals/README.md +76 -0
  402. package/docs/decisions/ADR-0002-native-subagent-lifecycle.md +49 -0
  403. package/docs/decisions/ADR-0003-shared-asynchronous-subagents.md +70 -0
  404. package/docs/decisions/ADR-0004-fullscreen-terminal-layout.md +50 -0
  405. package/docs/decisions/ADR-0005-app-provided-oauth-clients.md +54 -0
  406. package/docs/decisions/ADR-0006-opentui-only-terminal.md +47 -0
  407. package/docs/decisions/ADR-0007-reporting-section.md +33 -0
  408. package/docs/decisions/ADR-0008-flexible-reporting-guidance.md +38 -0
  409. package/docs/decisions/ADR-0009-xharness-command.md +38 -0
  410. package/docs/decisions/ADR-0010-lessons-in-the-wiki.md +31 -0
  411. package/docs/decisions/ADR-0011-foundation-and-variants.md +28 -0
  412. package/docs/decisions/ADR-0012-native-session-names.md +34 -0
  413. package/docs/decisions/ADR-0013-doctor.md +27 -0
  414. package/docs/decisions/ADR-0014-public-release-baseline.md +21 -0
  415. package/docs/doctor.md +74 -0
  416. package/docs/experiments/EXP-0001-terminal-input-latency/plan.md +81 -0
  417. package/docs/experiments/EXP-0001-terminal-input-latency/results.md +46 -0
  418. package/docs/experiments/EXP-0002-opentui-typing-latency/plan.md +70 -0
  419. package/docs/experiments/EXP-0002-opentui-typing-latency/results.md +92 -0
  420. package/docs/features/README.md +20 -0
  421. package/docs/features/automations/README.md +41 -0
  422. package/docs/features/cores/README.md +39 -0
  423. package/docs/features/google-harness2/README.md +52 -0
  424. package/docs/features/integrations/README.md +40 -0
  425. package/docs/features/interfaces/README.md +29 -0
  426. package/docs/features/memory/README.md +28 -0
  427. package/docs/releases/1.0.0.md +40 -0
  428. package/docs/releases/README.md +36 -0
  429. package/docs/study/00-index.md +78 -0
  430. package/docs/study/arms/00-matrix.md +20 -0
  431. package/docs/study/arms/01-system-prompt.md +211 -0
  432. package/docs/study/arms/02-tools.md +79 -0
  433. package/docs/study/arms/03-subagents.md +90 -0
  434. package/docs/study/arms/04-skills.md +75 -0
  435. package/docs/study/arms/05-context-management.md +90 -0
  436. package/docs/study/arms/06-memory.md +90 -0
  437. package/docs/study/arms/07-governance.md +71 -0
  438. package/docs/study/arms/08-execution.md +69 -0
  439. package/docs/study/arms/09-observability.md +60 -0
  440. package/docs/study/arms/10-refinement.md +110 -0
  441. package/docs/study/btw-comparison.md +37 -0
  442. package/docs/study/feature-gap-review.md +42 -0
  443. package/docs/study/insights.md +123 -0
  444. package/docs/study/roadmap.md +72 -0
  445. package/docs/study/sources/claude-code.md +44 -0
  446. package/docs/study/sources/deepseek-harness.md +102 -0
  447. package/docs/study/sources/harness2.md +50 -0
  448. package/docs/study/sources/kimi-cli.md +42 -0
  449. package/docs/study/sources/omp.md +93 -0
  450. package/docs/study/sources/opencode.md +43 -0
  451. package/docs/study/sources/openhands.md +46 -0
  452. package/docs/study/sources/smolagents.md +40 -0
  453. package/docs/study/sources/swe-agent.md +34 -0
  454. package/docs/system-prompt-design.md +196 -0
  455. package/docs/terminal-tui.md +473 -56
  456. package/package.json +43 -13
  457. package/docs/evidence/terminal-2026-10-17/120x40-completed-transcript.ansi.gz +0 -0
  458. package/docs/evidence/terminal-2026-10-17/40x20-settings-interaction.ansi.gz +0 -0
  459. package/docs/evidence/terminal-2026-10-17/40x20-settings-keyboard.ansi.gz +0 -0
  460. package/docs/evidence/terminal-2026-10-17/40x20-welcome.ansi.gz +0 -0
  461. package/docs/evidence/terminal-2026-10-17/80x24-approval-0.ansi.gz +0 -0
  462. package/docs/evidence/terminal-2026-10-17/80x24-question.ansi.gz +0 -0
  463. package/docs/evidence/terminal-2026-10-17/verification.json +0 -130
  464. package/docs/evidence/terminal-2026-10-17-followup/120x40-completed-transcript.ansi.gz +0 -0
  465. package/docs/evidence/terminal-2026-10-17-followup/40x20-settings-interaction.ansi.gz +0 -0
  466. package/docs/evidence/terminal-2026-10-17-followup/40x20-settings-keyboard.ansi.gz +0 -0
  467. package/docs/evidence/terminal-2026-10-17-followup/40x20-welcome.ansi.gz +0 -0
  468. package/docs/evidence/terminal-2026-10-17-followup/80x24-approval-0.ansi.gz +0 -0
  469. package/docs/evidence/terminal-2026-10-17-followup/80x24-plugin-light.ansi.gz +0 -0
  470. package/docs/evidence/terminal-2026-10-17-followup/80x24-question-batch.ansi.gz +0 -0
  471. package/docs/evidence/terminal-2026-10-17-followup/80x24-question.ansi.gz +0 -0
  472. package/docs/evidence/terminal-2026-10-17-followup/app-bundle/80x24-approval-0.ansi.gz +0 -0
  473. package/docs/evidence/terminal-2026-10-17-followup/app-bundle/80x24-plugin-light.ansi.gz +0 -0
  474. package/docs/evidence/terminal-2026-10-17-followup/app-bundle/80x24-question-batch.ansi.gz +0 -0
  475. package/docs/evidence/terminal-2026-10-17-followup/app-bundle/80x24-question.ansi.gz +0 -0
  476. package/docs/evidence/terminal-2026-10-17-followup/app-bundle/verification.json +0 -95
  477. package/docs/evidence/terminal-2026-10-17-followup/global-install/80x24-approval-0.ansi.gz +0 -0
  478. package/docs/evidence/terminal-2026-10-17-followup/global-install/80x24-plugin-light.ansi.gz +0 -0
  479. package/docs/evidence/terminal-2026-10-17-followup/global-install/80x24-question-batch.ansi.gz +0 -0
  480. package/docs/evidence/terminal-2026-10-17-followup/global-install/80x24-question.ansi.gz +0 -0
  481. package/docs/evidence/terminal-2026-10-17-followup/global-install/README.md +0 -27
  482. package/docs/evidence/terminal-2026-10-17-followup/global-install/shell-command-80x24.ansi.gz +0 -0
  483. package/docs/evidence/terminal-2026-10-17-followup/global-install/shell-command.json +0 -18
  484. package/docs/evidence/terminal-2026-10-17-followup/global-install/verification.json +0 -95
  485. package/docs/evidence/terminal-2026-10-17-followup/harness-reference-80x24.json.gz +0 -0
  486. package/docs/evidence/terminal-2026-10-17-followup/harness-reference-final-80x24.json.gz +0 -0
  487. package/docs/evidence/terminal-2026-10-17-followup/harness-reference-scenario.json +0 -60
  488. package/docs/evidence/terminal-2026-10-17-followup/live-codex/README.md +0 -24
  489. package/docs/evidence/terminal-2026-10-17-followup/live-codex/complete-80x24.ansi.gz +0 -0
  490. package/docs/evidence/terminal-2026-10-17-followup/live-codex/verification.json +0 -57
  491. package/docs/evidence/terminal-2026-10-17-followup/omp-reference-80x24-early.json.gz +0 -0
  492. package/docs/evidence/terminal-2026-10-17-followup/omp-reference-80x24.json.gz +0 -0
  493. package/docs/evidence/terminal-2026-10-17-followup/omp-reference-scenario.json +0 -58
  494. package/docs/evidence/terminal-2026-10-17-followup/omp-supplemental-static.json.gz +0 -0
  495. package/docs/evidence/terminal-2026-10-17-followup/rea-artifacts.json +0 -320
  496. package/docs/evidence/terminal-2026-10-17-followup/reference-comparison.json +0 -30
  497. package/docs/evidence/terminal-2026-10-17-followup/reference-comparison.md +0 -133
  498. package/docs/evidence/terminal-2026-10-17-followup/reference-source-observations.json +0 -20
  499. package/docs/evidence/terminal-2026-10-17-followup/verification.json +0 -207
  500. package/src/accounts/accounts.test.ts +0 -333
  501. package/src/accounts/accounts.ts +0 -658
  502. package/src/accounts/env.test.ts +0 -95
  503. package/src/accounts/env.ts +0 -338
  504. package/src/accounts/secrets.ts +0 -50
  505. package/src/accounts/store.ts +0 -338
  506. package/src/capabilities/api.ts +0 -75
  507. package/src/capabilities/runSnapshot.ts +0 -59
  508. package/src/capabilities/types.ts +0 -34
  509. package/src/cli.ts +0 -118
  510. package/src/core/bus.ts +0 -34
  511. package/src/core/changes.ts +0 -33
  512. package/src/core/env.ts +0 -27
  513. package/src/core/errors.ts +0 -32
  514. package/src/core/frontmatter.ts +0 -47
  515. package/src/core/fs.test.ts +0 -38
  516. package/src/core/fs.ts +0 -92
  517. package/src/core/index.ts +0 -193
  518. package/src/core/path.test.ts +0 -14
  519. package/src/core/path.ts +0 -79
  520. package/src/core/projects.ts +0 -90
  521. package/src/core/text.ts +0 -39
  522. package/src/harness.ts +0 -312
  523. package/src/hub/catalog.json +0 -123
  524. package/src/hub/cli.ts +0 -59
  525. package/src/hub/hub.test.ts +0 -205
  526. package/src/hub/hub.ts +0 -256
  527. package/src/hub/schema.ts +0 -81
  528. package/src/index.ts +0 -75
  529. package/src/mcp/connections.ts +0 -614
  530. package/src/mcp/manager.ts +0 -130
  531. package/src/mcp/oauth.ts +0 -195
  532. package/src/mcp/scopeMigration.test.ts +0 -79
  533. package/src/mcp/scopeMigration.ts +0 -204
  534. package/src/mcp/service.test.ts +0 -376
  535. package/src/mcp/service.ts +0 -549
  536. package/src/mcp/types.ts +0 -108
  537. package/src/memory/api.test.ts +0 -82
  538. package/src/memory/api.ts +0 -303
  539. package/src/memory/blocks.test.ts +0 -78
  540. package/src/memory/blocks.ts +0 -408
  541. package/src/memory/caller.ts +0 -69
  542. package/src/memory/curation.test.ts +0 -163
  543. package/src/memory/curation.ts +0 -64
  544. package/src/memory/dispatch.ts +0 -59
  545. package/src/memory/facts.test.ts +0 -41
  546. package/src/memory/facts.ts +0 -248
  547. package/src/memory/graph.ts +0 -103
  548. package/src/memory/health.test.ts +0 -130
  549. package/src/memory/health.ts +0 -74
  550. package/src/memory/maintainer.ts +0 -272
  551. package/src/memory/maintenance.test.ts +0 -176
  552. package/src/memory/maintenance.ts +0 -518
  553. package/src/memory/migrate.ts +0 -79
  554. package/src/memory/operations.ts +0 -150
  555. package/src/memory/proposals.test.ts +0 -168
  556. package/src/memory/proposals.ts +0 -584
  557. package/src/memory/recall.test.ts +0 -115
  558. package/src/memory/recall.ts +0 -278
  559. package/src/memory/references.ts +0 -77
  560. package/src/memory/runContext.ts +0 -93
  561. package/src/memory/secrets.ts +0 -6
  562. package/src/memory/store.test.ts +0 -66
  563. package/src/memory/store.ts +0 -385
  564. package/src/memory/wiki.test.ts +0 -47
  565. package/src/memory/wiki.ts +0 -422
  566. package/src/memory/wikiIndex.test.ts +0 -88
  567. package/src/memory/wikiIndex.ts +0 -116
  568. package/src/plugins/api.ts +0 -181
  569. package/src/plugins/attachments.test.ts +0 -84
  570. package/src/plugins/attachments.ts +0 -141
  571. package/src/plugins/builtin.ts +0 -82
  572. package/src/plugins/catalogue.test.ts +0 -254
  573. package/src/plugins/catalogue.ts +0 -251
  574. package/src/plugins/cli.ts +0 -184
  575. package/src/plugins/discover.ts +0 -151
  576. package/src/plugins/firstParty.test.ts +0 -143
  577. package/src/plugins/firstParty.ts +0 -129
  578. package/src/plugins/hooks.test.ts +0 -250
  579. package/src/plugins/hooks.ts +0 -239
  580. package/src/plugins/identity.ts +0 -37
  581. package/src/plugins/install.test.ts +0 -107
  582. package/src/plugins/install.ts +0 -106
  583. package/src/plugins/inventory.ts +0 -123
  584. package/src/plugins/manifest.ts +0 -76
  585. package/src/plugins/plugins.test.ts +0 -205
  586. package/src/plugins/plugins.ts +0 -189
  587. package/src/plugins/proposal.ts +0 -121
  588. package/src/plugins/runtime.test.ts +0 -40
  589. package/src/plugins/runtime.ts +0 -82
  590. package/src/plugins/trust.ts +0 -142
  591. package/src/plugins/types.ts +0 -149
  592. package/src/prompt/compile.test.ts +0 -261
  593. package/src/prompt/compile.ts +0 -732
  594. package/src/server/methods.ts +0 -349
  595. package/src/server/remote.ts +0 -77
  596. package/src/server/rpc.ts +0 -116
  597. package/src/server/serve.ts +0 -28
  598. package/src/server/server.test.ts +0 -174
  599. package/src/sessions/approvals.ts +0 -118
  600. package/src/sessions/contracts.ts +0 -336
  601. package/src/sessions/conversation.test.ts +0 -177
  602. package/src/sessions/extensionSession.test.ts +0 -74
  603. package/src/sessions/extensionUi.test.ts +0 -65
  604. package/src/sessions/extensionUi.ts +0 -102
  605. package/src/sessions/history.ts +0 -51
  606. package/src/sessions/lineageJoin.ts +0 -75
  607. package/src/sessions/policy.ts +0 -36
  608. package/src/sessions/pricing.ts +0 -60
  609. package/src/sessions/questionBatches.test.ts +0 -110
  610. package/src/sessions/reasoningSummaries.ts +0 -59
  611. package/src/sessions/registry.ts +0 -381
  612. package/src/sessions/runIndex.ts +0 -99
  613. package/src/sessions/runStore.test.ts +0 -152
  614. package/src/sessions/runStore.ts +0 -332
  615. package/src/sessions/runner.ts +0 -604
  616. package/src/sessions/runtimeResources.test.ts +0 -61
  617. package/src/sessions/sessions.test.ts +0 -549
  618. package/src/sessions/sessions.ts +0 -339
  619. package/src/skills/registry.test.ts +0 -104
  620. package/src/skills/registry.ts +0 -413
  621. package/src/terminal/accountsMenu.test.ts +0 -225
  622. package/src/terminal/accountsMenu.ts +0 -382
  623. package/src/terminal/cli.ts +0 -149
  624. package/src/terminal/client.ts +0 -74
  625. package/src/terminal/control.test.ts +0 -23
  626. package/src/terminal/control.ts +0 -23
  627. package/src/terminal/controller.ts +0 -291
  628. package/src/terminal/hubMenu.ts +0 -24
  629. package/src/terminal/launch.test.ts +0 -25
  630. package/src/terminal/launch.ts +0 -48
  631. package/src/terminal/piExtension.lifecycle.test.ts +0 -55
  632. package/src/terminal/piExtension.ts +0 -259
  633. package/src/terminal/pluginControl.test.ts +0 -146
  634. package/src/terminal/pluginMenu.ts +0 -112
  635. package/src/terminal/socket.test.ts +0 -71
  636. package/src/terminal/socket.ts +0 -232
  637. package/src/terminal/standalone.test.ts +0 -167
  638. package/src/terminal/standalone.ts +0 -153
  639. package/src/terminal/terminal.test.ts +0 -399
  640. package/src/terminal/terminals.ts +0 -553
  641. package/src/terminal/tui/application.test.ts +0 -114
  642. package/src/terminal/tui/application.ts +0 -491
  643. package/src/terminal/tui/commands.test.ts +0 -218
  644. package/src/terminal/tui/commands.ts +0 -361
  645. package/src/terminal/tui/dialogs.ts +0 -301
  646. package/src/terminal/tui/editor.test.ts +0 -84
  647. package/src/terminal/tui/editor.ts +0 -79
  648. package/src/terminal/tui/keybindings.test.ts +0 -22
  649. package/src/terminal/tui/keybindings.ts +0 -50
  650. package/src/terminal/tui/piAdapter.ts +0 -62
  651. package/src/terminal/tui/presentation.test.ts +0 -79
  652. package/src/terminal/tui/questions.test.ts +0 -41
  653. package/src/terminal/tui/questions.ts +0 -47
  654. package/src/terminal/tui/runtime.socket.test.ts +0 -104
  655. package/src/terminal/tui/runtime.test.ts +0 -215
  656. package/src/terminal/tui/runtime.ts +0 -388
  657. package/src/terminal/tui/sessionUi.ts +0 -24
  658. package/src/terminal/tui/settings.test.ts +0 -150
  659. package/src/terminal/tui/settings.ts +0 -188
  660. package/src/terminal/tui/status.test.ts +0 -70
  661. package/src/terminal/tui/status.ts +0 -109
  662. package/src/terminal/tui/theme.ts +0 -174
  663. package/src/terminal/tui/tools.test.ts +0 -145
  664. package/src/terminal/tui/tools.ts +0 -142
  665. package/src/terminal/tui/transcript.test.ts +0 -25
  666. package/src/terminal/tui/transcript.ts +0 -124
  667. package/src/terminal/tui/ui.test.ts +0 -313
  668. package/src/terminal/tui/ui.ts +0 -166
  669. package/src/terminal/tui/welcome.ts +0 -102
  670. package/src/tools/askUser.test.ts +0 -69
  671. package/src/tools/askUser.ts +0 -59
  672. package/src/tools/definitions.ts +0 -187
  673. package/src/tools/maintenance.ts +0 -24
  674. package/src/tools/memoryTools.ts +0 -22
  675. package/src/tools/pluginPropose.ts +0 -41
  676. package/src/tools/registryWrite.test.ts +0 -101
  677. package/src/tools/registryWrite.ts +0 -182
  678. package/src/tools/spawnSubagent.ts +0 -92
  679. package/src/tools/types.ts +0 -39
  680. package/src/web/safeRequest.ts +0 -171
  681. package/src/web/text.ts +0 -53
  682. package/src/web/tools.ts +0 -134
  683. package/src/web/web.test.ts +0 -141
@@ -0,0 +1,280 @@
1
+ import { z } from 'zod';
2
+ export declare const HUB_CATALOG_URL = "https://raw.githubusercontent.com/tanntnny/xingular-hub/main/catalog.json";
3
+ export declare const HUB_MAX_BYTES: number;
4
+ export declare const HUB_PREVIEW_PAGE_BYTES: number;
5
+ export declare const hubDeliverySchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
6
+ url: z.ZodString;
7
+ sha256: z.ZodString;
8
+ bundled: z.ZodOptional<z.ZodString>;
9
+ kind: z.ZodLiteral<"registry">;
10
+ registryKind: z.ZodEnum<{
11
+ skills: "skills";
12
+ prompts: "prompts";
13
+ rules: "rules";
14
+ }>;
15
+ }, z.core.$strict>, z.ZodObject<{
16
+ url: z.ZodString;
17
+ sha256: z.ZodString;
18
+ bundled: z.ZodOptional<z.ZodString>;
19
+ kind: z.ZodLiteral<"document">;
20
+ }, z.core.$strict>, z.ZodObject<{
21
+ kind: z.ZodLiteral<"pi-package">;
22
+ source: z.ZodString;
23
+ }, z.core.$strict>], "kind">;
24
+ export declare const hubEntrySchema: z.ZodObject<{
25
+ id: z.ZodString;
26
+ title: z.ZodString;
27
+ description: z.ZodString;
28
+ publisher: z.ZodString;
29
+ license: z.ZodString;
30
+ version: z.ZodString;
31
+ category: z.ZodString;
32
+ channel: z.ZodEnum<{
33
+ official: "official";
34
+ community: "community";
35
+ }>;
36
+ tags: z.ZodArray<z.ZodString>;
37
+ requires: z.ZodRecord<z.ZodString, z.ZodString>;
38
+ sourceUrl: z.ZodString;
39
+ delivery: z.ZodDiscriminatedUnion<[z.ZodObject<{
40
+ url: z.ZodString;
41
+ sha256: z.ZodString;
42
+ bundled: z.ZodOptional<z.ZodString>;
43
+ kind: z.ZodLiteral<"registry">;
44
+ registryKind: z.ZodEnum<{
45
+ skills: "skills";
46
+ prompts: "prompts";
47
+ rules: "rules";
48
+ }>;
49
+ }, z.core.$strict>, z.ZodObject<{
50
+ url: z.ZodString;
51
+ sha256: z.ZodString;
52
+ bundled: z.ZodOptional<z.ZodString>;
53
+ kind: z.ZodLiteral<"document">;
54
+ }, z.core.$strict>, z.ZodObject<{
55
+ kind: z.ZodLiteral<"pi-package">;
56
+ source: z.ZodString;
57
+ }, z.core.$strict>], "kind">;
58
+ }, z.core.$strict>;
59
+ export declare const hubCatalogSchema: z.ZodObject<{
60
+ schemaVersion: z.ZodLiteral<1>;
61
+ entries: z.ZodArray<z.ZodObject<{
62
+ id: z.ZodString;
63
+ title: z.ZodString;
64
+ description: z.ZodString;
65
+ publisher: z.ZodString;
66
+ license: z.ZodString;
67
+ version: z.ZodString;
68
+ category: z.ZodString;
69
+ channel: z.ZodEnum<{
70
+ official: "official";
71
+ community: "community";
72
+ }>;
73
+ tags: z.ZodArray<z.ZodString>;
74
+ requires: z.ZodRecord<z.ZodString, z.ZodString>;
75
+ sourceUrl: z.ZodString;
76
+ delivery: z.ZodDiscriminatedUnion<[z.ZodObject<{
77
+ url: z.ZodString;
78
+ sha256: z.ZodString;
79
+ bundled: z.ZodOptional<z.ZodString>;
80
+ kind: z.ZodLiteral<"registry">;
81
+ registryKind: z.ZodEnum<{
82
+ skills: "skills";
83
+ prompts: "prompts";
84
+ rules: "rules";
85
+ }>;
86
+ }, z.core.$strict>, z.ZodObject<{
87
+ url: z.ZodString;
88
+ sha256: z.ZodString;
89
+ bundled: z.ZodOptional<z.ZodString>;
90
+ kind: z.ZodLiteral<"document">;
91
+ }, z.core.$strict>, z.ZodObject<{
92
+ kind: z.ZodLiteral<"pi-package">;
93
+ source: z.ZodString;
94
+ }, z.core.$strict>], "kind">;
95
+ }, z.core.$strict>>;
96
+ }, z.core.$strict>;
97
+ export declare const hubReceiptSchema: z.ZodObject<{
98
+ entry: z.ZodObject<{
99
+ id: z.ZodString;
100
+ title: z.ZodString;
101
+ description: z.ZodString;
102
+ publisher: z.ZodString;
103
+ license: z.ZodString;
104
+ version: z.ZodString;
105
+ category: z.ZodString;
106
+ channel: z.ZodEnum<{
107
+ official: "official";
108
+ community: "community";
109
+ }>;
110
+ tags: z.ZodArray<z.ZodString>;
111
+ requires: z.ZodRecord<z.ZodString, z.ZodString>;
112
+ sourceUrl: z.ZodString;
113
+ delivery: z.ZodDiscriminatedUnion<[z.ZodObject<{
114
+ url: z.ZodString;
115
+ sha256: z.ZodString;
116
+ bundled: z.ZodOptional<z.ZodString>;
117
+ kind: z.ZodLiteral<"registry">;
118
+ registryKind: z.ZodEnum<{
119
+ skills: "skills";
120
+ prompts: "prompts";
121
+ rules: "rules";
122
+ }>;
123
+ }, z.core.$strict>, z.ZodObject<{
124
+ url: z.ZodString;
125
+ sha256: z.ZodString;
126
+ bundled: z.ZodOptional<z.ZodString>;
127
+ kind: z.ZodLiteral<"document">;
128
+ }, z.core.$strict>, z.ZodObject<{
129
+ kind: z.ZodLiteral<"pi-package">;
130
+ source: z.ZodString;
131
+ }, z.core.$strict>], "kind">;
132
+ }, z.core.$strict>;
133
+ installedAt: z.ZodString;
134
+ resourceIds: z.ZodArray<z.ZodString>;
135
+ document: z.ZodNullable<z.ZodString>;
136
+ state: z.ZodOptional<z.ZodEnum<{
137
+ incomplete: "incomplete";
138
+ installed: "installed";
139
+ changed: "changed";
140
+ }>>;
141
+ }, z.core.$strict>;
142
+ export declare const hubPreviewPageSchema: z.ZodObject<{
143
+ entry: z.ZodObject<{
144
+ id: z.ZodString;
145
+ title: z.ZodString;
146
+ description: z.ZodString;
147
+ publisher: z.ZodString;
148
+ license: z.ZodString;
149
+ version: z.ZodString;
150
+ category: z.ZodString;
151
+ channel: z.ZodEnum<{
152
+ official: "official";
153
+ community: "community";
154
+ }>;
155
+ tags: z.ZodArray<z.ZodString>;
156
+ requires: z.ZodRecord<z.ZodString, z.ZodString>;
157
+ sourceUrl: z.ZodString;
158
+ delivery: z.ZodDiscriminatedUnion<[z.ZodObject<{
159
+ url: z.ZodString;
160
+ sha256: z.ZodString;
161
+ bundled: z.ZodOptional<z.ZodString>;
162
+ kind: z.ZodLiteral<"registry">;
163
+ registryKind: z.ZodEnum<{
164
+ skills: "skills";
165
+ prompts: "prompts";
166
+ rules: "rules";
167
+ }>;
168
+ }, z.core.$strict>, z.ZodObject<{
169
+ url: z.ZodString;
170
+ sha256: z.ZodString;
171
+ bundled: z.ZodOptional<z.ZodString>;
172
+ kind: z.ZodLiteral<"document">;
173
+ }, z.core.$strict>, z.ZodObject<{
174
+ kind: z.ZodLiteral<"pi-package">;
175
+ source: z.ZodString;
176
+ }, z.core.$strict>], "kind">;
177
+ }, z.core.$strict>;
178
+ content: z.ZodString;
179
+ offset: z.ZodNumber;
180
+ nextOffset: z.ZodNumber;
181
+ totalBytes: z.ZodNumber;
182
+ done: z.ZodBoolean;
183
+ }, z.core.$strict>;
184
+ export declare const hubOverviewSchema: z.ZodObject<{
185
+ entries: z.ZodArray<z.ZodObject<{
186
+ id: z.ZodString;
187
+ title: z.ZodString;
188
+ description: z.ZodString;
189
+ publisher: z.ZodString;
190
+ license: z.ZodString;
191
+ version: z.ZodString;
192
+ category: z.ZodString;
193
+ channel: z.ZodEnum<{
194
+ official: "official";
195
+ community: "community";
196
+ }>;
197
+ tags: z.ZodArray<z.ZodString>;
198
+ requires: z.ZodRecord<z.ZodString, z.ZodString>;
199
+ sourceUrl: z.ZodString;
200
+ delivery: z.ZodDiscriminatedUnion<[z.ZodObject<{
201
+ url: z.ZodString;
202
+ sha256: z.ZodString;
203
+ bundled: z.ZodOptional<z.ZodString>;
204
+ kind: z.ZodLiteral<"registry">;
205
+ registryKind: z.ZodEnum<{
206
+ skills: "skills";
207
+ prompts: "prompts";
208
+ rules: "rules";
209
+ }>;
210
+ }, z.core.$strict>, z.ZodObject<{
211
+ url: z.ZodString;
212
+ sha256: z.ZodString;
213
+ bundled: z.ZodOptional<z.ZodString>;
214
+ kind: z.ZodLiteral<"document">;
215
+ }, z.core.$strict>, z.ZodObject<{
216
+ kind: z.ZodLiteral<"pi-package">;
217
+ source: z.ZodString;
218
+ }, z.core.$strict>], "kind">;
219
+ }, z.core.$strict>>;
220
+ installed: z.ZodArray<z.ZodObject<{
221
+ entry: z.ZodObject<{
222
+ id: z.ZodString;
223
+ title: z.ZodString;
224
+ description: z.ZodString;
225
+ publisher: z.ZodString;
226
+ license: z.ZodString;
227
+ version: z.ZodString;
228
+ category: z.ZodString;
229
+ channel: z.ZodEnum<{
230
+ official: "official";
231
+ community: "community";
232
+ }>;
233
+ tags: z.ZodArray<z.ZodString>;
234
+ requires: z.ZodRecord<z.ZodString, z.ZodString>;
235
+ sourceUrl: z.ZodString;
236
+ delivery: z.ZodDiscriminatedUnion<[z.ZodObject<{
237
+ url: z.ZodString;
238
+ sha256: z.ZodString;
239
+ bundled: z.ZodOptional<z.ZodString>;
240
+ kind: z.ZodLiteral<"registry">;
241
+ registryKind: z.ZodEnum<{
242
+ skills: "skills";
243
+ prompts: "prompts";
244
+ rules: "rules";
245
+ }>;
246
+ }, z.core.$strict>, z.ZodObject<{
247
+ url: z.ZodString;
248
+ sha256: z.ZodString;
249
+ bundled: z.ZodOptional<z.ZodString>;
250
+ kind: z.ZodLiteral<"document">;
251
+ }, z.core.$strict>, z.ZodObject<{
252
+ kind: z.ZodLiteral<"pi-package">;
253
+ source: z.ZodString;
254
+ }, z.core.$strict>], "kind">;
255
+ }, z.core.$strict>;
256
+ installedAt: z.ZodString;
257
+ resourceIds: z.ZodArray<z.ZodString>;
258
+ document: z.ZodNullable<z.ZodString>;
259
+ state: z.ZodOptional<z.ZodEnum<{
260
+ incomplete: "incomplete";
261
+ installed: "installed";
262
+ changed: "changed";
263
+ }>>;
264
+ }, z.core.$strict>>;
265
+ origin: z.ZodEnum<{
266
+ remote: "remote";
267
+ bundled: "bundled";
268
+ cached: "cached";
269
+ }>;
270
+ refreshedAt: z.ZodNullable<z.ZodString>;
271
+ error: z.ZodNullable<z.ZodString>;
272
+ dataRoot: z.ZodNullable<z.ZodString>;
273
+ stateDir: z.ZodString;
274
+ }, z.core.$strip>;
275
+ export type HubEntry = z.infer<typeof hubEntrySchema>;
276
+ export type HubCatalog = z.infer<typeof hubCatalogSchema>;
277
+ export type HubReceipt = z.infer<typeof hubReceiptSchema>;
278
+ export type HubPreviewPage = z.infer<typeof hubPreviewPageSchema>;
279
+ export type HubOverview = z.infer<typeof hubOverviewSchema>;
280
+ export declare function meetsMinimum(actual: string, minimum: string): boolean;
@@ -0,0 +1,78 @@
1
+ import { z } from 'zod';
2
+ export const HUB_CATALOG_URL = 'https://raw.githubusercontent.com/tanntnny/xingular-hub/main/catalog.json';
3
+ export const HUB_MAX_BYTES = 16 * 1024 * 1024;
4
+ export const HUB_PREVIEW_PAGE_BYTES = 16 * 1024;
5
+ const httpsUrl = z.string().max(2000).url().refine((value) => {
6
+ const url = new URL(value);
7
+ return url.protocol === 'https:' && !url.username && !url.password && !url.search && !url.hash && !url.port;
8
+ }, 'Use a public HTTPS URL without credentials, queries, or fragments.');
9
+ const payload = {
10
+ url: httpsUrl,
11
+ sha256: z.string().regex(/^[a-f0-9]{64}$/),
12
+ bundled: z.string().max(HUB_MAX_BYTES).optional()
13
+ };
14
+ export const hubDeliverySchema = z.discriminatedUnion('kind', [
15
+ z.object({ kind: z.literal('registry'), registryKind: z.enum(['skills', 'prompts', 'rules']), ...payload }).strict(),
16
+ z.object({ kind: z.literal('document'), ...payload }).strict(),
17
+ z.object({ kind: z.literal('pi-package'), source: z.string().max(2000).refine((source) => /^npm:(?:@[a-z0-9_.-]+\/)?[a-z0-9_.-]+@\d+\.\d+\.\d+(?:-[a-zA-Z0-9.-]+)?$/.test(source)
18
+ || /^git:https:\/\/github\.com\/[a-zA-Z0-9_.-]+\/[a-zA-Z0-9_.-]+(?:\.git)?@[a-f0-9]{40}$/.test(source), 'Packages must use an exact npm version or a GitHub commit.') }).strict()
19
+ ]);
20
+ export const hubEntrySchema = z.object({
21
+ id: z.string().regex(/^[a-z0-9-]{1,64}\/[a-z0-9-]{1,64}$/),
22
+ title: z.string().min(1).max(100),
23
+ description: z.string().min(1).max(500),
24
+ publisher: z.string().min(1).max(100),
25
+ license: z.string().min(1).max(100),
26
+ version: z.string().regex(/^\d+\.\d+\.\d+(?:-[a-zA-Z0-9.-]+)?$/),
27
+ category: z.string().regex(/^[a-z][a-z-]{0,40}$/),
28
+ channel: z.enum(['official', 'community']),
29
+ tags: z.array(z.string().max(60)).max(20),
30
+ requires: z.record(z.string(), z.string().regex(/^\d+\.\d+\.\d+$/)),
31
+ sourceUrl: httpsUrl,
32
+ delivery: hubDeliverySchema
33
+ }).strict();
34
+ export const hubCatalogSchema = z.object({
35
+ schemaVersion: z.literal(1),
36
+ entries: z.array(hubEntrySchema).max(2000)
37
+ }).strict().superRefine((catalog, ctx) => {
38
+ const keys = new Set();
39
+ catalog.entries.forEach((entry, index) => {
40
+ const key = `${entry.id}@${entry.version}`;
41
+ if (keys.has(key))
42
+ ctx.addIssue({ code: 'custom', path: ['entries', index, 'id'], message: 'Duplicate catalog item version.' });
43
+ keys.add(key);
44
+ });
45
+ });
46
+ export const hubReceiptSchema = z.object({
47
+ entry: hubEntrySchema,
48
+ installedAt: z.string(),
49
+ resourceIds: z.array(z.string()),
50
+ document: z.string().nullable(),
51
+ state: z.enum(['installed', 'changed', 'incomplete']).optional()
52
+ }).strict();
53
+ export const hubPreviewPageSchema = z.object({
54
+ entry: hubEntrySchema,
55
+ content: z.string(),
56
+ offset: z.number().int().nonnegative(),
57
+ nextOffset: z.number().int().nonnegative(),
58
+ totalBytes: z.number().int().nonnegative(),
59
+ done: z.boolean()
60
+ }).strict();
61
+ export const hubOverviewSchema = z.object({
62
+ entries: z.array(hubEntrySchema),
63
+ installed: z.array(hubReceiptSchema),
64
+ origin: z.enum(['bundled', 'cached', 'remote']),
65
+ refreshedAt: z.string().nullable(),
66
+ error: z.string().nullable(),
67
+ dataRoot: z.string().nullable(),
68
+ stateDir: z.string()
69
+ });
70
+ export function meetsMinimum(actual, minimum) {
71
+ const left = actual.split(/[.-]/).slice(0, 3).map(Number);
72
+ const right = minimum.split('.').map(Number);
73
+ for (let index = 0; index < 3; index += 1) {
74
+ if (left[index] !== right[index])
75
+ return left[index] > right[index];
76
+ }
77
+ return true;
78
+ }
@@ -0,0 +1,63 @@
1
+ export { createHarness, Harness, type HarnessOptions, type Recovery } from "./harness.js";
2
+ export { Doctor } from "./doctor/service.js";
3
+ export { doctorInputSchema, doctorReportSchema, findingSchema } from "./doctor/types.js";
4
+ export type { DoctorCheck, DoctorContext, DoctorFinding, DoctorInput, DoctorProbeContext, DoctorReport, ProviderDiagnostics, CheckResult } from "./doctor/types.js";
5
+ export { hubCatalogSchema, hubEntrySchema, hubOverviewSchema, hubReceiptSchema, type HubCatalog, type HubEntry, type HubOverview, type HubReceipt } from "./hub/schema.js";
6
+ export { Bus, log, type Notice } from "./core/bus.js";
7
+ export { EMPTY_DIRECTORY, type Directory, type HarnessEnv } from "./core/env.js";
8
+ export { HarnessError, invalid, notFound, toErrorShape, type ErrorShape } from "./core/errors.js";
9
+ export { findBinary, searchPath } from "./core/path.js";
10
+ export { fileSecretStore, memorySecretStore, secretKey, type SecretStore } from "./accounts/secrets.js";
11
+ export type { Account, AccountsOverview, Pool } from "./accounts/store.js";
12
+ export type { AccountLoginSnapshot, ModelOption } from "./accounts/accounts.js";
13
+ export type { ChoicePatch, ModeChoice } from "./accounts/choices.js";
14
+ export type { Capability, CapabilityCatalogue, CapabilityKind, CapabilityScope, CapabilitySet } from "./capabilities/types.js";
15
+ export type { RunCapabilitySnapshot } from "./capabilities/runSnapshot.js";
16
+ export type { CallerContext } from "./core/caller.js";
17
+ export { dispatch as harnessCall } from "./tools/dispatch.js";
18
+ export { compile, render, SECTION_ORDER, CONTEXT_MESSAGE_TYPE, CONTEXT_SNAPSHOT_KEY, type ContextPack, type HostSection, type HostToolGroup, type Launch, type Reference, type Section } from "./prompt/compile.js";
19
+ export { runEventSchema, runRecordSchema, isActiveStatus, type ChecklistItem, type RunEvent, type RunEventType, type RunRecord } from "./sessions/contracts.js";
20
+ export type { ApprovalFacts, ApprovalPolicy, AutomaticReason } from "./sessions/approvals.js";
21
+ export type { ScopeDecision, ToolCall, ToolPolicy } from "./sessions/policy.js";
22
+ export type { ActiveRun, ApprovalDecision, ApprovalInput, QuestionAnswer, QuestionInput } from "./sessions/registry.js";
23
+ export type { RunFields, SessionRunInput } from "./sessions/sessions.js";
24
+ export type { Effort } from "./sessions/runner.js";
25
+ export { describeTool, HARNESS_TOOLS, DEFAULT_TOOL_NAMES, WIKI_WRITE, type HarnessCall, type HarnessToolDefinition } from "./tools/definitions.js";
26
+ export type { ToolProvider, ToolResult, ToolSession, ToolSpec } from "./tools/types.js";
27
+ export { SPAWN_SUBAGENT, SUBAGENT_RELATION } from "./tools/spawnSubagent.js";
28
+ export { CHECKLIST_WRITE, checklistOf } from "./tools/checklist.js";
29
+ export { continuationOf, type Continuation, type ContinuationBlock } from "./sessions/continuation.js";
30
+ export { webTools, WEB_PLUGIN, WEB_SEARCH_KEY, type WebToolOptions } from "./web/tools.js";
31
+ export { safeRequest, type WebRequest, type WebResponse } from "./web/safeRequest.js";
32
+ export type { BrokeredTools, BrokerSession, BrokerTool } from "./mcp/service.js";
33
+ export type { Connection, ConnectionInput, AppOAuthClients } from "./mcp/types.js";
34
+ export { configureBuiltins, type ComponentItem, type SkillBundleInput } from "./variant/components.js";
35
+ export { PI_SURFACE, componentOf, type ComponentGroup, type ComponentId, type ComponentInfo, type SurfaceSpec, type Variant } from "./variant/surface.js";
36
+ export { validate as validateVariant, autotrigger, diffSummary, VariantError, type VariantCensus, type VariantDiff } from "./variant/variant.js";
37
+ export { fingerprint, type Head, type VersionRecord, type VersionSource } from "./variant/store.js";
38
+ export { materialise, type VariantChoice, type Materialised } from "./variant/materialise.js";
39
+ export { seedVariant, type SeedInput } from "./variant/seed.js";
40
+ export type { TrustedPlugin } from "./variant/trust.js";
41
+ export { DEFAULT_REFINE_HOST, defaultDeliverable, type RefineHost, type RolloutSession, type RolloutWorkspace } from "./refine/host.js";
42
+ export { PROBE_TRIGGER, IMPROVER_TRIGGER, type ImproverSettings } from "./refine/pi.js";
43
+ export type { CandidateView, StartInput as RefineStartInput } from "./refine/service.js";
44
+ export type { RefineEvent, RefineStatus, RefineSummary } from "./refine/runner.js";
45
+ export type { Executor, Improver, RecursionMode, RefineTask, Rollout } from "./refine/types.js";
46
+ export type { WorkPrompts } from "./refine/prompts.js";
47
+ export type { Experience } from "./refine/library.js";
48
+ export type { Note, NoteSummary } from "./wiki/notes.js";
49
+ export type { TerminalAssets, TerminalLaunch, TerminalPrepareInput } from "./terminal/terminals.js";
50
+ export { attach as attachPlugin, inventoryFor as pluginInventory, list as listPlugins, type AttachParams, type InventoryParams, type PluginScope } from "./plugins/api.js";
51
+ export type { Attachment, AttachScope } from "./plugins/attachments.js";
52
+ export { HARNESS_PLUGINS } from "./plugins/builtin.js";
53
+ export { FIRST_PARTY_PLUGINS } from "./plugins/firstParty.js";
54
+ export type { Found, Resolver } from "./plugins/discover.js";
55
+ export type { Loading, Registered } from "./plugins/plugins.js";
56
+ export { CONTRIBUTION_KINDS, PLUGIN_SOURCES, type ConnectorTemplate, type Contribution, type ContributionKind, type ContributionState, type Delivery, type Inventory, type InventoryItem, type Plugin, type PluginDescriptor, type PluginManage, type PluginSetting, type PluginSource } from "./plugins/types.js";
57
+ export { methods } from "./server/methods.js";
58
+ export { remoteDirectory, remotePolicy, remoteSecrets, remoteTools } from "./server/remote.js";
59
+ export { PROTOCOL_VERSION, RpcPeer, stdioTransport, type Handler, type Transport } from "./server/rpc.js";
60
+ export { attach, serve, type Served } from "./server/serve.js";
61
+ export { DEFAULT_SUBAGENT_DEPTH, MAX_SUBAGENT_DEPTH, type SubagentOptions, type SubagentInput } from "./sessions/subagents.js";
62
+ export { Subagents } from "./sessions/subagentService.js";
63
+ export { WAIT_SUBAGENTS, type SubagentResult, type SubagentSelection } from "./sessions/subagents.js";
@@ -0,0 +1,48 @@
1
+ // @xingular/harness: a Pi agent harness built on recursive harnessing (Harness², Apache-2.0,
2
+ // Google LLC). Each agent runs on a versioned variant of eight components (system prompt,
3
+ // guardrails, memory, tool guidance, subagents, skills, scripts, plugins); refinement improves a
4
+ // variant from evidence through Propose–Probe–Compose, blind selection and an experience library.
5
+ // Around it: multi-account Pi sessions, a compiled prompt with stable-prefix delivery, project
6
+ // notes (the Wiki), history, tools with a gate and standing approvals, and connected apps.
7
+ //
8
+ // An application embeds it with `createHarness` and extends it through prompt sections, tool
9
+ // providers, a tool policy, a secret store, a directory of its own names, a description of its
10
+ // own parts as plugins, and a refinement host. Everything else is reachable by path.
11
+ export { createHarness, Harness } from "./harness.js";
12
+ export { Doctor } from "./doctor/service.js";
13
+ export { doctorInputSchema, doctorReportSchema, findingSchema } from "./doctor/types.js";
14
+ export { hubCatalogSchema, hubEntrySchema, hubOverviewSchema, hubReceiptSchema } from "./hub/schema.js";
15
+ export { Bus, log } from "./core/bus.js";
16
+ export { EMPTY_DIRECTORY } from "./core/env.js";
17
+ export { HarnessError, invalid, notFound, toErrorShape } from "./core/errors.js";
18
+ export { findBinary, searchPath } from "./core/path.js";
19
+ export { fileSecretStore, memorySecretStore, secretKey } from "./accounts/secrets.js";
20
+ export { dispatch as harnessCall } from "./tools/dispatch.js";
21
+ export { compile, render, SECTION_ORDER, CONTEXT_MESSAGE_TYPE, CONTEXT_SNAPSHOT_KEY } from "./prompt/compile.js";
22
+ export { runEventSchema, runRecordSchema, isActiveStatus } from "./sessions/contracts.js";
23
+ export { describeTool, HARNESS_TOOLS, DEFAULT_TOOL_NAMES, WIKI_WRITE } from "./tools/definitions.js";
24
+ export { SPAWN_SUBAGENT, SUBAGENT_RELATION } from "./tools/spawnSubagent.js";
25
+ export { CHECKLIST_WRITE, checklistOf } from "./tools/checklist.js";
26
+ export { continuationOf } from "./sessions/continuation.js";
27
+ export { webTools, WEB_PLUGIN, WEB_SEARCH_KEY } from "./web/tools.js";
28
+ export { safeRequest } from "./web/safeRequest.js";
29
+ export { configureBuiltins } from "./variant/components.js";
30
+ // The variant and refinement.
31
+ export { PI_SURFACE, componentOf } from "./variant/surface.js";
32
+ export { validate as validateVariant, autotrigger, diffSummary, VariantError } from "./variant/variant.js";
33
+ export { fingerprint } from "./variant/store.js";
34
+ export { materialise } from "./variant/materialise.js";
35
+ export { seedVariant } from "./variant/seed.js";
36
+ export { DEFAULT_REFINE_HOST, defaultDeliverable } from "./refine/host.js";
37
+ export { PROBE_TRIGGER, IMPROVER_TRIGGER } from "./refine/pi.js";
38
+ export { attach as attachPlugin, inventoryFor as pluginInventory, list as listPlugins } from "./plugins/api.js";
39
+ export { HARNESS_PLUGINS } from "./plugins/builtin.js";
40
+ export { FIRST_PARTY_PLUGINS } from "./plugins/firstParty.js";
41
+ export { CONTRIBUTION_KINDS, PLUGIN_SOURCES } from "./plugins/types.js";
42
+ export { methods } from "./server/methods.js";
43
+ export { remoteDirectory, remotePolicy, remoteSecrets, remoteTools } from "./server/remote.js";
44
+ export { PROTOCOL_VERSION, RpcPeer, stdioTransport } from "./server/rpc.js";
45
+ export { attach, serve } from "./server/serve.js";
46
+ export { DEFAULT_SUBAGENT_DEPTH, MAX_SUBAGENT_DEPTH } from "./sessions/subagents.js";
47
+ export { Subagents } from "./sessions/subagentService.js";
48
+ export { WAIT_SUBAGENTS } from "./sessions/subagents.js";
@@ -0,0 +1,83 @@
1
+ import { type SecretStore } from "../accounts/secrets.js";
2
+ import type { Bus } from "../core/bus.js";
3
+ import type { RunEvent } from "../sessions/contracts.js";
4
+ import { type AppOAuthClients, type Connection, type ConnectionInput, type LaunchConfig, type Scope } from "./types.js";
5
+ /** Remote servers and sign-in pages must use TLS; plain HTTP is only for servers on this machine. */
6
+ export declare function webUrl(text: string | null | undefined): URL | null;
7
+ /** Whether a session with this scope may reach the connection. */
8
+ export declare function allowed(connection: Connection, scope: Scope): boolean;
9
+ /** Gives one agent exactly these connections, leaving every other agent's access as it was. */
10
+ export declare function setAgentScope(all: Connection[], agentId: string, ids: readonly string[]): void;
11
+ /**
12
+ * Switches one connection on or off for everyone, for one agent, or for one project, leaving
13
+ * every other agent's and project's access as it was.
14
+ */
15
+ export declare function setScope(connection: Connection, scope: Scope, on: boolean): void;
16
+ /** Why these connections cannot be given to a session with this scope, or nothing. */
17
+ export declare function validateScopeIds(all: readonly Connection[], scope: Scope, ids: readonly string[]): void;
18
+ /** Replaces the value of every `"key": "…"` in text that is not valid JSON (a truncated summary). */
19
+ export declare function redactJsonField(text: string, key: string): string;
20
+ /** Drops credential-like fields from a value, including from JSON carried as text. */
21
+ export declare function scrubSensitive(value: unknown): unknown;
22
+ /** `scrubSensitive`, and every one of `secrets` replaced wherever it appears in text. */
23
+ export declare function scrubWith(value: unknown, secrets: readonly string[]): unknown;
24
+ export declare function revisionOf(all: readonly Connection[]): unknown[];
25
+ export declare class Connections {
26
+ private readonly secrets;
27
+ private readonly bus;
28
+ private readonly attachmentRoot;
29
+ private readonly appClients;
30
+ private readonly path;
31
+ /** Every secret value a connection holds, so results can be redacted without waiting on the store. */
32
+ private readonly known;
33
+ constructor(stateDir: string, secrets: SecretStore, bus: Bus, attachmentRoot?: () => string | null, appClients?: AppOAuthClients | null);
34
+ list(): Connection[];
35
+ find(id: string): Connection;
36
+ forScope(scope: Scope): Connection[];
37
+ revision(): unknown[];
38
+ private write;
39
+ private writeScope;
40
+ changed(): void;
41
+ /** Read-modify-write of one connection. */
42
+ update(id: string, change: (connection: Connection) => void): Connection;
43
+ /** Read-modify-write of every connection. */
44
+ updateAll(change: (all: Connection[]) => void): void;
45
+ /** Switches one connector in the shared attachment store, preserving all other scopes. */
46
+ setScope(connectionId: string, scope: Scope, on: boolean): Connection[];
47
+ /** Gives one agent an exact connector set without changing project or global choices. */
48
+ setAgentScope(agentId: string, ids: readonly string[]): Connection[];
49
+ /** Removes only connector choices when an agent is deleted; other capability choices are separate. */
50
+ removeAgentScope(agentId: string): void;
51
+ private secret;
52
+ private setSecret;
53
+ private deleteSecret;
54
+ /** Everything the secret store holds for a connection: environment and header values, and OAuth credentials. */
55
+ private secretValues;
56
+ /** Reloads the secret values used for redaction. Called at start and whenever a connection's secrets change. */
57
+ refreshSecrets(): Promise<void>;
58
+ /** A connection's result, safe to persist. */
59
+ scrub(value: unknown, connectionId: string): unknown;
60
+ /** Removes credentials from the evidence a run event carries. */
61
+ redactEvent(event: RunEvent): void;
62
+ launch(connection: Connection): Promise<LaunchConfig>;
63
+ private requireOauth;
64
+ /** The saved sign-in of a connection, with the client the user registered, or the application's own. */
65
+ oauthLoad(id: string): Promise<Record<string, unknown>>;
66
+ /** The client this application registered for a catalog entry, if it has one. */
67
+ private appClient;
68
+ /** Whether a sign-in can be started: a dynamic server registers itself, the others need a client. */
69
+ hasSignInClient(connection: Connection): Promise<boolean>;
70
+ /** The catalog entries this application can sign in for without asking for a client. */
71
+ availableAppClients(): string[];
72
+ oauthSave(id: string, state: Record<string, unknown>): Promise<void>;
73
+ hasOauthClient(id: string): Promise<boolean>;
74
+ private forgetSignIn;
75
+ save(input: ConnectionInput): Promise<Connection>;
76
+ /**
77
+ * Adds one tool to a connection's no-approval list. Unlike a full save this keeps the
78
+ * connection's pending approvals, so the request the user is answering can still be approved.
79
+ */
80
+ allowTool(connectionId: string, tool: string): Connection;
81
+ remove(connectionId: string): Promise<void>;
82
+ signOut(connectionId: string): Promise<Connection>;
83
+ }