@ccpocket/bridge 1.57.0 → 1.58.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,252 @@
1
+ import { spawn } from "node:child_process";
2
+ import { EventEmitter } from "node:events";
3
+ import { resolvePlatformPath } from "./path-utils.js";
4
+ import { readCodexAppServerMode, resolveCodexSharedAppServerUrl, } from "./codex-app-server-config.js";
5
+ import WebSocket from "ws";
6
+ export class CodexTransport extends EventEmitter {
7
+ }
8
+ export function buildCodexSpawnSpec(projectPath, platform = process.platform) {
9
+ const cwd = resolvePlatformPath(projectPath, platform);
10
+ if (platform === "win32") {
11
+ return {
12
+ command: "cmd.exe",
13
+ args: ["/d", "/s", "/c", "codex app-server --listen stdio://"],
14
+ options: {
15
+ cwd,
16
+ stdio: "pipe",
17
+ env: process.env,
18
+ windowsVerbatimArguments: true,
19
+ },
20
+ };
21
+ }
22
+ return {
23
+ command: "codex",
24
+ args: ["app-server", "--listen", "stdio://"],
25
+ options: {
26
+ cwd,
27
+ stdio: "pipe",
28
+ env: process.env,
29
+ },
30
+ };
31
+ }
32
+ class StdioCodexTransport extends CodexTransport {
33
+ platform;
34
+ child = null;
35
+ constructor(platform) {
36
+ super();
37
+ this.platform = platform;
38
+ }
39
+ get isRunning() {
40
+ return this.child !== null && !this.child.killed;
41
+ }
42
+ start(projectPath) {
43
+ const spawnSpec = buildCodexSpawnSpec(projectPath, this.platform);
44
+ const child = spawn(spawnSpec.command, spawnSpec.args, spawnSpec.options);
45
+ this.child = child;
46
+ child.stdout.setEncoding("utf8");
47
+ child.stdout.on("data", (chunk) => {
48
+ this.emit("data", chunk);
49
+ });
50
+ child.stderr.setEncoding("utf8");
51
+ child.stderr.on("data", (chunk) => {
52
+ const line = chunk.trim();
53
+ if (line)
54
+ this.emit("log", line);
55
+ });
56
+ child.on("error", (err) => {
57
+ this.emit("error", err);
58
+ });
59
+ child.on("exit", (code) => {
60
+ this.child = null;
61
+ this.emit("exit", code ?? 0);
62
+ });
63
+ }
64
+ write(envelope) {
65
+ if (!this.child || this.child.killed) {
66
+ throw new Error("codex app-server is not running");
67
+ }
68
+ this.child.stdin.write(`${JSON.stringify(envelope)}\n`);
69
+ }
70
+ stop() {
71
+ if (this.child) {
72
+ this.child.kill("SIGTERM");
73
+ this.child = null;
74
+ }
75
+ }
76
+ }
77
+ class WebSocketCodexTransport extends CodexTransport {
78
+ url;
79
+ retryDurationMs;
80
+ ws = null;
81
+ stopped = false;
82
+ connected = false;
83
+ queue = [];
84
+ retryTimer = null;
85
+ firstAttemptAt = 0;
86
+ constructor(url, retryDurationMs = 0) {
87
+ super();
88
+ this.url = url;
89
+ this.retryDurationMs = retryDurationMs;
90
+ }
91
+ get isRunning() {
92
+ return !this.stopped && (this.connected || this.ws !== null);
93
+ }
94
+ start(_projectPath) {
95
+ this.stopped = false;
96
+ this.firstAttemptAt = Date.now();
97
+ this.connect();
98
+ }
99
+ write(envelope) {
100
+ if (this.stopped) {
101
+ throw new Error("codex app-server is not running");
102
+ }
103
+ const payload = JSON.stringify(envelope);
104
+ if (this.connected && this.ws?.readyState === WebSocket.OPEN) {
105
+ this.ws.send(payload);
106
+ return;
107
+ }
108
+ this.queue.push(payload);
109
+ }
110
+ stop() {
111
+ this.stopped = true;
112
+ this.queue = [];
113
+ if (this.retryTimer) {
114
+ clearTimeout(this.retryTimer);
115
+ this.retryTimer = null;
116
+ }
117
+ if (this.ws) {
118
+ this.ws.close();
119
+ this.ws = null;
120
+ }
121
+ }
122
+ connect() {
123
+ if (this.stopped)
124
+ return;
125
+ const ws = new WebSocket(this.url);
126
+ this.ws = ws;
127
+ ws.on("open", () => {
128
+ this.connected = true;
129
+ const queued = this.queue.splice(0);
130
+ for (const payload of queued) {
131
+ ws.send(payload);
132
+ }
133
+ });
134
+ ws.on("message", (data) => {
135
+ const text = data.toString();
136
+ this.emit("data", text.endsWith("\n") ? text : `${text}\n`);
137
+ });
138
+ ws.on("error", (err) => {
139
+ if (this.shouldRetry())
140
+ return;
141
+ this.emit("error", err instanceof Error ? err : new Error(String(err)));
142
+ });
143
+ ws.on("close", () => {
144
+ this.connected = false;
145
+ this.ws = null;
146
+ if (this.stopped)
147
+ return;
148
+ if (this.shouldRetry()) {
149
+ this.retryTimer = setTimeout(() => this.connect(), 100);
150
+ return;
151
+ }
152
+ this.emit("exit", 1);
153
+ });
154
+ }
155
+ shouldRetry() {
156
+ return (!this.stopped &&
157
+ this.retryDurationMs > 0 &&
158
+ Date.now() - this.firstAttemptAt < this.retryDurationMs);
159
+ }
160
+ }
161
+ class ManagedCodexAppServer {
162
+ url;
163
+ platform;
164
+ child = null;
165
+ constructor(url, platform) {
166
+ this.url = url;
167
+ this.platform = platform;
168
+ }
169
+ ensureStarted(projectPath) {
170
+ if (this.child && !this.child.killed)
171
+ return;
172
+ const cwd = resolvePlatformPath(projectPath, this.platform);
173
+ const child = this.platform === "win32"
174
+ ? spawn("cmd.exe", ["/d", "/s", "/c", `codex app-server --listen ${this.url}`], {
175
+ cwd,
176
+ stdio: "pipe",
177
+ env: process.env,
178
+ windowsVerbatimArguments: true,
179
+ })
180
+ : spawn("codex", ["app-server", "--listen", this.url], {
181
+ cwd,
182
+ stdio: "pipe",
183
+ env: process.env,
184
+ });
185
+ this.child = child;
186
+ child.stdout.setEncoding("utf8");
187
+ child.stderr.setEncoding("utf8");
188
+ child.stdout.on("data", (chunk) => {
189
+ const line = chunk.trim();
190
+ if (line)
191
+ console.log(`[codex-app-server] ${line}`);
192
+ });
193
+ child.stderr.on("data", (chunk) => {
194
+ const line = chunk.trim();
195
+ if (line)
196
+ console.log(`[codex-app-server] ${line}`);
197
+ });
198
+ child.on("error", (err) => {
199
+ if (this.child === child) {
200
+ this.child = null;
201
+ }
202
+ const message = err instanceof Error ? err.message : String(err);
203
+ console.error(`[codex-app-server] Failed to start: ${message}`);
204
+ });
205
+ child.on("exit", () => {
206
+ this.child = null;
207
+ });
208
+ }
209
+ createTransport(projectPath) {
210
+ this.ensureStarted(projectPath);
211
+ return new WebSocketCodexTransport(this.url, 5000);
212
+ }
213
+ stop() {
214
+ if (!this.child)
215
+ return;
216
+ this.child.kill("SIGTERM");
217
+ this.child = null;
218
+ }
219
+ }
220
+ const managedServers = new Map();
221
+ export function createCodexTransport(projectPath, platform = process.platform) {
222
+ const mode = readCodexAppServerMode();
223
+ if (mode === "external") {
224
+ return new WebSocketCodexTransport(readCodexAppServerUrl(mode));
225
+ }
226
+ if (mode === "managed") {
227
+ const url = readCodexAppServerUrl(mode);
228
+ let manager = managedServers.get(url);
229
+ if (!manager) {
230
+ manager = new ManagedCodexAppServer(url, platform);
231
+ managedServers.set(url, manager);
232
+ }
233
+ return manager.createTransport(projectPath);
234
+ }
235
+ return new StdioCodexTransport(platform);
236
+ }
237
+ export function stopManagedCodexAppServers() {
238
+ for (const manager of managedServers.values()) {
239
+ manager.stop();
240
+ }
241
+ managedServers.clear();
242
+ }
243
+ function readCodexAppServerUrl(mode) {
244
+ const url = resolveCodexSharedAppServerUrl(mode);
245
+ if (url)
246
+ return url;
247
+ if (mode === "external") {
248
+ throw new Error("BRIDGE_CODEX_SHARED_APP_SERVER_URL is required when BRIDGE_CODEX_APP_SERVER_MODE=external");
249
+ }
250
+ throw new Error("codex app-server URL could not be resolved");
251
+ }
252
+ //# sourceMappingURL=codex-transport.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"codex-transport.js","sourceRoot":"","sources":["../src/codex-transport.ts"],"names":[],"mappings":"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"}
@@ -12,11 +12,18 @@
12
12
  * so that Bridge restarts reuse the same UID instead of creating
