mirra-cc-bridge 0.1.9 → 0.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/commands/hook.d.ts.map +1 -1
- package/dist/commands/hook.js +149 -6
- package/dist/commands/hook.js.map +1 -1
- package/dist/commands/start.d.ts.map +1 -1
- package/dist/commands/start.js +350 -19
- package/dist/commands/start.js.map +1 -1
- package/dist/config.d.ts +35 -1
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +125 -0
- package/dist/config.js.map +1 -1
- package/dist/session-manager.d.ts +1 -0
- package/dist/session-manager.d.ts.map +1 -1
- package/dist/session-manager.js +20 -4
- package/dist/session-manager.js.map +1 -1
- package/dist/types.d.ts +24 -0
- package/dist/types.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hook.d.ts","sourceRoot":"","sources":["../../src/commands/hook.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;
|
|
1
|
+
{"version":3,"file":"hook.d.ts","sourceRoot":"","sources":["../../src/commands/hook.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AA8hBH;;GAEG;AACH,wBAAsB,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAoB7E"}
|
package/dist/commands/hook.js
CHANGED
|
@@ -63,17 +63,34 @@ function getGroupId() {
|
|
|
63
63
|
}
|
|
64
64
|
throw new Error('Group not configured. Run `mirra-cc-bridge configure` to select where to send output.');
|
|
65
65
|
}
|
|
66
|
+
/**
|
|
67
|
+
* Check if this is a Mirra-spawned session (has pty access for responses)
|
|
68
|
+
*/
|
|
69
|
+
function isMirraSpawnedSession() {
|
|
70
|
+
return !!process.env.MIRRA_SESSION_ID;
|
|
71
|
+
}
|
|
66
72
|
/**
|
|
67
73
|
* Get session ID
|
|
74
|
+
* Priority:
|
|
75
|
+
* 1. Environment variable (Mirra-spawned sessions via spawnSession)
|
|
76
|
+
* 2. Persisted local session ID from config (direct Claude Code usage)
|
|
77
|
+
* 3. Generate new local session ID (first run)
|
|
68
78
|
*/
|
|
69
79
|
function getSessionId() {
|
|
70
|
-
//
|
|
80
|
+
// Priority 1: Environment variable (Mirra-spawned sessions)
|
|
71
81
|
const envSession = process.env.MIRRA_SESSION_ID;
|
|
72
82
|
if (envSession) {
|
|
73
83
|
return envSession;
|
|
74
84
|
}
|
|
75
|
-
//
|
|
76
|
-
|
|
85
|
+
// Priority 2: Persisted local session ID from config
|
|
86
|
+
const localSession = (0, config_1.getLocalSession)();
|
|
87
|
+
if (localSession?.sessionId) {
|
|
88
|
+
return localSession.sessionId;
|
|
89
|
+
}
|
|
90
|
+
// Priority 3: Generate new stable session ID
|
|
91
|
+
// This requires groupId to be configured
|
|
92
|
+
const groupId = getGroupId();
|
|
93
|
+
return (0, config_1.getOrCreateLocalSessionId)(groupId);
|
|
77
94
|
}
|
|
78
95
|
/**
|
|
79
96
|
* Extract text content from a message for display
|
|
@@ -217,8 +234,10 @@ function buildPermissionStructuredData(prompt) {
|
|
|
217
234
|
* The mobile app renders these as a tappable list (Allow/Deny buttons).
|
|
218
235
|
*
|
|
219
236
|
* For other notifications, sends plain text with automation metadata.
|
|
237
|
+
*
|
|
238
|
+
* @param requestId - Optional request ID for permission prompts (used for response routing)
|
|
220
239
|
*/
|
|
221
|
-
async function sendToMirra(message, structuredData) {
|
|
240
|
+
async function sendToMirra(message, structuredData, requestId) {
|
|
222
241
|
const sdk = getSDK();
|
|
223
242
|
const groupId = getGroupId();
|
|
224
243
|
const sessionId = getSessionId();
|
|
@@ -234,11 +253,94 @@ async function sendToMirra(message, structuredData) {
|
|
|
234
253
|
// Critical for Flow-based reply routing: allows Flows to filter
|
|
235
254
|
// replies to this specific Claude Code session
|
|
236
255
|
sessionId,
|
|
256
|
+
// Include requestId for permission response routing
|
|
257
|
+
...(requestId && { requestId }),
|
|
237
258
|
},
|
|
238
259
|
// Include structuredData for permission prompts (displayType: 'list' only)
|
|
239
260
|
...(structuredData && { structuredData: [structuredData] }),
|
|
240
261
|
});
|
|
241
262
|
}
|
|
263
|
+
// ============================================================================
|
|
264
|
+
// Permission Response Polling (for local sessions)
|
|
265
|
+
// ============================================================================
|
|
266
|
+
const POLL_INTERVAL_MS = 1000; // Poll every 1 second
|
|
267
|
+
const POLL_TIMEOUT_MS = 2 * 60 * 60 * 1000; // 2 hour timeout
|
|
268
|
+
const REMINDER_INTERVAL_MS = 15 * 60 * 1000; // Send reminder every 15 minutes
|
|
269
|
+
/**
|
|
270
|
+
* Poll for a permission response from Mirra
|
|
271
|
+
*
|
|
272
|
+
* This can block for up to 2 hours, which is intentional for async remote use cases.
|
|
273
|
+
* The user might be away from their computer (on a plane, playing with kids, etc.)
|
|
274
|
+
* and will respond from Mirra when they have time.
|
|
275
|
+
*
|
|
276
|
+
* Sends periodic reminders to Mirra so the user knows the session is still waiting.
|
|
277
|
+
*
|
|
278
|
+
* Returns the action if received, or null if timeout/error
|
|
279
|
+
*/
|
|
280
|
+
async function pollForPermissionResponse(requestId, sessionId, tool) {
|
|
281
|
+
const startTime = Date.now();
|
|
282
|
+
let lastReminderTime = startTime;
|
|
283
|
+
while (Date.now() - startTime < POLL_TIMEOUT_MS) {
|
|
284
|
+
const request = (0, config_1.getPendingPermissionRequest)(requestId);
|
|
285
|
+
if (request?.response) {
|
|
286
|
+
// Response received - clean up and return
|
|
287
|
+
(0, config_1.removePendingPermissionRequest)(requestId);
|
|
288
|
+
return request.response.action;
|
|
289
|
+
}
|
|
290
|
+
// Send periodic reminders to Mirra
|
|
291
|
+
const now = Date.now();
|
|
292
|
+
if (now - lastReminderTime >= REMINDER_INTERVAL_MS) {
|
|
293
|
+
const waitingMinutes = Math.floor((now - startTime) / 60000);
|
|
294
|
+
await sendWaitingReminder(sessionId, tool, waitingMinutes);
|
|
295
|
+
lastReminderTime = now;
|
|
296
|
+
}
|
|
297
|
+
// Wait before next poll
|
|
298
|
+
await new Promise(resolve => setTimeout(resolve, POLL_INTERVAL_MS));
|
|
299
|
+
}
|
|
300
|
+
// Timeout after 2 hours - clean up and return null
|
|
301
|
+
(0, config_1.removePendingPermissionRequest)(requestId);
|
|
302
|
+
return null;
|
|
303
|
+
}
|
|
304
|
+
/**
|
|
305
|
+
* Send a "still waiting" reminder to Mirra
|
|
306
|
+
*/
|
|
307
|
+
async function sendWaitingReminder(sessionId, tool, waitingMinutes) {
|
|
308
|
+
try {
|
|
309
|
+
const sdk = getSDK();
|
|
310
|
+
const groupId = getGroupId();
|
|
311
|
+
await sdk.mirraMessaging.sendMessage({
|
|
312
|
+
groupId,
|
|
313
|
+
content: `⏳ Still waiting for permission response (${waitingMinutes} min)\n\nTool: ${tool}\n\nReply to the permission prompt above to continue.`,
|
|
314
|
+
automation: {
|
|
315
|
+
source: 'claude-code',
|
|
316
|
+
flowTitle: 'Claude Code',
|
|
317
|
+
isAutomated: true,
|
|
318
|
+
sessionId,
|
|
319
|
+
},
|
|
320
|
+
});
|
|
321
|
+
}
|
|
322
|
+
catch {
|
|
323
|
+
// Ignore errors sending reminders - don't break the polling loop
|
|
324
|
+
}
|
|
325
|
+
}
|
|
326
|
+
/**
|
|
327
|
+
* Send timeout notification to Mirra
|
|
328
|
+
* This is sent after 2 hours of waiting with no response
|
|
329
|
+
*/
|
|
330
|
+
async function sendTimeoutNotification(sessionId, tool) {
|
|
331
|
+
const sdk = getSDK();
|
|
332
|
+
const groupId = getGroupId();
|
|
333
|
+
await sdk.mirraMessaging.sendMessage({
|
|
334
|
+
groupId,
|
|
335
|
+
content: `⏰ Permission request timed out after 2 hours.\n\nTool: ${tool}\n\nThe operation was denied. You may need to restart the task if you still want to proceed.`,
|
|
336
|
+
automation: {
|
|
337
|
+
source: 'claude-code',
|
|
338
|
+
flowTitle: 'Claude Code',
|
|
339
|
+
isAutomated: true,
|
|
340
|
+
sessionId,
|
|
341
|
+
},
|
|
342
|
+
});
|
|
343
|
+
}
|
|
242
344
|
/**
|
|
243
345
|
* Handle PostMessage hook - Claude's response text
|
|
244
346
|
*
|
|
@@ -250,6 +352,9 @@ async function sendToMirra(message, structuredData) {
|
|
|
250
352
|
*
|
|
251
353
|
* For permission_prompt notifications, we build structured data with selectable
|
|
252
354
|
* options (Allow, Allow Always, Deny) that the mobile app renders as buttons.
|
|
355
|
+
*
|
|
356
|
+
* For local sessions (not Mirra-spawned), we poll for the user's response
|
|
357
|
+
* and output it to stdout for Claude Code to process.
|
|
253
358
|
*/
|
|
254
359
|
async function handlePostMessage(stdinData) {
|
|
255
360
|
if (!stdinData.trim()) {
|
|
@@ -268,6 +373,7 @@ async function handlePostMessage(stdinData) {
|
|
|
268
373
|
humanReadableMessage = stdinData;
|
|
269
374
|
}
|
|
270
375
|
const sessionId = getSessionId();
|
|
376
|
+
const isLocalSession = !isMirraSpawnedSession();
|
|
271
377
|
const message = {
|
|
272
378
|
type: 'claude_code_output',
|
|
273
379
|
sessionId,
|
|
@@ -283,13 +389,50 @@ async function handlePostMessage(stdinData) {
|
|
|
283
389
|
};
|
|
284
390
|
// Build structured data for permission prompts
|
|
285
391
|
let structuredData;
|
|
392
|
+
let permissionPrompt = null;
|
|
393
|
+
let requestId;
|
|
286
394
|
if (notificationData) {
|
|
287
|
-
|
|
395
|
+
permissionPrompt = parsePermissionPrompt(notificationData, sessionId);
|
|
288
396
|
if (permissionPrompt) {
|
|
289
397
|
structuredData = buildPermissionStructuredData(permissionPrompt);
|
|
398
|
+
// For local sessions, store a pending request for polling
|
|
399
|
+
if (isLocalSession) {
|
|
400
|
+
requestId = (0, config_1.storePendingPermissionRequest)(sessionId);
|
|
401
|
+
// Add requestId to structured data metadata for response routing
|
|
402
|
+
if (structuredData.metadata) {
|
|
403
|
+
structuredData.metadata.requestId = requestId;
|
|
404
|
+
}
|
|
405
|
+
}
|
|
406
|
+
}
|
|
407
|
+
}
|
|
408
|
+
// Send message to Mirra
|
|
409
|
+
await sendToMirra(message, structuredData, requestId);
|
|
410
|
+
// For local sessions with permission prompts, poll for response
|
|
411
|
+
// This can block for up to 2 hours - intentional for async remote use cases
|
|
412
|
+
if (isLocalSession && permissionPrompt && requestId) {
|
|
413
|
+
const response = await pollForPermissionResponse(requestId, sessionId, permissionPrompt.tool);
|
|
414
|
+
if (response) {
|
|
415
|
+
// Output the response to stdout for Claude Code to process
|
|
416
|
+
// Claude Code permission hook expects JSON output with the decision
|
|
417
|
+
const hookResponse = {
|
|
418
|
+
decision: response === 'deny' ? 'deny' : 'allow',
|
|
419
|
+
allow_forever: response === 'allow_always',
|
|
420
|
+
};
|
|
421
|
+
process.stdout.write(JSON.stringify(hookResponse));
|
|
422
|
+
}
|
|
423
|
+
else {
|
|
424
|
+
// Timeout after 2 hours - notify Mirra and deny
|
|
425
|
+
// We deny rather than letting Claude Code "ask locally" because the user
|
|
426
|
+
// isn't at their computer - all follow-up must go through Mirra
|
|
427
|
+
await sendTimeoutNotification(sessionId, permissionPrompt.tool);
|
|
428
|
+
// Return explicit deny so Claude Code knows the decision
|
|
429
|
+
const hookResponse = {
|
|
430
|
+
decision: 'deny',
|
|
431
|
+
allow_forever: false,
|
|
432
|
+
};
|
|
433
|
+
process.stdout.write(JSON.stringify(hookResponse));
|
|
290
434
|
}
|
|
291
435
|
}
|
|
292
|
-
await sendToMirra(message, structuredData);
|
|
293
436
|
}
|
|
294
437
|
/**
|
|
295
438
|
* Handle PostToolUse hook - tool execution results
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hook.js","sourceRoot":"","sources":["../../src/commands/hook.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"hook.js","sourceRoot":"","sources":["../../src/commands/hook.ts"],"names":[],"mappings":";AAAA;;;;;;;;;GASG;;AAiiBH,gCAoBC;AAnjBD,8CAAgD;AAChD,sCAOmB;AAUnB;;GAEG;AACH,KAAK,UAAU,SAAS;IACtB,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC7B,IAAI,IAAI,GAAG,EAAE,CAAC;QAEd,sCAAsC;QACtC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;YACzB,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;YACnC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE;gBACjC,IAAI,IAAI,KAAK,CAAC;YAChB,CAAC,CAAC,CAAC;YACH,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE;gBAC3B,OAAO,CAAC,IAAI,CAAC,CAAC;YAChB,CAAC,CAAC,CAAC;QACL,CAAC;aAAM,CAAC;YACN,gBAAgB;YAChB,OAAO,CAAC,EAAE,CAAC,CAAC;QACd,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;GAEG;AACH,SAAS,MAAM;IACb,MAAM,MAAM,GAAG,IAAA,mBAAU,GAAE,CAAC;IAC5B,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC;QACpB,MAAM,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAC;IAC5E,CAAC;IAED,OAAO,IAAI,cAAQ,CAAC;QAClB,MAAM,EAAE,MAAM,CAAC,MAAM;KACtB,CAAC,CAAC;AACL,CAAC;AAED;;GAEG;AACH,SAAS,UAAU;IACjB,+EAA+E;IAC/E,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC;IAC9C,IAAI,UAAU,EAAE,CAAC;QACf,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,sBAAsB;IACtB,MAAM,MAAM,GAAG,IAAA,mBAAU,GAAE,CAAC;IAC5B,IAAI,MAAM,EAAE,OAAO,EAAE,CAAC;QACpB,OAAO,MAAM,CAAC,OAAO,CAAC;IACxB,CAAC;IAED,MAAM,IAAI,KAAK,CACb,uFAAuF,CACxF,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,SAAS,qBAAqB;IAC5B,OAAO,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC;AACxC,CAAC;AAED;;;;;;GAMG;AACH,SAAS,YAAY;IACnB,4DAA4D;IAC5D,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC;IAChD,IAAI,UAAU,EAAE,CAAC;QACf,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,qDAAqD;IACrD,MAAM,YAAY,GAAG,IAAA,wBAAe,GAAE,CAAC;IACvC,IAAI,YAAY,EAAE,SAAS,EAAE,CAAC;QAC5B,OAAO,YAAY,CAAC,SAAS,CAAC;IAChC,CAAC;IAED,6CAA6C;IAC7C,yCAAyC;IACzC,MAAM,OAAO,GAAG,UAAU,EAAE,CAAC;IAC7B,OAAO,IAAA,kCAAyB,EAAC,OAAO,CAAC,CAAC;AAC5C,CAAC;AAED;;GAEG;AACH,SAAS,kBAAkB,CAAC,OAAgE;IAC1F,QAAQ,OAAO,CAAC,IAAI,EAAE,CAAC;QACrB,KAAK,oBAAoB;YACvB,OAAQ,OAA4B,CAAC,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC;QAC1D,KAAK,kBAAkB;YACrB,MAAM,IAAI,GAAG,OAA4B,CAAC;YAC1C,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;YAChC,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;gBAC/B,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ,KAAK,MAAM,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;YAClG,CAAC;YACD,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ,aAAa,CAAC;QAC7C,KAAK,oBAAoB;YACvB,OAAQ,OAA4B,CAAC,IAAI,CAAC,OAAO,IAAI,WAAY,OAA4B,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;QAC9G;YACE,OAAO,EAAE,CAAC;IACd,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,SAAS,qBAAqB,CAC5B,gBAAwC,EACxC,SAAiB;IAEjB,8CAA8C;IAC9C,IAAI,gBAAgB,CAAC,iBAAiB,KAAK,mBAAmB,EAAE,CAAC;QAC/D,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,OAAO,GAAG,gBAAgB,CAAC,OAAO,IAAI,EAAE,CAAC;IAE/C,gDAAgD;IAChD,mBAAmB;IACnB,+CAA+C;IAC/C,+CAA+C;IAC/C,gDAAgD;IAChD,+CAA+C;IAE/C,IAAI,IAAI,GAAG,SAAS,CAAC;IACrB,IAAI,OAA2B,CAAC;IAChC,IAAI,QAA4B,CAAC;IAEjC,iCAAiC;IACjC,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,0BAA0B,CAAC,CAAC;IAC5D,IAAI,SAAS,EAAE,CAAC;QACd,IAAI,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;IACtB,CAAC;IAED,6EAA6E;IAC7E,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;QACpB,qDAAqD;QACrD,uCAAuC;QACvC,OAAO,GAAG,OAAO,CAAC;IACpB,CAAC;IAED,+CAA+C;IAC/C,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QAC7C,yCAAyC;QACzC,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC;QAC9D,IAAI,SAAS,EAAE,CAAC;YACd,QAAQ,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;QAC1B,CAAC;IACH,CAAC;IAED,OAAO;QACL,IAAI;QACJ,OAAO;QACP,QAAQ;QACR,OAAO;QACP,SAAS;KACV,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,SAAS,6BAA6B,CAAC,MAA4B;IACjE,gDAAgD;IAChD,IAAI,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC;IAC9B,IAAI,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;QAC7C,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC;IAC5B,CAAC;SAAM,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;QAC3B,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;IAC7B,CAAC;IAED,MAAM,KAAK,GAAyB;QAClC;YACE,EAAE,EAAE,OAAO;YACX,KAAK,EAAE,OAAO;YACd,QAAQ,EAAE,qCAAqC;YAC/C,IAAI,EAAE,kBAAkB;YACxB,YAAY,EAAE,SAAS;YACvB,QAAQ,EAAE;gBACR,MAAM,EAAE,OAAO;gBACf,IAAI,EAAE,MAAM,CAAC,IAAI;gBACjB,OAAO,EAAE,MAAM,CAAC,OAAO;gBACvB,QAAQ,EAAE,MAAM,CAAC,QAAQ;aAC1B;SACF;QACD;YACE,EAAE,EAAE,cAAc;YAClB,KAAK,EAAE,cAAc;YACrB,QAAQ,EAAE,iCAAiC;YAC3C,IAAI,EAAE,kBAAkB;YACxB,YAAY,EAAE,SAAS;YACvB,QAAQ,EAAE;gBACR,MAAM,EAAE,cAAc;gBACtB,IAAI,EAAE,MAAM,CAAC,IAAI;aAClB;SACF;QACD;YACE,EAAE,EAAE,MAAM;YACV,KAAK,EAAE,MAAM;YACb,QAAQ,EAAE,sBAAsB;YAChC,IAAI,EAAE,cAAc;YACpB,YAAY,EAAE,OAAO;YACrB,QAAQ,EAAE;gBACR,MAAM,EAAE,MAAM;gBACd,IAAI,EAAE,MAAM,CAAC,IAAI;aAClB;SACF;KACF,CAAC;IAEF,OAAO;QACL,WAAW,EAAE,MAAM;QACnB,UAAU,EAAE,sBAAsB;QAClC,IAAI,EAAE;YACJ,KAAK;SACN;QACD,YAAY,EAAE;YACZ,cAAc,EAAE,IAAI;YACpB,gBAAgB,EAAE,KAAK;SACxB;QACD,QAAQ,EAAE;YACR,SAAS,EAAE,MAAM,CAAC,SAAS;YAC3B,UAAU,EAAE,YAAY;YACxB,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,eAAe,EAAE,MAAM,CAAC,OAAO;YAC/B,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;SACpC;KACF,CAAC;AACJ,CAAC;AAED;;;;;;;;;GASG;AACH,KAAK,UAAU,WAAW,CACxB,OAAgE,EAChE,cAA+B,EAC/B,SAAkB;IAElB,MAAM,GAAG,GAAG,MAAM,EAAS,CAAC;IAC5B,MAAM,OAAO,GAAG,UAAU,EAAE,CAAC;IAC7B,MAAM,SAAS,GAAG,YAAY,EAAE,CAAC;IAEjC,gCAAgC;IAChC,MAAM,WAAW,GAAG,kBAAkB,CAAC,OAAO,CAAC,CAAC;IAEhD,MAAM,GAAG,CAAC,cAAc,CAAC,WAAW,CAAC;QACnC,OAAO;QACP,OAAO,EAAE,WAAW;QACpB,UAAU,EAAE;YACV,MAAM,EAAE,aAAa;YACrB,SAAS,EAAE,aAAa;YACxB,WAAW,EAAE,IAAI,EAAE,qDAAqD;YACxE,gEAAgE;YAChE,+CAA+C;YAC/C,SAAS;YACT,oDAAoD;YACpD,GAAG,CAAC,SAAS,IAAI,EAAE,SAAS,EAAE,CAAC;SAChC;QACD,2EAA2E;QAC3E,GAAG,CAAC,cAAc,IAAI,EAAE,cAAc,EAAE,CAAC,cAAc,CAAC,EAAE,CAAC;KAC5D,CAAC,CAAC;AACL,CAAC;AAED,+EAA+E;AAC/E,mDAAmD;AACnD,+EAA+E;AAE/E,MAAM,gBAAgB,GAAG,IAAI,CAAC,CAAC,sBAAsB;AACrD,MAAM,eAAe,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,iBAAiB;AAC7D,MAAM,oBAAoB,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,iCAAiC;AAE9E;;;;;;;;;;GAUG;AACH,KAAK,UAAU,yBAAyB,CACtC,SAAiB,EACjB,SAAiB,EACjB,IAAY;IAEZ,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAC7B,IAAI,gBAAgB,GAAG,SAAS,CAAC;IAEjC,OAAO,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,GAAG,eAAe,EAAE,CAAC;QAChD,MAAM,OAAO,GAAG,IAAA,oCAA2B,EAAC,SAAS,CAAC,CAAC;QAEvD,IAAI,OAAO,EAAE,QAAQ,EAAE,CAAC;YACtB,0CAA0C;YAC1C,IAAA,uCAA8B,EAAC,SAAS,CAAC,CAAC;YAC1C,OAAO,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC;QACjC,CAAC;QAED,mCAAmC;QACnC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,IAAI,GAAG,GAAG,gBAAgB,IAAI,oBAAoB,EAAE,CAAC;YACnD,MAAM,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,GAAG,SAAS,CAAC,GAAG,KAAK,CAAC,CAAC;YAC7D,MAAM,mBAAmB,CAAC,SAAS,EAAE,IAAI,EAAE,cAAc,CAAC,CAAC;YAC3D,gBAAgB,GAAG,GAAG,CAAC;QACzB,CAAC;QAED,wBAAwB;QACxB,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC,CAAC;IACtE,CAAC;IAED,mDAAmD;IACnD,IAAA,uCAA8B,EAAC,SAAS,CAAC,CAAC;IAC1C,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,mBAAmB,CAAC,SAAiB,EAAE,IAAY,EAAE,cAAsB;IACxF,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,EAAS,CAAC;QAC5B,MAAM,OAAO,GAAG,UAAU,EAAE,CAAC;QAE7B,MAAM,GAAG,CAAC,cAAc,CAAC,WAAW,CAAC;YACnC,OAAO;YACP,OAAO,EAAE,4CAA4C,cAAc,kBAAkB,IAAI,uDAAuD;YAChJ,UAAU,EAAE;gBACV,MAAM,EAAE,aAAa;gBACrB,SAAS,EAAE,aAAa;gBACxB,WAAW,EAAE,IAAI;gBACjB,SAAS;aACV;SACF,CAAC,CAAC;IACL,CAAC;IAAC,MAAM,CAAC;QACP,iEAAiE;IACnE,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,KAAK,UAAU,uBAAuB,CAAC,SAAiB,EAAE,IAAY;IACpE,MAAM,GAAG,GAAG,MAAM,EAAS,CAAC;IAC5B,MAAM,OAAO,GAAG,UAAU,EAAE,CAAC;IAE7B,MAAM,GAAG,CAAC,cAAc,CAAC,WAAW,CAAC;QACnC,OAAO;QACP,OAAO,EAAE,0DAA0D,IAAI,8FAA8F;QACrK,UAAU,EAAE;YACV,MAAM,EAAE,aAAa;YACrB,SAAS,EAAE,aAAa;YACxB,WAAW,EAAE,IAAI;YACjB,SAAS;SACV;KACF,CAAC,CAAC;AACL,CAAC;AAcD;;;;;;;;;;;;;;GAcG;AACH,KAAK,UAAU,iBAAiB,CAAC,SAAiB;IAChD,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE,CAAC;QACtB,OAAO,CAAC,kBAAkB;IAC5B,CAAC;IAED,yCAAyC;IACzC,IAAI,gBAAgB,GAAkC,IAAI,CAAC;IAC3D,IAAI,oBAA4B,CAAC;IAEjC,IAAI,CAAC;QACH,gBAAgB,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QACzC,2DAA2D;QAC3D,oBAAoB,GAAG,gBAAgB,EAAE,OAAO,IAAI,SAAS,CAAC;IAChE,CAAC;IAAC,MAAM,CAAC;QACP,0CAA0C;QAC1C,oBAAoB,GAAG,SAAS,CAAC;IACnC,CAAC;IAED,MAAM,SAAS,GAAG,YAAY,EAAE,CAAC;IACjC,MAAM,cAAc,GAAG,CAAC,qBAAqB,EAAE,CAAC;IAEhD,MAAM,OAAO,GAAqB;QAChC,IAAI,EAAE,oBAAoB;QAC1B,SAAS;QACT,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QACnC,IAAI,EAAE;YACJ,OAAO,EAAE,oBAAoB;YAC7B,IAAI,EAAE,WAAW;YACjB,6CAA6C;YAC7C,gBAAgB,EAAE,gBAAgB,EAAE,iBAAiB;YACrD,eAAe,EAAE,gBAAgB,EAAE,UAAU;YAC7C,gBAAgB,EAAE,gBAAgB,EAAE,GAAG;SACxC;KACF,CAAC;IAEF,+CAA+C;IAC/C,IAAI,cAA0C,CAAC;IAC/C,IAAI,gBAAgB,GAAgC,IAAI,CAAC;IACzD,IAAI,SAA6B,CAAC;IAElC,IAAI,gBAAgB,EAAE,CAAC;QACrB,gBAAgB,GAAG,qBAAqB,CAAC,gBAAgB,EAAE,SAAS,CAAC,CAAC;QACtE,IAAI,gBAAgB,EAAE,CAAC;YACrB,cAAc,GAAG,6BAA6B,CAAC,gBAAgB,CAAC,CAAC;YAEjE,0DAA0D;YAC1D,IAAI,cAAc,EAAE,CAAC;gBACnB,SAAS,GAAG,IAAA,sCAA6B,EAAC,SAAS,CAAC,CAAC;gBACrD,iEAAiE;gBACjE,IAAI,cAAc,CAAC,QAAQ,EAAE,CAAC;oBAC5B,cAAc,CAAC,QAAQ,CAAC,SAAS,GAAG,SAAS,CAAC;gBAChD,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,wBAAwB;IACxB,MAAM,WAAW,CAAC,OAAO,EAAE,cAAc,EAAE,SAAS,CAAC,CAAC;IAEtD,gEAAgE;IAChE,4EAA4E;IAC5E,IAAI,cAAc,IAAI,gBAAgB,IAAI,SAAS,EAAE,CAAC;QACpD,MAAM,QAAQ,GAAG,MAAM,yBAAyB,CAAC,SAAS,EAAE,SAAS,EAAE,gBAAgB,CAAC,IAAI,CAAC,CAAC;QAE9F,IAAI,QAAQ,EAAE,CAAC;YACb,2DAA2D;YAC3D,oEAAoE;YACpE,MAAM,YAAY,GAAG;gBACnB,QAAQ,EAAE,QAAQ,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO;gBAChD,aAAa,EAAE,QAAQ,KAAK,cAAc;aAC3C,CAAC;YACF,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC,CAAC;QACrD,CAAC;aAAM,CAAC;YACN,gDAAgD;YAChD,yEAAyE;YACzE,gEAAgE;YAChE,MAAM,uBAAuB,CAAC,SAAS,EAAE,gBAAgB,CAAC,IAAI,CAAC,CAAC;YAEhE,yDAAyD;YACzD,MAAM,YAAY,GAAG;gBACnB,QAAQ,EAAE,MAAM;gBAChB,aAAa,EAAE,KAAK;aACrB,CAAC;YACF,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC,CAAC;QACrD,CAAC;IACH,CAAC;AACH,CAAC;AAED;;;;;;;GAOG;AACH,KAAK,UAAU,iBAAiB,CAAC,UAAkB,EAAE,SAAkB;IACrE,oDAAoD;IACpD,+DAA+D;IAC/D,OAAO;AACT,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,UAAU,CAAC,SAAiB;IACzC,MAAM,OAAO,GAAqB;QAChC,IAAI,EAAE,oBAAoB;QAC1B,SAAS,EAAE,YAAY,EAAE;QACzB,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QACnC,IAAI,EAAE;YACJ,MAAM,EAAE,SAAS;YACjB,OAAO,EAAE,SAAS,CAAC,IAAI,EAAE,IAAI,eAAe;SAC7C;KACF,CAAC;IAEF,MAAM,WAAW,CAAC,OAAO,CAAC,CAAC;AAC7B,CAAC;AAED;;GAEG;AACI,KAAK,UAAU,UAAU,CAAC,KAAa,EAAE,IAAc;IAC5D,MAAM,SAAS,GAAG,MAAM,SAAS,EAAE,CAAC;IAEpC,QAAQ,KAAK,EAAE,CAAC;QACd,KAAK,cAAc,CAAC;QACpB,KAAK,cAAc,EAAG,iBAAiB;YACrC,MAAM,iBAAiB,CAAC,SAAS,CAAC,CAAC;YACnC,MAAM;QAER,KAAK,WAAW;YACd,MAAM,iBAAiB,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;YAC5C,MAAM;QAER,KAAK,MAAM;YACT,MAAM,UAAU,CAAC,SAAS,CAAC,CAAC;YAC5B,MAAM;QAER;YACE,MAAM,IAAI,KAAK,CAAC,uBAAuB,KAAK,EAAE,CAAC,CAAC;IACpD,CAAC;AACH,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"start.d.ts","sourceRoot":"","sources":["../../src/commands/start.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;
|
|
1
|
+
{"version":3,"file":"start.d.ts","sourceRoot":"","sources":["../../src/commands/start.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAoBH,UAAU,YAAY;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAuhBD;;GAEG;AACH,wBAAsB,WAAW,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAyItE"}
|
package/dist/commands/start.js
CHANGED
|
@@ -5,6 +5,39 @@
|
|
|
5
5
|
* This server receives commands from the Mirra mobile app via the PC resource.
|
|
6
6
|
* It manages Claude Code sessions and creates Flows for reply routing.
|
|
7
7
|
*/
|
|
8
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
9
|
+
if (k2 === undefined) k2 = k;
|
|
10
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
11
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
12
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
13
|
+
}
|
|
14
|
+
Object.defineProperty(o, k2, desc);
|
|
15
|
+
}) : (function(o, m, k, k2) {
|
|
16
|
+
if (k2 === undefined) k2 = k;
|
|
17
|
+
o[k2] = m[k];
|
|
18
|
+
}));
|
|
19
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
20
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
21
|
+
}) : function(o, v) {
|
|
22
|
+
o["default"] = v;
|
|
23
|
+
});
|
|
24
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
25
|
+
var ownKeys = function(o) {
|
|
26
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
27
|
+
var ar = [];
|
|
28
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
29
|
+
return ar;
|
|
30
|
+
};
|
|
31
|
+
return ownKeys(o);
|
|
32
|
+
};
|
|
33
|
+
return function (mod) {
|
|
34
|
+
if (mod && mod.__esModule) return mod;
|
|
35
|
+
var result = {};
|
|
36
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
37
|
+
__setModuleDefault(result, mod);
|
|
38
|
+
return result;
|
|
39
|
+
};
|
|
40
|
+
})();
|
|
8
41
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
9
42
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
10
43
|
};
|
|
@@ -12,11 +45,138 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
12
45
|
exports.startServer = startServer;
|
|
13
46
|
const chalk_1 = __importDefault(require("chalk"));
|
|
14
47
|
const express_1 = __importDefault(require("express"));
|
|
48
|
+
const os = __importStar(require("os"));
|
|
15
49
|
const sdk_1 = require("@mirra-messenger/sdk");
|
|
16
50
|
const config_1 = require("../config");
|
|
17
51
|
const session_manager_1 = require("../session-manager");
|
|
18
52
|
const tunnel_1 = require("../tunnel");
|
|
19
53
|
let sessionManager;
|
|
54
|
+
let localSessionFlowId;
|
|
55
|
+
// Cached router script ID (fetched once per bridge session)
|
|
56
|
+
let cachedRouterScriptId;
|
|
57
|
+
/**
|
|
58
|
+
* Find the Claude Code Router system script
|
|
59
|
+
* Uses listMarketplaceScripts with system filter to find it
|
|
60
|
+
*/
|
|
61
|
+
async function findClaudeCodeRouterScript(sdk) {
|
|
62
|
+
// Return cached ID if available
|
|
63
|
+
if (cachedRouterScriptId) {
|
|
64
|
+
return cachedRouterScriptId;
|
|
65
|
+
}
|
|
66
|
+
const sdkAny = sdk;
|
|
67
|
+
// Search for the system script by name
|
|
68
|
+
const result = await sdkAny.scripts.listMarketplaceScripts({
|
|
69
|
+
name: 'Claude Code Router',
|
|
70
|
+
system: true,
|
|
71
|
+
limit: 1,
|
|
72
|
+
});
|
|
73
|
+
const scripts = result?.data?.scripts || result?.scripts || [];
|
|
74
|
+
if (scripts.length === 0) {
|
|
75
|
+
throw new Error('Claude Code Router system script not found. Please ensure it is deployed.');
|
|
76
|
+
}
|
|
77
|
+
// The script ID is in _id field
|
|
78
|
+
const scriptId = scripts[0]._id || scripts[0].id;
|
|
79
|
+
if (!scriptId) {
|
|
80
|
+
throw new Error('Claude Code Router script found but has no ID');
|
|
81
|
+
}
|
|
82
|
+
cachedRouterScriptId = scriptId;
|
|
83
|
+
console.log(chalk_1.default.gray(` Found Claude Code Router script: ${scriptId}`));
|
|
84
|
+
return scriptId;
|
|
85
|
+
}
|
|
86
|
+
// ============================================================================
|
|
87
|
+
// Local Session Flow Provisioning
|
|
88
|
+
// ============================================================================
|
|
89
|
+
/**
|
|
90
|
+
* Create a Flow for routing replies to local Claude Code sessions
|
|
91
|
+
* This enables Mirra users to respond to permission prompts from direct Claude Code usage
|
|
92
|
+
*/
|
|
93
|
+
async function ensureLocalSessionFlow(sdk, groupId, pcResourceId) {
|
|
94
|
+
try {
|
|
95
|
+
// Get or create stable local session ID
|
|
96
|
+
const sessionId = (0, config_1.getOrCreateLocalSessionId)(groupId);
|
|
97
|
+
const existingSession = (0, config_1.getLocalSession)();
|
|
98
|
+
// Check if Flow already exists and is valid
|
|
99
|
+
if (existingSession?.flowId) {
|
|
100
|
+
try {
|
|
101
|
+
const existingFlow = await sdk.flows.get(existingSession.flowId);
|
|
102
|
+
if (existingFlow && existingFlow.status === 'active') {
|
|
103
|
+
console.log(chalk_1.default.gray(` Using existing local session Flow: ${existingSession.flowId}`));
|
|
104
|
+
localSessionFlowId = existingSession.flowId;
|
|
105
|
+
return existingSession.flowId;
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
catch {
|
|
109
|
+
// Flow doesn't exist or is invalid - create a new one
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
// Find the Claude Code Router system script
|
|
113
|
+
const routerScriptId = await findClaudeCodeRouterScript(sdk);
|
|
114
|
+
// Create new Flow for local session
|
|
115
|
+
const flow = await sdk.flows.createEventFlow({
|
|
116
|
+
title: `Claude Code Local Session`,
|
|
117
|
+
description: 'Routes mobile replies to local Claude Code sessions (direct usage)',
|
|
118
|
+
status: 'active',
|
|
119
|
+
trigger: {
|
|
120
|
+
type: 'event',
|
|
121
|
+
config: {
|
|
122
|
+
eventSource: 'mirra',
|
|
123
|
+
rootCondition: {
|
|
124
|
+
operator: 'and',
|
|
125
|
+
conditions: [
|
|
126
|
+
{
|
|
127
|
+
// Match replies to messages from this local session
|
|
128
|
+
field: 'mirra.replyTo.automation.sessionId',
|
|
129
|
+
operator: 'equals',
|
|
130
|
+
value: sessionId,
|
|
131
|
+
},
|
|
132
|
+
{
|
|
133
|
+
// Only in the configured group
|
|
134
|
+
field: 'mirra.groupId',
|
|
135
|
+
operator: 'equals',
|
|
136
|
+
value: groupId,
|
|
137
|
+
},
|
|
138
|
+
],
|
|
139
|
+
},
|
|
140
|
+
},
|
|
141
|
+
},
|
|
142
|
+
scriptId: routerScriptId,
|
|
143
|
+
scriptInput: {
|
|
144
|
+
sessionId,
|
|
145
|
+
pcResourceId,
|
|
146
|
+
isLocalSession: true,
|
|
147
|
+
},
|
|
148
|
+
});
|
|
149
|
+
// Save Flow ID to config
|
|
150
|
+
(0, config_1.setLocalSessionFlowId)(flow.id);
|
|
151
|
+
localSessionFlowId = flow.id;
|
|
152
|
+
console.log(chalk_1.default.green(` [+] Local session routing enabled`));
|
|
153
|
+
console.log(chalk_1.default.gray(` Session ID: ${sessionId}`));
|
|
154
|
+
console.log(chalk_1.default.gray(` Flow ID: ${flow.id}`));
|
|
155
|
+
return flow.id;
|
|
156
|
+
}
|
|
157
|
+
catch (error) {
|
|
158
|
+
console.log(chalk_1.default.yellow(` [!] Could not create local session Flow: ${error.message}`));
|
|
159
|
+
console.log(chalk_1.default.gray(` Local Claude Code sessions will not receive Mirra responses`));
|
|
160
|
+
return undefined;
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
/**
|
|
164
|
+
* Delete the local session Flow
|
|
165
|
+
*/
|
|
166
|
+
async function deleteLocalSessionFlow(sdk) {
|
|
167
|
+
const localSession = (0, config_1.getLocalSession)();
|
|
168
|
+
const flowId = localSessionFlowId || localSession?.flowId;
|
|
169
|
+
if (!flowId) {
|
|
170
|
+
return;
|
|
171
|
+
}
|
|
172
|
+
try {
|
|
173
|
+
await sdk.flows.delete(flowId);
|
|
174
|
+
console.log(chalk_1.default.gray(` Deleted local session Flow: ${flowId}`));
|
|
175
|
+
}
|
|
176
|
+
catch (error) {
|
|
177
|
+
console.log(chalk_1.default.yellow(` Could not delete local session Flow: ${error.message}`));
|
|
178
|
+
}
|
|
179
|
+
}
|
|
20
180
|
/**
|
|
21
181
|
* Create the Express app with routes
|
|
22
182
|
*/
|
|
@@ -128,13 +288,39 @@ function createApp() {
|
|
|
128
288
|
res.status(400).json({ error: `Invalid action: ${action}. Must be allow, allow_always, or deny` });
|
|
129
289
|
return;
|
|
130
290
|
}
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
291
|
+
// Check if this is a local session (by checking if we have a matching managed session)
|
|
292
|
+
const managedSession = sessionManager.getSession(sessionId);
|
|
293
|
+
if (managedSession) {
|
|
294
|
+
// Managed session - send response directly to pty
|
|
295
|
+
await sessionManager.sendUserResponse(sessionId, {
|
|
296
|
+
sessionId,
|
|
297
|
+
action: action,
|
|
298
|
+
tool: selection.metadata?.tool,
|
|
299
|
+
command: selection.metadata?.command,
|
|
300
|
+
filePath: selection.metadata?.filePath,
|
|
301
|
+
});
|
|
302
|
+
console.log(chalk_1.default.gray(`[Managed Session ${sessionId}] Permission response: ${action}`));
|
|
303
|
+
}
|
|
304
|
+
else {
|
|
305
|
+
// Local session - store response for hook polling
|
|
306
|
+
const requestId = selection.metadata?.requestId;
|
|
307
|
+
if (requestId) {
|
|
308
|
+
const stored = (0, config_1.storePermissionResponse)(requestId, action);
|
|
309
|
+
if (stored) {
|
|
310
|
+
console.log(chalk_1.default.gray(`[Local Session ${sessionId}] Permission response stored: ${action} (requestId: ${requestId})`));
|
|
311
|
+
}
|
|
312
|
+
else {
|
|
313
|
+
console.log(chalk_1.default.yellow(`[Local Session ${sessionId}] Could not store response - request not found or expired`));
|
|
314
|
+
res.status(404).json({ error: 'Permission request not found or expired' });
|
|
315
|
+
return;
|
|
316
|
+
}
|
|
317
|
+
}
|
|
318
|
+
else {
|
|
319
|
+
console.log(chalk_1.default.yellow(`[Local Session ${sessionId}] No requestId provided - cannot route response`));
|
|
320
|
+
res.status(400).json({ error: 'requestId is required for local session responses' });
|
|
321
|
+
return;
|
|
322
|
+
}
|
|
323
|
+
}
|
|
138
324
|
res.json({ success: true, action });
|
|
139
325
|
}
|
|
140
326
|
catch (error) {
|
|
@@ -227,11 +413,114 @@ function validateSetup(config) {
|
|
|
227
413
|
if (!(0, config_1.hooksConfigured)()) {
|
|
228
414
|
missing.push('Claude Code hooks not configured');
|
|
229
415
|
}
|
|
230
|
-
|
|
231
|
-
missing.push('PC not registered as Mirra resource');
|
|
232
|
-
}
|
|
416
|
+
// Note: pcResourceId is no longer required - we auto-register if missing
|
|
233
417
|
return { valid: missing.length === 0, missing };
|
|
234
418
|
}
|
|
419
|
+
/**
|
|
420
|
+
* Auto-register this PC as a Mirra resource if not already registered
|
|
421
|
+
* This enables users to call spawnSession from Mirra to start sessions on this PC
|
|
422
|
+
*/
|
|
423
|
+
async function autoRegisterIfNeeded(sdk, tunnelUrl) {
|
|
424
|
+
const config = (0, config_1.loadConfig)();
|
|
425
|
+
// Already registered - just update the endpoint
|
|
426
|
+
if (config?.pcResourceId) {
|
|
427
|
+
return config.pcResourceId;
|
|
428
|
+
}
|
|
429
|
+
console.log(chalk_1.default.gray('Auto-registering PC as Mirra resource...'));
|
|
430
|
+
try {
|
|
431
|
+
const pcName = `${os.hostname()} - Claude Code`;
|
|
432
|
+
// Create new resource
|
|
433
|
+
const resource = await sdk.resources.create({
|
|
434
|
+
name: pcName,
|
|
435
|
+
description: `Claude Code on ${os.hostname()}`,
|
|
436
|
+
resourceType: 'integration',
|
|
437
|
+
category: 'development',
|
|
438
|
+
isPrivate: true,
|
|
439
|
+
endpoint: {
|
|
440
|
+
baseUrl: tunnelUrl,
|
|
441
|
+
authentication: 'none',
|
|
442
|
+
methods: [
|
|
443
|
+
{
|
|
444
|
+
name: 'spawnSession',
|
|
445
|
+
httpMethod: 'POST',
|
|
446
|
+
path: '/sessions',
|
|
447
|
+
description: 'Spawn a new Claude Code session',
|
|
448
|
+
parameters: {
|
|
449
|
+
workingDir: { type: 'string', required: false },
|
|
450
|
+
initialPrompt: { type: 'string', required: true },
|
|
451
|
+
groupId: { type: 'string', required: true },
|
|
452
|
+
},
|
|
453
|
+
response: { type: 'object' },
|
|
454
|
+
},
|
|
455
|
+
{
|
|
456
|
+
name: 'sendInput',
|
|
457
|
+
httpMethod: 'POST',
|
|
458
|
+
path: '/sessions/{sessionId}/input',
|
|
459
|
+
description: 'Send input to a session',
|
|
460
|
+
parameters: {
|
|
461
|
+
sessionId: { type: 'string', required: true },
|
|
462
|
+
input: { type: 'string', required: true },
|
|
463
|
+
},
|
|
464
|
+
response: { type: 'object' },
|
|
465
|
+
},
|
|
466
|
+
{
|
|
467
|
+
name: 'killSession',
|
|
468
|
+
httpMethod: 'DELETE',
|
|
469
|
+
path: '/sessions/{sessionId}',
|
|
470
|
+
description: 'Kill a session',
|
|
471
|
+
parameters: {
|
|
472
|
+
sessionId: { type: 'string', required: true },
|
|
473
|
+
},
|
|
474
|
+
response: { type: 'object' },
|
|
475
|
+
},
|
|
476
|
+
{
|
|
477
|
+
name: 'listSessions',
|
|
478
|
+
httpMethod: 'GET',
|
|
479
|
+
path: '/sessions',
|
|
480
|
+
description: 'List active sessions',
|
|
481
|
+
parameters: {},
|
|
482
|
+
response: { type: 'array' },
|
|
483
|
+
},
|
|
484
|
+
{
|
|
485
|
+
name: 'respond',
|
|
486
|
+
httpMethod: 'POST',
|
|
487
|
+
path: '/respond',
|
|
488
|
+
description: 'Respond to a permission prompt (allow/deny)',
|
|
489
|
+
parameters: {
|
|
490
|
+
sessionId: { type: 'string', required: true },
|
|
491
|
+
selection: { type: 'object', required: true },
|
|
492
|
+
},
|
|
493
|
+
response: { type: 'object' },
|
|
494
|
+
},
|
|
495
|
+
],
|
|
496
|
+
},
|
|
497
|
+
pricing: { model: 'free' },
|
|
498
|
+
});
|
|
499
|
+
// Save resource ID
|
|
500
|
+
(0, config_1.setConfigValue)('pcResourceId', resource.id);
|
|
501
|
+
console.log(chalk_1.default.green(' [+] PC registered as Mirra resource'));
|
|
502
|
+
console.log(chalk_1.default.gray(` Resource ID: ${resource.id}`));
|
|
503
|
+
// Auto-install the resource for the user
|
|
504
|
+
try {
|
|
505
|
+
await sdk.resources.install(resource.id);
|
|
506
|
+
console.log(chalk_1.default.green(' [+] Resource auto-installed'));
|
|
507
|
+
}
|
|
508
|
+
catch (e) {
|
|
509
|
+
if (e.message?.includes('already installed')) {
|
|
510
|
+
// Already installed - fine
|
|
511
|
+
}
|
|
512
|
+
else {
|
|
513
|
+
console.log(chalk_1.default.yellow(` [!] Could not auto-install: ${e.message}`));
|
|
514
|
+
}
|
|
515
|
+
}
|
|
516
|
+
return resource.id;
|
|
517
|
+
}
|
|
518
|
+
catch (error) {
|
|
519
|
+
console.log(chalk_1.default.yellow(` [!] Auto-registration failed: ${error.message}`));
|
|
520
|
+
console.log(chalk_1.default.gray(' You can manually register with: mirra-cc-bridge register'));
|
|
521
|
+
return undefined;
|
|
522
|
+
}
|
|
523
|
+
}
|
|
235
524
|
/**
|
|
236
525
|
* Start the bridge server
|
|
237
526
|
*/
|
|
@@ -254,17 +543,15 @@ async function startServer(options) {
|
|
|
254
543
|
console.log(chalk_1.default.gray(' mirra-cc-bridge register - Register PC as Mirra resource\n'));
|
|
255
544
|
process.exit(1);
|
|
256
545
|
}
|
|
257
|
-
// Initialize session manager with API key
|
|
258
|
-
|
|
546
|
+
// Initialize session manager with API key
|
|
547
|
+
// pcResourceId will be set after auto-registration if needed
|
|
548
|
+
sessionManager = new session_manager_1.SessionManager(config.apiKey);
|
|
259
549
|
let tunnelUrl = null;
|
|
260
550
|
const sdk = new sdk_1.MirraSDK({ apiKey: config.apiKey });
|
|
261
551
|
// Start tunnel (required for bidirectional communication)
|
|
262
552
|
console.log(chalk_1.default.gray('Starting tunnel...'));
|
|
263
553
|
try {
|
|
264
554
|
tunnelUrl = await (0, tunnel_1.startTunnel)(port);
|
|
265
|
-
// Update resource endpoint with new tunnel URL
|
|
266
|
-
console.log(chalk_1.default.gray('Updating resource endpoint...'));
|
|
267
|
-
await updateResourceEndpoint(sdk, config.pcResourceId, tunnelUrl);
|
|
268
555
|
}
|
|
269
556
|
catch (error) {
|
|
270
557
|
console.error(chalk_1.default.red(`\nFailed to start tunnel: ${error.message}`));
|
|
@@ -272,6 +559,33 @@ async function startServer(options) {
|
|
|
272
559
|
console.log(chalk_1.default.gray('Please check your network connection and try again.\n'));
|
|
273
560
|
process.exit(1);
|
|
274
561
|
}
|
|
562
|
+
// Auto-register PC as resource if not registered
|
|
563
|
+
// This enables Mirra users to call spawnSession on this PC
|
|
564
|
+
let pcResourceId = config.pcResourceId;
|
|
565
|
+
if (!pcResourceId) {
|
|
566
|
+
pcResourceId = await autoRegisterIfNeeded(sdk, tunnelUrl);
|
|
567
|
+
}
|
|
568
|
+
// Update resource endpoint with new tunnel URL (if we have a resource)
|
|
569
|
+
if (pcResourceId) {
|
|
570
|
+
console.log(chalk_1.default.gray('Updating resource endpoint...'));
|
|
571
|
+
await updateResourceEndpoint(sdk, pcResourceId, tunnelUrl);
|
|
572
|
+
}
|
|
573
|
+
else {
|
|
574
|
+
console.log(chalk_1.default.yellow(' [!] No PC resource - remote spawn disabled'));
|
|
575
|
+
console.log(chalk_1.default.gray(' Run `mirra-cc-bridge register` to enable remote control'));
|
|
576
|
+
}
|
|
577
|
+
// Set up local session Flow for direct Claude Code usage
|
|
578
|
+
console.log(chalk_1.default.gray('Setting up local session routing...'));
|
|
579
|
+
if (config.groupId && pcResourceId) {
|
|
580
|
+
await ensureLocalSessionFlow(sdk, config.groupId, pcResourceId);
|
|
581
|
+
}
|
|
582
|
+
else if (!config.groupId) {
|
|
583
|
+
console.log(chalk_1.default.yellow(' [!] No groupId configured - local session routing disabled'));
|
|
584
|
+
console.log(chalk_1.default.gray(' Run `mirra-cc-bridge configure` to set a default group'));
|
|
585
|
+
}
|
|
586
|
+
else {
|
|
587
|
+
console.log(chalk_1.default.yellow(' [!] No PC resource - local session routing disabled'));
|
|
588
|
+
}
|
|
275
589
|
// Create and start Express app
|
|
276
590
|
const app = createApp();
|
|
277
591
|
const server = app.listen(port, () => {
|
|
@@ -292,13 +606,26 @@ async function startServer(options) {
|
|
|
292
606
|
console.log(chalk_1.default.gray(' POST /sessions/:id/input send input'));
|
|
293
607
|
console.log(chalk_1.default.gray(' DELETE /sessions/:id kill session'));
|
|
294
608
|
console.log(chalk_1.default.gray(' POST /respond respond to permission prompt'));
|
|
295
|
-
// Show connection status
|
|
609
|
+
// Show connection status
|
|
296
610
|
console.log(chalk_1.default.bold('\nConnection Status:'));
|
|
297
611
|
console.log(chalk_1.default.green(' [+] Hooks configured') + chalk_1.default.gray(' - Claude Code output syncs to Mirra'));
|
|
298
612
|
console.log(chalk_1.default.green(' [+] Tunnel connected') + chalk_1.default.gray(` - ${tunnelUrl}`));
|
|
299
|
-
|
|
613
|
+
if (pcResourceId) {
|
|
614
|
+
console.log(chalk_1.default.green(' [+] PC registered') + chalk_1.default.gray(' - Can receive commands from Mirra'));
|
|
615
|
+
}
|
|
616
|
+
else {
|
|
617
|
+
console.log(chalk_1.default.yellow(' [-] PC not registered') + chalk_1.default.gray(' - Remote spawn disabled'));
|
|
618
|
+
}
|
|
619
|
+
if (localSessionFlowId) {
|
|
620
|
+
console.log(chalk_1.default.green(' [+] Local session routing') + chalk_1.default.gray(' - Direct Claude Code syncs to Mirra'));
|
|
621
|
+
}
|
|
300
622
|
console.log(chalk_1.default.green.bold('\n> Ready'));
|
|
301
|
-
|
|
623
|
+
if (pcResourceId) {
|
|
624
|
+
console.log(chalk_1.default.gray(' Two-way communication with Mirra enabled'));
|
|
625
|
+
}
|
|
626
|
+
else {
|
|
627
|
+
console.log(chalk_1.default.gray(' One-way sync enabled (Claude Code → Mirra)'));
|
|
628
|
+
}
|
|
302
629
|
console.log(chalk_1.default.gray(' Ctrl+C to stop\n'));
|
|
303
630
|
// Handle shutdown
|
|
304
631
|
const shutdown = async () => {
|
|
@@ -307,8 +634,12 @@ async function startServer(options) {
|
|
|
307
634
|
if ((0, tunnel_1.getTunnelUrl)()) {
|
|
308
635
|
await (0, tunnel_1.stopTunnel)();
|
|
309
636
|
}
|
|
310
|
-
// Kill all sessions
|
|
637
|
+
// Kill all managed sessions
|
|
311
638
|
await sessionManager.killAllSessions();
|
|
639
|
+
// Clean up local session Flow and state
|
|
640
|
+
console.log(chalk_1.default.gray('Cleaning up local session...'));
|
|
641
|
+
await deleteLocalSessionFlow(sdk);
|
|
642
|
+
(0, config_1.clearLocalSession)();
|
|
312
643
|
server.close(() => {
|
|
313
644
|
console.log(chalk_1.default.green('[+] Server stopped'));
|
|
314
645
|
process.exit(0);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"start.js","sourceRoot":"","sources":["../../src/commands/start.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"start.js","sourceRoot":"","sources":["../../src/commands/start.ts"],"names":[],"mappings":"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"}
|
package/dist/config.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Configuration management for Mirra CC Bridge
|
|
3
3
|
*/
|
|
4
|
-
import { BridgeConfig } from './types';
|
|
4
|
+
import { BridgeConfig, LocalSession, PendingPermissionRequest } from './types';
|
|
5
5
|
/**
|
|
6
6
|
* Load configuration from file
|
|
7
7
|
*/
|
|
@@ -34,4 +34,38 @@ export declare function getConfigPath(): string;
|
|
|
34
34
|
* Get the config directory path
|
|
35
35
|
*/
|
|
36
36
|
export declare function getConfigDir(): string;
|
|
37
|
+
/**
|
|
38
|
+
* Get or create a stable local session ID
|
|
39
|
+
* This ensures the same session ID is used across hook invocations
|
|
40
|
+
*/
|
|
41
|
+
export declare function getOrCreateLocalSessionId(groupId: string): string;
|
|
42
|
+
/**
|
|
43
|
+
* Get current local session info
|
|
44
|
+
*/
|
|
45
|
+
export declare function getLocalSession(): LocalSession | undefined;
|
|
46
|
+
/**
|
|
47
|
+
* Set the Flow ID for the local session
|
|
48
|
+
*/
|
|
49
|
+
export declare function setLocalSessionFlowId(flowId: string): void;
|
|
50
|
+
/**
|
|
51
|
+
* Clear local session state (for cleanup on shutdown)
|
|
52
|
+
*/
|
|
53
|
+
export declare function clearLocalSession(): void;
|
|
54
|
+
/**
|
|
55
|
+
* Store a pending permission request
|
|
56
|
+
* Returns the request ID for polling
|
|
57
|
+
*/
|
|
58
|
+
export declare function storePendingPermissionRequest(sessionId: string): string;
|
|
59
|
+
/**
|
|
60
|
+
* Get a pending permission request by ID
|
|
61
|
+
*/
|
|
62
|
+
export declare function getPendingPermissionRequest(requestId: string): PendingPermissionRequest | undefined;
|
|
63
|
+
/**
|
|
64
|
+
* Store response for a pending permission request
|
|
65
|
+
*/
|
|
66
|
+
export declare function storePermissionResponse(requestId: string, action: 'allow' | 'allow_always' | 'deny'): boolean;
|
|
67
|
+
/**
|
|
68
|
+
* Remove a pending permission request (after it's been handled)
|
|
69
|
+
*/
|
|
70
|
+
export declare function removePendingPermissionRequest(requestId: string): void;
|
|
37
71
|
//# sourceMappingURL=config.d.ts.map
|
package/dist/config.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA;;GAEG;AAMH,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA;;GAEG;AAMH,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,wBAAwB,EAAE,MAAM,SAAS,CAAC;AAU/E;;GAEG;AACH,wBAAgB,UAAU,IAAI,YAAY,GAAG,IAAI,CAYhD;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,MAAM,EAAE,YAAY,GAAG,IAAI,CAIrD;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,CAAC,SAAS,MAAM,YAAY,EACzD,GAAG,EAAE,CAAC,GACL,YAAY,CAAC,CAAC,CAAC,GAAG,SAAS,CAG7B;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,CAAC,SAAS,MAAM,YAAY,EACzD,GAAG,EAAE,CAAC,EACN,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC,GACrB,IAAI,CAIN;AAED;;GAEG;AACH,wBAAgB,YAAY,IAAI,OAAO,CAGtC;AAED;;GAEG;AACH,wBAAgB,eAAe,IAAI,OAAO,CAGzC;AAED;;GAEG;AACH,wBAAgB,aAAa,IAAI,MAAM,CAEtC;AAED;;GAEG;AACH,wBAAgB,YAAY,IAAI,MAAM,CAErC;AAMD;;;GAGG;AACH,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAsBjE;AAED;;GAEG;AACH,wBAAgB,eAAe,IAAI,YAAY,GAAG,SAAS,CAG1D;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAM1D;AAED;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,IAAI,CAQxC;AAQD;;;GAGG;AACH,wBAAgB,6BAA6B,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CA0BvE;AAED;;GAEG;AACH,wBAAgB,2BAA2B,CAAC,SAAS,EAAE,MAAM,GAAG,wBAAwB,GAAG,SAAS,CAGnG;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CACrC,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,OAAO,GAAG,cAAc,GAAG,MAAM,GACxC,OAAO,CAkBT;AAED;;GAEG;AACH,wBAAgB,8BAA8B,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAQtE"}
|
package/dist/config.js
CHANGED
|
@@ -11,6 +11,14 @@ exports.isConfigured = isConfigured;
|
|
|
11
11
|
exports.hooksConfigured = hooksConfigured;
|
|
12
12
|
exports.getConfigPath = getConfigPath;
|
|
13
13
|
exports.getConfigDir = getConfigDir;
|
|
14
|
+
exports.getOrCreateLocalSessionId = getOrCreateLocalSessionId;
|
|
15
|
+
exports.getLocalSession = getLocalSession;
|
|
16
|
+
exports.setLocalSessionFlowId = setLocalSessionFlowId;
|
|
17
|
+
exports.clearLocalSession = clearLocalSession;
|
|
18
|
+
exports.storePendingPermissionRequest = storePendingPermissionRequest;
|
|
19
|
+
exports.getPendingPermissionRequest = getPendingPermissionRequest;
|
|
20
|
+
exports.storePermissionResponse = storePermissionResponse;
|
|
21
|
+
exports.removePendingPermissionRequest = removePendingPermissionRequest;
|
|
14
22
|
const os_1 = require("os");
|
|
15
23
|
const fs_1 = require("fs");
|
|
16
24
|
const path_1 = require("path");
|
|
@@ -85,4 +93,121 @@ function getConfigPath() {
|
|
|
85
93
|
function getConfigDir() {
|
|
86
94
|
return CONFIG_DIR;
|
|
87
95
|
}
|
|
96
|
+
// ============================================================================
|
|
97
|
+
// Local Session Management
|
|
98
|
+
// ============================================================================
|
|
99
|
+
/**
|
|
100
|
+
* Get or create a stable local session ID
|
|
101
|
+
* This ensures the same session ID is used across hook invocations
|
|
102
|
+
*/
|
|
103
|
+
function getOrCreateLocalSessionId(groupId) {
|
|
104
|
+
const config = loadConfig();
|
|
105
|
+
// Return existing session ID if it exists and matches the group
|
|
106
|
+
if (config?.localSession?.sessionId && config.localSession.groupId === groupId) {
|
|
107
|
+
return config.localSession.sessionId;
|
|
108
|
+
}
|
|
109
|
+
// Generate new stable session ID
|
|
110
|
+
const sessionId = `cc_local_${Date.now()}_${Math.random().toString(36).substring(2, 8)}`;
|
|
111
|
+
const localSession = {
|
|
112
|
+
sessionId,
|
|
113
|
+
groupId,
|
|
114
|
+
createdAt: new Date().toISOString(),
|
|
115
|
+
};
|
|
116
|
+
const newConfig = config || {};
|
|
117
|
+
newConfig.localSession = localSession;
|
|
118
|
+
saveConfig(newConfig);
|
|
119
|
+
return sessionId;
|
|
120
|
+
}
|
|
121
|
+
/**
|
|
122
|
+
* Get current local session info
|
|
123
|
+
*/
|
|
124
|
+
function getLocalSession() {
|
|
125
|
+
const config = loadConfig();
|
|
126
|
+
return config?.localSession;
|
|
127
|
+
}
|
|
128
|
+
/**
|
|
129
|
+
* Set the Flow ID for the local session
|
|
130
|
+
*/
|
|
131
|
+
function setLocalSessionFlowId(flowId) {
|
|
132
|
+
const config = loadConfig();
|
|
133
|
+
if (config?.localSession) {
|
|
134
|
+
config.localSession.flowId = flowId;
|
|
135
|
+
saveConfig(config);
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
/**
|
|
139
|
+
* Clear local session state (for cleanup on shutdown)
|
|
140
|
+
*/
|
|
141
|
+
function clearLocalSession() {
|
|
142
|
+
const config = loadConfig();
|
|
143
|
+
if (config) {
|
|
144
|
+
delete config.localSession;
|
|
145
|
+
// Also clear any pending permission requests
|
|
146
|
+
delete config.pendingPermissionRequests;
|
|
147
|
+
saveConfig(config);
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
// ============================================================================
|
|
151
|
+
// Pending Permission Request Management
|
|
152
|
+
// ============================================================================
|
|
153
|
+
const PERMISSION_REQUEST_TIMEOUT_MS = 2 * 60 * 60 * 1000; // 2 hours
|
|
154
|
+
/**
|
|
155
|
+
* Store a pending permission request
|
|
156
|
+
* Returns the request ID for polling
|
|
157
|
+
*/
|
|
158
|
+
function storePendingPermissionRequest(sessionId) {
|
|
159
|
+
const config = loadConfig() || {};
|
|
160
|
+
const requestId = `req_${Date.now()}_${Math.random().toString(36).substring(2, 8)}`;
|
|
161
|
+
const now = new Date();
|
|
162
|
+
const request = {
|
|
163
|
+
requestId,
|
|
164
|
+
sessionId,
|
|
165
|
+
createdAt: now.toISOString(),
|
|
166
|
+
expiresAt: new Date(now.getTime() + PERMISSION_REQUEST_TIMEOUT_MS).toISOString(),
|
|
167
|
+
};
|
|
168
|
+
if (!config.pendingPermissionRequests) {
|
|
169
|
+
config.pendingPermissionRequests = [];
|
|
170
|
+
}
|
|
171
|
+
// Clean up expired requests while we're at it
|
|
172
|
+
config.pendingPermissionRequests = config.pendingPermissionRequests.filter(r => new Date(r.expiresAt) > now);
|
|
173
|
+
config.pendingPermissionRequests.push(request);
|
|
174
|
+
saveConfig(config);
|
|
175
|
+
return requestId;
|
|
176
|
+
}
|
|
177
|
+
/**
|
|
178
|
+
* Get a pending permission request by ID
|
|
179
|
+
*/
|
|
180
|
+
function getPendingPermissionRequest(requestId) {
|
|
181
|
+
const config = loadConfig();
|
|
182
|
+
return config?.pendingPermissionRequests?.find(r => r.requestId === requestId);
|
|
183
|
+
}
|
|
184
|
+
/**
|
|
185
|
+
* Store response for a pending permission request
|
|
186
|
+
*/
|
|
187
|
+
function storePermissionResponse(requestId, action) {
|
|
188
|
+
const config = loadConfig();
|
|
189
|
+
if (!config?.pendingPermissionRequests) {
|
|
190
|
+
return false;
|
|
191
|
+
}
|
|
192
|
+
const request = config.pendingPermissionRequests.find(r => r.requestId === requestId);
|
|
193
|
+
if (!request) {
|
|
194
|
+
return false;
|
|
195
|
+
}
|
|
196
|
+
request.response = {
|
|
197
|
+
action,
|
|
198
|
+
respondedAt: new Date().toISOString(),
|
|
199
|
+
};
|
|
200
|
+
saveConfig(config);
|
|
201
|
+
return true;
|
|
202
|
+
}
|
|
203
|
+
/**
|
|
204
|
+
* Remove a pending permission request (after it's been handled)
|
|
205
|
+
*/
|
|
206
|
+
function removePendingPermissionRequest(requestId) {
|
|
207
|
+
const config = loadConfig();
|
|
208
|
+
if (config?.pendingPermissionRequests) {
|
|
209
|
+
config.pendingPermissionRequests = config.pendingPermissionRequests.filter(r => r.requestId !== requestId);
|
|
210
|
+
saveConfig(config);
|
|
211
|
+
}
|
|
212
|
+
}
|
|
88
213
|
//# sourceMappingURL=config.js.map
|
package/dist/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":";AAAA;;GAEG;;AAmBH,gCAYC;AAKD,gCAIC;AAKD,wCAKC;AAKD,wCAOC;AAKD,oCAGC;AAKD,0CAGC;AAKD,sCAEC;AAKD,oCAEC;
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
|
|
@@ -23,6 +23,7 @@ export declare class SessionManager {
|
|
|
23
23
|
constructor(apiKey: string, pcResourceId?: string);
|
|
24
24
|
/**
|
|
25
25
|
* Get the Claude Code router script ID from the server
|
|
26
|
+
* Uses listMarketplaceScripts with system filter to find it
|
|
26
27
|
* Caches the result for subsequent calls
|
|
27
28
|
*/
|
|
28
29
|
private getRouterScriptId;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session-manager.d.ts","sourceRoot":"","sources":["../src/session-manager.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAWvE,UAAU,YAAY;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,qBAAa,cAAc;IACzB,OAAO,CAAC,QAAQ,CAAmC;IACnD,OAAO,CAAC,GAAG,CAAW;IACtB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,WAAW,CAAa;IAChC,OAAO,CAAC,YAAY,CAAC,CAAS;IAC9B,OAAO,CAAC,cAAc,CAAC,CAAS;IAChC,OAAO,CAAC,qBAAqB,CAAC,CAAkB;gBAEpC,MAAM,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM;IAMjD
|
|
1
|
+
{"version":3,"file":"session-manager.d.ts","sourceRoot":"","sources":["../src/session-manager.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAWvE,UAAU,YAAY;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,qBAAa,cAAc;IACzB,OAAO,CAAC,QAAQ,CAAmC;IACnD,OAAO,CAAC,GAAG,CAAW;IACtB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,WAAW,CAAa;IAChC,OAAO,CAAC,YAAY,CAAC,CAAS;IAC9B,OAAO,CAAC,cAAc,CAAC,CAAS;IAChC,OAAO,CAAC,qBAAqB,CAAC,CAAkB;gBAEpC,MAAM,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM;IAMjD;;;;OAIG;YACW,iBAAiB;IAgD/B;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAIzB;;OAEG;YACW,iBAAiB;IA8D/B;;OAEG;YACW,iBAAiB;IAU/B;;OAEG;IACG,YAAY,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC;IA0G3D;;OAEG;IACH,SAAS,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IA4BjD;;;;;;;;OAQG;IACG,gBAAgB,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC;IA+CtF;;OAEG;IACG,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAyBnD;;OAEG;IACH,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS;IAIlD;;OAEG;IACH,YAAY,IAAI,eAAe,EAAE;IAWjC;;OAEG;IACG,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC;IAUtC;;OAEG;IACH,cAAc,IAAI,MAAM;CAGzB"}
|
package/dist/session-manager.js
CHANGED
|
@@ -30,6 +30,7 @@ class SessionManager {
|
|
|
30
30
|
}
|
|
31
31
|
/**
|
|
32
32
|
* Get the Claude Code router script ID from the server
|
|
33
|
+
* Uses listMarketplaceScripts with system filter to find it
|
|
33
34
|
* Caches the result for subsequent calls
|
|
34
35
|
*/
|
|
35
36
|
async getRouterScriptId() {
|
|
@@ -44,10 +45,25 @@ class SessionManager {
|
|
|
44
45
|
// Fetch the script ID from the server
|
|
45
46
|
this.routerScriptIdPromise = (async () => {
|
|
46
47
|
try {
|
|
47
|
-
const
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
48
|
+
const sdkAny = this.sdk;
|
|
49
|
+
// Search for the system script by name
|
|
50
|
+
const result = await sdkAny.scripts.listMarketplaceScripts({
|
|
51
|
+
name: 'Claude Code Router',
|
|
52
|
+
system: true,
|
|
53
|
+
limit: 1,
|
|
54
|
+
});
|
|
55
|
+
const scripts = result?.data?.scripts || result?.scripts || [];
|
|
56
|
+
if (scripts.length === 0) {
|
|
57
|
+
throw new Error('Claude Code Router system script not found. Please ensure it is deployed.');
|
|
58
|
+
}
|
|
59
|
+
// The script ID is in _id field
|
|
60
|
+
const scriptId = scripts[0]._id || scripts[0].id;
|
|
61
|
+
if (!scriptId) {
|
|
62
|
+
throw new Error('Claude Code Router script found but has no ID');
|
|
63
|
+
}
|
|
64
|
+
this.routerScriptId = scriptId;
|
|
65
|
+
console.log(`Found Claude Code router script: ${scriptId}`);
|
|
66
|
+
return scriptId;
|
|
51
67
|
}
|
|
52
68
|
finally {
|
|
53
69
|
this.routerScriptIdPromise = undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session-manager.js","sourceRoot":"","sources":["../src/session-manager.ts"],"names":[],"mappings":";AAAA;;;;;;;GAOG;;;AAEH,iDAAoD;AACpD,8CAAgD;AAEhD,qCAAsC;AAEtC,oEAAoE;AACpE,IAAI,GAAG,GAAQ,IAAI,CAAC;AACpB,IAAI,CAAC;IACH,GAAG,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;AAC5B,CAAC;AAAC,MAAM,CAAC;IACP,iDAAiD;AACnD,CAAC;AAQD,MAAa,cAAc;IASzB,YAAY,MAAc,EAAE,YAAqB;QARzC,aAAQ,GAAyB,IAAI,GAAG,EAAE,CAAC;QAG3C,gBAAW,GAAW,CAAC,CAAC;QAM9B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,IAAI,CAAC,GAAG,GAAG,IAAI,cAAQ,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;IACtC,CAAC;IAED
|
|
1
|
+
{"version":3,"file":"session-manager.js","sourceRoot":"","sources":["../src/session-manager.ts"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
CHANGED
|
@@ -1,6 +1,28 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Types for Mirra Claude Code Bridge
|
|
3
3
|
*/
|
|
4
|
+
/**
|
|
5
|
+
* Local session info for direct Claude Code usage (not spawned by bridge)
|
|
6
|
+
*/
|
|
7
|
+
export interface LocalSession {
|
|
8
|
+
sessionId: string;
|
|
9
|
+
flowId?: string;
|
|
10
|
+
groupId: string;
|
|
11
|
+
createdAt: string;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Pending permission request awaiting user response
|
|
15
|
+
*/
|
|
16
|
+
export interface PendingPermissionRequest {
|
|
17
|
+
requestId: string;
|
|
18
|
+
sessionId: string;
|
|
19
|
+
createdAt: string;
|
|
20
|
+
expiresAt: string;
|
|
21
|
+
response?: {
|
|
22
|
+
action: 'allow' | 'allow_always' | 'deny';
|
|
23
|
+
respondedAt: string;
|
|
24
|
+
};
|
|
25
|
+
}
|
|
4
26
|
export interface BridgeConfig {
|
|
5
27
|
apiKey: string;
|
|
6
28
|
userId?: string;
|
|
@@ -16,6 +38,8 @@ export interface BridgeConfig {
|
|
|
16
38
|
server?: {
|
|
17
39
|
port: number;
|
|
18
40
|
};
|
|
41
|
+
localSession?: LocalSession;
|
|
42
|
+
pendingPermissionRequests?: PendingPermissionRequest[];
|
|
19
43
|
}
|
|
20
44
|
export interface Session {
|
|
21
45
|
id: string;
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,MAAM,CAAC,EAAE;QACP,QAAQ,EAAE,OAAO,GAAG,YAAY,CAAC;QACjC,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,CAAC;IACF,MAAM,CAAC,EAAE;QACP,IAAI,EAAE,MAAM,CAAC;KACd,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "mirra-cc-bridge",
|
|
3
|
-
"version": "0.1
|
|
3
|
+
"version": "0.2.1",
|
|
4
4
|
"description": "Bridge Claude Code to Mirra Messenger on iOS or Android - control your coding sessions from text messages and voice calls",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|