@stardust-bytes/agent-hub 0.1.0 → 0.3.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.
package/README.md CHANGED
@@ -117,14 +117,14 @@ npm install && npm run dev
117
117
 
118
118
  **Quick start (no install needed):**
119
119
  ```bash
120
- npx agent-hub
120
+ npx @stardust-bytes/agent-hub
121
121
  ```
122
122
 
123
123
  This runs `agent-hub studio` — starts the server, runs first-time setup, and opens your browser.
124
124
 
125
125
  **Global install (use `agent-hub` directly):**
126
126
  ```bash
127
- npm install -g agent-hub
127
+ npm install -g @stardust-bytes/agent-hub
128
128
  agent-hub studio
129
129
  ```
130
130
 
@@ -26,28 +26,25 @@ let McpService = McpService_1 = class McpService {
26
26
  this.servers = new Map();
27
27
  }
28
28
  async onModuleInit() {
29
- await this.startPlaywrightServer();
29
+ this.startPlaywrightServer().catch(() => { });
30
30
  }
31
- async ensurePlaywrightBrowsers() {
32
- try {
33
- const result = (0, child_process_1.execSync)('npx playwright install chromium 2>&1', {
34
- timeout: 120_000,
35
- stdio: 'pipe',
36
- windowsHide: true,
37
- });
38
- this.logger.log('Playwright Chromium installed/verified');
39
- }
40
- catch (e) {
41
- this.logger.warn('Could not install Playwright browsers:', e.message);
42
- }
31
+ ensurePlaywrightBrowsers() {
32
+ (0, child_process_1.exec)('npx playwright install chromium 2>&1', { timeout: 120_000 }, (err) => {
33
+ if (err) {
34
+ this.logger.warn('Could not install Playwright browsers:', err.message);
35
+ }
36
+ else {
37
+ this.logger.log('Playwright Chromium installed/verified');
38
+ }
39
+ });
43
40
  }
44
41
  getCustomChromeUserDataDir() {
45
42
  const dir = this.config.get('CHROME_USER_DATA_DIR');
46
43
  return dir ? path.resolve(dir) : null;
47
44
  }
48
45
  async startPlaywrightServer() {
46
+ this.ensurePlaywrightBrowsers();
49
47
  try {
50
- await this.ensurePlaywrightBrowsers();
51
48
  const root = this.workspace.getWorkspaceRoot();
52
49
  const snapshotDir = path.resolve(root, 'mcp_data');
53
50
  fs.mkdirSync(snapshotDir, { recursive: true });
@@ -1 +1 @@
1
- {"version":3,"file":"mcp.service.js","sourceRoot":"","sources":["../../../src/agent/mcp/mcp.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,2CAAkE;AAClE,2CAA+C;AAC/C,6DAAwD;AACxD,yEAAqE;AACrE,6BAA6B;AAC7B,yBAAyB;AACzB,iDAAyC;AAQlC,IAAM,UAAU,kBAAhB,MAAM,UAAU;IAIrB,YACmB,MAAqB,EACrB,SAA2B;QAD3B,WAAM,GAAN,MAAM,CAAe;QACrB,cAAS,GAAT,SAAS,CAAkB;QAL7B,WAAM,GAAG,IAAI,eAAM,CAAC,YAAU,CAAC,IAAI,CAAC,CAAC;QAC9C,YAAO,GAAG,IAAI,GAAG,EAA0B,CAAC;IAKjD,CAAC;IAEJ,KAAK,CAAC,YAAY;QAChB,MAAM,IAAI,CAAC,qBAAqB,EAAE,CAAC;IACrC,CAAC;IAEO,KAAK,CAAC,wBAAwB;QACpC,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,IAAA,wBAAQ,EAAC,sCAAsC,EAAE;gBAC9D,OAAO,EAAE,OAAO;gBAChB,KAAK,EAAE,MAAM;gBACb,WAAW,EAAE,IAAI;aAClB,CAAC,CAAC;YACH,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,wCAAwC,CAAC,CAAC;QAC5D,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,wCAAwC,EAAG,CAAW,CAAC,OAAO,CAAC,CAAC;QACnF,CAAC;IACH,CAAC;IAEO,0BAA0B;QAChC,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAS,sBAAsB,CAAC,CAAC;QAC5D,OAAO,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACxC,CAAC;IAEO,KAAK,CAAC,qBAAqB;QACjC,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,wBAAwB,EAAE,CAAC;YAEtC,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,gBAAgB,EAAE,CAAC;YAC/C,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;YACnD,EAAE,CAAC,SAAS,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAE/C,MAAM,IAAI,GAAa;gBACrB,iBAAiB;gBACjB,mBAAmB,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,oBAAoB,CAAC,EAAE;gBAC7D,gBAAgB,WAAW,EAAE;gBAC7B,oBAAoB;aACrB,CAAC;YAEF,MAAM,aAAa,GAAG,IAAI,CAAC,0BAA0B,EAAE,CAAC;YACxD,IAAI,aAAa,EAAE,CAAC;gBAClB,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,gBAAgB,CAAC,CAAC;gBAC/D,EAAE,CAAC,SAAS,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;gBAC/C,IAAI,CAAC,CAAC,CAAC,GAAG,mBAAmB,WAAW,EAAE,CAAC;gBAC3C,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,4BAA4B,WAAW,EAAE,CAAC,CAAC;YAC7D,CAAC;YAED,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,mCAAmC,CAAC,CAAC;YACrD,MAAM,MAAM,GAAG,IAAI,qCAAgB,EAAE,CAAC;YACtC,MAAM,MAAM,CAAC,YAAY,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;YACvC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,YAAY,EAAE,EAAE,EAAE,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC,CAAC;YAC7D,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAC;QACnD,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,+BAA+B,EAAG,CAAW,CAAC,OAAO,CAAC,CAAC;QAC1E,CAAC;IACH,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,IAAY,EAAE,IAA6B;QAC1D,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;QAC9C,IAAI,CAAC,KAAK;YAAE,OAAO,IAAI,CAAC;QACxB,MAAM,CAAC,EAAE,QAAQ,EAAE,QAAQ,CAAC,GAAG,KAAK,CAAC;QACrC,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAC1C,IAAI,CAAC,MAAM;YAAE,OAAO,IAAI,CAAC;QACzB,OAAO,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;IAChD,CAAC;IAED,UAAU;QACR,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;IACzC,CAAC;IAED,KAAK,CAAC,WAAW;QACf,MAAM,KAAK,GAAuF,EAAE,CAAC;QACrG,KAAK,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YAC7C,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;YAChD,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;gBACzB,KAAK,CAAC,IAAI,CAAC;oBACT,IAAI,EAAE,QAAQ,QAAQ,KAAK,CAAC,CAAC,IAAI,EAAE;oBACnC,WAAW,EAAE,CAAC,CAAC,WAAW;oBAC1B,UAAU,EAAE,CAAC,CAAC,WAAW,IAAI,EAAE;iBAChC,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,EAAU,EAAE,OAAe,EAAE,IAAc;QACzD,MAAM,MAAM,GAAG,IAAI,qCAAgB,EAAE,CAAC;QACtC,MAAM,MAAM,CAAC,YAAY,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QACzC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;IACvC,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,EAAU;QAC3B,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACpC,IAAI,MAAM,EAAE,CAAC;YACX,MAAM,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;YACjC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAC1B,CAAC;IACH,CAAC;CACF,CAAA;AAzGY,gCAAU;qBAAV,UAAU;IADtB,IAAA,mBAAU,GAAE;qCAMgB,sBAAa;QACV,oCAAgB;GANnC,UAAU,CAyGtB"}
1
+ {"version":3,"file":"mcp.service.js","sourceRoot":"","sources":["../../../src/agent/mcp/mcp.service.ts"],"names":[],"mappings":"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"}
@@ -68,10 +68,7 @@ function runMigrations() {
68
68
  cwd: backendDir, stdio: 'inherit', env,
69
69
  });
70
70
 
71
- log('init', 'Generating Prisma client...');
72
- execSync(`npx prisma generate --schema="${schemaPath}"`, {
73
- cwd: backendDir, stdio: 'inherit', env,
74
- });
71
+ generatePrismaClient();
75
72
 
76
73
  log('init', 'Seeding database...');
77
74
  execSync('npx prisma db seed', {
@@ -79,6 +76,21 @@ function runMigrations() {
79
76
  });
80
77
  }
81
78
 
79
+ function generatePrismaClient() {
80
+ const schemaPath = path.join(ROOT, 'backend', 'prisma', 'schema.prisma');
81
+ const backendDir = path.join(ROOT, 'backend');
82
+ const env = { ...process.env, DATABASE_URL: `file:${DB_PATH}` };
83
+
84
+ log('init', 'Generating Prisma client...');
85
+ try {
86
+ execSync(`npx prisma generate --schema="${schemaPath}"`, {
87
+ cwd: backendDir, stdio: 'pipe', env,
88
+ });
89
+ } catch (e) {
90
+ log('init', 'Warning: prisma generate failed:', e.message);
91
+ }
92
+ }
93
+
82
94
  function getPort() {
83
95
  return process.env.PORT ?? '17135';
84
96
  }
@@ -101,7 +113,7 @@ function resolveEnv() {
101
113
  }
102
114
  }
103
115
 
104
- function waitForServer(port, maxRetries = 60) {
116
+ function waitForServer(port, maxRetries = 120) {
105
117
  return new Promise((resolve, reject) => {
106
118
  let retries = 0;
107
119
  const check = () => {
@@ -161,6 +173,7 @@ async function cmdStudio() {
161
173
  if (needsMigration()) {
162
174
  runMigrations();
163
175
  }
176
+ generatePrismaClient();
164
177
  resolveEnv();
165
178
 
166
179
  const server = spawn('node', [BACKEND_ENTRY], {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@stardust-bytes/agent-hub",
3
- "version": "0.1.0",
3
+ "version": "0.3.0",
4
4
  "private": false,
5
5
  "bin": {
6
6
  "agent-hub": "./bin/workspace-cli.js"