13
13
  * a new anonymous account each time.
14
14
  */
15
+ export interface FirebaseAuthClientOptions {
16
+ credentialsFile?: string;
17
+ fetchImpl?: typeof fetch;
18
+ }
15
19
  export declare class FirebaseAuthClient {
20
+ private readonly credentialsFile;
21
+ private readonly fetchImpl;
16
22
  private _uid;
17
23
  private _idToken;
18
24
  private _refreshToken;
19
25
  private _expiresAt;
26
+ constructor(options?: FirebaseAuthClientOptions);
20
27
  get uid(): string;
21
28
  /**
22
29
  * Initialize Firebase auth.
@@ -14,17 +14,29 @@
14
14
  */
15
15
  import { existsSync, mkdirSync, readFileSync, writeFileSync } from "node:fs";
16
16
  import { homedir } from "node:os";
17
- import { join } from "node:path";
17
+ import { dirname, join } from "node:path";
18
18
  const FIREBASE_API_KEY = "AIzaSyAptNnokWPqJIgv2Lr3I8ETN6bqZb5BGvc";
19
19
  const SIGN_UP_URL = `https://identitytoolkit.googleapis.com/v1/accounts:signUp?key=${FIREBASE_API_KEY}`;
20
20
  const REFRESH_URL = `https://securetoken.googleapis.com/v1/token?key=${FIREBASE_API_KEY}`;
21
21
  const CREDENTIALS_DIR = join(homedir(), ".ccpocket");
22
22
  const CREDENTIALS_FILE = join(CREDENTIALS_DIR, "firebase-credentials.json");
23
- function loadCredentials() {
23
+ class FirebaseTokenRefreshError extends Error {
24
+ status;
25
+ responseText;
26
+ constructor(status, responseText) {
27
+ super(`Firebase token refresh failed (${status}): ${responseText}`);
28
+ this.status = status;
29
+ this.responseText = responseText;
30
+ }
31
+ }
32
+ function isRecoverableRefreshError(err) {
33
+ return err instanceof FirebaseTokenRefreshError && err.status === 400;
34
+ }
35
+ function loadCredentials(credentialsFile) {
24
36
  try {
25
- if (!existsSync(CREDENTIALS_FILE))
37
+ if (!existsSync(credentialsFile))
26
38
  return null;
27
- const raw = readFileSync(CREDENTIALS_FILE, "utf-8");
39
+ const raw = readFileSync(credentialsFile, "utf-8");
28
40
  const data = JSON.parse(raw);
29
41
  if (typeof data.uid === "string" && typeof data.refreshToken === "string") {
30
42
  return { uid: data.uid, refreshToken: data.refreshToken };
@@ -35,20 +47,26 @@ function loadCredentials() {
35
47
  return null;
36
48
  }
37
49
  }
38
- function saveCredentials(creds) {
50
+ function saveCredentials(credentialsFile, creds) {
39
51
  try {
40
- mkdirSync(CREDENTIALS_DIR, { recursive: true });
41
- writeFileSync(CREDENTIALS_FILE, JSON.stringify(creds, null, 2), "utf-8");
52
+ mkdirSync(dirname(credentialsFile), { recursive: true });
53
+ writeFileSync(credentialsFile, JSON.stringify(creds, null, 2), "utf-8");
42
54
  }
43
55
  catch (err) {
44
56
  console.warn("[firebase-auth] Failed to persist credentials:", err);
45
57
  }
46
58
  }
47
59
  export class FirebaseAuthClient {
60
+ credentialsFile;
61
+ fetchImpl;
48
62
  _uid = null;
49
63
  _idToken = null;
50
64
  _refreshToken = null;
51
65
  _expiresAt = 0;
66
+ constructor(options = {}) {
67
+ this.credentialsFile = options.credentialsFile ?? CREDENTIALS_FILE;
68
+ this.fetchImpl = options.fetchImpl ?? fetch;
69
+ }
52
70
  get uid() {
53
71
  if (!this._uid)
54
72
  throw new Error("Firebase auth not initialized");
@@ -60,7 +78,7 @@ export class FirebaseAuthClient {
60
78
  * creating a new anonymous account if restoration fails.
61
79
  */
62
80
  async initialize() {
63
- const saved = loadCredentials();
81
+ const saved = loadCredentials(this.credentialsFile);
64
82
  if (saved) {
65
83
  try {
66
84
  await this.restoreSession(saved);
@@ -68,7 +86,10 @@ export class FirebaseAuthClient {
68
86
  return;
69
87
  }
70
88
  catch (err) {
71
- console.warn("[firebase-auth] Failed to restore session, creating new account:", err);
89
+ const message = isRecoverableRefreshError(err)
90
+ ? "Saved Firebase session is no longer valid, creating new account"
91
+ : "Failed to restore session, creating new account";
92
+ console.warn(`[firebase-auth] ${message}:`, err);
72
93
  }
73
94
  }
74
95
  await this.signUpAnonymously();
@@ -83,12 +104,21 @@ export class FirebaseAuthClient {
83
104
  throw new Error("Firebase auth not initialized");
84
105
  }
85
106
  if (Date.now() >= this._expiresAt) {
86
- await this.refreshIdToken();
107
+ try {
108
+ await this.refreshIdToken();
109
+ }
110
+ catch (err) {
111
+ if (!isRecoverableRefreshError(err)) {
112
+ throw err;
113
+ }
114
+ console.warn("[firebase-auth] Saved Firebase session is no longer valid, creating new account:", err);
115
+ await this.signUpAnonymously();
116
+ }
87
117
  }
88
118
  return this._idToken;
89
119
  }
90
120
  async signUpAnonymously() {
91
- const res = await fetch(SIGN_UP_URL, {
121
+ const res = await this.fetchImpl(SIGN_UP_URL, {
92
122
  method: "POST",
93
123
  headers: { "Content-Type": "application/json" },
94
124
  body: JSON.stringify({ returnSecureToken: true }),
@@ -102,7 +132,7 @@ export class FirebaseAuthClient {
102
132
  this._idToken = data.idToken;
103
133
  this._refreshToken = data.refreshToken;
104
134
  this._expiresAt = Date.now() + (parseInt(data.expiresIn, 10) || 3600) * 1000 - 60_000;
105
- saveCredentials({ uid: this._uid, refreshToken: this._refreshToken });
135
+ saveCredentials(this.credentialsFile, { uid: this._uid, refreshToken: this._refreshToken });
106
136
  }
107
137
  async restoreSession(saved) {
108
138
  this._uid = saved.uid;
@@ -110,17 +140,17 @@ export class FirebaseAuthClient {
110
140
  // Force a token refresh to validate the saved credentials
111
141
  await this.refreshIdToken();
112
142
  // Persist potentially rotated refresh token
113
- saveCredentials({ uid: this._uid, refreshToken: this._refreshToken });
143
+ saveCredentials(this.credentialsFile, { uid: this._uid, refreshToken: this._refreshToken });
114
144
  }
115
145
  async refreshIdToken() {
116
- const res = await fetch(REFRESH_URL, {
146
+ const res = await this.fetchImpl(REFRESH_URL, {
117
147
  method: "POST",
118
148
  headers: { "Content-Type": "application/x-www-form-urlencoded" },
119
149
  body: `grant_type=refresh_token&refresh_token=${encodeURIComponent(this._refreshToken)}`,
120
150
  });
121
151
  if (!res.ok) {
122
152
  const text = await res.text();
123
- throw new Error(`Firebase token refresh failed (${res.status}): ${text}`);
153
+ throw new FirebaseTokenRefreshError(res.status, text);
124
154
  }
125
155
  const data = (await res.json());
126
156
  this._idToken = data.id_token;
@@ -1 +1 @@
1
- {"version":3,"file":"firebase-auth.js","sourceRoot":"","sources":["../src/firebase-auth.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"firebase-auth.js","sourceRoot":"","sources":["../src/firebase-auth.ts"],"names":[],"mappings":"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"}
package/dist/parser.d.ts CHANGED
@@ -425,6 +425,10 @@ export interface DebugTraceEvent {
425
425
  type: string;
426
426
  detail?: string;
427
427
  }
428
+ export interface CodexCliJoinTarget {
429
+ url: string;
430
+ command: string;
431
+ }
428
432
  export type ServerMessage = {
429
433
  type: "system";
430
434
  subtype: string;
@@ -487,6 +491,7 @@ export type ServerMessage = {
487
491
  clearContext?: boolean;
488
492
  sourceSessionId?: string;
489
493
  tipCode?: string;
494
+ codexCliJoin?: CodexCliJoinTarget;
490
495
  } | {
491
496
  type: "assistant";
492
497
  message: AssistantMessage;
@@ -1 +1 @@
1
- {"version":3,"file":"parser.js","sourceRoot":"","sources":["../src/parser.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"parser.js","sourceRoot":"","sources":["../src/parser.ts"],"names":[],"mappings":"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"}
@@ -19,19 +19,18 @@ export class PushRelayClient {
19
19
  async registerToken(token, platform, locale) {
20
20
  if (!this.isConfigured)
21
21
  return;
22
- await this.post({ op: "register", token, platform, locale, bridgeId: this.bridgeId });
22
+ await this.post({ op: "register", token, platform, locale });
23
23
  }
24
24
  async unregisterToken(token) {
25
25
  if (!this.isConfigured)
26
26
  return;
27
- await this.post({ op: "unregister", token, bridgeId: this.bridgeId });
27
+ await this.post({ op: "unregister", token });
28
28
  }
29
29
  async notify(payload) {
30
30
  if (!this.isConfigured)
31
31
  return;
32
32
  await this.post({
33
33
  op: "notify",
34
- bridgeId: this.bridgeId,
35
34
  eventType: payload.eventType,
36
35
  title: payload.title,
37
36
  body: payload.body,
@@ -42,8 +41,12 @@ export class PushRelayClient {
42
41
  async post(payload) {
43
42
  if (!this.isConfigured || !this.firebaseAuth)
44
43
  return;
45
- console.log(`[push-relay] ${payload.op} → ${this.relayUrl} (bridgeId: ${payload.bridgeId})`);
46
44
  const idToken = await this.firebaseAuth.getIdToken();
45
+ const requestPayload = {
46
+ ...payload,
47
+ bridgeId: this.bridgeId,
48
+ };
49
+ console.log(`[push-relay] ${payload.op} → ${this.relayUrl} (bridgeId: ${requestPayload.bridgeId})`);
47
50
  const controller = new AbortController();
48
51
  const timer = setTimeout(() => controller.abort(), this.timeoutMs);
49
52
  try {
@@ -53,7 +56,7 @@ export class PushRelayClient {
53
56
  "Content-Type": "application/json",
54
57
  "Authorization": `Bearer ${idToken}`,
55
58
  },
56
- body: JSON.stringify(payload),
59
+ body: JSON.stringify(requestPayload),
57
60
  signal: controller.signal,
58
61
  });
59
62
  const responseText = (await response.text()).trim().slice(0, 200);
@@ -1 +1 @@
1
- {"version":3,"file":"push-relay.js","sourceRoot":"","sources":["../src/push-relay.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"push-relay.js","sourceRoot":"","sources":["../src/push-relay.ts"],"names":[],"mappings":"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"}