crewly 1.0.1 → 1.0.3

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 (103) hide show
  1. package/dist/backend/backend/src/services/agent/agent-heartbeat-monitor.service.js +1 -1
  2. package/dist/backend/backend/src/services/agent/agent-registration.service.d.ts.map +1 -1
  3. package/dist/backend/backend/src/services/agent/agent-registration.service.js +9 -3
  4. package/dist/backend/backend/src/services/agent/agent-registration.service.js.map +1 -1
  5. package/dist/backend/backend/src/services/marketplace/marketplace-installer.service.d.ts +28 -4
  6. package/dist/backend/backend/src/services/marketplace/marketplace-installer.service.d.ts.map +1 -1
  7. package/dist/backend/backend/src/services/marketplace/marketplace-installer.service.js +74 -7
  8. package/dist/backend/backend/src/services/marketplace/marketplace-installer.service.js.map +1 -1
  9. package/dist/backend/backend/src/services/orchestrator/orchestrator-heartbeat-monitor.service.js +1 -1
  10. package/dist/backend/backend/src/services/session/pty/pty-terminal-buffer.d.ts.map +1 -1
  11. package/dist/backend/backend/src/services/session/pty/pty-terminal-buffer.js +2 -1
  12. package/dist/backend/backend/src/services/session/pty/pty-terminal-buffer.js.map +1 -1
  13. package/dist/backend/backend/src/services/skill/skill-catalog.service.d.ts +11 -0
  14. package/dist/backend/backend/src/services/skill/skill-catalog.service.d.ts.map +1 -1
  15. package/dist/backend/backend/src/services/skill/skill-catalog.service.js +46 -3
  16. package/dist/backend/backend/src/services/skill/skill-catalog.service.js.map +1 -1
  17. package/dist/backend/backend/src/services/slack/slack.service.d.ts.map +1 -1
  18. package/dist/backend/backend/src/services/slack/slack.service.js +4 -2
  19. package/dist/backend/backend/src/services/slack/slack.service.js.map +1 -1
  20. package/dist/cli/cli/src/commands/install.d.ts +23 -0
  21. package/dist/cli/cli/src/commands/install.d.ts.map +1 -0
  22. package/dist/cli/cli/src/commands/install.js +113 -0
  23. package/dist/cli/cli/src/commands/install.js.map +1 -0
  24. package/dist/cli/cli/src/commands/search.d.ts +23 -0
  25. package/dist/cli/cli/src/commands/search.d.ts.map +1 -0
  26. package/dist/cli/cli/src/commands/search.js +85 -0
  27. package/dist/cli/cli/src/commands/search.js.map +1 -0
  28. package/dist/cli/cli/src/commands/start.d.ts.map +1 -1
  29. package/dist/cli/cli/src/commands/start.js +11 -0
  30. package/dist/cli/cli/src/commands/start.js.map +1 -1
  31. package/dist/cli/cli/src/index.js +12 -0
  32. package/dist/cli/cli/src/index.js.map +1 -1
  33. package/dist/cli/cli/src/utils/marketplace.d.ts +111 -0
  34. package/dist/cli/cli/src/utils/marketplace.d.ts.map +1 -0
  35. package/dist/cli/cli/src/utils/marketplace.js +209 -0
  36. package/dist/cli/cli/src/utils/marketplace.js.map +1 -0
  37. package/package.json +4 -1
  38. package/config/skills/agent/_common/lib.sh +0 -4
  39. package/config/skills/agent/accept-task/execute.sh +0 -21
  40. package/config/skills/agent/accept-task/instructions.md +0 -20
  41. package/config/skills/agent/accept-task/skill.json +0 -20
  42. package/config/skills/agent/block-task/execute.sh +0 -26
  43. package/config/skills/agent/block-task/instructions.md +0 -22
  44. package/config/skills/agent/block-task/skill.json +0 -20
  45. package/config/skills/agent/check-quality-gates/execute.sh +0 -20
  46. package/config/skills/agent/check-quality-gates/instructions.md +0 -23
  47. package/config/skills/agent/check-quality-gates/skill.json +0 -20
  48. package/config/skills/agent/complete-task/execute.sh +0 -26
  49. package/config/skills/agent/complete-task/instructions.md +0 -22
  50. package/config/skills/agent/complete-task/skill.json +0 -20
  51. package/config/skills/agent/computer-use/execute.sh +0 -151
  52. package/config/skills/agent/computer-use/instructions.md +0 -60
  53. package/config/skills/agent/computer-use/skill.json +0 -22
  54. package/config/skills/agent/get-my-context/execute.sh +0 -23
  55. package/config/skills/agent/get-my-context/instructions.md +0 -21
  56. package/config/skills/agent/get-my-context/skill.json +0 -20
  57. package/config/skills/agent/get-sops/execute.sh +0 -24
  58. package/config/skills/agent/get-sops/instructions.md +0 -21
  59. package/config/skills/agent/get-sops/skill.json +0 -20
  60. package/config/skills/agent/get-team-status/execute.sh +0 -8
  61. package/config/skills/agent/get-team-status/instructions.md +0 -17
  62. package/config/skills/agent/get-team-status/skill.json +0 -20
  63. package/config/skills/agent/heartbeat/execute.sh +0 -22
  64. package/config/skills/agent/heartbeat/instructions.md +0 -23
  65. package/config/skills/agent/heartbeat/skill.json +0 -20
  66. package/config/skills/agent/manage-knowledge/execute.sh +0 -60
  67. package/config/skills/agent/manage-knowledge/instructions.md +0 -46
  68. package/config/skills/agent/nano-banana-image/generate.sh +0 -73
  69. package/config/skills/agent/nano-banana-image/instructions.md +0 -50
  70. package/config/skills/agent/nano-banana-image/skill.json +0 -39
  71. package/config/skills/agent/query-knowledge/execute.sh +0 -30
  72. package/config/skills/agent/query-knowledge/instructions.md +0 -47
  73. package/config/skills/agent/query-knowledge/skill.json +0 -20
  74. package/config/skills/agent/read-task/execute.sh +0 -15
  75. package/config/skills/agent/read-task/instructions.md +0 -19
  76. package/config/skills/agent/read-task/skill.json +0 -20
  77. package/config/skills/agent/recall/execute.sh +0 -24
  78. package/config/skills/agent/recall/instructions.md +0 -23
  79. package/config/skills/agent/recall/skill.json +0 -20
  80. package/config/skills/agent/record-learning/execute.sh +0 -29
  81. package/config/skills/agent/record-learning/instructions.md +0 -24
  82. package/config/skills/agent/record-learning/skill.json +0 -20
  83. package/config/skills/agent/register-self/execute.sh +0 -28
  84. package/config/skills/agent/register-self/instructions.md +0 -18
  85. package/config/skills/agent/register-self/skill.json +0 -20
  86. package/config/skills/agent/remember/execute.sh +0 -29
  87. package/config/skills/agent/remember/instructions.md +0 -24
  88. package/config/skills/agent/remember/skill.json +0 -20
  89. package/config/skills/agent/report-progress/execute.sh +0 -28
  90. package/config/skills/agent/report-progress/instructions.md +0 -25
  91. package/config/skills/agent/report-progress/skill.json +0 -20
  92. package/config/skills/agent/report-status/execute.sh +0 -35
  93. package/config/skills/agent/report-status/instructions.md +0 -36
  94. package/config/skills/agent/report-status/skill.json +0 -20
  95. package/config/skills/agent/send-chat-response/execute.sh +0 -26
  96. package/config/skills/agent/send-chat-response/instructions.md +0 -22
  97. package/config/skills/agent/send-chat-response/skill.json +0 -20
  98. package/config/skills/agent/send-message/execute.sh +0 -17
  99. package/config/skills/agent/send-message/instructions.md +0 -20
  100. package/config/skills/agent/send-message/skill.json +0 -20
  101. package/config/skills/agent/send-pdf-to-slack/execute.sh +0 -182
  102. package/config/skills/agent/send-pdf-to-slack/instructions.md +0 -49
  103. package/config/skills/agent/send-pdf-to-slack/skill.json +0 -20
