@pi-harness/pi-harness 0.1.14 → 0.1.16

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 (1513) hide show
  1. package/README.md +8 -4
  2. package/apps/web/dist/assets/{index-C98SJjJd.js → index-DXznRinu.js} +1 -1
  3. package/apps/web/dist/index.html +1 -1
  4. package/apps/web/package.json +6 -6
  5. package/apps/web/server-dist/bin.js +7 -1
  6. package/apps/web/server-dist/bin.js.map +1 -1
  7. package/apps/web/src/server/bin.ts +9 -1
  8. package/node_modules/@pi-harness/api-gateway/dist/marketplace-entries/official/agent-teams.json +1 -1
  9. package/node_modules/@pi-harness/api-gateway/dist/marketplace-entries/official/anchored-standard.json +1 -1
  10. package/node_modules/@pi-harness/api-gateway/dist/marketplace-entries/official/annotation.json +1 -1
  11. package/node_modules/@pi-harness/api-gateway/dist/marketplace-entries/official/archify.json +1 -1
  12. package/node_modules/@pi-harness/api-gateway/dist/marketplace-entries/official/at-file.json +1 -1
  13. package/node_modules/@pi-harness/api-gateway/dist/marketplace-entries/official/auto-mode.json +1 -1
  14. package/node_modules/@pi-harness/api-gateway/dist/marketplace-entries/official/better-sidebar.json +1 -1
  15. package/node_modules/@pi-harness/api-gateway/dist/marketplace-entries/official/browser-fetch.json +1 -1
  16. package/node_modules/@pi-harness/api-gateway/dist/marketplace-entries/official/browser-session.json +1 -1
  17. package/node_modules/@pi-harness/api-gateway/dist/marketplace-entries/official/canvas-draw.json +1 -1
  18. package/node_modules/@pi-harness/api-gateway/dist/marketplace-entries/official/change-verifier.json +1 -1
  19. package/node_modules/@pi-harness/api-gateway/dist/marketplace-entries/official/cleaner.json +1 -1
  20. package/node_modules/@pi-harness/api-gateway/dist/marketplace-entries/official/cli-notifier.json +1 -1
  21. package/node_modules/@pi-harness/api-gateway/dist/marketplace-entries/official/code2skill.json +1 -1
  22. package/node_modules/@pi-harness/api-gateway/dist/marketplace-entries/official/colleague-skill.json +1 -1
  23. package/node_modules/@pi-harness/api-gateway/dist/marketplace-entries/official/context-doctor.json +1 -1
  24. package/node_modules/@pi-harness/api-gateway/dist/marketplace-entries/official/context.json +1 -1
  25. package/node_modules/@pi-harness/api-gateway/dist/marketplace-entries/official/cost-meter.json +1 -1
  26. package/node_modules/@pi-harness/api-gateway/dist/marketplace-entries/official/dependency-checker.json +1 -1
  27. package/node_modules/@pi-harness/api-gateway/dist/marketplace-entries/official/docker-sandbox.json +1 -1
  28. package/node_modules/@pi-harness/api-gateway/dist/marketplace-entries/official/fail-logger.json +1 -1
  29. package/node_modules/@pi-harness/api-gateway/dist/marketplace-entries/official/genui.json +1 -1
  30. package/node_modules/@pi-harness/api-gateway/dist/marketplace-entries/official/git-time-capsule.json +1 -1
  31. package/node_modules/@pi-harness/api-gateway/dist/marketplace-entries/official/graph-memory.json +1 -1
  32. package/node_modules/@pi-harness/api-gateway/dist/marketplace-entries/official/history-compressor.json +1 -1
  33. package/node_modules/@pi-harness/api-gateway/dist/marketplace-entries/official/hol-guard.json +1 -1
  34. package/node_modules/@pi-harness/api-gateway/dist/marketplace-entries/official/i18n-pair.json +1 -1
  35. package/node_modules/@pi-harness/api-gateway/dist/marketplace-entries/official/image-compressor.json +1 -1
  36. package/node_modules/@pi-harness/api-gateway/dist/marketplace-entries/official/llm-verifier.json +1 -1
  37. package/node_modules/@pi-harness/api-gateway/dist/marketplace-entries/official/mcp-client.json +1 -1
  38. package/node_modules/@pi-harness/api-gateway/dist/marketplace-entries/official/mcp-panel.json +1 -1
  39. package/node_modules/@pi-harness/api-gateway/dist/marketplace-entries/official/memory.json +1 -1
  40. package/node_modules/@pi-harness/api-gateway/dist/marketplace-entries/official/mirage-bridge.json +1 -1
  41. package/node_modules/@pi-harness/api-gateway/dist/marketplace-entries/official/mock-server.json +1 -1
  42. package/node_modules/@pi-harness/api-gateway/dist/marketplace-entries/official/modlens.json +1 -1
  43. package/node_modules/@pi-harness/api-gateway/dist/marketplace-entries/official/module-search.json +1 -1
  44. package/node_modules/@pi-harness/api-gateway/dist/marketplace-entries/official/obsidian-sync.json +1 -1
  45. package/node_modules/@pi-harness/api-gateway/dist/marketplace-entries/official/openpets.json +1 -1
  46. package/node_modules/@pi-harness/api-gateway/dist/marketplace-entries/official/plan-execute.json +1 -1
  47. package/node_modules/@pi-harness/api-gateway/dist/marketplace-entries/official/plugin-check.json +1 -1
  48. package/node_modules/@pi-harness/api-gateway/dist/marketplace-entries/official/plugin-dev.json +1 -1
  49. package/node_modules/@pi-harness/api-gateway/dist/marketplace-entries/official/plugin-finder.json +1 -1
  50. package/node_modules/@pi-harness/api-gateway/dist/marketplace-entries/official/plugin-radar.json +1 -1
  51. package/node_modules/@pi-harness/api-gateway/dist/marketplace-entries/official/plugin-stars.json +1 -1
  52. package/node_modules/@pi-harness/api-gateway/dist/marketplace-entries/official/prompt-guard.json +1 -1
  53. package/node_modules/@pi-harness/api-gateway/dist/marketplace-entries/official/prompt-library.json +1 -1
  54. package/node_modules/@pi-harness/api-gateway/dist/marketplace-entries/official/readme-gen.json +1 -1
  55. package/node_modules/@pi-harness/api-gateway/dist/marketplace-entries/official/recall-unread.json +1 -1
  56. package/node_modules/@pi-harness/api-gateway/dist/marketplace-entries/official/reverse-skill.json +1 -1
  57. package/node_modules/@pi-harness/api-gateway/dist/marketplace-entries/official/reviewer-bot.json +1 -1
  58. package/node_modules/@pi-harness/api-gateway/dist/marketplace-entries/official/runtime-doctor.json +1 -1
  59. package/node_modules/@pi-harness/api-gateway/dist/marketplace-entries/official/secure-audit.json +1 -1
  60. package/node_modules/@pi-harness/api-gateway/dist/marketplace-entries/official/session-bookmarks.json +1 -1
  61. package/node_modules/@pi-harness/api-gateway/dist/marketplace-entries/official/session-bridge.json +1 -1
  62. package/node_modules/@pi-harness/api-gateway/dist/marketplace-entries/official/session-compare.json +1 -1
  63. package/node_modules/@pi-harness/api-gateway/dist/marketplace-entries/official/session-export.json +1 -1
  64. package/node_modules/@pi-harness/api-gateway/dist/marketplace-entries/official/session-insights.json +1 -1
  65. package/node_modules/@pi-harness/api-gateway/dist/marketplace-entries/official/session-search.json +1 -1
  66. package/node_modules/@pi-harness/api-gateway/dist/marketplace-entries/official/skill-catalog.json +1 -1
  67. package/node_modules/@pi-harness/api-gateway/dist/marketplace-entries/official/skill-guard.json +1 -1
  68. package/node_modules/@pi-harness/api-gateway/dist/marketplace-entries/official/sql-lens.json +1 -1
  69. package/node_modules/@pi-harness/api-gateway/dist/marketplace-entries/official/synapse.json +1 -1
  70. package/node_modules/@pi-harness/api-gateway/dist/marketplace-entries/official/tab-manager.json +1 -1
  71. package/node_modules/@pi-harness/api-gateway/dist/marketplace-entries/official/taskboard.json +1 -1
  72. package/node_modules/@pi-harness/api-gateway/dist/marketplace-entries/official/telemetry-blocker.json +1 -1
  73. package/node_modules/@pi-harness/api-gateway/dist/marketplace-entries/official/test-harness.json +1 -1
  74. package/node_modules/@pi-harness/api-gateway/dist/marketplace-entries/official/theme-studio.json +1 -1
  75. package/node_modules/@pi-harness/api-gateway/dist/marketplace-entries/official/token-guard.json +1 -1
  76. package/node_modules/@pi-harness/api-gateway/dist/marketplace-entries/official/turn-rewind.json +1 -1
  77. package/node_modules/@pi-harness/api-gateway/dist/marketplace-entries/official/undo-savepoint.json +1 -1
  78. package/node_modules/@pi-harness/api-gateway/dist/marketplace-entries/official/vision-toolkit.json +1 -1
  79. package/node_modules/@pi-harness/api-gateway/dist/marketplace-entries/official/web-research.json +1 -1
  80. package/node_modules/@pi-harness/api-gateway/dist/marketplace-entries/official/workspace-navigator.json +1 -1
  81. package/node_modules/@pi-harness/api-gateway/dist/marketplace-entries/official/workspace-search.json +1 -1
  82. package/node_modules/@pi-harness/api-gateway/dist/marketplace-entries/official/yaml-validator.json +1 -1
  83. package/node_modules/@pi-harness/api-gateway/package.json +1 -1
  84. package/node_modules/@pi-harness/cli/dist/bin.js +2 -0
  85. package/node_modules/@pi-harness/cli/dist/bin.js.map +1 -1
  86. package/node_modules/@pi-harness/cli/dist/main.d.ts +1 -0
  87. package/node_modules/@pi-harness/cli/dist/main.d.ts.map +1 -1
  88. package/node_modules/@pi-harness/cli/dist/main.js +9 -0
  89. package/node_modules/@pi-harness/cli/dist/main.js.map +1 -1
  90. package/node_modules/@pi-harness/cli/package.json +1 -1
  91. package/node_modules/@pi-harness/host-webserver/package.json +1 -1
  92. package/node_modules/@pi-harness/web-app/package.json +1 -1
  93. package/package.json +10 -8
  94. package/packages/api-gateway/dist/marketplace-entries/official/agent-teams.json +1 -1
  95. package/packages/api-gateway/dist/marketplace-entries/official/anchored-standard.json +1 -1
  96. package/packages/api-gateway/dist/marketplace-entries/official/annotation.json +1 -1
  97. package/packages/api-gateway/dist/marketplace-entries/official/archify.json +1 -1
  98. package/packages/api-gateway/dist/marketplace-entries/official/at-file.json +1 -1
  99. package/packages/api-gateway/dist/marketplace-entries/official/auto-mode.json +1 -1
  100. package/packages/api-gateway/dist/marketplace-entries/official/better-sidebar.json +1 -1
  101. package/packages/api-gateway/dist/marketplace-entries/official/browser-fetch.json +1 -1
  102. package/packages/api-gateway/dist/marketplace-entries/official/browser-session.json +1 -1
  103. package/packages/api-gateway/dist/marketplace-entries/official/canvas-draw.json +1 -1
  104. package/packages/api-gateway/dist/marketplace-entries/official/change-verifier.json +1 -1
  105. package/packages/api-gateway/dist/marketplace-entries/official/cleaner.json +1 -1
  106. package/packages/api-gateway/dist/marketplace-entries/official/cli-notifier.json +1 -1
  107. package/packages/api-gateway/dist/marketplace-entries/official/code2skill.json +1 -1
  108. package/packages/api-gateway/dist/marketplace-entries/official/colleague-skill.json +1 -1
  109. package/packages/api-gateway/dist/marketplace-entries/official/context-doctor.json +1 -1
  110. package/packages/api-gateway/dist/marketplace-entries/official/context.json +1 -1
  111. package/packages/api-gateway/dist/marketplace-entries/official/cost-meter.json +1 -1
  112. package/packages/api-gateway/dist/marketplace-entries/official/dependency-checker.json +1 -1
  113. package/packages/api-gateway/dist/marketplace-entries/official/docker-sandbox.json +1 -1
  114. package/packages/api-gateway/dist/marketplace-entries/official/fail-logger.json +1 -1
  115. package/packages/api-gateway/dist/marketplace-entries/official/genui.json +1 -1
  116. package/packages/api-gateway/dist/marketplace-entries/official/git-time-capsule.json +1 -1
  117. package/packages/api-gateway/dist/marketplace-entries/official/graph-memory.json +1 -1
  118. package/packages/api-gateway/dist/marketplace-entries/official/history-compressor.json +1 -1
  119. package/packages/api-gateway/dist/marketplace-entries/official/hol-guard.json +1 -1
  120. package/packages/api-gateway/dist/marketplace-entries/official/i18n-pair.json +1 -1
  121. package/packages/api-gateway/dist/marketplace-entries/official/image-compressor.json +1 -1
  122. package/packages/api-gateway/dist/marketplace-entries/official/llm-verifier.json +1 -1
  123. package/packages/api-gateway/dist/marketplace-entries/official/mcp-client.json +1 -1
  124. package/packages/api-gateway/dist/marketplace-entries/official/mcp-panel.json +1 -1
  125. package/packages/api-gateway/dist/marketplace-entries/official/memory.json +1 -1
  126. package/packages/api-gateway/dist/marketplace-entries/official/mirage-bridge.json +1 -1
  127. package/packages/api-gateway/dist/marketplace-entries/official/mock-server.json +1 -1
  128. package/packages/api-gateway/dist/marketplace-entries/official/modlens.json +1 -1
  129. package/packages/api-gateway/dist/marketplace-entries/official/module-search.json +1 -1
  130. package/packages/api-gateway/dist/marketplace-entries/official/obsidian-sync.json +1 -1
  131. package/packages/api-gateway/dist/marketplace-entries/official/openpets.json +1 -1
  132. package/packages/api-gateway/dist/marketplace-entries/official/plan-execute.json +1 -1
  133. package/packages/api-gateway/dist/marketplace-entries/official/plugin-check.json +1 -1
  134. package/packages/api-gateway/dist/marketplace-entries/official/plugin-dev.json +1 -1
  135. package/packages/api-gateway/dist/marketplace-entries/official/plugin-finder.json +1 -1
  136. package/packages/api-gateway/dist/marketplace-entries/official/plugin-radar.json +1 -1
  137. package/packages/api-gateway/dist/marketplace-entries/official/plugin-stars.json +1 -1
  138. package/packages/api-gateway/dist/marketplace-entries/official/prompt-guard.json +1 -1
  139. package/packages/api-gateway/dist/marketplace-entries/official/prompt-library.json +1 -1
  140. package/packages/api-gateway/dist/marketplace-entries/official/readme-gen.json +1 -1
  141. package/packages/api-gateway/dist/marketplace-entries/official/recall-unread.json +1 -1
  142. package/packages/api-gateway/dist/marketplace-entries/official/reverse-skill.json +1 -1
  143. package/packages/api-gateway/dist/marketplace-entries/official/reviewer-bot.json +1 -1
  144. package/packages/api-gateway/dist/marketplace-entries/official/runtime-doctor.json +1 -1
  145. package/packages/api-gateway/dist/marketplace-entries/official/secure-audit.json +1 -1
  146. package/packages/api-gateway/dist/marketplace-entries/official/session-bookmarks.json +1 -1
  147. package/packages/api-gateway/dist/marketplace-entries/official/session-bridge.json +1 -1
  148. package/packages/api-gateway/dist/marketplace-entries/official/session-compare.json +1 -1
  149. package/packages/api-gateway/dist/marketplace-entries/official/session-export.json +1 -1
  150. package/packages/api-gateway/dist/marketplace-entries/official/session-insights.json +1 -1
  151. package/packages/api-gateway/dist/marketplace-entries/official/session-search.json +1 -1
  152. package/packages/api-gateway/dist/marketplace-entries/official/skill-catalog.json +1 -1
  153. package/packages/api-gateway/dist/marketplace-entries/official/skill-guard.json +1 -1
  154. package/packages/api-gateway/dist/marketplace-entries/official/sql-lens.json +1 -1
  155. package/packages/api-gateway/dist/marketplace-entries/official/synapse.json +1 -1
  156. package/packages/api-gateway/dist/marketplace-entries/official/tab-manager.json +1 -1
  157. package/packages/api-gateway/dist/marketplace-entries/official/taskboard.json +1 -1
  158. package/packages/api-gateway/dist/marketplace-entries/official/telemetry-blocker.json +1 -1
  159. package/packages/api-gateway/dist/marketplace-entries/official/test-harness.json +1 -1
  160. package/packages/api-gateway/dist/marketplace-entries/official/theme-studio.json +1 -1
  161. package/packages/api-gateway/dist/marketplace-entries/official/token-guard.json +1 -1
  162. package/packages/api-gateway/dist/marketplace-entries/official/turn-rewind.json +1 -1
  163. package/packages/api-gateway/dist/marketplace-entries/official/undo-savepoint.json +1 -1
  164. package/packages/api-gateway/dist/marketplace-entries/official/vision-toolkit.json +1 -1
  165. package/packages/api-gateway/dist/marketplace-entries/official/web-research.json +1 -1
  166. package/packages/api-gateway/dist/marketplace-entries/official/workspace-navigator.json +1 -1
  167. package/packages/api-gateway/dist/marketplace-entries/official/workspace-search.json +1 -1
  168. package/packages/api-gateway/dist/marketplace-entries/official/yaml-validator.json +1 -1
  169. package/packages/api-gateway/package.json +1 -1
  170. package/packages/api-gateway/src/marketplace-entries/official/agent-teams.json +1 -1
  171. package/packages/api-gateway/src/marketplace-entries/official/anchored-standard.json +1 -1
  172. package/packages/api-gateway/src/marketplace-entries/official/annotation.json +1 -1
  173. package/packages/api-gateway/src/marketplace-entries/official/archify.json +1 -1
  174. package/packages/api-gateway/src/marketplace-entries/official/at-file.json +1 -1
  175. package/packages/api-gateway/src/marketplace-entries/official/auto-mode.json +1 -1
  176. package/packages/api-gateway/src/marketplace-entries/official/better-sidebar.json +1 -1
  177. package/packages/api-gateway/src/marketplace-entries/official/browser-fetch.json +1 -1
  178. package/packages/api-gateway/src/marketplace-entries/official/browser-session.json +1 -1
  179. package/packages/api-gateway/src/marketplace-entries/official/canvas-draw.json +1 -1
  180. package/packages/api-gateway/src/marketplace-entries/official/change-verifier.json +1 -1
  181. package/packages/api-gateway/src/marketplace-entries/official/cleaner.json +1 -1
  182. package/packages/api-gateway/src/marketplace-entries/official/cli-notifier.json +1 -1
  183. package/packages/api-gateway/src/marketplace-entries/official/code2skill.json +1 -1
  184. package/packages/api-gateway/src/marketplace-entries/official/colleague-skill.json +1 -1
  185. package/packages/api-gateway/src/marketplace-entries/official/context-doctor.json +1 -1
  186. package/packages/api-gateway/src/marketplace-entries/official/context.json +1 -1
  187. package/packages/api-gateway/src/marketplace-entries/official/cost-meter.json +1 -1
  188. package/packages/api-gateway/src/marketplace-entries/official/dependency-checker.json +1 -1
  189. package/packages/api-gateway/src/marketplace-entries/official/docker-sandbox.json +1 -1
  190. package/packages/api-gateway/src/marketplace-entries/official/fail-logger.json +1 -1
  191. package/packages/api-gateway/src/marketplace-entries/official/genui.json +1 -1
  192. package/packages/api-gateway/src/marketplace-entries/official/git-time-capsule.json +1 -1
  193. package/packages/api-gateway/src/marketplace-entries/official/graph-memory.json +1 -1
  194. package/packages/api-gateway/src/marketplace-entries/official/history-compressor.json +1 -1
  195. package/packages/api-gateway/src/marketplace-entries/official/hol-guard.json +1 -1
  196. package/packages/api-gateway/src/marketplace-entries/official/i18n-pair.json +1 -1
  197. package/packages/api-gateway/src/marketplace-entries/official/image-compressor.json +1 -1
  198. package/packages/api-gateway/src/marketplace-entries/official/llm-verifier.json +1 -1
  199. package/packages/api-gateway/src/marketplace-entries/official/mcp-client.json +1 -1
  200. package/packages/api-gateway/src/marketplace-entries/official/mcp-panel.json +1 -1
  201. package/packages/api-gateway/src/marketplace-entries/official/memory.json +1 -1
  202. package/packages/api-gateway/src/marketplace-entries/official/mirage-bridge.json +1 -1
  203. package/packages/api-gateway/src/marketplace-entries/official/mock-server.json +1 -1
  204. package/packages/api-gateway/src/marketplace-entries/official/modlens.json +1 -1
  205. package/packages/api-gateway/src/marketplace-entries/official/module-search.json +1 -1
  206. package/packages/api-gateway/src/marketplace-entries/official/obsidian-sync.json +1 -1
  207. package/packages/api-gateway/src/marketplace-entries/official/openpets.json +1 -1
  208. package/packages/api-gateway/src/marketplace-entries/official/plan-execute.json +1 -1
  209. package/packages/api-gateway/src/marketplace-entries/official/plugin-check.json +1 -1
  210. package/packages/api-gateway/src/marketplace-entries/official/plugin-dev.json +1 -1
  211. package/packages/api-gateway/src/marketplace-entries/official/plugin-finder.json +1 -1
  212. package/packages/api-gateway/src/marketplace-entries/official/plugin-radar.json +1 -1
  213. package/packages/api-gateway/src/marketplace-entries/official/plugin-stars.json +1 -1
  214. package/packages/api-gateway/src/marketplace-entries/official/prompt-guard.json +1 -1
  215. package/packages/api-gateway/src/marketplace-entries/official/prompt-library.json +1 -1
  216. package/packages/api-gateway/src/marketplace-entries/official/readme-gen.json +1 -1
  217. package/packages/api-gateway/src/marketplace-entries/official/recall-unread.json +1 -1
  218. package/packages/api-gateway/src/marketplace-entries/official/reverse-skill.json +1 -1
  219. package/packages/api-gateway/src/marketplace-entries/official/reviewer-bot.json +1 -1
  220. package/packages/api-gateway/src/marketplace-entries/official/runtime-doctor.json +1 -1
  221. package/packages/api-gateway/src/marketplace-entries/official/secure-audit.json +1 -1
  222. package/packages/api-gateway/src/marketplace-entries/official/session-bookmarks.json +1 -1
  223. package/packages/api-gateway/src/marketplace-entries/official/session-bridge.json +1 -1
  224. package/packages/api-gateway/src/marketplace-entries/official/session-compare.json +1 -1
  225. package/packages/api-gateway/src/marketplace-entries/official/session-export.json +1 -1
  226. package/packages/api-gateway/src/marketplace-entries/official/session-insights.json +1 -1
  227. package/packages/api-gateway/src/marketplace-entries/official/session-search.json +1 -1
  228. package/packages/api-gateway/src/marketplace-entries/official/skill-catalog.json +1 -1
  229. package/packages/api-gateway/src/marketplace-entries/official/skill-guard.json +1 -1
  230. package/packages/api-gateway/src/marketplace-entries/official/sql-lens.json +1 -1
  231. package/packages/api-gateway/src/marketplace-entries/official/synapse.json +1 -1
  232. package/packages/api-gateway/src/marketplace-entries/official/tab-manager.json +1 -1
  233. package/packages/api-gateway/src/marketplace-entries/official/taskboard.json +1 -1
  234. package/packages/api-gateway/src/marketplace-entries/official/telemetry-blocker.json +1 -1
  235. package/packages/api-gateway/src/marketplace-entries/official/test-harness.json +1 -1
  236. package/packages/api-gateway/src/marketplace-entries/official/theme-studio.json +1 -1
  237. package/packages/api-gateway/src/marketplace-entries/official/token-guard.json +1 -1
  238. package/packages/api-gateway/src/marketplace-entries/official/turn-rewind.json +1 -1
  239. package/packages/api-gateway/src/marketplace-entries/official/undo-savepoint.json +1 -1
  240. package/packages/api-gateway/src/marketplace-entries/official/vision-toolkit.json +1 -1
  241. package/packages/api-gateway/src/marketplace-entries/official/web-research.json +1 -1
  242. package/packages/api-gateway/src/marketplace-entries/official/workspace-navigator.json +1 -1
  243. package/packages/api-gateway/src/marketplace-entries/official/workspace-search.json +1 -1
  244. package/packages/api-gateway/src/marketplace-entries/official/yaml-validator.json +1 -1
  245. package/packages/api-gateway/test/release-package.test.ts +5 -11
  246. package/packages/api-gateway/test/release-version.test.ts +2 -2
  247. package/packages/bundle-web-app/package.json +1 -1
  248. package/packages/cli/dist/bin.js +2 -0
  249. package/packages/cli/dist/bin.js.map +1 -1
  250. package/packages/cli/dist/main.d.ts +1 -0
  251. package/packages/cli/dist/main.d.ts.map +1 -1
  252. package/packages/cli/dist/main.js +9 -0
  253. package/packages/cli/dist/main.js.map +1 -1
  254. package/packages/cli/package.json +1 -1
  255. package/packages/cli/src/bin.ts +2 -0
  256. package/packages/cli/src/main.ts +9 -0
  257. package/packages/cli/test/cli.test.ts +10 -0
  258. package/packages/host-webserver/package.json +1 -1
  259. package/node_modules/@pi-harness/core/LICENSE +0 -9
  260. package/node_modules/@pi-harness/core/dist/atomic-write.d.ts +0 -8
  261. package/node_modules/@pi-harness/core/dist/atomic-write.d.ts.map +0 -1
  262. package/node_modules/@pi-harness/core/dist/atomic-write.js +0 -40
  263. package/node_modules/@pi-harness/core/dist/atomic-write.js.map +0 -1
  264. package/node_modules/@pi-harness/core/dist/boot.d.ts +0 -13
  265. package/node_modules/@pi-harness/core/dist/boot.d.ts.map +0 -1
  266. package/node_modules/@pi-harness/core/dist/boot.js +0 -257
  267. package/node_modules/@pi-harness/core/dist/boot.js.map +0 -1
  268. package/node_modules/@pi-harness/core/dist/bounded-file.d.ts +0 -7
  269. package/node_modules/@pi-harness/core/dist/bounded-file.d.ts.map +0 -1
  270. package/node_modules/@pi-harness/core/dist/bounded-file.js +0 -50
  271. package/node_modules/@pi-harness/core/dist/bounded-file.js.map +0 -1
  272. package/node_modules/@pi-harness/core/dist/config.d.ts +0 -4
  273. package/node_modules/@pi-harness/core/dist/config.d.ts.map +0 -1
  274. package/node_modules/@pi-harness/core/dist/config.js +0 -29
  275. package/node_modules/@pi-harness/core/dist/config.js.map +0 -1
  276. package/node_modules/@pi-harness/core/dist/context.d.ts +0 -3
  277. package/node_modules/@pi-harness/core/dist/context.d.ts.map +0 -1
  278. package/node_modules/@pi-harness/core/dist/context.js +0 -2
  279. package/node_modules/@pi-harness/core/dist/context.js.map +0 -1
  280. package/node_modules/@pi-harness/core/dist/cordis-timer.d.ts +0 -15
  281. package/node_modules/@pi-harness/core/dist/cordis-timer.d.ts.map +0 -1
  282. package/node_modules/@pi-harness/core/dist/cordis-timer.js +0 -99
  283. package/node_modules/@pi-harness/core/dist/cordis-timer.js.map +0 -1
  284. package/node_modules/@pi-harness/core/dist/http.d.ts +0 -8
  285. package/node_modules/@pi-harness/core/dist/http.d.ts.map +0 -1
  286. package/node_modules/@pi-harness/core/dist/http.js +0 -27
  287. package/node_modules/@pi-harness/core/dist/http.js.map +0 -1
  288. package/node_modules/@pi-harness/core/dist/index.d.ts +0 -9
  289. package/node_modules/@pi-harness/core/dist/index.d.ts.map +0 -1
  290. package/node_modules/@pi-harness/core/dist/index.js +0 -8
  291. package/node_modules/@pi-harness/core/dist/index.js.map +0 -1
  292. package/node_modules/@pi-harness/core/dist/plugins/agent-teams.d.ts +0 -21
  293. package/node_modules/@pi-harness/core/dist/plugins/agent-teams.d.ts.map +0 -1
  294. package/node_modules/@pi-harness/core/dist/plugins/agent-teams.js +0 -1179
  295. package/node_modules/@pi-harness/core/dist/plugins/agent-teams.js.map +0 -1
  296. package/node_modules/@pi-harness/core/dist/plugins/anchored-standard.d.ts +0 -15
  297. package/node_modules/@pi-harness/core/dist/plugins/anchored-standard.d.ts.map +0 -1
  298. package/node_modules/@pi-harness/core/dist/plugins/anchored-standard.js +0 -112
  299. package/node_modules/@pi-harness/core/dist/plugins/anchored-standard.js.map +0 -1
  300. package/node_modules/@pi-harness/core/dist/plugins/annotation.d.ts +0 -19
  301. package/node_modules/@pi-harness/core/dist/plugins/annotation.d.ts.map +0 -1
  302. package/node_modules/@pi-harness/core/dist/plugins/annotation.js +0 -112
  303. package/node_modules/@pi-harness/core/dist/plugins/annotation.js.map +0 -1
  304. package/node_modules/@pi-harness/core/dist/plugins/archify.d.ts +0 -24
  305. package/node_modules/@pi-harness/core/dist/plugins/archify.d.ts.map +0 -1
  306. package/node_modules/@pi-harness/core/dist/plugins/archify.js +0 -145
  307. package/node_modules/@pi-harness/core/dist/plugins/archify.js.map +0 -1
  308. package/node_modules/@pi-harness/core/dist/plugins/at-file.d.ts +0 -12
  309. package/node_modules/@pi-harness/core/dist/plugins/at-file.d.ts.map +0 -1
  310. package/node_modules/@pi-harness/core/dist/plugins/at-file.js +0 -143
  311. package/node_modules/@pi-harness/core/dist/plugins/at-file.js.map +0 -1
  312. package/node_modules/@pi-harness/core/dist/plugins/auto-mode.d.ts +0 -15
  313. package/node_modules/@pi-harness/core/dist/plugins/auto-mode.d.ts.map +0 -1
  314. package/node_modules/@pi-harness/core/dist/plugins/auto-mode.js +0 -183
  315. package/node_modules/@pi-harness/core/dist/plugins/auto-mode.js.map +0 -1
  316. package/node_modules/@pi-harness/core/dist/plugins/better-sidebar.d.ts +0 -38
  317. package/node_modules/@pi-harness/core/dist/plugins/better-sidebar.d.ts.map +0 -1
  318. package/node_modules/@pi-harness/core/dist/plugins/better-sidebar.js +0 -99
  319. package/node_modules/@pi-harness/core/dist/plugins/better-sidebar.js.map +0 -1
  320. package/node_modules/@pi-harness/core/dist/plugins/browser-fetch.d.ts +0 -15
  321. package/node_modules/@pi-harness/core/dist/plugins/browser-fetch.d.ts.map +0 -1
  322. package/node_modules/@pi-harness/core/dist/plugins/browser-fetch.js +0 -359
  323. package/node_modules/@pi-harness/core/dist/plugins/browser-fetch.js.map +0 -1
  324. package/node_modules/@pi-harness/core/dist/plugins/browser-session.d.ts +0 -14
  325. package/node_modules/@pi-harness/core/dist/plugins/browser-session.d.ts.map +0 -1
  326. package/node_modules/@pi-harness/core/dist/plugins/browser-session.js +0 -604
  327. package/node_modules/@pi-harness/core/dist/plugins/browser-session.js.map +0 -1
  328. package/node_modules/@pi-harness/core/dist/plugins/canvas-draw.d.ts +0 -9
  329. package/node_modules/@pi-harness/core/dist/plugins/canvas-draw.d.ts.map +0 -1
  330. package/node_modules/@pi-harness/core/dist/plugins/canvas-draw.js +0 -140
  331. package/node_modules/@pi-harness/core/dist/plugins/canvas-draw.js.map +0 -1
  332. package/node_modules/@pi-harness/core/dist/plugins/change-verifier.d.ts +0 -9
  333. package/node_modules/@pi-harness/core/dist/plugins/change-verifier.d.ts.map +0 -1
  334. package/node_modules/@pi-harness/core/dist/plugins/change-verifier.js +0 -88
  335. package/node_modules/@pi-harness/core/dist/plugins/change-verifier.js.map +0 -1
  336. package/node_modules/@pi-harness/core/dist/plugins/cleaner.d.ts +0 -12
  337. package/node_modules/@pi-harness/core/dist/plugins/cleaner.d.ts.map +0 -1
  338. package/node_modules/@pi-harness/core/dist/plugins/cleaner.js +0 -353
  339. package/node_modules/@pi-harness/core/dist/plugins/cleaner.js.map +0 -1
  340. package/node_modules/@pi-harness/core/dist/plugins/cli-notifier.d.ts +0 -16
  341. package/node_modules/@pi-harness/core/dist/plugins/cli-notifier.d.ts.map +0 -1
  342. package/node_modules/@pi-harness/core/dist/plugins/cli-notifier.js +0 -167
  343. package/node_modules/@pi-harness/core/dist/plugins/cli-notifier.js.map +0 -1
  344. package/node_modules/@pi-harness/core/dist/plugins/code2skill.d.ts +0 -9
  345. package/node_modules/@pi-harness/core/dist/plugins/code2skill.d.ts.map +0 -1
  346. package/node_modules/@pi-harness/core/dist/plugins/code2skill.js +0 -235
  347. package/node_modules/@pi-harness/core/dist/plugins/code2skill.js.map +0 -1
  348. package/node_modules/@pi-harness/core/dist/plugins/colleague-skill.d.ts +0 -28
  349. package/node_modules/@pi-harness/core/dist/plugins/colleague-skill.d.ts.map +0 -1
  350. package/node_modules/@pi-harness/core/dist/plugins/colleague-skill.js +0 -129
  351. package/node_modules/@pi-harness/core/dist/plugins/colleague-skill.js.map +0 -1
  352. package/node_modules/@pi-harness/core/dist/plugins/context-doctor.d.ts +0 -35
  353. package/node_modules/@pi-harness/core/dist/plugins/context-doctor.d.ts.map +0 -1
  354. package/node_modules/@pi-harness/core/dist/plugins/context-doctor.js +0 -459
  355. package/node_modules/@pi-harness/core/dist/plugins/context-doctor.js.map +0 -1
  356. package/node_modules/@pi-harness/core/dist/plugins/context.d.ts +0 -9
  357. package/node_modules/@pi-harness/core/dist/plugins/context.d.ts.map +0 -1
  358. package/node_modules/@pi-harness/core/dist/plugins/context.js +0 -214
  359. package/node_modules/@pi-harness/core/dist/plugins/context.js.map +0 -1
  360. package/node_modules/@pi-harness/core/dist/plugins/cost-meter.d.ts +0 -36
  361. package/node_modules/@pi-harness/core/dist/plugins/cost-meter.d.ts.map +0 -1
  362. package/node_modules/@pi-harness/core/dist/plugins/cost-meter.js +0 -430
  363. package/node_modules/@pi-harness/core/dist/plugins/cost-meter.js.map +0 -1
  364. package/node_modules/@pi-harness/core/dist/plugins/dependency-checker.d.ts +0 -36
  365. package/node_modules/@pi-harness/core/dist/plugins/dependency-checker.d.ts.map +0 -1
  366. package/node_modules/@pi-harness/core/dist/plugins/dependency-checker.js +0 -570
  367. package/node_modules/@pi-harness/core/dist/plugins/dependency-checker.js.map +0 -1
  368. package/node_modules/@pi-harness/core/dist/plugins/docker-sandbox.d.ts +0 -9
  369. package/node_modules/@pi-harness/core/dist/plugins/docker-sandbox.d.ts.map +0 -1
  370. package/node_modules/@pi-harness/core/dist/plugins/docker-sandbox.js +0 -344
  371. package/node_modules/@pi-harness/core/dist/plugins/docker-sandbox.js.map +0 -1
  372. package/node_modules/@pi-harness/core/dist/plugins/fail-logger.d.ts +0 -9
  373. package/node_modules/@pi-harness/core/dist/plugins/fail-logger.d.ts.map +0 -1
  374. package/node_modules/@pi-harness/core/dist/plugins/fail-logger.js +0 -218
  375. package/node_modules/@pi-harness/core/dist/plugins/fail-logger.js.map +0 -1
  376. package/node_modules/@pi-harness/core/dist/plugins/genui.d.ts +0 -9
  377. package/node_modules/@pi-harness/core/dist/plugins/genui.d.ts.map +0 -1
  378. package/node_modules/@pi-harness/core/dist/plugins/genui.js +0 -144
  379. package/node_modules/@pi-harness/core/dist/plugins/genui.js.map +0 -1
  380. package/node_modules/@pi-harness/core/dist/plugins/git-time-capsule.d.ts +0 -15
  381. package/node_modules/@pi-harness/core/dist/plugins/git-time-capsule.d.ts.map +0 -1
  382. package/node_modules/@pi-harness/core/dist/plugins/git-time-capsule.js +0 -436
  383. package/node_modules/@pi-harness/core/dist/plugins/git-time-capsule.js.map +0 -1
  384. package/node_modules/@pi-harness/core/dist/plugins/graph-memory.d.ts +0 -16
  385. package/node_modules/@pi-harness/core/dist/plugins/graph-memory.d.ts.map +0 -1
  386. package/node_modules/@pi-harness/core/dist/plugins/graph-memory.js +0 -669
  387. package/node_modules/@pi-harness/core/dist/plugins/graph-memory.js.map +0 -1
  388. package/node_modules/@pi-harness/core/dist/plugins/history-compressor.d.ts +0 -15
  389. package/node_modules/@pi-harness/core/dist/plugins/history-compressor.d.ts.map +0 -1
  390. package/node_modules/@pi-harness/core/dist/plugins/history-compressor.js +0 -99
  391. package/node_modules/@pi-harness/core/dist/plugins/history-compressor.js.map +0 -1
  392. package/node_modules/@pi-harness/core/dist/plugins/hol-guard.d.ts +0 -29
  393. package/node_modules/@pi-harness/core/dist/plugins/hol-guard.d.ts.map +0 -1
  394. package/node_modules/@pi-harness/core/dist/plugins/hol-guard.js +0 -159
  395. package/node_modules/@pi-harness/core/dist/plugins/hol-guard.js.map +0 -1
  396. package/node_modules/@pi-harness/core/dist/plugins/i18n-pair.d.ts +0 -12
  397. package/node_modules/@pi-harness/core/dist/plugins/i18n-pair.d.ts.map +0 -1
  398. package/node_modules/@pi-harness/core/dist/plugins/i18n-pair.js +0 -332
  399. package/node_modules/@pi-harness/core/dist/plugins/i18n-pair.js.map +0 -1
  400. package/node_modules/@pi-harness/core/dist/plugins/image-compressor.d.ts +0 -15
  401. package/node_modules/@pi-harness/core/dist/plugins/image-compressor.d.ts.map +0 -1
  402. package/node_modules/@pi-harness/core/dist/plugins/image-compressor.js +0 -223
  403. package/node_modules/@pi-harness/core/dist/plugins/image-compressor.js.map +0 -1
  404. package/node_modules/@pi-harness/core/dist/plugins/llm-verifier.d.ts +0 -42
  405. package/node_modules/@pi-harness/core/dist/plugins/llm-verifier.d.ts.map +0 -1
  406. package/node_modules/@pi-harness/core/dist/plugins/llm-verifier.js +0 -138
  407. package/node_modules/@pi-harness/core/dist/plugins/llm-verifier.js.map +0 -1
  408. package/node_modules/@pi-harness/core/dist/plugins/mcp-client.d.ts +0 -19
  409. package/node_modules/@pi-harness/core/dist/plugins/mcp-client.d.ts.map +0 -1
  410. package/node_modules/@pi-harness/core/dist/plugins/mcp-client.js +0 -1288
  411. package/node_modules/@pi-harness/core/dist/plugins/mcp-client.js.map +0 -1
  412. package/node_modules/@pi-harness/core/dist/plugins/mcp-panel.d.ts +0 -14
  413. package/node_modules/@pi-harness/core/dist/plugins/mcp-panel.d.ts.map +0 -1
  414. package/node_modules/@pi-harness/core/dist/plugins/mcp-panel.js +0 -194
  415. package/node_modules/@pi-harness/core/dist/plugins/mcp-panel.js.map +0 -1
  416. package/node_modules/@pi-harness/core/dist/plugins/memory.d.ts +0 -15
  417. package/node_modules/@pi-harness/core/dist/plugins/memory.d.ts.map +0 -1
  418. package/node_modules/@pi-harness/core/dist/plugins/memory.js +0 -394
  419. package/node_modules/@pi-harness/core/dist/plugins/memory.js.map +0 -1
  420. package/node_modules/@pi-harness/core/dist/plugins/mirage-bridge.d.ts +0 -23
  421. package/node_modules/@pi-harness/core/dist/plugins/mirage-bridge.d.ts.map +0 -1
  422. package/node_modules/@pi-harness/core/dist/plugins/mirage-bridge.js +0 -159
  423. package/node_modules/@pi-harness/core/dist/plugins/mirage-bridge.js.map +0 -1
  424. package/node_modules/@pi-harness/core/dist/plugins/mock-server.d.ts +0 -22
  425. package/node_modules/@pi-harness/core/dist/plugins/mock-server.d.ts.map +0 -1
  426. package/node_modules/@pi-harness/core/dist/plugins/mock-server.js +0 -180
  427. package/node_modules/@pi-harness/core/dist/plugins/mock-server.js.map +0 -1
  428. package/node_modules/@pi-harness/core/dist/plugins/model.d.ts +0 -11
  429. package/node_modules/@pi-harness/core/dist/plugins/model.d.ts.map +0 -1
  430. package/node_modules/@pi-harness/core/dist/plugins/model.js +0 -17
  431. package/node_modules/@pi-harness/core/dist/plugins/model.js.map +0 -1
  432. package/node_modules/@pi-harness/core/dist/plugins/models.d.ts +0 -16
  433. package/node_modules/@pi-harness/core/dist/plugins/models.d.ts.map +0 -1
  434. package/node_modules/@pi-harness/core/dist/plugins/models.js +0 -35
  435. package/node_modules/@pi-harness/core/dist/plugins/models.js.map +0 -1
  436. package/node_modules/@pi-harness/core/dist/plugins/modlens.d.ts +0 -15
  437. package/node_modules/@pi-harness/core/dist/plugins/modlens.d.ts.map +0 -1
  438. package/node_modules/@pi-harness/core/dist/plugins/modlens.js +0 -470
  439. package/node_modules/@pi-harness/core/dist/plugins/modlens.js.map +0 -1
  440. package/node_modules/@pi-harness/core/dist/plugins/module-search.d.ts +0 -28
  441. package/node_modules/@pi-harness/core/dist/plugins/module-search.d.ts.map +0 -1
  442. package/node_modules/@pi-harness/core/dist/plugins/module-search.js +0 -193
  443. package/node_modules/@pi-harness/core/dist/plugins/module-search.js.map +0 -1
  444. package/node_modules/@pi-harness/core/dist/plugins/obsidian-sync.d.ts +0 -14
  445. package/node_modules/@pi-harness/core/dist/plugins/obsidian-sync.d.ts.map +0 -1
  446. package/node_modules/@pi-harness/core/dist/plugins/obsidian-sync.js +0 -88
  447. package/node_modules/@pi-harness/core/dist/plugins/obsidian-sync.js.map +0 -1
  448. package/node_modules/@pi-harness/core/dist/plugins/openpets.d.ts +0 -14
  449. package/node_modules/@pi-harness/core/dist/plugins/openpets.d.ts.map +0 -1
  450. package/node_modules/@pi-harness/core/dist/plugins/openpets.js +0 -258
  451. package/node_modules/@pi-harness/core/dist/plugins/openpets.js.map +0 -1
  452. package/node_modules/@pi-harness/core/dist/plugins/plan-execute.d.ts +0 -11
  453. package/node_modules/@pi-harness/core/dist/plugins/plan-execute.d.ts.map +0 -1
  454. package/node_modules/@pi-harness/core/dist/plugins/plan-execute.js +0 -91
  455. package/node_modules/@pi-harness/core/dist/plugins/plan-execute.js.map +0 -1
  456. package/node_modules/@pi-harness/core/dist/plugins/plugin-check.d.ts +0 -47
  457. package/node_modules/@pi-harness/core/dist/plugins/plugin-check.d.ts.map +0 -1
  458. package/node_modules/@pi-harness/core/dist/plugins/plugin-check.js +0 -298
  459. package/node_modules/@pi-harness/core/dist/plugins/plugin-check.js.map +0 -1
  460. package/node_modules/@pi-harness/core/dist/plugins/plugin-dev.d.ts +0 -9
  461. package/node_modules/@pi-harness/core/dist/plugins/plugin-dev.d.ts.map +0 -1
  462. package/node_modules/@pi-harness/core/dist/plugins/plugin-dev.js +0 -177
  463. package/node_modules/@pi-harness/core/dist/plugins/plugin-dev.js.map +0 -1
  464. package/node_modules/@pi-harness/core/dist/plugins/plugin-finder.d.ts +0 -17
  465. package/node_modules/@pi-harness/core/dist/plugins/plugin-finder.d.ts.map +0 -1
  466. package/node_modules/@pi-harness/core/dist/plugins/plugin-finder.js +0 -216
  467. package/node_modules/@pi-harness/core/dist/plugins/plugin-finder.js.map +0 -1
  468. package/node_modules/@pi-harness/core/dist/plugins/plugin-radar.d.ts +0 -33
  469. package/node_modules/@pi-harness/core/dist/plugins/plugin-radar.d.ts.map +0 -1
  470. package/node_modules/@pi-harness/core/dist/plugins/plugin-radar.js +0 -247
  471. package/node_modules/@pi-harness/core/dist/plugins/plugin-radar.js.map +0 -1
  472. package/node_modules/@pi-harness/core/dist/plugins/plugin-stars.d.ts +0 -45
  473. package/node_modules/@pi-harness/core/dist/plugins/plugin-stars.d.ts.map +0 -1
  474. package/node_modules/@pi-harness/core/dist/plugins/plugin-stars.js +0 -366
  475. package/node_modules/@pi-harness/core/dist/plugins/plugin-stars.js.map +0 -1
  476. package/node_modules/@pi-harness/core/dist/plugins/prompt-guard.d.ts +0 -9
  477. package/node_modules/@pi-harness/core/dist/plugins/prompt-guard.d.ts.map +0 -1
  478. package/node_modules/@pi-harness/core/dist/plugins/prompt-guard.js +0 -165
  479. package/node_modules/@pi-harness/core/dist/plugins/prompt-guard.js.map +0 -1
  480. package/node_modules/@pi-harness/core/dist/plugins/prompt-library.d.ts +0 -26
  481. package/node_modules/@pi-harness/core/dist/plugins/prompt-library.d.ts.map +0 -1
  482. package/node_modules/@pi-harness/core/dist/plugins/prompt-library.js +0 -145
  483. package/node_modules/@pi-harness/core/dist/plugins/prompt-library.js.map +0 -1
  484. package/node_modules/@pi-harness/core/dist/plugins/readme-gen.d.ts +0 -29
  485. package/node_modules/@pi-harness/core/dist/plugins/readme-gen.d.ts.map +0 -1
  486. package/node_modules/@pi-harness/core/dist/plugins/readme-gen.js +0 -580
  487. package/node_modules/@pi-harness/core/dist/plugins/readme-gen.js.map +0 -1
  488. package/node_modules/@pi-harness/core/dist/plugins/recall-unread.d.ts +0 -24
  489. package/node_modules/@pi-harness/core/dist/plugins/recall-unread.d.ts.map +0 -1
  490. package/node_modules/@pi-harness/core/dist/plugins/recall-unread.js +0 -467
  491. package/node_modules/@pi-harness/core/dist/plugins/recall-unread.js.map +0 -1
  492. package/node_modules/@pi-harness/core/dist/plugins/resources.d.ts +0 -19
  493. package/node_modules/@pi-harness/core/dist/plugins/resources.d.ts.map +0 -1
  494. package/node_modules/@pi-harness/core/dist/plugins/resources.js +0 -126
  495. package/node_modules/@pi-harness/core/dist/plugins/resources.js.map +0 -1
  496. package/node_modules/@pi-harness/core/dist/plugins/reverse-skill.d.ts +0 -23
  497. package/node_modules/@pi-harness/core/dist/plugins/reverse-skill.d.ts.map +0 -1
  498. package/node_modules/@pi-harness/core/dist/plugins/reverse-skill.js +0 -61
  499. package/node_modules/@pi-harness/core/dist/plugins/reverse-skill.js.map +0 -1
  500. package/node_modules/@pi-harness/core/dist/plugins/reviewer-bot.d.ts +0 -15
  501. package/node_modules/@pi-harness/core/dist/plugins/reviewer-bot.d.ts.map +0 -1
  502. package/node_modules/@pi-harness/core/dist/plugins/reviewer-bot.js +0 -152
  503. package/node_modules/@pi-harness/core/dist/plugins/reviewer-bot.js.map +0 -1
  504. package/node_modules/@pi-harness/core/dist/plugins/runtime-doctor.d.ts +0 -34
  505. package/node_modules/@pi-harness/core/dist/plugins/runtime-doctor.d.ts.map +0 -1
  506. package/node_modules/@pi-harness/core/dist/plugins/runtime-doctor.js +0 -117
  507. package/node_modules/@pi-harness/core/dist/plugins/runtime-doctor.js.map +0 -1
  508. package/node_modules/@pi-harness/core/dist/plugins/runtime.d.ts +0 -14
  509. package/node_modules/@pi-harness/core/dist/plugins/runtime.d.ts.map +0 -1
  510. package/node_modules/@pi-harness/core/dist/plugins/runtime.js +0 -159
  511. package/node_modules/@pi-harness/core/dist/plugins/runtime.js.map +0 -1
  512. package/node_modules/@pi-harness/core/dist/plugins/secure-audit.d.ts +0 -32
  513. package/node_modules/@pi-harness/core/dist/plugins/secure-audit.d.ts.map +0 -1
  514. package/node_modules/@pi-harness/core/dist/plugins/secure-audit.js +0 -139
  515. package/node_modules/@pi-harness/core/dist/plugins/secure-audit.js.map +0 -1
  516. package/node_modules/@pi-harness/core/dist/plugins/session-bookmarks.d.ts +0 -16
  517. package/node_modules/@pi-harness/core/dist/plugins/session-bookmarks.d.ts.map +0 -1
  518. package/node_modules/@pi-harness/core/dist/plugins/session-bookmarks.js +0 -90
  519. package/node_modules/@pi-harness/core/dist/plugins/session-bookmarks.js.map +0 -1
  520. package/node_modules/@pi-harness/core/dist/plugins/session-bridge.d.ts +0 -45
  521. package/node_modules/@pi-harness/core/dist/plugins/session-bridge.d.ts.map +0 -1
  522. package/node_modules/@pi-harness/core/dist/plugins/session-bridge.js +0 -578
  523. package/node_modules/@pi-harness/core/dist/plugins/session-bridge.js.map +0 -1
  524. package/node_modules/@pi-harness/core/dist/plugins/session-compare.d.ts +0 -34
  525. package/node_modules/@pi-harness/core/dist/plugins/session-compare.d.ts.map +0 -1
  526. package/node_modules/@pi-harness/core/dist/plugins/session-compare.js +0 -153
  527. package/node_modules/@pi-harness/core/dist/plugins/session-compare.js.map +0 -1
  528. package/node_modules/@pi-harness/core/dist/plugins/session-export.d.ts +0 -10
  529. package/node_modules/@pi-harness/core/dist/plugins/session-export.d.ts.map +0 -1
  530. package/node_modules/@pi-harness/core/dist/plugins/session-export.js +0 -93
  531. package/node_modules/@pi-harness/core/dist/plugins/session-export.js.map +0 -1
  532. package/node_modules/@pi-harness/core/dist/plugins/session-insights.d.ts +0 -44
  533. package/node_modules/@pi-harness/core/dist/plugins/session-insights.d.ts.map +0 -1
  534. package/node_modules/@pi-harness/core/dist/plugins/session-insights.js +0 -432
  535. package/node_modules/@pi-harness/core/dist/plugins/session-insights.js.map +0 -1
  536. package/node_modules/@pi-harness/core/dist/plugins/session-search.d.ts +0 -21
  537. package/node_modules/@pi-harness/core/dist/plugins/session-search.d.ts.map +0 -1
  538. package/node_modules/@pi-harness/core/dist/plugins/session-search.js +0 -125
  539. package/node_modules/@pi-harness/core/dist/plugins/session-search.js.map +0 -1
  540. package/node_modules/@pi-harness/core/dist/plugins/session.d.ts +0 -15
  541. package/node_modules/@pi-harness/core/dist/plugins/session.d.ts.map +0 -1
  542. package/node_modules/@pi-harness/core/dist/plugins/session.js +0 -29
  543. package/node_modules/@pi-harness/core/dist/plugins/session.js.map +0 -1
  544. package/node_modules/@pi-harness/core/dist/plugins/skill-catalog.d.ts +0 -27
  545. package/node_modules/@pi-harness/core/dist/plugins/skill-catalog.d.ts.map +0 -1
  546. package/node_modules/@pi-harness/core/dist/plugins/skill-catalog.js +0 -98
  547. package/node_modules/@pi-harness/core/dist/plugins/skill-catalog.js.map +0 -1
  548. package/node_modules/@pi-harness/core/dist/plugins/skill-guard.d.ts +0 -27
  549. package/node_modules/@pi-harness/core/dist/plugins/skill-guard.d.ts.map +0 -1
  550. package/node_modules/@pi-harness/core/dist/plugins/skill-guard.js +0 -319
  551. package/node_modules/@pi-harness/core/dist/plugins/skill-guard.js.map +0 -1
  552. package/node_modules/@pi-harness/core/dist/plugins/sql-lens-worker.d.ts +0 -2
  553. package/node_modules/@pi-harness/core/dist/plugins/sql-lens-worker.d.ts.map +0 -1
  554. package/node_modules/@pi-harness/core/dist/plugins/sql-lens-worker.js +0 -206
  555. package/node_modules/@pi-harness/core/dist/plugins/sql-lens-worker.js.map +0 -1
  556. package/node_modules/@pi-harness/core/dist/plugins/sql-lens.d.ts +0 -14
  557. package/node_modules/@pi-harness/core/dist/plugins/sql-lens.d.ts.map +0 -1
  558. package/node_modules/@pi-harness/core/dist/plugins/sql-lens.js +0 -318
  559. package/node_modules/@pi-harness/core/dist/plugins/sql-lens.js.map +0 -1
  560. package/node_modules/@pi-harness/core/dist/plugins/stdio.d.ts +0 -11
  561. package/node_modules/@pi-harness/core/dist/plugins/stdio.d.ts.map +0 -1
  562. package/node_modules/@pi-harness/core/dist/plugins/stdio.js +0 -80
  563. package/node_modules/@pi-harness/core/dist/plugins/stdio.js.map +0 -1
  564. package/node_modules/@pi-harness/core/dist/plugins/synapse.d.ts +0 -38
  565. package/node_modules/@pi-harness/core/dist/plugins/synapse.d.ts.map +0 -1
  566. package/node_modules/@pi-harness/core/dist/plugins/synapse.js +0 -101
  567. package/node_modules/@pi-harness/core/dist/plugins/synapse.js.map +0 -1
  568. package/node_modules/@pi-harness/core/dist/plugins/tab-manager.d.ts +0 -9
  569. package/node_modules/@pi-harness/core/dist/plugins/tab-manager.d.ts.map +0 -1
  570. package/node_modules/@pi-harness/core/dist/plugins/tab-manager.js +0 -240
  571. package/node_modules/@pi-harness/core/dist/plugins/tab-manager.js.map +0 -1
  572. package/node_modules/@pi-harness/core/dist/plugins/taskboard.d.ts +0 -15
  573. package/node_modules/@pi-harness/core/dist/plugins/taskboard.d.ts.map +0 -1
  574. package/node_modules/@pi-harness/core/dist/plugins/taskboard.js +0 -375
  575. package/node_modules/@pi-harness/core/dist/plugins/taskboard.js.map +0 -1
  576. package/node_modules/@pi-harness/core/dist/plugins/telemetry-blocker.d.ts +0 -11
  577. package/node_modules/@pi-harness/core/dist/plugins/telemetry-blocker.d.ts.map +0 -1
  578. package/node_modules/@pi-harness/core/dist/plugins/telemetry-blocker.js +0 -76
  579. package/node_modules/@pi-harness/core/dist/plugins/telemetry-blocker.js.map +0 -1
  580. package/node_modules/@pi-harness/core/dist/plugins/test-harness.d.ts +0 -14
  581. package/node_modules/@pi-harness/core/dist/plugins/test-harness.d.ts.map +0 -1
  582. package/node_modules/@pi-harness/core/dist/plugins/test-harness.js +0 -276
  583. package/node_modules/@pi-harness/core/dist/plugins/test-harness.js.map +0 -1
  584. package/node_modules/@pi-harness/core/dist/plugins/theme-studio.d.ts +0 -29
  585. package/node_modules/@pi-harness/core/dist/plugins/theme-studio.d.ts.map +0 -1
  586. package/node_modules/@pi-harness/core/dist/plugins/theme-studio.js +0 -143
  587. package/node_modules/@pi-harness/core/dist/plugins/theme-studio.js.map +0 -1
  588. package/node_modules/@pi-harness/core/dist/plugins/token-guard.d.ts +0 -15
  589. package/node_modules/@pi-harness/core/dist/plugins/token-guard.d.ts.map +0 -1
  590. package/node_modules/@pi-harness/core/dist/plugins/token-guard.js +0 -210
  591. package/node_modules/@pi-harness/core/dist/plugins/token-guard.js.map +0 -1
  592. package/node_modules/@pi-harness/core/dist/plugins/tools.d.ts +0 -13
  593. package/node_modules/@pi-harness/core/dist/plugins/tools.d.ts.map +0 -1
  594. package/node_modules/@pi-harness/core/dist/plugins/tools.js +0 -23
  595. package/node_modules/@pi-harness/core/dist/plugins/tools.js.map +0 -1
  596. package/node_modules/@pi-harness/core/dist/plugins/turn-rewind.d.ts +0 -36
  597. package/node_modules/@pi-harness/core/dist/plugins/turn-rewind.d.ts.map +0 -1
  598. package/node_modules/@pi-harness/core/dist/plugins/turn-rewind.js +0 -378
  599. package/node_modules/@pi-harness/core/dist/plugins/turn-rewind.js.map +0 -1
  600. package/node_modules/@pi-harness/core/dist/plugins/undo-savepoint.d.ts +0 -17
  601. package/node_modules/@pi-harness/core/dist/plugins/undo-savepoint.d.ts.map +0 -1
  602. package/node_modules/@pi-harness/core/dist/plugins/undo-savepoint.js +0 -353
  603. package/node_modules/@pi-harness/core/dist/plugins/undo-savepoint.js.map +0 -1
  604. package/node_modules/@pi-harness/core/dist/plugins/vision-toolkit.d.ts +0 -36
  605. package/node_modules/@pi-harness/core/dist/plugins/vision-toolkit.d.ts.map +0 -1
  606. package/node_modules/@pi-harness/core/dist/plugins/vision-toolkit.js +0 -468
  607. package/node_modules/@pi-harness/core/dist/plugins/vision-toolkit.js.map +0 -1
  608. package/node_modules/@pi-harness/core/dist/plugins/web-research.d.ts +0 -17
  609. package/node_modules/@pi-harness/core/dist/plugins/web-research.d.ts.map +0 -1
  610. package/node_modules/@pi-harness/core/dist/plugins/web-research.js +0 -284
  611. package/node_modules/@pi-harness/core/dist/plugins/web-research.js.map +0 -1
  612. package/node_modules/@pi-harness/core/dist/plugins/workspace-navigator.d.ts +0 -42
  613. package/node_modules/@pi-harness/core/dist/plugins/workspace-navigator.d.ts.map +0 -1
  614. package/node_modules/@pi-harness/core/dist/plugins/workspace-navigator.js +0 -168
  615. package/node_modules/@pi-harness/core/dist/plugins/workspace-navigator.js.map +0 -1
  616. package/node_modules/@pi-harness/core/dist/plugins/workspace-search.d.ts +0 -15
  617. package/node_modules/@pi-harness/core/dist/plugins/workspace-search.d.ts.map +0 -1
  618. package/node_modules/@pi-harness/core/dist/plugins/workspace-search.js +0 -167
  619. package/node_modules/@pi-harness/core/dist/plugins/workspace-search.js.map +0 -1
  620. package/node_modules/@pi-harness/core/dist/plugins/yaml-validator.d.ts +0 -9
  621. package/node_modules/@pi-harness/core/dist/plugins/yaml-validator.d.ts.map +0 -1
  622. package/node_modules/@pi-harness/core/dist/plugins/yaml-validator.js +0 -203
  623. package/node_modules/@pi-harness/core/dist/plugins/yaml-validator.js.map +0 -1
  624. package/node_modules/@pi-harness/core/dist/profile.d.ts +0 -9
  625. package/node_modules/@pi-harness/core/dist/profile.d.ts.map +0 -1
  626. package/node_modules/@pi-harness/core/dist/profile.js +0 -33
  627. package/node_modules/@pi-harness/core/dist/profile.js.map +0 -1
  628. package/node_modules/@pi-harness/core/dist/runtime.d.ts +0 -16
  629. package/node_modules/@pi-harness/core/dist/runtime.d.ts.map +0 -1
  630. package/node_modules/@pi-harness/core/dist/runtime.js +0 -47
  631. package/node_modules/@pi-harness/core/dist/runtime.js.map +0 -1
  632. package/node_modules/@pi-harness/core/dist/services.d.ts +0 -118
  633. package/node_modules/@pi-harness/core/dist/services.d.ts.map +0 -1
  634. package/node_modules/@pi-harness/core/dist/services.js +0 -115
  635. package/node_modules/@pi-harness/core/dist/services.js.map +0 -1
  636. package/node_modules/@pi-harness/core/dist/stdio.d.ts +0 -37
  637. package/node_modules/@pi-harness/core/dist/stdio.d.ts.map +0 -1
  638. package/node_modules/@pi-harness/core/dist/stdio.js +0 -356
  639. package/node_modules/@pi-harness/core/dist/stdio.js.map +0 -1
  640. package/node_modules/@pi-harness/core/dist/workspace-path.d.ts +0 -13
  641. package/node_modules/@pi-harness/core/dist/workspace-path.d.ts.map +0 -1
  642. package/node_modules/@pi-harness/core/dist/workspace-path.js +0 -71
  643. package/node_modules/@pi-harness/core/dist/workspace-path.js.map +0 -1
  644. package/node_modules/@pi-harness/core/package.json +0 -42
  645. package/node_modules/@pi-harness/core/profiles/default/cordis.yml +0 -122
  646. package/node_modules/@pi-harness/core/profiles/development/cordis.yml +0 -47
  647. package/packages/client-web/LICENSE +0 -9
  648. package/packages/client-web/dist/agent-teams-view.d.ts +0 -70
  649. package/packages/client-web/dist/agent-teams-view.d.ts.map +0 -1
  650. package/packages/client-web/dist/agent-teams-view.js +0 -159
  651. package/packages/client-web/dist/agent-teams-view.js.map +0 -1
  652. package/packages/client-web/dist/annotation-ui.d.ts +0 -11
  653. package/packages/client-web/dist/annotation-ui.d.ts.map +0 -1
  654. package/packages/client-web/dist/annotation-ui.js +0 -24
  655. package/packages/client-web/dist/annotation-ui.js.map +0 -1
  656. package/packages/client-web/dist/at-file-view.d.ts +0 -10
  657. package/packages/client-web/dist/at-file-view.d.ts.map +0 -1
  658. package/packages/client-web/dist/at-file-view.js +0 -65
  659. package/packages/client-web/dist/at-file-view.js.map +0 -1
  660. package/packages/client-web/dist/browser-fetch-view.d.ts +0 -22
  661. package/packages/client-web/dist/browser-fetch-view.d.ts.map +0 -1
  662. package/packages/client-web/dist/browser-fetch-view.js +0 -101
  663. package/packages/client-web/dist/browser-fetch-view.js.map +0 -1
  664. package/packages/client-web/dist/browser-session-view.d.ts +0 -39
  665. package/packages/client-web/dist/browser-session-view.d.ts.map +0 -1
  666. package/packages/client-web/dist/browser-session-view.js +0 -211
  667. package/packages/client-web/dist/browser-session-view.js.map +0 -1
  668. package/packages/client-web/dist/cleaner-view.d.ts +0 -29
  669. package/packages/client-web/dist/cleaner-view.d.ts.map +0 -1
  670. package/packages/client-web/dist/cleaner-view.js +0 -191
  671. package/packages/client-web/dist/cleaner-view.js.map +0 -1
  672. package/packages/client-web/dist/context-doctor-view.d.ts +0 -35
  673. package/packages/client-web/dist/context-doctor-view.d.ts.map +0 -1
  674. package/packages/client-web/dist/context-doctor-view.js +0 -129
  675. package/packages/client-web/dist/context-doctor-view.js.map +0 -1
  676. package/packages/client-web/dist/context-insights-view.d.ts +0 -31
  677. package/packages/client-web/dist/context-insights-view.d.ts.map +0 -1
  678. package/packages/client-web/dist/context-insights-view.js +0 -90
  679. package/packages/client-web/dist/context-insights-view.js.map +0 -1
  680. package/packages/client-web/dist/control-room.d.ts +0 -270
  681. package/packages/client-web/dist/control-room.d.ts.map +0 -1
  682. package/packages/client-web/dist/control-room.js +0 -157
  683. package/packages/client-web/dist/control-room.js.map +0 -1
  684. package/packages/client-web/dist/cost-meter-view.d.ts +0 -16
  685. package/packages/client-web/dist/cost-meter-view.d.ts.map +0 -1
  686. package/packages/client-web/dist/cost-meter-view.js +0 -43
  687. package/packages/client-web/dist/cost-meter-view.js.map +0 -1
  688. package/packages/client-web/dist/dependency-checker-view.d.ts +0 -24
  689. package/packages/client-web/dist/dependency-checker-view.d.ts.map +0 -1
  690. package/packages/client-web/dist/dependency-checker-view.js +0 -195
  691. package/packages/client-web/dist/dependency-checker-view.js.map +0 -1
  692. package/packages/client-web/dist/design-contract.d.ts +0 -85
  693. package/packages/client-web/dist/design-contract.d.ts.map +0 -1
  694. package/packages/client-web/dist/design-contract.js +0 -258
  695. package/packages/client-web/dist/design-contract.js.map +0 -1
  696. package/packages/client-web/dist/docker-sandbox-view.d.ts +0 -28
  697. package/packages/client-web/dist/docker-sandbox-view.d.ts.map +0 -1
  698. package/packages/client-web/dist/docker-sandbox-view.js +0 -152
  699. package/packages/client-web/dist/docker-sandbox-view.js.map +0 -1
  700. package/packages/client-web/dist/fail-logger-view.d.ts +0 -16
  701. package/packages/client-web/dist/fail-logger-view.d.ts.map +0 -1
  702. package/packages/client-web/dist/fail-logger-view.js +0 -97
  703. package/packages/client-web/dist/fail-logger-view.js.map +0 -1
  704. package/packages/client-web/dist/genui-view.d.ts +0 -28
  705. package/packages/client-web/dist/genui-view.d.ts.map +0 -1
  706. package/packages/client-web/dist/genui-view.js +0 -62
  707. package/packages/client-web/dist/genui-view.js.map +0 -1
  708. package/packages/client-web/dist/git-time-capsule-view.d.ts +0 -31
  709. package/packages/client-web/dist/git-time-capsule-view.d.ts.map +0 -1
  710. package/packages/client-web/dist/git-time-capsule-view.js +0 -203
  711. package/packages/client-web/dist/git-time-capsule-view.js.map +0 -1
  712. package/packages/client-web/dist/graph-memory-view.d.ts +0 -39
  713. package/packages/client-web/dist/graph-memory-view.d.ts.map +0 -1
  714. package/packages/client-web/dist/graph-memory-view.js +0 -82
  715. package/packages/client-web/dist/graph-memory-view.js.map +0 -1
  716. package/packages/client-web/dist/i18n-pair-view.d.ts +0 -32
  717. package/packages/client-web/dist/i18n-pair-view.d.ts.map +0 -1
  718. package/packages/client-web/dist/i18n-pair-view.js +0 -182
  719. package/packages/client-web/dist/i18n-pair-view.js.map +0 -1
  720. package/packages/client-web/dist/index.d.ts +0 -20
  721. package/packages/client-web/dist/index.d.ts.map +0 -1
  722. package/packages/client-web/dist/index.js +0 -27
  723. package/packages/client-web/dist/index.js.map +0 -1
  724. package/packages/client-web/dist/markdown.d.ts +0 -5
  725. package/packages/client-web/dist/markdown.d.ts.map +0 -1
  726. package/packages/client-web/dist/markdown.js +0 -20
  727. package/packages/client-web/dist/markdown.js.map +0 -1
  728. package/packages/client-web/dist/marketplace-catalog.d.ts +0 -3
  729. package/packages/client-web/dist/marketplace-catalog.d.ts.map +0 -1
  730. package/packages/client-web/dist/marketplace-catalog.js +0 -10
  731. package/packages/client-web/dist/marketplace-catalog.js.map +0 -1
  732. package/packages/client-web/dist/marketplace-navigation.d.ts +0 -19
  733. package/packages/client-web/dist/marketplace-navigation.d.ts.map +0 -1
  734. package/packages/client-web/dist/marketplace-navigation.js +0 -31
  735. package/packages/client-web/dist/marketplace-navigation.js.map +0 -1
  736. package/packages/client-web/dist/mcp-client-view.d.ts +0 -58
  737. package/packages/client-web/dist/mcp-client-view.d.ts.map +0 -1
  738. package/packages/client-web/dist/mcp-client-view.js +0 -121
  739. package/packages/client-web/dist/mcp-client-view.js.map +0 -1
  740. package/packages/client-web/dist/message-content.d.ts +0 -9
  741. package/packages/client-web/dist/message-content.d.ts.map +0 -1
  742. package/packages/client-web/dist/message-content.js +0 -54
  743. package/packages/client-web/dist/message-content.js.map +0 -1
  744. package/packages/client-web/dist/modlens-view.d.ts +0 -43
  745. package/packages/client-web/dist/modlens-view.d.ts.map +0 -1
  746. package/packages/client-web/dist/modlens-view.js +0 -176
  747. package/packages/client-web/dist/modlens-view.js.map +0 -1
  748. package/packages/client-web/dist/openpets-view.d.ts +0 -26
  749. package/packages/client-web/dist/openpets-view.d.ts.map +0 -1
  750. package/packages/client-web/dist/openpets-view.js +0 -62
  751. package/packages/client-web/dist/openpets-view.js.map +0 -1
  752. package/packages/client-web/dist/panel-safe.d.ts +0 -5
  753. package/packages/client-web/dist/panel-safe.d.ts.map +0 -1
  754. package/packages/client-web/dist/panel-safe.js +0 -58
  755. package/packages/client-web/dist/panel-safe.js.map +0 -1
  756. package/packages/client-web/dist/plugin-card.d.ts +0 -8
  757. package/packages/client-web/dist/plugin-card.d.ts.map +0 -1
  758. package/packages/client-web/dist/plugin-card.js +0 -15
  759. package/packages/client-web/dist/plugin-card.js.map +0 -1
  760. package/packages/client-web/dist/plugin-dev-view.d.ts +0 -15
  761. package/packages/client-web/dist/plugin-dev-view.d.ts.map +0 -1
  762. package/packages/client-web/dist/plugin-dev-view.js +0 -33
  763. package/packages/client-web/dist/plugin-dev-view.js.map +0 -1
  764. package/packages/client-web/dist/plugin-navigation.d.ts +0 -3
  765. package/packages/client-web/dist/plugin-navigation.d.ts.map +0 -1
  766. package/packages/client-web/dist/plugin-navigation.js +0 -10
  767. package/packages/client-web/dist/plugin-navigation.js.map +0 -1
  768. package/packages/client-web/dist/plugin-search.d.ts +0 -2
  769. package/packages/client-web/dist/plugin-search.d.ts.map +0 -1
  770. package/packages/client-web/dist/plugin-search.js +0 -7
  771. package/packages/client-web/dist/plugin-search.js.map +0 -1
  772. package/packages/client-web/dist/plugin-stars-view.d.ts +0 -40
  773. package/packages/client-web/dist/plugin-stars-view.d.ts.map +0 -1
  774. package/packages/client-web/dist/plugin-stars-view.js +0 -216
  775. package/packages/client-web/dist/plugin-stars-view.js.map +0 -1
  776. package/packages/client-web/dist/prompt-completion.d.ts +0 -13
  777. package/packages/client-web/dist/prompt-completion.d.ts.map +0 -1
  778. package/packages/client-web/dist/prompt-completion.js +0 -17
  779. package/packages/client-web/dist/prompt-completion.js.map +0 -1
  780. package/packages/client-web/dist/react-room.d.ts +0 -11
  781. package/packages/client-web/dist/react-room.d.ts.map +0 -1
  782. package/packages/client-web/dist/react-room.js +0 -2844
  783. package/packages/client-web/dist/react-room.js.map +0 -1
  784. package/packages/client-web/dist/readme-gen-view.d.ts +0 -30
  785. package/packages/client-web/dist/readme-gen-view.d.ts.map +0 -1
  786. package/packages/client-web/dist/readme-gen-view.js +0 -134
  787. package/packages/client-web/dist/readme-gen-view.js.map +0 -1
  788. package/packages/client-web/dist/recall-unread-view.d.ts +0 -46
  789. package/packages/client-web/dist/recall-unread-view.d.ts.map +0 -1
  790. package/packages/client-web/dist/recall-unread-view.js +0 -104
  791. package/packages/client-web/dist/recall-unread-view.js.map +0 -1
  792. package/packages/client-web/dist/runtime-events.d.ts +0 -4
  793. package/packages/client-web/dist/runtime-events.d.ts.map +0 -1
  794. package/packages/client-web/dist/runtime-events.js +0 -29
  795. package/packages/client-web/dist/runtime-events.js.map +0 -1
  796. package/packages/client-web/dist/session-bridge-view.d.ts +0 -50
  797. package/packages/client-web/dist/session-bridge-view.d.ts.map +0 -1
  798. package/packages/client-web/dist/session-bridge-view.js +0 -113
  799. package/packages/client-web/dist/session-bridge-view.js.map +0 -1
  800. package/packages/client-web/dist/session-insights-view.d.ts +0 -40
  801. package/packages/client-web/dist/session-insights-view.d.ts.map +0 -1
  802. package/packages/client-web/dist/session-insights-view.js +0 -157
  803. package/packages/client-web/dist/session-insights-view.js.map +0 -1
  804. package/packages/client-web/dist/skill-guard-view.d.ts +0 -47
  805. package/packages/client-web/dist/skill-guard-view.d.ts.map +0 -1
  806. package/packages/client-web/dist/skill-guard-view.js +0 -93
  807. package/packages/client-web/dist/skill-guard-view.js.map +0 -1
  808. package/packages/client-web/dist/sql-lens-view.d.ts +0 -37
  809. package/packages/client-web/dist/sql-lens-view.d.ts.map +0 -1
  810. package/packages/client-web/dist/sql-lens-view.js +0 -235
  811. package/packages/client-web/dist/sql-lens-view.js.map +0 -1
  812. package/packages/client-web/dist/test-harness-view.d.ts +0 -24
  813. package/packages/client-web/dist/test-harness-view.d.ts.map +0 -1
  814. package/packages/client-web/dist/test-harness-view.js +0 -149
  815. package/packages/client-web/dist/test-harness-view.js.map +0 -1
  816. package/packages/client-web/dist/token-guard-view.d.ts +0 -19
  817. package/packages/client-web/dist/token-guard-view.d.ts.map +0 -1
  818. package/packages/client-web/dist/token-guard-view.js +0 -56
  819. package/packages/client-web/dist/token-guard-view.js.map +0 -1
  820. package/packages/client-web/dist/turn-rewind-view.d.ts +0 -41
  821. package/packages/client-web/dist/turn-rewind-view.d.ts.map +0 -1
  822. package/packages/client-web/dist/turn-rewind-view.js +0 -117
  823. package/packages/client-web/dist/turn-rewind-view.js.map +0 -1
  824. package/packages/client-web/dist/vision-toolkit-view.d.ts +0 -66
  825. package/packages/client-web/dist/vision-toolkit-view.d.ts.map +0 -1
  826. package/packages/client-web/dist/vision-toolkit-view.js +0 -238
  827. package/packages/client-web/dist/vision-toolkit-view.js.map +0 -1
  828. package/packages/client-web/dist/yaml-validator-view.d.ts +0 -52
  829. package/packages/client-web/dist/yaml-validator-view.d.ts.map +0 -1
  830. package/packages/client-web/dist/yaml-validator-view.js +0 -96
  831. package/packages/client-web/dist/yaml-validator-view.js.map +0 -1
  832. package/packages/client-web/package.json +0 -42
  833. package/packages/client-web/src/agent-teams-view.ts +0 -189
  834. package/packages/client-web/src/annotation-ui.ts +0 -29
  835. package/packages/client-web/src/at-file-view.ts +0 -69
  836. package/packages/client-web/src/browser-fetch-view.ts +0 -114
  837. package/packages/client-web/src/browser-session-view.ts +0 -232
  838. package/packages/client-web/src/cleaner-view.ts +0 -207
  839. package/packages/client-web/src/context-doctor-view.ts +0 -140
  840. package/packages/client-web/src/context-insights-view.ts +0 -125
  841. package/packages/client-web/src/control-room.ts +0 -359
  842. package/packages/client-web/src/cost-meter-view.ts +0 -63
  843. package/packages/client-web/src/dependency-checker-view.ts +0 -215
  844. package/packages/client-web/src/design-contract.ts +0 -334
  845. package/packages/client-web/src/docker-sandbox-view.ts +0 -177
  846. package/packages/client-web/src/fail-logger-view.ts +0 -112
  847. package/packages/client-web/src/genui-view.ts +0 -88
  848. package/packages/client-web/src/git-time-capsule-view.ts +0 -215
  849. package/packages/client-web/src/graph-memory-view.ts +0 -91
  850. package/packages/client-web/src/i18n-pair-view.ts +0 -194
  851. package/packages/client-web/src/index.ts +0 -34
  852. package/packages/client-web/src/markdown.tsx +0 -22
  853. package/packages/client-web/src/marketplace-catalog.ts +0 -10
  854. package/packages/client-web/src/marketplace-navigation.ts +0 -46
  855. package/packages/client-web/src/mcp-client-view.ts +0 -122
  856. package/packages/client-web/src/message-content.ts +0 -51
  857. package/packages/client-web/src/modlens-view.ts +0 -210
  858. package/packages/client-web/src/openpets-view.ts +0 -67
  859. package/packages/client-web/src/panel-safe.ts +0 -47
  860. package/packages/client-web/src/plugin-card.ts +0 -22
  861. package/packages/client-web/src/plugin-dev-view.ts +0 -39
  862. package/packages/client-web/src/plugin-navigation.ts +0 -9
  863. package/packages/client-web/src/plugin-search.ts +0 -5
  864. package/packages/client-web/src/plugin-stars-view.ts +0 -257
  865. package/packages/client-web/src/prompt-completion.ts +0 -24
  866. package/packages/client-web/src/react-room.tsx +0 -8581
  867. package/packages/client-web/src/readme-gen-view.ts +0 -145
  868. package/packages/client-web/src/recall-unread-view.ts +0 -105
  869. package/packages/client-web/src/runtime-events.ts +0 -29
  870. package/packages/client-web/src/session-bridge-view.ts +0 -118
  871. package/packages/client-web/src/session-insights-view.ts +0 -205
  872. package/packages/client-web/src/skill-guard-view.ts +0 -94
  873. package/packages/client-web/src/sql-lens-view.ts +0 -247
  874. package/packages/client-web/src/test-harness-view.ts +0 -170
  875. package/packages/client-web/src/token-guard-view.ts +0 -75
  876. package/packages/client-web/src/turn-rewind-view.ts +0 -120
  877. package/packages/client-web/src/vision-toolkit-view.ts +0 -280
  878. package/packages/client-web/src/yaml-validator-view.ts +0 -102
  879. package/packages/client-web/test/agent-teams-view.test.ts +0 -198
  880. package/packages/client-web/test/annotation-ui.test.ts +0 -21
  881. package/packages/client-web/test/at-file-panel.test.ts +0 -76
  882. package/packages/client-web/test/browser-fetch-panel.test.ts +0 -44
  883. package/packages/client-web/test/browser-fetch-view.test.ts +0 -89
  884. package/packages/client-web/test/browser-session-panel.test.ts +0 -55
  885. package/packages/client-web/test/browser-session-view.test.ts +0 -115
  886. package/packages/client-web/test/cleaner-panel.test.ts +0 -66
  887. package/packages/client-web/test/cleaner-view.test.ts +0 -143
  888. package/packages/client-web/test/context-doctor-view.test.ts +0 -169
  889. package/packages/client-web/test/context-insights-view.test.ts +0 -120
  890. package/packages/client-web/test/cost-meter-view.test.ts +0 -53
  891. package/packages/client-web/test/dependency-checker-panel.test.ts +0 -51
  892. package/packages/client-web/test/dependency-checker-view.test.ts +0 -266
  893. package/packages/client-web/test/design-contract.test.ts +0 -69
  894. package/packages/client-web/test/docker-sandbox-panel.test.ts +0 -44
  895. package/packages/client-web/test/docker-sandbox-view.test.ts +0 -127
  896. package/packages/client-web/test/fail-logger-view.test.ts +0 -155
  897. package/packages/client-web/test/genui-view.test.ts +0 -55
  898. package/packages/client-web/test/git-time-capsule-view.test.ts +0 -252
  899. package/packages/client-web/test/graph-memory-view.test.ts +0 -67
  900. package/packages/client-web/test/i18n-pair-panel.test.ts +0 -72
  901. package/packages/client-web/test/i18n-pair-view.test.ts +0 -164
  902. package/packages/client-web/test/marketplace-catalog.test.ts +0 -52
  903. package/packages/client-web/test/mcp-client-view.test.ts +0 -106
  904. package/packages/client-web/test/message-content.test.ts +0 -43
  905. package/packages/client-web/test/modlens-view.test.ts +0 -198
  906. package/packages/client-web/test/openpets-view.test.ts +0 -57
  907. package/packages/client-web/test/plugin-card.test.ts +0 -46
  908. package/packages/client-web/test/plugin-dev-view.test.ts +0 -63
  909. package/packages/client-web/test/plugin-navigation.test.ts +0 -14
  910. package/packages/client-web/test/plugin-search.test.ts +0 -22
  911. package/packages/client-web/test/plugin-stars-panel.test.ts +0 -44
  912. package/packages/client-web/test/plugin-stars-view.test.ts +0 -107
  913. package/packages/client-web/test/prompt-completion.test.ts +0 -21
  914. package/packages/client-web/test/readme-gen-panel.test.ts +0 -81
  915. package/packages/client-web/test/readme-gen-view.test.ts +0 -91
  916. package/packages/client-web/test/recall-unread-view.test.ts +0 -153
  917. package/packages/client-web/test/runtime-events.test.ts +0 -28
  918. package/packages/client-web/test/session-bridge-view.test.ts +0 -102
  919. package/packages/client-web/test/session-insights-panel.test.ts +0 -85
  920. package/packages/client-web/test/session-insights-view.test.ts +0 -152
  921. package/packages/client-web/test/skill-guard-view.test.ts +0 -138
  922. package/packages/client-web/test/sql-lens-panel.test.ts +0 -52
  923. package/packages/client-web/test/sql-lens-view.test.ts +0 -134
  924. package/packages/client-web/test/test-harness-panel.test.ts +0 -228
  925. package/packages/client-web/test/token-guard-view.test.ts +0 -93
  926. package/packages/client-web/test/turn-rewind-view.test.ts +0 -159
  927. package/packages/client-web/test/vision-toolkit-view.test.ts +0 -152
  928. package/packages/client-web/test/yaml-validator-view.test.ts +0 -100
  929. package/packages/client-web/tsconfig.build.json +0 -13
  930. package/packages/client-web/tsconfig.json +0 -11
  931. package/packages/core/LICENSE +0 -9
  932. package/packages/core/dist/atomic-write.d.ts +0 -8
  933. package/packages/core/dist/atomic-write.d.ts.map +0 -1
  934. package/packages/core/dist/atomic-write.js +0 -40
  935. package/packages/core/dist/atomic-write.js.map +0 -1
  936. package/packages/core/dist/boot.d.ts +0 -13
  937. package/packages/core/dist/boot.d.ts.map +0 -1
  938. package/packages/core/dist/boot.js +0 -257
  939. package/packages/core/dist/boot.js.map +0 -1
  940. package/packages/core/dist/bounded-file.d.ts +0 -7
  941. package/packages/core/dist/bounded-file.d.ts.map +0 -1
  942. package/packages/core/dist/bounded-file.js +0 -50
  943. package/packages/core/dist/bounded-file.js.map +0 -1
  944. package/packages/core/dist/config.d.ts +0 -4
  945. package/packages/core/dist/config.d.ts.map +0 -1
  946. package/packages/core/dist/config.js +0 -29
  947. package/packages/core/dist/config.js.map +0 -1
  948. package/packages/core/dist/context.d.ts +0 -3
  949. package/packages/core/dist/context.d.ts.map +0 -1
  950. package/packages/core/dist/context.js +0 -2
  951. package/packages/core/dist/context.js.map +0 -1
  952. package/packages/core/dist/cordis-timer.d.ts +0 -15
  953. package/packages/core/dist/cordis-timer.d.ts.map +0 -1
  954. package/packages/core/dist/cordis-timer.js +0 -99
  955. package/packages/core/dist/cordis-timer.js.map +0 -1
  956. package/packages/core/dist/http.d.ts +0 -8
  957. package/packages/core/dist/http.d.ts.map +0 -1
  958. package/packages/core/dist/http.js +0 -27
  959. package/packages/core/dist/http.js.map +0 -1
  960. package/packages/core/dist/index.d.ts +0 -9
  961. package/packages/core/dist/index.d.ts.map +0 -1
  962. package/packages/core/dist/index.js +0 -8
  963. package/packages/core/dist/index.js.map +0 -1
  964. package/packages/core/dist/plugins/agent-teams.d.ts +0 -21
  965. package/packages/core/dist/plugins/agent-teams.d.ts.map +0 -1
  966. package/packages/core/dist/plugins/agent-teams.js +0 -1179
  967. package/packages/core/dist/plugins/agent-teams.js.map +0 -1
  968. package/packages/core/dist/plugins/anchored-standard.d.ts +0 -15
  969. package/packages/core/dist/plugins/anchored-standard.d.ts.map +0 -1
  970. package/packages/core/dist/plugins/anchored-standard.js +0 -112
  971. package/packages/core/dist/plugins/anchored-standard.js.map +0 -1
  972. package/packages/core/dist/plugins/annotation.d.ts +0 -19
  973. package/packages/core/dist/plugins/annotation.d.ts.map +0 -1
  974. package/packages/core/dist/plugins/annotation.js +0 -112
  975. package/packages/core/dist/plugins/annotation.js.map +0 -1
  976. package/packages/core/dist/plugins/archify.d.ts +0 -24
  977. package/packages/core/dist/plugins/archify.d.ts.map +0 -1
  978. package/packages/core/dist/plugins/archify.js +0 -145
  979. package/packages/core/dist/plugins/archify.js.map +0 -1
  980. package/packages/core/dist/plugins/at-file.d.ts +0 -12
  981. package/packages/core/dist/plugins/at-file.d.ts.map +0 -1
  982. package/packages/core/dist/plugins/at-file.js +0 -143
  983. package/packages/core/dist/plugins/at-file.js.map +0 -1
  984. package/packages/core/dist/plugins/auto-mode.d.ts +0 -15
  985. package/packages/core/dist/plugins/auto-mode.d.ts.map +0 -1
  986. package/packages/core/dist/plugins/auto-mode.js +0 -183
  987. package/packages/core/dist/plugins/auto-mode.js.map +0 -1
  988. package/packages/core/dist/plugins/better-sidebar.d.ts +0 -38
  989. package/packages/core/dist/plugins/better-sidebar.d.ts.map +0 -1
  990. package/packages/core/dist/plugins/better-sidebar.js +0 -99
  991. package/packages/core/dist/plugins/better-sidebar.js.map +0 -1
  992. package/packages/core/dist/plugins/browser-fetch.d.ts +0 -15
  993. package/packages/core/dist/plugins/browser-fetch.d.ts.map +0 -1
  994. package/packages/core/dist/plugins/browser-fetch.js +0 -359
  995. package/packages/core/dist/plugins/browser-fetch.js.map +0 -1
  996. package/packages/core/dist/plugins/browser-session.d.ts +0 -14
  997. package/packages/core/dist/plugins/browser-session.d.ts.map +0 -1
  998. package/packages/core/dist/plugins/browser-session.js +0 -604
  999. package/packages/core/dist/plugins/browser-session.js.map +0 -1
  1000. package/packages/core/dist/plugins/canvas-draw.d.ts +0 -9
  1001. package/packages/core/dist/plugins/canvas-draw.d.ts.map +0 -1
  1002. package/packages/core/dist/plugins/canvas-draw.js +0 -140
  1003. package/packages/core/dist/plugins/canvas-draw.js.map +0 -1
  1004. package/packages/core/dist/plugins/change-verifier.d.ts +0 -9
  1005. package/packages/core/dist/plugins/change-verifier.d.ts.map +0 -1
  1006. package/packages/core/dist/plugins/change-verifier.js +0 -88
  1007. package/packages/core/dist/plugins/change-verifier.js.map +0 -1
  1008. package/packages/core/dist/plugins/cleaner.d.ts +0 -12
  1009. package/packages/core/dist/plugins/cleaner.d.ts.map +0 -1
  1010. package/packages/core/dist/plugins/cleaner.js +0 -353
  1011. package/packages/core/dist/plugins/cleaner.js.map +0 -1
  1012. package/packages/core/dist/plugins/cli-notifier.d.ts +0 -16
  1013. package/packages/core/dist/plugins/cli-notifier.d.ts.map +0 -1
  1014. package/packages/core/dist/plugins/cli-notifier.js +0 -167
  1015. package/packages/core/dist/plugins/cli-notifier.js.map +0 -1
  1016. package/packages/core/dist/plugins/code2skill.d.ts +0 -9
  1017. package/packages/core/dist/plugins/code2skill.d.ts.map +0 -1
  1018. package/packages/core/dist/plugins/code2skill.js +0 -235
  1019. package/packages/core/dist/plugins/code2skill.js.map +0 -1
  1020. package/packages/core/dist/plugins/colleague-skill.d.ts +0 -28
  1021. package/packages/core/dist/plugins/colleague-skill.d.ts.map +0 -1
  1022. package/packages/core/dist/plugins/colleague-skill.js +0 -129
  1023. package/packages/core/dist/plugins/colleague-skill.js.map +0 -1
  1024. package/packages/core/dist/plugins/context-doctor.d.ts +0 -35
  1025. package/packages/core/dist/plugins/context-doctor.d.ts.map +0 -1
  1026. package/packages/core/dist/plugins/context-doctor.js +0 -459
  1027. package/packages/core/dist/plugins/context-doctor.js.map +0 -1
  1028. package/packages/core/dist/plugins/context.d.ts +0 -9
  1029. package/packages/core/dist/plugins/context.d.ts.map +0 -1
  1030. package/packages/core/dist/plugins/context.js +0 -214
  1031. package/packages/core/dist/plugins/context.js.map +0 -1
  1032. package/packages/core/dist/plugins/cost-meter.d.ts +0 -36
  1033. package/packages/core/dist/plugins/cost-meter.d.ts.map +0 -1
  1034. package/packages/core/dist/plugins/cost-meter.js +0 -430
  1035. package/packages/core/dist/plugins/cost-meter.js.map +0 -1
  1036. package/packages/core/dist/plugins/dependency-checker.d.ts +0 -36
  1037. package/packages/core/dist/plugins/dependency-checker.d.ts.map +0 -1
  1038. package/packages/core/dist/plugins/dependency-checker.js +0 -570
  1039. package/packages/core/dist/plugins/dependency-checker.js.map +0 -1
  1040. package/packages/core/dist/plugins/docker-sandbox.d.ts +0 -9
  1041. package/packages/core/dist/plugins/docker-sandbox.d.ts.map +0 -1
  1042. package/packages/core/dist/plugins/docker-sandbox.js +0 -344
  1043. package/packages/core/dist/plugins/docker-sandbox.js.map +0 -1
  1044. package/packages/core/dist/plugins/fail-logger.d.ts +0 -9
  1045. package/packages/core/dist/plugins/fail-logger.d.ts.map +0 -1
  1046. package/packages/core/dist/plugins/fail-logger.js +0 -218
  1047. package/packages/core/dist/plugins/fail-logger.js.map +0 -1
  1048. package/packages/core/dist/plugins/genui.d.ts +0 -9
  1049. package/packages/core/dist/plugins/genui.d.ts.map +0 -1
  1050. package/packages/core/dist/plugins/genui.js +0 -144
  1051. package/packages/core/dist/plugins/genui.js.map +0 -1
  1052. package/packages/core/dist/plugins/git-time-capsule.d.ts +0 -15
  1053. package/packages/core/dist/plugins/git-time-capsule.d.ts.map +0 -1
  1054. package/packages/core/dist/plugins/git-time-capsule.js +0 -436
  1055. package/packages/core/dist/plugins/git-time-capsule.js.map +0 -1
  1056. package/packages/core/dist/plugins/graph-memory.d.ts +0 -16
  1057. package/packages/core/dist/plugins/graph-memory.d.ts.map +0 -1
  1058. package/packages/core/dist/plugins/graph-memory.js +0 -669
  1059. package/packages/core/dist/plugins/graph-memory.js.map +0 -1
  1060. package/packages/core/dist/plugins/history-compressor.d.ts +0 -15
  1061. package/packages/core/dist/plugins/history-compressor.d.ts.map +0 -1
  1062. package/packages/core/dist/plugins/history-compressor.js +0 -99
  1063. package/packages/core/dist/plugins/history-compressor.js.map +0 -1
  1064. package/packages/core/dist/plugins/hol-guard.d.ts +0 -29
  1065. package/packages/core/dist/plugins/hol-guard.d.ts.map +0 -1
  1066. package/packages/core/dist/plugins/hol-guard.js +0 -159
  1067. package/packages/core/dist/plugins/hol-guard.js.map +0 -1
  1068. package/packages/core/dist/plugins/i18n-pair.d.ts +0 -12
  1069. package/packages/core/dist/plugins/i18n-pair.d.ts.map +0 -1
  1070. package/packages/core/dist/plugins/i18n-pair.js +0 -332
  1071. package/packages/core/dist/plugins/i18n-pair.js.map +0 -1
  1072. package/packages/core/dist/plugins/image-compressor.d.ts +0 -15
  1073. package/packages/core/dist/plugins/image-compressor.d.ts.map +0 -1
  1074. package/packages/core/dist/plugins/image-compressor.js +0 -223
  1075. package/packages/core/dist/plugins/image-compressor.js.map +0 -1
  1076. package/packages/core/dist/plugins/llm-verifier.d.ts +0 -42
  1077. package/packages/core/dist/plugins/llm-verifier.d.ts.map +0 -1
  1078. package/packages/core/dist/plugins/llm-verifier.js +0 -138
  1079. package/packages/core/dist/plugins/llm-verifier.js.map +0 -1
  1080. package/packages/core/dist/plugins/mcp-client.d.ts +0 -19
  1081. package/packages/core/dist/plugins/mcp-client.d.ts.map +0 -1
  1082. package/packages/core/dist/plugins/mcp-client.js +0 -1288
  1083. package/packages/core/dist/plugins/mcp-client.js.map +0 -1
  1084. package/packages/core/dist/plugins/mcp-panel.d.ts +0 -14
  1085. package/packages/core/dist/plugins/mcp-panel.d.ts.map +0 -1
  1086. package/packages/core/dist/plugins/mcp-panel.js +0 -194
  1087. package/packages/core/dist/plugins/mcp-panel.js.map +0 -1
  1088. package/packages/core/dist/plugins/memory.d.ts +0 -15
  1089. package/packages/core/dist/plugins/memory.d.ts.map +0 -1
  1090. package/packages/core/dist/plugins/memory.js +0 -394
  1091. package/packages/core/dist/plugins/memory.js.map +0 -1
  1092. package/packages/core/dist/plugins/mirage-bridge.d.ts +0 -23
  1093. package/packages/core/dist/plugins/mirage-bridge.d.ts.map +0 -1
  1094. package/packages/core/dist/plugins/mirage-bridge.js +0 -159
  1095. package/packages/core/dist/plugins/mirage-bridge.js.map +0 -1
  1096. package/packages/core/dist/plugins/mock-server.d.ts +0 -22
  1097. package/packages/core/dist/plugins/mock-server.d.ts.map +0 -1
  1098. package/packages/core/dist/plugins/mock-server.js +0 -180
  1099. package/packages/core/dist/plugins/mock-server.js.map +0 -1
  1100. package/packages/core/dist/plugins/model.d.ts +0 -11
  1101. package/packages/core/dist/plugins/model.d.ts.map +0 -1
  1102. package/packages/core/dist/plugins/model.js +0 -17
  1103. package/packages/core/dist/plugins/model.js.map +0 -1
  1104. package/packages/core/dist/plugins/models.d.ts +0 -16
  1105. package/packages/core/dist/plugins/models.d.ts.map +0 -1
  1106. package/packages/core/dist/plugins/models.js +0 -35
  1107. package/packages/core/dist/plugins/models.js.map +0 -1
  1108. package/packages/core/dist/plugins/modlens.d.ts +0 -15
  1109. package/packages/core/dist/plugins/modlens.d.ts.map +0 -1
  1110. package/packages/core/dist/plugins/modlens.js +0 -470
  1111. package/packages/core/dist/plugins/modlens.js.map +0 -1
  1112. package/packages/core/dist/plugins/module-search.d.ts +0 -28
  1113. package/packages/core/dist/plugins/module-search.d.ts.map +0 -1
  1114. package/packages/core/dist/plugins/module-search.js +0 -193
  1115. package/packages/core/dist/plugins/module-search.js.map +0 -1
  1116. package/packages/core/dist/plugins/obsidian-sync.d.ts +0 -14
  1117. package/packages/core/dist/plugins/obsidian-sync.d.ts.map +0 -1
  1118. package/packages/core/dist/plugins/obsidian-sync.js +0 -88
  1119. package/packages/core/dist/plugins/obsidian-sync.js.map +0 -1
  1120. package/packages/core/dist/plugins/openpets.d.ts +0 -14
  1121. package/packages/core/dist/plugins/openpets.d.ts.map +0 -1
  1122. package/packages/core/dist/plugins/openpets.js +0 -258
  1123. package/packages/core/dist/plugins/openpets.js.map +0 -1
  1124. package/packages/core/dist/plugins/plan-execute.d.ts +0 -11
  1125. package/packages/core/dist/plugins/plan-execute.d.ts.map +0 -1
  1126. package/packages/core/dist/plugins/plan-execute.js +0 -91
  1127. package/packages/core/dist/plugins/plan-execute.js.map +0 -1
  1128. package/packages/core/dist/plugins/plugin-check.d.ts +0 -47
  1129. package/packages/core/dist/plugins/plugin-check.d.ts.map +0 -1
  1130. package/packages/core/dist/plugins/plugin-check.js +0 -298
  1131. package/packages/core/dist/plugins/plugin-check.js.map +0 -1
  1132. package/packages/core/dist/plugins/plugin-dev.d.ts +0 -9
  1133. package/packages/core/dist/plugins/plugin-dev.d.ts.map +0 -1
  1134. package/packages/core/dist/plugins/plugin-dev.js +0 -177
  1135. package/packages/core/dist/plugins/plugin-dev.js.map +0 -1
  1136. package/packages/core/dist/plugins/plugin-finder.d.ts +0 -17
  1137. package/packages/core/dist/plugins/plugin-finder.d.ts.map +0 -1
  1138. package/packages/core/dist/plugins/plugin-finder.js +0 -216
  1139. package/packages/core/dist/plugins/plugin-finder.js.map +0 -1
  1140. package/packages/core/dist/plugins/plugin-radar.d.ts +0 -33
  1141. package/packages/core/dist/plugins/plugin-radar.d.ts.map +0 -1
  1142. package/packages/core/dist/plugins/plugin-radar.js +0 -247
  1143. package/packages/core/dist/plugins/plugin-radar.js.map +0 -1
  1144. package/packages/core/dist/plugins/plugin-stars.d.ts +0 -45
  1145. package/packages/core/dist/plugins/plugin-stars.d.ts.map +0 -1
  1146. package/packages/core/dist/plugins/plugin-stars.js +0 -366
  1147. package/packages/core/dist/plugins/plugin-stars.js.map +0 -1
  1148. package/packages/core/dist/plugins/prompt-guard.d.ts +0 -9
  1149. package/packages/core/dist/plugins/prompt-guard.d.ts.map +0 -1
  1150. package/packages/core/dist/plugins/prompt-guard.js +0 -165
  1151. package/packages/core/dist/plugins/prompt-guard.js.map +0 -1
  1152. package/packages/core/dist/plugins/prompt-library.d.ts +0 -26
  1153. package/packages/core/dist/plugins/prompt-library.d.ts.map +0 -1
  1154. package/packages/core/dist/plugins/prompt-library.js +0 -145
  1155. package/packages/core/dist/plugins/prompt-library.js.map +0 -1
  1156. package/packages/core/dist/plugins/readme-gen.d.ts +0 -29
  1157. package/packages/core/dist/plugins/readme-gen.d.ts.map +0 -1
  1158. package/packages/core/dist/plugins/readme-gen.js +0 -580
  1159. package/packages/core/dist/plugins/readme-gen.js.map +0 -1
  1160. package/packages/core/dist/plugins/recall-unread.d.ts +0 -24
  1161. package/packages/core/dist/plugins/recall-unread.d.ts.map +0 -1
  1162. package/packages/core/dist/plugins/recall-unread.js +0 -467
  1163. package/packages/core/dist/plugins/recall-unread.js.map +0 -1
  1164. package/packages/core/dist/plugins/resources.d.ts +0 -19
  1165. package/packages/core/dist/plugins/resources.d.ts.map +0 -1
  1166. package/packages/core/dist/plugins/resources.js +0 -126
  1167. package/packages/core/dist/plugins/resources.js.map +0 -1
  1168. package/packages/core/dist/plugins/reverse-skill.d.ts +0 -23
  1169. package/packages/core/dist/plugins/reverse-skill.d.ts.map +0 -1
  1170. package/packages/core/dist/plugins/reverse-skill.js +0 -61
  1171. package/packages/core/dist/plugins/reverse-skill.js.map +0 -1
  1172. package/packages/core/dist/plugins/reviewer-bot.d.ts +0 -15
  1173. package/packages/core/dist/plugins/reviewer-bot.d.ts.map +0 -1
  1174. package/packages/core/dist/plugins/reviewer-bot.js +0 -152
  1175. package/packages/core/dist/plugins/reviewer-bot.js.map +0 -1
  1176. package/packages/core/dist/plugins/runtime-doctor.d.ts +0 -34
  1177. package/packages/core/dist/plugins/runtime-doctor.d.ts.map +0 -1
  1178. package/packages/core/dist/plugins/runtime-doctor.js +0 -117
  1179. package/packages/core/dist/plugins/runtime-doctor.js.map +0 -1
  1180. package/packages/core/dist/plugins/runtime.d.ts +0 -14
  1181. package/packages/core/dist/plugins/runtime.d.ts.map +0 -1
  1182. package/packages/core/dist/plugins/runtime.js +0 -159
  1183. package/packages/core/dist/plugins/runtime.js.map +0 -1
  1184. package/packages/core/dist/plugins/secure-audit.d.ts +0 -32
  1185. package/packages/core/dist/plugins/secure-audit.d.ts.map +0 -1
  1186. package/packages/core/dist/plugins/secure-audit.js +0 -139
  1187. package/packages/core/dist/plugins/secure-audit.js.map +0 -1
  1188. package/packages/core/dist/plugins/session-bookmarks.d.ts +0 -16
  1189. package/packages/core/dist/plugins/session-bookmarks.d.ts.map +0 -1
  1190. package/packages/core/dist/plugins/session-bookmarks.js +0 -90
  1191. package/packages/core/dist/plugins/session-bookmarks.js.map +0 -1
  1192. package/packages/core/dist/plugins/session-bridge.d.ts +0 -45
  1193. package/packages/core/dist/plugins/session-bridge.d.ts.map +0 -1
  1194. package/packages/core/dist/plugins/session-bridge.js +0 -578
  1195. package/packages/core/dist/plugins/session-bridge.js.map +0 -1
  1196. package/packages/core/dist/plugins/session-compare.d.ts +0 -34
  1197. package/packages/core/dist/plugins/session-compare.d.ts.map +0 -1
  1198. package/packages/core/dist/plugins/session-compare.js +0 -153
  1199. package/packages/core/dist/plugins/session-compare.js.map +0 -1
  1200. package/packages/core/dist/plugins/session-export.d.ts +0 -10
  1201. package/packages/core/dist/plugins/session-export.d.ts.map +0 -1
  1202. package/packages/core/dist/plugins/session-export.js +0 -93
  1203. package/packages/core/dist/plugins/session-export.js.map +0 -1
  1204. package/packages/core/dist/plugins/session-insights.d.ts +0 -44
  1205. package/packages/core/dist/plugins/session-insights.d.ts.map +0 -1
  1206. package/packages/core/dist/plugins/session-insights.js +0 -432
  1207. package/packages/core/dist/plugins/session-insights.js.map +0 -1
  1208. package/packages/core/dist/plugins/session-search.d.ts +0 -21
  1209. package/packages/core/dist/plugins/session-search.d.ts.map +0 -1
  1210. package/packages/core/dist/plugins/session-search.js +0 -125
  1211. package/packages/core/dist/plugins/session-search.js.map +0 -1
  1212. package/packages/core/dist/plugins/session.d.ts +0 -15
  1213. package/packages/core/dist/plugins/session.d.ts.map +0 -1
  1214. package/packages/core/dist/plugins/session.js +0 -29
  1215. package/packages/core/dist/plugins/session.js.map +0 -1
  1216. package/packages/core/dist/plugins/skill-catalog.d.ts +0 -27
  1217. package/packages/core/dist/plugins/skill-catalog.d.ts.map +0 -1
  1218. package/packages/core/dist/plugins/skill-catalog.js +0 -98
  1219. package/packages/core/dist/plugins/skill-catalog.js.map +0 -1
  1220. package/packages/core/dist/plugins/skill-guard.d.ts +0 -27
  1221. package/packages/core/dist/plugins/skill-guard.d.ts.map +0 -1
  1222. package/packages/core/dist/plugins/skill-guard.js +0 -319
  1223. package/packages/core/dist/plugins/skill-guard.js.map +0 -1
  1224. package/packages/core/dist/plugins/sql-lens-worker.d.ts +0 -2
  1225. package/packages/core/dist/plugins/sql-lens-worker.d.ts.map +0 -1
  1226. package/packages/core/dist/plugins/sql-lens-worker.js +0 -206
  1227. package/packages/core/dist/plugins/sql-lens-worker.js.map +0 -1
  1228. package/packages/core/dist/plugins/sql-lens.d.ts +0 -14
  1229. package/packages/core/dist/plugins/sql-lens.d.ts.map +0 -1
  1230. package/packages/core/dist/plugins/sql-lens.js +0 -318
  1231. package/packages/core/dist/plugins/sql-lens.js.map +0 -1
  1232. package/packages/core/dist/plugins/stdio.d.ts +0 -11
  1233. package/packages/core/dist/plugins/stdio.d.ts.map +0 -1
  1234. package/packages/core/dist/plugins/stdio.js +0 -80
  1235. package/packages/core/dist/plugins/stdio.js.map +0 -1
  1236. package/packages/core/dist/plugins/synapse.d.ts +0 -38
  1237. package/packages/core/dist/plugins/synapse.d.ts.map +0 -1
  1238. package/packages/core/dist/plugins/synapse.js +0 -101
  1239. package/packages/core/dist/plugins/synapse.js.map +0 -1
  1240. package/packages/core/dist/plugins/tab-manager.d.ts +0 -9
  1241. package/packages/core/dist/plugins/tab-manager.d.ts.map +0 -1
  1242. package/packages/core/dist/plugins/tab-manager.js +0 -240
  1243. package/packages/core/dist/plugins/tab-manager.js.map +0 -1
  1244. package/packages/core/dist/plugins/taskboard.d.ts +0 -15
  1245. package/packages/core/dist/plugins/taskboard.d.ts.map +0 -1
  1246. package/packages/core/dist/plugins/taskboard.js +0 -375
  1247. package/packages/core/dist/plugins/taskboard.js.map +0 -1
  1248. package/packages/core/dist/plugins/telemetry-blocker.d.ts +0 -11
  1249. package/packages/core/dist/plugins/telemetry-blocker.d.ts.map +0 -1
  1250. package/packages/core/dist/plugins/telemetry-blocker.js +0 -76
  1251. package/packages/core/dist/plugins/telemetry-blocker.js.map +0 -1
  1252. package/packages/core/dist/plugins/test-harness.d.ts +0 -14
  1253. package/packages/core/dist/plugins/test-harness.d.ts.map +0 -1
  1254. package/packages/core/dist/plugins/test-harness.js +0 -276
  1255. package/packages/core/dist/plugins/test-harness.js.map +0 -1
  1256. package/packages/core/dist/plugins/theme-studio.d.ts +0 -29
  1257. package/packages/core/dist/plugins/theme-studio.d.ts.map +0 -1
  1258. package/packages/core/dist/plugins/theme-studio.js +0 -143
  1259. package/packages/core/dist/plugins/theme-studio.js.map +0 -1
  1260. package/packages/core/dist/plugins/token-guard.d.ts +0 -15
  1261. package/packages/core/dist/plugins/token-guard.d.ts.map +0 -1
  1262. package/packages/core/dist/plugins/token-guard.js +0 -210
  1263. package/packages/core/dist/plugins/token-guard.js.map +0 -1
  1264. package/packages/core/dist/plugins/tools.d.ts +0 -13
  1265. package/packages/core/dist/plugins/tools.d.ts.map +0 -1
  1266. package/packages/core/dist/plugins/tools.js +0 -23
  1267. package/packages/core/dist/plugins/tools.js.map +0 -1
  1268. package/packages/core/dist/plugins/turn-rewind.d.ts +0 -36
  1269. package/packages/core/dist/plugins/turn-rewind.d.ts.map +0 -1
  1270. package/packages/core/dist/plugins/turn-rewind.js +0 -378
  1271. package/packages/core/dist/plugins/turn-rewind.js.map +0 -1
  1272. package/packages/core/dist/plugins/undo-savepoint.d.ts +0 -17
  1273. package/packages/core/dist/plugins/undo-savepoint.d.ts.map +0 -1
  1274. package/packages/core/dist/plugins/undo-savepoint.js +0 -353
  1275. package/packages/core/dist/plugins/undo-savepoint.js.map +0 -1
  1276. package/packages/core/dist/plugins/vision-toolkit.d.ts +0 -36
  1277. package/packages/core/dist/plugins/vision-toolkit.d.ts.map +0 -1
  1278. package/packages/core/dist/plugins/vision-toolkit.js +0 -468
  1279. package/packages/core/dist/plugins/vision-toolkit.js.map +0 -1
  1280. package/packages/core/dist/plugins/web-research.d.ts +0 -17
  1281. package/packages/core/dist/plugins/web-research.d.ts.map +0 -1
  1282. package/packages/core/dist/plugins/web-research.js +0 -284
  1283. package/packages/core/dist/plugins/web-research.js.map +0 -1
  1284. package/packages/core/dist/plugins/workspace-navigator.d.ts +0 -42
  1285. package/packages/core/dist/plugins/workspace-navigator.d.ts.map +0 -1
  1286. package/packages/core/dist/plugins/workspace-navigator.js +0 -168
  1287. package/packages/core/dist/plugins/workspace-navigator.js.map +0 -1
  1288. package/packages/core/dist/plugins/workspace-search.d.ts +0 -15
  1289. package/packages/core/dist/plugins/workspace-search.d.ts.map +0 -1
  1290. package/packages/core/dist/plugins/workspace-search.js +0 -167
  1291. package/packages/core/dist/plugins/workspace-search.js.map +0 -1
  1292. package/packages/core/dist/plugins/yaml-validator.d.ts +0 -9
  1293. package/packages/core/dist/plugins/yaml-validator.d.ts.map +0 -1
  1294. package/packages/core/dist/plugins/yaml-validator.js +0 -203
  1295. package/packages/core/dist/plugins/yaml-validator.js.map +0 -1
  1296. package/packages/core/dist/profile.d.ts +0 -9
  1297. package/packages/core/dist/profile.d.ts.map +0 -1
  1298. package/packages/core/dist/profile.js +0 -33
  1299. package/packages/core/dist/profile.js.map +0 -1
  1300. package/packages/core/dist/runtime.d.ts +0 -16
  1301. package/packages/core/dist/runtime.d.ts.map +0 -1
  1302. package/packages/core/dist/runtime.js +0 -47
  1303. package/packages/core/dist/runtime.js.map +0 -1
  1304. package/packages/core/dist/services.d.ts +0 -118
  1305. package/packages/core/dist/services.d.ts.map +0 -1
  1306. package/packages/core/dist/services.js +0 -115
  1307. package/packages/core/dist/services.js.map +0 -1
  1308. package/packages/core/dist/stdio.d.ts +0 -37
  1309. package/packages/core/dist/stdio.d.ts.map +0 -1
  1310. package/packages/core/dist/stdio.js +0 -356
  1311. package/packages/core/dist/stdio.js.map +0 -1
  1312. package/packages/core/dist/workspace-path.d.ts +0 -13
  1313. package/packages/core/dist/workspace-path.d.ts.map +0 -1
  1314. package/packages/core/dist/workspace-path.js +0 -71
  1315. package/packages/core/dist/workspace-path.js.map +0 -1
  1316. package/packages/core/package.json +0 -42
  1317. package/packages/core/profiles/default/cordis.yml +0 -122
  1318. package/packages/core/profiles/development/cordis.yml +0 -47
  1319. package/packages/core/src/atomic-write.ts +0 -45
  1320. package/packages/core/src/boot.ts +0 -255
  1321. package/packages/core/src/bounded-file.ts +0 -41
  1322. package/packages/core/src/config.ts +0 -24
  1323. package/packages/core/src/context.ts +0 -3
  1324. package/packages/core/src/cordis-timer.ts +0 -107
  1325. package/packages/core/src/http.ts +0 -32
  1326. package/packages/core/src/index.ts +0 -8
  1327. package/packages/core/src/plugins/agent-teams.ts +0 -1191
  1328. package/packages/core/src/plugins/anchored-standard.ts +0 -115
  1329. package/packages/core/src/plugins/annotation.ts +0 -123
  1330. package/packages/core/src/plugins/archify.ts +0 -171
  1331. package/packages/core/src/plugins/at-file.ts +0 -138
  1332. package/packages/core/src/plugins/auto-mode.ts +0 -190
  1333. package/packages/core/src/plugins/better-sidebar.ts +0 -128
  1334. package/packages/core/src/plugins/browser-fetch.ts +0 -362
  1335. package/packages/core/src/plugins/browser-session.ts +0 -606
  1336. package/packages/core/src/plugins/canvas-draw.ts +0 -143
  1337. package/packages/core/src/plugins/change-verifier.ts +0 -103
  1338. package/packages/core/src/plugins/cleaner.ts +0 -363
  1339. package/packages/core/src/plugins/cli-notifier.ts +0 -194
  1340. package/packages/core/src/plugins/code2skill.ts +0 -237
  1341. package/packages/core/src/plugins/colleague-skill.ts +0 -147
  1342. package/packages/core/src/plugins/context-doctor.ts +0 -487
  1343. package/packages/core/src/plugins/context.ts +0 -227
  1344. package/packages/core/src/plugins/cost-meter.ts +0 -478
  1345. package/packages/core/src/plugins/dependency-checker.ts +0 -578
  1346. package/packages/core/src/plugins/docker-sandbox.ts +0 -336
  1347. package/packages/core/src/plugins/fail-logger.ts +0 -202
  1348. package/packages/core/src/plugins/genui.ts +0 -150
  1349. package/packages/core/src/plugins/git-time-capsule.ts +0 -466
  1350. package/packages/core/src/plugins/graph-memory.ts +0 -667
  1351. package/packages/core/src/plugins/history-compressor.ts +0 -98
  1352. package/packages/core/src/plugins/hol-guard.ts +0 -171
  1353. package/packages/core/src/plugins/i18n-pair.ts +0 -326
  1354. package/packages/core/src/plugins/image-compressor.ts +0 -217
  1355. package/packages/core/src/plugins/llm-verifier.ts +0 -182
  1356. package/packages/core/src/plugins/mcp-client.ts +0 -1379
  1357. package/packages/core/src/plugins/mcp-panel.ts +0 -206
  1358. package/packages/core/src/plugins/memory.ts +0 -381
  1359. package/packages/core/src/plugins/mirage-bridge.ts +0 -191
  1360. package/packages/core/src/plugins/mock-server.ts +0 -189
  1361. package/packages/core/src/plugins/model.ts +0 -18
  1362. package/packages/core/src/plugins/models.ts +0 -43
  1363. package/packages/core/src/plugins/modlens.ts +0 -497
  1364. package/packages/core/src/plugins/module-search.ts +0 -222
  1365. package/packages/core/src/plugins/obsidian-sync.ts +0 -94
  1366. package/packages/core/src/plugins/openpets.ts +0 -260
  1367. package/packages/core/src/plugins/plan-execute.ts +0 -104
  1368. package/packages/core/src/plugins/plugin-check.ts +0 -316
  1369. package/packages/core/src/plugins/plugin-dev.ts +0 -191
  1370. package/packages/core/src/plugins/plugin-finder.ts +0 -215
  1371. package/packages/core/src/plugins/plugin-radar.ts +0 -270
  1372. package/packages/core/src/plugins/plugin-stars.ts +0 -377
  1373. package/packages/core/src/plugins/prompt-guard.ts +0 -161
  1374. package/packages/core/src/plugins/prompt-library.ts +0 -171
  1375. package/packages/core/src/plugins/readme-gen.ts +0 -544
  1376. package/packages/core/src/plugins/recall-unread.ts +0 -486
  1377. package/packages/core/src/plugins/resources.ts +0 -146
  1378. package/packages/core/src/plugins/reverse-skill.ts +0 -83
  1379. package/packages/core/src/plugins/reviewer-bot.ts +0 -164
  1380. package/packages/core/src/plugins/runtime-doctor.ts +0 -140
  1381. package/packages/core/src/plugins/runtime.ts +0 -171
  1382. package/packages/core/src/plugins/secure-audit.ts +0 -167
  1383. package/packages/core/src/plugins/session-bookmarks.ts +0 -95
  1384. package/packages/core/src/plugins/session-bridge.ts +0 -614
  1385. package/packages/core/src/plugins/session-compare.ts +0 -186
  1386. package/packages/core/src/plugins/session-export.ts +0 -102
  1387. package/packages/core/src/plugins/session-insights.ts +0 -470
  1388. package/packages/core/src/plugins/session-search.ts +0 -129
  1389. package/packages/core/src/plugins/session.ts +0 -40
  1390. package/packages/core/src/plugins/skill-catalog.ts +0 -122
  1391. package/packages/core/src/plugins/skill-guard.ts +0 -345
  1392. package/packages/core/src/plugins/sql-lens-worker.ts +0 -202
  1393. package/packages/core/src/plugins/sql-lens.ts +0 -344
  1394. package/packages/core/src/plugins/stdio.ts +0 -77
  1395. package/packages/core/src/plugins/synapse.ts +0 -137
  1396. package/packages/core/src/plugins/tab-manager.ts +0 -233
  1397. package/packages/core/src/plugins/taskboard.ts +0 -446
  1398. package/packages/core/src/plugins/telemetry-blocker.ts +0 -78
  1399. package/packages/core/src/plugins/test-harness.ts +0 -300
  1400. package/packages/core/src/plugins/theme-studio.ts +0 -170
  1401. package/packages/core/src/plugins/token-guard.ts +0 -224
  1402. package/packages/core/src/plugins/tools.ts +0 -29
  1403. package/packages/core/src/plugins/turn-rewind.ts +0 -400
  1404. package/packages/core/src/plugins/undo-savepoint.ts +0 -385
  1405. package/packages/core/src/plugins/vision-toolkit.ts +0 -510
  1406. package/packages/core/src/plugins/web-research.ts +0 -301
  1407. package/packages/core/src/plugins/workspace-navigator.ts +0 -189
  1408. package/packages/core/src/plugins/workspace-search.ts +0 -177
  1409. package/packages/core/src/plugins/yaml-validator.ts +0 -216
  1410. package/packages/core/src/profile.ts +0 -37
  1411. package/packages/core/src/runtime.ts +0 -52
  1412. package/packages/core/src/services.ts +0 -232
  1413. package/packages/core/src/stdio.ts +0 -355
  1414. package/packages/core/src/workspace-path.ts +0 -79
  1415. package/packages/core/test/agent-teams.test.ts +0 -517
  1416. package/packages/core/test/anchored-standard.test.ts +0 -60
  1417. package/packages/core/test/annotation.test.ts +0 -69
  1418. package/packages/core/test/archify.test.ts +0 -244
  1419. package/packages/core/test/at-file.test.ts +0 -666
  1420. package/packages/core/test/atomic-write.test.ts +0 -52
  1421. package/packages/core/test/auto-mode.test.ts +0 -629
  1422. package/packages/core/test/better-sidebar.test.ts +0 -232
  1423. package/packages/core/test/boot.test.ts +0 -265
  1424. package/packages/core/test/bounded-file.test.ts +0 -55
  1425. package/packages/core/test/browser-fetch-rebinding.test.ts +0 -93
  1426. package/packages/core/test/browser-fetch.test.ts +0 -844
  1427. package/packages/core/test/browser-session.test.ts +0 -1236
  1428. package/packages/core/test/canvas-draw.test.ts +0 -164
  1429. package/packages/core/test/change-verifier.test.ts +0 -200
  1430. package/packages/core/test/cleaner.test.ts +0 -316
  1431. package/packages/core/test/cli-notifier.test.ts +0 -235
  1432. package/packages/core/test/code2skill.test.ts +0 -264
  1433. package/packages/core/test/colleague-skill.test.ts +0 -241
  1434. package/packages/core/test/config.test.ts +0 -147
  1435. package/packages/core/test/context-doctor.test.ts +0 -627
  1436. package/packages/core/test/context-insights.test.ts +0 -396
  1437. package/packages/core/test/cordis-timer.test.ts +0 -147
  1438. package/packages/core/test/cost-meter.test.ts +0 -362
  1439. package/packages/core/test/dependency-checker.test.ts +0 -633
  1440. package/packages/core/test/docker-sandbox.test.ts +0 -170
  1441. package/packages/core/test/fail-logger.test.ts +0 -363
  1442. package/packages/core/test/genui.test.ts +0 -162
  1443. package/packages/core/test/git-time-capsule.test.ts +0 -1476
  1444. package/packages/core/test/graph-memory.test.ts +0 -508
  1445. package/packages/core/test/history-compressor.test.ts +0 -47
  1446. package/packages/core/test/hol-guard.test.ts +0 -61
  1447. package/packages/core/test/http.test.ts +0 -36
  1448. package/packages/core/test/i18n-pair.test.ts +0 -367
  1449. package/packages/core/test/image-compressor.test.ts +0 -59
  1450. package/packages/core/test/llm-verifier.test.ts +0 -76
  1451. package/packages/core/test/mcp-client.test.ts +0 -1037
  1452. package/packages/core/test/mcp-panel.test.ts +0 -91
  1453. package/packages/core/test/memory.test.ts +0 -125
  1454. package/packages/core/test/mirage-bridge.test.ts +0 -58
  1455. package/packages/core/test/mock-server.test.ts +0 -63
  1456. package/packages/core/test/model.test.ts +0 -62
  1457. package/packages/core/test/models.test.ts +0 -85
  1458. package/packages/core/test/modlens.test.ts +0 -615
  1459. package/packages/core/test/module-search.test.ts +0 -98
  1460. package/packages/core/test/obsidian-sync.test.ts +0 -57
  1461. package/packages/core/test/openpets.test.ts +0 -273
  1462. package/packages/core/test/plan-execute.test.ts +0 -86
  1463. package/packages/core/test/plugin-check.test.ts +0 -16
  1464. package/packages/core/test/plugin-dev.test.ts +0 -246
  1465. package/packages/core/test/plugin-finder.test.ts +0 -105
  1466. package/packages/core/test/plugin-radar.test.ts +0 -87
  1467. package/packages/core/test/plugin-stars.test.ts +0 -480
  1468. package/packages/core/test/profile.test.ts +0 -39
  1469. package/packages/core/test/profiles.integration.test.ts +0 -576
  1470. package/packages/core/test/prompt-guard.test.ts +0 -78
  1471. package/packages/core/test/prompt-library.test.ts +0 -56
  1472. package/packages/core/test/readme-gen.test.ts +0 -445
  1473. package/packages/core/test/recall-unread.test.ts +0 -592
  1474. package/packages/core/test/registry.test.ts +0 -64
  1475. package/packages/core/test/resources.test.ts +0 -310
  1476. package/packages/core/test/reverse-skill.test.ts +0 -40
  1477. package/packages/core/test/reviewer-bot.test.ts +0 -55
  1478. package/packages/core/test/runtime-doctor.test.ts +0 -55
  1479. package/packages/core/test/runtime-fixture.ts +0 -55
  1480. package/packages/core/test/runtime.test.ts +0 -313
  1481. package/packages/core/test/secure-audit.test.ts +0 -29
  1482. package/packages/core/test/services.test.ts +0 -4805
  1483. package/packages/core/test/session-bookmarks.test.ts +0 -62
  1484. package/packages/core/test/session-bridge.test.ts +0 -411
  1485. package/packages/core/test/session-compare.test.ts +0 -94
  1486. package/packages/core/test/session-export.test.ts +0 -54
  1487. package/packages/core/test/session-insights.test.ts +0 -486
  1488. package/packages/core/test/session-search.test.ts +0 -30
  1489. package/packages/core/test/session.test.ts +0 -153
  1490. package/packages/core/test/skill-catalog.test.ts +0 -18
  1491. package/packages/core/test/skill-guard.test.ts +0 -280
  1492. package/packages/core/test/sql-lens.test.ts +0 -244
  1493. package/packages/core/test/stdio-args.test.ts +0 -661
  1494. package/packages/core/test/stdio.test.ts +0 -246
  1495. package/packages/core/test/synapse.test.ts +0 -67
  1496. package/packages/core/test/tab-manager.test.ts +0 -58
  1497. package/packages/core/test/taskboard.test.ts +0 -73
  1498. package/packages/core/test/telemetry-blocker.test.ts +0 -61
  1499. package/packages/core/test/test-harness.test.ts +0 -297
  1500. package/packages/core/test/theme-studio.test.ts +0 -39
  1501. package/packages/core/test/token-guard.test.ts +0 -395
  1502. package/packages/core/test/tools.test.ts +0 -118
  1503. package/packages/core/test/turn-rewind.test.ts +0 -549
  1504. package/packages/core/test/undo-savepoint.test.ts +0 -222
  1505. package/packages/core/test/vision-toolkit.test.ts +0 -511
  1506. package/packages/core/test/web-research.test.ts +0 -63
  1507. package/packages/core/test/workspace-git-status.test.ts +0 -54
  1508. package/packages/core/test/workspace-navigator.test.ts +0 -43
  1509. package/packages/core/test/workspace-path.test.ts +0 -34
  1510. package/packages/core/test/workspace-search.test.ts +0 -88
  1511. package/packages/core/test/yaml-validator.test.ts +0 -195
  1512. package/packages/core/tsconfig.build.json +0 -8
  1513. package/packages/core/tsconfig.json +0 -7
