@pi-harness/pi-harness 0.1.2 → 0.1.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (914) hide show
  1. package/LICENSE +9 -0
  2. package/README.md +31 -7
  3. package/apps/web/dist/assets/index-CihATCjR.css +2 -0
  4. package/apps/web/dist/assets/index-NzapJoGa.js +20 -0
  5. package/apps/web/dist/assets/markdown-vendor-DUdMWn0M.js +66 -0
  6. package/apps/web/dist/assets/react-vendor-BD7-wQo9.js +9 -0
  7. package/apps/web/dist/icons/app/android-192.png +0 -0
  8. package/apps/web/dist/icons/app/android-512.png +0 -0
  9. package/apps/web/dist/icons/app/app-blue-512.png +0 -0
  10. package/apps/web/dist/icons/app/app-store-1024.png +0 -0
  11. package/apps/web/dist/icons/app/apple-touch-icon-180.png +0 -0
  12. package/apps/web/dist/icons/app/maskable-512.png +0 -0
  13. package/apps/web/dist/icons/favicon/favicon-16.png +0 -0
  14. package/apps/web/dist/icons/favicon/favicon-32.png +0 -0
  15. package/apps/web/dist/icons/favicon/favicon-48.png +0 -0
  16. package/apps/web/dist/icons/png-blue/pi-256.png +0 -0
  17. package/apps/web/dist/icons/png-blue/pi-512.png +0 -0
  18. package/apps/web/dist/icons/png-ink/pi-1024.png +0 -0
  19. package/apps/web/dist/icons/png-ink/pi-128.png +0 -0
  20. package/apps/web/dist/icons/png-ink/pi-16.png +0 -0
  21. package/apps/web/dist/icons/png-ink/pi-24.png +0 -0
  22. package/apps/web/dist/icons/png-ink/pi-256.png +0 -0
  23. package/apps/web/dist/icons/png-ink/pi-32.png +0 -0
  24. package/apps/web/dist/icons/png-ink/pi-48.png +0 -0
  25. package/apps/web/dist/icons/png-ink/pi-512.png +0 -0
  26. package/apps/web/dist/icons/png-ink/pi-64.png +0 -0
  27. package/apps/web/dist/icons/png-white/pi-1024.png +0 -0
  28. package/apps/web/dist/icons/png-white/pi-128.png +0 -0
  29. package/apps/web/dist/icons/png-white/pi-16.png +0 -0
  30. package/apps/web/dist/icons/png-white/pi-24.png +0 -0
  31. package/apps/web/dist/icons/png-white/pi-256.png +0 -0
  32. package/apps/web/dist/icons/png-white/pi-32.png +0 -0
  33. package/apps/web/dist/icons/png-white/pi-48.png +0 -0
  34. package/apps/web/dist/icons/png-white/pi-512.png +0 -0
  35. package/apps/web/dist/icons/png-white/pi-64.png +0 -0
  36. package/apps/web/dist/icons/social/og-1200x630.png +0 -0
  37. package/apps/web/dist/icons/svg/app-icon-blue.svg +13 -0
  38. package/apps/web/dist/icons/svg/app-icon-ink.svg +13 -0
  39. package/apps/web/dist/icons/svg/favicon.svg +10 -0
  40. package/apps/web/dist/icons/svg/lockup-horizontal.svg +13 -0
  41. package/apps/web/dist/icons/svg/mark-blue.svg +10 -0
  42. package/apps/web/dist/icons/svg/mark-compact.svg +10 -0
  43. package/apps/web/dist/icons/svg/mark-ink.svg +10 -0
  44. package/apps/web/dist/icons/svg/mark-white.svg +10 -0
  45. package/apps/web/dist/icons/svg/mark.svg +10 -0
  46. package/apps/web/dist/index.html +18 -6
  47. package/apps/web/dist/manifest.webmanifest +14 -0
  48. package/apps/web/index.html +14 -4
  49. package/apps/web/package.json +11 -9
  50. package/apps/web/profile/cordis.yml +222 -1
  51. package/apps/web/public/icons/app/android-192.png +0 -0
  52. package/apps/web/public/icons/app/android-512.png +0 -0
  53. package/apps/web/public/icons/app/app-blue-512.png +0 -0
  54. package/apps/web/public/icons/app/app-store-1024.png +0 -0
  55. package/apps/web/public/icons/app/apple-touch-icon-180.png +0 -0
  56. package/apps/web/public/icons/app/maskable-512.png +0 -0
  57. package/apps/web/public/icons/favicon/favicon-16.png +0 -0
  58. package/apps/web/public/icons/favicon/favicon-32.png +0 -0
  59. package/apps/web/public/icons/favicon/favicon-48.png +0 -0
  60. package/apps/web/public/icons/png-blue/pi-256.png +0 -0
  61. package/apps/web/public/icons/png-blue/pi-512.png +0 -0
  62. package/apps/web/public/icons/png-ink/pi-1024.png +0 -0
  63. package/apps/web/public/icons/png-ink/pi-128.png +0 -0
  64. package/apps/web/public/icons/png-ink/pi-16.png +0 -0
  65. package/apps/web/public/icons/png-ink/pi-24.png +0 -0
  66. package/apps/web/public/icons/png-ink/pi-256.png +0 -0
  67. package/apps/web/public/icons/png-ink/pi-32.png +0 -0
  68. package/apps/web/public/icons/png-ink/pi-48.png +0 -0
  69. package/apps/web/public/icons/png-ink/pi-512.png +0 -0
  70. package/apps/web/public/icons/png-ink/pi-64.png +0 -0
  71. package/apps/web/public/icons/png-white/pi-1024.png +0 -0
  72. package/apps/web/public/icons/png-white/pi-128.png +0 -0
  73. package/apps/web/public/icons/png-white/pi-16.png +0 -0
  74. package/apps/web/public/icons/png-white/pi-24.png +0 -0
  75. package/apps/web/public/icons/png-white/pi-256.png +0 -0
  76. package/apps/web/public/icons/png-white/pi-32.png +0 -0
  77. package/apps/web/public/icons/png-white/pi-48.png +0 -0
  78. package/apps/web/public/icons/png-white/pi-512.png +0 -0
  79. package/apps/web/public/icons/png-white/pi-64.png +0 -0
  80. package/apps/web/public/icons/social/og-1200x630.png +0 -0
  81. package/apps/web/public/icons/svg/app-icon-blue.svg +13 -0
  82. package/apps/web/public/icons/svg/app-icon-ink.svg +13 -0
  83. package/apps/web/public/icons/svg/favicon.svg +10 -0
  84. package/apps/web/public/icons/svg/lockup-horizontal.svg +13 -0
  85. package/apps/web/public/icons/svg/mark-blue.svg +10 -0
  86. package/apps/web/public/icons/svg/mark-compact.svg +10 -0
  87. package/apps/web/public/icons/svg/mark-ink.svg +10 -0
  88. package/apps/web/public/icons/svg/mark-white.svg +10 -0
  89. package/apps/web/public/icons/svg/mark.svg +10 -0
  90. package/apps/web/public/manifest.webmanifest +14 -0
  91. package/apps/web/server-dist/bin.js +19 -6
  92. package/apps/web/server-dist/bin.js.map +1 -1
  93. package/apps/web/src/command-palette.ts +28 -7
  94. package/apps/web/src/file-diff.ts +15 -10
  95. package/apps/web/src/main.ts +4 -1
  96. package/apps/web/src/runtime.css +17 -4
  97. package/apps/web/src/server/bin.ts +24 -7
  98. package/apps/web/src/style.css +2618 -8
  99. package/apps/web/src/tailwind.css +25 -0
  100. package/apps/web/tsconfig.build.json +5 -1
  101. package/apps/web/tsconfig.json +1 -1
  102. package/apps/web/vite.config.ts +20 -0
  103. package/package.json +29 -17
  104. package/packages/api-gateway/LICENSE +9 -0
  105. package/packages/api-gateway/dist/index.d.ts.map +1 -1
  106. package/packages/api-gateway/dist/index.js +1188 -42
  107. package/packages/api-gateway/dist/index.js.map +1 -1
  108. package/packages/api-gateway/dist/marketplace-entries/official/agent-teams.json +31 -0
  109. package/packages/api-gateway/dist/marketplace-entries/official/anchored-standard.json +29 -0
  110. package/packages/api-gateway/dist/marketplace-entries/official/annotation.json +28 -0
  111. package/packages/api-gateway/dist/marketplace-entries/official/archify.json +31 -0
  112. package/packages/api-gateway/dist/marketplace-entries/official/at-file.json +28 -0
  113. package/packages/api-gateway/dist/marketplace-entries/official/auto-mode.json +32 -0
  114. package/packages/api-gateway/dist/marketplace-entries/official/better-sidebar.json +32 -0
  115. package/packages/api-gateway/dist/marketplace-entries/official/browser-fetch.json +28 -0
  116. package/packages/api-gateway/dist/marketplace-entries/official/browser-session.json +29 -0
  117. package/packages/api-gateway/dist/marketplace-entries/official/canvas-draw.json +29 -0
  118. package/packages/api-gateway/dist/marketplace-entries/official/change-verifier.json +30 -0
  119. package/packages/api-gateway/dist/marketplace-entries/official/cleaner.json +29 -0
  120. package/packages/api-gateway/dist/marketplace-entries/official/cli-notifier.json +30 -0
  121. package/packages/api-gateway/dist/marketplace-entries/official/code2skill.json +29 -0
  122. package/packages/api-gateway/dist/marketplace-entries/official/colleague-skill.json +30 -0
  123. package/packages/api-gateway/dist/marketplace-entries/official/context-doctor.json +30 -0
  124. package/packages/api-gateway/dist/marketplace-entries/official/context.json +28 -0
  125. package/packages/api-gateway/dist/marketplace-entries/official/cordis-group.json +16 -0
  126. package/packages/api-gateway/dist/marketplace-entries/official/cordis-logger-console.json +16 -0
  127. package/packages/api-gateway/dist/marketplace-entries/official/cordis-timer.json +16 -0
  128. package/packages/api-gateway/dist/marketplace-entries/official/cost-meter.json +31 -0
  129. package/packages/api-gateway/dist/marketplace-entries/official/dependency-checker.json +31 -0
  130. package/packages/api-gateway/dist/marketplace-entries/official/docker-sandbox.json +29 -0
  131. package/packages/api-gateway/dist/marketplace-entries/official/fail-logger.json +29 -0
  132. package/packages/api-gateway/dist/marketplace-entries/official/genui.json +28 -0
  133. package/packages/api-gateway/dist/marketplace-entries/official/git-time-capsule.json +30 -0
  134. package/packages/api-gateway/dist/marketplace-entries/official/graph-memory.json +29 -0
  135. package/packages/api-gateway/dist/marketplace-entries/official/history-compressor.json +33 -0
  136. package/packages/api-gateway/dist/marketplace-entries/official/hol-guard.json +29 -0
  137. package/packages/api-gateway/dist/marketplace-entries/official/i18n-pair.json +29 -0
  138. package/packages/api-gateway/dist/marketplace-entries/official/image-compressor.json +29 -0
  139. package/packages/api-gateway/dist/marketplace-entries/official/llm-verifier.json +32 -0
  140. package/packages/api-gateway/dist/marketplace-entries/official/mcp-client.json +29 -0
  141. package/packages/api-gateway/dist/marketplace-entries/official/mcp-panel.json +29 -0
  142. package/packages/api-gateway/dist/marketplace-entries/official/memory.json +28 -0
  143. package/packages/api-gateway/dist/marketplace-entries/official/mirage-bridge.json +33 -0
  144. package/packages/api-gateway/dist/marketplace-entries/official/mock-server.json +29 -0
  145. package/packages/api-gateway/dist/marketplace-entries/official/modlens.json +28 -0
  146. package/packages/api-gateway/dist/marketplace-entries/official/module-search.json +30 -0
  147. package/packages/api-gateway/dist/marketplace-entries/official/obsidian-sync.json +29 -0
  148. package/packages/api-gateway/dist/marketplace-entries/official/openpets.json +29 -0
  149. package/packages/api-gateway/dist/marketplace-entries/official/plan-execute.json +29 -0
  150. package/packages/api-gateway/dist/marketplace-entries/official/plugin-check.json +29 -0
  151. package/packages/api-gateway/dist/marketplace-entries/official/plugin-dev.json +29 -0
  152. package/packages/api-gateway/dist/marketplace-entries/official/plugin-finder.json +32 -0
  153. package/packages/api-gateway/dist/marketplace-entries/official/plugin-radar.json +28 -0
  154. package/packages/api-gateway/dist/marketplace-entries/official/plugin-stars.json +29 -0
  155. package/packages/api-gateway/dist/marketplace-entries/official/prompt-guard.json +28 -0
  156. package/packages/api-gateway/dist/marketplace-entries/official/prompt-library.json +30 -0
  157. package/packages/api-gateway/dist/marketplace-entries/official/readme-gen.json +31 -0
  158. package/packages/api-gateway/dist/marketplace-entries/official/recall-unread.json +29 -0
  159. package/packages/api-gateway/dist/marketplace-entries/official/reverse-skill.json +30 -0
  160. package/packages/api-gateway/dist/marketplace-entries/official/reviewer-bot.json +29 -0
  161. package/packages/api-gateway/dist/marketplace-entries/official/runtime-doctor.json +32 -0
  162. package/packages/api-gateway/dist/marketplace-entries/official/secure-audit.json +30 -0
  163. package/packages/api-gateway/dist/marketplace-entries/official/session-bookmarks.json +30 -0
  164. package/packages/api-gateway/dist/marketplace-entries/official/session-bridge.json +30 -0
  165. package/packages/api-gateway/dist/marketplace-entries/official/session-compare.json +30 -0
  166. package/packages/api-gateway/dist/marketplace-entries/official/session-export.json +30 -0
  167. package/packages/api-gateway/dist/marketplace-entries/official/session-insights.json +29 -0
  168. package/packages/api-gateway/dist/marketplace-entries/official/session-search.json +30 -0
  169. package/packages/api-gateway/dist/marketplace-entries/official/skill-catalog.json +31 -0
  170. package/packages/api-gateway/dist/marketplace-entries/official/skill-guard.json +29 -0
  171. package/packages/api-gateway/dist/marketplace-entries/official/sql-lens.json +29 -0
  172. package/packages/api-gateway/dist/marketplace-entries/official/synapse.json +28 -0
  173. package/packages/api-gateway/dist/marketplace-entries/official/tab-manager.json +29 -0
  174. package/packages/api-gateway/dist/marketplace-entries/official/taskboard.json +29 -0
  175. package/packages/api-gateway/dist/marketplace-entries/official/telemetry-blocker.json +29 -0
  176. package/packages/api-gateway/dist/marketplace-entries/official/test-harness.json +29 -0
  177. package/packages/api-gateway/dist/marketplace-entries/official/theme-studio.json +32 -0
  178. package/packages/api-gateway/dist/marketplace-entries/official/token-guard.json +32 -0
  179. package/packages/api-gateway/dist/marketplace-entries/official/turn-rewind.json +29 -0
  180. package/packages/api-gateway/dist/marketplace-entries/official/undo-savepoint.json +28 -0
  181. package/packages/api-gateway/dist/marketplace-entries/official/vision-toolkit.json +29 -0
  182. package/packages/api-gateway/dist/marketplace-entries/official/web-research.json +29 -0
  183. package/packages/api-gateway/dist/marketplace-entries/official/workspace-navigator.json +32 -0
  184. package/packages/api-gateway/dist/marketplace-entries/official/workspace-search.json +29 -0
  185. package/packages/api-gateway/dist/marketplace-entries/official/yaml-validator.json +29 -0
  186. package/packages/api-gateway/dist/marketplace.d.ts +40 -2
  187. package/packages/api-gateway/dist/marketplace.d.ts.map +1 -1
  188. package/packages/api-gateway/dist/marketplace.js +225 -19
  189. package/packages/api-gateway/dist/marketplace.js.map +1 -1
  190. package/packages/api-gateway/dist/workspaces.d.ts +8 -0
  191. package/packages/api-gateway/dist/workspaces.d.ts.map +1 -0
  192. package/packages/api-gateway/dist/workspaces.js +14 -0
  193. package/packages/api-gateway/dist/workspaces.js.map +1 -0
  194. package/packages/api-gateway/package.json +20 -10
  195. package/packages/api-gateway/scripts/copy-marketplace-entries.mjs +13 -0
  196. package/packages/api-gateway/src/index.ts +1258 -61
  197. package/packages/api-gateway/src/marketplace-entries/official/agent-teams.json +31 -0
  198. package/packages/api-gateway/src/marketplace-entries/official/anchored-standard.json +29 -0
  199. package/packages/api-gateway/src/marketplace-entries/official/annotation.json +28 -0
  200. package/packages/api-gateway/src/marketplace-entries/official/archify.json +31 -0
  201. package/packages/api-gateway/src/marketplace-entries/official/at-file.json +28 -0
  202. package/packages/api-gateway/src/marketplace-entries/official/auto-mode.json +32 -0
  203. package/packages/api-gateway/src/marketplace-entries/official/better-sidebar.json +32 -0
  204. package/packages/api-gateway/src/marketplace-entries/official/browser-fetch.json +28 -0
  205. package/packages/api-gateway/src/marketplace-entries/official/browser-session.json +29 -0
  206. package/packages/api-gateway/src/marketplace-entries/official/canvas-draw.json +29 -0
  207. package/packages/api-gateway/src/marketplace-entries/official/change-verifier.json +30 -0
  208. package/packages/api-gateway/src/marketplace-entries/official/cleaner.json +29 -0
  209. package/packages/api-gateway/src/marketplace-entries/official/cli-notifier.json +30 -0
  210. package/packages/api-gateway/src/marketplace-entries/official/code2skill.json +29 -0
  211. package/packages/api-gateway/src/marketplace-entries/official/colleague-skill.json +30 -0
  212. package/packages/api-gateway/src/marketplace-entries/official/context-doctor.json +30 -0
  213. package/packages/api-gateway/src/marketplace-entries/official/context.json +28 -0
  214. package/packages/api-gateway/src/marketplace-entries/official/cordis-group.json +16 -0
  215. package/packages/api-gateway/src/marketplace-entries/official/cordis-logger-console.json +16 -0
  216. package/packages/api-gateway/src/marketplace-entries/official/cordis-timer.json +16 -0
  217. package/packages/api-gateway/src/marketplace-entries/official/cost-meter.json +31 -0
  218. package/packages/api-gateway/src/marketplace-entries/official/dependency-checker.json +31 -0
  219. package/packages/api-gateway/src/marketplace-entries/official/docker-sandbox.json +29 -0
  220. package/packages/api-gateway/src/marketplace-entries/official/fail-logger.json +29 -0
  221. package/packages/api-gateway/src/marketplace-entries/official/genui.json +28 -0
  222. package/packages/api-gateway/src/marketplace-entries/official/git-time-capsule.json +30 -0
  223. package/packages/api-gateway/src/marketplace-entries/official/graph-memory.json +29 -0
  224. package/packages/api-gateway/src/marketplace-entries/official/history-compressor.json +33 -0
  225. package/packages/api-gateway/src/marketplace-entries/official/hol-guard.json +29 -0
  226. package/packages/api-gateway/src/marketplace-entries/official/i18n-pair.json +29 -0
  227. package/packages/api-gateway/src/marketplace-entries/official/image-compressor.json +29 -0
  228. package/packages/api-gateway/src/marketplace-entries/official/llm-verifier.json +32 -0
  229. package/packages/api-gateway/src/marketplace-entries/official/mcp-client.json +29 -0
  230. package/packages/api-gateway/src/marketplace-entries/official/mcp-panel.json +29 -0
  231. package/packages/api-gateway/src/marketplace-entries/official/memory.json +28 -0
  232. package/packages/api-gateway/src/marketplace-entries/official/mirage-bridge.json +33 -0
  233. package/packages/api-gateway/src/marketplace-entries/official/mock-server.json +29 -0
  234. package/packages/api-gateway/src/marketplace-entries/official/modlens.json +28 -0
  235. package/packages/api-gateway/src/marketplace-entries/official/module-search.json +30 -0
  236. package/packages/api-gateway/src/marketplace-entries/official/obsidian-sync.json +29 -0
  237. package/packages/api-gateway/src/marketplace-entries/official/openpets.json +29 -0
  238. package/packages/api-gateway/src/marketplace-entries/official/plan-execute.json +29 -0
  239. package/packages/api-gateway/src/marketplace-entries/official/plugin-check.json +29 -0
  240. package/packages/api-gateway/src/marketplace-entries/official/plugin-dev.json +29 -0
  241. package/packages/api-gateway/src/marketplace-entries/official/plugin-finder.json +32 -0
  242. package/packages/api-gateway/src/marketplace-entries/official/plugin-radar.json +28 -0
  243. package/packages/api-gateway/src/marketplace-entries/official/plugin-stars.json +29 -0
  244. package/packages/api-gateway/src/marketplace-entries/official/prompt-guard.json +28 -0
  245. package/packages/api-gateway/src/marketplace-entries/official/prompt-library.json +30 -0
  246. package/packages/api-gateway/src/marketplace-entries/official/readme-gen.json +31 -0
  247. package/packages/api-gateway/src/marketplace-entries/official/recall-unread.json +29 -0
  248. package/packages/api-gateway/src/marketplace-entries/official/reverse-skill.json +30 -0
  249. package/packages/api-gateway/src/marketplace-entries/official/reviewer-bot.json +29 -0
  250. package/packages/api-gateway/src/marketplace-entries/official/runtime-doctor.json +32 -0
  251. package/packages/api-gateway/src/marketplace-entries/official/secure-audit.json +30 -0
  252. package/packages/api-gateway/src/marketplace-entries/official/session-bookmarks.json +30 -0
  253. package/packages/api-gateway/src/marketplace-entries/official/session-bridge.json +30 -0
  254. package/packages/api-gateway/src/marketplace-entries/official/session-compare.json +30 -0
  255. package/packages/api-gateway/src/marketplace-entries/official/session-export.json +30 -0
  256. package/packages/api-gateway/src/marketplace-entries/official/session-insights.json +29 -0
  257. package/packages/api-gateway/src/marketplace-entries/official/session-search.json +30 -0
  258. package/packages/api-gateway/src/marketplace-entries/official/skill-catalog.json +31 -0
  259. package/packages/api-gateway/src/marketplace-entries/official/skill-guard.json +29 -0
  260. package/packages/api-gateway/src/marketplace-entries/official/sql-lens.json +29 -0
  261. package/packages/api-gateway/src/marketplace-entries/official/synapse.json +28 -0
  262. package/packages/api-gateway/src/marketplace-entries/official/tab-manager.json +29 -0
  263. package/packages/api-gateway/src/marketplace-entries/official/taskboard.json +29 -0
  264. package/packages/api-gateway/src/marketplace-entries/official/telemetry-blocker.json +29 -0
  265. package/packages/api-gateway/src/marketplace-entries/official/test-harness.json +29 -0
  266. package/packages/api-gateway/src/marketplace-entries/official/theme-studio.json +32 -0
  267. package/packages/api-gateway/src/marketplace-entries/official/token-guard.json +32 -0
  268. package/packages/api-gateway/src/marketplace-entries/official/turn-rewind.json +29 -0
  269. package/packages/api-gateway/src/marketplace-entries/official/undo-savepoint.json +28 -0
  270. package/packages/api-gateway/src/marketplace-entries/official/vision-toolkit.json +29 -0
  271. package/packages/api-gateway/src/marketplace-entries/official/web-research.json +29 -0
  272. package/packages/api-gateway/src/marketplace-entries/official/workspace-navigator.json +32 -0
  273. package/packages/api-gateway/src/marketplace-entries/official/workspace-search.json +29 -0
  274. package/packages/api-gateway/src/marketplace-entries/official/yaml-validator.json +29 -0
  275. package/packages/api-gateway/src/marketplace.ts +267 -22
  276. package/packages/api-gateway/src/workspaces.ts +20 -0
  277. package/packages/api-gateway/test/index.test.ts +483 -33
  278. package/packages/api-gateway/test/marketplace.test.ts +282 -3
  279. package/packages/api-gateway/test/release-version.test.ts +71 -0
  280. package/packages/api-gateway/test/workspaces.test.ts +13 -0
  281. package/packages/api-gateway/tsconfig.build.json +1 -1
  282. package/packages/api-gateway/tsconfig.json +1 -1
  283. package/packages/bundle-web-app/LICENSE +9 -0
  284. package/packages/bundle-web-app/package.json +19 -9
  285. package/packages/bundle-web-app/tsconfig.build.json +1 -1
  286. package/packages/bundle-web-app/tsconfig.json +1 -1
  287. package/packages/cli/LICENSE +9 -0
  288. package/packages/cli/dist/args.d.ts.map +1 -1
  289. package/packages/cli/dist/args.js +16 -9
  290. package/packages/cli/dist/args.js.map +1 -1
  291. package/packages/cli/dist/bin.js +12 -3
  292. package/packages/cli/dist/bin.js.map +1 -1
  293. package/packages/cli/dist/main.d.ts +1 -0
  294. package/packages/cli/dist/main.d.ts.map +1 -1
  295. package/packages/cli/dist/main.js +49 -9
  296. package/packages/cli/dist/main.js.map +1 -1
  297. package/packages/cli/dist/node-stdio.d.ts +3 -1
  298. package/packages/cli/dist/node-stdio.d.ts.map +1 -1
  299. package/packages/cli/dist/node-stdio.js +91 -13
  300. package/packages/cli/dist/node-stdio.js.map +1 -1
  301. package/packages/cli/dist/relaunch.d.ts.map +1 -1
  302. package/packages/cli/dist/relaunch.js +23 -10
  303. package/packages/cli/dist/relaunch.js.map +1 -1
  304. package/packages/cli/package.json +18 -8
  305. package/packages/cli/src/args.ts +16 -10
  306. package/packages/cli/src/bin.ts +12 -3
  307. package/packages/cli/src/main.ts +54 -10
  308. package/packages/cli/src/node-stdio.ts +85 -13
  309. package/packages/cli/src/relaunch.ts +19 -6
  310. package/packages/cli/test/args.test.ts +22 -3
  311. package/packages/cli/test/binary.test.ts +58 -0
  312. package/packages/cli/test/broken-pipe.test.ts +32 -0
  313. package/packages/cli/test/cli.test.ts +57 -8
  314. package/packages/cli/test/node-stdio.test.ts +89 -0
  315. package/packages/cli/test/relaunch.test.ts +30 -2
  316. package/packages/cli/test/stdin-shutdown.test.ts +59 -0
  317. package/packages/cli/tsconfig.build.json +1 -3
  318. package/packages/cli/tsconfig.json +1 -4
  319. package/packages/client-web/LICENSE +9 -0
  320. package/packages/client-web/dist/annotation-ui.d.ts +11 -0
  321. package/packages/client-web/dist/annotation-ui.d.ts.map +1 -0
  322. package/packages/client-web/dist/annotation-ui.js +24 -0
  323. package/packages/client-web/dist/annotation-ui.js.map +1 -0
  324. package/packages/client-web/dist/browser-session-view.d.ts +7 -0
  325. package/packages/client-web/dist/browser-session-view.d.ts.map +1 -0
  326. package/packages/client-web/dist/browser-session-view.js +8 -0
  327. package/packages/client-web/dist/browser-session-view.js.map +1 -0
  328. package/packages/client-web/dist/control-room.d.ts +151 -6
  329. package/packages/client-web/dist/control-room.d.ts.map +1 -1
  330. package/packages/client-web/dist/control-room.js +156 -11
  331. package/packages/client-web/dist/control-room.js.map +1 -1
  332. package/packages/client-web/dist/design-contract.d.ts.map +1 -1
  333. package/packages/client-web/dist/design-contract.js +178 -19
  334. package/packages/client-web/dist/design-contract.js.map +1 -1
  335. package/packages/client-web/dist/index.d.ts +4 -1
  336. package/packages/client-web/dist/index.d.ts.map +1 -1
  337. package/packages/client-web/dist/index.js +11 -3
  338. package/packages/client-web/dist/index.js.map +1 -1
  339. package/packages/client-web/dist/markdown.d.ts +5 -0
  340. package/packages/client-web/dist/markdown.d.ts.map +1 -0
  341. package/packages/client-web/dist/markdown.js +20 -0
  342. package/packages/client-web/dist/markdown.js.map +1 -0
  343. package/packages/client-web/dist/marketplace-catalog.d.ts +3 -0
  344. package/packages/client-web/dist/marketplace-catalog.d.ts.map +1 -0
  345. package/packages/client-web/dist/marketplace-catalog.js +10 -0
  346. package/packages/client-web/dist/marketplace-catalog.js.map +1 -0
  347. package/packages/client-web/dist/marketplace-navigation.d.ts +19 -0
  348. package/packages/client-web/dist/marketplace-navigation.d.ts.map +1 -0
  349. package/packages/client-web/dist/marketplace-navigation.js +31 -0
  350. package/packages/client-web/dist/marketplace-navigation.js.map +1 -0
  351. package/packages/client-web/dist/message-content.d.ts +9 -0
  352. package/packages/client-web/dist/message-content.d.ts.map +1 -0
  353. package/packages/client-web/dist/message-content.js +54 -0
  354. package/packages/client-web/dist/message-content.js.map +1 -0
  355. package/packages/client-web/dist/plugin-navigation.d.ts +3 -0
  356. package/packages/client-web/dist/plugin-navigation.d.ts.map +1 -0
  357. package/packages/client-web/dist/plugin-navigation.js +10 -0
  358. package/packages/client-web/dist/plugin-navigation.js.map +1 -0
  359. package/packages/client-web/dist/plugin-search.d.ts +2 -0
  360. package/packages/client-web/dist/plugin-search.d.ts.map +1 -0
  361. package/packages/client-web/dist/plugin-search.js +7 -0
  362. package/packages/client-web/dist/plugin-search.js.map +1 -0
  363. package/packages/client-web/dist/plugin-stars-view.d.ts +12 -0
  364. package/packages/client-web/dist/plugin-stars-view.d.ts.map +1 -0
  365. package/packages/client-web/dist/plugin-stars-view.js +8 -0
  366. package/packages/client-web/dist/plugin-stars-view.js.map +1 -0
  367. package/packages/client-web/dist/prompt-completion.d.ts +13 -0
  368. package/packages/client-web/dist/prompt-completion.d.ts.map +1 -0
  369. package/packages/client-web/dist/prompt-completion.js +17 -0
  370. package/packages/client-web/dist/prompt-completion.js.map +1 -0
  371. package/packages/client-web/dist/react-room.d.ts +2 -1
  372. package/packages/client-web/dist/react-room.d.ts.map +1 -1
  373. package/packages/client-web/dist/react-room.js +2347 -93
  374. package/packages/client-web/dist/react-room.js.map +1 -1
  375. package/packages/client-web/dist/runtime-events.d.ts +4 -0
  376. package/packages/client-web/dist/runtime-events.d.ts.map +1 -0
  377. package/packages/client-web/dist/runtime-events.js +29 -0
  378. package/packages/client-web/dist/runtime-events.js.map +1 -0
  379. package/packages/client-web/package.json +19 -7
  380. package/packages/client-web/src/annotation-ui.ts +29 -0
  381. package/packages/client-web/src/browser-session-view.ts +13 -0
  382. package/packages/client-web/src/control-room.ts +359 -11
  383. package/packages/client-web/src/design-contract.ts +248 -26
  384. package/packages/client-web/src/index.ts +17 -4
  385. package/packages/client-web/src/markdown.tsx +22 -0
  386. package/packages/client-web/src/marketplace-catalog.ts +10 -0
  387. package/packages/client-web/src/marketplace-navigation.ts +46 -0
  388. package/packages/client-web/src/message-content.ts +51 -0
  389. package/packages/client-web/src/plugin-navigation.ts +9 -0
  390. package/packages/client-web/src/plugin-search.ts +5 -0
  391. package/packages/client-web/src/plugin-stars-view.ts +19 -0
  392. package/packages/client-web/src/prompt-completion.ts +24 -0
  393. package/packages/client-web/src/react-room.tsx +7360 -54
  394. package/packages/client-web/src/runtime-events.ts +29 -0
  395. package/packages/client-web/test/annotation-ui.test.ts +21 -0
  396. package/packages/client-web/test/browser-session-view.test.ts +17 -0
  397. package/packages/client-web/test/design-contract.test.ts +46 -1
  398. package/packages/client-web/test/marketplace-catalog.test.ts +52 -0
  399. package/packages/client-web/test/message-content.test.ts +43 -0
  400. package/packages/client-web/test/plugin-navigation.test.ts +16 -0
  401. package/packages/client-web/test/plugin-search.test.ts +22 -0
  402. package/packages/client-web/test/plugin-stars-view.test.ts +20 -0
  403. package/packages/client-web/test/prompt-completion.test.ts +21 -0
  404. package/packages/client-web/test/runtime-events.test.ts +28 -0
  405. package/packages/client-web/tsconfig.build.json +13 -1
  406. package/packages/client-web/tsconfig.json +11 -1
  407. package/packages/core/LICENSE +9 -0
  408. package/packages/core/dist/boot.d.ts.map +1 -1
  409. package/packages/core/dist/boot.js +42 -3
  410. package/packages/core/dist/boot.js.map +1 -1
  411. package/packages/core/dist/config.d.ts +2 -0
  412. package/packages/core/dist/config.d.ts.map +1 -0
  413. package/packages/core/dist/config.js +8 -0
  414. package/packages/core/dist/config.js.map +1 -0
  415. package/packages/core/dist/http.d.ts +8 -0
  416. package/packages/core/dist/http.d.ts.map +1 -0
  417. package/packages/core/dist/http.js +27 -0
  418. package/packages/core/dist/http.js.map +1 -0
  419. package/packages/core/dist/index.d.ts +2 -0
  420. package/packages/core/dist/index.d.ts.map +1 -1
  421. package/packages/core/dist/index.js +2 -0
  422. package/packages/core/dist/index.js.map +1 -1
  423. package/packages/core/dist/plugins/agent-teams.d.ts +17 -0
  424. package/packages/core/dist/plugins/agent-teams.d.ts.map +1 -0
  425. package/packages/core/dist/plugins/agent-teams.js +298 -0
  426. package/packages/core/dist/plugins/agent-teams.js.map +1 -0
  427. package/packages/core/dist/plugins/anchored-standard.d.ts +14 -0
  428. package/packages/core/dist/plugins/anchored-standard.d.ts.map +1 -0
  429. package/packages/core/dist/plugins/anchored-standard.js +84 -0
  430. package/packages/core/dist/plugins/anchored-standard.js.map +1 -0
  431. package/packages/core/dist/plugins/annotation.d.ts +18 -0
  432. package/packages/core/dist/plugins/annotation.d.ts.map +1 -0
  433. package/packages/core/dist/plugins/annotation.js +94 -0
  434. package/packages/core/dist/plugins/annotation.js.map +1 -0
  435. package/packages/core/dist/plugins/archify.d.ts +23 -0
  436. package/packages/core/dist/plugins/archify.d.ts.map +1 -0
  437. package/packages/core/dist/plugins/archify.js +98 -0
  438. package/packages/core/dist/plugins/archify.js.map +1 -0
  439. package/packages/core/dist/plugins/at-file.d.ts +8 -0
  440. package/packages/core/dist/plugins/at-file.d.ts.map +1 -0
  441. package/packages/core/dist/plugins/at-file.js +52 -0
  442. package/packages/core/dist/plugins/at-file.js.map +1 -0
  443. package/packages/core/dist/plugins/auto-mode.d.ts +15 -0
  444. package/packages/core/dist/plugins/auto-mode.d.ts.map +1 -0
  445. package/packages/core/dist/plugins/auto-mode.js +114 -0
  446. package/packages/core/dist/plugins/auto-mode.js.map +1 -0
  447. package/packages/core/dist/plugins/better-sidebar.d.ts +37 -0
  448. package/packages/core/dist/plugins/better-sidebar.d.ts.map +1 -0
  449. package/packages/core/dist/plugins/better-sidebar.js +89 -0
  450. package/packages/core/dist/plugins/better-sidebar.js.map +1 -0
  451. package/packages/core/dist/plugins/browser-fetch.d.ts +14 -0
  452. package/packages/core/dist/plugins/browser-fetch.d.ts.map +1 -0
  453. package/packages/core/dist/plugins/browser-fetch.js +167 -0
  454. package/packages/core/dist/plugins/browser-fetch.js.map +1 -0
  455. package/packages/core/dist/plugins/browser-session.d.ts +14 -0
  456. package/packages/core/dist/plugins/browser-session.d.ts.map +1 -0
  457. package/packages/core/dist/plugins/browser-session.js +265 -0
  458. package/packages/core/dist/plugins/browser-session.js.map +1 -0
  459. package/packages/core/dist/plugins/canvas-draw.d.ts +8 -0
  460. package/packages/core/dist/plugins/canvas-draw.d.ts.map +1 -0
  461. package/packages/core/dist/plugins/canvas-draw.js +88 -0
  462. package/packages/core/dist/plugins/canvas-draw.js.map +1 -0
  463. package/packages/core/dist/plugins/change-verifier.d.ts +8 -0
  464. package/packages/core/dist/plugins/change-verifier.d.ts.map +1 -0
  465. package/packages/core/dist/plugins/change-verifier.js +67 -0
  466. package/packages/core/dist/plugins/change-verifier.js.map +1 -0
  467. package/packages/core/dist/plugins/cleaner.d.ts +8 -0
  468. package/packages/core/dist/plugins/cleaner.d.ts.map +1 -0
  469. package/packages/core/dist/plugins/cleaner.js +56 -0
  470. package/packages/core/dist/plugins/cleaner.js.map +1 -0
  471. package/packages/core/dist/plugins/cli-notifier.d.ts +15 -0
  472. package/packages/core/dist/plugins/cli-notifier.d.ts.map +1 -0
  473. package/packages/core/dist/plugins/cli-notifier.js +110 -0
  474. package/packages/core/dist/plugins/cli-notifier.js.map +1 -0
  475. package/packages/core/dist/plugins/code2skill.d.ts +8 -0
  476. package/packages/core/dist/plugins/code2skill.d.ts.map +1 -0
  477. package/packages/core/dist/plugins/code2skill.js +95 -0
  478. package/packages/core/dist/plugins/code2skill.js.map +1 -0
  479. package/packages/core/dist/plugins/colleague-skill.d.ts +27 -0
  480. package/packages/core/dist/plugins/colleague-skill.d.ts.map +1 -0
  481. package/packages/core/dist/plugins/colleague-skill.js +99 -0
  482. package/packages/core/dist/plugins/colleague-skill.js.map +1 -0
  483. package/packages/core/dist/plugins/context-doctor.d.ts +30 -0
  484. package/packages/core/dist/plugins/context-doctor.d.ts.map +1 -0
  485. package/packages/core/dist/plugins/context-doctor.js +95 -0
  486. package/packages/core/dist/plugins/context-doctor.js.map +1 -0
  487. package/packages/core/dist/plugins/context.d.ts +8 -0
  488. package/packages/core/dist/plugins/context.d.ts.map +1 -0
  489. package/packages/core/dist/plugins/context.js +87 -0
  490. package/packages/core/dist/plugins/context.js.map +1 -0
  491. package/packages/core/dist/plugins/cost-meter.d.ts +32 -0
  492. package/packages/core/dist/plugins/cost-meter.d.ts.map +1 -0
  493. package/packages/core/dist/plugins/cost-meter.js +204 -0
  494. package/packages/core/dist/plugins/cost-meter.js.map +1 -0
  495. package/packages/core/dist/plugins/dependency-checker.d.ts +27 -0
  496. package/packages/core/dist/plugins/dependency-checker.d.ts.map +1 -0
  497. package/packages/core/dist/plugins/dependency-checker.js +221 -0
  498. package/packages/core/dist/plugins/dependency-checker.js.map +1 -0
  499. package/packages/core/dist/plugins/docker-sandbox.d.ts +8 -0
  500. package/packages/core/dist/plugins/docker-sandbox.d.ts.map +1 -0
  501. package/packages/core/dist/plugins/docker-sandbox.js +102 -0
  502. package/packages/core/dist/plugins/docker-sandbox.js.map +1 -0
  503. package/packages/core/dist/plugins/fail-logger.d.ts +8 -0
  504. package/packages/core/dist/plugins/fail-logger.d.ts.map +1 -0
  505. package/packages/core/dist/plugins/fail-logger.js +51 -0
  506. package/packages/core/dist/plugins/fail-logger.js.map +1 -0
  507. package/packages/core/dist/plugins/genui.d.ts +8 -0
  508. package/packages/core/dist/plugins/genui.d.ts.map +1 -0
  509. package/packages/core/dist/plugins/genui.js +79 -0
  510. package/packages/core/dist/plugins/genui.js.map +1 -0
  511. package/packages/core/dist/plugins/git-time-capsule.d.ts +9 -0
  512. package/packages/core/dist/plugins/git-time-capsule.d.ts.map +1 -0
  513. package/packages/core/dist/plugins/git-time-capsule.js +90 -0
  514. package/packages/core/dist/plugins/git-time-capsule.js.map +1 -0
  515. package/packages/core/dist/plugins/graph-memory.d.ts +16 -0
  516. package/packages/core/dist/plugins/graph-memory.d.ts.map +1 -0
  517. package/packages/core/dist/plugins/graph-memory.js +382 -0
  518. package/packages/core/dist/plugins/graph-memory.js.map +1 -0
  519. package/packages/core/dist/plugins/history-compressor.d.ts +15 -0
  520. package/packages/core/dist/plugins/history-compressor.d.ts.map +1 -0
  521. package/packages/core/dist/plugins/history-compressor.js +80 -0
  522. package/packages/core/dist/plugins/history-compressor.js.map +1 -0
  523. package/packages/core/dist/plugins/hol-guard.d.ts +29 -0
  524. package/packages/core/dist/plugins/hol-guard.d.ts.map +1 -0
  525. package/packages/core/dist/plugins/hol-guard.js +139 -0
  526. package/packages/core/dist/plugins/hol-guard.js.map +1 -0
  527. package/packages/core/dist/plugins/i18n-pair.d.ts +8 -0
  528. package/packages/core/dist/plugins/i18n-pair.d.ts.map +1 -0
  529. package/packages/core/dist/plugins/i18n-pair.js +76 -0
  530. package/packages/core/dist/plugins/i18n-pair.js.map +1 -0
  531. package/packages/core/dist/plugins/image-compressor.d.ts +8 -0
  532. package/packages/core/dist/plugins/image-compressor.d.ts.map +1 -0
  533. package/packages/core/dist/plugins/image-compressor.js +150 -0
  534. package/packages/core/dist/plugins/image-compressor.js.map +1 -0
  535. package/packages/core/dist/plugins/llm-verifier.d.ts +42 -0
  536. package/packages/core/dist/plugins/llm-verifier.d.ts.map +1 -0
  537. package/packages/core/dist/plugins/llm-verifier.js +128 -0
  538. package/packages/core/dist/plugins/llm-verifier.js.map +1 -0
  539. package/packages/core/dist/plugins/mcp-client.d.ts +19 -0
  540. package/packages/core/dist/plugins/mcp-client.d.ts.map +1 -0
  541. package/packages/core/dist/plugins/mcp-client.js +534 -0
  542. package/packages/core/dist/plugins/mcp-client.js.map +1 -0
  543. package/packages/core/dist/plugins/mcp-panel.d.ts +14 -0
  544. package/packages/core/dist/plugins/mcp-panel.d.ts.map +1 -0
  545. package/packages/core/dist/plugins/mcp-panel.js +180 -0
  546. package/packages/core/dist/plugins/mcp-panel.js.map +1 -0
  547. package/packages/core/dist/plugins/memory.d.ts +15 -0
  548. package/packages/core/dist/plugins/memory.d.ts.map +1 -0
  549. package/packages/core/dist/plugins/memory.js +161 -0
  550. package/packages/core/dist/plugins/memory.js.map +1 -0
  551. package/packages/core/dist/plugins/mirage-bridge.d.ts +23 -0
  552. package/packages/core/dist/plugins/mirage-bridge.d.ts.map +1 -0
  553. package/packages/core/dist/plugins/mirage-bridge.js +149 -0
  554. package/packages/core/dist/plugins/mirage-bridge.js.map +1 -0
  555. package/packages/core/dist/plugins/mock-server.d.ts +22 -0
  556. package/packages/core/dist/plugins/mock-server.d.ts.map +1 -0
  557. package/packages/core/dist/plugins/mock-server.js +149 -0
  558. package/packages/core/dist/plugins/mock-server.js.map +1 -0
  559. package/packages/core/dist/plugins/model.d.ts +1 -1
  560. package/packages/core/dist/plugins/model.d.ts.map +1 -1
  561. package/packages/core/dist/plugins/model.js +3 -1
  562. package/packages/core/dist/plugins/model.js.map +1 -1
  563. package/packages/core/dist/plugins/models.d.ts.map +1 -1
  564. package/packages/core/dist/plugins/models.js +5 -2
  565. package/packages/core/dist/plugins/models.js.map +1 -1
  566. package/packages/core/dist/plugins/modlens.d.ts +8 -0
  567. package/packages/core/dist/plugins/modlens.d.ts.map +1 -0
  568. package/packages/core/dist/plugins/modlens.js +63 -0
  569. package/packages/core/dist/plugins/modlens.js.map +1 -0
  570. package/packages/core/dist/plugins/module-search.d.ts +27 -0
  571. package/packages/core/dist/plugins/module-search.d.ts.map +1 -0
  572. package/packages/core/dist/plugins/module-search.js +174 -0
  573. package/packages/core/dist/plugins/module-search.js.map +1 -0
  574. package/packages/core/dist/plugins/obsidian-sync.d.ts +14 -0
  575. package/packages/core/dist/plugins/obsidian-sync.d.ts.map +1 -0
  576. package/packages/core/dist/plugins/obsidian-sync.js +79 -0
  577. package/packages/core/dist/plugins/obsidian-sync.js.map +1 -0
  578. package/packages/core/dist/plugins/openpets.d.ts +14 -0
  579. package/packages/core/dist/plugins/openpets.d.ts.map +1 -0
  580. package/packages/core/dist/plugins/openpets.js +99 -0
  581. package/packages/core/dist/plugins/openpets.js.map +1 -0
  582. package/packages/core/dist/plugins/plan-execute.d.ts +8 -0
  583. package/packages/core/dist/plugins/plan-execute.d.ts.map +1 -0
  584. package/packages/core/dist/plugins/plan-execute.js +70 -0
  585. package/packages/core/dist/plugins/plan-execute.js.map +1 -0
  586. package/packages/core/dist/plugins/plugin-check.d.ts +38 -0
  587. package/packages/core/dist/plugins/plugin-check.d.ts.map +1 -0
  588. package/packages/core/dist/plugins/plugin-check.js +227 -0
  589. package/packages/core/dist/plugins/plugin-check.js.map +1 -0
  590. package/packages/core/dist/plugins/plugin-dev.d.ts +8 -0
  591. package/packages/core/dist/plugins/plugin-dev.d.ts.map +1 -0
  592. package/packages/core/dist/plugins/plugin-dev.js +44 -0
  593. package/packages/core/dist/plugins/plugin-dev.js.map +1 -0
  594. package/packages/core/dist/plugins/plugin-finder.d.ts +16 -0
  595. package/packages/core/dist/plugins/plugin-finder.d.ts.map +1 -0
  596. package/packages/core/dist/plugins/plugin-finder.js +98 -0
  597. package/packages/core/dist/plugins/plugin-finder.js.map +1 -0
  598. package/packages/core/dist/plugins/plugin-radar.d.ts +29 -0
  599. package/packages/core/dist/plugins/plugin-radar.d.ts.map +1 -0
  600. package/packages/core/dist/plugins/plugin-radar.js +146 -0
  601. package/packages/core/dist/plugins/plugin-radar.js.map +1 -0
  602. package/packages/core/dist/plugins/plugin-stars.d.ts +45 -0
  603. package/packages/core/dist/plugins/plugin-stars.d.ts.map +1 -0
  604. package/packages/core/dist/plugins/plugin-stars.js +165 -0
  605. package/packages/core/dist/plugins/plugin-stars.js.map +1 -0
  606. package/packages/core/dist/plugins/prompt-guard.d.ts +8 -0
  607. package/packages/core/dist/plugins/prompt-guard.d.ts.map +1 -0
  608. package/packages/core/dist/plugins/prompt-guard.js +114 -0
  609. package/packages/core/dist/plugins/prompt-guard.js.map +1 -0
  610. package/packages/core/dist/plugins/prompt-library.d.ts +25 -0
  611. package/packages/core/dist/plugins/prompt-library.d.ts.map +1 -0
  612. package/packages/core/dist/plugins/prompt-library.js +142 -0
  613. package/packages/core/dist/plugins/prompt-library.js.map +1 -0
  614. package/packages/core/dist/plugins/readme-gen.d.ts +25 -0
  615. package/packages/core/dist/plugins/readme-gen.d.ts.map +1 -0
  616. package/packages/core/dist/plugins/readme-gen.js +139 -0
  617. package/packages/core/dist/plugins/readme-gen.js.map +1 -0
  618. package/packages/core/dist/plugins/recall-unread.d.ts +24 -0
  619. package/packages/core/dist/plugins/recall-unread.d.ts.map +1 -0
  620. package/packages/core/dist/plugins/recall-unread.js +124 -0
  621. package/packages/core/dist/plugins/recall-unread.js.map +1 -0
  622. package/packages/core/dist/plugins/resources.d.ts +1 -0
  623. package/packages/core/dist/plugins/resources.d.ts.map +1 -1
  624. package/packages/core/dist/plugins/resources.js +31 -22
  625. package/packages/core/dist/plugins/resources.js.map +1 -1
  626. package/packages/core/dist/plugins/reverse-skill.d.ts +23 -0
  627. package/packages/core/dist/plugins/reverse-skill.d.ts.map +1 -0
  628. package/packages/core/dist/plugins/reverse-skill.js +60 -0
  629. package/packages/core/dist/plugins/reverse-skill.js.map +1 -0
  630. package/packages/core/dist/plugins/reviewer-bot.d.ts +14 -0
  631. package/packages/core/dist/plugins/reviewer-bot.d.ts.map +1 -0
  632. package/packages/core/dist/plugins/reviewer-bot.js +133 -0
  633. package/packages/core/dist/plugins/reviewer-bot.js.map +1 -0
  634. package/packages/core/dist/plugins/runtime-doctor.d.ts +33 -0
  635. package/packages/core/dist/plugins/runtime-doctor.d.ts.map +1 -0
  636. package/packages/core/dist/plugins/runtime-doctor.js +114 -0
  637. package/packages/core/dist/plugins/runtime-doctor.js.map +1 -0
  638. package/packages/core/dist/plugins/runtime.d.ts.map +1 -1
  639. package/packages/core/dist/plugins/runtime.js +63 -14
  640. package/packages/core/dist/plugins/runtime.js.map +1 -1
  641. package/packages/core/dist/plugins/secure-audit.d.ts +31 -0
  642. package/packages/core/dist/plugins/secure-audit.d.ts.map +1 -0
  643. package/packages/core/dist/plugins/secure-audit.js +121 -0
  644. package/packages/core/dist/plugins/secure-audit.js.map +1 -0
  645. package/packages/core/dist/plugins/session-bookmarks.d.ts +15 -0
  646. package/packages/core/dist/plugins/session-bookmarks.d.ts.map +1 -0
  647. package/packages/core/dist/plugins/session-bookmarks.js +87 -0
  648. package/packages/core/dist/plugins/session-bookmarks.js.map +1 -0
  649. package/packages/core/dist/plugins/session-bridge.d.ts +44 -0
  650. package/packages/core/dist/plugins/session-bridge.d.ts.map +1 -0
  651. package/packages/core/dist/plugins/session-bridge.js +265 -0
  652. package/packages/core/dist/plugins/session-bridge.js.map +1 -0
  653. package/packages/core/dist/plugins/session-compare.d.ts +33 -0
  654. package/packages/core/dist/plugins/session-compare.d.ts.map +1 -0
  655. package/packages/core/dist/plugins/session-compare.js +150 -0
  656. package/packages/core/dist/plugins/session-compare.js.map +1 -0
  657. package/packages/core/dist/plugins/session-export.d.ts +9 -0
  658. package/packages/core/dist/plugins/session-export.d.ts.map +1 -0
  659. package/packages/core/dist/plugins/session-export.js +93 -0
  660. package/packages/core/dist/plugins/session-export.js.map +1 -0
  661. package/packages/core/dist/plugins/session-insights.d.ts +8 -0
  662. package/packages/core/dist/plugins/session-insights.d.ts.map +1 -0
  663. package/packages/core/dist/plugins/session-insights.js +47 -0
  664. package/packages/core/dist/plugins/session-insights.js.map +1 -0
  665. package/packages/core/dist/plugins/session-search.d.ts +20 -0
  666. package/packages/core/dist/plugins/session-search.d.ts.map +1 -0
  667. package/packages/core/dist/plugins/session-search.js +122 -0
  668. package/packages/core/dist/plugins/session-search.js.map +1 -0
  669. package/packages/core/dist/plugins/session.d.ts.map +1 -1
  670. package/packages/core/dist/plugins/session.js +4 -2
  671. package/packages/core/dist/plugins/session.js.map +1 -1
  672. package/packages/core/dist/plugins/skill-catalog.d.ts +26 -0
  673. package/packages/core/dist/plugins/skill-catalog.d.ts.map +1 -0
  674. package/packages/core/dist/plugins/skill-catalog.js +97 -0
  675. package/packages/core/dist/plugins/skill-catalog.js.map +1 -0
  676. package/packages/core/dist/plugins/skill-guard.d.ts +26 -0
  677. package/packages/core/dist/plugins/skill-guard.d.ts.map +1 -0
  678. package/packages/core/dist/plugins/skill-guard.js +139 -0
  679. package/packages/core/dist/plugins/skill-guard.js.map +1 -0
  680. package/packages/core/dist/plugins/sql-lens.d.ts +8 -0
  681. package/packages/core/dist/plugins/sql-lens.d.ts.map +1 -0
  682. package/packages/core/dist/plugins/sql-lens.js +85 -0
  683. package/packages/core/dist/plugins/sql-lens.js.map +1 -0
  684. package/packages/core/dist/plugins/stdio.d.ts +1 -1
  685. package/packages/core/dist/plugins/stdio.d.ts.map +1 -1
  686. package/packages/core/dist/plugins/stdio.js +3 -1
  687. package/packages/core/dist/plugins/stdio.js.map +1 -1
  688. package/packages/core/dist/plugins/synapse.d.ts +38 -0
  689. package/packages/core/dist/plugins/synapse.d.ts.map +1 -0
  690. package/packages/core/dist/plugins/synapse.js +93 -0
  691. package/packages/core/dist/plugins/synapse.js.map +1 -0
  692. package/packages/core/dist/plugins/tab-manager.d.ts +8 -0
  693. package/packages/core/dist/plugins/tab-manager.d.ts.map +1 -0
  694. package/packages/core/dist/plugins/tab-manager.js +135 -0
  695. package/packages/core/dist/plugins/tab-manager.js.map +1 -0
  696. package/packages/core/dist/plugins/taskboard.d.ts +15 -0
  697. package/packages/core/dist/plugins/taskboard.d.ts.map +1 -0
  698. package/packages/core/dist/plugins/taskboard.js +347 -0
  699. package/packages/core/dist/plugins/taskboard.js.map +1 -0
  700. package/packages/core/dist/plugins/telemetry-blocker.d.ts +8 -0
  701. package/packages/core/dist/plugins/telemetry-blocker.d.ts.map +1 -0
  702. package/packages/core/dist/plugins/telemetry-blocker.js +57 -0
  703. package/packages/core/dist/plugins/telemetry-blocker.js.map +1 -0
  704. package/packages/core/dist/plugins/test-harness.d.ts +8 -0
  705. package/packages/core/dist/plugins/test-harness.d.ts.map +1 -0
  706. package/packages/core/dist/plugins/test-harness.js +64 -0
  707. package/packages/core/dist/plugins/test-harness.js.map +1 -0
  708. package/packages/core/dist/plugins/theme-studio.d.ts +29 -0
  709. package/packages/core/dist/plugins/theme-studio.d.ts.map +1 -0
  710. package/packages/core/dist/plugins/theme-studio.js +141 -0
  711. package/packages/core/dist/plugins/theme-studio.js.map +1 -0
  712. package/packages/core/dist/plugins/token-guard.d.ts +15 -0
  713. package/packages/core/dist/plugins/token-guard.d.ts.map +1 -0
  714. package/packages/core/dist/plugins/token-guard.js +78 -0
  715. package/packages/core/dist/plugins/token-guard.js.map +1 -0
  716. package/packages/core/dist/plugins/tools.d.ts.map +1 -1
  717. package/packages/core/dist/plugins/tools.js +5 -2
  718. package/packages/core/dist/plugins/tools.js.map +1 -1
  719. package/packages/core/dist/plugins/turn-rewind.d.ts +19 -0
  720. package/packages/core/dist/plugins/turn-rewind.d.ts.map +1 -0
  721. package/packages/core/dist/plugins/turn-rewind.js +74 -0
  722. package/packages/core/dist/plugins/turn-rewind.js.map +1 -0
  723. package/packages/core/dist/plugins/undo-savepoint.d.ts +17 -0
  724. package/packages/core/dist/plugins/undo-savepoint.d.ts.map +1 -0
  725. package/packages/core/dist/plugins/undo-savepoint.js +247 -0
  726. package/packages/core/dist/plugins/undo-savepoint.js.map +1 -0
  727. package/packages/core/dist/plugins/vision-toolkit.d.ts +17 -0
  728. package/packages/core/dist/plugins/vision-toolkit.d.ts.map +1 -0
  729. package/packages/core/dist/plugins/vision-toolkit.js +145 -0
  730. package/packages/core/dist/plugins/vision-toolkit.js.map +1 -0
  731. package/packages/core/dist/plugins/web-research.d.ts +17 -0
  732. package/packages/core/dist/plugins/web-research.d.ts.map +1 -0
  733. package/packages/core/dist/plugins/web-research.js +275 -0
  734. package/packages/core/dist/plugins/web-research.js.map +1 -0
  735. package/packages/core/dist/plugins/workspace-navigator.d.ts +36 -0
  736. package/packages/core/dist/plugins/workspace-navigator.d.ts.map +1 -0
  737. package/packages/core/dist/plugins/workspace-navigator.js +150 -0
  738. package/packages/core/dist/plugins/workspace-navigator.js.map +1 -0
  739. package/packages/core/dist/plugins/workspace-search.d.ts +8 -0
  740. package/packages/core/dist/plugins/workspace-search.d.ts.map +1 -0
  741. package/packages/core/dist/plugins/workspace-search.js +134 -0
  742. package/packages/core/dist/plugins/workspace-search.js.map +1 -0
  743. package/packages/core/dist/plugins/yaml-validator.d.ts +8 -0
  744. package/packages/core/dist/plugins/yaml-validator.d.ts.map +1 -0
  745. package/packages/core/dist/plugins/yaml-validator.js +94 -0
  746. package/packages/core/dist/plugins/yaml-validator.js.map +1 -0
  747. package/packages/core/dist/profile.d.ts +1 -0
  748. package/packages/core/dist/profile.d.ts.map +1 -1
  749. package/packages/core/dist/profile.js +3 -0
  750. package/packages/core/dist/profile.js.map +1 -1
  751. package/packages/core/dist/runtime.d.ts.map +1 -1
  752. package/packages/core/dist/runtime.js +13 -4
  753. package/packages/core/dist/runtime.js.map +1 -1
  754. package/packages/core/dist/services.d.ts +55 -0
  755. package/packages/core/dist/services.d.ts.map +1 -1
  756. package/packages/core/dist/services.js +58 -2
  757. package/packages/core/dist/services.js.map +1 -1
  758. package/packages/core/dist/stdio.d.ts +13 -2
  759. package/packages/core/dist/stdio.d.ts.map +1 -1
  760. package/packages/core/dist/stdio.js +75 -9
  761. package/packages/core/dist/stdio.js.map +1 -1
  762. package/packages/core/dist/workspace-path.d.ts +12 -0
  763. package/packages/core/dist/workspace-path.d.ts.map +1 -0
  764. package/packages/core/dist/workspace-path.js +62 -0
  765. package/packages/core/dist/workspace-path.js.map +1 -0
  766. package/packages/core/package.json +18 -8
  767. package/packages/core/profiles/default/cordis.yml +85 -0
  768. package/packages/core/profiles/development/cordis.yml +1 -1
  769. package/packages/core/src/boot.ts +38 -2
  770. package/packages/core/src/config.ts +5 -0
  771. package/packages/core/src/http.ts +32 -0
  772. package/packages/core/src/index.ts +2 -0
  773. package/packages/core/src/plugins/agent-teams.ts +291 -0
  774. package/packages/core/src/plugins/anchored-standard.ts +88 -0
  775. package/packages/core/src/plugins/annotation.ts +106 -0
  776. package/packages/core/src/plugins/archify.ts +124 -0
  777. package/packages/core/src/plugins/at-file.ts +54 -0
  778. package/packages/core/src/plugins/auto-mode.ts +123 -0
  779. package/packages/core/src/plugins/better-sidebar.ts +117 -0
  780. package/packages/core/src/plugins/browser-fetch.ts +171 -0
  781. package/packages/core/src/plugins/browser-session.ts +287 -0
  782. package/packages/core/src/plugins/canvas-draw.ts +90 -0
  783. package/packages/core/src/plugins/change-verifier.ts +79 -0
  784. package/packages/core/src/plugins/cleaner.ts +61 -0
  785. package/packages/core/src/plugins/cli-notifier.ts +125 -0
  786. package/packages/core/src/plugins/code2skill.ts +96 -0
  787. package/packages/core/src/plugins/colleague-skill.ts +122 -0
  788. package/packages/core/src/plugins/context-doctor.ts +117 -0
  789. package/packages/core/src/plugins/context.ts +102 -0
  790. package/packages/core/src/plugins/cost-meter.ts +231 -0
  791. package/packages/core/src/plugins/dependency-checker.ts +241 -0
  792. package/packages/core/src/plugins/docker-sandbox.ts +100 -0
  793. package/packages/core/src/plugins/fail-logger.ts +51 -0
  794. package/packages/core/src/plugins/genui.ts +88 -0
  795. package/packages/core/src/plugins/git-time-capsule.ts +97 -0
  796. package/packages/core/src/plugins/graph-memory.ts +394 -0
  797. package/packages/core/src/plugins/history-compressor.ts +81 -0
  798. package/packages/core/src/plugins/hol-guard.ts +153 -0
  799. package/packages/core/src/plugins/i18n-pair.ts +82 -0
  800. package/packages/core/src/plugins/image-compressor.ts +144 -0
  801. package/packages/core/src/plugins/llm-verifier.ts +164 -0
  802. package/packages/core/src/plugins/mcp-client.ts +559 -0
  803. package/packages/core/src/plugins/mcp-panel.ts +190 -0
  804. package/packages/core/src/plugins/memory.ts +176 -0
  805. package/packages/core/src/plugins/mirage-bridge.ts +179 -0
  806. package/packages/core/src/plugins/mock-server.ts +158 -0
  807. package/packages/core/src/plugins/model.ts +3 -1
  808. package/packages/core/src/plugins/models.ts +5 -2
  809. package/packages/core/src/plugins/modlens.ts +63 -0
  810. package/packages/core/src/plugins/module-search.ts +201 -0
  811. package/packages/core/src/plugins/obsidian-sync.ts +83 -0
  812. package/packages/core/src/plugins/openpets.ts +109 -0
  813. package/packages/core/src/plugins/plan-execute.ts +76 -0
  814. package/packages/core/src/plugins/plugin-check.ts +232 -0
  815. package/packages/core/src/plugins/plugin-dev.ts +47 -0
  816. package/packages/core/src/plugins/plugin-finder.ts +108 -0
  817. package/packages/core/src/plugins/plugin-radar.ts +179 -0
  818. package/packages/core/src/plugins/plugin-stars.ts +205 -0
  819. package/packages/core/src/plugins/prompt-guard.ts +122 -0
  820. package/packages/core/src/plugins/prompt-library.ts +165 -0
  821. package/packages/core/src/plugins/readme-gen.ts +147 -0
  822. package/packages/core/src/plugins/recall-unread.ts +142 -0
  823. package/packages/core/src/plugins/resources.ts +28 -21
  824. package/packages/core/src/plugins/reverse-skill.ts +79 -0
  825. package/packages/core/src/plugins/reviewer-bot.ts +146 -0
  826. package/packages/core/src/plugins/runtime-doctor.ts +137 -0
  827. package/packages/core/src/plugins/runtime.ts +61 -14
  828. package/packages/core/src/plugins/secure-audit.ts +146 -0
  829. package/packages/core/src/plugins/session-bookmarks.ts +89 -0
  830. package/packages/core/src/plugins/session-bridge.ts +299 -0
  831. package/packages/core/src/plugins/session-compare.ts +180 -0
  832. package/packages/core/src/plugins/session-export.ts +99 -0
  833. package/packages/core/src/plugins/session-insights.ts +47 -0
  834. package/packages/core/src/plugins/session-search.ts +126 -0
  835. package/packages/core/src/plugins/session.ts +4 -2
  836. package/packages/core/src/plugins/skill-catalog.ts +117 -0
  837. package/packages/core/src/plugins/skill-guard.ts +152 -0
  838. package/packages/core/src/plugins/sql-lens.ts +92 -0
  839. package/packages/core/src/plugins/stdio.ts +3 -1
  840. package/packages/core/src/plugins/synapse.ts +130 -0
  841. package/packages/core/src/plugins/tab-manager.ts +135 -0
  842. package/packages/core/src/plugins/taskboard.ts +412 -0
  843. package/packages/core/src/plugins/telemetry-blocker.ts +62 -0
  844. package/packages/core/src/plugins/test-harness.ts +67 -0
  845. package/packages/core/src/plugins/theme-studio.ts +165 -0
  846. package/packages/core/src/plugins/token-guard.ts +84 -0
  847. package/packages/core/src/plugins/tools.ts +5 -2
  848. package/packages/core/src/plugins/turn-rewind.ts +86 -0
  849. package/packages/core/src/plugins/undo-savepoint.ts +284 -0
  850. package/packages/core/src/plugins/vision-toolkit.ts +153 -0
  851. package/packages/core/src/plugins/web-research.ts +289 -0
  852. package/packages/core/src/plugins/workspace-navigator.ts +164 -0
  853. package/packages/core/src/plugins/workspace-search.ts +139 -0
  854. package/packages/core/src/plugins/yaml-validator.ts +97 -0
  855. package/packages/core/src/profile.ts +3 -0
  856. package/packages/core/src/runtime.ts +11 -4
  857. package/packages/core/src/services.ts +110 -3
  858. package/packages/core/src/stdio.ts +79 -9
  859. package/packages/core/src/workspace-path.ts +69 -0
  860. package/packages/core/test/agent-teams.test.ts +24 -0
  861. package/packages/core/test/archify.test.ts +33 -0
  862. package/packages/core/test/better-sidebar.test.ts +125 -0
  863. package/packages/core/test/boot.test.ts +49 -6
  864. package/packages/core/test/colleague-skill.test.ts +74 -0
  865. package/packages/core/test/config.test.ts +121 -0
  866. package/packages/core/test/context-doctor.test.ts +32 -0
  867. package/packages/core/test/dependency-checker.test.ts +60 -0
  868. package/packages/core/test/git-time-capsule.test.ts +115 -0
  869. package/packages/core/test/http.test.ts +34 -0
  870. package/packages/core/test/llm-verifier.test.ts +72 -0
  871. package/packages/core/test/mirage-bridge.test.ts +54 -0
  872. package/packages/core/test/module-search.test.ts +78 -0
  873. package/packages/core/test/plugin-check.test.ts +16 -0
  874. package/packages/core/test/plugin-stars.test.ts +55 -0
  875. package/packages/core/test/profiles.integration.test.ts +49 -15
  876. package/packages/core/test/prompt-library.test.ts +56 -0
  877. package/packages/core/test/readme-gen.test.ts +45 -0
  878. package/packages/core/test/recall-unread.test.ts +35 -0
  879. package/packages/core/test/registry.test.ts +48 -0
  880. package/packages/core/test/reverse-skill.test.ts +40 -0
  881. package/packages/core/test/runtime-doctor.test.ts +55 -0
  882. package/packages/core/test/runtime-fixture.ts +4 -4
  883. package/packages/core/test/runtime.test.ts +90 -1
  884. package/packages/core/test/secure-audit.test.ts +16 -0
  885. package/packages/core/test/services.test.ts +2024 -5
  886. package/packages/core/test/session-bookmarks.test.ts +62 -0
  887. package/packages/core/test/session-bridge.test.ts +103 -0
  888. package/packages/core/test/session-compare.test.ts +94 -0
  889. package/packages/core/test/session-export.test.ts +54 -0
  890. package/packages/core/test/session-search.test.ts +30 -0
  891. package/packages/core/test/skill-catalog.test.ts +18 -0
  892. package/packages/core/test/skill-guard.test.ts +21 -0
  893. package/packages/core/test/stdio-args.test.ts +178 -0
  894. package/packages/core/test/theme-studio.test.ts +39 -0
  895. package/packages/core/test/token-guard.test.ts +34 -0
  896. package/packages/core/test/turn-rewind.test.ts +19 -0
  897. package/packages/core/test/vision-toolkit.test.ts +38 -0
  898. package/packages/core/test/workspace-git-status.test.ts +37 -0
  899. package/packages/core/test/workspace-navigator.test.ts +33 -0
  900. package/packages/core/test/workspace-path.test.ts +34 -0
  901. package/packages/core/tsconfig.build.json +1 -3
  902. package/packages/core/tsconfig.json +1 -4
  903. package/packages/host-webserver/LICENSE +9 -0
  904. package/packages/host-webserver/dist/index.js +1 -1
  905. package/packages/host-webserver/dist/index.js.map +1 -1
  906. package/packages/host-webserver/package.json +17 -7
  907. package/packages/host-webserver/src/index.ts +1 -1
  908. package/packages/host-webserver/test/index.test.ts +4 -1
  909. package/packages/host-webserver/tsconfig.build.json +1 -1
  910. package/packages/host-webserver/tsconfig.json +1 -1
  911. package/apps/web/dist/assets/index-Bwqek8LF.js +0 -20
  912. package/apps/web/dist/assets/index-DCHSASjq.css +0 -1
  913. package/packages/api-gateway/dist/marketplace-registry.json +0 -62
  914. package/packages/api-gateway/src/marketplace-registry.json +0 -62
