@agentbridgeai/cli 0.1.0 → 0.1.2

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.
@@ -1,12 +1,8 @@
1
1
  /**
2
2
  * Interactive init command: guides API owners through making their API agent-ready.
3
- *
4
- * npx agentbridge init
5
- *
6
- * 1. Ask for OpenAPI spec (file path or URL)
7
- * 2. Parse and preview actions
8
- * 3. Generate .agentbridge.json manifest
9
- * 4. Optionally generate MCP server config
10
3
  */
11
- export declare function runInit(): Promise<void>;
4
+ export declare function runInit(opts?: {
5
+ yes?: boolean;
6
+ spec?: string;
7
+ }): Promise<void>;
12
8
  //# sourceMappingURL=commands.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"commands.d.ts","sourceRoot":"","sources":["../src/commands.ts"],"names":[],"mappings":"AASA;;;;;;;;;GASG;AACH,wBAAsB,OAAO,kBAmG5B"}
1
+ {"version":3,"file":"commands.d.ts","sourceRoot":"","sources":["../src/commands.ts"],"names":[],"mappings":"AA4MA;;GAEG;AACH,wBAAsB,OAAO,CAAC,IAAI,CAAC,EAAE;IAAE,GAAG,CAAC,EAAE,OAAO,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,iBA4MpE"}
package/dist/commands.js CHANGED
@@ -1,88 +1,287 @@
1
1
  import * as readline from 'readline';
2
2
  import chalk from 'chalk';
3
+ import ora from 'ora';
3
4
  import { readFileSync, writeFileSync, existsSync } from 'fs';
4
5
  import { convertOpenAPIToManifest } from '@agentbridgeai/openapi';
6
+ import { createServer } from 'http';
7
+ import { randomUUID } from 'crypto';
8
+ import { spawn } from 'child_process';
9
+ import Conf from 'conf';
10
+ const REGISTRY_URL = process.env.AGENTBRIDGE_REGISTRY || 'https://agentbridge.cc';
11
+ const CLI_AUTH_PATH = '/api/cli-auth/start';
12
+ const config = new Conf({ projectName: 'agentbridge' });
5
13
  function ask(rl, question) {
6
14
  return new Promise(resolve => rl.question(question, resolve));
7
15
  }