@@ -1,1288 +0,0 @@
1
- import { spawn } from "node:child_process";
2
- import z from "@deepseek-ai/schemastery";
3
- import { Type } from "@earendil-works/pi-ai";
4
- import { defineTool } from "@earendil-works/pi-coding-agent";
5
- import packageMetadata from "../../package.json" with { type: "json" };
6
- import { assertKnownConfigKeys } from "../config.js";
7
- export const Config = z.object({
8
- servers: z.array(z.object({ id: z.string(), command: z.array(z.string()), autoStart: z.boolean().default(false) })).default([]),
9
- });
10
- const shellCommands = new Set(["sh", "bash", "zsh", "fish", "cmd", "powershell", "pwsh"]);
11
- const maxCommandArgs = 32;
12
- const maxArgumentBytes = 4096;
13
- const maxToolArgumentsBytes = 64 * 1024;
14
- const maxToolArgumentDepth = 32;
15
- const maxResponseBytes = 1024 * 1024;
16
- const maxInventoryItems = 1000;
17
- const maxPaginationPages = 100;
18
- const maxManagedServers = 128;
19
- const maxStderrBytes = 8192;
20
- const requestTimeoutMs = 30_000;
21
- const maxPanelItems = 20;
22
- const clientVersion = packageMetadata.version;
23
- const disposedMessage = "MCP client plugin disposed";
24
- const connectionParameterNames = new Set(["command", "serverId"]);
25
- const callParameterNames = new Set(["command", "serverId", "name", "arguments"]);
26
- const stopParameterNames = new Set(["serverId"]);
27
- const readResourceParameterNames = new Set(["command", "serverId", "uri"]);
28
- const noParameterNames = new Set();
29
- const utf8Decoder = new TextDecoder("utf-8", { fatal: true });
30
- function decodeFrame(value) {
31
- try {
32
- return utf8Decoder.decode(value);
33
- }
34
- catch (error) {
35
- throw new Error("MCP server response must contain valid UTF-8", { cause: error });
36
- }
37
- }
38
- function inspectParameters(value, allowed) {
39
- if (value === null || typeof value !== "object" || Array.isArray(value))
40
- throw new Error("MCP parameters must be an object");
41
- try {
42
- const prototype = Object.getPrototypeOf(value);
43
- if (prototype !== Object.prototype && prototype !== null)
44
- throw new Error("MCP parameters must be a plain object");
45
- const descriptors = Object.getOwnPropertyDescriptors(value);
46
- if (Reflect.ownKeys(descriptors).some((key) => typeof key !== "string" || !allowed.has(key)))
47
- throw new Error("MCP parameters contain an unknown property");
48
- if (Object.values(descriptors).some((descriptor) => !("value" in descriptor)))
49
- throw new Error("MCP parameters must use data properties");
50
- return Object.fromEntries(Object.entries(descriptors).map(([key, descriptor]) => [key, descriptor.value]));
51
- }
52
- catch (error) {
53
- if (error instanceof Error &&
54
- /^(?:MCP parameters must be a plain object|MCP parameters contain an unknown property|MCP parameters must use data properties)$/u.test(error.message))
55
- throw error;
56
- throw new Error("MCP parameters must be an accessible plain object", { cause: error });
57
- }
58
- }
59
- function optionalString(value, field) {
60
- if (value === undefined)
61
- return undefined;
62
- if (typeof value !== "string")
63
- throw new Error(`MCP ${field} must be a string`);
64
- return value;
65
- }
66
- function requiredString(value, field) {
67
- const result = optionalString(value, field);
68
- if (result === undefined)
69
- throw new Error(`MCP ${field} is required`);
70
- return result;
71
- }
72
- function serverIdValue(value, required = false) {
73
- const result = optionalString(value, "serverId");
74
- if (result === undefined) {
75
- if (required)
76
- throw new Error("MCP serverId is required");
77
- return undefined;
78
- }
79
- if (!/^[a-z0-9][a-z0-9_-]{0,63}$/iu.test(result))
80
- throw new Error("MCP serverId must use 1-64 letters, numbers, _ or -");
81
- return result;
82
- }
83
- function boundedInput(value, field, maximum) {
84
- if (value.includes("\0"))
85
- throw new Error(`MCP ${field} must not contain NUL characters`);
86
- if (value.length === 0 || value.length > maximum)
87
- throw new Error(`MCP ${field} must contain 1-${maximum} characters`);
88
- return value;
89
- }
90
- function rejectAmbiguousTarget(command, serverId) {
91
- if (command !== undefined && serverId !== undefined)
92
- throw new Error("Provide either command or serverId, not both");
93
- }
94
- function optionalCommand(value) {
95
- if (value === undefined)
96
- return undefined;
97
- if (!Array.isArray(value))
98
- throw new Error("MCP command must be an array of strings");
99
- const descriptors = Object.getOwnPropertyDescriptors(value);
100
- const length = descriptors.length?.value;
101
- if (typeof length !== "number" || !Number.isSafeInteger(length) || length < 0)
102
- throw new Error("MCP command must be a dense array of string data properties");
103
- const result = [];
104
- for (let index = 0; index < length; index += 1) {
105
- const descriptor = descriptors[String(index)];
106
- if (descriptor === undefined || !("value" in descriptor) || typeof descriptor.value !== "string")
107
- throw new Error("MCP command must be a dense array of string data properties");
108
- result.push(descriptor.value);
109
- }
110
- if (Reflect.ownKeys(descriptors).some((key) => typeof key !== "string" || (key !== "length" && !/^(0|[1-9]\d*)$/u.test(key))))
111
- throw new Error("MCP command contains an unknown property");
112
- return result;
113
- }
114
- function jsonObject(value) {
115
- if (value === undefined)
116
- return {};
117
- if (value === null || typeof value !== "object" || Array.isArray(value))
118
- throw new Error("MCP arguments must be a JSON object");
119
- const result = cloneJsonValue(value, new Set(), 0);
120
- if (Buffer.byteLength(JSON.stringify(result), "utf8") > maxToolArgumentsBytes)
121
- throw new Error("MCP arguments cannot exceed 64 KiB");
122
- return result;
123
- }
124
- function promptArguments(value) {
125
- const result = jsonObject(value);
126
- if (Object.values(result).some((item) => typeof item !== "string"))
127
- throw new Error("MCP prompt arguments must contain string values");
128
- return result;
129
- }
130
- function cloneJsonValue(value, ancestors, depth) {
131
- if (value === null || typeof value === "string" || typeof value === "boolean")
132
- return value;
133
- if (typeof value === "number") {
134
- if (!Number.isFinite(value))
135
- throw new Error("MCP arguments must contain finite JSON numbers");
136
- return value;
137
- }
138
- if (typeof value !== "object")
139
- throw new Error("MCP arguments must contain only JSON values");
140
- if (depth > maxToolArgumentDepth)
141
- throw new Error(`MCP arguments cannot exceed ${maxToolArgumentDepth} levels of nesting`);
142
- if (ancestors.has(value))
143
- throw new Error("MCP arguments must not contain circular references");
144
- ancestors.add(value);
145
- try {
146
- const descriptors = Object.getOwnPropertyDescriptors(value);
147
- if (Object.values(descriptors).some((descriptor) => !("value" in descriptor)))
148
- throw new Error("MCP arguments must use data properties");
149
- if (Reflect.ownKeys(descriptors).some((key) => typeof key !== "string"))
150
- throw new Error("MCP arguments cannot contain symbol properties");
151
- if (Array.isArray(value)) {
152
- const length = descriptors.length?.value;
153
- if (typeof length !== "number" || !Number.isSafeInteger(length) || length < 0)
154
- throw new Error("MCP argument arrays must be dense");
155
- const result = [];
156
- for (let index = 0; index < length; index += 1) {
157
- const descriptor = descriptors[String(index)];
158
- if (descriptor === undefined || !("value" in descriptor))
159
- throw new Error("MCP argument arrays must be dense");
160
- result.push(cloneJsonValue(descriptor.value, ancestors, depth + 1));
161
- }
162
- if (Object.keys(descriptors).some((key) => key !== "length" && !/^(0|[1-9]\d*)$/u.test(key)))
163
- throw new Error("MCP argument arrays contain an unknown property");
164
- return result;
165
- }
166
- const result = {};
167
- for (const [key, descriptor] of Object.entries(descriptors)) {
168
- if (descriptor.enumerable !== true)
169
- continue;
170
- result[key] = cloneJsonValue(descriptor.value, ancestors, depth + 1);
171
- }
172
- return result;
173
- }
174
- finally {
175
- ancestors.delete(value);
176
- }
177
- }
178
- function executionSignal(signal, lifecycle) {
179
- return signal === undefined ? lifecycle : AbortSignal.any([signal, lifecycle]);
180
- }
181
- function clone(value) {
182
- return structuredClone(value);
183
- }
184
- function appendByteTail(current, chunk, maximum) {
185
- const combined = Buffer.concat([current, chunk]);
186
- return combined.byteLength <= maximum ? combined : combined.subarray(combined.byteLength - maximum);
187
- }
188
- function toolInventory(value) {
189
- if (!Array.isArray(value))
190
- throw new Error("MCP server returned an invalid MCP tools inventory");
191
- if (value.length > maxInventoryItems)
192
- throw new Error(`MCP remote inventory cannot exceed ${maxInventoryItems} items`);
193
- return value.map((item) => {
194
- if (item === null || typeof item !== "object" || Array.isArray(item))
195
- throw new Error("MCP server returned an invalid MCP tool descriptor");
196
- const raw = item;
197
- if (typeof raw.name !== "string" || raw.name.length === 0 || raw.name.length > 512 || raw.name.includes("\0"))
198
- throw new Error("MCP server returned an invalid MCP tool descriptor");
199
- if (raw.description !== undefined && (typeof raw.description !== "string" || raw.description.length > 8192))
200
- throw new Error("MCP server returned an invalid MCP tool descriptor");
201
- if (raw.inputSchema === null || typeof raw.inputSchema !== "object" || Array.isArray(raw.inputSchema))
202
- throw new Error("MCP server returned an invalid MCP tool descriptor");
203
- return {
204
- name: raw.name,
205
- ...(raw.description === undefined ? {} : { description: raw.description }),
206
- inputSchema: clone(raw.inputSchema),
207
- };
208
- });
209
- }
210
- function resourceInventory(value) {
211
- if (!Array.isArray(value))
212
- throw new Error("MCP server returned an invalid MCP resources inventory");
213
- if (value.length > maxInventoryItems)
214
- throw new Error(`MCP remote inventory cannot exceed ${maxInventoryItems} items`);
215
- return value.map((item) => {
216
- if (item === null || typeof item !== "object" || Array.isArray(item))
217
- throw new Error("MCP server returned an invalid MCP resource descriptor");
218
- const raw = item;
219
- if (typeof raw.uri !== "string" || raw.uri.length === 0 || raw.uri.length > 4096 || raw.uri.includes("\0"))
220
- throw new Error("MCP server returned an invalid MCP resource descriptor");
221
- if (typeof raw.name !== "string" || raw.name.length === 0 || raw.name.length > 512 || raw.name.includes("\0"))
222
- throw new Error("MCP server returned an invalid MCP resource descriptor");
223
- if (raw.description !== undefined && (typeof raw.description !== "string" || raw.description.length > 8192))
224
- throw new Error("MCP server returned an invalid MCP resource descriptor");
225
- if (raw.mimeType !== undefined && (typeof raw.mimeType !== "string" || raw.mimeType.length > 256))
226
- throw new Error("MCP server returned an invalid MCP resource descriptor");
227
- return {
228
- uri: raw.uri,
229
- name: raw.name,
230
- ...(raw.description === undefined ? {} : { description: raw.description }),
231
- ...(raw.mimeType === undefined ? {} : { mimeType: raw.mimeType }),
232
- };
233
- });
234
- }
235
- function promptInventory(value) {
236
- if (!Array.isArray(value))
237
- throw new Error("MCP server returned an invalid MCP prompts inventory");
238
- if (value.length > maxInventoryItems)
239
- throw new Error(`MCP remote inventory cannot exceed ${maxInventoryItems} items`);
240
- return value.map((item) => {
241
- if (item === null || typeof item !== "object" || Array.isArray(item))
242
- throw new Error("MCP server returned an invalid MCP prompt descriptor");
243
- const raw = item;
244
- if (typeof raw.name !== "string" || raw.name.length === 0 || raw.name.length > 512 || raw.name.includes("\0"))
245
- throw new Error("MCP server returned an invalid MCP prompt descriptor");
246
- if (raw.description !== undefined && (typeof raw.description !== "string" || raw.description.length > 8192))
247
- throw new Error("MCP server returned an invalid MCP prompt descriptor");
248
- if (raw.arguments !== undefined && !Array.isArray(raw.arguments))
249
- throw new Error("MCP server returned an invalid MCP prompt descriptor");
250
- if (Array.isArray(raw.arguments) && raw.arguments.length > 128)
251
- throw new Error("MCP server returned an invalid MCP prompt descriptor");
252
- const argumentsValue = Array.isArray(raw.arguments)
253
- ? raw.arguments.map((argument) => {
254
- if (argument === null || typeof argument !== "object" || Array.isArray(argument))
255
- throw new Error("MCP server returned an invalid MCP prompt descriptor");
256
- const candidate = argument;
257
- if (typeof candidate.name !== "string" || candidate.name.length === 0 || candidate.name.length > 512)
258
- throw new Error("MCP server returned an invalid MCP prompt descriptor");
259
- if (candidate.description !== undefined && (typeof candidate.description !== "string" || candidate.description.length > 8192))
260
- throw new Error("MCP server returned an invalid MCP prompt descriptor");
261
- if (candidate.required !== undefined && typeof candidate.required !== "boolean")
262
- throw new Error("MCP server returned an invalid MCP prompt descriptor");
263
- return {
264
- name: candidate.name,
265
- ...(candidate.description === undefined ? {} : { description: candidate.description }),
266
- ...(candidate.required === undefined ? {} : { required: candidate.required }),
267
- };
268
- })
269
- : undefined;
270
- return {
271
- name: raw.name,
272
- ...(raw.description === undefined ? {} : { description: raw.description }),
273
- ...(argumentsValue === undefined ? {} : { arguments: argumentsValue }),
274
- };
275
- });
276
- }
277
- function paginationCursor(value) {
278
- if (value === undefined)
279
- return undefined;
280
- if (typeof value !== "string" || value.length === 0 || value.length > 4096 || value.includes("\0"))
281
- throw new Error("MCP server returned an invalid pagination cursor");
282
- return value;
283
- }
284
- async function paginatedInventory(method, field, requestPage, validate) {
285
- const result = [];
286
- const seenCursors = new Set();
287
- let cursor;
288
- for (let page = 0; page < maxPaginationPages; page += 1) {
289
- const response = await requestPage(cursor === undefined ? undefined : { cursor });
290
- const pageItems = validate(response[field]);
291
- if (result.length + pageItems.length > maxInventoryItems)
292
- throw new Error(`MCP remote inventory cannot exceed ${maxInventoryItems} items`);
293
- result.push(...pageItems);
294
- const nextCursor = paginationCursor(response.nextCursor);
295
- if (nextCursor === undefined)
296
- return result;
297
- if (seenCursors.has(nextCursor))
298
- throw new Error(`MCP server repeated a pagination cursor for ${method}`);
299
- seenCursors.add(nextCursor);
300
- cursor = nextCursor;
301
- }
302
- throw new Error(`MCP ${method} pagination cannot exceed ${maxPaginationPages} pages`);
303
- }
304
- function requiredRemoteString(value, message, maximum = maxResponseBytes) {
305
- if (typeof value !== "string" || value.length > maximum || value.includes("\0"))
306
- throw new Error(message);
307
- return value;
308
- }
309
- function base64RemoteString(value, message) {
310
- const result = requiredRemoteString(value, message);
311
- if (!/^(?:[A-Za-z\d+/]{4})*(?:[A-Za-z\d+/]{2}(?:==)?|[A-Za-z\d+/]{3}=?)?$/u.test(result))
312
- throw new Error(message);
313
- return result;
314
- }
315
- function toolResultContent(result) {
316
- if (!Array.isArray(result.content) || result.content.length > maxInventoryItems)
317
- throw new Error("MCP server returned invalid MCP tool result content");
318
- if (result.isError !== undefined && typeof result.isError !== "boolean")
319
- throw new Error("MCP server returned invalid MCP tool result content");
320
- return result.content.map((item) => {
321
- if (item === null || typeof item !== "object" || Array.isArray(item))
322
- throw new Error("MCP server returned invalid MCP tool result content");
323
- const raw = item;
324
- if (raw.type === "text") {
325
- return { type: "text", text: requiredRemoteString(raw.text, "MCP server returned invalid MCP tool result content") };
326
- }
327
- if (raw.type === "image") {
328
- const data = base64RemoteString(raw.data, "MCP server returned invalid MCP tool result content");
329
- const mimeType = requiredRemoteString(raw.mimeType, "MCP server returned invalid MCP tool result content", 256);
330
- if (!mimeType.startsWith("image/"))
331
- throw new Error("MCP server returned invalid MCP tool result content");
332
- return { type: "image", data, mimeType };
333
- }
334
- if (raw.type === "audio") {
335
- const mimeType = requiredRemoteString(raw.mimeType, "MCP server returned invalid MCP tool result content", 256);
336
- base64RemoteString(raw.data, "MCP server returned invalid MCP tool result content");
337
- return { type: "text", text: `[MCP audio content omitted: ${mimeType}]` };
338
- }
339
- if (raw.type === "resource") {
340
- if (raw.resource === null || typeof raw.resource !== "object" || Array.isArray(raw.resource))
341
- throw new Error("MCP server returned invalid MCP tool result content");
342
- const resource = raw.resource;
343
- const uri = requiredRemoteString(resource.uri, "MCP server returned invalid MCP tool result content", 4096);
344
- if (typeof resource.text === "string")
345
- return { type: "text", text: resource.text };
346
- if (typeof resource.blob === "string") {
347
- const blob = base64RemoteString(resource.blob, "MCP server returned invalid MCP tool result content");
348
- const mimeType = resource.mimeType === undefined ? undefined : requiredRemoteString(resource.mimeType, "MCP server returned invalid MCP tool result content", 256);
349
- return mimeType?.startsWith("image/") === true
350
- ? { type: "image", data: blob, mimeType }
351
- : { type: "text", text: `[MCP binary resource omitted: ${uri} (${mimeType ?? "unknown MIME type"})]` };
352
- }
353
- throw new Error("MCP server returned invalid MCP tool result content");
354
- }
355
- if (raw.type === "resource_link") {
356
- const uri = requiredRemoteString(raw.uri, "MCP server returned invalid MCP tool result content", 4096);
357
- const name = raw.name === undefined ? uri : requiredRemoteString(raw.name, "MCP server returned invalid MCP tool result content", 512);
358
- return { type: "text", text: `[MCP resource: ${name} — ${uri}]` };
359
- }
360
- throw new Error("MCP server returned invalid MCP tool result content");
361
- });
362
- }
363
- function validateInitializeResult(result) {
364
- if (result.protocolVersion !== "2025-06-18" ||
365
- result.capabilities === null ||
366
- typeof result.capabilities !== "object" ||
367
- Array.isArray(result.capabilities) ||
368
- result.serverInfo === null ||
369
- typeof result.serverInfo !== "object" ||
370
- Array.isArray(result.serverInfo))
371
- throw new Error("MCP server returned an invalid MCP initialize result");
372
- const serverInfo = result.serverInfo;
373
- if (typeof serverInfo.name !== "string" ||
374
- serverInfo.name.length === 0 ||
375
- serverInfo.name.length > 512 ||
376
- typeof serverInfo.version !== "string" ||
377
- serverInfo.version.length === 0 ||
378
- serverInfo.version.length > 512 ||
379
- (result.instructions !== undefined && (typeof result.instructions !== "string" || result.instructions.length > 65_536)))
380
- throw new Error("MCP server returned an invalid MCP initialize result");
381
- }
382
- function resourceResultContent(result) {
383
- if (!Array.isArray(result.contents) || result.contents.length > maxInventoryItems)
384
- throw new Error("MCP server returned invalid MCP resource contents");
385
- return result.contents.map((item) => {
386
- if (item === null || typeof item !== "object" || Array.isArray(item))
387
- throw new Error("MCP server returned invalid MCP resource contents");
388
- const raw = item;
389
- const uri = requiredRemoteString(raw.uri, "MCP server returned invalid MCP resource contents", 4096);
390
- if (typeof raw.text === "string")
391
- return { type: "text", text: raw.text };
392
- if (typeof raw.blob === "string") {
393
- const blob = base64RemoteString(raw.blob, "MCP server returned invalid MCP resource contents");
394
- const mimeType = raw.mimeType === undefined ? undefined : requiredRemoteString(raw.mimeType, "MCP server returned invalid MCP resource contents", 256);
395
- return mimeType?.startsWith("image/") === true
396
- ? { type: "image", data: blob, mimeType }
397
- : { type: "text", text: `[MCP binary resource omitted: ${uri} (${mimeType ?? "unknown MIME type"})]` };
398
- }
399
- throw new Error("MCP server returned invalid MCP resource contents");
400
- });
401
- }
402
- function promptResultContent(result) {
403
- if (result.description !== undefined && (typeof result.description !== "string" || result.description.length > 8192))
404
- throw new Error("MCP server returned invalid MCP prompt messages");
405
- if (!Array.isArray(result.messages) || result.messages.length > maxInventoryItems)
406
- throw new Error("MCP server returned invalid MCP prompt messages");
407
- return result.messages.flatMap((item) => {
408
- if (item === null || typeof item !== "object" || Array.isArray(item))
409
- throw new Error("MCP server returned invalid MCP prompt messages");
410
- const raw = item;
411
- const role = raw.role;
412
- if (role !== "user" && role !== "assistant")
413
- throw new Error("MCP server returned invalid MCP prompt messages");
414
- const normalized = toolResultContent({ content: [raw.content] });
415
- return normalized.flatMap((content) => content.type === "text" ? [{ type: "text", text: `[${role}]\n${content.text}` }] : [{ type: "text", text: `[${role}]` }, content]);
416
- });
417
- }
418
- function validateCommand(command) {
419
- if (command.length === 0)
420
- throw new Error("MCP server command cannot be empty");
421
- if (command.length > maxCommandArgs)
422
- throw new Error(`MCP server command cannot exceed ${maxCommandArgs} arguments`);
423
- if (command.some((part) => part.includes("\0")))
424
- throw new Error("MCP server command arguments must not contain NUL characters");
425
- if (command.some((part) => part.length === 0 || Buffer.byteLength(part) > maxArgumentBytes))
426
- throw new Error("MCP server command contains an invalid argument");
427
- const executable = executableName(command)
428
- .toLowerCase()
429
- .replace(/\.(?:exe|cmd|bat|com)$/u, "");
430
- if (shellCommands.has(executable))
431
- throw new Error("MCP shell wrappers are not allowed; pass an executable argv directly");
432
- }
433
- function executableName(command) {
434
- return (command[0] ?? "").replaceAll("\\", "/").split("/").pop() ?? "";
435
- }
436
- function serverLabel(command) {
437
- const count = Math.max(0, command.length - 1);
438
- return `${executableName(command)}${count === 0 ? "" : ` (+${count} ${count === 1 ? "arg" : "args"})`}`;
439
- }
440
- function encodeMessage(message) {
441
- return Buffer.from(`${JSON.stringify(message)}\n`, "utf8");
442
- }
443
- function waitForChildClose(child, timeoutMs) {
444
- if (child.exitCode !== null || child.signalCode !== null)
445
- return Promise.resolve(true);
446
- return new Promise((resolve) => {
447
- const onClose = () => finish(true);
448
- const timer = setTimeout(() => finish(false), timeoutMs);
449
- timer.unref();
450
- const finish = (closed) => {
451
- clearTimeout(timer);
452
- child.off("close", onClose);
453
- resolve(closed);
454
- };
455
- child.once("close", onClose);
456
- });
457
- }
458
- async function terminateChild(child) {
459
- if (!child.stdin.destroyed && !child.stdin.writableEnded)
460
- child.stdin.end();
461
- if (child.exitCode !== null || child.signalCode !== null)
462
- return;
463
- child.kill("SIGTERM");
464
- if (await waitForChildClose(child, 250))
465
- return;
466
- child.kill("SIGKILL");
467
- await waitForChildClose(child, 500);
468
- }
469
- function parseFrames(buffer) {
470
- const messages = [];
471
- let rest = buffer;
472
- while (rest.length > 0) {
473
- const separator = rest.indexOf("\r\n\r\n");
474
- if (separator < 0 && /^content-length\s*:/i.test(rest.toString("ascii")))
475
- break;
476
- if (separator >= 0 && /^content-length\s*:/i.test(rest.subarray(0, separator).toString("ascii"))) {
477
- const header = rest.subarray(0, separator).toString("ascii");
478
- const match = header.match(/content-length\s*:\s*(\d+)/i);
479
- if (match === null)
480
- throw new Error("MCP server returned an invalid Content-Length header");
481
- const length = Number(match[1]);
482
- if (!Number.isSafeInteger(length) || length > maxResponseBytes)
483
- throw new Error("MCP server response exceeded the 1 MiB limit");
484
- const bodyStart = separator + 4;
485
- if (rest.length < bodyStart + length)
486
- break;
487
- const body = decodeFrame(rest.subarray(bodyStart, bodyStart + length));
488
- const message = JSON.parse(body);
489
- if (typeof message === "object" && message !== null)
490
- messages.push(message);
491
- rest = rest.subarray(bodyStart + length);
492
- continue;
493
- }
494
- const newline = rest.indexOf(10);
495
- if (newline < 0)
496
- break;
497
- const line = decodeFrame(rest.subarray(0, newline)).trim();
498
- rest = rest.subarray(newline + 1);
499
- if (line === "")
500
- continue;
501
- try {
502
- const message = JSON.parse(line);
503
- if (typeof message === "object" && message !== null)
504
- messages.push(message);
505
- }
506
- catch {
507
- continue;
508
- }
509
- }
510
- return { messages, rest };
511
- }
512
- function cancellationError(method, reason) {
513
- if (reason instanceof Error && reason.message === disposedMessage)
514
- return reason;
515
- return new Error(`MCP request was cancelled: ${method}${reason instanceof Error ? ` (${reason.message})` : ""}`, { cause: reason });
516
- }
517
- function withCancellation(operation, signal, method) {
518
- if (signal === undefined)
519
- return operation;
520
- if (signal.aborted)
521
- return Promise.reject(cancellationError(method, signal.reason));
522
- return new Promise((resolve, reject) => {
523
- const onAbort = () => {
524
- signal.removeEventListener("abort", onAbort);
525
- reject(cancellationError(method, signal.reason));
526
- };
527
- signal.addEventListener("abort", onAbort, { once: true });
528
- void operation.then((value) => {
529
- signal.removeEventListener("abort", onAbort);
530
- resolve(value);
531
- }, (error) => {
532
- signal.removeEventListener("abort", onAbort);
533
- reject(error instanceof Error ? error : new Error("MCP operation failed", { cause: error }));
534
- });
535
- });
536
- }
537
- const stdioRouters = new WeakMap();
538
- function responseResult(message) {
539
- const hasError = Object.hasOwn(message, "error");
540
- const hasResult = Object.hasOwn(message, "result");
541
- if (message.jsonrpc !== "2.0" || hasError === hasResult)
542
- throw new Error("MCP server returned an invalid JSON-RPC response");
543
- if (hasError) {
544
- if (typeof message.error !== "object" || message.error === null || Array.isArray(message.error))
545
- throw new Error("MCP server returned an invalid JSON-RPC response");
546
- const errorMessage = message.error.message;
547
- const errorCode = message.error.code;
548
- if (typeof errorMessage !== "string" || typeof errorCode !== "number" || !Number.isInteger(errorCode))
549
- throw new Error("MCP server returned an invalid JSON-RPC response");
550
- throw new Error(errorMessage);
551
- }
552
- if (typeof message.result !== "object" || message.result === null || Array.isArray(message.result))
553
- throw new Error("MCP server returned an invalid response");
554
- return message.result;
555
- }
556
- function stdioRouter(child) {
557
- const existing = stdioRouters.get(child);
558
- if (existing !== undefined)
559
- return existing;
560
- const router = { buffer: Buffer.alloc(0), pending: new Map() };
561
- const fail = (error) => {
562
- if (router.terminalError !== undefined)
563
- return;
564
- router.terminalError = error;
565
- router.buffer = Buffer.alloc(0);
566
- child.stdout.off("data", onData);
567
- child.off("error", onError);
568
- child.off("close", onClose);
569
- for (const request of [...router.pending.values()])
570
- request.reject(error);
571
- };
572
- const onData = (chunk) => {
573
- for (const request of [...router.pending.values()]) {
574
- request.receivedBytes += chunk.byteLength;
575
- if (request.receivedBytes > maxResponseBytes)
576
- request.reject(new Error("MCP server response exceeded the 1 MiB limit"));
577
- }
578
- if (router.buffer.byteLength + chunk.byteLength > maxResponseBytes) {
579
- fail(new Error("MCP server response exceeded the 1 MiB limit"));
580
- return;
581
- }
582
- const buffer = router.buffer.byteLength === 0 ? chunk : Buffer.concat([router.buffer, chunk]);
583
- let parsed;
584
- try {
585
- parsed = parseFrames(buffer);
586
- }
587
- catch (error) {
588
- fail(error instanceof Error ? error : new Error("Failed to parse MCP response", { cause: error }));
589
- return;
590
- }
591
- router.buffer = parsed.rest.byteLength === 0 ? Buffer.alloc(0) : Buffer.from(parsed.rest);
592
- for (const message of parsed.messages) {
593
- if (typeof message.id !== "number")
594
- continue;
595
- const request = router.pending.get(message.id);
596
- if (request === undefined)
597
- continue;
598
- try {
599
- request.resolve(responseResult(message));
600
- }
601
- catch (error) {
602
- request.reject(error instanceof Error ? error : new Error("Failed to validate MCP response", { cause: error }));
603
- }
604
- }
605
- };
606
- const onError = (error) => fail(error);
607
- const onClose = (code) => fail(new Error(`MCP server exited before responding${code === null ? "" : ` (code ${code})`}`));
608
- child.stdout.on("data", onData);
609
- child.once("error", onError);
610
- child.once("close", onClose);
611
- stdioRouters.set(child, router);
612
- return router;
613
- }
614
- async function request(child, id, method, params, signal) {
615
- if (signal?.aborted === true)
616
- throw cancellationError(method, signal.reason);
617
- return new Promise((resolve, reject) => {
618
- const router = stdioRouter(child);
619
- if (router.terminalError !== undefined) {
620
- reject(router.terminalError);
621
- return;
622
- }
623
- if (router.pending.has(id)) {
624
- reject(new Error(`MCP request id is already pending: ${id}`));
625
- return;
626
- }
627
- let settled = false;
628
- let sent = false;
629
- const sendCancellation = (reason) => {
630
- if (!sent || method === "initialize" || child.stdin.destroyed || child.stdin.writableEnded)
631
- return;
632
- try {
633
- child.stdin.write(encodeMessage({ jsonrpc: "2.0", method: "notifications/cancelled", params: { requestId: id, reason } }), () => undefined);
634
- }
635
- catch {
636
- // The original timeout or cancellation remains the actionable error.
637
- }
638
- };
639
- const timer = setTimeout(() => {
640
- sendCancellation(`MCP request timed out: ${method}`);
641
- rejectRequest(new Error(`MCP request timed out: ${method}`));
642
- }, requestTimeoutMs);
643
- timer.unref();
644
- const onAbort = () => {
645
- sendCancellation(signal?.reason instanceof Error ? signal.reason.message : "MCP client request cancelled");
646
- rejectRequest(cancellationError(method, signal?.reason));
647
- };
648
- const cleanup = () => {
649
- clearTimeout(timer);
650
- router.pending.delete(id);
651
- signal?.removeEventListener("abort", onAbort);
652
- };
653
- const resolveRequest = (value) => {
654
- if (settled)
655
- return;
656
- settled = true;
657
- cleanup();
658
- resolve(value);
659
- };
660
- const rejectRequest = (error) => {
661
- if (settled)
662
- return;
663
- settled = true;
664
- cleanup();
665
- reject(error);
666
- };
667
- router.pending.set(id, { receivedBytes: 0, resolve: resolveRequest, reject: rejectRequest });
668
- signal?.addEventListener("abort", onAbort, { once: true });
669
- try {
670
- child.stdin.write(encodeMessage({ jsonrpc: "2.0", id, method, ...(params === undefined ? {} : { params }) }), (error) => {
671
- if (error === null || error === undefined)
672
- return;
673
- rejectRequest(error);
674
- });
675
- sent = true;
676
- }
677
- catch (error) {
678
- rejectRequest(error instanceof Error ? error : new Error("Failed to write MCP request", { cause: error }));
679
- }
680
- });
681
- }
682
- async function withServer(command, cwd, callback, signal) {
683
- validateCommand(command);
684
- if (signal?.aborted === true)
685
- throw cancellationError("initialize", signal.reason);
686
- const child = spawn(command[0], command.slice(1), { cwd, shell: false, stdio: ["pipe", "pipe", "pipe"] });
687
- let stderr = Buffer.alloc(0);
688
- child.stderr.on("data", (chunk) => {
689
- stderr = appendByteTail(stderr, chunk, maxStderrBytes);
690
- });
691
- try {
692
- const initializeResult = await request(child, 1, "initialize", { protocolVersion: "2025-06-18", capabilities: {}, clientInfo: { name: "pi-harness", version: clientVersion } }, signal);
693
- validateInitializeResult(initializeResult);
694
- child.stdin.write(encodeMessage({ jsonrpc: "2.0", method: "notifications/initialized" }));
695
- return await callback(child);
696
- }
697
- catch (error) {
698
- if (error instanceof Error && error.message === disposedMessage)
699
- throw error;
700
- const stderrText = stderr.toString("utf8").trim();
701
- if (error instanceof Error && stderrText !== "")
702
- throw new Error(`${error.message}: ${stderrText}`, { cause: error });
703
- throw error;
704
- }
705
- finally {
706
- await terminateChild(child);
707
- }
708
- }
709
- export default {
710
- name: "pi-mcp-client",
711
- inject: ["piHarnessLaunch", "piPluginUi", "piTools"],
712
- Config,
713
- async apply(context, config) {
714
- assertKnownConfigKeys("pi-mcp-client", config, ["servers"]);
715
- const lifecycle = new AbortController();
716
- let latest;
717
- let latestKey;
718
- const previousFor = (key) => (latestKey === key ? latest : undefined);
719
- const publishLatest = (key, value) => {
720
- latestKey = key;
721
- latest = clone(value);
722
- return clone(value);
723
- };
724
- const servers = new Map();
725
- const startingServers = new Set();
726
- const unregisters = [];
727
- const registerTool = (definition) => {
728
- try {
729
- const unregister = context.piTools.register(definition);
730
- unregisters.push(unregister);
731
- return unregister;
732
- }
733
- catch (error) {
734
- for (const unregister of unregisters.splice(0).reverse())
735
- unregister();
736
- lifecycle.abort(new Error("MCP client plugin activation failed", { cause: error }));
737
- throw error;
738
- }
739
- };
740
- const configured = new Map();
741
- const definitions = config.servers ?? [];
742
- if (definitions.length > maxManagedServers)
743
- throw new Error(`MCP configured inventory cannot exceed ${maxManagedServers} servers`);
744
- for (const definition of definitions) {
745
- const id = serverIdValue(definition.id, true);
746
- if (configured.has(id))
747
- throw new Error(`Configured MCP server id is duplicated: ${id}`);
748
- validateCommand(definition.command);
749
- configured.set(id, { id, command: [...definition.command], autoStart: definition.autoStart === true });
750
- }
751
- let nextServerId = 1;
752
- const startServer = async (command, requestedId, signal) => {
753
- validateCommand(command);
754
- let id = requestedId;
755
- if (id === undefined) {
756
- do
757
- id = `mcp-${nextServerId++}`;
758
- while (configured.has(id) || servers.has(id) || startingServers.has(id));
759
- }
760
- if (servers.has(id))
761
- throw new Error(`MCP server is already running: ${id}`);
762
- if (startingServers.has(id))
763
- throw new Error(`MCP server is already starting: ${id}`);
764
- if (servers.size + startingServers.size >= maxManagedServers)
765
- throw new Error(`MCP client cannot manage more than ${maxManagedServers} running servers`);
766
- startingServers.add(id);
767
- let child;
768
- try {
769
- child = spawn(command[0], command.slice(1), { cwd: context.piHarnessLaunch.cwd, shell: false, stdio: ["pipe", "pipe", "pipe"] });
770
- }
771
- catch (error) {
772
- startingServers.delete(id);
773
- throw error;
774
- }
775
- let stderr = Buffer.alloc(0);
776
- child.stderr.on("data", (chunk) => {
777
- stderr = appendByteTail(stderr, chunk, maxStderrBytes);
778
- });
779
- const server = {
780
- id,
781
- command: [...command],
782
- child,
783
- status: "running",
784
- nextRequestId: 2,
785
- queue: Promise.resolve(),
786
- startedAt: Date.now(),
787
- lifecycle: new AbortController(),
788
- };
789
- child.once("close", () => {
790
- server.status = "stopping";
791
- server.lifecycle.abort(new Error(`MCP server exited: ${server.id}`));
792
- servers.delete(server.id);
793
- });
794
- try {
795
- const initializeResult = await request(child, 1, "initialize", { protocolVersion: "2025-06-18", capabilities: {}, clientInfo: { name: "pi-harness", version: clientVersion } }, signal);
796
- validateInitializeResult(initializeResult);
797
- if (child.exitCode !== null || child.signalCode !== null)
798
- throw new Error(`MCP server exited during initialization: ${id}`);
799
- servers.set(server.id, server);
800
- child.stdin.write(encodeMessage({ jsonrpc: "2.0", method: "notifications/initialized" }));
801
- return server;
802
- }
803
- catch (error) {
804
- servers.delete(server.id);
805
- await terminateChild(child);
806
- if (error instanceof Error && error.message === disposedMessage)
807
- throw error;
808
- const stderrText = stderr.toString("utf8").trim();
809
- if (error instanceof Error && stderrText !== "")
810
- throw new Error(`${error.message}: ${stderrText}`, { cause: error });
811
- throw error;
812
- }
813
- finally {
814
- startingServers.delete(id);
815
- }
816
- };
817
- const stopServer = (serverId, signal) => {
818
- const server = servers.get(serverId);
819
- if (server === undefined)
820
- throw new Error(`MCP server is not running: ${serverId}`);
821
- server.status = "stopping";
822
- server.lifecycle.abort(new Error(`MCP server stopped: ${server.id}`));
823
- const operation = (async () => {
824
- await server.queue;
825
- servers.delete(server.id);
826
- await terminateChild(server.child);
827
- return true;
828
- })();
829
- return withCancellation(operation, signal, "server/stop");
830
- };
831
- const requestManaged = (server, method, params, signal) => {
832
- if (server.status !== "running")
833
- throw new Error(`MCP server is not running: ${server.id}`);
834
- const requestSignal = signal === undefined ? server.lifecycle.signal : AbortSignal.any([signal, server.lifecycle.signal]);
835
- const task = server.queue.then(() => request(server.child, server.nextRequestId++, method, params, requestSignal));
836
- server.queue = task.then(() => undefined, () => undefined);
837
- return withCancellation(task, requestSignal, method);
838
- };
839
- const getServer = (serverId) => {
840
- const server = servers.get(serverId);
841
- if (server === undefined)
842
- throw new Error(`MCP server is not running: ${serverId}`);
843
- return server;
844
- };
845
- const configuredCommand = (serverId) => {
846
- const definition = configured.get(serverId);
847
- if (definition === undefined)
848
- throw new Error(`Configured MCP server is not found: ${serverId}`);
849
- return [...definition.command];
850
- };
851
- const statusSnapshot = () => {
852
- const running = [...servers.values()].map((server) => ({
853
- id: server.id,
854
- executable: executableName(server.command),
855
- argumentCount: Math.max(0, server.command.length - 1),
856
- status: server.status,
857
- startedAt: server.startedAt,
858
- }));
859
- const active = new Set(running.map((server) => server.id));
860
- return [
861
- ...running,
862
- ...[...configured.values()]
863
- .filter((definition) => !active.has(definition.id))
864
- .map((definition) => ({
865
- id: definition.id,
866
- executable: executableName(definition.command),
867
- argumentCount: Math.max(0, definition.command.length - 1),
868
- status: "stopped",
869
- startedAt: 0,
870
- })),
871
- ];
872
- };
873
- const list = async (command, serverId, signal) => {
874
- rejectAmbiguousTarget(command, serverId);
875
- if (serverId !== undefined) {
876
- const managed = getServer(serverId);
877
- const tools = await paginatedInventory("tools/list", "tools", (params) => requestManaged(managed, "tools/list", params, signal), toolInventory);
878
- const key = `managed:${managed.id}`;
879
- const server = serverLabel(managed.command);
880
- const previous = previousFor(key);
881
- const next = { server, tools, resources: previous?.resources ?? [], prompts: previous?.prompts ?? [] };
882
- return publishLatest(key, next);
883
- }
884
- if (command === undefined)
885
- throw new Error("Provide command or serverId to list MCP tools");
886
- return withServer(command, context.piHarnessLaunch.cwd, async (child) => {
887
- let requestId = 2;
888
- const tools = await paginatedInventory("tools/list", "tools", (params) => request(child, requestId++, "tools/list", params, signal), toolInventory);
889
- const key = `command:${JSON.stringify(command)}`;
890
- const server = serverLabel(command);
891
- const previous = previousFor(key);
892
- const next = { server, tools, resources: previous?.resources ?? [], prompts: previous?.prompts ?? [] };
893
- return publishLatest(key, next);
894
- }, signal);
895
- };
896
- const call = async (command, serverId, name, args, signal) => {
897
- rejectAmbiguousTarget(command, serverId);
898
- boundedInput(name, "tool name", 512);
899
- if (serverId !== undefined) {
900
- const managed = getServer(serverId);
901
- const result = (await requestManaged(managed, "tools/call", { name, arguments: args }, signal));
902
- toolResultContent(result);
903
- const key = `managed:${managed.id}`;
904
- const server = serverLabel(managed.command);
905
- const previous = previousFor(key);
906
- publishLatest(key, {
907
- server,
908
- tools: previous?.tools ?? [],
909
- resources: previous?.resources ?? [],
910
- prompts: previous?.prompts ?? [],
911
- lastCall: name,
912
- });
913
- return result;
914
- }
915
- if (command === undefined)
916
- throw new Error("Provide command or serverId to call an MCP tool");
917
- return withServer(command, context.piHarnessLaunch.cwd, async (child) => {
918
- const result = (await request(child, 2, "tools/call", { name, arguments: args }, signal));
919
- toolResultContent(result);
920
- const key = `command:${JSON.stringify(command)}`;
921
- const server = serverLabel(command);
922
- const previous = previousFor(key);
923
- publishLatest(key, {
924
- server,
925
- tools: previous?.tools ?? [],
926
- resources: previous?.resources ?? [],
927
- prompts: previous?.prompts ?? [],
928
- lastCall: name,
929
- });
930
- return result;
931
- }, signal);
932
- };
933
- const requestOneShot = async (command, method, params, signal) => withServer(command, context.piHarnessLaunch.cwd, async (child) => request(child, 2, method, params, signal), signal);
934
- const requireCommand = (command, message) => {
935
- if (command === undefined)
936
- throw new Error(message);
937
- return command;
938
- };
939
- const resources = async (command, serverId, signal) => {
940
- rejectAmbiguousTarget(command, serverId);
941
- let items;
942
- let selectedCommand;
943
- if (serverId === undefined) {
944
- selectedCommand = requireCommand(command, "Provide command or serverId to list MCP resources");
945
- items = await withServer(selectedCommand, context.piHarnessLaunch.cwd, async (child) => {
946
- let requestId = 2;
947
- return paginatedInventory("resources/list", "resources", (params) => request(child, requestId++, "resources/list", params, signal), resourceInventory);
948
- }, signal);
949
- }
950
- else {
951
- const managed = getServer(serverId);
952
- selectedCommand = managed.command;
953
- items = await paginatedInventory("resources/list", "resources", (params) => requestManaged(managed, "resources/list", params, signal), resourceInventory);
954
- }
955
- const key = serverId === undefined ? `command:${JSON.stringify(selectedCommand)}` : `managed:${serverId}`;
956
- const server = serverLabel(selectedCommand);
957
- const previous = previousFor(key);
958
- const next = {
959
- server,
960
- tools: previous?.tools ?? [],
961
- resources: items,
962
- prompts: previous?.prompts ?? [],
963
- };
964
- publishLatest(key, next);
965
- return clone(items);
966
- };
967
- const readResource = async (command, serverId, uri, signal) => {
968
- rejectAmbiguousTarget(command, serverId);
969
- boundedInput(uri, "resource URI", 4096);
970
- return serverId === undefined
971
- ? requestOneShot(requireCommand(command, "Provide command or serverId to read an MCP resource"), "resources/read", { uri }, signal)
972
- : requestManaged(getServer(serverId), "resources/read", { uri }, signal);
973
- };
974
- const prompts = async (command, serverId, signal) => {
975
- rejectAmbiguousTarget(command, serverId);
976
- let items;
977
- let selectedCommand;
978
- if (serverId === undefined) {
979
- selectedCommand = requireCommand(command, "Provide command or serverId to list MCP prompts");
980
- items = await withServer(selectedCommand, context.piHarnessLaunch.cwd, async (child) => {
981
- let requestId = 2;
982
- return paginatedInventory("prompts/list", "prompts", (params) => request(child, requestId++, "prompts/list", params, signal), promptInventory);
983
- }, signal);
984
- }
985
- else {
986
- const managed = getServer(serverId);
987
- selectedCommand = managed.command;
988
- items = await paginatedInventory("prompts/list", "prompts", (params) => requestManaged(managed, "prompts/list", params, signal), promptInventory);
989
- }
990
- const key = serverId === undefined ? `command:${JSON.stringify(selectedCommand)}` : `managed:${serverId}`;
991
- const server = serverLabel(selectedCommand);
992
- const previous = previousFor(key);
993
- const next = {
994
- server,
995
- tools: previous?.tools ?? [],
996
- resources: previous?.resources ?? [],
997
- prompts: items,
998
- };
999
- publishLatest(key, next);
1000
- return clone(items);
1001
- };
1002
- const getPrompt = async (command, serverId, name, args, signal) => {
1003
- rejectAmbiguousTarget(command, serverId);
1004
- boundedInput(name, "prompt name", 512);
1005
- return serverId === undefined
1006
- ? requestOneShot(requireCommand(command, "Provide command or serverId to get an MCP prompt"), "prompts/get", { name, arguments: args }, signal)
1007
- : requestManaged(getServer(serverId), "prompts/get", { name, arguments: args }, signal);
1008
- };
1009
- const unregisterList = registerTool(defineTool({
1010
- name: "mcp_list_tools",
1011
- label: "MCP list tools",
1012
- description: "Start an MCP stdio server and list its available tools.",
1013
- promptSnippet: "discover tools exposed by an MCP stdio server",
1014
- parameters: Type.Object({
1015
- command: Type.Optional(Type.Array(Type.String(), { description: "MCP server executable and arguments; shell wrappers are rejected" })),
1016
- serverId: Type.Optional(Type.String({ description: "A configured or running MCP server id" })),
1017
- }, { additionalProperties: false }),
1018
- executionMode: "sequential",
1019
- async execute(_toolCallId, params, signal) {
1020
- const operationSignal = executionSignal(signal, lifecycle.signal);
1021
- operationSignal.throwIfAborted();
1022
- const raw = inspectParameters(params, connectionParameterNames);
1023
- const result = await list(optionalCommand(raw.command), serverIdValue(raw.serverId), operationSignal);
1024
- return {
1025
- content: [
1026
- { type: "text", text: result.tools.map((tool) => `${tool.name}: ${tool.description ?? ""}`).join("\n") || "MCP server returned no tools." },
1027
- ],
1028
- details: result,
1029
- };
1030
- },
1031
- }));
1032
- const unregisterCall = registerTool(defineTool({
1033
- name: "mcp_call",
1034
- label: "MCP call tool",
1035
- description: "Call a named tool on an MCP stdio server with a JSON object of arguments.",
1036
- promptSnippet: "call a tool exposed by an MCP stdio server",
1037
- parameters: Type.Object({
1038
- command: Type.Optional(Type.Array(Type.String())),
1039
- serverId: Type.Optional(Type.String()),
1040
- name: Type.String(),
1041
- arguments: Type.Optional(Type.Record(Type.String(), Type.Any())),
1042
- }, { additionalProperties: false }),
1043
- executionMode: "sequential",
1044
- async execute(_toolCallId, params, signal) {
1045
- const operationSignal = executionSignal(signal, lifecycle.signal);
1046
- operationSignal.throwIfAborted();
1047
- const raw = inspectParameters(params, callParameterNames);
1048
- const result = await call(optionalCommand(raw.command), serverIdValue(raw.serverId), requiredString(raw.name, "tool name"), jsonObject(raw.arguments), operationSignal);
1049
- return { content: toolResultContent(result), details: clone(result) };
1050
- },
1051
- }));
1052
- const unregisterStart = registerTool(defineTool({
1053
- name: "mcp_server_start",
1054
- label: "MCP server start",
1055
- description: "Start and initialize a persistent MCP stdio server managed by Pi Harness.",
1056
- promptSnippet: "start a persistent MCP stdio server",
1057
- parameters: Type.Object({
1058
- command: Type.Optional(Type.Array(Type.String(), { description: "MCP server executable and arguments; shell wrappers are rejected" })),
1059
- serverId: Type.Optional(Type.String({ description: "Configured server id or a running server id" })),
1060
- }, { additionalProperties: false }),
1061
- executionMode: "sequential",
1062
- async execute(_toolCallId, params, signal) {
1063
- const operationSignal = executionSignal(signal, lifecycle.signal);
1064
- operationSignal.throwIfAborted();
1065
- const raw = inspectParameters(params, connectionParameterNames);
1066
- const serverId = serverIdValue(raw.serverId);
1067
- const command = optionalCommand(raw.command) ?? (serverId === undefined ? undefined : configuredCommand(serverId));
1068
- if (command === undefined)
1069
- throw new Error("Provide command or configured serverId to start an MCP server");
1070
- const server = await startServer(command, serverId, operationSignal);
1071
- return {
1072
- content: [{ type: "text", text: `MCP server ${server.id} is running.` }],
1073
- details: { serverId: server.id, command: [...server.command], status: server.status },
1074
- };
1075
- },
1076
- }));
1077
- const unregisterStatus = registerTool(defineTool({
1078
- name: "mcp_server_status",
1079
- label: "MCP server status",
1080
- description: "List persistent MCP stdio servers managed by Pi Harness.",
1081
- promptSnippet: "inspect running MCP server status",
1082
- parameters: Type.Object({}, { additionalProperties: false }),
1083
- executionMode: "sequential",
1084
- execute(_toolCallId, params, signal) {
1085
- return Promise.resolve().then(() => {
1086
- const operationSignal = executionSignal(signal, lifecycle.signal);
1087
- operationSignal.throwIfAborted();
1088
- inspectParameters(params, noParameterNames);
1089
- const snapshot = statusSnapshot();
1090
- return {
1091
- content: [
1092
- {
1093
- type: "text",
1094
- text: snapshot.length === 0
1095
- ? "No MCP servers are running."
1096
- : snapshot
1097
- .map((server) => `${server.id}: ${server.status} (${server.executable}, ${server.argumentCount} argument${server.argumentCount === 1 ? "" : "s"})`)
1098
- .join("\n"),
1099
- },
1100
- ],
1101
- details: { servers: snapshot },
1102
- };
1103
- });
1104
- },
1105
- }));
1106
- const unregisterStop = registerTool(defineTool({
1107
- name: "mcp_server_stop",
1108
- label: "MCP server stop",
1109
- description: "Stop a persistent MCP stdio server and remove it from the managed set.",
1110
- promptSnippet: "stop a persistent MCP stdio server",
1111
- parameters: Type.Object({ serverId: Type.String() }, { additionalProperties: false }),
1112
- executionMode: "sequential",
1113
- async execute(_toolCallId, params, signal) {
1114
- const operationSignal = executionSignal(signal, lifecycle.signal);
1115
- operationSignal.throwIfAborted();
1116
- const raw = inspectParameters(params, stopParameterNames);
1117
- const serverId = serverIdValue(raw.serverId, true);
1118
- const stopped = await stopServer(serverId, operationSignal);
1119
- return { content: [{ type: "text", text: `MCP server ${serverId} stopped.` }], details: { serverId, stopped } };
1120
- },
1121
- }));
1122
- const unregisterListResources = registerTool(defineTool({
1123
- name: "mcp_list_resources",
1124
- label: "MCP list resources",
1125
- description: "List resources exposed by an MCP server.",
1126
- promptSnippet: "list resources exposed by an MCP server",
1127
- parameters: Type.Object({ command: Type.Optional(Type.Array(Type.String())), serverId: Type.Optional(Type.String()) }, { additionalProperties: false }),
1128
- executionMode: "sequential",
1129
- async execute(_toolCallId, params, signal) {
1130
- const operationSignal = executionSignal(signal, lifecycle.signal);
1131
- operationSignal.throwIfAborted();
1132
- const raw = inspectParameters(params, connectionParameterNames);
1133
- const items = await resources(optionalCommand(raw.command), serverIdValue(raw.serverId), operationSignal);
1134
- return {
1135
- content: [{ type: "text", text: items.map((item) => `${item.uri} ${item.name ?? ""}`).join("\n") || "MCP server returned no resources." }],
1136
- details: { resources: items },
1137
- };
1138
- },
1139
- }));
1140
- const unregisterReadResource = registerTool(defineTool({
1141
- name: "mcp_read_resource",
1142
- label: "MCP read resource",
1143
- description: "Read one resource exposed by an MCP server.",
1144
- promptSnippet: "read a resource exposed by an MCP server",
1145
- parameters: Type.Object({ command: Type.Optional(Type.Array(Type.String())), serverId: Type.Optional(Type.String()), uri: Type.String() }, { additionalProperties: false }),
1146
- executionMode: "sequential",
1147
- async execute(_toolCallId, params, signal) {
1148
- const operationSignal = executionSignal(signal, lifecycle.signal);
1149
- operationSignal.throwIfAborted();
1150
- const raw = inspectParameters(params, readResourceParameterNames);
1151
- const result = await readResource(optionalCommand(raw.command), serverIdValue(raw.serverId), requiredString(raw.uri, "resource URI"), operationSignal);
1152
- return { content: resourceResultContent(result), details: clone(result) };
1153
- },
1154
- }));
1155
- const unregisterListPrompts = registerTool(defineTool({
1156
- name: "mcp_list_prompts",
1157
- label: "MCP list prompts",
1158
- description: "List prompt templates exposed by an MCP server.",
1159
- promptSnippet: "list prompt templates exposed by an MCP server",
1160
- parameters: Type.Object({ command: Type.Optional(Type.Array(Type.String())), serverId: Type.Optional(Type.String()) }, { additionalProperties: false }),
1161
- executionMode: "sequential",
1162
- async execute(_toolCallId, params, signal) {
1163
- const operationSignal = executionSignal(signal, lifecycle.signal);
1164
- operationSignal.throwIfAborted();
1165
- const raw = inspectParameters(params, connectionParameterNames);
1166
- const items = await prompts(optionalCommand(raw.command), serverIdValue(raw.serverId), operationSignal);
1167
- return {
1168
- content: [{ type: "text", text: items.map((item) => `${item.name}: ${item.description ?? ""}`).join("\n") || "MCP server returned no prompts." }],
1169
- details: { prompts: items },
1170
- };
1171
- },
1172
- }));
1173
- const unregisterGetPrompt = registerTool(defineTool({
1174
- name: "mcp_get_prompt",
1175
- label: "MCP get prompt",
1176
- description: "Render a prompt template exposed by an MCP server.",
1177
- promptSnippet: "render a prompt template from an MCP server",
1178
- parameters: Type.Object({
1179
- command: Type.Optional(Type.Array(Type.String())),
1180
- serverId: Type.Optional(Type.String()),
1181
- name: Type.String(),
1182
- arguments: Type.Optional(Type.Record(Type.String(), Type.String())),
1183
- }, { additionalProperties: false }),
1184
- executionMode: "sequential",
1185
- async execute(_toolCallId, params, signal) {
1186
- const operationSignal = executionSignal(signal, lifecycle.signal);
1187
- operationSignal.throwIfAborted();
1188
- const raw = inspectParameters(params, callParameterNames);
1189
- const result = await getPrompt(optionalCommand(raw.command), serverIdValue(raw.serverId), requiredString(raw.name, "prompt name"), promptArguments(raw.arguments), operationSignal);
1190
- return { content: promptResultContent(result), details: clone(result) };
1191
- },
1192
- }));
1193
- const serverSnapshot = () => {
1194
- const running = [...servers.values()].map((server) => ({
1195
- id: server.id,
1196
- command: [executableName(server.command)],
1197
- status: server.status,
1198
- startedAt: server.startedAt,
1199
- }));
1200
- const active = new Set(running.map((server) => server.id));
1201
- return [
1202
- ...running,
1203
- ...[...configured.values()]
1204
- .filter((definition) => !active.has(definition.id))
1205
- .map((definition) => ({ id: definition.id, command: [executableName(definition.command)], status: "stopped", startedAt: 0 })),
1206
- ];
1207
- };
1208
- context.provide("piMcp", { snapshot: () => ({ servers: serverSnapshot() }) });
1209
- let disposePanel;
1210
- try {
1211
- disposePanel = context.piPluginUi.register({
1212
- id: "mcp-client-panel",
1213
- pluginId: "@pi-harness/core/plugins/mcp-client",
1214
- title: "MCP Client",
1215
- description: "通过 stdio JSON-RPC 连接外部 MCP 工具服务器。",
1216
- icon: "⌘",
1217
- read: () => {
1218
- const tools = latest?.tools ?? [];
1219
- const resources = latest?.resources ?? [];
1220
- const prompts = latest?.prompts ?? [];
1221
- const serverStatuses = statusSnapshot();
1222
- return clone({
1223
- server: latest?.server ?? null,
1224
- tools: tools.slice(0, maxPanelItems),
1225
- resources: resources.slice(0, maxPanelItems),
1226
- prompts: prompts.slice(0, maxPanelItems),
1227
- lastCall: latest?.lastCall ?? null,
1228
- servers: serverStatuses.slice(0, maxPanelItems),
1229
- inventory: {
1230
- tools: { total: tools.length, shown: Math.min(tools.length, maxPanelItems), truncated: tools.length > maxPanelItems },
1231
- resources: { total: resources.length, shown: Math.min(resources.length, maxPanelItems), truncated: resources.length > maxPanelItems },
1232
- prompts: { total: prompts.length, shown: Math.min(prompts.length, maxPanelItems), truncated: prompts.length > maxPanelItems },
1233
- servers: {
1234
- total: serverStatuses.length,
1235
- shown: Math.min(serverStatuses.length, maxPanelItems),
1236
- truncated: serverStatuses.length > maxPanelItems,
1237
- },
1238
- },
1239
- limits: {
1240
- responseBytes: maxResponseBytes,
1241
- commandArgs: maxCommandArgs,
1242
- argumentBytes: maxArgumentBytes,
1243
- toolArgumentsBytes: maxToolArgumentsBytes,
1244
- toolArgumentDepth: maxToolArgumentDepth,
1245
- requestTimeoutMs,
1246
- panelItems: maxPanelItems,
1247
- inventoryItems: maxInventoryItems,
1248
- paginationPages: maxPaginationPages,
1249
- stderrBytes: maxStderrBytes,
1250
- managedServers: maxManagedServers,
1251
- },
1252
- });
1253
- },
1254
- });
1255
- }
1256
- catch (error) {
1257
- for (const unregister of unregisters.splice(0).reverse())
1258
- unregister();
1259
- lifecycle.abort(new Error("MCP client plugin activation failed", { cause: error }));
1260
- throw error;
1261
- }
1262
- context.effect(() => async () => {
1263
- lifecycle.abort(new Error(disposedMessage));
1264
- unregisterList();
1265
- unregisterCall();
1266
- unregisterStart();
1267
- unregisterStatus();
1268
- unregisterStop();
1269
- unregisterListResources();
1270
- unregisterReadResource();
1271
- unregisterListPrompts();
1272
- unregisterGetPrompt();
1273
- const running = [...servers.values()];
1274
- for (const server of running) {
1275
- server.status = "stopping";
1276
- server.lifecycle.abort(new Error(disposedMessage));
1277
- }
1278
- servers.clear();
1279
- disposePanel();
1280
- await Promise.all(running.map(async (server) => terminateChild(server.child)));
1281
- });
1282
- for (const definition of configured.values()) {
1283
- if (definition.autoStart === true)
1284
- await startServer(definition.command, definition.id, lifecycle.signal);
1285
- }
1286
- },
1287
- };
1288
- //# sourceMappingURL=mcp-client.js.map