agents-bridge 0.1.2 → 0.1.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.
@@ -8,51 +8,100 @@
8
8
  "max_retry_interval": 60
9
9
  }
10
10
  },
11
- "agents": {
12
- "defaults": {
13
- "model": {
14
- "primary": "claude-cli/opus-4.6"
15
- },
16
- "cliBackends": {
17
- "claude-cli": {
18
- "command": "claude",
19
- "args": [
20
- "-p",
21
- "--output-format",
22
- "json",
23
- "--dangerously-skip-permissions"
24
- ],
25
- "resumeArgs": [
26
- "-p",
27
- "--output-format",
28
- "json",
29
- "--dangerously-skip-permissions",
30
- "--resume",
31
- "{sessionId}"
32
- ],
33
- "output": "json",
34
- "modelArg": "--model",
35
- "sessionArg": "--session-id",
36
- "sessionIdFields": [
37
- "session_id",
38
- "sessionId",
11
+ "agents": {
12
+ "defaults": {
13
+ "model": {
14
+ "primary": "claude-cli/opus-4.6",
15
+ "fallbacks": [
16
+ "codex-cli/gpt-5.4"
17
+ ]
18
+ },
19
+ "cliBackends": {
20
+ "claude-cli": {
21
+ "command": "claude",
22
+ "runtimeMode": "exec",
23
+ "args": [
24
+ "-p",
25
+ "--verbose",
26
+ "--output-format",
27
+ "stream-json",
28
+ "--dangerously-skip-permissions"
29
+ ],
30
+ "resumeArgs": [
31
+ "-p",
32
+ "--verbose",
33
+ "--output-format",
34
+ "stream-json",
35
+ "--dangerously-skip-permissions",
36
+ "--resume",
37
+ "{sessionId}"
38
+ ],
39
+ "output": "jsonl",
40
+ "resumeOutput": "jsonl",
41
+ "input": "arg",
42
+ "modelArg": "--model",
43
+ "sessionArg": "--session-id",
44
+ "sessionIdFields": [
45
+ "session_id",
46
+ "sessionId",
39
47
  "conversation_id",
40
48
  "conversationId"
41
49
  ],
42
- "systemPromptArg": "--append-system-prompt",
43
- "systemPromptMode": "append",
44
- "systemPromptWhen": "first",
45
- "sessionMode": "always",
46
- "serialize": true
47
- },
48
- "codex-cli": {
49
- "command": "codex",
50
- "runtimeMode": "app-server",
51
- "appServer": {
52
- "listen": "stdio://",
53
- "sessionSource": "agent-bridge",
54
- "startupTimeoutMs": 15000,
55
- "requestTimeoutMs": 30000,
50
+ "systemPromptArg": "--append-system-prompt",
51
+ "systemPromptMode": "append",
52
+ "systemPromptWhen": "first",
53
+ "clearEnv": [
54
+ "ANTHROPIC_API_KEY",
55
+ "ANTHROPIC_API_KEY_OLD"
56
+ ],
57
+ "sessionMode": "always",
58
+ "serialize": true,
59
+ "reliability": {
60
+ "watchdog": {
61
+ "fresh": {
62
+ "noOutputTimeoutRatio": 0.8,
63
+ "minMs": 180000,
64
+ "maxMs": 600000
65
+ },
66
+ "resume": {
67
+ "noOutputTimeoutRatio": 0.3,
68
+ "minMs": 60000,
69
+ "maxMs": 180000
70
+ }
71
+ }
72
+ }
73
+ },
74
+ "codex-cli": {
75
+ "command": "codex",
76
+ "runtimeMode": "app-server",
77
+ "args": [
78
+ "exec",
79
+ "--json",
80
+ "--color",
81
+ "never",
82
+ "--sandbox",
83
+ "read-only",
84
+ "--skip-git-repo-check"
85
+ ],
86
+ "resumeArgs": [
87
+ "exec",
88
+ "resume",
89
+ "{sessionId}",
90
+ "--color",
91
+ "never",
92
+ "--sandbox",
93
+ "read-only",
94
+ "--skip-git-repo-check"
95
+ ],
96
+ "output": "jsonl",
97
+ "resumeOutput": "text",
98
+ "input": "arg",
99
+ "modelArg": "--model",
100
+ "appServer": {
101
+ "listen": "stdio://",
102
+ "sessionSource": "agent-bridge",
103
+ "startupTimeoutMs": 15000,
104
+ "requestTimeoutMs": 30000,
56
105
  "serviceName": "agent-bridge",
57
106
  "experimentalApi": false,
58
107
  "approvalPolicy": "never",
@@ -60,15 +109,31 @@
60
109
  "persistExtendedHistory": false,
61
110
  "experimentalRawEvents": false
62
111
  },
63
- "sessionIdFields": [
64
- "thread_id"
65
- ],
66
- "sessionMode": "existing",
67
- "serialize": true
68
- }
69
- }
70
- }
71
- },
112
+ "sessionIdFields": [
113
+ "thread_id"
114
+ ],
115
+ "sessionMode": "existing",
116
+ "imageArg": "--image",
117
+ "imageMode": "repeat",
118
+ "serialize": true,
119
+ "reliability": {
120
+ "watchdog": {
121
+ "fresh": {
122
+ "noOutputTimeoutRatio": 0.8,
123
+ "minMs": 180000,
124
+ "maxMs": 600000
125
+ },
126
+ "resume": {
127
+ "noOutputTimeoutRatio": 0.3,
128
+ "minMs": 60000,
129
+ "maxMs": 180000
130
+ }
131
+ }
132
+ }
133
+ }
134
+ }
135
+ }
136
+ },
72
137
  "skills": {
73
138
  "dirs": [
74
139
  "./skills"
@@ -1 +1 @@
1
- {"version":3,"file":"cmd-onboard.d.ts","sourceRoot":"","sources":["../../src/cli/cmd-onboard.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AAE5C,wBAAsB,UAAU,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CA8G9D"}
1
+ {"version":3,"file":"cmd-onboard.d.ts","sourceRoot":"","sources":["../../src/cli/cmd-onboard.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AAE5C,wBAAsB,UAAU,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAwC9D"}
@@ -3,6 +3,7 @@ import { createInterface } from 'node:readline/promises';
3
3
  import { stdin, stdout } from 'node:process';
4
4
  import { DATA_DIR, DATA_CONFIG_PATH } from '../config/paths.js';
5
5
  import { ensureDataDirs } from '../config/agent-dirs.js';
6
+ import { createDefaultConfig, ONBOARD_MODEL_CHOICES } from '../config/default-config.js';
6
7
  export async function cmdOnboard(_args) {
7
8
  console.log('agents-bridge - Interactive Setup\n');
8
9
  if (!existsSync(DATA_DIR)) {
@@ -22,86 +23,16 @@ export async function cmdOnboard(_args) {
22
23
  const rl = createInterface({ input: stdin, output: stdout });
23
24
  const gatewayUrl = await rl.question('Botlink gateway URL: ');
24
25
  const botToken = await rl.question('Bot token: ');
25
- const modelChoices = [
26
- 'claude-cli/opus-4.6',
27
- 'codex-cli/gpt-5.4',
28
- 'anthropic/claude-sonnet-4-6',
29
- ];
30
26
  console.log('\nAvailable models:');
31
- modelChoices.forEach((m, i) => console.log(` ${i + 1}. ${m}`));
32
- const modelIdx = await rl.question(`Select default model [1-${modelChoices.length}] (default: 1): `);
33
- const selectedModel = modelChoices[parseInt(modelIdx, 10) - 1] ?? modelChoices[0];
27
+ ONBOARD_MODEL_CHOICES.forEach((m, i) => console.log(` ${i + 1}. ${m}`));
28
+ const modelIdx = await rl.question(`Select default model [1-${ONBOARD_MODEL_CHOICES.length}] (default: 1): `);
29
+ const selectedModel = ONBOARD_MODEL_CHOICES[parseInt(modelIdx, 10) - 1] ?? ONBOARD_MODEL_CHOICES[0];
34
30
  rl.close();
35
- const config = {
36
- channels: {
37
- botlink: {
38
- gateway_url: gatewayUrl.trim(),
39
- bot_token: botToken.trim(),
40
- poll_timeout: 30,
41
- retry_interval: 5,
42
- max_retry_interval: 60,
43
- },
44
- },
45
- agents: {
46
- defaults: {
47
- model: {
48
- primary: selectedModel,
49
- fallbacks: modelChoices.filter(m => m !== selectedModel).slice(0, 1),
50
- },
51
- cliBackends: {
52
- 'claude-cli': {
53
- command: 'claude',
54
- args: ['-p', '--output-format', 'json'],
55
- resumeArgs: ['-p', '--output-format', 'json', '--resume', '{sessionId}'],
56
- output: 'json',
57
- modelArg: '--model',
58
- sessionArg: '--session-id',
59
- sessionIdFields: ['session_id', 'sessionId', 'conversation_id', 'conversationId'],
60
- systemPromptArg: '--append-system-prompt',
61
- systemPromptMode: 'append',
62
- systemPromptWhen: 'first',
63
- clearEnv: ['ANTHROPIC_API_KEY', 'ANTHROPIC_API_KEY_OLD'],
64
- sessionMode: 'always',
65
- serialize: true,
66
- reliability: {
67
- watchdog: {
68
- fresh: { noOutputTimeoutRatio: 0.8, minMs: 180000, maxMs: 600000 },
69
- resume: { noOutputTimeoutRatio: 0.3, minMs: 60000, maxMs: 180000 },
70
- },
71
- },
72
- },
73
- 'codex-cli': {
74
- command: 'codex',
75
- runtimeMode: 'app-server',
76
- appServer: {
77
- listen: 'stdio://',
78
- sessionSource: 'agent-bridge',
79
- startupTimeoutMs: 15000,
80
- requestTimeoutMs: 30000,
81
- serviceName: 'agent-bridge',
82
- experimentalApi: false,
83
- approvalPolicy: 'never',
84
- sandbox: 'read-only',
85
- persistExtendedHistory: false,
86
- experimentalRawEvents: false,
87
- },
88
- sessionIdFields: ['thread_id'],
89
- sessionMode: 'existing',
90
- serialize: true,
91
- reliability: {
92
- watchdog: {
93
- fresh: { noOutputTimeoutRatio: 0.8, minMs: 180000, maxMs: 600000 },
94
- resume: { noOutputTimeoutRatio: 0.3, minMs: 60000, maxMs: 180000 },
95
- },
96
- },
97
- },
98
- },
99
- },
100
- },
101
- logging: {
102
- level: 'info',
103
- },
104
- };
31
+ const config = createDefaultConfig({
32
+ gatewayUrl,
33
+ botToken,
34
+ selectedModel,
35
+ });
105
36
  writeFileSync(DATA_CONFIG_PATH, JSON.stringify(config, null, 2) + '\n', 'utf-8');
106
37
  console.log(`\nConfiguration saved to ${DATA_CONFIG_PATH}`);
107
38
  console.log('\nRun `agents-bridge start` to start the gateway.');
@@ -1 +1 @@
1
- {"version":3,"file":"cmd-onboard.js","sourceRoot":"","sources":["../../src/cli/cmd-onboard.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cmd-onboard.js","sourceRoot":"","sources":["../../src/cli/cmd-onboard.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAC9D,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAA;AACxD,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AAC5C,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AAC/D,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAA;AACxD,OAAO,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAA;AAGxF,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,KAAc;IAC7C,OAAO,CAAC,GAAG,CAAC,qCAAqC,CAAC,CAAA;IAElD,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC1B,SAAS,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;IAC1C,CAAC;IACD,cAAc,EAAE,CAAA;IAEhB,IAAI,UAAU,CAAC,gBAAgB,CAAC,EAAE,CAAC;QACjC,OAAO,CAAC,GAAG,CAAC,4BAA4B,gBAAgB,EAAE,CAAC,CAAA;QAC3D,MAAM,EAAE,GAAG,eAAe,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAA;QAC5D,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,mBAAmB,CAAC,CAAA;QACrD,EAAE,CAAC,KAAK,EAAE,CAAA;QACV,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,KAAK,GAAG,EAAE,CAAC;YACxC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;YACvB,OAAM;QACR,CAAC;IACH,CAAC;IAED,MAAM,EAAE,GAAG,eAAe,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAA;IAE5D,MAAM,UAAU,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,uBAAuB,CAAC,CAAA;IAC7D,MAAM,QAAQ,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAA;IAEjD,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAA;IAClC,qBAAqB,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAA;IACxE,MAAM,QAAQ,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,2BAA2B,qBAAqB,CAAC,MAAM,kBAAkB,CAAC,CAAA;IAC7G,MAAM,aAAa,GAAG,qBAAqB,CAAC,QAAQ,CAAC,QAAQ,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,qBAAqB,CAAC,CAAC,CAAC,CAAA;IAEnG,EAAE,CAAC,KAAK,EAAE,CAAA;IAEV,MAAM,MAAM,GAAG,mBAAmB,CAAC;QACjC,UAAU;QACV,QAAQ;QACR,aAAa;KACd,CAAC,CAAA;IAEF,aAAa,CAAC,gBAAgB,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,OAAO,CAAC,CAAA;IAChF,OAAO,CAAC,GAAG,CAAC,4BAA4B,gBAAgB,EAAE,CAAC,CAAA;IAC3D,OAAO,CAAC,GAAG,CAAC,mDAAmD,CAAC,CAAA;AAClE,CAAC"}
@@ -0,0 +1,4 @@
1
+ import type { CliArgs } from './run-main.js';
2
+ export declare function getPackageVersion(): string;
3
+ export declare function cmdVersion(_args: CliArgs): Promise<void>;
4
+ //# sourceMappingURL=cmd-version.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cmd-version.d.ts","sourceRoot":"","sources":["../../src/cli/cmd-version.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AAE5C,wBAAgB,iBAAiB,IAAI,MAAM,CAU1C;AAED,wBAAsB,UAAU,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAE9D"}
@@ -0,0 +1,12 @@
1
+ import { readFileSync } from 'node:fs';
2
+ export function getPackageVersion() {
3
+ const packageJson = JSON.parse(readFileSync(new URL('../../package.json', import.meta.url), 'utf-8'));
4
+ if (!packageJson.version) {
5
+ throw new Error('Unable to determine package version');
6
+ }
7
+ return packageJson.version;
8
+ }
9
+ export async function cmdVersion(_args) {
10
+ console.log(getPackageVersion());
11
+ }
12
+ //# sourceMappingURL=cmd-version.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cmd-version.js","sourceRoot":"","sources":["../../src/cli/cmd-version.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AAGtC,MAAM,UAAU,iBAAiB;IAC/B,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAC5B,YAAY,CAAC,IAAI,GAAG,CAAC,oBAAoB,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC,CAC9C,CAAA;IAEzB,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC;QACzB,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAA;IACxD,CAAC;IAED,OAAO,WAAW,CAAC,OAAO,CAAA;AAC5B,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,KAAc;IAC7C,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE,CAAC,CAAA;AAClC,CAAC"}
@@ -1,9 +1,10 @@
1
- export type Command = 'start' | 'stop' | 'status' | 'onboard' | 'doctor' | 'logs' | 'config' | 'help';
1
+ export type Command = 'start' | 'stop' | 'status' | 'onboard' | 'doctor' | 'logs' | 'config' | 'version' | 'help';
2
2
  export interface CliArgs {
3
3
  command: Command;
4
4
  config?: string;
5
5
  daemon: boolean;
6
6
  help: boolean;
7
+ version: boolean;
7
8
  rest: string[];
8
9
  }
9
10
  export declare function parseCliArgs(argv?: string[]): CliArgs;
@@ -1 +1 @@
1
- {"version":3,"file":"run-main.d.ts","sourceRoot":"","sources":["../../src/cli/run-main.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,OAAO,GACf,OAAO,GACP,MAAM,GACN,QAAQ,GACR,SAAS,GACT,QAAQ,GACR,MAAM,GACN,QAAQ,GACR,MAAM,CAAA;AAEV,MAAM,WAAW,OAAO;IACtB,OAAO,EAAE,OAAO,CAAA;IAChB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,OAAO,CAAA;IACf,IAAI,EAAE,OAAO,CAAA;IACb,IAAI,EAAE,MAAM,EAAE,CAAA;CACf;AAED,wBAAgB,YAAY,CAAC,IAAI,WAAwB,GAAG,OAAO,CAoClE;AAED,wBAAgB,SAAS,IAAI,IAAI,CA6BhC"}
1
+ {"version":3,"file":"run-main.d.ts","sourceRoot":"","sources":["../../src/cli/run-main.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,OAAO,GACf,OAAO,GACP,MAAM,GACN,QAAQ,GACR,SAAS,GACT,QAAQ,GACR,MAAM,GACN,QAAQ,GACR,SAAS,GACT,MAAM,CAAA;AAEV,MAAM,WAAW,OAAO;IACtB,OAAO,EAAE,OAAO,CAAA;IAChB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,OAAO,CAAA;IACf,IAAI,EAAE,OAAO,CAAA;IACb,OAAO,EAAE,OAAO,CAAA;IAChB,IAAI,EAAE,MAAM,EAAE,CAAA;CACf;AAED,wBAAgB,YAAY,CAAC,IAAI,WAAwB,GAAG,OAAO,CAwDlE;AAED,wBAAgB,SAAS,IAAI,IAAI,CA+BhC"}
@@ -1,18 +1,33 @@
1
1
  import { parseArgs } from 'node:util';
2
2
  export function parseCliArgs(argv = process.argv.slice(2)) {
3
3
  const validCommands = new Set([
4
- 'start', 'stop', 'status', 'onboard', 'doctor', 'logs', 'config', 'help',
4
+ 'start', 'stop', 'status', 'onboard', 'doctor', 'logs', 'config', 'version', 'help',
5
5
  ]);
6
- const { values, positionals } = parseArgs({
7
- args: argv,
6
+ const normalizedArgv = argv.map(arg => (arg === '--verson' ? '--version' : arg));
7
+ const { values, positionals, tokens } = parseArgs({
8
+ args: normalizedArgv,
8
9
  options: {
9
10
  config: { type: 'string', short: 'c' },
10
11
  daemon: { type: 'boolean', short: 'd', default: false },
11
12
  help: { type: 'boolean', short: 'h', default: false },
13
+ version: { type: 'boolean', short: 'v', default: false },
12
14
  },
13
15
  allowPositionals: true,
14
16
  strict: false,
17
+ tokens: true,
15
18
  });
19
+ const knownOptions = new Set(['config', 'daemon', 'help', 'version']);
20
+ const unknownOptions = new Set();
21
+ for (const token of tokens) {
22
+ if (token.kind !== 'option')
23
+ continue;
24
+ if (knownOptions.has(token.name))
25
+ continue;
26
+ unknownOptions.add(token.rawName);
27
+ }
28
+ if (unknownOptions.size > 0) {
29
+ throw new Error(`Unknown option(s): ${Array.from(unknownOptions).join(', ')}\nRun \`agents-bridge help\` for usage.`);
30
+ }
16
31
  const first = positionals[0];
17
32
  let command = 'start';
18
33
  let rest = positionals;
@@ -23,11 +38,15 @@ export function parseCliArgs(argv = process.argv.slice(2)) {
23
38
  if (values.help) {
24
39
  command = 'help';
25
40
  }
41
+ else if (values.version) {
42
+ command = 'version';
43
+ }
26
44
  return {
27
45
  command,
28
46
  config: values.config ?? (rest[0] && !validCommands.has(rest[0]) ? rest[0] : undefined),
29
47
  daemon: Boolean(values.daemon),
30
48
  help: Boolean(values.help),
49
+ version: Boolean(values.version),
31
50
  rest,
32
51
  };
33
52
  }
@@ -43,15 +62,17 @@ Commands:
43
62
  stop Stop a running daemon
44
63
  status Show connection and runtime status
45
64
  onboard Interactive setup wizard
46
- doctor Diagnose environment (network, CLI tools, API keys)
47
- logs View recent logs
48
- config Show current configuration
49
- help Show this help
50
-
51
- Options:
52
- -c, --config <path> Path to config.json
53
- -d, --daemon Run as background daemon (with 'start')
54
- -h, --help Show this help
65
+ doctor Diagnose environment (network, CLI tools, API keys)
66
+ logs View recent logs
67
+ config Show current configuration
68
+ version Show package version
69
+ help Show this help
70
+
71
+ Options:
72
+ -c, --config <path> Path to config.json
73
+ -d, --daemon Run as background daemon (with 'start')
74
+ -h, --help Show this help
75
+ -v, --version Show package version
55
76
 
56
77
  Examples:
57
78
  agents-bridge start # Start in foreground
@@ -1 +1 @@
1
- {"version":3,"file":"run-main.js","sourceRoot":"","sources":["../../src/cli/run-main.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAA;AAoBrC,MAAM,UAAU,YAAY,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IACvD,MAAM,aAAa,GAAG,IAAI,GAAG,CAAU;QACrC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;KACzE,CAAC,CAAA;IAEF,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,SAAS,CAAC;QACxC,IAAI,EAAE,IAAI;QACV,OAAO,EAAE;YACP,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,EAAE;YACtC,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE;YACvD,IAAI,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE;SACtD;QACD,gBAAgB,EAAE,IAAI;QACtB,MAAM,EAAE,KAAK;KACd,CAAC,CAAA;IAEF,MAAM,KAAK,GAAG,WAAW,CAAC,CAAC,CAAC,CAAA;IAC5B,IAAI,OAAO,GAAY,OAAO,CAAA;IAC9B,IAAI,IAAI,GAAG,WAAW,CAAA;IAEtB,IAAI,KAAK,IAAI,aAAa,CAAC,GAAG,CAAC,KAAgB,CAAC,EAAE,CAAC;QACjD,OAAO,GAAG,KAAgB,CAAA;QAC1B,IAAI,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;IAC7B,CAAC;IAED,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;QAChB,OAAO,GAAG,MAAM,CAAA;IAClB,CAAC;IAED,OAAO;QACL,OAAO;QACP,MAAM,EAAG,MAAM,CAAC,MAA6B,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAY,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAC1H,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC;QAC9B,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC;QAC1B,IAAI;KACL,CAAA;AACH,CAAC;AAED,MAAM,UAAU,SAAS;IACvB,OAAO,CAAC,GAAG,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;CA2Bb,CAAC,IAAI,EAAE,CAAC,CAAA;AACT,CAAC"}
1
+ {"version":3,"file":"run-main.js","sourceRoot":"","sources":["../../src/cli/run-main.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=run-main.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"run-main.test.d.ts","sourceRoot":"","sources":["../../src/cli/run-main.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,17 @@
1
+ import assert from 'node:assert/strict';
2
+ import test from 'node:test';
3
+ import { parseCliArgs } from './run-main.js';
4
+ test('parseCliArgs treats --version as the version command', () => {
5
+ const args = parseCliArgs(['--version']);
6
+ assert.equal(args.command, 'version');
7
+ assert.equal(args.version, true);
8
+ });
9
+ test('parseCliArgs accepts the common --verson typo as version', () => {
10
+ const args = parseCliArgs(['--verson']);
11
+ assert.equal(args.command, 'version');
12
+ assert.equal(args.version, true);
13
+ });
14
+ test('parseCliArgs rejects unknown options instead of silently starting', () => {
15
+ assert.throws(() => parseCliArgs(['--wat']), /Unknown option\(s\): --wat/);
16
+ });
17
+ //# sourceMappingURL=run-main.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"run-main.test.js","sourceRoot":"","sources":["../../src/cli/run-main.test.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,oBAAoB,CAAA;AACvC,OAAO,IAAI,MAAM,WAAW,CAAA;AAC5B,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AAE5C,IAAI,CAAC,sDAAsD,EAAE,GAAG,EAAE;IAChE,MAAM,IAAI,GAAG,YAAY,CAAC,CAAC,WAAW,CAAC,CAAC,CAAA;IACxC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,SAAS,CAAC,CAAA;IACrC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,CAAA;AAClC,CAAC,CAAC,CAAA;AAEF,IAAI,CAAC,0DAA0D,EAAE,GAAG,EAAE;IACpE,MAAM,IAAI,GAAG,YAAY,CAAC,CAAC,UAAU,CAAC,CAAC,CAAA;IACvC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,SAAS,CAAC,CAAA;IACrC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,CAAA;AAClC,CAAC,CAAC,CAAA;AAEF,IAAI,CAAC,mEAAmE,EAAE,GAAG,EAAE;IAC7E,MAAM,CAAC,MAAM,CACX,GAAG,EAAE,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,CAAC,EAC7B,4BAA4B,CAC7B,CAAA;AACH,CAAC,CAAC,CAAA"}
@@ -21,7 +21,7 @@ export function loadConfig(configPath) {
21
21
  for (const p of paths) {
22
22
  const resolved = resolve(p);
23
23
  if (existsSync(resolved)) {
24
- const content = readFileSync(resolved, 'utf-8');
24
+ const content = readFileSync(resolved, 'utf-8').replace(/^\uFEFF/, '');
25
25
  rawConfig = JSON.parse(content);
26
26
  break;
27
27
  }
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/config/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AAClD,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,EAAE,eAAe,EAAkB,MAAM,iBAAiB,CAAA;AACjE,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAA;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAA;AAE7C,MAAM,UAAU,UAAU,CAAC,UAAmB;IAC5C,MAAM,GAAG,GAAG,gBAAgB,EAAE,CAAA;IAE9B,YAAY;IACZ,mCAAmC;IACnC,gCAAgC;IAChC,2CAA2C;IAC3C,6BAA6B;IAC7B,MAAM,KAAK,GAAG;QACZ,UAAU;QACV,GAAG,CAAC,UAAU;QACd,eAAe;QACf,gBAAgB;KACjB,CAAC,MAAM,CAAC,OAAO,CAAa,CAAA;IAE7B,IAAI,SAAS,GAA4B,EAAE,CAAA;IAE3C,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;QACtB,MAAM,QAAQ,GAAG,OAAO,CAAC,CAAC,CAAC,CAAA;QAC3B,IAAI,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YACzB,MAAM,OAAO,GAAG,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;YAC/C,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAA4B,CAAA;YAC1D,MAAK;QACP,CAAC;IACH,CAAC;IAED,uCAAuC;IACvC,MAAM,MAAM,GAAG,YAAY,CAAC,SAAS,EAAE,GAAG,CAAC,CAAA;IAE3C,MAAM,MAAM,GAAG,eAAe,CAAC,SAAS,CAAC,MAAM,CAAC,CAAA;IAChD,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACpB,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM;aAC/B,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC;aAC/C,IAAI,CAAC,IAAI,CAAC,CAAA;QACb,MAAM,IAAI,KAAK,CAAC,yBAAyB,MAAM,EAAE,CAAC,CAAA;IACpD,CAAC;IAED,OAAO,MAAM,CAAC,IAAI,CAAA;AACpB,CAAC"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/config/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AAClD,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,EAAE,eAAe,EAAkB,MAAM,iBAAiB,CAAA;AACjE,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAA;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAA;AAE7C,MAAM,UAAU,UAAU,CAAC,UAAmB;IAC5C,MAAM,GAAG,GAAG,gBAAgB,EAAE,CAAA;IAE9B,YAAY;IACZ,mCAAmC;IACnC,gCAAgC;IAChC,2CAA2C;IAC3C,6BAA6B;IAC7B,MAAM,KAAK,GAAG;QACZ,UAAU;QACV,GAAG,CAAC,UAAU;QACd,eAAe;QACf,gBAAgB;KACjB,CAAC,MAAM,CAAC,OAAO,CAAa,CAAA;IAE7B,IAAI,SAAS,GAA4B,EAAE,CAAA;IAE3C,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;QACtB,MAAM,QAAQ,GAAG,OAAO,CAAC,CAAC,CAAC,CAAA;QAC3B,IAAI,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YACzB,MAAM,OAAO,GAAG,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAA;YACtE,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAA4B,CAAA;YAC1D,MAAK;QACP,CAAC;IACH,CAAC;IAED,uCAAuC;IACvC,MAAM,MAAM,GAAG,YAAY,CAAC,SAAS,EAAE,GAAG,CAAC,CAAA;IAE3C,MAAM,MAAM,GAAG,eAAe,CAAC,SAAS,CAAC,MAAM,CAAC,CAAA;IAChD,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACpB,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM;aAC/B,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC;aAC/C,IAAI,CAAC,IAAI,CAAC,CAAA;QACb,MAAM,IAAI,KAAK,CAAC,yBAAyB,MAAM,EAAE,CAAC,CAAA;IACpD,CAAC;IAED,OAAO,MAAM,CAAC,IAAI,CAAA;AACpB,CAAC"}
@@ -0,0 +1,9 @@
1
+ import { type AppConfig } from './zod-schema.js';
2
+ export declare const ONBOARD_MODEL_CHOICES: readonly ["claude-cli/opus-4.6", "codex-cli/gpt-5.4", "anthropic/claude-sonnet-4-6"];
3
+ export interface CreateDefaultConfigParams {
4
+ gatewayUrl: string;
5
+ botToken: string;
6
+ selectedModel: string;
7
+ }
8
+ export declare function createDefaultConfig({ gatewayUrl, botToken, selectedModel, }: CreateDefaultConfigParams): AppConfig;
9
+ //# sourceMappingURL=default-config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"default-config.d.ts","sourceRoot":"","sources":["../../src/config/default-config.ts"],"names":[],"mappings":"AAEA,OAAO,EAAmB,KAAK,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAEjE,eAAO,MAAM,qBAAqB,sFAIxB,CAAA;AAEV,MAAM,WAAW,yBAAyB;IACxC,UAAU,EAAE,MAAM,CAAA;IAClB,QAAQ,EAAE,MAAM,CAAA;IAChB,aAAa,EAAE,MAAM,CAAA;CACtB;AAoDD,wBAAgB,mBAAmB,CAAC,EAClC,UAAU,EACV,QAAQ,EACR,aAAa,GACd,EAAE,yBAAyB,GAAG,SAAS,CA4BvC"}
@@ -0,0 +1,83 @@
1
+ import { resolveCliBackendConfig } from '../agents/cli-backends.js';
2
+ import { AppConfigSchema } from './zod-schema.js';
3
+ export const ONBOARD_MODEL_CHOICES = [
4
+ 'claude-cli/opus-4.6',
5
+ 'codex-cli/gpt-5.4',
6
+ 'anthropic/claude-sonnet-4-6',
7
+ ];
8
+ function getBuiltinCliBackend(provider) {
9
+ const backend = resolveCliBackendConfig(provider);
10
+ if (!backend) {
11
+ throw new Error(`Missing builtin CLI backend config for ${provider}`);
12
+ }
13
+ return backend.config;
14
+ }
15
+ function toPersistedClaudeBackendConfig(backend) {
16
+ return {
17
+ command: backend.command,
18
+ runtimeMode: backend.runtimeMode,
19
+ args: backend.args,
20
+ resumeArgs: backend.resumeArgs,
21
+ output: backend.output,
22
+ resumeOutput: backend.resumeOutput,
23
+ input: backend.input,
24
+ modelArg: backend.modelArg,
25
+ sessionArg: backend.sessionArg,
26
+ sessionIdFields: backend.sessionIdFields,
27
+ systemPromptArg: backend.systemPromptArg,
28
+ systemPromptMode: backend.systemPromptMode,
29
+ systemPromptWhen: backend.systemPromptWhen,
30
+ clearEnv: backend.clearEnv,
31
+ sessionMode: backend.sessionMode,
32
+ serialize: backend.serialize,
33
+ reliability: backend.reliability,
34
+ };
35
+ }
36
+ function toPersistedCodexBackendConfig(backend) {
37
+ return {
38
+ command: backend.command,
39
+ runtimeMode: backend.runtimeMode,
40
+ args: backend.args,
41
+ resumeArgs: backend.resumeArgs,
42
+ output: backend.output,
43
+ resumeOutput: backend.resumeOutput,
44
+ input: backend.input,
45
+ modelArg: backend.modelArg,
46
+ sessionIdFields: backend.sessionIdFields,
47
+ sessionMode: backend.sessionMode,
48
+ imageArg: backend.imageArg,
49
+ imageMode: backend.imageMode,
50
+ serialize: backend.serialize,
51
+ appServer: backend.appServer,
52
+ reliability: backend.reliability,
53
+ };
54
+ }
55
+ export function createDefaultConfig({ gatewayUrl, botToken, selectedModel, }) {
56
+ const fallbacks = ONBOARD_MODEL_CHOICES.filter(model => model !== selectedModel).slice(0, 1);
57
+ const claudeBackend = toPersistedClaudeBackendConfig(getBuiltinCliBackend('claude-cli'));
58
+ const codexBackend = toPersistedCodexBackendConfig(getBuiltinCliBackend('codex-cli'));
59
+ return AppConfigSchema.parse({
60
+ channels: {
61
+ botlink: {
62
+ gateway_url: gatewayUrl.trim(),
63
+ bot_token: botToken.trim(),
64
+ poll_timeout: 30,
65
+ retry_interval: 5,
66
+ max_retry_interval: 60,
67
+ },
68
+ },
69
+ agents: {
70
+ defaults: {
71
+ model: {
72
+ primary: selectedModel,
73
+ ...(fallbacks.length > 0 ? { fallbacks } : {}),
74
+ },
75
+ cliBackends: {
76
+ 'claude-cli': claudeBackend,
77
+ 'codex-cli': codexBackend,
78
+ },
79
+ },
80
+ },
81
+ });
82
+ }
83
+ //# sourceMappingURL=default-config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"default-config.js","sourceRoot":"","sources":["../../src/config/default-config.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=default-config.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"default-config.test.d.ts","sourceRoot":"","sources":["../../src/config/default-config.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,19 @@
1
+ import assert from 'node:assert/strict';
2
+ import { readFileSync } from 'node:fs';
3
+ import { dirname, resolve } from 'node:path';
4
+ import test from 'node:test';
5
+ import { fileURLToPath } from 'node:url';
6
+ import { createDefaultConfig } from './default-config.js';
7
+ import { AppConfigSchema } from './zod-schema.js';
8
+ const __dirname = dirname(fileURLToPath(import.meta.url));
9
+ const rootDir = resolve(__dirname, '..', '..');
10
+ test('createDefaultConfig stays aligned with config.example.json', () => {
11
+ const expected = createDefaultConfig({
12
+ gatewayUrl: 'https://your-botlink.com',
13
+ botToken: 'bot_xxx',
14
+ selectedModel: 'claude-cli/opus-4.6',
15
+ });
16
+ const exampleConfig = AppConfigSchema.parse(JSON.parse(readFileSync(resolve(rootDir, 'config.example.json'), 'utf-8').replace(/^\uFEFF/, '')));
17
+ assert.deepEqual(exampleConfig, expected);
18
+ });
19
+ //# sourceMappingURL=default-config.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"default-config.test.js","sourceRoot":"","sources":["../../src/config/default-config.test.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,oBAAoB,CAAA;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AACtC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAC5C,OAAO,IAAI,MAAM,WAAW,CAAA;AAC5B,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AACxC,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAA;AACzD,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAA;AAEjD,MAAM,SAAS,GAAG,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAA;AACzD,MAAM,OAAO,GAAG,OAAO,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;AAE9C,IAAI,CAAC,4DAA4D,EAAE,GAAG,EAAE;IACtE,MAAM,QAAQ,GAAG,mBAAmB,CAAC;QACnC,UAAU,EAAE,0BAA0B;QACtC,QAAQ,EAAE,SAAS;QACnB,aAAa,EAAE,qBAAqB;KACrC,CAAC,CAAA;IAEF,MAAM,aAAa,GAAG,eAAe,CAAC,KAAK,CACzC,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,CAAC,OAAO,EAAE,qBAAqB,CAAC,EAAE,OAAO,CAAC,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAY,CAC7G,CAAA;IAED,MAAM,CAAC,SAAS,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAA;AAC3C,CAAC,CAAC,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"entry.d.ts","sourceRoot":"","sources":["../src/entry.ts"],"names":[],"mappings":";AASA,OAAO,uBAAuB,CAAA"}
1
+ {"version":3,"file":"entry.d.ts","sourceRoot":"","sources":["../src/entry.ts"],"names":[],"mappings":";AAUA,OAAO,uBAAuB,CAAA"}
package/dist/entry.js CHANGED
@@ -7,9 +7,17 @@ import { cmdOnboard } from './cli/cmd-onboard.js';
7
7
  import { cmdDoctor } from './cli/cmd-doctor.js';
8
8
  import { cmdLogs } from './cli/cmd-logs.js';
9
9
  import { cmdConfig } from './cli/cmd-config.js';
10
+ import { cmdVersion } from './cli/cmd-version.js';
10
11
  import './channels/botlink.js';
11
12
  async function main() {
12
- const args = parseCliArgs();
13
+ let args;
14
+ try {
15
+ args = parseCliArgs();
16
+ }
17
+ catch (error) {
18
+ console.error(error instanceof Error ? error.message : String(error));
19
+ process.exit(1);
20
+ }
13
21
  switch (args.command) {
14
22
  case 'help':
15
23
  printHelp();
@@ -35,6 +43,9 @@ async function main() {
35
43
  case 'config':
36
44
  await cmdConfig(args);
37
45
  break;
46
+ case 'version':
47
+ await cmdVersion(args);
48
+ break;
38
49
  default:
39
50
  printHelp();
40
51
  process.exit(1);
package/dist/entry.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"entry.js","sourceRoot":"","sources":["../src/entry.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAC3D,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAA;AAC7C,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAA;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAC/C,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAA;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAC/C,OAAO,uBAAuB,CAAA;AAE9B,KAAK,UAAU,IAAI;IACjB,MAAM,IAAI,GAAG,YAAY,EAAE,CAAA;IAE3B,QAAQ,IAAI,CAAC,OAAO,EAAE,CAAC;QACrB,KAAK,MAAM;YACT,SAAS,EAAE,CAAA;YACX,MAAK;QACP,KAAK,OAAO;YACV,MAAM,QAAQ,CAAC,IAAI,CAAC,CAAA;YACpB,MAAK;QACP,KAAK,MAAM;YACT,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;YACnB,MAAK;QACP,KAAK,QAAQ;YACX,MAAM,SAAS,CAAC,IAAI,CAAC,CAAA;YACrB,MAAK;QACP,KAAK,SAAS;YACZ,MAAM,UAAU,CAAC,IAAI,CAAC,CAAA;YACtB,MAAK;QACP,KAAK,QAAQ;YACX,MAAM,SAAS,CAAC,IAAI,CAAC,CAAA;YACrB,MAAK;QACP,KAAK,MAAM;YACT,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;YACnB,MAAK;QACP,KAAK,QAAQ;YACX,MAAM,SAAS,CAAC,IAAI,CAAC,CAAA;YACrB,MAAK;QACP;YACE,SAAS,EAAE,CAAA;YACX,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACnB,CAAC;AACH,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE;IACjB,OAAO,CAAC,KAAK,CAAC,cAAc,EAAE,GAAG,CAAC,CAAA;IAClC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;AACjB,CAAC,CAAC,CAAA"}
1
+ {"version":3,"file":"entry.js","sourceRoot":"","sources":["../src/entry.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAC3D,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAA;AAC7C,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAA;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAC/C,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAA;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AACjD,OAAO,uBAAuB,CAAA;AAE9B,KAAK,UAAU,IAAI;IACjB,IAAI,IAAI,CAAA;IACR,IAAI,CAAC;QACH,IAAI,GAAG,YAAY,EAAE,CAAA;IACvB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAA;QACrE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC;IAED,QAAQ,IAAI,CAAC,OAAO,EAAE,CAAC;QACrB,KAAK,MAAM;YACT,SAAS,EAAE,CAAA;YACX,MAAK;QACP,KAAK,OAAO;YACV,MAAM,QAAQ,CAAC,IAAI,CAAC,CAAA;YACpB,MAAK;QACP,KAAK,MAAM;YACT,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;YACnB,MAAK;QACP,KAAK,QAAQ;YACX,MAAM,SAAS,CAAC,IAAI,CAAC,CAAA;YACrB,MAAK;QACP,KAAK,SAAS;YACZ,MAAM,UAAU,CAAC,IAAI,CAAC,CAAA;YACtB,MAAK;QACP,KAAK,QAAQ;YACX,MAAM,SAAS,CAAC,IAAI,CAAC,CAAA;YACrB,MAAK;QACP,KAAK,MAAM;YACT,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;YACnB,MAAK;QACP,KAAK,QAAQ;YACX,MAAM,SAAS,CAAC,IAAI,CAAC,CAAA;YACrB,MAAK;QACP,KAAK,SAAS;YACZ,MAAM,UAAU,CAAC,IAAI,CAAC,CAAA;YACtB,MAAK;QACP;YACE,SAAS,EAAE,CAAA;YACX,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACnB,CAAC;AACH,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE;IACjB,OAAO,CAAC,KAAK,CAAC,cAAc,EAAE,GAAG,CAAC,CAAA;IAClC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;AACjB,CAAC,CAAC,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "agents-bridge",
3
- "version": "0.1.2",
3
+ "version": "0.1.3",
4
4
  "description": "Local Agent Gateway for botlink platform",
5
5
  "keywords": [
6
6
  "agent",
@@ -15,7 +15,7 @@
15
15
  "license": "MIT",
16
16
  "main": "dist/entry.js",
17
17
  "bin": {
18
- "agents-bridge": "./bin/agent-bridge.mjs"
18
+ "agents-bridge": "bin/agent-bridge.mjs"
19
19
  },
20
20
  "files": [
21
21
  "dist",