8
- /**
9
- * Interactive init command: guides API owners through making their API agent-ready.
10
- *
11
- * npx agentbridge init
12
- *
13
- * 1. Ask for OpenAPI spec (file path or URL)
14
- * 2. Parse and preview actions
15
- * 3. Generate .agentbridge.json manifest
16
- * 4. Optionally generate MCP server config
17
- */
18
- export async function runInit() {
16
+ async function askOnce(question) {
19
17
  const rl = readline.createInterface({ input: process.stdin, output: process.stdout });
18
+ const answer = await ask(rl, question);
19
+ rl.close();
20
+ return answer;
21
+ }
22
+ function getRegistryAuthHeaders(registryUrl) {
23
+ const envToken = process.env.AGENTBRIDGE_TOKEN;
24
+ const savedToken = config.get('registryToken');
25
+ const savedRegistry = config.get('registryUrl');
26
+ const token = envToken || (savedRegistry === registryUrl ? savedToken : undefined);
27
+ if (!token)
28
+ return {};
29
+ return { Authorization: `Bearer ${token}` };
30
+ }
31
+ async function promptYesNo(question, defaultYes = true) {
32
+ const answer = await askOnce(question);
33
+ const normalized = answer.trim().toLowerCase();
34
+ if (!normalized)
35
+ return defaultYes;
36
+ if (['y', 'yes'].includes(normalized))
37
+ return true;
38
+ if (['n', 'no'].includes(normalized))
39
+ return false;
40
+ return defaultYes;
41
+ }
42
+ function openBrowser(url) {
43
+ return new Promise(resolve => {
44
+ const platform = process.platform;
45
+ const cmd = platform === 'darwin' ? 'open' :
46
+ platform === 'win32' ? 'cmd' :
47
+ 'xdg-open';
48
+ const args = platform === 'win32' ? ['/c', 'start', '', url] : [url];
49
+ const child = spawn(cmd, args, { stdio: 'ignore', detached: true });
50
+ child.once('error', () => resolve(false));
51
+ child.once('spawn', () => {
52
+ child.unref();
53
+ resolve(true);
54
+ });
55
+ });
56
+ }
57
+ async function loginToRegistry(registryUrl) {
58
+ const state = randomUUID();
59
+ return new Promise(resolve => {
60
+ const server = createServer(async (req, res) => {
61
+ const reqUrl = new URL(req.url || '/', 'http://127.0.0.1');
62
+ if (reqUrl.pathname !== '/callback') {
63
+ res.statusCode = 404;
64
+ res.end('Not found');
65
+ return;
66
+ }
67
+ const token = reqUrl.searchParams.get('token');
68
+ const returnedState = reqUrl.searchParams.get('state');
69
+ const ok = token && returnedState === state;
70
+ res.statusCode = ok ? 200 : 400;
71
+ res.setHeader('Content-Type', 'text/html; charset=utf-8');
72
+ res.end(ok
73
+ ? '<h2>AgentBridge CLI login complete.</h2><p>You can close this tab and return to terminal.</p>'
74
+ : '<h2>AgentBridge CLI login failed.</h2><p>Invalid callback state.</p>');
75
+ server.close();
76
+ if (ok) {
77
+ config.set('registryToken', token);
78
+ config.set('registryUrl', registryUrl);
79
+ }
80
+ resolve(!!ok);
81
+ });
82
+ server.listen(0, '127.0.0.1', async () => {
83
+ const address = server.address();
84
+ if (!address || typeof address === 'string') {
85
+ server.close();
86
+ resolve(false);
87
+ return;
88
+ }
89
+ const callbackUrl = `http://127.0.0.1:${address.port}/callback`;
90
+ const loginUrl = `${registryUrl}${CLI_AUTH_PATH}?callback_url=${encodeURIComponent(callbackUrl)}&state=${encodeURIComponent(state)}`;
91
+ console.log('');
92
+ console.log(chalk.bold.cyan(' AgentBridge Login'));
93
+ console.log(chalk.gray(` Registry: ${registryUrl}`));
94
+ console.log(chalk.gray(' Complete login in your browser, then return here.'));
95
+ console.log(chalk.white(` ${loginUrl}`));
96
+ const opened = await openBrowser(loginUrl);
97
+ if (opened) {
98
+ console.log(chalk.gray(' Opened browser window for login.'));
99
+ }
100
+ else {
101
+ console.log(chalk.yellow(' Could not open browser automatically.'));
102
+ }
103
+ const timeout = setTimeout(() => {
104
+ server.close();
105
+ resolve(false);
106
+ }, 180000);
107
+ server.on('close', () => clearTimeout(timeout));
108
+ });
109
+ });
110
+ }
111
+ function sleep(ms) {
112
+ return new Promise(resolve => setTimeout(resolve, ms));
113
+ }
114
+ const PANEL_WIDTH = 69;
115
+ function stripAnsi(input) {
116
+ return input.replace(/\x1B\[[0-?]*[ -/]*[@-~]/g, '');
117
+ }
118
+ function padAnsi(input, width) {
119
+ const visible = stripAnsi(input).length;
120
+ return input + ' '.repeat(Math.max(0, width - visible));
121
+ }
122
+ function panelLine(content = '') {
123
+ console.log(chalk.cyan(' │ ') + padAnsi(content, PANEL_WIDTH - 4) + chalk.cyan(' │'));
124
+ }
125
+ function panelDivider() {
126
+ console.log(chalk.cyan(' ├' + '─'.repeat(PANEL_WIDTH) + '┤'));
127
+ }
128
+ async function printHeader(animate = false) {
129
+ const lines = [
130
+ '',
131
+ chalk.cyan(' ╭' + '─'.repeat(PANEL_WIDTH) + '╮'),
132
+ panelLineString(chalk.bold.white('AgentBridge Init') + chalk.gray(' · Make any API agent-ready')),
133
+ panelLineString(chalk.gray('OpenAPI / Swagger → Manifest → MCP-ready config')),
134
+ panelLineString(),
135
+ panelLineString(chalk.white('Workflow')),
136
+ panelLineString(chalk.gray('1') + ' Load spec ' + chalk.gray('2') + ' Preview actions ' + chalk.gray('3') + ' Generate manifest'),
137
+ panelLineString(chalk.gray('4') + ' MCP config ' + chalk.gray('5') + ' Publish (optional)'),
138
+ panelDividerString(),
139
+ panelLineString(chalk.white('Quick Tips')),
140
+ panelLineString(chalk.gray('• Local file paths and HTTPS URLs are both supported')),
141
+ panelLineString(chalk.gray('• ') + chalk.cyan('--spec <path|url>') + chalk.gray(' skips the first prompt')),
142
+ panelLineString(chalk.gray('• ') + chalk.cyan('--yes') + chalk.gray(' runs a fast non-interactive setup')),
143
+ panelLineString(chalk.gray('Type ') + chalk.cyan('/exit') + chalk.gray(' anytime to cancel setup')),
144
+ chalk.cyan(' ╰' + '─'.repeat(PANEL_WIDTH) + '╯'),
145
+ '',
146
+ ];
147
+ if (!animate) {
148
+ for (const line of lines)
149
+ console.log(line);
150
+ return;
151
+ }
152
+ for (const line of lines) {
153
+ console.log(line);
154
+ if (line)
155
+ await sleep(18);
156
+ }
157
+ }
158
+ function panelLineString(content = '') {
159
+ return chalk.cyan(' │ ') + padAnsi(content, PANEL_WIDTH - 4) + chalk.cyan(' │');
160
+ }
161
+ function panelDividerString() {
162
+ return chalk.cyan(' ├' + '─'.repeat(PANEL_WIDTH) + '┤');
163
+ }
164
+ function printDivider() {
165
+ console.log(chalk.gray(' ──────────────────────────────────────'));
166
+ }
167
+ function printStep(step, total, label) {
20
168
  console.log('');
21
- console.log(chalk.bold.cyan(' AgentBridge Init'));
22
- console.log(chalk.gray(' Make your API agent-ready in 30 seconds'));
169
+ console.log(chalk.cyan(` ● Step ${step}/${total}`) + chalk.gray(` ${label}`));
170
+ console.log(chalk.gray(' ' + '─'.repeat(Math.min(48, label.length + 14))));
23
171
  console.log('');
172
+ }
173
+ function isExitCommand(value) {
174
+ const v = (value ?? '').trim().toLowerCase();
175
+ return v === '/exit' || v === '/quit' || v === '/q';
176
+ }
177
+ /**
178
+ * Interactive init command: guides API owners through making their API agent-ready.
179
+ */
180
+ export async function runInit(opts) {
181
+ const nonInteractive = opts?.yes;
182
+ await printHeader(!nonInteractive && !!process.stdout.isTTY);
24
183
  // Step 1: Get the OpenAPI spec
25
- const specSource = await ask(rl, chalk.white(' Path to your OpenAPI spec (or URL): '));
26
- let specContent;
27
- try {
28
- if (specSource.startsWith('http')) {
29
- console.log(chalk.gray(' Fetching...'));
30
- const res = await fetch(specSource);
31
- if (!res.ok)
32
- throw new Error(`HTTP ${res.status}`);
33
- specContent = await res.text();
34
- }
35
- else if (existsSync(specSource)) {
36
- specContent = readFileSync(specSource, 'utf-8');
37
- }
38
- else {
39
- console.error(chalk.red(` File not found: ${specSource}`));
40
- rl.close();
184
+ let specSource = opts?.spec;
185
+ if (!specSource && nonInteractive) {
186
+ const candidates = ['openapi.json', 'openapi.yaml', 'openapi.yml', 'swagger.json', 'swagger.yaml'];
187
+ for (const c of candidates) {
188
+ if (existsSync(c)) {
189
+ specSource = c;
190
+ break;
191
+ }
192
+ }
193
+ if (!specSource) {
194
+ console.error(chalk.red(' ✗ No OpenAPI spec found. Provide --spec <path>'));
41
195
  return;
42
196
  }
43
197
  }
44
- catch (err) {
45
- console.error(chalk.red(` Failed to load spec: ${err.message}`));
46
- rl.close();
47
- return;
48
- }
49
- // Step 2: Convert and preview
198
+ let specContent;
50
199
  let manifest;
51
- try {
52
- manifest = convertOpenAPIToManifest(specContent);
53
- }
54
- catch (err) {
55
- console.error(chalk.red(` Failed to parse spec: ${err.message}`));
56
- rl.close();
57
- return;
200
+ while (!specContent || !manifest) {
201
+ if (!specSource) {
202
+ printStep(1, 5, 'Load your OpenAPI spec');
203
+ specSource = await askOnce(chalk.white(' Path or URL: '));
204
+ }
205
+ if (isExitCommand(specSource)) {
206
+ console.log(chalk.gray(' Cancelled.'));
207
+ return;
208
+ }
209
+ const spinner = ora({ text: 'Loading spec...', indent: 4 }).start();
210
+ try {
211
+ if (specSource.startsWith('http')) {
212
+ spinner.text = `Fetching from ${specSource}...`;
213
+ const res = await fetch(specSource);
214
+ if (!res.ok)
215
+ throw new Error(`HTTP ${res.status}`);
216
+ specContent = await res.text();
217
+ }
218
+ else if (existsSync(specSource)) {
219
+ specContent = readFileSync(specSource, 'utf-8');
220
+ }
221
+ else {
222
+ throw new Error(`File not found: ${specSource}`);
223
+ }
224
+ spinner.succeed('Spec loaded');
225
+ }
226
+ catch (err) {
227
+ spinner.fail(err.message || `Failed to load spec: ${err.message}`);
228
+ if (nonInteractive || opts?.spec)
229
+ return;
230
+ console.log(chalk.gray(' Try again, or type /exit to cancel.'));
231
+ console.log('');
232
+ specSource = undefined;
233
+ continue;
234
+ }
235
+ const parseSpinner = ora({ text: 'Parsing OpenAPI spec...', indent: 4 }).start();
236
+ try {
237
+ manifest = convertOpenAPIToManifest(specContent);
238
+ await sleep(300); // Brief pause so user sees the spinner
239
+ parseSpinner.succeed(`Detected ${chalk.bold(manifest.name)}`);
240
+ }
241
+ catch (err) {
242
+ parseSpinner.fail(`Failed to parse spec: ${err.message}`);
243
+ if (nonInteractive || opts?.spec)
244
+ return;
245
+ console.log(chalk.gray(' Try a different spec, or type /exit to cancel.'));
246
+ console.log('');
247
+ specSource = undefined;
248
+ specContent = undefined;
249
+ continue;
250
+ }
58
251
  }
252
+ // Preview
253
+ console.log('');
254
+ printDivider();
255
+ console.log('');
256
+ console.log(chalk.white(' API Details'));
257
+ console.log('');
258
+ console.log(` ${chalk.gray('Name')} ${chalk.bold.white(manifest.name)}`);
259
+ console.log(` ${chalk.gray('Description')} ${manifest.description}`);
260
+ console.log(` ${chalk.gray('Base URL')} ${chalk.cyan(manifest.base_url)}`);
261
+ console.log(` ${chalk.gray('Auth')} ${manifest.auth?.type ?? chalk.gray('none')}`);
262
+ console.log(` ${chalk.gray('Actions')} ${chalk.bold(String(manifest.actions.length))}`);
59
263
  console.log('');
60
- console.log(chalk.green(' Detected API:'));
61
- console.log(` Name: ${chalk.bold(manifest.name)}`);
62
- console.log(` Description: ${manifest.description}`);
63
- console.log(` Base URL: ${manifest.base_url}`);
64
- console.log(` Auth: ${manifest.auth?.type ?? 'none'}`);
65
- console.log(` Actions: ${manifest.actions.length}`);
66
264
  for (const action of manifest.actions.slice(0, 10)) {
67
- console.log(` ${chalk.cyan(action.id)} ${chalk.gray(`[${action.method}]`)} — ${action.description}`);
265
+ const method = action.method.toUpperCase().padEnd(6);
266
+ const methodColor = action.method === 'GET' ? chalk.green : action.method === 'POST' ? chalk.yellow : action.method === 'PUT' ? chalk.blue : chalk.red;
267
+ console.log(` ${methodColor(method)} ${chalk.cyan(action.id)}`);
268
+ console.log(` ${chalk.gray(action.description)}`);
68
269
  }
69
270
  if (manifest.actions.length > 10) {
70
- console.log(chalk.gray(` ... and ${manifest.actions.length - 10} more`));
271
+ console.log(chalk.gray(` ... and ${manifest.actions.length - 10} more`));
71
272
  }
72
273
  console.log('');
73
- // Step 3: Confirm and save
74
- const confirm = await ask(rl, chalk.white(' Generate .agentbridge.json? (Y/n): '));
75
- if (confirm.toLowerCase() === 'n') {
76
- console.log(chalk.gray(' Cancelled.'));
77
- rl.close();
78
- return;
79
- }
80
- const manifestPath = '.agentbridge.json';
81
- writeFileSync(manifestPath, JSON.stringify(manifest, null, 2));
82
- console.log(chalk.green(` Created ${manifestPath}`));
83
- // Step 4: MCP config
84
- const mcpAnswer = await ask(rl, chalk.white(' Generate MCP server config for Claude/Cursor? (Y/n): '));
85
- if (mcpAnswer.toLowerCase() !== 'n') {
274
+ printDivider();
275
+ let publishAttempted = false;
276
+ let publishSucceeded = false;
277
+ if (nonInteractive) {
278
+ // Auto-generate all files + publish
279
+ console.log('');
280
+ const genSpinner = ora({ text: 'Generating .agentbridge.json...', indent: 4 }).start();
281
+ writeFileSync('.agentbridge.json', JSON.stringify(manifest, null, 2));
282
+ await sleep(200);
283
+ genSpinner.succeed('Created .agentbridge.json');
284
+ const mcpSpinner = ora({ text: 'Generating mcp-config.json...', indent: 4 }).start();
86
285
  const mcpConfig = {
87
286
  mcpServers: {
88
287
  [manifest.name]: {
@@ -91,21 +290,188 @@ export async function runInit() {
91
290
  },
92
291
  },
93
292
  };
94
- const mcpPath = 'mcp-config.json';
95
- writeFileSync(mcpPath, JSON.stringify(mcpConfig, null, 2));
96
- console.log(chalk.green(` Created ${mcpPath}`));
97
- console.log('');
98
- console.log(chalk.gray(' To use with Claude Desktop, add the config to:'));
99
- console.log(chalk.gray(' ~/.claude/claude_desktop_config.json'));
293
+ writeFileSync('mcp-config.json', JSON.stringify(mcpConfig, null, 2));
294
+ await sleep(200);
295
+ mcpSpinner.succeed('Created mcp-config.json');
296
+ publishAttempted = true;
297
+ publishSucceeded = await doPublish(specContent, manifest.name, true);
298
+ }
299
+ else {
300
+ // Step 3: Generate manifest
301
+ printStep(2, 5, 'Generate manifest');
302
+ const confirm = await askOnce(chalk.white(' Create .agentbridge.json? ') + chalk.gray('(Y/n) '));
303
+ if (isExitCommand(confirm)) {
304
+ console.log(chalk.gray(' Cancelled.'));
305
+ return;
306
+ }
307
+ if (confirm.toLowerCase() === 'n') {
308
+ console.log(chalk.gray(' Cancelled.'));
309
+ return;
310
+ }
311
+ const genSpinner = ora({ text: 'Generating .agentbridge.json...', indent: 4 }).start();
312
+ writeFileSync('.agentbridge.json', JSON.stringify(manifest, null, 2));
313
+ await sleep(200);
314
+ genSpinner.succeed('Created .agentbridge.json');
315
+ // Step 4: MCP config
316
+ printStep(3, 5, 'MCP server config');
317
+ const mcpAnswer = await askOnce(chalk.white(' Generate for Claude Desktop / Cursor / Windsurf? ') + chalk.gray('(Y/n) '));
318
+ if (isExitCommand(mcpAnswer)) {
319
+ console.log(chalk.gray(' Cancelled.'));
320
+ return;
321
+ }
322
+ if (mcpAnswer.toLowerCase() !== 'n') {
323
+ const mcpSpinner = ora({ text: 'Generating mcp-config.json...', indent: 4 }).start();
324
+ const mcpConfig = {
325
+ mcpServers: {
326
+ [manifest.name]: {
327
+ command: 'npx',
328
+ args: ['@agentbridgeai/mcp', '--manifest', './.agentbridge.json'],
329
+ },
330
+ },
331
+ };
332
+ writeFileSync('mcp-config.json', JSON.stringify(mcpConfig, null, 2));
333
+ await sleep(200);
334
+ mcpSpinner.succeed('Created mcp-config.json');
335
+ }
336
+ // Step 5: Publish
337
+ printStep(4, 5, 'Publish to directory');
338
+ const publishAnswer = await askOnce(chalk.white(' Publish to AgentBridge directory? ') + chalk.gray('(Y/n) '));
339
+ if (isExitCommand(publishAnswer)) {
340
+ console.log(chalk.gray(' Cancelled.'));
341
+ return;
342
+ }
343
+ if (publishAnswer.toLowerCase() !== 'n') {
344
+ const visibility = await askOnce(chalk.white(' Visibility ') +
345
+ chalk.gray('[public/private] ') +
346
+ chalk.gray('(default: public): '));
347
+ if (isExitCommand(visibility)) {
348
+ console.log(chalk.gray(' Cancelled.'));
349
+ return;
350
+ }
351
+ const normalized = visibility.trim().toLowerCase();
352
+ let finalIsPublic = true;
353
+ if (normalized === 'private' || normalized === 'pr') {
354
+ finalIsPublic = false;
355
+ }
356
+ else if (normalized === '' || normalized === 'public' || normalized === 'p') {
357
+ finalIsPublic = true;
358
+ }
359
+ else {
360
+ console.log(chalk.yellow(' Unknown visibility. Using public.'));
361
+ }
362
+ if (!finalIsPublic) {
363
+ console.log(chalk.gray(' Private APIs may require registry auth/ownership on hosted instances.'));
364
+ }
365
+ publishAttempted = true;
366
+ publishSucceeded = await doPublish(specContent, manifest.name, finalIsPublic);
367
+ }
100
368
  }
369
+ // Final summary
370
+ printSuccess(manifest.name, publishAttempted, publishSucceeded);
371
+ }
372
+ async function doPublish(specContent, name, isPublic = true) {
373
+ const spinner = ora({
374
+ text: `Publishing ${isPublic ? 'public' : 'private'} API to ${REGISTRY_URL}...`,
375
+ indent: 4,
376
+ }).start();
377
+ try {
378
+ const res = await fetch(`${REGISTRY_URL}/api/import`, {
379
+ method: 'POST',
380
+ headers: {
381
+ 'Content-Type': 'application/json',
382
+ ...getRegistryAuthHeaders(REGISTRY_URL),
383
+ },
384
+ body: JSON.stringify({ spec: specContent, is_public: isPublic }),
385
+ });
386
+ const responseText = await res.text();
387
+ let data = null;
388
+ try {
389
+ data = responseText ? JSON.parse(responseText) : null;
390
+ }
391
+ catch {
392
+ data = null;
393
+ }
394
+ const redirectedToLogin = res.redirected && res.url.includes('/login');
395
+ const looksLikeHtml = responseText.trimStart().toLowerCase().startsWith('<!doctype html') ||
396
+ responseText.trimStart().toLowerCase().startsWith('<html');
397
+ if (!res.ok || !data || redirectedToLogin) {
398
+ const authRequired = res.status === 401 || data?.code === 'AUTH_REQUIRED' || redirectedToLogin;
399
+ const errorMessage = data?.error ??
400
+ (redirectedToLogin ? 'Login required to publish APIs' : `Unexpected response (${res.status})`);
401
+ spinner.fail(`Publish failed: ${errorMessage}`);
402
+ if (authRequired && process.stdout.isTTY) {
403
+ console.log(chalk.gray(` Login required on ${REGISTRY_URL} before publishing.`));
404
+ const shouldLogin = await promptYesNo(' Open login window in browser now? (Y/n): ');
405
+ if (shouldLogin) {
406
+ const ok = await loginToRegistry(REGISTRY_URL);
407
+ if (!ok) {
408
+ console.log(chalk.red(' Login failed or timed out.'));
409
+ return false;
410
+ }
411
+ return doPublish(specContent, name, isPublic);
412
+ }
413
+ }
414
+ if (!data && responseText && process.stdout.isTTY) {
415
+ const preview = responseText.replace(/\s+/g, ' ').slice(0, 140);
416
+ console.log(chalk.gray(` Server response preview: ${preview}${responseText.length > 140 ? '…' : ''}`));
417
+ if (looksLikeHtml) {
418
+ console.log(chalk.yellow(` Registry at ${REGISTRY_URL} returned HTML instead of API JSON.`));
419
+ console.log(chalk.gray(' Check AGENTBRIDGE_REGISTRY (wrong host/port is likely).'));
420
+ console.log(chalk.gray(' Example: unset AGENTBRIDGE_REGISTRY (to use https://agentbridge.cc)'));
421
+ }
422
+ }
423
+ if (!isPublic) {
424
+ console.log(chalk.gray(' Tip: private publish may require logging in on the web UI or registry auth support in CLI.'));
425
+ }
426
+ return false;
427
+ }
428
+ spinner.succeed(`${isPublic ? 'Published' : 'Published (private)'} to ${chalk.cyan(`${REGISTRY_URL}/api/${data.name}`)}`);
429
+ return true;
430
+ }
431
+ catch (err) {
432
+ spinner.fail(`Publish failed: ${err.message}`);
433
+ return false;
434
+ }
435
+ }
436
+ function printSuccess(name, publishAttempted, publishSucceeded) {
101
437
  console.log('');
102
- console.log(chalk.bold.green(' Your API is now agent-ready!'));
438
+ if (publishAttempted && !publishSucceeded) {
439
+ console.log(chalk.yellow(' ╔══════════════════════════════════════╗'));
440
+ console.log(chalk.yellow(' ║') + chalk.bold.white(' ✓ Local setup complete ') + chalk.yellow('║'));
441
+ console.log(chalk.yellow(' ╚══════════════════════════════════════╝'));
442
+ console.log(chalk.yellow(' Publish did not complete. Local files were created.'));
443
+ }
444
+ else {
445
+ console.log(chalk.green(' ╔══════════════════════════════════════╗'));
446
+ console.log(chalk.green(' ║') + chalk.bold.white(' ✓ Your API is agent-ready! ') + chalk.green('║'));
447
+ console.log(chalk.green(' ╚══════════════════════════════════════╝'));
448
+ }
103
449
  console.log('');
104
- console.log(chalk.gray(' Next steps:'));
105
- console.log(chalk.gray(' 1. Host .agentbridge.json alongside your API'));
106
- console.log(chalk.gray(' 2. Users can: agentbridge add https://your-api.com/.agentbridge.json'));
107
- console.log(chalk.gray(' 3. Or use MCP: npx @agentbridgeai/mcp --manifest .agentbridge.json'));
450
+ console.log(chalk.white(' Use it now:'));
451
+ console.log('');
452
+ console.log(` ${chalk.gray('Chat')} ${chalk.cyan(`npx agentbridge chat ${name}`)}`);
453
+ if (!publishAttempted || publishSucceeded) {
454
+ console.log(` ${chalk.gray('Web')} ${chalk.cyan(`${REGISTRY_URL}/chat`)}`);
455
+ console.log(` ${chalk.gray('Browse')} ${chalk.cyan(`${REGISTRY_URL}/api/${name}`)}`);
456
+ }
457
+ else {
458
+ console.log(` ${chalk.gray('Publish')} ${chalk.cyan('agentbridge login')} ${chalk.gray('then retry init/publish')}`);
459
+ }
460
+ console.log('');
461
+ printDivider();
462
+ console.log('');
463
+ console.log(chalk.white(' MCP config') + chalk.gray(' (Claude Desktop / Cursor / Windsurf)'));
464
+ console.log('');
465
+ console.log(chalk.gray(' Add to your MCP settings:'));
466
+ console.log('');
467
+ console.log(chalk.white(' {'));
468
+ console.log(chalk.white(' "mcpServers": {'));
469
+ console.log(chalk.white(` "${name}": {`));
470
+ console.log(chalk.white(' "command": "npx",'));
471
+ console.log(chalk.white(` "args": ["@agentbridgeai/mcp", "--api", "${name}"]`));
472
+ console.log(chalk.white(' }'));
473
+ console.log(chalk.white(' }'));
474
+ console.log(chalk.white(' }'));
108
475
  console.log('');
109
- rl.close();
110
476
  }
111
477
  //# sourceMappingURL=commands.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"commands.js","sourceRoot":"","sources":["../src/commands.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"commands.js","sourceRoot":"","sources":["../src/commands.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -7,8 +7,28 @@ import { APIRegistry, convertOpenAPIToManifest, discoverFromDomain } from '@agen
7
7
  import { startRepl } from './repl.js';
8
8
  import { runInit } from './commands.js';
9
9
  import { readFileSync } from 'fs';
10
+ import { createServer } from 'http';
11
+ import { randomUUID } from 'crypto';
12
+ import { spawn } from 'child_process';
13
+ import Conf from 'conf';
10
14
  const REGISTRY_URL = process.env.AGENTBRIDGE_REGISTRY || 'https://agentbridge.cc';
15
+ const GROQ_BASE_URL = 'https://api.groq.com/openai/v1';
16
+ const GROQ_DEFAULT_MODEL = 'llama-3.3-70b-versatile';
17
+ const CLI_AUTH_PATH = '/api/cli-auth/start';
18
+ const config = new Conf({ projectName: 'agentbridge' });
11
19
  const program = new Command();
20
+ function parseMaybeJson(text) {
21
+ try {
22
+ return text ? JSON.parse(text) : null;
23
+ }
24
+ catch {
25
+ return null;
26
+ }
27
+ }
28
+ function isLikelyHtml(text) {
29
+ const v = text.trimStart().toLowerCase();
30
+ return v.startsWith('<!doctype html') || v.startsWith('<html');
31
+ }
12
32
  program
13
33
  .name('agentbridge')
14
34
  .description('Make any API agent-ready — interact with any service using natural language')
@@ -21,7 +41,7 @@ program
21
41
  .description('Start chatting — optionally specify an API name to auto-install from the directory')
22
42
  .option('--token <token>', 'API auth token for the target API')
23
43
  .action(async (apiName, opts) => {
24
- const llm = createLLMProvider();
44
+ const llm = await createLLMProvider();
25
45
  const registry = new APIRegistry();
26
46
  // If user specified an API name, try to find and install it
27
47
  if (apiName) {
@@ -62,9 +82,8 @@ program
62
82
  // Load all plugins
63
83
  const registryPlugins = registry.toPlugins();
64
84
  const allPlugins = [...registryPlugins];
65
- if (allPlugins.length === 2) {
66
- // Only built-in plugins
67
- console.log(chalk.gray('\n No APIs installed. Using built-in weather & todo plugins.'));
85
+ if (allPlugins.length === 0) {
86
+ console.log(chalk.gray('\n No APIs installed yet.'));
68
87
  console.log(chalk.gray(' Install an API: agentbridge chat <api-name>'));
69
88
  console.log(chalk.gray(' Or browse: agentbridge search <query>\n'));
70
89
  }
@@ -127,6 +146,7 @@ program
127
146
  .command('publish [file]')
128
147
  .description('Publish your API to the AgentBridge directory (agentbridge.cc)')
129
148
  .option('--url <url>', 'URL to your OpenAPI spec (instead of local file)')
149
+ .option('--private', 'Do not list on the public directory')
130
150
  .option('--registry <url>', 'Custom registry URL')
131
151
  .action(async (file, opts) => {
132
152
  const registryUrl = opts?.registry || REGISTRY_URL;
@@ -167,16 +187,85 @@ program
167
187
  }
168
188
  const res = await fetch(`${registryUrl}/api/import`, {
169
189
  method: 'POST',
170
- headers: { 'Content-Type': 'application/json' },
171
- body: JSON.stringify(body),
190
+ headers: {
191
+ 'Content-Type': 'application/json',
192
+ ...getRegistryAuthHeaders(registryUrl),
193
+ },
194
+ body: JSON.stringify({ ...body, is_public: !opts?.private }),
172
195
  });
173
- const data = await res.json();
196
+ const raw = await res.text();
197
+ const data = parseMaybeJson(raw);
174
198
  if (!res.ok) {
175
- console.error(chalk.red(` Failed: ${data.error}`));
199
+ if (res.status === 401 || data?.code === 'AUTH_REQUIRED') {
200
+ console.error(chalk.yellow(' Login required to publish on this registry.'));
201
+ const shouldLogin = await promptYesNo(' Open login in browser now? (Y/n): ');
202
+ if (shouldLogin) {
203
+ const ok = await loginToRegistry(registryUrl);
204
+ if (!ok) {
205
+ console.error(chalk.red(' Login failed or was cancelled.'));
206
+ return;
207
+ }
208
+ const retryRes = await fetch(`${registryUrl}/api/import`, {
209
+ method: 'POST',
210
+ headers: {
211
+ 'Content-Type': 'application/json',
212
+ ...getRegistryAuthHeaders(registryUrl),
213
+ },
214
+ body: JSON.stringify({ ...body, is_public: !opts?.private }),
215
+ });
216
+ const retryRaw = await retryRes.text();
217
+ const retryData = parseMaybeJson(retryRaw);
218
+ if (!retryRes.ok) {
219
+ const msg = retryData?.error || `Unexpected response (${retryRes.status})`;
220
+ console.error(chalk.red(` Failed after login: ${msg}`));
221
+ if (!retryData && retryRaw) {
222
+ const preview = retryRaw.replace(/\s+/g, ' ').slice(0, 140);
223
+ console.error(chalk.gray(` Server response preview: ${preview}${retryRaw.length > 140 ? '…' : ''}`));
224
+ }
225
+ return;
226
+ }
227
+ if (!retryData) {
228
+ console.error(chalk.red(' Failed after login: server did not return JSON.'));
229
+ const preview = retryRaw.replace(/\s+/g, ' ').slice(0, 140);
230
+ console.error(chalk.gray(` Server response preview: ${preview}${retryRaw.length > 140 ? '…' : ''}`));
231
+ return;
232
+ }
233
+ console.log('');
234
+ console.log(chalk.green.bold(` Published${opts?.private ? ' (private)' : ''}: ${retryData.name}`));
235
+ console.log(chalk.gray(` ${retryData.description}`));
236
+ console.log(chalk.gray(` ${retryData.action_count} actions registered`));
237
+ console.log('');
238
+ console.log(chalk.white(' Your API is now live at:'));
239
+ console.log(chalk.cyan(` ${registryUrl}/api/${retryData.name}`));
240
+ console.log('');
241
+ return;
242
+ }
243
+ return;
244
+ }
245
+ const msg = data?.error || `Unexpected response (${res.status})`;
246
+ console.error(chalk.red(` Failed: ${msg}`));
247
+ if (!data && raw) {
248
+ const preview = raw.replace(/\s+/g, ' ').slice(0, 140);
249
+ console.error(chalk.gray(` Server response preview: ${preview}${raw.length > 140 ? '…' : ''}`));
250
+ if (isLikelyHtml(raw)) {
251
+ console.error(chalk.yellow(` Registry at ${registryUrl} returned HTML instead of API JSON.`));
252
+ console.error(chalk.gray(' Check AGENTBRIDGE_REGISTRY (wrong host/port is likely).'));
253
+ }
254
+ }
255
+ return;
256
+ }
257
+ if (!data) {
258
+ console.error(chalk.red(' Failed: server did not return JSON.'));
259
+ const preview = raw.replace(/\s+/g, ' ').slice(0, 140);
260
+ console.error(chalk.gray(` Server response preview: ${preview}${raw.length > 140 ? '…' : ''}`));
261
+ if (isLikelyHtml(raw)) {
262
+ console.error(chalk.yellow(` Registry at ${registryUrl} returned HTML instead of API JSON.`));
263
+ console.error(chalk.gray(' Check AGENTBRIDGE_REGISTRY (wrong host/port is likely).'));
264
+ }
176
265
  return;
177
266
  }
178
267
  console.log('');
179
- console.log(chalk.green.bold(` Published: ${data.name}`));
268
+ console.log(chalk.green.bold(` Published${opts?.private ? ' (private)' : ''}: ${data.name}`));
180
269
  console.log(chalk.gray(` ${data.description}`));
181
270
  console.log(chalk.gray(` ${data.action_count} actions registered`));
182
271
  console.log('');
@@ -188,6 +277,16 @@ program
188
277
  console.log(chalk.gray(` CLI: agentbridge chat ${data.name}`));
189
278
  console.log(chalk.gray(` SDK: fetch("${registryUrl}/api/${data.name}/manifest")`));
190
279
  console.log('');
280
+ console.log(chalk.white(' MCP (Claude Desktop / Cursor / Windsurf):'));
281
+ console.log(chalk.gray(` {`));
282
+ console.log(chalk.gray(` "mcpServers": {`));
283
+ console.log(chalk.gray(` "${data.name}": {`));
284
+ console.log(chalk.gray(` "command": "npx",`));
285
+ console.log(chalk.gray(` "args": ["@agentbridgeai/mcp", "--api", "${data.name}"]`));
286
+ console.log(chalk.gray(` }`));
287
+ console.log(chalk.gray(` }`));
288
+ console.log(chalk.gray(` }`));
289
+ console.log('');
191
290
  }
192
291
  catch (err) {
193
292
  console.error(chalk.red(` Publish failed: ${err.message}`));
@@ -319,11 +418,121 @@ program
319
418
  program
320
419
  .command('init')
321
420
  .description('Generate .agentbridge.json from your OpenAPI spec (local only, use "publish" for directory)')
322
- .action(async () => {
323
- await runInit();
421
+ .option('-y, --yes', 'Skip prompts, use defaults')
422
+ .option('--spec <path>', 'Path or URL to OpenAPI spec')
423
+ .action(async (opts) => {
424
+ await runInit({ yes: opts?.yes, spec: opts?.spec });
425
+ });
426
+ // ---- Login: authenticate CLI with hosted registry ----
427
+ program
428
+ .command('login')
429
+ .description('Login to AgentBridge registry from CLI')
430
+ .option('--registry <url>', 'Custom registry URL')
431
+ .action(async (opts) => {
432
+ const registryUrl = opts?.registry || REGISTRY_URL;
433
+ const ok = await loginToRegistry(registryUrl);
434
+ if (!ok)
435
+ process.exit(1);
324
436
  });
325
437
  // ---- Helper ----
326
- function createLLMProvider() {
438
+ function getRegistryAuthHeaders(registryUrl) {
439
+ const envToken = process.env.AGENTBRIDGE_TOKEN;
440
+ const savedToken = config.get('registryToken');
441
+ const savedRegistry = config.get('registryUrl');
442
+ const token = envToken || (savedRegistry === registryUrl ? savedToken : undefined);
443
+ if (!token)
444
+ return {};
445
+ return { Authorization: `Bearer ${token}` };
446
+ }
447
+ async function promptYesNo(question, defaultYes = true) {
448
+ const readline = await import('readline');
449
+ const rl = readline.createInterface({ input: process.stdin, output: process.stdout });
450
+ const answer = await new Promise(resolve => rl.question(chalk.white(question), resolve));
451
+ rl.close();
452
+ const normalized = answer.trim().toLowerCase();
453
+ if (!normalized)
454
+ return defaultYes;
455
+ if (['y', 'yes'].includes(normalized))
456
+ return true;
457
+ if (['n', 'no'].includes(normalized))
458
+ return false;
459
+ return defaultYes;
460
+ }
461
+ function openBrowser(url) {
462
+ return new Promise(resolve => {
463
+ const platform = process.platform;
464
+ const cmd = platform === 'darwin' ? 'open' :
465
+ platform === 'win32' ? 'cmd' :
466
+ 'xdg-open';
467
+ const args = platform === 'win32' ? ['/c', 'start', '', url] : [url];
468
+ const child = spawn(cmd, args, { stdio: 'ignore', detached: true });
469
+ child.once('error', () => resolve(false));
470
+ child.once('spawn', () => {
471
+ child.unref();
472
+ resolve(true);
473
+ });
474
+ });
475
+ }
476
+ async function loginToRegistry(registryUrl) {
477
+ const state = randomUUID();
478
+ const callbackData = await waitForCliLoginCallback(state, registryUrl);
479
+ if (!callbackData)
480
+ return false;
481
+ config.set('registryToken', callbackData.token);
482
+ config.set('registryUrl', registryUrl);
483
+ console.log(chalk.green(' Login successful. CLI is authenticated for publish operations.'));
484
+ return true;
485
+ }
486
+ async function waitForCliLoginCallback(state, registryUrl) {
487
+ return new Promise(async (resolve) => {
488
+ const server = createServer((req, res) => {
489
+ const reqUrl = new URL(req.url || '/', 'http://127.0.0.1');
490
+ if (reqUrl.pathname !== '/callback') {
491
+ res.statusCode = 404;
492
+ res.end('Not found');
493
+ return;
494
+ }
495
+ const token = reqUrl.searchParams.get('token');
496
+ const returnedState = reqUrl.searchParams.get('state');
497
+ const ok = token && returnedState === state;
498
+ res.statusCode = ok ? 200 : 400;
499
+ res.setHeader('Content-Type', 'text/html; charset=utf-8');
500
+ res.end(ok
501
+ ? '<h2>AgentBridge CLI login complete.</h2><p>You can close this tab and return to terminal.</p>'
502
+ : '<h2>AgentBridge CLI login failed.</h2><p>Invalid callback state.</p>');
503
+ server.close();
504
+ resolve(ok ? { token: token } : null);
505
+ });
506
+ server.listen(0, '127.0.0.1', async () => {
507
+ const address = server.address();
508
+ if (!address || typeof address === 'string') {
509
+ server.close();
510
+ resolve(null);
511
+ return;
512
+ }
513
+ const callbackUrl = `http://127.0.0.1:${address.port}/callback`;
514
+ const loginUrl = `${registryUrl}${CLI_AUTH_PATH}?callback_url=${encodeURIComponent(callbackUrl)}&state=${encodeURIComponent(state)}`;
515
+ console.log('');
516
+ console.log(chalk.bold.cyan(' AgentBridge Login'));
517
+ console.log(chalk.gray(` Registry: ${registryUrl}`));
518
+ console.log(chalk.gray(' Complete login in your browser, then return here.'));
519
+ console.log(chalk.white(` ${loginUrl}`));
520
+ const opened = await openBrowser(loginUrl);
521
+ if (opened) {
522
+ console.log(chalk.gray(' Opened browser window for login.'));
523
+ }
524
+ else {
525
+ console.log(chalk.yellow(' Could not open browser automatically.'));
526
+ }
527
+ const timeout = setTimeout(() => {
528
+ server.close();
529
+ resolve(null);
530
+ }, 180000);
531
+ server.on('close', () => clearTimeout(timeout));
532
+ });
533
+ });
534
+ }
535
+ async function createLLMProvider() {
327
536
  if (process.env.ANTHROPIC_API_KEY) {
328
537
  return new ClaudeProvider({
329
538
  apiKey: process.env.ANTHROPIC_API_KEY,
@@ -331,17 +540,97 @@ function createLLMProvider() {
331
540
  });
332
541
  }
333
542
  if (process.env.OPENAI_API_KEY) {
543
+ const isGroq = process.env.OPENAI_BASE_URL === GROQ_BASE_URL;
334
544
  return new OpenAIProvider({
335
545
  apiKey: process.env.OPENAI_API_KEY,
336
- model: process.env.AGENTBRIDGE_MODEL || undefined,
546
+ model: process.env.AGENTBRIDGE_MODEL || (isGroq ? GROQ_DEFAULT_MODEL : undefined),
337
547
  baseURL: process.env.OPENAI_BASE_URL || undefined,
338
548
  });
339
549
  }
340
- console.error(chalk.red('No LLM API key found. Set one of:'));
341
- console.error(' ANTHROPIC_API_KEY=sk-ant-...');
342
- console.error(' OPENAI_API_KEY=sk-...');
343
- console.error(' OPENAI_API_KEY=gsk_... OPENAI_BASE_URL=https://api.groq.com/openai/v1');
344
- process.exit(1);
550
+ // Interactive key setup
551
+ const readline = await import('readline');
552
+ const rl = readline.createInterface({ input: process.stdin, output: process.stdout });
553
+ const ask = (q) => new Promise(resolve => rl.question(q, resolve));
554
+ const closePrompt = () => {
555
+ rl.close();
556
+ // Ensure stdin remains active for the REPL that starts next.
557
+ if (!process.stdin.destroyed)
558
+ process.stdin.resume();
559
+ };
560
+ console.log('');
561
+ console.log(chalk.cyan(' ╔══════════════════════════════════════╗'));
562
+ console.log(chalk.cyan(' ║') + chalk.bold.white(' LLM API Key Required ') + chalk.cyan('║'));
563
+ console.log(chalk.cyan(' ╚══════════════════════════════════════╝'));
564
+ console.log('');
565
+ console.log(chalk.white(' AgentBridge needs an LLM key to chat with APIs.'));
566
+ console.log(chalk.white(' Your key stays local — never sent to AgentBridge.'));
567
+ console.log('');
568
+ console.log(chalk.gray(' Supported providers:'));
569
+ console.log(` ${chalk.cyan('1.')} Anthropic (Claude) — ${chalk.gray('https://console.anthropic.com/settings/keys')}`);
570
+ console.log(` ${chalk.cyan('2.')} OpenAI (GPT) — ${chalk.gray('https://platform.openai.com/api-keys')}`);
571
+ console.log(` ${chalk.cyan('3.')} Groq (fast & free) — ${chalk.gray('https://console.groq.com/keys')}`);
572
+ console.log('');
573
+ const choice = await ask(chalk.white(' Choose provider (1/2/3): '));
574
+ console.log('');
575
+ if (choice === '1') {
576
+ const key = await ask(chalk.white(' Anthropic API key: '));
577
+ closePrompt();
578
+ if (!key.trim()) {
579
+ console.log(chalk.red(' No key provided.'));
580
+ process.exit(1);
581
+ }
582
+ process.env.ANTHROPIC_API_KEY = key.trim();
583
+ console.log('');
584
+ console.log(chalk.green(' ✔ Key set for this session'));
585
+ console.log(chalk.gray(' To persist, add to your shell profile:'));
586
+ console.log(chalk.gray(` export ANTHROPIC_API_KEY=${key.trim().slice(0, 10)}...`));
587
+ console.log('');
588
+ return new ClaudeProvider({
589
+ apiKey: key.trim(),
590
+ model: process.env.AGENTBRIDGE_MODEL || undefined,
591
+ });
592
+ }
593
+ else if (choice === '2') {
594
+ const key = await ask(chalk.white(' OpenAI API key: '));
595
+ closePrompt();
596
+ if (!key.trim()) {
597
+ console.log(chalk.red(' No key provided.'));
598
+ process.exit(1);
599
+ }
600
+ console.log('');
601
+ console.log(chalk.green(' ✔ Key set for this session'));
602
+ console.log(chalk.gray(' To persist, add to your shell profile:'));
603
+ console.log(chalk.gray(` export OPENAI_API_KEY=${key.trim().slice(0, 10)}...`));
604
+ console.log('');
605
+ return new OpenAIProvider({
606
+ apiKey: key.trim(),
607
+ model: process.env.AGENTBRIDGE_MODEL || undefined,
608
+ });
609
+ }
610
+ else if (choice === '3') {
611
+ const key = await ask(chalk.white(' Groq API key: '));
612
+ closePrompt();
613
+ if (!key.trim()) {
614
+ console.log(chalk.red(' No key provided.'));
615
+ process.exit(1);
616
+ }
617
+ console.log('');
618
+ console.log(chalk.green(' ✔ Key set for this session'));
619
+ console.log(chalk.gray(' To persist, add to your shell profile:'));
620
+ console.log(chalk.gray(` export OPENAI_API_KEY=${key.trim().slice(0, 10)}...`));
621
+ console.log(chalk.gray(' export OPENAI_BASE_URL=https://api.groq.com/openai/v1'));
622
+ console.log('');
623
+ return new OpenAIProvider({
624
+ apiKey: key.trim(),
625
+ model: process.env.AGENTBRIDGE_MODEL || GROQ_DEFAULT_MODEL,
626
+ baseURL: GROQ_BASE_URL,
627
+ });
628
+ }
629
+ else {
630
+ closePrompt();
631
+ console.log(chalk.red(' Invalid choice.'));
632
+ process.exit(1);
633
+ }
345
634
  }
346
635
  program.parse();
347
636
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"repl.d.ts","sourceRoot":"","sources":["../src/repl.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,iBAAiB,EAA0B,MAAM,qBAAqB,CAAC;AAErF,wBAAsB,SAAS,CAAC,MAAM,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC,CAuExE"}
1
+ {"version":3,"file":"repl.d.ts","sourceRoot":"","sources":["../src/repl.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,iBAAiB,EAA0B,MAAM,qBAAqB,CAAC;AAErF,wBAAsB,SAAS,CAAC,MAAM,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC,CAgFxE"}
package/dist/repl.js CHANGED
@@ -4,6 +4,9 @@ import ora from 'ora';
4
4
  export async function startRepl(engine) {
5
5
  const sessionId = engine.createSession();
6
6
  const plugins = engine.getPlugins();
7
+ // In case a previous prompt (e.g. API key setup) paused stdin, resume it.
8
+ if (!process.stdin.destroyed)
9
+ process.stdin.resume();
7
10
  console.log('');
8
11
  console.log(chalk.bold.cyan(' AgentBridge') + chalk.gray(' v0.1.0'));
9
12
  console.log(chalk.gray(` Loaded plugins: ${plugins.map(p => p.name).join(', ') || 'none'}`));
@@ -27,7 +30,13 @@ export async function startRepl(engine) {
27
30
  rl.prompt();
28
31
  return;
29
32
  }
30
- const spinner = ora({ text: 'Thinking...', color: 'cyan' }).start();
33
+ const spinner = ora({
34
+ text: 'Thinking...',
35
+ color: 'cyan',
36
+ // Keep readline stable in interactive chat; ora's default stdin handling
37
+ // can interfere with subsequent prompts in a REPL.
38
+ discardStdin: false,
39
+ }).start();
31
40
  try {
32
41
  const response = await engine.chat(sessionId, input, {
33
42
  onToolCall: (tc) => {
package/dist/repl.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"repl.js","sourceRoot":"","sources":["../src/repl.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"repl.js","sourceRoot":"","sources":["../src/repl.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@agentbridgeai/cli",
3
- "version": "0.1.0",
3
+ "version": "0.1.2",
4
4
  "description": "CLI to chat with any API using natural language — powered by AgentBridge",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -34,9 +34,9 @@
34
34
  "ora": "^8.1.0",
35
35
  "commander": "^12.1.0",
36
36
  "conf": "^13.0.0",
37
+ "@agentbridgeai/llm": "^0.1.0",
37
38
  "@agentbridgeai/core": "^0.1.0",
38
- "@agentbridgeai/openapi": "^0.1.0",
39
- "@agentbridgeai/llm": "^0.1.0"
39
+ "@agentbridgeai/openapi": "^0.1.0"
40
40
  },
41
41
  "devDependencies": {
42
42
  "@types/node": "^22.0.0",