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.
- package/dist/bin.d.ts +3 -0
- package/dist/bin.d.ts.map +1 -0
- package/dist/bin.js +175 -0
- package/dist/bin.js.map +1 -0
- package/node_modules/plexus-agent-config-core/dist/agents/adapters/base.d.ts +38 -0
- package/node_modules/plexus-agent-config-core/dist/agents/adapters/base.d.ts.map +1 -0
- package/node_modules/plexus-agent-config-core/dist/agents/adapters/base.js +125 -0
- package/node_modules/plexus-agent-config-core/dist/agents/adapters/base.js.map +1 -0
- package/node_modules/plexus-agent-config-core/dist/agents/adapters/codex.d.ts +9 -0
- package/node_modules/plexus-agent-config-core/dist/agents/adapters/codex.d.ts.map +1 -0
- package/node_modules/plexus-agent-config-core/dist/agents/adapters/codex.js +96 -0
- package/node_modules/plexus-agent-config-core/dist/agents/adapters/codex.js.map +1 -0
- package/node_modules/plexus-agent-config-core/dist/agents/adapters/index.d.ts +8 -0
- package/node_modules/plexus-agent-config-core/dist/agents/adapters/index.d.ts.map +1 -0
- package/node_modules/plexus-agent-config-core/dist/agents/adapters/index.js +12 -0
- package/node_modules/plexus-agent-config-core/dist/agents/adapters/index.js.map +1 -0
- package/node_modules/plexus-agent-config-core/dist/agents/adapters/json-mcp.d.ts +25 -0
- package/node_modules/plexus-agent-config-core/dist/agents/adapters/json-mcp.d.ts.map +1 -0
- package/node_modules/plexus-agent-config-core/dist/agents/adapters/json-mcp.js +182 -0
- package/node_modules/plexus-agent-config-core/dist/agents/adapters/json-mcp.js.map +1 -0
- package/node_modules/plexus-agent-config-core/dist/agents/catalog.d.ts +15 -0
- package/node_modules/plexus-agent-config-core/dist/agents/catalog.d.ts.map +1 -0
- package/node_modules/plexus-agent-config-core/dist/agents/catalog.js +153 -0
- package/node_modules/plexus-agent-config-core/dist/agents/catalog.js.map +1 -0
- package/node_modules/plexus-agent-config-core/dist/agents/detect.d.ts +14 -0
- package/node_modules/plexus-agent-config-core/dist/agents/detect.d.ts.map +1 -0
- package/node_modules/plexus-agent-config-core/dist/agents/detect.js +92 -0
- package/node_modules/plexus-agent-config-core/dist/agents/detect.js.map +1 -0
- package/node_modules/plexus-agent-config-core/dist/agents/index.d.ts +5 -0
- package/node_modules/plexus-agent-config-core/dist/agents/index.d.ts.map +1 -0
- package/node_modules/plexus-agent-config-core/dist/agents/index.js +5 -0
- package/node_modules/plexus-agent-config-core/dist/agents/index.js.map +1 -0
- package/node_modules/plexus-agent-config-core/dist/agents/inspect.d.ts +74 -0
- package/node_modules/plexus-agent-config-core/dist/agents/inspect.d.ts.map +1 -0
- package/node_modules/plexus-agent-config-core/dist/agents/inspect.js +169 -0
- package/node_modules/plexus-agent-config-core/dist/agents/inspect.js.map +1 -0
- package/node_modules/plexus-agent-config-core/dist/backup/index.d.ts +70 -0
- package/node_modules/plexus-agent-config-core/dist/backup/index.d.ts.map +1 -0
- package/node_modules/plexus-agent-config-core/dist/backup/index.js +258 -0
- package/node_modules/plexus-agent-config-core/dist/backup/index.js.map +1 -0
- package/node_modules/plexus-agent-config-core/dist/debug/index.d.ts +71 -0
- package/node_modules/plexus-agent-config-core/dist/debug/index.d.ts.map +1 -0
- package/node_modules/plexus-agent-config-core/dist/debug/index.js +263 -0
- package/node_modules/plexus-agent-config-core/dist/debug/index.js.map +1 -0
- package/node_modules/plexus-agent-config-core/dist/effective/index.d.ts +65 -0
- package/node_modules/plexus-agent-config-core/dist/effective/index.d.ts.map +1 -0
- package/node_modules/plexus-agent-config-core/dist/effective/index.js +227 -0
- package/node_modules/plexus-agent-config-core/dist/effective/index.js.map +1 -0
- package/node_modules/plexus-agent-config-core/dist/import/from-agents.d.ts +59 -0
- package/node_modules/plexus-agent-config-core/dist/import/from-agents.d.ts.map +1 -0
- package/node_modules/plexus-agent-config-core/dist/import/from-agents.js +212 -0
- package/node_modules/plexus-agent-config-core/dist/import/from-agents.js.map +1 -0
- package/node_modules/plexus-agent-config-core/dist/import/index.d.ts +26 -0
- package/node_modules/plexus-agent-config-core/dist/import/index.d.ts.map +1 -0
- package/node_modules/plexus-agent-config-core/dist/import/index.js +100 -0
- package/node_modules/plexus-agent-config-core/dist/import/index.js.map +1 -0
- package/node_modules/plexus-agent-config-core/dist/index.d.ts +12 -0
- package/node_modules/plexus-agent-config-core/dist/index.d.ts.map +1 -0
- package/node_modules/plexus-agent-config-core/dist/index.js +12 -0
- package/node_modules/plexus-agent-config-core/dist/index.js.map +1 -0
- package/node_modules/plexus-agent-config-core/dist/rules/index.d.ts +6 -0
- package/node_modules/plexus-agent-config-core/dist/rules/index.d.ts.map +1 -0
- package/node_modules/plexus-agent-config-core/dist/rules/index.js +292 -0
- package/node_modules/plexus-agent-config-core/dist/rules/index.js.map +1 -0
- package/node_modules/plexus-agent-config-core/dist/spread/index.d.ts +38 -0
- package/node_modules/plexus-agent-config-core/dist/spread/index.d.ts.map +1 -0
- package/node_modules/plexus-agent-config-core/dist/spread/index.js +190 -0
- package/node_modules/plexus-agent-config-core/dist/spread/index.js.map +1 -0
- package/node_modules/plexus-agent-config-core/dist/store/config.d.ts +5 -0
- package/node_modules/plexus-agent-config-core/dist/store/config.d.ts.map +1 -0
- package/node_modules/plexus-agent-config-core/dist/store/config.js +62 -0
- package/node_modules/plexus-agent-config-core/dist/store/config.js.map +1 -0
- package/node_modules/plexus-agent-config-core/dist/store/custom-agents.d.ts +45 -0
- package/node_modules/plexus-agent-config-core/dist/store/custom-agents.d.ts.map +1 -0
- package/node_modules/plexus-agent-config-core/dist/store/custom-agents.js +103 -0
- package/node_modules/plexus-agent-config-core/dist/store/custom-agents.js.map +1 -0
- package/node_modules/plexus-agent-config-core/dist/store/fs-utils.d.ts +16 -0
- package/node_modules/plexus-agent-config-core/dist/store/fs-utils.d.ts.map +1 -0
- package/node_modules/plexus-agent-config-core/dist/store/fs-utils.js +45 -0
- package/node_modules/plexus-agent-config-core/dist/store/fs-utils.js.map +1 -0
- package/node_modules/plexus-agent-config-core/dist/store/index.d.ts +9 -0
- package/node_modules/plexus-agent-config-core/dist/store/index.d.ts.map +1 -0
- package/node_modules/plexus-agent-config-core/dist/store/index.js +9 -0
- package/node_modules/plexus-agent-config-core/dist/store/index.js.map +1 -0
- package/node_modules/plexus-agent-config-core/dist/store/mcp.d.ts +5 -0
- package/node_modules/plexus-agent-config-core/dist/store/mcp.d.ts.map +1 -0
- package/node_modules/plexus-agent-config-core/dist/store/mcp.js +30 -0
- package/node_modules/plexus-agent-config-core/dist/store/mcp.js.map +1 -0
- package/node_modules/plexus-agent-config-core/dist/store/merge.d.ts +15 -0
- package/node_modules/plexus-agent-config-core/dist/store/merge.d.ts.map +1 -0
- package/node_modules/plexus-agent-config-core/dist/store/merge.js +28 -0
- package/node_modules/plexus-agent-config-core/dist/store/merge.js.map +1 -0
- package/node_modules/plexus-agent-config-core/dist/store/paths.d.ts +22 -0
- package/node_modules/plexus-agent-config-core/dist/store/paths.d.ts.map +1 -0
- package/node_modules/plexus-agent-config-core/dist/store/paths.js +107 -0
- package/node_modules/plexus-agent-config-core/dist/store/paths.js.map +1 -0
- package/node_modules/plexus-agent-config-core/dist/store/rules.d.ts +12 -0
- package/node_modules/plexus-agent-config-core/dist/store/rules.d.ts.map +1 -0
- package/node_modules/plexus-agent-config-core/dist/store/rules.js +32 -0
- package/node_modules/plexus-agent-config-core/dist/store/rules.js.map +1 -0
- package/node_modules/plexus-agent-config-core/dist/store/scaffolding.d.ts +11 -0
- package/node_modules/plexus-agent-config-core/dist/store/scaffolding.d.ts.map +1 -0
- package/node_modules/plexus-agent-config-core/dist/store/scaffolding.js +32 -0
- package/node_modules/plexus-agent-config-core/dist/store/scaffolding.js.map +1 -0
- package/node_modules/plexus-agent-config-core/dist/store/skills.d.ts +13 -0
- package/node_modules/plexus-agent-config-core/dist/store/skills.d.ts.map +1 -0
- package/node_modules/plexus-agent-config-core/dist/store/skills.js +84 -0
- package/node_modules/plexus-agent-config-core/dist/store/skills.js.map +1 -0
- package/node_modules/plexus-agent-config-core/dist/sync/index.d.ts +89 -0
- package/node_modules/plexus-agent-config-core/dist/sync/index.d.ts.map +1 -0
- package/node_modules/plexus-agent-config-core/dist/sync/index.js +423 -0
- package/node_modules/plexus-agent-config-core/dist/sync/index.js.map +1 -0
- package/node_modules/plexus-agent-config-core/dist/team/git.d.ts +23 -0
- package/node_modules/plexus-agent-config-core/dist/team/git.d.ts.map +1 -0
- package/node_modules/plexus-agent-config-core/dist/team/git.js +132 -0
- package/node_modules/plexus-agent-config-core/dist/team/git.js.map +1 -0
- package/node_modules/plexus-agent-config-core/dist/team/index.d.ts +2 -0
- package/node_modules/plexus-agent-config-core/dist/team/index.d.ts.map +1 -0
- package/node_modules/plexus-agent-config-core/dist/team/index.js +2 -0
- package/node_modules/plexus-agent-config-core/dist/team/index.js.map +1 -0
- package/node_modules/plexus-agent-config-core/dist/types.d.ts +142 -0
- package/node_modules/plexus-agent-config-core/dist/types.d.ts.map +1 -0
- package/node_modules/plexus-agent-config-core/dist/types.js +13 -0
- package/node_modules/plexus-agent-config-core/dist/types.js.map +1 -0
- package/node_modules/plexus-agent-config-core/package.json +29 -0
- package/node_modules/plexus-agent-config-web/.next/BUILD_ID +1 -0
- package/node_modules/plexus-agent-config-web/.next/app-path-routes-manifest.json +39 -0
- package/node_modules/plexus-agent-config-web/.next/build-manifest.json +20 -0
- package/node_modules/plexus-agent-config-web/.next/export-marker.json +6 -0
- package/node_modules/plexus-agent-config-web/.next/images-manifest.json +68 -0
- package/node_modules/plexus-agent-config-web/.next/next-minimal-server.js.nft.json +1 -0
- package/node_modules/plexus-agent-config-web/.next/next-server.js.nft.json +1 -0
- package/node_modules/plexus-agent-config-web/.next/package.json +1 -0
- package/node_modules/plexus-agent-config-web/.next/prerender-manifest.json +36 -0
- package/node_modules/plexus-agent-config-web/.next/react-loadable-manifest.json +1 -0
- package/node_modules/plexus-agent-config-web/.next/required-server-files.js +337 -0
- package/node_modules/plexus-agent-config-web/.next/required-server-files.json +337 -0
- package/node_modules/plexus-agent-config-web/.next/routes-manifest.json +286 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/_global-error/page.js +32 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/_global-error/page.js.nft.json +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/_global-error/page_client-reference-manifest.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/_global-error.html +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/_global-error.meta +16 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/_global-error.rsc +14 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/_global-error.segments/_full.segment.rsc +14 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +5 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/_global-error.segments/_global-error.segment.rsc +5 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/_global-error.segments/_head.segment.rsc +5 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/_global-error.segments/_index.segment.rsc +5 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/_not-found/page.js +2 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/_not-found/page.js.nft.json +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/_not-found/page_client-reference-manifest.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/about/page.js +2 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/about/page.js.nft.json +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/about/page_client-reference-manifest.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/agents/[id]/page.js +2 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/agents/[id]/page.js.nft.json +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/agents/[id]/page_client-reference-manifest.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/api/agent/[id]/file/route.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/api/agent/[id]/file/route.js.nft.json +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/api/agent/[id]/file/route_client-reference-manifest.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/api/agent/[id]/route.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/api/agent/[id]/route.js.nft.json +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/api/agent/[id]/route_client-reference-manifest.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/api/agent-catalog/route.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/api/agent-catalog/route.js.nft.json +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/api/agent-catalog/route_client-reference-manifest.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/api/agents/route.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/api/agents/route.js.nft.json +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/api/agents/route_client-reference-manifest.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/api/backups/[id]/restore/route.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/api/backups/[id]/restore/route.js.nft.json +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/api/backups/[id]/restore/route_client-reference-manifest.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/api/backups/route.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/api/backups/route.js.nft.json +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/api/backups/route_client-reference-manifest.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/api/config/route.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/api/config/route.js.nft.json +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/api/config/route_client-reference-manifest.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/api/custom-agents/[id]/file/route.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/api/custom-agents/[id]/file/route.js.nft.json +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/api/custom-agents/[id]/file/route_client-reference-manifest.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/api/custom-agents/[id]/route.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/api/custom-agents/[id]/route.js.nft.json +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/api/custom-agents/[id]/route_client-reference-manifest.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/api/custom-agents/route.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/api/custom-agents/route.js.nft.json +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/api/custom-agents/route_client-reference-manifest.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/api/debug/route.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/api/debug/route.js.nft.json +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/api/debug/route_client-reference-manifest.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/api/import/route.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/api/import/route.js.nft.json +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/api/import/route_client-reference-manifest.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/api/mcp/[id]/toggle/route.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/api/mcp/[id]/toggle/route.js.nft.json +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/api/mcp/[id]/toggle/route_client-reference-manifest.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/api/mcp/effective/route.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/api/mcp/effective/route.js.nft.json +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/api/mcp/effective/route_client-reference-manifest.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/api/mcp/route.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/api/mcp/route.js.nft.json +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/api/mcp/route_client-reference-manifest.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/api/rules/route.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/api/rules/route.js.nft.json +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/api/rules/route_client-reference-manifest.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/api/skills/[id]/route.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/api/skills/[id]/route.js.nft.json +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/api/skills/[id]/route_client-reference-manifest.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/api/skills/[id]/toggle/route.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/api/skills/[id]/toggle/route.js.nft.json +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/api/skills/[id]/toggle/route_client-reference-manifest.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/api/skills/effective/route.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/api/skills/effective/route.js.nft.json +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/api/skills/effective/route_client-reference-manifest.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/api/skills/route.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/api/skills/route.js.nft.json +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/api/skills/route_client-reference-manifest.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/api/spread/route.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/api/spread/route.js.nft.json +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/api/spread/route_client-reference-manifest.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/api/sync/route.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/api/sync/route.js.nft.json +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/api/sync/route_client-reference-manifest.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/api/team/route.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/api/team/route.js.nft.json +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/api/team/route_client-reference-manifest.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/backups/page.js +4 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/backups/page.js.nft.json +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/backups/page_client-reference-manifest.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/debug/page.js +2 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/debug/page.js.nft.json +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/debug/page_client-reference-manifest.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/mcp/page.js +2 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/mcp/page.js.nft.json +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/mcp/page_client-reference-manifest.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/mirror/page.js +2 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/mirror/page.js.nft.json +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/mirror/page_client-reference-manifest.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/page.js +2 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/page.js.nft.json +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/page_client-reference-manifest.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/rules/page.js +10 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/rules/page.js.nft.json +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/rules/page_client-reference-manifest.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/settings/page.js +2 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/settings/page.js.nft.json +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/settings/page_client-reference-manifest.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/skills/page.js +2 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/skills/page.js.nft.json +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/skills/page_client-reference-manifest.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/spread/page.js +2 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/spread/page.js.nft.json +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/spread/page_client-reference-manifest.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/team/page.js +2 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/team/page.js.nft.json +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app/team/page_client-reference-manifest.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/app-paths-manifest.json +39 -0
- package/node_modules/plexus-agent-config-web/.next/server/chunks/103.js +18 -0
- package/node_modules/plexus-agent-config-web/.next/server/chunks/174.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/chunks/380.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/chunks/397.js +26 -0
- package/node_modules/plexus-agent-config-web/.next/server/chunks/479.js +45 -0
- package/node_modules/plexus-agent-config-web/.next/server/chunks/620.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/chunks/750.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/chunks/921.js +5 -0
- package/node_modules/plexus-agent-config-web/.next/server/functions-config-manifest.json +4 -0
- package/node_modules/plexus-agent-config-web/.next/server/interception-route-rewrite-manifest.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/middleware-build-manifest.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/middleware-manifest.json +6 -0
- package/node_modules/plexus-agent-config-web/.next/server/middleware-react-loadable-manifest.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/next-font-manifest.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/next-font-manifest.json +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/pages/500.html +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/pages-manifest.json +3 -0
- package/node_modules/plexus-agent-config-web/.next/server/prefetch-hints.json +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/server-reference-manifest.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/server-reference-manifest.json +1 -0
- package/node_modules/plexus-agent-config-web/.next/server/webpack-runtime.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/static/chunks/1968-9d19293a29f03646.js +32 -0
- package/node_modules/plexus-agent-config-web/.next/static/chunks/3051-5eb2f5784474c658.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/static/chunks/3090-3702701c503793f0.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/static/chunks/4399-7cc367307a2c52a6.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/static/chunks/5587-933f3258279c6072.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/static/chunks/626-7ea78ce012c8d471.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/static/chunks/7814-1bc9d30b9724b70c.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/static/chunks/87c73c54-64138e17754e338c.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/static/chunks/app/_global-error/page-fe6298e28540d3d8.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/static/chunks/app/_not-found/page-303a3bb713044693.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/static/chunks/app/about/page-64a1ee41b87ea86c.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/static/chunks/app/agents/[id]/page-c3c89d8ae72c75c2.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/static/chunks/app/api/agent/[id]/file/route-fe6298e28540d3d8.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/static/chunks/app/api/agent/[id]/route-fe6298e28540d3d8.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/static/chunks/app/api/agent-catalog/route-fe6298e28540d3d8.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/static/chunks/app/api/agents/route-fe6298e28540d3d8.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/static/chunks/app/api/backups/[id]/restore/route-fe6298e28540d3d8.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/static/chunks/app/api/backups/route-fe6298e28540d3d8.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/static/chunks/app/api/config/route-fe6298e28540d3d8.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/static/chunks/app/api/custom-agents/[id]/file/route-fe6298e28540d3d8.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/static/chunks/app/api/custom-agents/[id]/route-fe6298e28540d3d8.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/static/chunks/app/api/custom-agents/route-fe6298e28540d3d8.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/static/chunks/app/api/debug/route-fe6298e28540d3d8.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/static/chunks/app/api/import/route-fe6298e28540d3d8.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/static/chunks/app/api/mcp/[id]/toggle/route-fe6298e28540d3d8.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/static/chunks/app/api/mcp/effective/route-fe6298e28540d3d8.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/static/chunks/app/api/mcp/route-fe6298e28540d3d8.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/static/chunks/app/api/rules/route-fe6298e28540d3d8.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/static/chunks/app/api/skills/[id]/route-fe6298e28540d3d8.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/static/chunks/app/api/skills/[id]/toggle/route-fe6298e28540d3d8.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/static/chunks/app/api/skills/effective/route-fe6298e28540d3d8.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/static/chunks/app/api/skills/route-fe6298e28540d3d8.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/static/chunks/app/api/spread/route-fe6298e28540d3d8.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/static/chunks/app/api/sync/route-fe6298e28540d3d8.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/static/chunks/app/api/team/route-fe6298e28540d3d8.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/static/chunks/app/backups/page-6842a663db4fab47.js +3 -0
- package/node_modules/plexus-agent-config-web/.next/static/chunks/app/debug/page-19e534df1d13eb98.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/static/chunks/app/layout-798b3b697994c5bf.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/static/chunks/app/mcp/page-d0d518965db961f1.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/static/chunks/app/mirror/page-e88f348e1a12487a.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/static/chunks/app/page-039dbbfad47ff659.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/static/chunks/app/rules/page-5bb663fc0ee9960b.js +9 -0
- package/node_modules/plexus-agent-config-web/.next/static/chunks/app/settings/page-8164e1d1a8a08038.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/static/chunks/app/skills/page-6067058898aa6e10.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/static/chunks/app/spread/page-fe6298e28540d3d8.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/static/chunks/app/team/page-edd7f54640e60e94.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/static/chunks/framework-2c03ddc44b9f482b.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/static/chunks/main-488dba80110e3bfb.js +5 -0
- package/node_modules/plexus-agent-config-web/.next/static/chunks/main-app-4c4bad3c22a66283.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/static/chunks/next/dist/client/components/builtin/app-error-fe6298e28540d3d8.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/static/chunks/next/dist/client/components/builtin/forbidden-fe6298e28540d3d8.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/static/chunks/next/dist/client/components/builtin/global-error-821a044f296e83b5.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/static/chunks/next/dist/client/components/builtin/not-found-fe6298e28540d3d8.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/static/chunks/next/dist/client/components/builtin/unauthorized-fe6298e28540d3d8.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/static/chunks/polyfills-42372ed130431b0a.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/static/chunks/webpack-dd4b9bd51624284c.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/static/css/eba3657411e6e6cd.css +5 -0
- package/node_modules/plexus-agent-config-web/.next/static/media/19cfc7226ec3afaa-s.woff2 +0 -0
- package/node_modules/plexus-agent-config-web/.next/static/media/21350d82a1f187e9-s.woff2 +0 -0
- package/node_modules/plexus-agent-config-web/.next/static/media/8e9860b6e62d6359-s.woff2 +0 -0
- package/node_modules/plexus-agent-config-web/.next/static/media/ba9851c3c22cd980-s.woff2 +0 -0
- package/node_modules/plexus-agent-config-web/.next/static/media/c5fe6dc8356a8c31-s.woff2 +0 -0
- package/node_modules/plexus-agent-config-web/.next/static/media/df0a9ae256c0569c-s.woff2 +0 -0
- package/node_modules/plexus-agent-config-web/.next/static/media/e4af272ccee01ff0-s.p.woff2 +0 -0
- package/node_modules/plexus-agent-config-web/.next/static/mvb1RnSdmeAxbYF-SjSfa/_buildManifest.js +1 -0
- package/node_modules/plexus-agent-config-web/.next/static/mvb1RnSdmeAxbYF-SjSfa/_ssgManifest.js +1 -0
- package/node_modules/plexus-agent-config-web/next.config.mjs +17 -0
- package/node_modules/plexus-agent-config-web/package.json +40 -0
- package/node_modules/plexus-agent-config-web/public/architecture/config-sharing-map.html +887 -0
- package/node_modules/plexus-agent-config-web/public/favicon.svg +5 -0
- 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"}
|