@@ -1,12 +1,157 @@
1
- function requestJson(path, init) { return fetch(path, init).then(async (response) => { const payload = await response.json(); if (!response.ok) {
2
- const error = payload !== null && typeof payload === "object" && "error" in payload && typeof payload.error === "string" ? payload.error : `Request failed with status ${response.status}`;
3
- throw new Error(error);
4
- } return payload; }); }
5
- export function createClientApi() { return { getStatus: () => requestJson("/api/status"), getSession: () => requestJson("/api/session"), getFiles: async () => (await requestJson("/api/files")).items, getFileDiff: (path) => requestJson(`/api/files/diff?path=${encodeURIComponent(path)}`), commitFiles: (paths, message) => requestJson("/api/files/commit", { method: "POST", headers: { "content-type": "application/json" }, body: JSON.stringify({ paths, message }) }), revertFiles: (paths) => requestJson("/api/files/revert", { method: "POST", headers: { "content-type": "application/json" }, body: JSON.stringify({ paths, confirm: true }) }), prompt: (value) => requestJson("/api/prompt", { method: "POST", headers: { "content-type": "application/json" }, body: JSON.stringify({ prompt: value }) }), abort: () => requestJson("/api/abort", { method: "POST" }), createSession: () => requestJson("/api/session/new", { method: "POST" }), openSession: (path) => requestJson("/api/session/open", { method: "POST", headers: { "content-type": "application/json" }, body: JSON.stringify({ path }) }), listSessions: async () => (await requestJson("/api/sessions")).items, listModels: async () => (await requestJson("/api/models")).items, listProviders: async () => (await requestJson("/api/providers")).items, testProvider: (provider) => requestJson("/api/providers/test", { method: "POST", headers: { "content-type": "application/json" }, body: JSON.stringify({ provider }) }), refreshProvider: (provider) => requestJson("/api/providers/refresh", { method: "POST", headers: { "content-type": "application/json" }, body: JSON.stringify({ provider }) }), listPlugins: async () => (await requestJson("/api/plugins")).items, listMarketplace: (query = "", capability = "") => requestJson(`/api/marketplace?q=${encodeURIComponent(query)}&capability=${encodeURIComponent(capability)}`), listCommands: async () => (await requestJson("/api/commands")).items, selectModel: (provider, model) => requestJson("/api/model", { method: "POST", headers: { "content-type": "application/json" }, body: JSON.stringify({ provider, model }) }), subscribeEvents: (onEvent) => { if (typeof EventSource === "undefined")
6
- return () => { }; const source = new EventSource("/api/events"); source.onmessage = (event) => { try {
7
- const raw = event.data;
8
- if (typeof raw === "string")
9
- onEvent(JSON.parse(raw));
10
- }
11
- catch { /* Ignore malformed frames at the network boundary. */ } }; return () => source.close(); } }; }
1
+ export function failedRefreshLabels(labels, results) {
2
+ return labels.filter((_, index) => results[index]?.status === "rejected");
3
+ }
4
+ function requestJson(path, init) {
5
+ return fetch(path, init).then(async (response) => {
6
+ const payload = (await response.json());
7
+ if (!response.ok) {
8
+ const error = payload !== null && typeof payload === "object" && "error" in payload && typeof payload.error === "string"
9
+ ? payload.error
10
+ : `Request failed with status ${response.status}`;
11
+ throw new Error(error);
12
+ }
13
+ return payload;
14
+ });
15
+ }
16
+ export function createClientApi() {
17
+ return {
18
+ getStatus: () => requestJson("/api/status"),
19
+ getSession: () => requestJson("/api/session"),
20
+ getFiles: async () => (await requestJson("/api/files")).items,
21
+ listWorkspaces: async () => (await requestJson("/api/workspaces")).items,
22
+ pickDirectory: async () => (await requestJson("/api/workspaces/pick", { method: "POST" })).path,
23
+ getFileDiff: (path) => requestJson(`/api/files/diff?path=${encodeURIComponent(path)}`),
24
+ commitFiles: (paths, message) => requestJson("/api/files/commit", {
25
+ method: "POST",
26
+ headers: { "content-type": "application/json" },
27
+ body: JSON.stringify({ paths, message }),
28
+ }),
29
+ revertFiles: (paths) => requestJson("/api/files/revert", {
30
+ method: "POST",
31
+ headers: { "content-type": "application/json" },
32
+ body: JSON.stringify({ paths, confirm: true }),
33
+ }),
34
+ prompt: (value) => requestJson("/api/prompt", {
35
+ method: "POST",
36
+ headers: { "content-type": "application/json" },
37
+ body: JSON.stringify({ prompt: value }),
38
+ }),
39
+ abort: () => requestJson("/api/abort", { method: "POST" }),
40
+ createSession: (cwd) => requestJson("/api/session/new", {
41
+ method: "POST",
42
+ headers: { "content-type": "application/json" },
43
+ body: JSON.stringify(cwd ? { cwd } : {}),
44
+ }),
45
+ openSession: (path) => requestJson("/api/session/open", { method: "POST", headers: { "content-type": "application/json" }, body: JSON.stringify({ path }) }),
46
+ listSessions: (page = 0, pageSize = 50, includeArchived = false) => requestJson(`/api/sessions?page=${page}&pageSize=${pageSize}&includeArchived=${includeArchived}`),
47
+ renameSession: (path, name) => requestJson("/api/session/rename", {
48
+ method: "POST",
49
+ headers: { "content-type": "application/json" },
50
+ body: JSON.stringify({ path, name }),
51
+ }),
52
+ deleteSession: (path) => requestJson("/api/session/delete", {
53
+ method: "POST",
54
+ headers: { "content-type": "application/json" },
55
+ body: JSON.stringify({ path, confirm: true }),
56
+ }),
57
+ setSessionMetadata: (path, metadata) => requestJson("/api/session/metadata", {
58
+ method: "POST",
59
+ headers: { "content-type": "application/json" },
60
+ body: JSON.stringify({ path, ...metadata }),
61
+ }),
62
+ batchSessions: (action, paths) => requestJson("/api/sessions/batch", {
63
+ method: "POST",
64
+ headers: { "content-type": "application/json" },
65
+ body: JSON.stringify({ action, paths, confirm: action === "delete" }),
66
+ }),
67
+ forkSession: (path, cwd) => requestJson("/api/session/fork", {
68
+ method: "POST",
69
+ headers: { "content-type": "application/json" },
70
+ body: JSON.stringify({ path, cwd }),
71
+ }),
72
+ importSession: async (content, filename, cwd) => {
73
+ const result = await requestJson("/api/session/import", {
74
+ method: "POST",
75
+ headers: { "content-type": "application/json" },
76
+ body: JSON.stringify({ content, filename, cwd }),
77
+ });
78
+ return { sessionId: result.sessionId, sessionFile: result.sessionFile, messages: [], entries: [], events: [] };
79
+ },
80
+ exportSession: async (path) => {
81
+ const response = await fetch(`/api/session/export?path=${encodeURIComponent(path)}`);
82
+ if (!response.ok)
83
+ throw new Error(`Export failed with status ${response.status}`);
84
+ return response.blob();
85
+ },
86
+ listModels: async () => (await requestJson("/api/models")).items,
87
+ listProviders: async () => (await requestJson("/api/providers")).items,
88
+ testProvider: (provider) => requestJson("/api/providers/test", {
89
+ method: "POST",
90
+ headers: { "content-type": "application/json" },
91
+ body: JSON.stringify({ provider }),
92
+ }),
93
+ refreshProvider: (provider) => requestJson("/api/providers/refresh", {
94
+ method: "POST",
95
+ headers: { "content-type": "application/json" },
96
+ body: JSON.stringify({ provider }),
97
+ }),
98
+ addProvider: (input) => requestJson("/api/providers/add", {
99
+ method: "POST",
100
+ headers: { "content-type": "application/json" },
101
+ body: JSON.stringify(input),
102
+ }),
103
+ listPlugins: async () => (await requestJson("/api/plugins")).items,
104
+ listPluginPanels: async () => (await requestJson("/api/plugin-ui")).items,
105
+ togglePlugin: (id, enabled) => requestJson("/api/plugins/toggle", {
106
+ method: "POST",
107
+ headers: { "content-type": "application/json" },
108
+ body: JSON.stringify({ id, enabled }),
109
+ }),
110
+ uninstallPlugin: (id) => requestJson("/api/plugins/uninstall", {
111
+ method: "POST",
112
+ headers: { "content-type": "application/json" },
113
+ body: JSON.stringify({ id }),
114
+ }),
115
+ listMarketplace: (query = "", capability = "", page = 0, pageSize = 24, category = "") => requestJson(`/api/marketplace?q=${encodeURIComponent(query)}&capability=${encodeURIComponent(capability)}&category=${encodeURIComponent(category)}&page=${page}&pageSize=${pageSize}&sort=recommended`),
116
+ installMarketplace: (id) => requestJson("/api/marketplace/install", {
117
+ method: "POST",
118
+ headers: { "content-type": "application/json" },
119
+ body: JSON.stringify({ id }),
120
+ }),
121
+ listCommands: async () => (await requestJson("/api/commands")).items,
122
+ selectModel: (provider, model) => requestJson("/api/model", {
123
+ method: "POST",
124
+ headers: { "content-type": "application/json" },
125
+ body: JSON.stringify({ provider, model }),
126
+ }),
127
+ getConfig: () => requestJson("/api/config"),
128
+ updateConfig: (input) => requestJson("/api/config", {
129
+ method: "POST",
130
+ headers: { "content-type": "application/json" },
131
+ body: JSON.stringify(input),
132
+ }),
133
+ updateConfigSource: (source) => requestJson("/api/config/source", {
134
+ method: "POST",
135
+ headers: { "content-type": "application/json" },
136
+ body: JSON.stringify({ source }),
137
+ }),
138
+ reloadConfig: () => requestJson("/api/config/reload", { method: "POST" }),
139
+ subscribeEvents: (onEvent) => {
140
+ if (typeof EventSource === "undefined")
141
+ return () => { };
142
+ const source = new EventSource("/api/events");
143
+ source.onmessage = (event) => {
144
+ try {
145
+ const raw = event.data;
146
+ if (typeof raw === "string")
147
+ onEvent(JSON.parse(raw));
148
+ }
149
+ catch {
150
+ /* Ignore malformed frames at the network boundary. */
151
+ }
152
+ };
153
+ return () => source.close();
154
+ },
155
+ };
156
+ }
12
157
  //# sourceMappingURL=control-room.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"control-room.js","sourceRoot":"","sources":["../src/control-room.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"control-room.js","sourceRoot":"","sources":["../src/control-room.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"design-contract.d.ts","sourceRoot":"","sources":["../src/design-contract.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"design-contract.d.ts","sourceRoot":"","sources":["../src/design-contract.ts"],"names":[],"mappings":"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"}
