agents-bridge 0.1.4 → 0.1.5

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 (62) hide show
  1. package/README.md +188 -205
  2. package/config.example.json +46 -46
  3. package/dist/agents/cli-runner.d.ts +5 -2
  4. package/dist/agents/cli-runner.d.ts.map +1 -1
  5. package/dist/agents/cli-runner.js +73 -35
  6. package/dist/agents/cli-runner.js.map +1 -1
  7. package/dist/agents/cli-session-store.d.ts +6 -0
  8. package/dist/agents/cli-session-store.d.ts.map +1 -1
  9. package/dist/agents/cli-session-store.js +64 -0
  10. package/dist/agents/cli-session-store.js.map +1 -1
  11. package/dist/channels/command-gating.d.ts.map +1 -1
  12. package/dist/channels/command-gating.js +6 -6
  13. package/dist/channels/command-gating.js.map +1 -1
  14. package/dist/cli/cmd-add-agent.d.ts +19 -0
  15. package/dist/cli/cmd-add-agent.d.ts.map +1 -0
  16. package/dist/cli/cmd-add-agent.js +339 -0
  17. package/dist/cli/cmd-add-agent.js.map +1 -0
  18. package/dist/cli/cmd-restart.d.ts +3 -0
  19. package/dist/cli/cmd-restart.d.ts.map +1 -0
  20. package/dist/cli/cmd-restart.js +22 -0
  21. package/dist/cli/cmd-restart.js.map +1 -0
  22. package/dist/cli/cmd-start.d.ts.map +1 -1
  23. package/dist/cli/cmd-start.js +35 -10
  24. package/dist/cli/cmd-start.js.map +1 -1
  25. package/dist/cli/cmd-stop.d.ts +5 -0
  26. package/dist/cli/cmd-stop.d.ts.map +1 -1
  27. package/dist/cli/cmd-stop.js +32 -8
  28. package/dist/cli/cmd-stop.js.map +1 -1
  29. package/dist/cli/run-main.d.ts +1 -1
  30. package/dist/cli/run-main.d.ts.map +1 -1
  31. package/dist/cli/run-main.js +5 -1
  32. package/dist/cli/run-main.js.map +1 -1
  33. package/dist/entry.d.ts.map +1 -1
  34. package/dist/entry.js +8 -0
  35. package/dist/entry.js.map +1 -1
  36. package/dist/types/index.d.ts +6 -0
  37. package/dist/types/index.d.ts.map +1 -1
  38. package/package.json +5 -1
  39. package/dist/agents/cli-output.test.d.ts +0 -2
  40. package/dist/agents/cli-output.test.d.ts.map +0 -1
  41. package/dist/agents/cli-output.test.js +0 -56
  42. package/dist/agents/cli-output.test.js.map +0 -1
  43. package/dist/agents/cli-runner.test.d.ts +0 -2
  44. package/dist/agents/cli-runner.test.d.ts.map +0 -1
  45. package/dist/agents/cli-runner.test.js +0 -119
  46. package/dist/agents/cli-runner.test.js.map +0 -1
  47. package/dist/agents/cli-session-store.test.d.ts +0 -2
  48. package/dist/agents/cli-session-store.test.d.ts.map +0 -1
  49. package/dist/agents/cli-session-store.test.js +0 -30
  50. package/dist/agents/cli-session-store.test.js.map +0 -1
  51. package/dist/agents/codex-app-server-runtime.test.d.ts +0 -2
  52. package/dist/agents/codex-app-server-runtime.test.d.ts.map +0 -1
  53. package/dist/agents/codex-app-server-runtime.test.js +0 -164
  54. package/dist/agents/codex-app-server-runtime.test.js.map +0 -1
  55. package/dist/cli/run-main.test.d.ts +0 -2
  56. package/dist/cli/run-main.test.d.ts.map +0 -1
  57. package/dist/cli/run-main.test.js +0 -17
  58. package/dist/cli/run-main.test.js.map +0 -1
  59. package/dist/config/default-config.test.d.ts +0 -2
  60. package/dist/config/default-config.test.d.ts.map +0 -1
  61. package/dist/config/default-config.test.js +0 -19
  62. package/dist/config/default-config.test.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"cmd-stop.js","sourceRoot":"","sources":["../../src/cli/cmd-stop.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AAC9D,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAA;AAG7C,MAAM,CAAC,KAAK,UAAU,OAAO,CAAC,KAAc;IAC1C,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC1B,OAAO,CAAC,GAAG,CAAC,kDAAkD,CAAC,CAAA;QAC/D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC;IAED,MAAM,GAAG,GAAG,QAAQ,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC,CAAA;IAChE,IAAI,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAA;QACjC,UAAU,CAAC,QAAQ,CAAC,CAAA;QACpB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC;IAED,IAAI,CAAC;QACH,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,SAAS,CAAC,CAAA;QAC5B,OAAO,CAAC,GAAG,CAAC,uCAAuC,GAAG,GAAG,CAAC,CAAA;IAC5D,CAAC;IAAC,OAAO,GAAY,EAAE,CAAC;QACtB,MAAM,IAAI,GAAI,GAA6B,CAAC,IAAI,CAAA;QAChD,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;YACrB,OAAO,CAAC,GAAG,CAAC,WAAW,GAAG,yCAAyC,CAAC,CAAA;YACpE,UAAU,CAAC,QAAQ,CAAC,CAAA;QACtB,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,KAAK,CAAC,0BAA0B,GAAG,GAAG,EAAE,GAAG,CAAC,CAAA;YACpD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACjB,CAAC;IACH,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"cmd-stop.js","sourceRoot":"","sources":["../../src/cli/cmd-stop.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AAC9D,OAAO,EAAE,UAAU,IAAI,KAAK,EAAE,MAAM,sBAAsB,CAAA;AAC1D,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAA;AAC7C,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAA;AAQhE,MAAM,CAAC,KAAK,UAAU,mBAAmB;IACvC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC1B,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,CAAA;IAClC,CAAC;IAED,MAAM,GAAG,GAAG,QAAQ,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC,CAAA;IAChE,IAAI,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAA;QACjC,UAAU,CAAC,QAAQ,CAAC,CAAA;QACpB,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAA;IACrC,CAAC;IAED,IAAI,CAAC;QACH,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,SAAS,CAAC,CAAA;IAC9B,CAAC;IAAC,OAAO,GAAY,EAAE,CAAC;QACtB,MAAM,IAAI,GAAI,GAA6B,CAAC,IAAI,CAAA;QAChD,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;YACrB,UAAU,CAAC,QAAQ,CAAC,CAAA;YACpB,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,EAAE,CAAA;QACrC,CAAC;QACD,MAAM,GAAG,CAAA;IACX,CAAC;IAED,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,MAAM,CAAA;IACpC,OAAO,IAAI,CAAC,GAAG,EAAE,GAAG,QAAQ,EAAE,CAAC;QAC7B,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,EAAE,CAAC;YAC3B,cAAc,EAAE,CAAA;YAChB,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,EAAE,CAAA;QACnC,CAAC;QACD,MAAM,KAAK,CAAC,GAAG,CAAC,CAAA;IAClB,CAAC;IAED,MAAM,IAAI,KAAK,CAAC,iCAAiC,GAAG,UAAU,CAAC,CAAA;AACjE,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,OAAO,CAAC,KAAc;IAC1C,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,mBAAmB,EAAE,CAAA;QAC1C,IAAI,MAAM,CAAC,MAAM,KAAK,aAAa,EAAE,CAAC;YACpC,OAAO,CAAC,GAAG,CAAC,kDAAkD,CAAC,CAAA;YAC/D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACjB,CAAC;QACD,IAAI,MAAM,CAAC,MAAM,KAAK,WAAW,EAAE,CAAC;YAClC,OAAO,CAAC,GAAG,CAAC,WAAW,MAAM,CAAC,GAAG,wCAAwC,CAAC,CAAA;YAC1E,OAAM;QACR,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,+BAA+B,MAAM,CAAC,GAAG,GAAG,CAAC,CAAA;IAC3D,CAAC;IAAC,OAAO,GAAY,EAAE,CAAC;QACtB,OAAO,CAAC,KAAK,CAAC,iCAAiC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;QAClG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC;AACH,CAAC"}
@@ -1,4 +1,4 @@
1
- export type Command = 'start' | 'stop' | 'status' | 'onboard' | 'doctor' | 'logs' | 'config' | 'version' | 'help';
1
+ export type Command = 'start' | 'stop' | 'status' | 'onboard' | 'add-agent' | 'restart' | 'doctor' | 'logs' | 'config' | 'version' | 'help';
2
2
  export interface CliArgs {
3
3
  command: Command;
4
4
  config?: string;
@@ -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,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
+ {"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,WAAW,GACX,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,CAmChC"}
@@ -1,7 +1,7 @@
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', 'version', 'help',
4
+ 'start', 'stop', 'status', 'onboard', 'add-agent', 'restart', 'doctor', 'logs', 'config', 'version', 'help',
5
5
  ]);