@@ -0,0 +1,23 @@
1
+ /**
2
+ * CLI Search Command
3
+ *
4
+ * Searches and lists items from the Crewly marketplace. Shows a formatted
5
+ * table of matching items with name, type, version, and description.
6
+ *
7
+ * @module cli/commands/search
8
+ */
9
+ interface SearchOptions {
10
+ type?: string;
11
+ }
12
+ /**
13
+ * Searches the marketplace for items matching a query.
14
+ *
15
+ * When no query is provided, lists all items. Supports filtering by type
16
+ * with the --type flag (skill, model, role).
17
+ *
18
+ * @param query - Optional free-text search query
19
+ * @param options - Command options (--type)
20
+ */
21
+ export declare function searchCommand(query?: string, options?: SearchOptions): Promise<void>;
22
+ export {};
23
+ //# sourceMappingURL=search.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"search.d.ts","sourceRoot":"","sources":["../../../../../cli/src/commands/search.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAKH,UAAU,aAAa;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;;;;;;;GAQG;AACH,wBAAsB,aAAa,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CA2E1F"}
@@ -0,0 +1,85 @@
1
+ /**
2
+ * CLI Search Command
3
+ *
4
+ * Searches and lists items from the Crewly marketplace. Shows a formatted
5
+ * table of matching items with name, type, version, and description.
6
+ *
7
+ * @module cli/commands/search
8
+ */
9
+ import chalk from 'chalk';
10
+ import { fetchRegistry, loadManifest } from '../utils/marketplace.js';
11
+ /**
12
+ * Searches the marketplace for items matching a query.
13
+ *
14
+ * When no query is provided, lists all items. Supports filtering by type
15
+ * with the --type flag (skill, model, role).
16
+ *
17
+ * @param query - Optional free-text search query
18
+ * @param options - Command options (--type)
19
+ */
20
+ export async function searchCommand(query, options) {
21
+ try {
22
+ const registry = await fetchRegistry();
23
+ let items = registry.items;
24
+ // Filter by type
25
+ if (options?.type) {
26
+ items = items.filter((i) => i.type === options.type);
27
+ }
28
+ // Filter by query
29
+ if (query) {
30
+ const q = query.toLowerCase();
31
+ items = items.filter((i) => i.name.toLowerCase().includes(q) ||
32
+ i.description.toLowerCase().includes(q) ||
33
+ i.tags.some((t) => t.toLowerCase().includes(q)) ||
34
+ i.id.toLowerCase().includes(q));
35
+ }
36
+ if (items.length === 0) {
37
+ if (query) {
38
+ console.log(chalk.yellow(`No items matching "${query}".`));
39
+ }
40
+ else {
41
+ console.log(chalk.yellow('No items in the marketplace.'));
42
+ }
43
+ return;
44
+ }
45
+ // Load manifest to show install status
46
+ const manifest = await loadManifest();
47
+ const installedIds = new Set(manifest.items.map((r) => r.id));
48
+ // Print header
49
+ console.log('');
50
+ console.log(chalk.bold('Crewly Marketplace'));
51
+ if (query) {
52
+ console.log(chalk.gray(`Results for "${query}"`));
53
+ }
54
+ console.log('');
55
+ // Print items
56
+ const maxNameLen = Math.max(...items.map((i) => i.name.length), 4);
57
+ const header = ` ${'Name'.padEnd(maxNameLen)} ${'Type'.padEnd(6)} ${'Version'.padEnd(8)} ${'Status'.padEnd(11)} Description`;
58
+ console.log(chalk.gray(header));
59
+ console.log(chalk.gray(' ' + '─'.repeat(header.length - 2)));
60
+ for (const item of items) {
61
+ const status = installedIds.has(item.id)
62
+ ? chalk.green('installed')
63
+ : chalk.gray('available');
64
+ const nameCol = item.name.padEnd(maxNameLen);
65
+ const typeCol = item.type.padEnd(6);
66
+ const versionCol = item.version.padEnd(8);
67
+ const statusCol = (installedIds.has(item.id) ? 'installed' : 'available').padEnd(11);
68
+ const desc = item.description.length > 50
69
+ ? item.description.substring(0, 47) + '...'
70
+ : item.description;
71
+ const statusFormatted = installedIds.has(item.id)
72
+ ? chalk.green(statusCol)
73
+ : chalk.gray(statusCol);
74
+ console.log(` ${chalk.white(nameCol)} ${chalk.cyan(typeCol)} ${chalk.gray(versionCol)} ${statusFormatted} ${chalk.gray(desc)}`);
75
+ }
76
+ console.log('');
77
+ console.log(chalk.gray(`${items.length} item(s) found. Install with: crewly install <id>`));
78
+ }
79
+ catch (error) {
80
+ const msg = error instanceof Error ? error.message : String(error);
81
+ console.error(chalk.red(`Search failed: ${msg}`));
82
+ process.exit(1);
83
+ }
84
+ }
85
+ //# sourceMappingURL=search.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"search.js","sourceRoot":"","sources":["../../../../../cli/src/commands/search.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"start.d.ts","sourceRoot":"","sources":["../../../../../cli/src/commands/start.ts"],"names":[],"mappings":"AAuDA,UAAU,YAAY;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,WAAW,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,wBAAsB,YAAY,CAAC,OAAO,EAAE,YAAY,iBAgFvD"}
1
+ {"version":3,"file":"start.d.ts","sourceRoot":"","sources":["../../../../../cli/src/commands/start.ts"],"names":[],"mappings":"AAuDA,UAAU,YAAY;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,WAAW,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,wBAAsB,YAAY,CAAC,OAAO,EAAE,YAAY,iBA6FvD"}
@@ -73,6 +73,17 @@ export async function startCommand(options) {
73
73
  console.log(chalk.blue('🌐 Opening dashboard...'));
74
74
  await open(`http://localhost:${webPort}`);
75
75
  }
