plexus-agent-config 0.0.1

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 (351) hide show
  1. package/dist/bin.d.ts +3 -0
  2. package/dist/bin.d.ts.map +1 -0
  3. package/dist/bin.js +175 -0
  4. package/dist/bin.js.map +1 -0
  5. package/node_modules/plexus-agent-config-core/dist/agents/adapters/base.d.ts +38 -0
  6. package/node_modules/plexus-agent-config-core/dist/agents/adapters/base.d.ts.map +1 -0
  7. package/node_modules/plexus-agent-config-core/dist/agents/adapters/base.js +125 -0
  8. package/node_modules/plexus-agent-config-core/dist/agents/adapters/base.js.map +1 -0
  9. package/node_modules/plexus-agent-config-core/dist/agents/adapters/codex.d.ts +9 -0
  10. package/node_modules/plexus-agent-config-core/dist/agents/adapters/codex.d.ts.map +1 -0
  11. package/node_modules/plexus-agent-config-core/dist/agents/adapters/codex.js +96 -0
  12. package/node_modules/plexus-agent-config-core/dist/agents/adapters/codex.js.map +1 -0
  13. package/node_modules/plexus-agent-config-core/dist/agents/adapters/index.d.ts +8 -0
  14. package/node_modules/plexus-agent-config-core/dist/agents/adapters/index.d.ts.map +1 -0
  15. package/node_modules/plexus-agent-config-core/dist/agents/adapters/index.js +12 -0
  16. package/node_modules/plexus-agent-config-core/dist/agents/adapters/index.js.map +1 -0
  17. package/node_modules/plexus-agent-config-core/dist/agents/adapters/json-mcp.d.ts +25 -0
  18. package/node_modules/plexus-agent-config-core/dist/agents/adapters/json-mcp.d.ts.map +1 -0
  19. package/node_modules/plexus-agent-config-core/dist/agents/adapters/json-mcp.js +182 -0
  20. package/node_modules/plexus-agent-config-core/dist/agents/adapters/json-mcp.js.map +1 -0
  21. package/node_modules/plexus-agent-config-core/dist/agents/catalog.d.ts +15 -0
  22. package/node_modules/plexus-agent-config-core/dist/agents/catalog.d.ts.map +1 -0
  23. package/node_modules/plexus-agent-config-core/dist/agents/catalog.js +153 -0
  24. package/node_modules/plexus-agent-config-core/dist/agents/catalog.js.map +1 -0
  25. package/node_modules/plexus-agent-config-core/dist/agents/detect.d.ts +14 -0
  26. package/node_modules/plexus-agent-config-core/dist/agents/detect.d.ts.map +1 -0
  27. package/node_modules/plexus-agent-config-core/dist/agents/detect.js +92 -0
  28. package/node_modules/plexus-agent-config-core/dist/agents/detect.js.map +1 -0
  29. package/node_modules/plexus-agent-config-core/dist/agents/index.d.ts +5 -0
  30. package/node_modules/plexus-agent-config-core/dist/agents/index.d.ts.map +1 -0
  31. package/node_modules/plexus-agent-config-core/dist/agents/index.js +5 -0
  32. package/node_modules/plexus-agent-config-core/dist/agents/index.js.map +1 -0
  33. package/node_modules/plexus-agent-config-core/dist/agents/inspect.d.ts +74 -0
  34. package/node_modules/plexus-agent-config-core/dist/agents/inspect.d.ts.map +1 -0
  35. package/node_modules/plexus-agent-config-core/dist/agents/inspect.js +169 -0
  36. package/node_modules/plexus-agent-config-core/dist/agents/inspect.js.map +1 -0
  37. package/node_modules/plexus-agent-config-core/dist/backup/index.d.ts +70 -0
  38. package/node_modules/plexus-agent-config-core/dist/backup/index.d.ts.map +1 -0
  39. package/node_modules/plexus-agent-config-core/dist/backup/index.js +258 -0
  40. package/node_modules/plexus-agent-config-core/dist/backup/index.js.map +1 -0
  41. package/node_modules/plexus-agent-config-core/dist/debug/index.d.ts +71 -0
  42. package/node_modules/plexus-agent-config-core/dist/debug/index.d.ts.map +1 -0
  43. package/node_modules/plexus-agent-config-core/dist/debug/index.js +263 -0
  44. package/node_modules/plexus-agent-config-core/dist/debug/index.js.map +1 -0
  45. package/node_modules/plexus-agent-config-core/dist/effective/index.d.ts +65 -0
  46. package/node_modules/plexus-agent-config-core/dist/effective/index.d.ts.map +1 -0
  47. package/node_modules/plexus-agent-config-core/dist/effective/index.js +227 -0
  48. package/node_modules/plexus-agent-config-core/dist/effective/index.js.map +1 -0
  49. package/node_modules/plexus-agent-config-core/dist/import/from-agents.d.ts +59 -0
  50. package/node_modules/plexus-agent-config-core/dist/import/from-agents.d.ts.map +1 -0
  51. package/node_modules/plexus-agent-config-core/dist/import/from-agents.js +212 -0
  52. package/node_modules/plexus-agent-config-core/dist/import/from-agents.js.map +1 -0
  53. package/node_modules/plexus-agent-config-core/dist/import/index.d.ts +26 -0
  54. package/node_modules/plexus-agent-config-core/dist/import/index.d.ts.map +1 -0
  55. package/node_modules/plexus-agent-config-core/dist/import/index.js +100 -0
  56. package/node_modules/plexus-agent-config-core/dist/import/index.js.map +1 -0
  57. package/node_modules/plexus-agent-config-core/dist/index.d.ts +12 -0
  58. package/node_modules/plexus-agent-config-core/dist/index.d.ts.map +1 -0
  59. package/node_modules/plexus-agent-config-core/dist/index.js +12 -0
  60. package/node_modules/plexus-agent-config-core/dist/index.js.map +1 -0
  61. package/node_modules/plexus-agent-config-core/dist/rules/index.d.ts +6 -0
  62. package/node_modules/plexus-agent-config-core/dist/rules/index.d.ts.map +1 -0
  63. package/node_modules/plexus-agent-config-core/dist/rules/index.js +292 -0
  64. package/node_modules/plexus-agent-config-core/dist/rules/index.js.map +1 -0
  65. package/node_modules/plexus-agent-config-core/dist/spread/index.d.ts +38 -0
  66. package/node_modules/plexus-agent-config-core/dist/spread/index.d.ts.map +1 -0
  67. package/node_modules/plexus-agent-config-core/dist/spread/index.js +190 -0
  68. package/node_modules/plexus-agent-config-core/dist/spread/index.js.map +1 -0
  69. package/node_modules/plexus-agent-config-core/dist/store/config.d.ts +5 -0
  70. package/node_modules/plexus-agent-config-core/dist/store/config.d.ts.map +1 -0
  71. package/node_modules/plexus-agent-config-core/dist/store/config.js +62 -0
  72. package/node_modules/plexus-agent-config-core/dist/store/config.js.map +1 -0
  73. package/node_modules/plexus-agent-config-core/dist/store/custom-agents.d.ts +45 -0
  74. package/node_modules/plexus-agent-config-core/dist/store/custom-agents.d.ts.map +1 -0
  75. package/node_modules/plexus-agent-config-core/dist/store/custom-agents.js +103 -0
  76. package/node_modules/plexus-agent-config-core/dist/store/custom-agents.js.map +1 -0
  77. package/node_modules/plexus-agent-config-core/dist/store/fs-utils.d.ts +16 -0
  78. package/node_modules/plexus-agent-config-core/dist/store/fs-utils.d.ts.map +1 -0
  79. package/node_modules/plexus-agent-config-core/dist/store/fs-utils.js +45 -0
  80. package/node_modules/plexus-agent-config-core/dist/store/fs-utils.js.map +1 -0
  81. package/node_modules/plexus-agent-config-core/dist/store/index.d.ts +9 -0
  82. package/node_modules/plexus-agent-config-core/dist/store/index.d.ts.map +1 -0
  83. package/node_modules/plexus-agent-config-core/dist/store/index.js +9 -0
  84. package/node_modules/plexus-agent-config-core/dist/store/index.js.map +1 -0
  85. package/node_modules/plexus-agent-config-core/dist/store/mcp.d.ts +5 -0
  86. package/node_modules/plexus-agent-config-core/dist/store/mcp.d.ts.map +1 -0
  87. package/node_modules/plexus-agent-config-core/dist/store/mcp.js +30 -0
  88. package/node_modules/plexus-agent-config-core/dist/store/mcp.js.map +1 -0
  89. package/node_modules/plexus-agent-config-core/dist/store/merge.d.ts +15 -0
  90. package/node_modules/plexus-agent-config-core/dist/store/merge.d.ts.map +1 -0
  91. package/node_modules/plexus-agent-config-core/dist/store/merge.js +28 -0
  92. package/node_modules/plexus-agent-config-core/dist/store/merge.js.map +1 -0
  93. package/node_modules/plexus-agent-config-core/dist/store/paths.d.ts +22 -0
  94. package/node_modules/plexus-agent-config-core/dist/store/paths.d.ts.map +1 -0
  95. package/node_modules/plexus-agent-config-core/dist/store/paths.js +107 -0
  96. package/node_modules/plexus-agent-config-core/dist/store/paths.js.map +1 -0
  97. package/node_modules/plexus-agent-config-core/dist/store/rules.d.ts +12 -0
  98. package/node_modules/plexus-agent-config-core/dist/store/rules.d.ts.map +1 -0
  99. package/node_modules/plexus-agent-config-core/dist/store/rules.js +32 -0
  100. package/node_modules/plexus-agent-config-core/dist/store/rules.js.map +1 -0
  101. package/node_modules/plexus-agent-config-core/dist/store/scaffolding.d.ts +11 -0
  102. package/node_modules/plexus-agent-config-core/dist/store/scaffolding.d.ts.map +1 -0
  103. package/node_modules/plexus-agent-config-core/dist/store/scaffolding.js +32 -0
  104. package/node_modules/plexus-agent-config-core/dist/store/scaffolding.js.map +1 -0
  105. package/node_modules/plexus-agent-config-core/dist/store/skills.d.ts +13 -0
  106. package/node_modules/plexus-agent-config-core/dist/store/skills.d.ts.map +1 -0
  107. package/node_modules/plexus-agent-config-core/dist/store/skills.js +84 -0
  108. package/node_modules/plexus-agent-config-core/dist/store/skills.js.map +1 -0
  109. package/node_modules/plexus-agent-config-core/dist/sync/index.d.ts +89 -0
  110. package/node_modules/plexus-agent-config-core/dist/sync/index.d.ts.map +1 -0
  111. package/node_modules/plexus-agent-config-core/dist/sync/index.js +423 -0
  112. package/node_modules/plexus-agent-config-core/dist/sync/index.js.map +1 -0
  113. package/node_modules/plexus-agent-config-core/dist/team/git.d.ts +23 -0
  114. package/node_modules/plexus-agent-config-core/dist/team/git.d.ts.map +1 -0
  115. package/node_modules/plexus-agent-config-core/dist/team/git.js +132 -0
  116. package/node_modules/plexus-agent-config-core/dist/team/git.js.map +1 -0
  117. package/node_modules/plexus-agent-config-core/dist/team/index.d.ts +2 -0
  118. package/node_modules/plexus-agent-config-core/dist/team/index.d.ts.map +1 -0
  119. package/node_modules/plexus-agent-config-core/dist/team/index.js +2 -0
  120. package/node_modules/plexus-agent-config-core/dist/team/index.js.map +1 -0
  121. package/node_modules/plexus-agent-config-core/dist/types.d.ts +142 -0
  122. package/node_modules/plexus-agent-config-core/dist/types.d.ts.map +1 -0
  123. package/node_modules/plexus-agent-config-core/dist/types.js +13 -0
  124. package/node_modules/plexus-agent-config-core/dist/types.js.map +1 -0
  125. package/node_modules/plexus-agent-config-core/package.json +29 -0
  126. package/node_modules/plexus-agent-config-web/.next/BUILD_ID +1 -0
  127. package/node_modules/plexus-agent-config-web/.next/app-path-routes-manifest.json +39 -0
  128. package/node_modules/plexus-agent-config-web/.next/build-manifest.json +20 -0
  129. package/node_modules/plexus-agent-config-web/.next/export-marker.json +6 -0
  130. package/node_modules/plexus-agent-config-web/.next/images-manifest.json +68 -0
  131. package/node_modules/plexus-agent-config-web/.next/next-minimal-server.js.nft.json +1 -0
  132. package/node_modules/plexus-agent-config-web/.next/next-server.js.nft.json +1 -0
  133. package/node_modules/plexus-agent-config-web/.next/package.json +1 -0
  134. package/node_modules/plexus-agent-config-web/.next/prerender-manifest.json +36 -0
  135. package/node_modules/plexus-agent-config-web/.next/react-loadable-manifest.json +1 -0
  136. package/node_modules/plexus-agent-config-web/.next/required-server-files.js +337 -0
  137. package/node_modules/plexus-agent-config-web/.next/required-server-files.json +337 -0
  138. package/node_modules/plexus-agent-config-web/.next/routes-manifest.json +286 -0
  139. package/node_modules/plexus-agent-config-web/.next/server/app/_global-error/page.js +32 -0
  140. package/node_modules/plexus-agent-config-web/.next/server/app/_global-error/page.js.nft.json +1 -0
  141. package/node_modules/plexus-agent-config-web/.next/server/app/_global-error/page_client-reference-manifest.js +1 -0
  142. package/node_modules/plexus-agent-config-web/.next/server/app/_global-error.html +1 -0
  143. package/node_modules/plexus-agent-config-web/.next/server/app/_global-error.meta +16 -0
  144. package/node_modules/plexus-agent-config-web/.next/server/app/_global-error.rsc +14 -0
  145. package/node_modules/plexus-agent-config-web/.next/server/app/_global-error.segments/_full.segment.rsc +14 -0
  146. package/node_modules/plexus-agent-config-web/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +5 -0
  147. package/node_modules/plexus-agent-config-web/.next/server/app/_global-error.segments/_global-error.segment.rsc +5 -0
  148. package/node_modules/plexus-agent-config-web/.next/server/app/_global-error.segments/_head.segment.rsc +5 -0
  149. package/node_modules/plexus-agent-config-web/.next/server/app/_global-error.segments/_index.segment.rsc +5 -0
  150. package/node_modules/plexus-agent-config-web/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -0
  151. package/node_modules/plexus-agent-config-web/.next/server/app/_not-found/page.js +2 -0
  152. package/node_modules/plexus-agent-config-web/.next/server/app/_not-found/page.js.nft.json +1 -0
  153. package/node_modules/plexus-agent-config-web/.next/server/app/_not-found/page_client-reference-manifest.js +1 -0
  154. package/node_modules/plexus-agent-config-web/.next/server/app/about/page.js +2 -0
  155. package/node_modules/plexus-agent-config-web/.next/server/app/about/page.js.nft.json +1 -0
  156. package/node_modules/plexus-agent-config-web/.next/server/app/about/page_client-reference-manifest.js +1 -0
  157. package/node_modules/plexus-agent-config-web/.next/server/app/agents/[id]/page.js +2 -0
  158. package/node_modules/plexus-agent-config-web/.next/server/app/agents/[id]/page.js.nft.json +1 -0
  159. package/node_modules/plexus-agent-config-web/.next/server/app/agents/[id]/page_client-reference-manifest.js +1 -0
  160. package/node_modules/plexus-agent-config-web/.next/server/app/api/agent/[id]/file/route.js +1 -0
  161. package/node_modules/plexus-agent-config-web/.next/server/app/api/agent/[id]/file/route.js.nft.json +1 -0
  162. package/node_modules/plexus-agent-config-web/.next/server/app/api/agent/[id]/file/route_client-reference-manifest.js +1 -0
  163. package/node_modules/plexus-agent-config-web/.next/server/app/api/agent/[id]/route.js +1 -0
  164. package/node_modules/plexus-agent-config-web/.next/server/app/api/agent/[id]/route.js.nft.json +1 -0
  165. package/node_modules/plexus-agent-config-web/.next/server/app/api/agent/[id]/route_client-reference-manifest.js +1 -0
  166. package/node_modules/plexus-agent-config-web/.next/server/app/api/agent-catalog/route.js +1 -0
  167. package/node_modules/plexus-agent-config-web/.next/server/app/api/agent-catalog/route.js.nft.json +1 -0
  168. package/node_modules/plexus-agent-config-web/.next/server/app/api/agent-catalog/route_client-reference-manifest.js +1 -0
  169. package/node_modules/plexus-agent-config-web/.next/server/app/api/agents/route.js +1 -0
  170. package/node_modules/plexus-agent-config-web/.next/server/app/api/agents/route.js.nft.json +1 -0
  171. package/node_modules/plexus-agent-config-web/.next/server/app/api/agents/route_client-reference-manifest.js +1 -0
  172. package/node_modules/plexus-agent-config-web/.next/server/app/api/backups/[id]/restore/route.js +1 -0
  173. package/node_modules/plexus-agent-config-web/.next/server/app/api/backups/[id]/restore/route.js.nft.json +1 -0
  174. package/node_modules/plexus-agent-config-web/.next/server/app/api/backups/[id]/restore/route_client-reference-manifest.js +1 -0
  175. package/node_modules/plexus-agent-config-web/.next/server/app/api/backups/route.js +1 -0
  176. package/node_modules/plexus-agent-config-web/.next/server/app/api/backups/route.js.nft.json +1 -0
  177. package/node_modules/plexus-agent-config-web/.next/server/app/api/backups/route_client-reference-manifest.js +1 -0
  178. package/node_modules/plexus-agent-config-web/.next/server/app/api/config/route.js +1 -0
  179. package/node_modules/plexus-agent-config-web/.next/server/app/api/config/route.js.nft.json +1 -0
  180. package/node_modules/plexus-agent-config-web/.next/server/app/api/config/route_client-reference-manifest.js +1 -0
  181. package/node_modules/plexus-agent-config-web/.next/server/app/api/custom-agents/[id]/file/route.js +1 -0
  182. package/node_modules/plexus-agent-config-web/.next/server/app/api/custom-agents/[id]/file/route.js.nft.json +1 -0
  183. package/node_modules/plexus-agent-config-web/.next/server/app/api/custom-agents/[id]/file/route_client-reference-manifest.js +1 -0
  184. package/node_modules/plexus-agent-config-web/.next/server/app/api/custom-agents/[id]/route.js +1 -0
  185. package/node_modules/plexus-agent-config-web/.next/server/app/api/custom-agents/[id]/route.js.nft.json +1 -0
  186. package/node_modules/plexus-agent-config-web/.next/server/app/api/custom-agents/[id]/route_client-reference-manifest.js +1 -0
  187. package/node_modules/plexus-agent-config-web/.next/server/app/api/custom-agents/route.js +1 -0
  188. package/node_modules/plexus-agent-config-web/.next/server/app/api/custom-agents/route.js.nft.json +1 -0
  189. package/node_modules/plexus-agent-config-web/.next/server/app/api/custom-agents/route_client-reference-manifest.js +1 -0
  190. package/node_modules/plexus-agent-config-web/.next/server/app/api/debug/route.js +1 -0
  191. package/node_modules/plexus-agent-config-web/.next/server/app/api/debug/route.js.nft.json +1 -0
  192. package/node_modules/plexus-agent-config-web/.next/server/app/api/debug/route_client-reference-manifest.js +1 -0
  193. package/node_modules/plexus-agent-config-web/.next/server/app/api/import/route.js +1 -0
  194. package/node_modules/plexus-agent-config-web/.next/server/app/api/import/route.js.nft.json +1 -0
  195. package/node_modules/plexus-agent-config-web/.next/server/app/api/import/route_client-reference-manifest.js +1 -0
  196. package/node_modules/plexus-agent-config-web/.next/server/app/api/mcp/[id]/toggle/route.js +1 -0
  197. package/node_modules/plexus-agent-config-web/.next/server/app/api/mcp/[id]/toggle/route.js.nft.json +1 -0
  198. package/node_modules/plexus-agent-config-web/.next/server/app/api/mcp/[id]/toggle/route_client-reference-manifest.js +1 -0
  199. package/node_modules/plexus-agent-config-web/.next/server/app/api/mcp/effective/route.js +1 -0
  200. package/node_modules/plexus-agent-config-web/.next/server/app/api/mcp/effective/route.js.nft.json +1 -0
  201. package/node_modules/plexus-agent-config-web/.next/server/app/api/mcp/effective/route_client-reference-manifest.js +1 -0
  202. package/node_modules/plexus-agent-config-web/.next/server/app/api/mcp/route.js +1 -0
  203. package/node_modules/plexus-agent-config-web/.next/server/app/api/mcp/route.js.nft.json +1 -0
  204. package/node_modules/plexus-agent-config-web/.next/server/app/api/mcp/route_client-reference-manifest.js +1 -0
  205. package/node_modules/plexus-agent-config-web/.next/server/app/api/rules/route.js +1 -0
  206. package/node_modules/plexus-agent-config-web/.next/server/app/api/rules/route.js.nft.json +1 -0
  207. package/node_modules/plexus-agent-config-web/.next/server/app/api/rules/route_client-reference-manifest.js +1 -0
  208. package/node_modules/plexus-agent-config-web/.next/server/app/api/skills/[id]/route.js +1 -0
  209. package/node_modules/plexus-agent-config-web/.next/server/app/api/skills/[id]/route.js.nft.json +1 -0
  210. package/node_modules/plexus-agent-config-web/.next/server/app/api/skills/[id]/route_client-reference-manifest.js +1 -0
  211. package/node_modules/plexus-agent-config-web/.next/server/app/api/skills/[id]/toggle/route.js +1 -0
  212. package/node_modules/plexus-agent-config-web/.next/server/app/api/skills/[id]/toggle/route.js.nft.json +1 -0
  213. package/node_modules/plexus-agent-config-web/.next/server/app/api/skills/[id]/toggle/route_client-reference-manifest.js +1 -0
  214. package/node_modules/plexus-agent-config-web/.next/server/app/api/skills/effective/route.js +1 -0
  215. package/node_modules/plexus-agent-config-web/.next/server/app/api/skills/effective/route.js.nft.json +1 -0
  216. package/node_modules/plexus-agent-config-web/.next/server/app/api/skills/effective/route_client-reference-manifest.js +1 -0
  217. package/node_modules/plexus-agent-config-web/.next/server/app/api/skills/route.js +1 -0
  218. package/node_modules/plexus-agent-config-web/.next/server/app/api/skills/route.js.nft.json +1 -0
  219. package/node_modules/plexus-agent-config-web/.next/server/app/api/skills/route_client-reference-manifest.js +1 -0
  220. package/node_modules/plexus-agent-config-web/.next/server/app/api/spread/route.js +1 -0
  221. package/node_modules/plexus-agent-config-web/.next/server/app/api/spread/route.js.nft.json +1 -0
  222. package/node_modules/plexus-agent-config-web/.next/server/app/api/spread/route_client-reference-manifest.js +1 -0
  223. package/node_modules/plexus-agent-config-web/.next/server/app/api/sync/route.js +1 -0
  224. package/node_modules/plexus-agent-config-web/.next/server/app/api/sync/route.js.nft.json +1 -0
  225. package/node_modules/plexus-agent-config-web/.next/server/app/api/sync/route_client-reference-manifest.js +1 -0
  226. package/node_modules/plexus-agent-config-web/.next/server/app/api/team/route.js +1 -0
  227. package/node_modules/plexus-agent-config-web/.next/server/app/api/team/route.js.nft.json +1 -0
  228. package/node_modules/plexus-agent-config-web/.next/server/app/api/team/route_client-reference-manifest.js +1 -0
  229. package/node_modules/plexus-agent-config-web/.next/server/app/backups/page.js +4 -0
  230. package/node_modules/plexus-agent-config-web/.next/server/app/backups/page.js.nft.json +1 -0
  231. package/node_modules/plexus-agent-config-web/.next/server/app/backups/page_client-reference-manifest.js +1 -0
  232. package/node_modules/plexus-agent-config-web/.next/server/app/debug/page.js +2 -0
  233. package/node_modules/plexus-agent-config-web/.next/server/app/debug/page.js.nft.json +1 -0
  234. package/node_modules/plexus-agent-config-web/.next/server/app/debug/page_client-reference-manifest.js +1 -0
  235. package/node_modules/plexus-agent-config-web/.next/server/app/mcp/page.js +2 -0
  236. package/node_modules/plexus-agent-config-web/.next/server/app/mcp/page.js.nft.json +1 -0
  237. package/node_modules/plexus-agent-config-web/.next/server/app/mcp/page_client-reference-manifest.js +1 -0
  238. package/node_modules/plexus-agent-config-web/.next/server/app/mirror/page.js +2 -0
  239. package/node_modules/plexus-agent-config-web/.next/server/app/mirror/page.js.nft.json +1 -0
  240. package/node_modules/plexus-agent-config-web/.next/server/app/mirror/page_client-reference-manifest.js +1 -0
  241. package/node_modules/plexus-agent-config-web/.next/server/app/page.js +2 -0
  242. package/node_modules/plexus-agent-config-web/.next/server/app/page.js.nft.json +1 -0
  243. package/node_modules/plexus-agent-config-web/.next/server/app/page_client-reference-manifest.js +1 -0
  244. package/node_modules/plexus-agent-config-web/.next/server/app/rules/page.js +10 -0
  245. package/node_modules/plexus-agent-config-web/.next/server/app/rules/page.js.nft.json +1 -0
  246. package/node_modules/plexus-agent-config-web/.next/server/app/rules/page_client-reference-manifest.js +1 -0
  247. package/node_modules/plexus-agent-config-web/.next/server/app/settings/page.js +2 -0
  248. package/node_modules/plexus-agent-config-web/.next/server/app/settings/page.js.nft.json +1 -0
  249. package/node_modules/plexus-agent-config-web/.next/server/app/settings/page_client-reference-manifest.js +1 -0
  250. package/node_modules/plexus-agent-config-web/.next/server/app/skills/page.js +2 -0
  251. package/node_modules/plexus-agent-config-web/.next/server/app/skills/page.js.nft.json +1 -0
  252. package/node_modules/plexus-agent-config-web/.next/server/app/skills/page_client-reference-manifest.js +1 -0
  253. package/node_modules/plexus-agent-config-web/.next/server/app/spread/page.js +2 -0
  254. package/node_modules/plexus-agent-config-web/.next/server/app/spread/page.js.nft.json +1 -0
  255. package/node_modules/plexus-agent-config-web/.next/server/app/spread/page_client-reference-manifest.js +1 -0
  256. package/node_modules/plexus-agent-config-web/.next/server/app/team/page.js +2 -0
  257. package/node_modules/plexus-agent-config-web/.next/server/app/team/page.js.nft.json +1 -0
  258. package/node_modules/plexus-agent-config-web/.next/server/app/team/page_client-reference-manifest.js +1 -0
  259. package/node_modules/plexus-agent-config-web/.next/server/app-paths-manifest.json +39 -0
  260. package/node_modules/plexus-agent-config-web/.next/server/chunks/103.js +18 -0
  261. package/node_modules/plexus-agent-config-web/.next/server/chunks/174.js +1 -0
  262. package/node_modules/plexus-agent-config-web/.next/server/chunks/380.js +1 -0
  263. package/node_modules/plexus-agent-config-web/.next/server/chunks/397.js +26 -0
  264. package/node_modules/plexus-agent-config-web/.next/server/chunks/479.js +45 -0
  265. package/node_modules/plexus-agent-config-web/.next/server/chunks/620.js +1 -0
  266. package/node_modules/plexus-agent-config-web/.next/server/chunks/750.js +1 -0
  267. package/node_modules/plexus-agent-config-web/.next/server/chunks/921.js +5 -0
  268. package/node_modules/plexus-agent-config-web/.next/server/functions-config-manifest.json +4 -0
  269. package/node_modules/plexus-agent-config-web/.next/server/interception-route-rewrite-manifest.js +1 -0
  270. package/node_modules/plexus-agent-config-web/.next/server/middleware-build-manifest.js +1 -0
  271. package/node_modules/plexus-agent-config-web/.next/server/middleware-manifest.json +6 -0
  272. package/node_modules/plexus-agent-config-web/.next/server/middleware-react-loadable-manifest.js +1 -0
  273. package/node_modules/plexus-agent-config-web/.next/server/next-font-manifest.js +1 -0
  274. package/node_modules/plexus-agent-config-web/.next/server/next-font-manifest.json +1 -0
  275. package/node_modules/plexus-agent-config-web/.next/server/pages/500.html +1 -0
  276. package/node_modules/plexus-agent-config-web/.next/server/pages-manifest.json +3 -0
  277. package/node_modules/plexus-agent-config-web/.next/server/prefetch-hints.json +1 -0
  278. package/node_modules/plexus-agent-config-web/.next/server/server-reference-manifest.js +1 -0
  279. package/node_modules/plexus-agent-config-web/.next/server/server-reference-manifest.json +1 -0
  280. package/node_modules/plexus-agent-config-web/.next/server/webpack-runtime.js +1 -0
  281. package/node_modules/plexus-agent-config-web/.next/static/chunks/1968-9d19293a29f03646.js +32 -0
  282. package/node_modules/plexus-agent-config-web/.next/static/chunks/3051-5eb2f5784474c658.js +1 -0
  283. package/node_modules/plexus-agent-config-web/.next/static/chunks/3090-3702701c503793f0.js +1 -0
  284. package/node_modules/plexus-agent-config-web/.next/static/chunks/4399-7cc367307a2c52a6.js +1 -0
  285. package/node_modules/plexus-agent-config-web/.next/static/chunks/5587-933f3258279c6072.js +1 -0
  286. package/node_modules/plexus-agent-config-web/.next/static/chunks/626-7ea78ce012c8d471.js +1 -0
  287. package/node_modules/plexus-agent-config-web/.next/static/chunks/7814-1bc9d30b9724b70c.js +1 -0
  288. package/node_modules/plexus-agent-config-web/.next/static/chunks/87c73c54-64138e17754e338c.js +1 -0
  289. package/node_modules/plexus-agent-config-web/.next/static/chunks/app/_global-error/page-fe6298e28540d3d8.js +1 -0
  290. package/node_modules/plexus-agent-config-web/.next/static/chunks/app/_not-found/page-303a3bb713044693.js +1 -0
  291. package/node_modules/plexus-agent-config-web/.next/static/chunks/app/about/page-64a1ee41b87ea86c.js +1 -0
  292. package/node_modules/plexus-agent-config-web/.next/static/chunks/app/agents/[id]/page-c3c89d8ae72c75c2.js +1 -0
  293. package/node_modules/plexus-agent-config-web/.next/static/chunks/app/api/agent/[id]/file/route-fe6298e28540d3d8.js +1 -0
  294. package/node_modules/plexus-agent-config-web/.next/static/chunks/app/api/agent/[id]/route-fe6298e28540d3d8.js +1 -0
  295. package/node_modules/plexus-agent-config-web/.next/static/chunks/app/api/agent-catalog/route-fe6298e28540d3d8.js +1 -0
  296. package/node_modules/plexus-agent-config-web/.next/static/chunks/app/api/agents/route-fe6298e28540d3d8.js +1 -0
  297. package/node_modules/plexus-agent-config-web/.next/static/chunks/app/api/backups/[id]/restore/route-fe6298e28540d3d8.js +1 -0
  298. package/node_modules/plexus-agent-config-web/.next/static/chunks/app/api/backups/route-fe6298e28540d3d8.js +1 -0
  299. package/node_modules/plexus-agent-config-web/.next/static/chunks/app/api/config/route-fe6298e28540d3d8.js +1 -0
  300. package/node_modules/plexus-agent-config-web/.next/static/chunks/app/api/custom-agents/[id]/file/route-fe6298e28540d3d8.js +1 -0
  301. package/node_modules/plexus-agent-config-web/.next/static/chunks/app/api/custom-agents/[id]/route-fe6298e28540d3d8.js +1 -0
  302. package/node_modules/plexus-agent-config-web/.next/static/chunks/app/api/custom-agents/route-fe6298e28540d3d8.js +1 -0
  303. package/node_modules/plexus-agent-config-web/.next/static/chunks/app/api/debug/route-fe6298e28540d3d8.js +1 -0
  304. package/node_modules/plexus-agent-config-web/.next/static/chunks/app/api/import/route-fe6298e28540d3d8.js +1 -0
  305. package/node_modules/plexus-agent-config-web/.next/static/chunks/app/api/mcp/[id]/toggle/route-fe6298e28540d3d8.js +1 -0
  306. package/node_modules/plexus-agent-config-web/.next/static/chunks/app/api/mcp/effective/route-fe6298e28540d3d8.js +1 -0
  307. package/node_modules/plexus-agent-config-web/.next/static/chunks/app/api/mcp/route-fe6298e28540d3d8.js +1 -0
  308. package/node_modules/plexus-agent-config-web/.next/static/chunks/app/api/rules/route-fe6298e28540d3d8.js +1 -0
  309. package/node_modules/plexus-agent-config-web/.next/static/chunks/app/api/skills/[id]/route-fe6298e28540d3d8.js +1 -0
  310. package/node_modules/plexus-agent-config-web/.next/static/chunks/app/api/skills/[id]/toggle/route-fe6298e28540d3d8.js +1 -0
  311. package/node_modules/plexus-agent-config-web/.next/static/chunks/app/api/skills/effective/route-fe6298e28540d3d8.js +1 -0
  312. package/node_modules/plexus-agent-config-web/.next/static/chunks/app/api/skills/route-fe6298e28540d3d8.js +1 -0
  313. package/node_modules/plexus-agent-config-web/.next/static/chunks/app/api/spread/route-fe6298e28540d3d8.js +1 -0
  314. package/node_modules/plexus-agent-config-web/.next/static/chunks/app/api/sync/route-fe6298e28540d3d8.js +1 -0
  315. package/node_modules/plexus-agent-config-web/.next/static/chunks/app/api/team/route-fe6298e28540d3d8.js +1 -0
  316. package/node_modules/plexus-agent-config-web/.next/static/chunks/app/backups/page-6842a663db4fab47.js +3 -0
  317. package/node_modules/plexus-agent-config-web/.next/static/chunks/app/debug/page-19e534df1d13eb98.js +1 -0
  318. package/node_modules/plexus-agent-config-web/.next/static/chunks/app/layout-798b3b697994c5bf.js +1 -0
  319. package/node_modules/plexus-agent-config-web/.next/static/chunks/app/mcp/page-d0d518965db961f1.js +1 -0
  320. package/node_modules/plexus-agent-config-web/.next/static/chunks/app/mirror/page-e88f348e1a12487a.js +1 -0
  321. package/node_modules/plexus-agent-config-web/.next/static/chunks/app/page-039dbbfad47ff659.js +1 -0
  322. package/node_modules/plexus-agent-config-web/.next/static/chunks/app/rules/page-5bb663fc0ee9960b.js +9 -0
  323. package/node_modules/plexus-agent-config-web/.next/static/chunks/app/settings/page-8164e1d1a8a08038.js +1 -0
  324. package/node_modules/plexus-agent-config-web/.next/static/chunks/app/skills/page-6067058898aa6e10.js +1 -0
  325. package/node_modules/plexus-agent-config-web/.next/static/chunks/app/spread/page-fe6298e28540d3d8.js +1 -0
  326. package/node_modules/plexus-agent-config-web/.next/static/chunks/app/team/page-edd7f54640e60e94.js +1 -0
  327. package/node_modules/plexus-agent-config-web/.next/static/chunks/framework-2c03ddc44b9f482b.js +1 -0
  328. package/node_modules/plexus-agent-config-web/.next/static/chunks/main-488dba80110e3bfb.js +5 -0
  329. package/node_modules/plexus-agent-config-web/.next/static/chunks/main-app-4c4bad3c22a66283.js +1 -0
  330. package/node_modules/plexus-agent-config-web/.next/static/chunks/next/dist/client/components/builtin/app-error-fe6298e28540d3d8.js +1 -0
  331. package/node_modules/plexus-agent-config-web/.next/static/chunks/next/dist/client/components/builtin/forbidden-fe6298e28540d3d8.js +1 -0
  332. package/node_modules/plexus-agent-config-web/.next/static/chunks/next/dist/client/components/builtin/global-error-821a044f296e83b5.js +1 -0
  333. package/node_modules/plexus-agent-config-web/.next/static/chunks/next/dist/client/components/builtin/not-found-fe6298e28540d3d8.js +1 -0
  334. package/node_modules/plexus-agent-config-web/.next/static/chunks/next/dist/client/components/builtin/unauthorized-fe6298e28540d3d8.js +1 -0
  335. package/node_modules/plexus-agent-config-web/.next/static/chunks/polyfills-42372ed130431b0a.js +1 -0
  336. package/node_modules/plexus-agent-config-web/.next/static/chunks/webpack-dd4b9bd51624284c.js +1 -0
  337. package/node_modules/plexus-agent-config-web/.next/static/css/eba3657411e6e6cd.css +5 -0
  338. package/node_modules/plexus-agent-config-web/.next/static/media/19cfc7226ec3afaa-s.woff2 +0 -0
  339. package/node_modules/plexus-agent-config-web/.next/static/media/21350d82a1f187e9-s.woff2 +0 -0
  340. package/node_modules/plexus-agent-config-web/.next/static/media/8e9860b6e62d6359-s.woff2 +0 -0
  341. package/node_modules/plexus-agent-config-web/.next/static/media/ba9851c3c22cd980-s.woff2 +0 -0
  342. package/node_modules/plexus-agent-config-web/.next/static/media/c5fe6dc8356a8c31-s.woff2 +0 -0
  343. package/node_modules/plexus-agent-config-web/.next/static/media/df0a9ae256c0569c-s.woff2 +0 -0
  344. package/node_modules/plexus-agent-config-web/.next/static/media/e4af272ccee01ff0-s.p.woff2 +0 -0
  345. package/node_modules/plexus-agent-config-web/.next/static/mvb1RnSdmeAxbYF-SjSfa/_buildManifest.js +1 -0
  346. package/node_modules/plexus-agent-config-web/.next/static/mvb1RnSdmeAxbYF-SjSfa/_ssgManifest.js +1 -0
  347. package/node_modules/plexus-agent-config-web/next.config.mjs +17 -0
  348. package/node_modules/plexus-agent-config-web/package.json +40 -0
  349. package/node_modules/plexus-agent-config-web/public/architecture/config-sharing-map.html +887 -0
  350. package/node_modules/plexus-agent-config-web/public/favicon.svg +5 -0
  351. package/package.json +64 -0