@@ -15,16 +15,88 @@ export const DESIGN_TURNS = [
15
15
  { kind: "user", text: "支付成功率从昨天上线后掉了很多,日志里全是 3DS challenge timeout。定位一下,能改就直接改,改完跑测试。" },
16
16
  { kind: "reasoning", dur: "6s", text: "先找超时配置在哪定义,再看是不是 2.4.0 版本引入的默认值变化。优先只读检索,确认后再动代码。" },
17
17
  { kind: "plugin", name: "context-repo-map", hook: "context_provider", text: "注入仓库地图与最近 3 次提交摘要(1,842 tok)" },
18
- { kind: "tool", glyph: "⌕", name: "grep", target: "\"3DS\" src/**/*.ts", dur: "0.4s", stat: "12 命中", statFg: "#61666B", output: "src/payment/threeds.ts:41 const CHALLENGE_TIMEOUT_MS = 8_000\nsrc/payment/threeds.ts:88 if (elapsed > CHALLENGE_TIMEOUT_MS) throw new ChallengeTimeout\nsrc/payment/gateway.ts:114 retries: 0\ntest/payment/threeds.spec.ts:23 vi.advanceTimersByTime(8_100)" },
19
- { kind: "tool", glyph: "▤", name: "read", target: "src/payment/threeds.ts:30-96", dur: "0.1s", stat: "66 行", statFg: "#61666B", output: "const CHALLENGE_TIMEOUT_MS = 8_000\n\nexport async function runChallenge(ctx: Ctx) {\n const started = now()\n const res = await sdk.challenge(ctx.token) // sdk 2.4.0\n const elapsed = now() - started\n if (elapsed > CHALLENGE_TIMEOUT_MS) throw new ChallengeTimeout()\n return res\n}" },
20
- { kind: "text", text: "原因找到了:sdk 2.4.0 起 iOS 端 challenge 平均耗时从 3.1s 涨到 9.4s,而我们的超时仍是 8s,且 retries 为 0,一次超时就直接失败。\n\n我按两处改:超时放宽到 20s,并加一次带抖动的重试。" },
21
- { kind: "tool", glyph: "✎", name: "edit", target: "src/payment/threeds.ts", dur: "0.2s", stat: "+9 −2", statFg: "#22C55E", isDiff: true, diff: [{ no: "41", sign: "-", text: "const CHALLENGE_TIMEOUT_MS = 8_000" }, { no: "41", sign: "+", text: "const CHALLENGE_TIMEOUT_MS = 20_000" }, { no: "42", sign: "+", text: "const CHALLENGE_MAX_ATTEMPTS = 2" }, { no: "86", sign: "-", text: " const res = await sdk.challenge(ctx.token)" }, { no: "86", sign: "+", text: " const res = await withRetry(CHALLENGE_MAX_ATTEMPTS, () =>" }, { no: "87", sign: "+", text: " sdk.challenge(ctx.token), { jitter: true })" }] },
18
+ {
19
+ kind: "tool",
20
+ glyph: "",
21
+ name: "grep",
22
+ target: '"3DS" src/**/*.ts',
23
+ dur: "0.4s",
24
+ stat: "12 命中",
25
+ statFg: "#61666B",
26
+ output: "src/payment/threeds.ts:41 const CHALLENGE_TIMEOUT_MS = 8_000\nsrc/payment/threeds.ts:88 if (elapsed > CHALLENGE_TIMEOUT_MS) throw new ChallengeTimeout\nsrc/payment/gateway.ts:114 retries: 0\ntest/payment/threeds.spec.ts:23 vi.advanceTimersByTime(8_100)",
27
+ },
28
+ {
29
+ kind: "tool",
30
+ glyph: "▤",
31
+ name: "read",
32
+ target: "src/payment/threeds.ts:30-96",
33
+ dur: "0.1s",
34
+ stat: "66 行",
35
+ statFg: "#61666B",
36
+ output: "const CHALLENGE_TIMEOUT_MS = 8_000\n\nexport async function runChallenge(ctx: Ctx) {\n const started = now()\n const res = await sdk.challenge(ctx.token) // sdk 2.4.0\n const elapsed = now() - started\n if (elapsed > CHALLENGE_TIMEOUT_MS) throw new ChallengeTimeout()\n return res\n}",
37
+ },
38
+ {
39
+ kind: "text",
40
+ text: "原因找到了:sdk 2.4.0 起 iOS 端 challenge 平均耗时从 3.1s 涨到 9.4s,而我们的超时仍是 8s,且 retries 为 0,一次超时就直接失败。\n\n我按两处改:超时放宽到 20s,并加一次带抖动的重试。",
41
+ },
42
+ {
43
+ kind: "tool",
44
+ glyph: "✎",
45
+ name: "edit",
46
+ target: "src/payment/threeds.ts",
47
+ dur: "0.2s",
48
+ stat: "+9 −2",
49
+ statFg: "#22C55E",
50
+ isDiff: true,
51
+ diff: [
52
+ { no: "41", sign: "-", text: "const CHALLENGE_TIMEOUT_MS = 8_000" },
53
+ { no: "41", sign: "+", text: "const CHALLENGE_TIMEOUT_MS = 20_000" },
54
+ { no: "42", sign: "+", text: "const CHALLENGE_MAX_ATTEMPTS = 2" },
55
+ { no: "86", sign: "-", text: " const res = await sdk.challenge(ctx.token)" },
56
+ { no: "86", sign: "+", text: " const res = await withRetry(CHALLENGE_MAX_ATTEMPTS, () =>" },
57
+ { no: "87", sign: "+", text: " sdk.challenge(ctx.token), { jitter: true })" },
58
+ ],
59
+ },
22
60
  { kind: "plugin", name: "guard-secret-scan", hook: "before_write", text: "改动无凭据外泄风险,放行" },
23
61
  { kind: "approval", name: "bash — pnpm vitest run test/payment", text: "cd ~/work/checkout-svc && pnpm vitest run test/payment --reporter=dot" },
24
- { kind: "tool", glyph: "$", name: "bash", target: "pnpm vitest run test/payment", dur: "12.4s", stat: "exit 0", statFg: "#22C55E", output: "···········\n Test Files 3 passed (3)\n Tests 27 passed (27)\n Duration 11.8s\n\n✓ threeds.spec.ts (9)\n✓ gateway.spec.ts (12)\n✓ webhook.spec.ts (6)" },
25
- { kind: "subagent", name: "reviewer", preset: "read-only", goal: "复核 threeds.ts 的改动是否引入回归", dur: "8.1s", lineage: "session #s1 › turn 6 › subagent reviewer(继承 workspace,权限降级为只读)", steps: [{ tool: "read", target: "src/payment/threeds.ts", dur: "0.1s" }, { tool: "read", target: "src/payment/with-retry.ts", dur: "0.1s" }, { tool: "grep", target: "\"CHALLENGE_TIMEOUT_MS\" test/**", dur: "0.3s" }], verdict: "改动本身正确。两点提醒:test/payment/threeds.spec.ts:23 仍按 8s 断言,会在下次改动时误报通过;withRetry 的抖动上限没设,最坏情况下总耗时可能到 44s,建议加 maxTotalMs。" },
26
- { kind: "todo", progress: "3 / 4", todos: [{ text: "定位超时来源", done: true }, { text: "放宽超时并加重试", done: true }, { text: "跑 payment 相关测试", done: true }, { text: "补一条针对 20s 边界的回归用例", done: false }] },
27
- { kind: "text", text: "测试全绿。还剩一条回归用例没补:现有 spec 里 `advanceTimersByTime(8_100)` 断言的是旧阈值,需要改成 20s 边界并新增一条「首次超时后重试成功」的用例。要我继续补吗?" },
62
+ {
63
+ kind: "tool",
64
+ glyph: "$",
65
+ name: "bash",
66
+ target: "pnpm vitest run test/payment",
67
+ dur: "12.4s",
68
+ stat: "exit 0",
69
+ statFg: "#22C55E",
70
+ output: "···········\n Test Files 3 passed (3)\n Tests 27 passed (27)\n Duration 11.8s\n\n✓ threeds.spec.ts (9)\n✓ gateway.spec.ts (12)\n✓ webhook.spec.ts (6)",
71
+ },
72
+ {
73
+ kind: "subagent",
74
+ name: "reviewer",
75
+ preset: "read-only",
76
+ goal: "复核 threeds.ts 的改动是否引入回归",
77
+ dur: "8.1s",
78
+ lineage: "session #s1 › turn 6 › subagent reviewer(继承 workspace,权限降级为只读)",
79
+ steps: [
80
+ { tool: "read", target: "src/payment/threeds.ts", dur: "0.1s" },
81
+ { tool: "read", target: "src/payment/with-retry.ts", dur: "0.1s" },
82
+ { tool: "grep", target: '"CHALLENGE_TIMEOUT_MS" test/**', dur: "0.3s" },
83
+ ],
84
+ verdict: "改动本身正确。两点提醒:test/payment/threeds.spec.ts:23 仍按 8s 断言,会在下次改动时误报通过;withRetry 的抖动上限没设,最坏情况下总耗时可能到 44s,建议加 maxTotalMs。",
85
+ },
86
+ {
87
+ kind: "todo",
88
+ progress: "3 / 4",
89
+ todos: [
90
+ { text: "定位超时来源", done: true },
91
+ { text: "放宽超时并加重试", done: true },
92
+ { text: "跑 payment 相关测试", done: true },
93
+ { text: "补一条针对 20s 边界的回归用例", done: false },
94
+ ],
95
+ },
96
+ {
97
+ kind: "text",
98
+ text: "测试全绿。还剩一条回归用例没补:现有 spec 里 `advanceTimersByTime(8_100)` 断言的是旧阈值,需要改成 20s 边界并新增一条「首次超时后重试成功」的用例。要我继续补吗?",
99
+ },
28
100
  { kind: "stats", stats: ["输入 34.2k tok", "缓存命中 61%", "输出 4.8k tok", "用时 1m 42s", "$0.28"] },
29
101
  ];