76
+ // Check if any agent skills are available (bundled or marketplace)
77
+ const projectRoot = findPackageRoot(__dirname);
78
+ const bundledSkillsDir = path.join(projectRoot, 'config', 'skills', 'agent');
79
+ const marketplaceSkillsDir = path.join(os.homedir(), '.crewly', 'marketplace', 'skills');
80
+ const hasBundledSkills = fs.existsSync(bundledSkillsDir) &&
81
+ fs.readdirSync(bundledSkillsDir).some(d => d !== '_common' && fs.statSync(path.join(bundledSkillsDir, d)).isDirectory());
82
+ const hasMarketplaceSkills = fs.existsSync(marketplaceSkillsDir) &&
83
+ fs.readdirSync(marketplaceSkillsDir).some(d => d !== '_common' && fs.statSync(path.join(marketplaceSkillsDir, d)).isDirectory());
84
+ if (!hasBundledSkills && !hasMarketplaceSkills) {
85
+ console.log(chalk.yellow('⚠ No agent skills installed. Run \'crewly install --all\' to get started.'));
86
+ }
76
87
  console.log(chalk.green('✅ Crewly started successfully!'));
77
88
  console.log(chalk.cyan(`📊 Dashboard: http://localhost:${webPort}`));
78
89
  console.log(chalk.cyan(`⚡ WebSocket: ws://localhost:${webPort}`));