6
6
  const normalizedArgv = argv.map(arg => (arg === '--verson' ? '--version' : arg));
7
7
  const { values, positionals, tokens } = parseArgs({
@@ -60,8 +60,10 @@ Usage:
60
60
  Commands:
61
61
  start Start the gateway (foreground by default)
62
62
  stop Stop a running daemon
63
+ restart Restart the gateway
63
64
  status Show connection and runtime status
64
65
  onboard Interactive setup wizard
66
+ add-agent Add an agent to the current config
65
67
  doctor Diagnose environment (network, CLI tools, API keys)
66
68
  logs View recent logs
67
69
  config Show current configuration
@@ -78,7 +80,9 @@ Examples:
78
80
  agents-bridge start # Start in foreground
79
81
  agents-bridge start --daemon # Start as daemon
80
82
  agents-bridge start -c ./my-config.json # Start with custom config
83
+ agents-bridge restart --daemon # Restart in daemon mode
81
84
  agents-bridge onboard # Interactive setup
85
+ agents-bridge add-agent # Add a named agent
82
86
  agents-bridge doctor # Check environment
83
87
  `.trim());
84
88
  }
@@ -1 +1 @@
1
- {"version":3,"file":"run-main.js","sourceRoot":"","sources":["../../src/cli/run-main.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"run-main.js","sourceRoot":"","sources":["../../src/cli/run-main.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"entry.d.ts","sourceRoot":"","sources":["../src/entry.ts"],"names":[],"mappings":";AAUA,OAAO,uBAAuB,CAAA"}
1
+ {"version":3,"file":"entry.d.ts","sourceRoot":"","sources":["../src/entry.ts"],"names":[],"mappings":";AAYA,OAAO,uBAAuB,CAAA"}
package/dist/entry.js CHANGED
@@ -4,6 +4,8 @@ import { cmdStart } from './cli/cmd-start.js';
4
4
  import { cmdStop } from './cli/cmd-stop.js';
5
5
  import { cmdStatus } from './cli/cmd-status.js';
6
6
  import { cmdOnboard } from './cli/cmd-onboard.js';
7
+ import { cmdAddAgent } from './cli/cmd-add-agent.js';
8
+ import { cmdRestart } from './cli/cmd-restart.js';
7
9
  import { cmdDoctor } from './cli/cmd-doctor.js';
8
10
  import { cmdLogs } from './cli/cmd-logs.js';
9
11
  import { cmdConfig } from './cli/cmd-config.js';
@@ -34,6 +36,12 @@ async function main() {
34
36
  case 'onboard':
35
37
  await cmdOnboard(args);
36
38
  break;
39
+ case 'add-agent':
40
+ await cmdAddAgent(args);
41
+ break;
42
+ case 'restart':
43
+ await cmdRestart(args);
44
+ break;
37
45
  case 'doctor':
38
46
  await cmdDoctor(args);
39
47
  break;
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,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"}
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,WAAW,EAAE,MAAM,wBAAwB,CAAA;AACpD,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,WAAW;YACd,MAAM,WAAW,CAAC,IAAI,CAAC,CAAA;YACvB,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"}
@@ -103,6 +103,12 @@ export interface SessionStoreEntry {
103
103
  cliSessionIds?: Record<string, string>;
104
104
  /** Per-session workspace directory override (set via /cwd directive) */
105
105
  workspaceDir?: string;
106
+ /** Root session -> currently active derived session key created via /new */
107
+ activeSessionKey?: string;
108
+ /** Monotonic counter for derived session keys */
109
+ branchCounter?: number;
110
+ /** Parent/root session key for derived sessions */
111
+ parentSessionKey?: string;
106
112
  }
107
113
  export interface CliRunUsage {
108
114
  input?: number;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,IAAI,UAAU,EAAE,MAAM,MAAM,CAAA;AAGhD,MAAM,MAAM,MAAM,GAAG,UAAU,CAAA;AAK/B,MAAM,WAAW,eAAe;IAC9B,4FAA4F;IAC5F,SAAS,EAAE,MAAM,CAAA;IAEjB,MAAM,EAAE;QACN,OAAO,EAAE,MAAM,CAAA;QACf,SAAS,CAAC,EAAE,MAAM,CAAA;QAClB,MAAM,EAAE,MAAM,GAAG,MAAM,CAAA;QACvB,QAAQ,EAAE,SAAS,GAAG,OAAO,GAAG,WAAW,CAAA;QAC3C,MAAM,EAAE,MAAM,GAAG,MAAM,CAAA;QACvB,QAAQ,CAAC,EAAE,MAAM,CAAA;QACjB,SAAS,EAAE,MAAM,CAAA;QACjB,gBAAgB,CAAC,EAAE,MAAM,CAAA;KAC1B,CAAA;IAED,OAAO,EAAE;QACP,iEAAiE;QACjE,IAAI,EAAE,MAAM,CAAA;QACZ,gDAAgD;QAChD,QAAQ,EAAE,MAAM,EAAE,CAAA;QAClB,+DAA+D;QAC/D,WAAW,EAAE,KAAK,CAAC;YACjB,IAAI,EAAE,UAAU,GAAG,OAAO,GAAG,OAAO,GAAG,OAAO,CAAA;YAC9C,SAAS,EAAE,MAAM,CAAA;YACjB,QAAQ,CAAC,EAAE,MAAM,CAAA;YACjB,QAAQ,CAAC,EAAE,MAAM,CAAA;SAClB,CAAC,CAAA;KACH,CAAA;IAED,IAAI,EAAE;QACJ,SAAS,EAAE,MAAM,CAAA;QACjB,kDAAkD;QAClD,GAAG,EAAE,MAAM,CAAA;KACZ,CAAA;CACF;AAKD,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,QAAQ,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAClD,MAAM,EAAE,MAAM,CAAA;CACf;AAED,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,CAAC,MAAM,EAAE,OAAO,EAAE,GAAG,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAC1D,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;CAC1B;AAMD,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,MAAM,CAAA;IACf,IAAI,CAAC,EAAE,MAAM,EAAE,CAAA;IACf,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,CAAA;IAClC,YAAY,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,CAAA;IACxC,WAAW,CAAC,EAAE,MAAM,GAAG,YAAY,CAAA;IACnC,SAAS,CAAC,EAAE;QACV,IAAI,CAAC,EAAE,MAAM,EAAE,CAAA;QACf,MAAM,CAAC,EAAE,MAAM,CAAA;QACf,aAAa,CAAC,EAAE,MAAM,CAAA;QACtB,gBAAgB,CAAC,EAAE,MAAM,CAAA;QACzB,gBAAgB,CAAC,EAAE,MAAM,CAAA;QACzB,WAAW,CAAC,EAAE,MAAM,CAAA;QACpB,eAAe,CAAC,EAAE,OAAO,CAAA;QACzB,yBAAyB,CAAC,EAAE,MAAM,EAAE,CAAA;QACpC,cAAc,CAAC,EAAE,WAAW,GAAG,YAAY,GAAG,YAAY,GAAG,OAAO,CAAA;QACpE,OAAO,CAAC,EAAE,WAAW,GAAG,iBAAiB,GAAG,oBAAoB,CAAA;QAChE,sBAAsB,CAAC,EAAE,OAAO,CAAA;QAChC,qBAAqB,CAAC,EAAE,OAAO,CAAA;KAChC,CAAA;IACD,KAAK,CAAC,EAAE,KAAK,GAAG,OAAO,CAAA;IACvB,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC5B,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAA;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IACrC,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAA;IACtB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAA;IACrB,eAAe,CAAC,EAAE,MAAM,EAAE,CAAA;IAC1B,WAAW,CAAC,EAAE,QAAQ,GAAG,UAAU,GAAG,MAAM,CAAA;IAC5C,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,gBAAgB,CAAC,EAAE,QAAQ,GAAG,SAAS,CAAA;IACvC,gBAAgB,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,OAAO,CAAA;IAC/C,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,SAAS,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAA;IAC7B,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,WAAW,CAAC,EAAE;QACZ,QAAQ,CAAC,EAAE;YACT,KAAK,CAAC,EAAE;gBACN,iBAAiB,CAAC,EAAE,MAAM,CAAA;gBAC1B,oBAAoB,CAAC,EAAE,MAAM,CAAA;gBAC7B,KAAK,CAAC,EAAE,MAAM,CAAA;gBACd,KAAK,CAAC,EAAE,MAAM,CAAA;aACf,CAAA;YACD,MAAM,CAAC,EAAE;gBACP,iBAAiB,CAAC,EAAE,MAAM,CAAA;gBAC1B,oBAAoB,CAAC,EAAE,MAAM,CAAA;gBAC7B,KAAK,CAAC,EAAE,MAAM,CAAA;gBACd,KAAK,CAAC,EAAE,MAAM,CAAA;aACf,CAAA;SACF,CAAA;KACF,CAAA;CACF;AAKD,MAAM,WAAW,iBAAiB;IAChC,gBAAgB,EAAE,MAAM,CAAA;IACxB,SAAS,EAAE,MAAM,CAAA;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IACtC,wEAAwE;IACxE,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB;AAED,MAAM,WAAW,WAAW;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;AAED,MAAM,WAAW,iBAAiB;IAChC,WAAW,EAAE,MAAM,CAAA;IACnB,gBAAgB,EAAE,MAAM,CAAA;IACxB,cAAc,EAAE,MAAM,CAAA;IACtB,UAAU,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,GAAG,YAAY,CAAA;IACpD,WAAW,CAAC,EAAE,MAAM,GAAG,YAAY,CAAA;IACnC,SAAS,EAAE,OAAO,CAAA;IAClB,SAAS,EAAE,OAAO,CAAA;IAClB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,mBAAmB,CAAC,EAAE,MAAM,CAAA;IAC5B,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,cAAc,EAAE,MAAM,CAAA;IACtB,eAAe,EAAE,OAAO,CAAA;IACxB,mBAAmB,CAAC,EAAE,MAAM,CAAA;IAC5B,eAAe,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,OAAO,CAAA;IAC9C,wBAAwB,CAAC,EAAE,MAAM,CAAA;IACjC,kBAAkB,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAAG,UAAU,GAAG,SAAS,CAAA;CAClE;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,EAAE,MAAM,CAAA;IAChB,KAAK,EAAE,MAAM,CAAA;IACb,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,QAAQ,EAAE,OAAO,CAAA;IACjB,KAAK,CAAC,EAAE,WAAW,CAAA;IACnB,WAAW,CAAC,EAAE,iBAAiB,CAAA;CAChC;AAED,MAAM,WAAW,eAAe;IAC9B,YAAY,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAA;CAC1C;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,eAAe,CAAA;IACzB,QAAQ,EAAE,MAAM,CAAA;IAChB,KAAK,EAAE,MAAM,CAAA;IACb,YAAY,EAAE,MAAM,CAAA;IACpB,SAAS,EAAE,MAAM,CAAA;IACjB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,SAAS,CAAC,EAAE,eAAe,CAAA;IAC3B,uEAAuE;IACvE,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IACjC,6DAA6D;IAC7D,aAAa,CAAC,EAAE,MAAM,EAAE,CAAA;IACxB,mGAAmG;IACnG,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAA;CAC/C;AAED,MAAM,WAAW,eAAe;IAC9B,GAAG,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC,CAAA;CACjD;AAKD,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE,CAAA;IAChD,SAAS,EAAE,MAAM,CAAA;IACjB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAA;IAC7C,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC3B,QAAQ,EAAE,MAAM,EAAE,CAAA;IAClB,KAAK,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE,CAAA;IAC7C,MAAM,CAAC,EAAE,MAAM,EAAE,CAAA;IACjB,QAAQ,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;IAC5C,QAAQ,EAAE,MAAM,CAAA;CACjB;AAKD,MAAM,MAAM,SAAS,GAAG,SAAS,GAAG,YAAY,GAAG,MAAM,CAAA;AAKzD,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,MAAM,CAAA;IACf,YAAY,EAAE,GAAG,MAAM,IAAI,MAAM,EAAE,CAAA;IACnC,WAAW,EAAE,MAAM,CAAA;CACpB"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "agents-bridge",
3
- "version": "0.1.4",
3
+ "version": "0.1.5",
4
4
  "description": "Local Agent Gateway for botlink platform",
5
5
  "keywords": [
6
6
  "agent",
@@ -19,6 +19,10 @@
19
19
  },
20
20
  "files": [
21
21
  "dist",
22
+ "!dist/**/*.test.js",
23
+ "!dist/**/*.test.js.map",
24
+ "!dist/**/*.test.d.ts",
25
+ "!dist/**/*.test.d.ts.map",
22
26
  "bin",
23
27
  "config.example.json",
24
28
  "config.multi-agent.example.json",
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=cli-output.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cli-output.test.d.ts","sourceRoot":"","sources":["../../src/agents/cli-output.test.ts"],"names":[],"mappings":""}
@@ -1,56 +0,0 @@
1
- import assert from 'node:assert/strict';
2
- import test from 'node:test';
3
- import { createCliOutputProbe, parseCliJsonl, } from './cli-output.js';
4
- const CODEX_BACKEND = {
5
- command: 'codex',
6
- output: 'jsonl',
7
- sessionIdFields: ['thread_id'],
8
- };
9
- test('parseCliJsonl extracts codex thread id and final agent text', () => {
10
- const raw = [
11
- '{"type":"thread.started","thread_id":"thread-123"}',
12
- '{"type":"item.completed","item":{"id":"item_1","type":"agent_message","text":"OK"}}',
13
- '{"type":"turn.completed","usage":{"input_tokens":10,"output_tokens":2}}',
14
- ].join('\n');
15
- const parsed = parseCliJsonl(raw, CODEX_BACKEND);
16
- assert.ok(parsed);
17
- assert.equal(parsed.cliSessionId, 'thread-123');
18
- assert.equal(parsed.text, 'OK');
19
- assert.deepEqual(parsed.usage, {
20
- input: 10,
21
- output: 2,
22
- cacheRead: undefined,
23
- cacheWrite: undefined,
24
- total: undefined,
25
- });
26
- });
27
- test('parseCliJsonl keeps codex thread id even when no final text is present', () => {
28
- const raw = [
29
- '{"type":"thread.started","thread_id":"thread-456"}',
30
- '{"type":"turn.completed","usage":{"input_tokens":10,"output_tokens":0}}',
31
- ].join('\n');
32
- const parsed = parseCliJsonl(raw, CODEX_BACKEND);
33
- assert.ok(parsed);
34
- assert.equal(parsed.cliSessionId, 'thread-456');
35
- assert.equal(parsed.text, '');
36
- });
37
- test('createCliOutputProbe tracks reconnects, fallback, and first message timing', () => {
38
- const probe = createCliOutputProbe({
39
- backend: CODEX_BACKEND,
40
- mode: 'jsonl',
41
- });
42
- probe.onStdout('{"type":"thread.started","thread_id":"thread-789"}\n', 20);
43
- probe.onStdout('{"type":"error","message":"Reconnecting... 2/5 (timeout waiting for child process to exit)"}\n', 40);
44
- probe.onStdout('{"type":"item.completed","item":{"id":"item_0","type":"error","message":"Falling back from WebSockets to HTTPS transport. timeout waiting for child process to exit"}}\n', 60);
45
- probe.onStdout('{"type":"item.completed","item":{"id":"item_1","type":"agent_message","text":"READY"}}\n', 80);
46
- probe.onStdout('{"type":"turn.completed","usage":{"input_tokens":1,"output_tokens":1}}\n', 100);
47
- const snapshot = probe.snapshot();
48
- assert.equal(snapshot.cliSessionId, 'thread-789');
49
- assert.equal(snapshot.threadStartedMs, 20);
50
- assert.equal(snapshot.firstAgentMessageMs, 80);
51
- assert.equal(snapshot.turnCompletedMs, 100);
52
- assert.equal(snapshot.reconnectCount, 1);
53
- assert.equal(snapshot.fellBackToHttps, true);
54
- assert.equal(snapshot.lastText, 'READY');
55
- });
56
- //# sourceMappingURL=cli-output.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cli-output.test.js","sourceRoot":"","sources":["../../src/agents/cli-output.test.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=cli-runner.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cli-runner.test.d.ts","sourceRoot":"","sources":["../../src/agents/cli-runner.test.ts"],"names":[],"mappings":""}
@@ -1,119 +0,0 @@
1
- import assert from 'node:assert/strict';
2
- import { mkdtemp, rm } from 'node:fs/promises';
3
- import { join } from 'node:path';
4
- import { tmpdir } from 'node:os';
5
- import test from 'node:test';
6
- import { LocalCliTurnExecutor } from './cli-runner.js';
7
- import { CliSessionStore } from './cli-session-store.js';
8
- const CODEX_BACKEND = {
9
- command: 'codex',
10
- runtimeMode: 'app-server',
11
- sessionIdFields: ['thread_id'],
12
- sessionMode: 'existing',
13
- serialize: true,
14
- appServer: {
15
- requestTimeoutMs: 30_000,
16
- startupTimeoutMs: 15_000,
17
- approvalPolicy: 'never',
18
- sandbox: 'workspace-write',
19
- },
20
- };
21
- function createLogger() {
22
- return {
23
- debug() { return undefined; },
24
- info() { return undefined; },
25
- warn() { return undefined; },
26
- error() { return undefined; },
27
- };
28
- }
29
- function createEnvelope(sessionId) {
30
- return {
31
- sessionId,
32
- source: {
33
- channel: 'botlink',
34
- chatId: 1,
35
- chatType: 'private',
36
- userId: 1,
37
- messageId: 1,
38
- },
39
- content: {
40
- text: 'reply with exactly OK',
41
- mentions: [],
42
- attachments: [],
43
- },
44
- meta: {
45
- timestamp: Date.now(),
46
- raw: {},
47
- },
48
- };
49
- }
50
- test('LocalCliTurnExecutor clears stale codex thread id and retries fresh via app-server runtime', async () => {
51
- const tempDir = await mkdtemp(join(tmpdir(), 'agent-bridge-cli-runner-'));
52
- const storePath = join(tempDir, 'cli-sessions.json');
53
- const sessionStore = new CliSessionStore(storePath);
54
- await sessionStore.setCliSessionId('session-1', 'codex-cli', 'thread-stale', {
55
- model: 'gpt-5.4',
56
- });
57
- const runtimeCalls = [];
58
- const fakeRuntime = {
59
- async run(params) {
60
- runtimeCalls.push(params.existingThreadId);
61
- if (params.existingThreadId) {
62
- throw new Error('no rollout found for thread id thread-stale');
63
- }
64
- return {
65
- text: 'READY',
66
- cliSessionId: 'thread-fresh',
67
- isResume: false,
68
- diagnostics: {
69
- queueWaitMs: 0,
70
- commandElapsedMs: 10,
71
- totalElapsedMs: 10,
72
- outputMode: 'app-server',
73
- runtimeMode: 'app-server',
74
- hadStdout: false,
75
- hadStderr: false,
76
- reconnectCount: 0,
77
- fellBackToHttps: false,
78
- threadOperation: 'start',
79
- threadOperationElapsedMs: 3,
80
- },
81
- };
82
- },
83
- async teardown() { },
84
- };
85
- const executor = new LocalCliTurnExecutor({
86
- config: {
87
- agents: {
88
- defaults: {
89
- model: { primary: 'codex-cli/gpt-5.4' },
90
- cliBackends: {
91
- 'codex-cli': CODEX_BACKEND,
92
- },
93
- },
94
- },
95
- },
96
- logger: createLogger(),
97
- sessionStore,
98
- createCodexRuntime: () => fakeRuntime,
99
- });
100
- try {
101
- const result = await executor.run({
102
- envelope: createEnvelope('session-1'),
103
- provider: 'codex-cli',
104
- model: 'gpt-5.4',
105
- workspaceDir: process.cwd(),
106
- timeoutMs: 60_000,
107
- });
108
- assert.equal(result.text, 'READY');
109
- assert.equal(result.cliSessionId, 'thread-fresh');
110
- assert.equal(result.isResume, false);
111
- assert.deepEqual(runtimeCalls, ['thread-stale', undefined]);
112
- assert.equal(await sessionStore.getCliSessionId('session-1', 'codex-cli'), 'thread-fresh');
113
- }
114
- finally {
115
- await executor.teardown();
116
- await rm(tempDir, { recursive: true, force: true });
117
- }
118
- });
119
- //# sourceMappingURL=cli-runner.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cli-runner.test.js","sourceRoot":"","sources":["../../src/agents/cli-runner.test.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=cli-session-store.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cli-session-store.test.d.ts","sourceRoot":"","sources":["../../src/agents/cli-session-store.test.ts"],"names":[],"mappings":""}
@@ -1,30 +0,0 @@
1
- import assert from 'node:assert/strict';
2
- import { mkdtemp, rm } from 'node:fs/promises';
3
- import { join } from 'node:path';
4
- import { tmpdir } from 'node:os';
5
- import test from 'node:test';
6
- import { CliSessionStore } from './cli-session-store.js';
7
- test('findIncompleteSessions reports codex sessions without persisted thread ids', async () => {
8
- const tempDir = await mkdtemp(join(tmpdir(), 'agent-bridge-session-store-'));
9
- const storePath = join(tempDir, 'cli-sessions.json');
10
- const store = new CliSessionStore(storePath);
11
- try {
12
- await store.ensureSession('session-codex-missing', {
13
- provider: 'codex-cli',
14
- model: 'gpt-5.4',
15
- });
16
- await store.setCliSessionId('session-codex-ready', 'codex-cli', 'thread-1', {
17
- model: 'gpt-5.4',
18
- });
19
- await store.setCliSessionId('session-claude-ready', 'claude-cli', 'conversation-1', {
20
- model: 'opus',
21
- });
22
- const incomplete = await store.findIncompleteSessions('codex-cli');
23
- assert.deepEqual(incomplete.map((entry) => entry.sessionKey), ['session-codex-missing']);
24
- assert.equal(incomplete[0]?.provider, 'codex-cli');
25
- }
26
- finally {
27
- await rm(tempDir, { recursive: true, force: true });
28
- }
29
- });
30
- //# sourceMappingURL=cli-session-store.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cli-session-store.test.js","sourceRoot":"","sources":["../../src/agents/cli-session-store.test.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,oBAAoB,CAAA;AACvC,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,kBAAkB,CAAA;AAC9C,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAA;AAChC,OAAO,IAAI,MAAM,WAAW,CAAA;AAC5B,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAA;AAExD,IAAI,CAAC,4EAA4E,EAAE,KAAK,IAAI,EAAE;IAC5F,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,6BAA6B,CAAC,CAAC,CAAA;IAC5E,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,EAAE,mBAAmB,CAAC,CAAA;IACpD,MAAM,KAAK,GAAG,IAAI,eAAe,CAAC,SAAS,CAAC,CAAA;IAE5C,IAAI,CAAC;QACH,MAAM,KAAK,CAAC,aAAa,CAAC,uBAAuB,EAAE;YACjD,QAAQ,EAAE,WAAW;YACrB,KAAK,EAAE,SAAS;SACjB,CAAC,CAAA;QACF,MAAM,KAAK,CAAC,eAAe,CAAC,qBAAqB,EAAE,WAAW,EAAE,UAAU,EAAE;YAC1E,KAAK,EAAE,SAAS;SACjB,CAAC,CAAA;QACF,MAAM,KAAK,CAAC,eAAe,CAAC,sBAAsB,EAAE,YAAY,EAAE,gBAAgB,EAAE;YAClF,KAAK,EAAE,MAAM;SACd,CAAC,CAAA;QAEF,MAAM,UAAU,GAAG,MAAM,KAAK,CAAC,sBAAsB,CAAC,WAAW,CAAC,CAAA;QAElE,MAAM,CAAC,SAAS,CACd,UAAU,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,EAC3C,CAAC,uBAAuB,CAAC,CAC1B,CAAA;QACD,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAA;IACpD,CAAC;YAAS,CAAC;QACT,MAAM,EAAE,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAA;IACrD,CAAC;AACH,CAAC,CAAC,CAAA"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=codex-app-server-runtime.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"codex-app-server-runtime.test.d.ts","sourceRoot":"","sources":["../../src/agents/codex-app-server-runtime.test.ts"],"names":[],"mappings":""}
@@ -1,164 +0,0 @@
1
- import assert from 'node:assert/strict';
2
- import test from 'node:test';
3
- import { CodexAppServerRuntime } from './codex-app-server-runtime.js';
4
- const CODEX_BACKEND = {
5
- command: 'codex',
6
- runtimeMode: 'app-server',
7
- sessionIdFields: ['thread_id'],
8
- appServer: {
9
- requestTimeoutMs: 30_000,
10
- startupTimeoutMs: 15_000,
11
- approvalPolicy: 'never',
12
- sandbox: 'workspace-write',
13
- },
14
- };
15
- class FakeAppServerConnection {
16
- requests = [];
17
- notificationListener = null;
18
- fatalListener = null;
19
- turnCount = 0;
20
- async ensureReady() { }
21
- async request(method, params) {
22
- this.requests.push({ method, params });
23
- if (method === 'thread/resume') {
24
- return { thread: { id: params.threadId } };
25
- }
26
- if (method === 'thread/start') {
27
- return { thread: { id: 'thread-started' } };
28
- }
29
- if (method === 'turn/start') {
30
- this.turnCount += 1;
31
- const turnId = `turn-${this.turnCount}`;
32
- const threadId = String(params.threadId);
33
- queueMicrotask(() => {
34
- this.notificationListener?.({
35
- method: 'turn/started',
36
- params: {
37
- threadId,
38
- turn: { id: turnId, status: 'inProgress', error: null },
39
- },
40
- });
41
- this.notificationListener?.({
42
- method: 'error',
43
- params: {
44
- threadId,
45
- turnId,
46
- willRetry: true,
47
- error: {
48
- message: 'Reconnecting... 2/5',
49
- additionalDetails: 'timeout waiting for child process to exit',
50
- },
51
- },
52
- });
53
- this.notificationListener?.({
54
- method: 'item/completed',
55
- params: {
56
- threadId,
57
- turnId,
58
- item: {
59
- type: 'agentMessage',
60
- id: `item-${turnId}`,
61
- text: `READY-${this.turnCount}`,
62
- },
63
- },
64
- });
65
- this.notificationListener?.({
66
- method: 'thread/tokenUsage/updated',
67
- params: {
68
- threadId,
69
- turnId,
70
- tokenUsage: {
71
- last: {
72
- inputTokens: 12,
73
- outputTokens: 3,
74
- cachedInputTokens: 4,
75
- totalTokens: 15,
76
- },
77
- },
78
- },
79
- });
80
- this.notificationListener?.({
81
- method: 'turn/completed',
82
- params: {
83
- threadId,
84
- turn: {
85
- id: turnId,
86
- status: 'completed',
87
- error: null,
88
- },
89
- },
90
- });
91
- });
92
- return { turn: { id: turnId } };
93
- }
94
- if (method === 'turn/interrupt') {
95
- return {};
96
- }
97
- throw new Error(`Unhandled request ${method}`);
98
- }
99
- notify() { }
100
- getRestartCount() {
101
- return 0;
102
- }
103
- onNotification(listener) {
104
- this.notificationListener = listener;
105
- }
106
- onFatalError(listener) {
107
- this.fatalListener = listener;
108
- }
109
- emitFatal(error) {
110
- this.fatalListener?.(error);
111
- }
112
- async dispose() { }
113
- }
114
- function createLogger() {
115
- return {
116
- debug() { return undefined; },
117
- info() { return undefined; },
118
- warn() { return undefined; },
119
- error() { return undefined; },
120
- };
121
- }
122
- test('Codex app-server runtime resumes once and reuses the loaded thread afterwards', async () => {
123
- const connection = new FakeAppServerConnection();
124
- const runtime = new CodexAppServerRuntime({
125
- backend: CODEX_BACKEND,
126
- logger: createLogger(),
127
- connection,
128
- });
129
- const first = await runtime.run({
130
- sessionId: 'session-1',
131
- runtimeSessionId: 'runtime-1',
132
- existingThreadId: 'thread-existing',
133
- model: 'gpt-5.4',
134
- workspaceDir: process.cwd(),
135
- timeoutMs: 60_000,
136
- noProgressTimeoutMs: 10_000,
137
- prompt: 'reply with exactly OK',
138
- });
139
- const second = await runtime.run({
140
- sessionId: 'session-1',
141
- runtimeSessionId: 'runtime-1',
142
- existingThreadId: 'thread-existing',
143
- model: 'gpt-5.4',
144
- workspaceDir: process.cwd(),
145
- timeoutMs: 60_000,
146
- noProgressTimeoutMs: 10_000,
147
- prompt: 'reply with exactly AGAIN',
148
- });
149
- assert.equal(first.cliSessionId, 'thread-existing');
150
- assert.equal(first.isResume, true);
151
- assert.equal(first.text, 'READY-1');
152
- assert.equal(first.usage?.input, 12);
153
- assert.equal(first.usage?.output, 3);
154
- assert.equal(first.usage?.cacheRead, 4);
155
- assert.equal(first.diagnostics.threadOperation, 'resume');
156
- assert.equal(first.diagnostics.reconnectCount, 1);
157
- assert.equal(second.cliSessionId, 'thread-existing');
158
- assert.equal(second.isResume, true);
159
- assert.equal(second.text, 'READY-2');
160
- assert.equal(second.diagnostics.threadOperation, 'reuse');
161
- assert.deepEqual(connection.requests.map((entry) => entry.method), ['thread/resume', 'turn/start', 'turn/start']);
162
- await runtime.teardown();
163
- });
164
- //# sourceMappingURL=codex-app-server-runtime.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"codex-app-server-runtime.test.js","sourceRoot":"","sources":["../../src/agents/codex-app-server-runtime.test.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=run-main.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"run-main.test.d.ts","sourceRoot":"","sources":["../../src/cli/run-main.test.ts"],"names":[],"mappings":""}
@@ -1,17 +0,0 @@
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