expxagents 0.19.0 → 0.20.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (38) hide show
  1. package/assets/mcps/_catalog.yaml +17 -0
  2. package/assets/mcps/figma.mcp.yaml +35 -0
  3. package/assets/mcps/github.mcp.yaml +44 -0
  4. package/assets/mcps/linear.mcp.yaml +37 -0
  5. package/assets/mcps/notion.mcp.yaml +37 -0
  6. package/assets/mcps/pencil.mcp.yaml +32 -0
  7. package/assets/mcps/postgresql.mcp.yaml +39 -0
  8. package/assets/mcps/sentry.mcp.yaml +41 -0
  9. package/assets/mcps/slack.mcp.yaml +37 -0
  10. package/assets/mcps/vercel.mcp.yaml +39 -0
  11. package/dist/cli/src/commands/doctor.js +26 -10
  12. package/dist/cli/src/commands/init.js +35 -15
  13. package/dist/cli/src/commands/mcp.d.ts +2 -0
  14. package/dist/cli/src/commands/mcp.js +155 -0
  15. package/dist/cli/src/index.js +2 -0
  16. package/dist/cli/src/mcp/__tests__/catalog.test.d.ts +1 -0
  17. package/dist/cli/src/mcp/__tests__/catalog.test.js +101 -0
  18. package/dist/cli/src/mcp/__tests__/detect.test.d.ts +1 -0
  19. package/dist/cli/src/mcp/__tests__/detect.test.js +84 -0
  20. package/dist/cli/src/mcp/__tests__/setup.test.d.ts +1 -0
  21. package/dist/cli/src/mcp/__tests__/setup.test.js +75 -0
  22. package/dist/cli/src/mcp/__tests__/validate.test.d.ts +1 -0
  23. package/dist/cli/src/mcp/__tests__/validate.test.js +42 -0
  24. package/dist/cli/src/mcp/catalog.d.ts +4 -0
  25. package/dist/cli/src/mcp/catalog.js +53 -0
  26. package/dist/cli/src/mcp/detect.d.ts +9 -0
  27. package/dist/cli/src/mcp/detect.js +75 -0
  28. package/dist/cli/src/mcp/setup.d.ts +4 -0
  29. package/dist/cli/src/mcp/setup.js +56 -0
  30. package/dist/cli/src/mcp/types.d.ts +68 -0
  31. package/dist/cli/src/mcp/types.js +1 -0
  32. package/dist/cli/src/mcp/validate.d.ts +2 -0
  33. package/dist/cli/src/mcp/validate.js +23 -0
  34. package/dist/cli/src/pencil/detect.d.ts +6 -11
  35. package/dist/cli/src/pencil/detect.js +8 -39
  36. package/dist/core/squad-loader.d.ts +1 -0
  37. package/dist/core/squad-loader.js +2 -0
  38. package/package.json +1 -1
@@ -1,46 +1,15 @@
1
- import fs from 'fs';
2
- import path from 'path';
3
- import os from 'os';
4
- const EXTENSION_PREFIX = 'highagency.pencildev-';
5
1
  /**
6
- * Detect Pencil VSCode extension in the given extensions directory.
7
- * Returns info about the latest installed version, or null if not found.
2
+ * @deprecated Use cli/src/mcp/detect.ts instead. This file re-exports for backwards compatibility.
8
3
  */
4
+ export { resolvePlatformBinary } from '../mcp/detect.js';
5
+ import { detectExtension } from '../mcp/detect.js';
6
+ import path from 'path';
7
+ const EXTENSION_PREFIX = 'highagency.pencildev-';
8
+ /** @deprecated Use detectExtension from cli/src/mcp/detect.ts */
9
9
  export function detectPencilExtension(extensionsDir) {
10
- const dir = extensionsDir ?? path.join(os.homedir(), '.vscode', 'extensions');
11
- if (!fs.existsSync(dir))
12
- return null;
13
- const entries = fs.readdirSync(dir).filter(e => e.startsWith(EXTENSION_PREFIX));
14
- if (entries.length === 0)
15
- return null;
16
- entries.sort((a, b) => {
17
- const vA = a.slice(EXTENSION_PREFIX.length);
18
- const vB = b.slice(EXTENSION_PREFIX.length);
19
- return vA.localeCompare(vB, undefined, { numeric: true, sensitivity: 'base' });
20
- });
21
- const latest = entries[entries.length - 1];
22
- const version = latest.slice(EXTENSION_PREFIX.length);
23
- return {
24
- version,
25
- extensionPath: path.join(dir, latest),
26
- };
10
+ return detectExtension(EXTENSION_PREFIX, extensionsDir);
27
11
  }
28
- /**
29
- * Resolve the correct MCP server binary name for the current platform.
30
- */
31
- export function resolvePlatformBinary(platform, arch) {
32
- const p = platform ?? process.platform;
33
- const a = arch ?? process.arch;
34
- // Windows: only x64 binaries are distributed by Pencil
35
- if (p === 'win32')
36
- return `mcp-server-win32-x64.exe`;
37
- if (p === 'darwin')
38
- return `mcp-server-darwin-${a}`;
39
- return `mcp-server-linux-${a}`;
40
- }
41
- /**
42
- * Build the .mcp.json config object for Pencil MCP.
43
- */
12
+ /** @deprecated Use writeMcpConfig from cli/src/mcp/setup.ts */
44
13
  export function buildMcpConfig(info, binaryName) {
45
14
  return {
46
15
  mcpServers: {
@@ -59,6 +59,7 @@ export interface SquadConfig {
59
59
  };
60
60
  spendControl?: SpendControlConfig;
61
61
  visualTemplates?: VisualTemplatesConfig;
62
+ mcps?: string[];
62
63
  };
63
64
  }
64
65
  export declare function loadSquad(squadDir: string): SquadConfig;
@@ -104,6 +104,7 @@ export function loadSquad(squadDir) {
104
104
  count: typeof rawVisual.count === 'number' ? rawVisual.count : undefined,
105
105
  };
106
106
  }
107
+ const mcps = Array.isArray(squad.mcps) ? squad.mcps : [];
107
108
  return {
108
109
  squad: {
109
110
  code: squad.code,
@@ -122,6 +123,7 @@ export function loadSquad(squadDir) {
122
123
  webhooks,
123
124
  spendControl,
124
125
  visualTemplates,
126
+ mcps,
125
127
  },
126
128
  };
127
129
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "expxagents",
3
- "version": "0.19.0",
3
+ "version": "0.20.0",
4
4
  "description": "Multi-agent orchestration platform for AI squads",
5
5
  "author": "ExpxAgents",
6
6
  "license": "MIT",