@@ -1 +1 @@
1
- {"version":3,"file":"start.js","sourceRoot":"","sources":["../../../../../cli/src/commands/start.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"start.js","sourceRoot":"","sources":["../../../../../cli/src/commands/start.ts"],"names":[],"mappings":"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"}
@@ -6,6 +6,8 @@ import { stopCommand } from './commands/stop.js';
6
6
  import { statusCommand } from './commands/status.js';
7
7
  import { logsCommand } from './commands/logs.js';
8
8
  import { upgradeCommand } from './commands/upgrade.js';
9
+ import { installCommand } from './commands/install.js';
10
+ import { searchCommand } from './commands/search.js';
9
11
  import { DEFAULT_WEB_PORT } from './constants.js';
10
12
  import { getLocalVersion } from './utils/version-check.js';
11
13
  const program = new Command();
@@ -48,6 +50,16 @@ program
48
50
  .description('Upgrade Crewly to the latest version')
49
51
  .option('--check', 'Check for updates without installing')
50
52
  .action(upgradeCommand);
53
+ program
54
+ .command('install [id]')
55
+ .description('Install a skill from the Crewly marketplace')
56
+ .option('--all', 'Install all agent skills')
57
+ .action(installCommand);
58
+ program
59
+ .command('search [query]')
60
+ .description('Search the Crewly skill marketplace')
61
+ .option('--type <type>', 'Filter by type (skill, model, role)')
62
+ .action(searchCommand);
51
63
  // Error handling
52
64
  program.exitOverride();
53
65
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../cli/src/index.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAE3D,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;AAE9B,IAAI,UAAU,GAAG,OAAO,CAAC;AACzB,IAAI,CAAC;IACH,UAAU,GAAG,eAAe,EAAE,CAAC;AACjC,CAAC;AAAC,MAAM,CAAC;IACP,6DAA6D;AAC/D,CAAC;AAED,OAAO;KACJ,IAAI,CAAC,QAAQ,CAAC;KACd,WAAW,CAAC,6EAA6E,CAAC;KAC1F,OAAO,CAAC,UAAU,CAAC,CAAC;AAEvB,OAAO;KACJ,OAAO,CAAC,OAAO,CAAC;KAChB,WAAW,CAAC,yCAAyC,CAAC;KACtD,MAAM,CAAC,mBAAmB,EAAE,iBAAiB,EAAE,gBAAgB,CAAC,QAAQ,EAAE,CAAC;KAC3E,MAAM,CAAC,cAAc,EAAE,mCAAmC,CAAC;KAC3D,MAAM,CAAC,gBAAgB,EAAE,qEAAqE,CAAC;KAC/F,MAAM,CAAC,YAAY,CAAC,CAAC;AAExB,OAAO;KACJ,OAAO,CAAC,MAAM,CAAC;KACf,WAAW,CAAC,uCAAuC,CAAC;KACpD,MAAM,CAAC,SAAS,EAAE,0BAA0B,CAAC;KAC7C,MAAM,CAAC,WAAW,CAAC,CAAC;AAEvB,OAAO;KACJ,OAAO,CAAC,QAAQ,CAAC;KACjB,WAAW,CAAC,wCAAwC,CAAC;KACrD,MAAM,CAAC,WAAW,EAAE,2BAA2B,CAAC;KAChD,MAAM,CAAC,aAAa,CAAC,CAAC;AAEzB,OAAO;KACJ,OAAO,CAAC,MAAM,CAAC;KACf,WAAW,CAAC,wCAAwC,CAAC;KACrD,MAAM,CAAC,cAAc,EAAE,mBAAmB,CAAC;KAC3C,MAAM,CAAC,sBAAsB,EAAE,yBAAyB,EAAE,IAAI,CAAC;KAC/D,MAAM,CAAC,WAAW,CAAC,CAAC;AAEvB,OAAO;KACJ,OAAO,CAAC,SAAS,CAAC;KAClB,WAAW,CAAC,sCAAsC,CAAC;KACnD,MAAM,CAAC,SAAS,EAAE,sCAAsC,CAAC;KACzD,MAAM,CAAC,cAAc,CAAC,CAAC;AAE1B,iBAAiB;AACjB,OAAO,CAAC,YAAY,EAAE,CAAC;AAEvB,IAAI,CAAC;IACH,OAAO,CAAC,KAAK,EAAE,CAAC;AAClB,CAAC;AAAC,OAAO,GAAG,EAAE,CAAC;IACb,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC;IACzF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../cli/src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,111 @@
1
+ /**
2
+ * CLI Marketplace Utilities
3
+ *
4
+ * Self-contained marketplace logic for the CLI. Fetches the registry from the
5
+ * marketing site, downloads and installs skill archives, and manages the local
6
+ * installed-items manifest. Does not depend on the backend server being running.
7
+ *
8
+ * @module cli/utils/marketplace
9
+ */
10
+ /** A single item in the marketplace registry */
11
+ export interface MarketplaceItem {
12
+ id: string;
13
+ type: 'skill' | 'model' | 'role';
14
+ name: string;
15
+ description: string;
16
+ author: string;
17
+ version: string;
18
+ category: string;
19
+ tags: string[];
20
+ license: string;
21
+ icon?: string;
22
+ downloads: number;
23
+ rating: number;
24
+ createdAt: string;
25
+ updatedAt: string;
26
+ assets: {
27
+ archive?: string;
28
+ checksum?: string;
29
+ sizeBytes?: number;
30
+ model?: string;
31
+ };
32
+ metadata?: Record<string, unknown>;
33
+ }
34
+ /** The full registry response */
35
+ export interface MarketplaceRegistry {
36
+ schemaVersion: number;
37
+ lastUpdated: string;
38
+ cdnBaseUrl: string;
39
+ items: MarketplaceItem[];
40
+ }
41
+ /** A record of an installed item */
42
+ export interface InstalledItemRecord {
43
+ id: string;
44
+ type: string;
45
+ name: string;
46
+ version: string;
47
+ installedAt: string;
48
+ installPath: string;
49
+ checksum?: string;
50
+ }
51
+ /** The on-disk manifest of installed items */
52
+ export interface InstalledItemsManifest {
53
+ schemaVersion: number;
54
+ items: InstalledItemRecord[];
55
+ }
56
+ /**
57
+ * Fetches the marketplace registry from the marketing site API.
58
+ *
59
+ * @returns The full marketplace registry
60
+ * @throws Error if the fetch fails
61
+ */
62
+ export declare function fetchRegistry(): Promise<MarketplaceRegistry>;
63
+ /**
64
+ * Loads the installed-items manifest from disk.
65
+ * Returns an empty manifest if the file doesn't exist.
66
+ *
67
+ * @returns The installed items manifest
68
+ */
69
+ export declare function loadManifest(): Promise<InstalledItemsManifest>;
70
+ /**
71
+ * Saves the installed-items manifest to disk.
72
+ *
73
+ * @param manifest - The manifest to persist
74
+ */
75
+ export declare function saveManifest(manifest: InstalledItemsManifest): Promise<void>;
76
+ /**
77
+ * Returns the local install path for a marketplace item.
78
+ *
79
+ * @param type - Item type (skill, model, role)
80
+ * @param id - Item ID
81
+ * @returns Absolute path to the install directory
82
+ */
83
+ export declare function getInstallPath(type: string, id: string): string;
84
+ /**
85
+ * Downloads and installs a single marketplace item.
86
+ *
87
+ * For skill archives (.tar.gz), extracts the contents into the install directory.
88
+ * After installation, ensures _common/lib.sh files are present.
89
+ *
90
+ * @param item - The marketplace item to install
91
+ * @returns Object with success status and message
92
+ */
93
+ export declare function downloadAndInstall(item: MarketplaceItem): Promise<{
94
+ success: boolean;
95
+ message: string;
96
+ }>;
97
+ /**
98
+ * Ensures _common/lib.sh files exist in the marketplace directory.
99
+ *
100
+ * Copies the agent-level and root-level _common/lib.sh from the bundled
101
+ * package into the marketplace directory so installed skills can source them.
102
+ */
103
+ export declare function ensureCommonLibs(): Promise<void>;
104
+ /**
105
+ * Formats a byte count into a human-readable string.
106
+ *
107
+ * @param bytes - Size in bytes
108
+ * @returns Formatted string like "18.4 KB"
109
+ */
110
+ export declare function formatBytes(bytes: number): string;
111
+ //# sourceMappingURL=marketplace.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"marketplace.d.ts","sourceRoot":"","sources":["../../../../../cli/src/utils/marketplace.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AA2BH,gDAAgD;AAChD,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,OAAO,GAAG,OAAO,GAAG,MAAM,CAAC;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE;QACN,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC;IACF,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAED,iCAAiC;AACjC,MAAM,WAAW,mBAAmB;IAClC,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,eAAe,EAAE,CAAC;CAC1B;AAED,oCAAoC;AACpC,MAAM,WAAW,mBAAmB;IAClC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,8CAA8C;AAC9C,MAAM,WAAW,sBAAsB;IACrC,aAAa,EAAE,MAAM,CAAC;IACtB,KAAK,EAAE,mBAAmB,EAAE,CAAC;CAC9B;AAID;;;;;GAKG;AACH,wBAAsB,aAAa,IAAI,OAAO,CAAC,mBAAmB,CAAC,CAMlE;AAID;;;;;GAKG;AACH,wBAAsB,YAAY,IAAI,OAAO,CAAC,sBAAsB,CAAC,CAOpE;AAED;;;;GAIG;AACH,wBAAsB,YAAY,CAAC,QAAQ,EAAE,sBAAsB,GAAG,OAAO,CAAC,IAAI,CAAC,CAGlF;AAID;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM,CAG/D;AAED;;;;;;;;GAQG;AACH,wBAAsB,kBAAkB,CAAC,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC,CA4D9G;AAkCD;;;;;GAKG;AACH,wBAAsB,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC,CAuBtD;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAIjD"}
@@ -0,0 +1,209 @@
1
+ /**
2
+ * CLI Marketplace Utilities
3
+ *
4
+ * Self-contained marketplace logic for the CLI. Fetches the registry from the
5
+ * marketing site, downloads and installs skill archives, and manages the local
6
+ * installed-items manifest. Does not depend on the backend server being running.
7
+ *
8
+ * @module cli/utils/marketplace
9
+ */
10
+ import path from 'path';
11
+ import os from 'os';
12
+ import { readFile, writeFile, mkdir, copyFile } from 'fs/promises';
13
+ import { existsSync, readFileSync } from 'fs';
14
+ import { createHash } from 'crypto';
15
+ import { Readable } from 'stream';
16
+ import { pipeline } from 'stream/promises';
17
+ import * as tar from 'tar';
18
+ // ========================= Constants =========================
19
+ const REGISTRY_URL = 'https://crewly.stevesprompt.com/api/registry';
20
+ const ASSETS_BASE = 'https://crewly.stevesprompt.com/api/assets';
21
+ /** Compute paths lazily so os.homedir() is called at runtime, not import time */
22
+ function getMarketplaceDir() {
23
+ return path.join(os.homedir(), '.crewly', 'marketplace');
24
+ }
25
+ function getManifestPath() {
26
+ return path.join(getMarketplaceDir(), 'manifest.json');
27
+ }
28
+ // ========================= Registry =========================
29
+ /**
30
+ * Fetches the marketplace registry from the marketing site API.
31
+ *
32
+ * @returns The full marketplace registry
33
+ * @throws Error if the fetch fails
34
+ */
35
+ export async function fetchRegistry() {
36
+ const res = await fetch(REGISTRY_URL);
37
+ if (!res.ok) {
38
+ throw new Error(`Failed to fetch registry: ${res.status} ${res.statusText}`);
39
+ }
40
+ return (await res.json());
41
+ }
42
+ // ========================= Manifest =========================
43
+ /**
44
+ * Loads the installed-items manifest from disk.
45
+ * Returns an empty manifest if the file doesn't exist.
46
+ *
47
+ * @returns The installed items manifest
48
+ */
49
+ export async function loadManifest() {
50
+ try {
51
+ const data = await readFile(getManifestPath(), 'utf-8');
52
+ return JSON.parse(data);
53
+ }
54
+ catch {
55
+ return { schemaVersion: 1, items: [] };
56
+ }
57
+ }
58
+ /**
59
+ * Saves the installed-items manifest to disk.
60
+ *
61
+ * @param manifest - The manifest to persist
62
+ */
63
+ export async function saveManifest(manifest) {
64
+ await mkdir(getMarketplaceDir(), { recursive: true });
65
+ await writeFile(getManifestPath(), JSON.stringify(manifest, null, 2) + '\n');
66
+ }
67
+ // ========================= Install =========================
68
+ /**
69
+ * Returns the local install path for a marketplace item.
70
+ *
71
+ * @param type - Item type (skill, model, role)
72
+ * @param id - Item ID
73
+ * @returns Absolute path to the install directory
74
+ */
75
+ export function getInstallPath(type, id) {
76
+ const typeDir = type === 'skill' ? 'skills' : type === 'model' ? 'models' : 'roles';
77
+ return path.join(getMarketplaceDir(), typeDir, id);
78
+ }
79
+ /**
80
+ * Downloads and installs a single marketplace item.
81
+ *
82
+ * For skill archives (.tar.gz), extracts the contents into the install directory.
83
+ * After installation, ensures _common/lib.sh files are present.
84
+ *
85
+ * @param item - The marketplace item to install
86
+ * @returns Object with success status and message
87
+ */
88
+ export async function downloadAndInstall(item) {
89
+ const installPath = getInstallPath(item.type, item.id);
90
+ const assetPath = item.assets.archive || item.assets.model;
91
+ if (!assetPath) {
92
+ return { success: false, message: `No downloadable asset for ${item.id}` };
93
+ }
94
+ const url = `${ASSETS_BASE}/${assetPath}`;
95
+ const res = await fetch(url);
96
+ if (!res.ok) {
97
+ return { success: false, message: `Download failed: ${res.status} ${res.statusText}` };
98
+ }
99
+ const data = Buffer.from(await res.arrayBuffer());
100
+ // Verify checksum if provided
101
+ if (item.assets.checksum) {
102
+ const [algo, expected] = item.assets.checksum.split(':');
103
+ if (algo === 'sha256') {
104
+ const actual = createHash('sha256').update(data).digest('hex');
105
+ if (actual !== expected) {
106
+ return { success: false, message: `Checksum mismatch for ${item.id}` };
107
+ }
108
+ }
109
+ }
110
+ // Extract or write
111
+ await mkdir(installPath, { recursive: true });
112
+ if (item.assets.archive && assetPath.endsWith('.tar.gz')) {
113
+ const readable = Readable.from(data);
114
+ await pipeline(readable, tar.x({ cwd: installPath, strip: 1 }));
115
+ }
116
+ else {
117
+ const filename = path.basename(assetPath);
118
+ await writeFile(path.join(installPath, filename), data);
119
+ }
120
+ // Ensure _common/lib.sh for skills
121
+ if (item.type === 'skill') {
122
+ await ensureCommonLibs();
123
+ }
124
+ // Update manifest
125
+ const record = {
126
+ id: item.id,
127
+ type: item.type,
128
+ name: item.name,
129
+ version: item.version,
130
+ installedAt: new Date().toISOString(),
131
+ installPath,
132
+ checksum: item.assets.checksum,
133
+ };
134
+ const manifest = await loadManifest();
135
+ manifest.items = manifest.items.filter((r) => r.id !== item.id);
136
+ manifest.items.push(record);
137
+ await saveManifest(manifest);
138
+ return { success: true, message: `Installed ${item.name} v${item.version}` };
139
+ }
140
+ // ========================= Common Libs =========================
141
+ /**
142
+ * Finds the Crewly package root by walking up from a starting directory.
143
+ *
144
+ * @param startDir - Directory to start searching from
145
+ * @returns Absolute path to the package root, or null if not found
146
+ */
147
+ function findPackageRoot(startDir) {
148
+ let current = path.resolve(startDir);
149
+ while (true) {
150
+ const pkgPath = path.join(current, 'package.json');
151
+ if (existsSync(pkgPath)) {
152
+ try {
153
+ const pkg = JSON.parse(readFileSync(pkgPath, 'utf-8'));
154
+ if (pkg.name === 'crewly') {
155
+ return current;
156
+ }
157
+ }
158
+ catch {
159
+ // keep searching
160
+ }
161
+ }
162
+ const parent = path.dirname(current);
163
+ if (parent === current) {
164
+ return null;
165
+ }
166
+ current = parent;
167
+ }
168
+ }
169
+ /**
170
+ * Ensures _common/lib.sh files exist in the marketplace directory.
171
+ *
172
+ * Copies the agent-level and root-level _common/lib.sh from the bundled
173
+ * package into the marketplace directory so installed skills can source them.
174
+ */
175
+ export async function ensureCommonLibs() {
176
+ const packageRoot = findPackageRoot(__dirname) || findPackageRoot(process.cwd());
177
+ if (!packageRoot) {
178
+ return;
179
+ }
180
+ const mpBase = path.join(os.homedir(), '.crewly', 'marketplace');
181
+ // Copy agent _common/lib.sh
182
+ const agentCommonSrc = path.join(packageRoot, 'config', 'skills', 'agent', '_common', 'lib.sh');
183
+ const agentCommonDest = path.join(mpBase, 'skills', '_common');
184
+ if (existsSync(agentCommonSrc)) {
185
+ await mkdir(agentCommonDest, { recursive: true });
186
+ await copyFile(agentCommonSrc, path.join(agentCommonDest, 'lib.sh'));
187
+ }
188
+ // Copy root _common/lib.sh
189
+ const rootCommonSrc = path.join(packageRoot, 'config', 'skills', '_common', 'lib.sh');
190
+ const rootCommonDest = path.join(mpBase, '_common');
191
+ if (existsSync(rootCommonSrc)) {
192
+ await mkdir(rootCommonDest, { recursive: true });
193
+ await copyFile(rootCommonSrc, path.join(rootCommonDest, 'lib.sh'));
194
+ }
195
+ }
196
+ /**
197
+ * Formats a byte count into a human-readable string.
198
+ *
199
+ * @param bytes - Size in bytes
200
+ * @returns Formatted string like "18.4 KB"
201
+ */
202
+ export function formatBytes(bytes) {
203
+ if (bytes < 1024)
204
+ return `${bytes} B`;
205
+ if (bytes < 1024 * 1024)
206
+ return `${(bytes / 1024).toFixed(1)} KB`;
207
+ return `${(bytes / (1024 * 1024)).toFixed(1)} MB`;
208
+ }
209
+ //# sourceMappingURL=marketplace.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"marketplace.js","sourceRoot":"","sources":["../../../../../cli/src/utils/marketplace.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "crewly",
3
- "version": "1.0.1",
3
+ "version": "1.0.3",
4
4
  "type": "module",
5
5
  "description": "Crewly orchestrates multiple Claude Code instances as AI development teams",
6
6
  "main": "dist/cli/cli/src/index.js",
@@ -11,6 +11,7 @@
11
11
  "dist/backend/",
12
12
  "dist/cli/",
13
13
  "config/",
14
+ "!config/skills/agent/",
14
15
  "!config/**/.env",
15
16
  "!config/**/.env.*",
16
17
  "!config/**/*.test.ts",
@@ -74,6 +75,7 @@
74
75
  "node-pty": "^1.0.0",
75
76
  "open": "^9.1.0",
76
77
  "socket.io": "^4.7.2",
78
+ "tar": "^7.5.9",
77
79
  "uuid": "^9.0.0",
78
80
  "ws": "^8.14.2",
79
81
  "yaml": "^2.3.2"
@@ -86,6 +88,7 @@
86
88
  "@types/node": "^20.5.1",
87
89
  "@types/socket.io-client": "^1.4.36",
88
90
  "@types/supertest": "^6.0.3",
91
+ "@types/tar": "^6.1.13",
89
92
  "@types/uuid": "^9.0.2",
90
93
  "@types/ws": "^8.5.5",
91
94
  "@typescript-eslint/eslint-plugin": "^6.4.0",
@@ -1,4 +0,0 @@
1
- #!/usr/bin/env bash
2
- # Agent Skills Common Library - delegates to shared library
3
- SHARED_LIB_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/../.." && pwd)/_common"
4
- source "${SHARED_LIB_DIR}/lib.sh"
@@ -1,21 +0,0 @@
1
- #!/bin/bash
2
- # Accept and take the next available task from the task queue
3
- set -euo pipefail
4
- SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
5
- source "${SCRIPT_DIR}/../_common/lib.sh"
6
-
7
- INPUT="${1:-}"
8
- [ -z "$INPUT" ] && error_exit "Usage: execute.sh '{\"sessionName\":\"dev-1\"}'"
9
-
10
- SESSION_NAME=$(echo "$INPUT" | jq -r '.sessionName // empty')
11
- require_param "sessionName" "$SESSION_NAME"
12
-
13
- TEAM_MEMBER_ID=$(echo "$INPUT" | jq -r '.teamMemberId // empty')
14
-
15
- BODY=$(jq -n \
16
- --arg sessionName "$SESSION_NAME" \
17
- --arg teamMemberId "$TEAM_MEMBER_ID" \
18
- '{sessionName: $sessionName} +
19
- (if $teamMemberId != "" then {teamMemberId: $teamMemberId} else {} end)')
20
-
21
- api_call POST "/task-management/take-next" "$BODY"
@@ -1,20 +0,0 @@
1
- # Accept Task
2
-
3
- Accept and take the next available task from the task queue. The backend assigns the highest-priority unassigned task to your session.
4
-
5
- ## Parameters
6
-
7
- | Parameter | Required | Description |
8
- |-----------|----------|-------------|
9
- | `sessionName` | Yes | Your agent session name |
10
- | `teamMemberId` | No | Your team member ID for targeted assignment |
11
-
12
- ## Example
13
-
14
- ```bash
15
- bash config/skills/agent/accept-task/execute.sh '{"sessionName":"dev-1"}'
16
- ```
17
-
18
- ## Output
19
-
20
- JSON with the assigned task details including path, description, and priority. Returns an empty result if no tasks are available.