30
102
  export const DESIGN_EVENTS = [
@@ -32,7 +104,7 @@ export const DESIGN_EVENTS = [
32
104
  { ts: "02:14:01", source: "context_injection", summary: "注入仓库地图与最近提交(1,842 tok)", by: "context-repo-map", dur: "88ms" },
33
105
  { ts: "02:14:02", source: "user_message", summary: "支付成功率下降,定位并修复", by: "用户", dur: "—" },
34
106
  { ts: "02:14:03", source: "reasoning", summary: "先只读检索超时配置,再判断是否与 sdk 版本相关", by: "ds-coder-v3", dur: "6.0s" },
35
- { ts: "02:14:09", source: "tool_call", summary: "grep \"3DS\" src/**/*.ts", by: "内置", dur: "0.4s" },
107
+ { ts: "02:14:09", source: "tool_call", summary: 'grep "3DS" src/**/*.ts', by: "内置", dur: "0.4s" },
36
108
  { ts: "02:14:10", source: "tool_result", summary: "12 命中,定位 threeds.ts:41", by: "内置", dur: "—" },
37
109
  { ts: "02:14:11", source: "tool_call", summary: "read src/payment/threeds.ts:30-96", by: "内置", dur: "0.1s" },
38
110
  { ts: "02:14:14", source: "tool_call", summary: "edit src/payment/threeds.ts (+9 −2)", by: "内置", dur: "0.2s" },
@@ -44,18 +116,105 @@ export const DESIGN_EVENTS = [
44
116
  { ts: "02:14:41", source: "assistant_message", summary: "给出结论与剩余一条回归用例建议", by: "ds-coder-v3", dur: "2.6s" },
45
117
  ];
46
118
  export const DESIGN_PLUGINS = [
47
- { name: "context-repo-map", ver: "1.4.2", capability: "上下文", on: true, update: false, desc: "把仓库结构、入口文件与最近提交压缩成上下文,超预算时自动裁剪", hooks: ["context_provider", "before_step"] },
48
- { name: "guard-secret-scan", ver: "2.0.1", capability: "策略", on: true, update: true, desc: "写入与提交前扫描凭据、私钥、token,命中即拦截并说明位置", hooks: ["before_write", "before_commit"] },
49
- { name: "subagent-review", ver: "0.8.5", capability: "子代理", on: true, update: false, desc: "改动落盘后派生只读 reviewer 子代理复核 diff,产出可执行意见", hooks: ["after_write"] },
50
- { name: "sandbox-landlock", ver: "1.1.0", capability: "沙箱", on: true, update: false, desc: "Linux Landlock 限制子进程可写路径与出网,越权直接拒绝", hooks: ["shell_exec"] },
51
- { name: "model-deepseek", ver: "3.2.0", capability: "模型", on: true, update: true, desc: "DeepSeek 官方模型路由,支持 prompt 缓存与推理内容透传", hooks: ["model_provider"] },
52
- { name: "store-sqlite", ver: "1.0.7", capability: "存储", on: true, update: false, desc: "会话事件流落地到本地 SQLite,支持 resume、fork、replay", hooks: ["session_store"] },
53
- { name: "vision-handoff", ver: "path", capability: "上下文", on: true, update: false, local: true, desc: "图片交给独立视觉模型描述后回填上下文,从本地路径加载(../pi-pkg-vision-handoff)", hooks: ["context_provider"] },
54
- { name: "notify-webhook", ver: "0.3.1", capability: "通知", on: false, update: false, desc: "任务结束或需要确认时推送到自定义 webhook", hooks: ["after_turn"] },
119
+ {
120
+ name: "context-repo-map",
121
+ ver: "1.4.2",
122
+ capability: "上下文",
123
+ on: true,
124
+ update: false,
125
+ desc: "把仓库结构、入口文件与最近提交压缩成上下文,超预算时自动裁剪",
126
+ hooks: ["context_provider", "before_step"],
127
+ },
128
+ {
129
+ name: "guard-secret-scan",
130
+ ver: "2.0.1",
131
+ capability: "策略",
132
+ on: true,
133
+ update: true,
134
+ desc: "写入与提交前扫描凭据、私钥、token,命中即拦截并说明位置",
135
+ hooks: ["before_write", "before_commit"],
136
+ },
137
+ {
138
+ name: "subagent-review",
139
+ ver: "0.8.5",
140
+ capability: "子代理",
141
+ on: true,
142
+ update: false,
143
+ desc: "改动落盘后派生只读 reviewer 子代理复核 diff,产出可执行意见",
144
+ hooks: ["after_write"],
145
+ },
146
+ {
147
+ name: "sandbox-landlock",
148
+ ver: "1.1.0",
149
+ capability: "沙箱",
150
+ on: true,
151
+ update: false,
152
+ desc: "Linux Landlock 限制子进程可写路径与出网,越权直接拒绝",
153
+ hooks: ["shell_exec"],
154
+ },
155
+ {
156
+ name: "model-deepseek",
157
+ ver: "3.2.0",
158
+ capability: "模型",
159
+ on: true,
160
+ update: true,
161
+ desc: "DeepSeek 官方模型路由,支持 prompt 缓存与推理内容透传",
162
+ hooks: ["model_provider"],
163
+ },
164
+ {
165
+ name: "store-sqlite",
166
+ ver: "1.0.7",
167
+ capability: "存储",
168
+ on: true,
169
+ update: false,
170
+ desc: "会话事件流落地到本地 SQLite,支持 resume、fork、replay",
171
+ hooks: ["session_store"],
172
+ },
173
+ {
174
+ name: "vision-handoff",
175
+ ver: "path",
176
+ capability: "上下文",
177
+ on: true,
178
+ update: false,
179
+ local: true,
180
+ desc: "图片交给独立视觉模型描述后回填上下文,从本地路径加载(../pi-pkg-vision-handoff)",
181
+ hooks: ["context_provider"],
182
+ },
183
+ {
184
+ name: "notify-webhook",
185
+ ver: "0.3.1",
186
+ capability: "通知",
187
+ on: false,
188
+ update: false,
189
+ desc: "任务结束或需要确认时推送到自定义 webhook",
190
+ hooks: ["after_turn"],
191
+ },
55
192
  ];
56
193
  export const DESIGN_PROVIDERS = [
57
- { id: "deepseek", name: "DeepSeek", state: "已连接", ok: true, protocol: "openai", baseUrl: "https://api.deepseek.com/v1", key: "sk-••••••••••••••••7f3a", models: ["ds-coder-v3", "ds-chat", "ds-reasoner"], latency: "41ms", by: "model-deepseek" },
58
- { id: "anthropic", name: "Anthropic", state: "已连接", ok: true, protocol: "anthropic", baseUrl: "https://api.anthropic.com", key: "sk-ant-••••••••••2c91", models: ["claude-sonnet", "claude-haiku"], latency: "128ms", by: "model-anthropic" },
194
+ {
195
+ id: "deepseek",
196
+ name: "DeepSeek",
197
+ state: "已连接",
198
+ ok: true,
199
+ protocol: "openai",
200
+ baseUrl: "https://api.deepseek.com/v1",
201
+ key: "sk-••••••••••••••••7f3a",
202
+ models: ["ds-coder-v3", "ds-chat", "ds-reasoner"],
203
+ latency: "41ms",
204
+ by: "model-deepseek",
205
+ },
206
+ {
207
+ id: "anthropic",
208
+ name: "Anthropic",
209
+ state: "已连接",
210
+ ok: true,
211
+ protocol: "anthropic",
212
+ baseUrl: "https://api.anthropic.com",
213
+ key: "sk-ant-••••••••••2c91",
214
+ models: ["claude-sonnet", "claude-haiku"],
215
+ latency: "128ms",
216
+ by: "model-anthropic",
217
+ },
59
218
  ];
60
219
  export const DESIGN_TOML = `# ~/.config/pi/pi.toml
61
220
  # 一切都是包:模型、工具、沙箱、存储、界面都在这里装卸。
@@ -1 +1 @@
1
- {"version":3,"file":"design-contract.js","sourceRoot":"","sources":["../src/design-contract.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"design-contract.js","sourceRoot":"","sources":["../src/design-contract.ts"],"names":[],"mappings":"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"}
@@ -10,7 +10,10 @@ export declare class AppWebEntry {
10
10
  #private;
11
11
  readonly context: Context;
12
12
  readonly root: HTMLElement;
13
- constructor(root: HTMLElement);
13
+ readonly version?: string;
14
+ constructor(root: HTMLElement, options?: {
15
+ readonly version?: string;
16
+ });
14
17
  run(): void;
15
18
  dispose(): Promise<void>;
16
19
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAE9C,OAAO,EAAmB,KAAK,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAEpE,OAAO,QAAQ,qBAAqB,CAAC;IAAE,UAAU,OAAO;QAAG,UAAU,EAAE,WAAW,CAAC;QAAC,SAAS,EAAE,SAAS,CAAC;KAAE;CAAE;AAE7G,qBAAa,WAAW;;IACtB,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;gBAEf,IAAI,EAAE,WAAW;IAC7B,GAAG,IAAI,IAAI;IAML,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;CAC/B"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAE9C,OAAO,EAAmB,KAAK,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAEpE,OAAO,QAAQ,qBAAqB,CAAC;IACnC,UAAU,OAAO;QACf,UAAU,EAAE,WAAW,CAAC;QACxB,SAAS,EAAE,SAAS,CAAC;KACtB;CACF;AAED,qBAAa,WAAW;;IACtB,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAC3B,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;gBAEd,IAAI,EAAE,WAAW,EAAE,OAAO,GAAE;QAAE,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAO;IAK1E,GAAG,IAAI,IAAI;IAML,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;CAI/B"}
@@ -6,14 +6,22 @@ import { createClientApi } from "./control-room.js";
6
6
  export class AppWebEntry {
7
7
  context;
8
8
  root;
9
+ version;
9
10
  #reactRoot;
10
- constructor(root) { this.root = root; this.context = new Context(); }
11
+ constructor(root, options = {}) {
12
+ this.root = root;
13
+ this.version = options.version;
14
+ this.context = new Context();
15
+ }
11
16
  run() {
12
17
  this.context.provide("clientRoot", this.root);
13
18
  this.context.provide("clientApi", createClientApi());
14
19
  this.#reactRoot = createRoot(this.root);
15
- this.#reactRoot.render(createElement(ControlRoomView, { api: this.context.clientApi }));
20
+ this.#reactRoot.render(createElement(ControlRoomView, { api: this.context.clientApi, appVersion: this.version }));
21
+ }
22
+ async dispose() {
23
+ this.#reactRoot?.unmount();
24
+ await this.context.fiber.dispose();
16
25
  }
17
- async dispose() { this.#reactRoot?.unmount(); await this.context.fiber.dispose(); }
18
26
  }
19
27
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AACtC,OAAO,EAAE,UAAU,EAAa,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAC9C,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,eAAe,EAAkB,MAAM,mBAAmB,CAAC;AAIpE,MAAM,OAAO,WAAW;IACb,OAAO,CAAU;IACjB,IAAI,CAAc;IAC3B,UAAU,CAAQ;IAClB,YAAY,IAAiB,IAAI,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC,IAAI,CAAC,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC,CAAC,CAAC;IAClF,GAAG;QACD,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,YAAY,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;QAC9C,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,WAAW,EAAE,eAAe,EAAE,CAAC,CAAC;QACrD,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACxC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,aAAa,CAAC,eAAe,EAAE,EAAE,GAAG,EAAE,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;IAC1F,CAAC;IACD,KAAK,CAAC,OAAO,KAAoB,IAAI,CAAC,UAAU,EAAE,OAAO,EAAE,CAAC,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;CACnG"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AACtC,OAAO,EAAE,UAAU,EAAa,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAC9C,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,eAAe,EAAkB,MAAM,mBAAmB,CAAC;AASpE,MAAM,OAAO,WAAW;IACb,OAAO,CAAU;IACjB,IAAI,CAAc;IAClB,OAAO,CAAU;IAC1B,UAAU,CAAQ;IAClB,YAAY,IAAiB,EAAE,UAAyC,EAAE;QACxE,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;QAC/B,IAAI,CAAC,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;IAC/B,CAAC;IACD,GAAG;QACD,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,YAAY,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;QAC9C,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,WAAW,EAAE,eAAe,EAAE,CAAC,CAAC;QACrD,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACxC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,aAAa,CAAC,eAAe,EAAE,EAAE,GAAG,EAAE,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,UAAU,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IACpH,CAAC;IACD,KAAK,CAAC,OAAO;QACX,IAAI,CAAC,UAAU,EAAE,OAAO,EAAE,CAAC;QAC3B,MAAM,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;IACrC,CAAC;CACF"}
@@ -0,0 +1,5 @@
1
+ export declare function MarkdownMessage({ text, onMouseUp }: {
2
+ text: string;
3
+ onMouseUp?: () => void;
4
+ }): import("react/jsx-runtime").JSX.Element;
5
+ //# sourceMappingURL=markdown.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"markdown.d.ts","sourceRoot":"","sources":["../src/markdown.tsx"],"names":[],"mappings":"AAmBA,wBAAgB,eAAe,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,IAAI,CAAA;CAAE,2CAE5F"}
@@ -0,0 +1,20 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import createDOMPurify from "dompurify";
3
+ import { marked } from "marked";
4
+ const markdownOptions = { gfm: true, breaks: true };
5
+ const purifier = typeof window === "undefined" ? undefined : createDOMPurify(window);
6
+ function renderMarkdown(source) {
7
+ const html = marked.parse(source, markdownOptions);
8
+ if (typeof html !== "string")
9
+ return "";
10
+ return (purifier?.sanitize(html, {
11
+ USE_PROFILES: { html: true },
12
+ ALLOWED_TAGS: ["a", "blockquote", "br", "code", "del", "em", "h1", "h2", "h3", "h4", "h5", "h6", "hr", "li", "ol", "p", "pre", "strong", "ul"],
13
+ ALLOWED_ATTR: ["href", "rel", "target"],
14
+ FORBID_ATTR: ["style", "class", "id"],
15
+ }) ?? "");
16
+ }
17
+ export function MarkdownMessage({ text, onMouseUp }) {
18
+ return _jsx("div", { className: "turn-markdown", dangerouslySetInnerHTML: { __html: renderMarkdown(text) }, onMouseUp: onMouseUp });
19
+ }
20
+ //# sourceMappingURL=markdown.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"markdown.js","sourceRoot":"","sources":["../src/markdown.tsx"],"names":[],"mappings":";AAAA,OAAO,eAAe,MAAM,WAAW,CAAC;AACxC,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,MAAM,eAAe,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAW,CAAC;AAC7D,MAAM,QAAQ,GAAG,OAAO,MAAM,KAAK,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;AAErF,SAAS,cAAc,CAAC,MAAc;IACpC,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;IACnD,IAAI,OAAO,IAAI,KAAK,QAAQ;QAAE,OAAO,EAAE,CAAC;IACxC,OAAO,CACL,QAAQ,EAAE,QAAQ,CAAC,IAAI,EAAE;QACvB,YAAY,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE;QAC5B,YAAY,EAAE,CAAC,GAAG,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,CAAC;QAC9I,YAAY,EAAE,CAAC,MAAM,EAAE,KAAK,EAAE,QAAQ,CAAC;QACvC,WAAW,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC;KACtC,CAAC,IAAI,EAAE,CACT,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,EAAE,IAAI,EAAE,SAAS,EAA4C;IAC3F,OAAO,cAAK,SAAS,EAAC,eAAe,EAAC,uBAAuB,EAAE,EAAE,MAAM,EAAE,cAAc,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,SAAS,GAAI,CAAC;AAC5H,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { ClientApi, ClientMarketplacePlugin } from "./control-room.js";
2
+ export declare const loadMarketplaceCatalog: (api: Pick<ClientApi, "listMarketplace">) => Promise<readonly ClientMarketplacePlugin[]>;
3
+ //# sourceMappingURL=marketplace-catalog.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"marketplace-catalog.d.ts","sourceRoot":"","sources":["../src/marketplace-catalog.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAC;AAE5E,eAAO,MAAM,sBAAsB,GAAU,KAAK,IAAI,CAAC,SAAS,EAAE,iBAAiB,CAAC,KAAG,OAAO,CAAC,SAAS,uBAAuB,EAAE,CAOhI,CAAC"}
@@ -0,0 +1,10 @@
1
+ export const loadMarketplaceCatalog = async (api) => {
2
+ const items = [];
3
+ for (let page = 0;; page += 1) {
4
+ const result = await api.listMarketplace("", "", page, 100);
5
+ items.push(...result.items);
6
+ if (!result.hasNext || result.items.length === 0 || items.length >= result.total)
7
+ return items;
8
+ }
9
+ };
10
+ //# sourceMappingURL=marketplace-catalog.js.map