@@ -0,0 +1,263 @@
1
+ import fs from "node:fs/promises";
2
+ import os from "node:os";
3
+ import path from "node:path";
4
+ import { isAgentInstalled } from "../agents/detect.js";
5
+ import { instructionsForAgent } from "../agents/inspect.js";
6
+ import { listBackups } from "../backup/index.js";
7
+ import { pathExists } from "../store/fs-utils.js";
8
+ import { AGENT_DISPLAY_NAMES, AGENT_PATHS, AGENT_ROOTS, ALL_AGENTS, PLEXUS_PATHS, } from "../store/paths.js";
9
+ const HOME = os.homedir();
10
+ function tilde(p) {
11
+ if (p === HOME)
12
+ return "~";
13
+ if (p.startsWith(`${HOME}/`))
14
+ return `~/${p.slice(HOME.length + 1)}`;
15
+ return p;
16
+ }
17
+ async function statPath(p) {
18
+ const out = {
19
+ path: p,
20
+ display: tilde(p),
21
+ exists: false,
22
+ kind: "missing",
23
+ };
24
+ let lst;
25
+ try {
26
+ lst = await fs.lstat(p);
27
+ }
28
+ catch {
29
+ return out;
30
+ }
31
+ out.exists = true;
32
+ if (lst.isSymbolicLink()) {
33
+ out.kind = "symlink";
34
+ try {
35
+ const t = await fs.readlink(p);
36
+ out.linkTarget = path.isAbsolute(t) ? t : path.resolve(path.dirname(p), t);
37
+ out.linkTargetExists = await pathExists(out.linkTarget);
38
+ }
39
+ catch {
40
+ // ignore
41
+ }
42
+ try {
43
+ const s = await fs.stat(p); // follows the symlink
44
+ out.size = s.size;
45
+ out.mtime = s.mtime.toISOString();
46
+ }
47
+ catch {
48
+ // dangling
49
+ }
50
+ }
51
+ else if (lst.isDirectory()) {
52
+ out.kind = "dir";
53
+ out.mtime = lst.mtime.toISOString();
54
+ try {
55
+ const ents = await fs.readdir(p);
56
+ out.entryCount = ents.filter((n) => !n.startsWith(".") && !n.includes(".plexus-backup-")).length;
57
+ }
58
+ catch {
59
+ // ignore
60
+ }
61
+ }
62
+ else {
63
+ out.kind = "file";
64
+ out.size = lst.size;
65
+ out.mtime = lst.mtime.toISOString();
66
+ }
67
+ return out;
68
+ }
69
+ async function listDir(dir) {
70
+ if (!(await pathExists(dir)))
71
+ return [];
72
+ let names;
73
+ try {
74
+ names = await fs.readdir(dir);
75
+ }
76
+ catch {
77
+ return [];
78
+ }
79
+ const filtered = names.filter((n) => !n.startsWith(".") && !n.includes(".plexus-backup-")).sort();
80
+ const out = [];
81
+ for (const n of filtered) {
82
+ out.push(await statPath(path.join(dir, n)));
83
+ }
84
+ return out;
85
+ }
86
+ async function collectAgent(agentId) {
87
+ const caps = AGENT_PATHS[agentId];
88
+ const root = await statPath(AGENT_ROOTS[agentId]);
89
+ const instructionPath = instructionsForAgent(agentId)[0]?.abs ?? null;
90
+ const [mcpFile, instructionFile, skillsDir] = await Promise.all([
91
+ statPath(caps.mcpPath),
92
+ instructionPath ? statPath(instructionPath) : Promise.resolve(null),
93
+ statPath(caps.skillsDir),
94
+ ]);
95
+ const skillEntries = caps.skills ? await listDir(caps.skillsDir) : [];
96
+ return {
97
+ id: agentId,
98
+ displayName: AGENT_DISPLAY_NAMES[agentId],
99
+ installed: isAgentInstalled(agentId),
100
+ mcpFileMode: caps.mcpFileMode ?? "shared",
101
+ root,
102
+ mcpFile,
103
+ instructionFile,
104
+ skillsDir,
105
+ skillEntries,
106
+ };
107
+ }
108
+ async function collectPlexusStore() {
109
+ const teamMcp = path.join(PLEXUS_PATHS.team, PLEXUS_PATHS.mcpDirRel, "servers.yaml");
110
+ const personalMcp = path.join(PLEXUS_PATHS.personal, PLEXUS_PATHS.mcpDirRel, "servers.yaml");
111
+ const teamSkillsDir = path.join(PLEXUS_PATHS.team, PLEXUS_PATHS.skillsDirRel);
112
+ const personalSkillsDir = path.join(PLEXUS_PATHS.personal, PLEXUS_PATHS.skillsDirRel);
113
+ const [root, config, team, personal, cacheMcp, backups, teamMcpServers, personalMcpServers, teamSkillEntries, personalSkillEntries, cacheMcpEntries,] = await Promise.all([
114
+ statPath(PLEXUS_PATHS.root),
115
+ statPath(PLEXUS_PATHS.config),
116
+ statPath(PLEXUS_PATHS.team),
117
+ statPath(PLEXUS_PATHS.personal),
118
+ statPath(PLEXUS_PATHS.mcpCache),
119
+ statPath(PLEXUS_PATHS.backups),
120
+ statPath(teamMcp),
121
+ statPath(personalMcp),
122
+ listDir(teamSkillsDir),
123
+ listDir(personalSkillsDir),
124
+ listDir(PLEXUS_PATHS.mcpCache),
125
+ ]);
126
+ let backupCount = 0;
127
+ try {
128
+ const all = await listBackups();
129
+ backupCount = all.length;
130
+ }
131
+ catch {
132
+ // ignore
133
+ }
134
+ return {
135
+ root,
136
+ config,
137
+ team,
138
+ personal,
139
+ cacheMcp,
140
+ backups,
141
+ teamMcpServers,
142
+ personalMcpServers,
143
+ teamSkillEntries,
144
+ personalSkillEntries,
145
+ cacheMcpEntries,
146
+ backupCount,
147
+ };
148
+ }
149
+ export async function collectDebugSnapshot() {
150
+ const plexus = await collectPlexusStore();
151
+ const agents = await Promise.all(ALL_AGENTS.map(collectAgent));
152
+ return {
153
+ generatedAt: new Date().toISOString(),
154
+ host: {
155
+ platform: process.platform,
156
+ release: os.release(),
157
+ node: process.version,
158
+ home: HOME,
159
+ },
160
+ plexus,
161
+ agents,
162
+ };
163
+ }
164
+ // ---------- text formatting ----------
165
+ function fmtSize(bytes) {
166
+ if (bytes == null)
167
+ return "";
168
+ if (bytes < 1024)
169
+ return `${bytes} B`;
170
+ if (bytes < 1024 * 1024)
171
+ return `${(bytes / 1024).toFixed(1)} KB`;
172
+ return `${(bytes / 1024 / 1024).toFixed(2)} MB`;
173
+ }
174
+ function pad(s, width) {
175
+ if (s.length >= width)
176
+ return s;
177
+ return s + " ".repeat(width - s.length);
178
+ }
179
+ function fmtRow(p, indent = 0) {
180
+ const prefix = " ".repeat(indent);
181
+ const left = pad(`${prefix}${p.display}`, 56);
182
+ if (!p.exists) {
183
+ return `${left} MISSING`;
184
+ }
185
+ switch (p.kind) {
186
+ case "symlink": {
187
+ const tgt = p.linkTarget ? tilde(p.linkTarget) : "?";
188
+ const dangling = p.linkTargetExists === false ? " [DANGLING]" : "";
189
+ const meta = p.size != null ? ` ${fmtSize(p.size)} ${p.mtime ?? ""}` : "";
190
+ return `${left} LINK -> ${tgt}${dangling}${meta}`.trimEnd();
191
+ }
192
+ case "dir": {
193
+ const count = p.entryCount != null ? ` (${p.entryCount} entries)` : "";
194
+ return `${left} DIR${count}`;
195
+ }
196
+ case "file": {
197
+ const size = fmtSize(p.size);
198
+ const mtime = p.mtime ?? "";
199
+ return `${left} FILE ${pad(size, 9)} ${mtime}`.trimEnd();
200
+ }
201
+ default:
202
+ return `${left} MISSING`;
203
+ }
204
+ }
205
+ function fmtAgentBlock(a) {
206
+ const header = `[Agent: ${a.displayName} (${a.id}) | mode=${a.mcpFileMode} | installed=${a.installed}]`;
207
+ const lines = [header];
208
+ lines.push(fmtRow(a.root));
209
+ lines.push(fmtRow(a.mcpFile));
210
+ if (a.instructionFile)
211
+ lines.push(fmtRow(a.instructionFile));
212
+ lines.push(fmtRow(a.skillsDir));
213
+ if (a.skillEntries.length === 0) {
214
+ lines.push(" (no skill entries)");
215
+ }
216
+ else {
217
+ for (const e of a.skillEntries) {
218
+ lines.push(fmtRow(e, 2));
219
+ }
220
+ }
221
+ return lines.join("\n");
222
+ }
223
+ function fmtPlexusBlock(p) {
224
+ const lines = [];
225
+ lines.push("[Plexus Store]");
226
+ lines.push(fmtRow(p.root));
227
+ lines.push(fmtRow(p.config));
228
+ lines.push(fmtRow(p.team));
229
+ lines.push(fmtRow(p.teamMcpServers));
230
+ lines.push(" team skills:");
231
+ if (p.teamSkillEntries.length === 0)
232
+ lines.push(" (empty)");
233
+ for (const e of p.teamSkillEntries)
234
+ lines.push(fmtRow(e, 4));
235
+ lines.push(fmtRow(p.personal));
236
+ lines.push(fmtRow(p.personalMcpServers));
237
+ lines.push(" personal skills:");
238
+ if (p.personalSkillEntries.length === 0)
239
+ lines.push(" (empty)");
240
+ for (const e of p.personalSkillEntries)
241
+ lines.push(fmtRow(e, 4));
242
+ lines.push(fmtRow(p.cacheMcp));
243
+ for (const e of p.cacheMcpEntries)
244
+ lines.push(fmtRow(e, 2));
245
+ lines.push(fmtRow(p.backups));
246
+ lines.push(` snapshots: ${p.backupCount} (ring buffer keeps 20)`);
247
+ return lines.join("\n");
248
+ }
249
+ export function formatDebugSnapshot(s, version) {
250
+ const lines = [];
251
+ lines.push(`=== Plexus${version ? ` v${version}` : ""} — Debug Snapshot ===`);
252
+ lines.push(`generated: ${s.generatedAt}`);
253
+ lines.push(`host: ${s.host.platform} ${s.host.release} node: ${s.host.node} home: ${s.host.home}`);
254
+ lines.push("");
255
+ lines.push(fmtPlexusBlock(s.plexus));
256
+ for (const a of s.agents) {
257
+ lines.push("");
258
+ lines.push(fmtAgentBlock(a));
259
+ }
260
+ lines.push("");
261
+ return lines.join("\n");
262
+ }
263
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/debug/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,65 @@
1
+ import type { AgentId, SyncResult } from "../types.js";
2
+ /**
3
+ * "Effective view" = the union of items present in any agent's native
4
+ * config OR in the Plexus store. Each item is keyed by id; the row tells
5
+ * you which agents currently have it and where authority lives.
6
+ *
7
+ * This is what the MCP Servers and Skills pages show.
8
+ */
9
+ export type ItemAuthority = "personal" | "team" | "native";
10
+ export interface EffectiveMcpRow {
11
+ id: string;
12
+ command: string;
13
+ args?: string[];
14
+ env?: Record<string, string>;
15
+ /** Where the canonical record lives. */
16
+ authority: ItemAuthority;
17
+ /** Agents that currently have this item (native or via store). */
18
+ effectiveAgents: AgentId[];
19
+ /** Agents that have it natively (read from each agent's mcp config). */
20
+ nativeAgents: AgentId[];
21
+ /** If in store: the store's enabledAgents. */
22
+ enabledAgents?: AgentId[];
23
+ }
24
+ export interface EffectiveSkillRow {
25
+ id: string;
26
+ name: string;
27
+ description?: string;
28
+ authority: ItemAuthority;
29
+ effectiveAgents: AgentId[];
30
+ nativeAgents: AgentId[];
31
+ enabledAgents?: AgentId[];
32
+ }
33
+ export declare function getEffectiveMcp(): Promise<EffectiveMcpRow[]>;
34
+ export declare function getEffectiveSkills(): Promise<EffectiveSkillRow[]>;
35
+ /**
36
+ * Toggle whether `agent` should have `id` (an MCP server). Promotes a
37
+ * native-only item into the personal layer if needed, updates enabledAgents,
38
+ * and runs sync so the change is visible immediately.
39
+ *
40
+ * When promoting a native item to the personal layer for the first time, we
41
+ * sync EVERY native source agent too — that way the source agents stop
42
+ * carrying their own copies and start reading the canonical Plexus copy.
43
+ * For non-promote toggles we sync just the affected agent.
44
+ */
45
+ export declare function toggleMcpAgent(opts: {
46
+ id: string;
47
+ agent: AgentId;
48
+ enabled: boolean;
49
+ }): Promise<{
50
+ ok: boolean;
51
+ syncResult?: SyncResult;
52
+ message?: string;
53
+ }>;
54
+ /** Same idea for skills. Promote also re-syncs every native source. */
55
+ export declare function toggleSkillAgent(opts: {
56
+ id: string;
57
+ agent: AgentId;
58
+ enabled: boolean;
59
+ }): Promise<{
60
+ ok: boolean;
61
+ syncResult?: SyncResult;
62
+ message?: string;
63
+ }>;
64
+ export declare const __ALL_AGENTS: AgentId[];
65
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/effective/index.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,OAAO,EAAuC,UAAU,EAAE,MAAM,aAAa,CAAC;AAE5F;;;;;;GAMG;AAEH,MAAM,MAAM,aAAa,GAAG,UAAU,GAAG,MAAM,GAAG,QAAQ,CAAC;AAE3D,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC7B,wCAAwC;IACxC,SAAS,EAAE,aAAa,CAAC;IACzB,kEAAkE;IAClE,eAAe,EAAE,OAAO,EAAE,CAAC;IAC3B,wEAAwE;IACxE,YAAY,EAAE,OAAO,EAAE,CAAC;IACxB,8CAA8C;IAC9C,aAAa,CAAC,EAAE,OAAO,EAAE,CAAC;CAC3B;AAED,MAAM,WAAW,iBAAiB;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,aAAa,CAAC;IACzB,eAAe,EAAE,OAAO,EAAE,CAAC;IAC3B,YAAY,EAAE,OAAO,EAAE,CAAC;IACxB,aAAa,CAAC,EAAE,OAAO,EAAE,CAAC;CAC3B;AAED,wBAAsB,eAAe,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC,CA+ClE;AAED,wBAAsB,kBAAkB,IAAI,OAAO,CAAC,iBAAiB,EAAE,CAAC,CA6CvE;AAED;;;;;;;;;GASG;AACH,wBAAsB,cAAc,CAAC,IAAI,EAAE;IACzC,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,OAAO,CAAC;IACf,OAAO,EAAE,OAAO,CAAC;CAClB,GAAG,OAAO,CAAC;IAAE,EAAE,EAAE,OAAO,CAAC;IAAC,UAAU,CAAC,EAAE,UAAU,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAoDtE;AAED,uEAAuE;AACvE,wBAAsB,gBAAgB,CAAC,IAAI,EAAE;IAC3C,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,OAAO,CAAC;IACf,OAAO,EAAE,OAAO,CAAC;CAClB,GAAG,OAAO,CAAC;IAAE,EAAE,EAAE,OAAO,CAAC;IAAC,UAAU,CAAC,EAAE,UAAU,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAyCtE;AAyBD,eAAO,MAAM,YAAY,WAAa,CAAC"}
@@ -0,0 +1,227 @@
1
+ import { adapters } from "../agents/adapters/index.js";
2
+ import { detectAgents } from "../agents/detect.js";
3
+ import { snapshotAgentConfigs } from "../backup/index.js";
4
+ import { buildImportPreview } from "../import/from-agents.js";
5
+ import { readConfig } from "../store/config.js";
6
+ import { readMCP, writeMCP } from "../store/mcp.js";
7
+ import { mergeMCP, mergeSkills } from "../store/merge.js";
8
+ import { ALL_AGENTS } from "../store/paths.js";
9
+ import { readSkills, resolveSkillSourceDir, writeSkill } from "../store/skills.js";
10
+ export async function getEffectiveMcp() {
11
+ const [team, personal] = await Promise.all([readMCP("team"), readMCP("personal")]);
12
+ const merged = mergeMCP(team, personal);
13
+ const teamIds = new Set(team.map((m) => m.id));
14
+ const personalIds = new Set(personal.map((m) => m.id));
15
+ // Read native config across all agents (we reuse the import helper).
16
+ const nativePreview = await buildImportPreview({ storeMcp: [], storeSkills: [] });
17
+ const nativeById = new Map();
18
+ for (const cand of nativePreview.mcp) {
19
+ if (cand.kind !== "new")
20
+ continue;
21
+ nativeById.set(cand.item.id, {
22
+ sources: cand.sourceAgents,
23
+ first: cand.item,
24
+ });
25
+ }
26
+ const allIds = new Set([...merged.map((m) => m.id), ...nativeById.keys()]);
27
+ const rows = [];
28
+ for (const id of allIds) {
29
+ const storeRow = merged.find((m) => m.id === id);
30
+ const native = nativeById.get(id);
31
+ const nativeAgents = native?.sources ?? [];
32
+ const enabledAgents = storeRow?.enabledAgents ?? [];
33
+ const effectiveAgents = Array.from(new Set([...nativeAgents, ...enabledAgents]));
34
+ let authority;
35
+ if (personalIds.has(id))
36
+ authority = "personal";
37
+ else if (teamIds.has(id))
38
+ authority = "team";
39
+ else
40
+ authority = "native";
41
+ const base = storeRow ?? native.first;
42
+ rows.push({
43
+ id,
44
+ command: base.command,
45
+ args: base.args,
46
+ env: base.env,
47
+ authority,
48
+ effectiveAgents,
49
+ nativeAgents,
50
+ enabledAgents: storeRow ? enabledAgents : undefined,
51
+ });
52
+ }
53
+ rows.sort((a, b) => a.id.localeCompare(b.id));
54
+ return rows;
55
+ }
56
+ export async function getEffectiveSkills() {
57
+ const [team, personal] = await Promise.all([readSkills("team"), readSkills("personal")]);
58
+ const merged = mergeSkills(team, personal);
59
+ const teamIds = new Set(team.map((s) => s.id));
60
+ const personalIds = new Set(personal.map((s) => s.id));
61
+ const nativePreview = await buildImportPreview({ storeMcp: [], storeSkills: [] });
62
+ const nativeById = new Map();
63
+ for (const cand of nativePreview.skills) {
64
+ if (cand.kind !== "new")
65
+ continue;
66
+ nativeById.set(cand.item.id, {
67
+ sources: cand.sourceAgents,
68
+ first: cand.item,
69
+ });
70
+ }
71
+ const allIds = new Set([...merged.map((s) => s.id), ...nativeById.keys()]);
72
+ const rows = [];
73
+ for (const id of allIds) {
74
+ const storeRow = merged.find((s) => s.id === id);
75
+ const native = nativeById.get(id);
76
+ const nativeAgents = native?.sources ?? [];
77
+ const enabledAgents = storeRow?.enabledAgents ?? [];
78
+ const effectiveAgents = Array.from(new Set([...nativeAgents, ...enabledAgents]));
79
+ let authority;
80
+ if (personalIds.has(id))
81
+ authority = "personal";
82
+ else if (teamIds.has(id))
83
+ authority = "team";
84
+ else
85
+ authority = "native";
86
+ const base = storeRow ?? native.first;
87
+ rows.push({
88
+ id,
89
+ name: base.name,
90
+ description: base.description,
91
+ authority,
92
+ effectiveAgents,
93
+ nativeAgents,
94
+ enabledAgents: storeRow ? enabledAgents : undefined,
95
+ });
96
+ }
97
+ rows.sort((a, b) => a.id.localeCompare(b.id));
98
+ return rows;
99
+ }
100
+ /**
101
+ * Toggle whether `agent` should have `id` (an MCP server). Promotes a
102
+ * native-only item into the personal layer if needed, updates enabledAgents,
103
+ * and runs sync so the change is visible immediately.
104
+ *
105
+ * When promoting a native item to the personal layer for the first time, we
106
+ * sync EVERY native source agent too — that way the source agents stop
107
+ * carrying their own copies and start reading the canonical Plexus copy.
108
+ * For non-promote toggles we sync just the affected agent.
109
+ */
110
+ export async function toggleMcpAgent(opts) {
111
+ const personal = await readMCP("personal");
112
+ const team = await readMCP("team");
113
+ const personalIdx = personal.findIndex((m) => m.id === opts.id);
114
+ const teamRow = team.find((m) => m.id === opts.id);
115
+ const nextPersonal = [...personal];
116
+ let agentsToSync = [opts.agent];
117
+ if (personalIdx >= 0) {
118
+ const row = { ...nextPersonal[personalIdx] };
119
+ if (opts.enabled) {
120
+ if (!row.enabledAgents.includes(opts.agent)) {
121
+ row.enabledAgents = [...row.enabledAgents, opts.agent];
122
+ }
123
+ }
124
+ else {
125
+ row.enabledAgents = row.enabledAgents.filter((a) => a !== opts.agent);
126
+ }
127
+ nextPersonal[personalIdx] = row;
128
+ }
129
+ else if (teamRow) {
130
+ const enabledAgents = opts.enabled
131
+ ? Array.from(new Set([...teamRow.enabledAgents, opts.agent]))
132
+ : teamRow.enabledAgents.filter((a) => a !== opts.agent);
133
+ nextPersonal.push({ ...teamRow, layer: "personal", enabledAgents });
134
+ }
135
+ else {
136
+ // Promote: pull from any agent's native config and copy to personal.
137
+ const nativePreview = await buildImportPreview({ storeMcp: [], storeSkills: [] });
138
+ const cand = nativePreview.mcp.find((c) => c.kind === "new" && c.item.id === opts.id);
139
+ if (!cand || cand.kind !== "new") {
140
+ return { ok: false, message: `Item ${opts.id} not found in any agent's native config` };
141
+ }
142
+ const enabledAgents = opts.enabled
143
+ ? Array.from(new Set([...cand.sourceAgents, opts.agent]))
144
+ : cand.sourceAgents.filter((a) => a !== opts.agent);
145
+ nextPersonal.push({ ...cand.item, layer: "personal", enabledAgents });
146
+ // Re-sync every native source so they pick up the canonical Plexus copy.
147
+ agentsToSync = Array.from(new Set([...cand.sourceAgents, opts.agent]));
148
+ }
149
+ await writeMCP("personal", nextPersonal);
150
+ // One backup snapshot per toggle, even if we sync multiple agents.
151
+ const backup = await snapshotAgentConfigs({
152
+ reason: `toggleMcpAgent ${opts.id} ${opts.agent} ${opts.enabled}`,
153
+ }).catch(() => undefined);
154
+ const results = [];
155
+ for (const a of agentsToSync) {
156
+ const r = await syncSingleAgent(a);
157
+ if (r)
158
+ results.push(r);
159
+ }
160
+ return { ok: true, syncResult: results[0], message: backup?.dir };
161
+ }
162
+ /** Same idea for skills. Promote also re-syncs every native source. */
163
+ export async function toggleSkillAgent(opts) {
164
+ const personal = await readSkills("personal");
165
+ const team = await readSkills("team");
166
+ const personalRow = personal.find((s) => s.id === opts.id);
167
+ const teamRow = team.find((s) => s.id === opts.id);
168
+ let agentsToSync = [opts.agent];
169
+ if (personalRow) {
170
+ const enabledAgents = opts.enabled
171
+ ? Array.from(new Set([...personalRow.enabledAgents, opts.agent]))
172
+ : personalRow.enabledAgents.filter((a) => a !== opts.agent);
173
+ await writeSkill({ ...personalRow, enabledAgents });
174
+ }
175
+ else if (teamRow) {
176
+ const enabledAgents = opts.enabled
177
+ ? Array.from(new Set([...teamRow.enabledAgents, opts.agent]))
178
+ : teamRow.enabledAgents.filter((a) => a !== opts.agent);
179
+ await writeSkill({ ...teamRow, layer: "personal", enabledAgents });
180
+ }
181
+ else {
182
+ const nativePreview = await buildImportPreview({ storeMcp: [], storeSkills: [] });
183
+ const cand = nativePreview.skills.find((c) => c.kind === "new" && c.item.id === opts.id);
184
+ if (!cand || cand.kind !== "new") {
185
+ return { ok: false, message: `Skill ${opts.id} not found in any agent's native config` };
186
+ }
187
+ const enabledAgents = opts.enabled
188
+ ? Array.from(new Set([...cand.sourceAgents, opts.agent]))
189
+ : cand.sourceAgents.filter((a) => a !== opts.agent);
190
+ await writeSkill({ ...cand.item, layer: "personal", enabledAgents });
191
+ agentsToSync = Array.from(new Set([...cand.sourceAgents, opts.agent]));
192
+ }
193
+ const backup = await snapshotAgentConfigs({
194
+ reason: `toggleSkillAgent ${opts.id} ${opts.agent} ${opts.enabled}`,
195
+ }).catch(() => undefined);
196
+ const results = [];
197
+ for (const a of agentsToSync) {
198
+ const r = await syncSingleAgent(a);
199
+ if (r)
200
+ results.push(r);
201
+ }
202
+ return { ok: true, syncResult: results[0], message: backup?.dir };
203
+ }
204
+ async function syncSingleAgent(agentId) {
205
+ const config = await readConfig();
206
+ const detected = detectAgents();
207
+ const target = detected.find((d) => d.id === agentId);
208
+ if (!target?.installed || config.agents[agentId] === false)
209
+ return undefined;
210
+ const [team, personal] = await Promise.all([readMCP("team"), readMCP("personal")]);
211
+ const [teamSk, personalSk] = await Promise.all([readSkills("team"), readSkills("personal")]);
212
+ const mergedMcp = mergeMCP(team, personal);
213
+ const mergedSkills = mergeSkills(teamSk, personalSk);
214
+ const skillSourcePaths = new Map();
215
+ for (const s of mergedSkills) {
216
+ skillSourcePaths.set(s.id, resolveSkillSourceDir(s.layer, s.id));
217
+ }
218
+ return adapters[agentId].apply({
219
+ agentId,
220
+ mcp: mergedMcp,
221
+ skills: mergedSkills,
222
+ skillSourcePaths,
223
+ syncStrategy: config.syncStrategy ?? "symlink",
224
+ });
225
+ }
226
+ export const __ALL_AGENTS = ALL_AGENTS;
227
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/effective/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,59 @@
1
+ import type { AgentId, MCPServerDef, SkillDef } from "../types.js";
2
+ /**
3
+ * Import existing on-disk configuration from each installed AI agent into
4
+ * the Plexus personal layer.
5
+ *
6
+ * Three outcomes per item id:
7
+ * - `new` id is not in the Plexus store at all → write a new entry
8
+ * (enabledAgents = union of source agents that already have it).
9
+ * - `extend` id is already in the store, but at least one source agent that
10
+ * currently has it natively is missing from `enabledAgents` →
11
+ * add those agents to `enabledAgents` of the existing entry.
12
+ * - `managed` id is in the store and every source agent already appears in
13
+ * `enabledAgents` → nothing to do (silently skipped).
14
+ *
15
+ * Importing never mutates the agents' native files. Only the Plexus personal
16
+ * layer is touched, and only by `applyImport`.
17
+ */
18
+ export interface NewItem<T> {
19
+ kind: "new";
20
+ item: T;
21
+ sourceAgents: AgentId[];
22
+ }
23
+ export interface ExtendItem<T> {
24
+ kind: "extend";
25
+ /** The id of the existing store entry. */
26
+ id: string;
27
+ displayName: string;
28
+ /** Agents to add to the existing entry's enabledAgents. */
29
+ agentsToAdd: AgentId[];
30
+ /** Existing enabledAgents (for display). */
31
+ currentAgents: AgentId[];
32
+ }
33
+ export type MCPCandidate = NewItem<MCPServerDef> | ExtendItem<MCPServerDef>;
34
+ export type SkillCandidate = NewItem<SkillDef> | ExtendItem<SkillDef>;
35
+ export interface ImportPreview {
36
+ mcp: MCPCandidate[];
37
+ skills: SkillCandidate[];
38
+ /** Per-agent counts of items found in the agent's native config. */
39
+ perAgent: Record<AgentId, {
40
+ mcp: number;
41
+ skills: number;
42
+ }>;
43
+ }
44
+ export declare function readNativeMcpFromAgent(agentId: AgentId): Promise<Array<{
45
+ id: string;
46
+ command: string;
47
+ args?: string[];
48
+ env?: Record<string, string>;
49
+ url?: string;
50
+ httpUrl?: string;
51
+ headers?: Record<string, string>;
52
+ }>>;
53
+ export declare function readNativeSkillsFromAgent(agentId: AgentId): Promise<SkillDef[]>;
54
+ export interface BuildImportPreviewArgs {
55
+ storeMcp: MCPServerDef[];
56
+ storeSkills: SkillDef[];
57
+ }
58
+ export declare function buildImportPreview(args: BuildImportPreviewArgs): Promise<ImportPreview>;
59
+ //# sourceMappingURL=from-agents.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"from-agents.d.ts","sourceRoot":"","sources":["../../src/import/from-agents.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAEnE;;;;;;;;;;;;;;;GAeG;AAEH,MAAM,WAAW,OAAO,CAAC,CAAC;IACxB,IAAI,EAAE,KAAK,CAAC;IACZ,IAAI,EAAE,CAAC,CAAC;IACR,YAAY,EAAE,OAAO,EAAE,CAAC;CACzB;AAED,MAAM,WAAW,UAAU,CAAC,CAAC;IAC3B,IAAI,EAAE,QAAQ,CAAC;IACf,0CAA0C;IAC1C,EAAE,EAAE,MAAM,CAAC;IACX,WAAW,EAAE,MAAM,CAAC;IACpB,2DAA2D;IAC3D,WAAW,EAAE,OAAO,EAAE,CAAC;IACvB,4CAA4C;IAC5C,aAAa,EAAE,OAAO,EAAE,CAAC;CAC1B;AAED,MAAM,MAAM,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC,GAAG,UAAU,CAAC,YAAY,CAAC,CAAC;AAC5E,MAAM,MAAM,cAAc,GAAG,OAAO,CAAC,QAAQ,CAAC,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC;AAEtE,MAAM,WAAW,aAAa;IAC5B,GAAG,EAAE,YAAY,EAAE,CAAC;IACpB,MAAM,EAAE,cAAc,EAAE,CAAC;IACzB,oEAAoE;IACpE,QAAQ,EAAE,MAAM,CAAC,OAAO,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CAC5D;AAED,wBAAsB,sBAAsB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CACrE,KAAK,CAAC;IACJ,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC7B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAClC,CAAC,CACH,CAuBA;AA8BD,wBAAsB,yBAAyB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC,CA8DrF;AAED,MAAM,WAAW,sBAAsB;IACrC,QAAQ,EAAE,YAAY,EAAE,CAAC;IACzB,WAAW,EAAE,QAAQ,EAAE,CAAC;CACzB;AAED,wBAAsB,kBAAkB,CAAC,IAAI,EAAE,sBAAsB,GAAG,OAAO,CAAC,aAAa,CAAC,CAkH7F"}