@zonease/happy 0.6.41 → 0.6.43
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/{api-XeHlmApX.cjs → api-B-PlVQY6.cjs} +50 -4
- package/dist/{api-K2-jr9ar.mjs → api-BUCtd3cB.mjs} +51 -5
- package/dist/{auth-BQvEuSs5.cjs → auth-BqGkUXvq.cjs} +2 -2
- package/dist/{auth-CjLkoM3m.mjs → auth-DQH6q_q-.mjs} +4 -4
- package/dist/{auth-BbvPcnkY.cjs → auth-OL3nNcDX.cjs} +4 -4
- package/dist/{auth-DS8fzlin.mjs → auth-qM2eojWx.mjs} +2 -2
- package/dist/{browser-C05SP_Tt.cjs → browser-CY7VNU0C.cjs} +1 -1
- package/dist/{browser-C05Ak6RL.mjs → browser-D5RN_Axa.mjs} +1 -1
- package/dist/{claudeLocal-DJNRlHIC.mjs → claudeLocal-BXK_vQXS.mjs} +1 -1
- package/dist/{claudeLocal-CpDhLCcZ.cjs → claudeLocal-HAXk0deK.cjs} +1 -1
- package/dist/{config-DWWtjKQx.mjs → config-2wMjzcHl.mjs} +1 -1
- package/dist/{config-B0mns9fF.cjs → config-CaKxWGVe.cjs} +1 -1
- package/dist/{connect-DXQC1CJe.mjs → connect-BAunPyp_.mjs} +5 -5
- package/dist/{connect-BxCScVNX.cjs → connect-Dt1vY1BC.cjs} +5 -5
- package/dist/{controlClient-DgjVRN8D.mjs → controlClient-BzzTNSfl.mjs} +1 -1
- package/dist/{controlClient-DgELDZgM.cjs → controlClient-yTkpwcOq.cjs} +1 -1
- package/dist/cursorApprovalHook-B2chnVni.cjs +115 -0
- package/dist/cursorApprovalHook-BDLPzI5l.mjs +113 -0
- package/dist/cursorApprovalServer-Ba1yOUCA.mjs +263 -0
- package/dist/cursorApprovalServer-xwxVGL3u.cjs +268 -0
- package/dist/{deviceKeys-CejCdWpw.mjs → deviceKeys-CQyFFPtt.mjs} +2 -2
- package/dist/{deviceKeys-BpIAWz13.cjs → deviceKeys-CdW-HPnz.cjs} +2 -2
- package/dist/{doctor-DznasgP3.cjs → doctor-D4xWXiE7.cjs} +2 -2
- package/dist/{doctor-B-LCMVN9.mjs → doctor-DDT2TXHH.mjs} +2 -2
- package/dist/downloadImage-3A6zY5AX.cjs +492 -0
- package/dist/downloadImage-BqNp0l7y.mjs +485 -0
- package/dist/{enroll-HjUqyGnD.mjs → enroll-BlZ0giJI.mjs} +3 -3
- package/dist/{enroll-BvfpRUGJ.cjs → enroll-DeYs89Ic.cjs} +3 -3
- package/dist/{evidence-CVgTjBrq.cjs → evidence-Bn1JXtdz.cjs} +1 -1
- package/dist/{evidence-BEQd1dCh.mjs → evidence-PUnN9yPK.mjs} +1 -1
- package/dist/{formatImageMessage-DVs57t3x.mjs → formatImageMessage-BRHeLf0-.mjs} +1 -1
- package/dist/{formatImageMessage-CmJTP_hU.cjs → formatImageMessage-bVFGFDJl.cjs} +1 -1
- package/dist/{index-CDTNgfUf.cjs → index-BeKrqPYR.cjs} +25 -1
- package/dist/{index-CPKdvi7J.mjs → index-DTV7drqs.mjs} +25 -1
- package/dist/index.cjs +95 -41
- package/dist/index.mjs +95 -41
- package/dist/{install-UTz_vYvB.mjs → install-BLPNuSeM.mjs} +2 -2
- package/dist/{install-B3mMGISS.mjs → install-BOIcR_Wr.mjs} +1 -1
- package/dist/{install-Ck22tYHP.cjs → install-Jrs6YUu8.cjs} +1 -1
- package/dist/{install-2Yl_L582.cjs → install-Q-YMwwwg.cjs} +2 -2
- package/dist/lib.cjs +4 -4
- package/dist/lib.d.cts +4 -2
- package/dist/lib.d.mts +4 -2
- package/dist/lib.mjs +4 -4
- package/dist/{loadableToolOutput-BZYlaqHn.cjs → loadableToolOutput-B3qpMqXT.cjs} +2 -458
- package/dist/{loadableToolOutput-4EvraaNY.mjs → loadableToolOutput-DzReWITb.mjs} +3 -456
- package/dist/{persistence-DrfN7TzY.cjs → persistence-D7zNFI-d.cjs} +7 -4
- package/dist/{persistence-CIUFyOwz.mjs → persistence-DbLMvLvk.mjs} +7 -4
- package/dist/{push-CCOXCcM_.cjs → push-RT6Y0Hr3.cjs} +6 -6
- package/dist/{push-USXj_pv0.mjs → push-z5wQ4Ki_.mjs} +6 -6
- package/dist/{downloadImage-ia5SzlCV.mjs → registerKillSessionHandler-DmfnJ0zq.mjs} +7 -487
- package/dist/{downloadImage-B_ygLAXY.cjs → registerKillSessionHandler-MoLdSQxM.cjs} +6 -492
- package/dist/{run-Dy6KX6m-.mjs → run-BFnSUK1o.mjs} +14 -9
- package/dist/{run-D3CopmEb.cjs → run-C5StYRIB.cjs} +14 -9
- package/dist/{runClaude-aHzvx6Ha.cjs → runClaude-ChRp6f5G.cjs} +27 -26
- package/dist/{runClaude-CWux2RDq.mjs → runClaude-CjENBdrX.mjs} +22 -21
- package/dist/{runCodex-D0ZxSj3O.mjs → runCodex-BzQWlRoj.mjs} +27 -25
- package/dist/{runCodex-G-Aq531U.cjs → runCodex-DcQGyotH.cjs} +32 -30
- package/dist/runCursor-B73z6MCN.mjs +752 -0
- package/dist/runCursor-BlPAxaTy.cjs +754 -0
- package/dist/{runGemini-DZC2i6vA.mjs → runGemini-BPv4UzuF.mjs} +18 -16
- package/dist/{runGemini-DxGgDAIM.cjs → runGemini-JFqaIC3u.cjs} +23 -21
- package/dist/{runOneShot-BgT-JNMA.cjs → runOneShot-2iV11e9L.cjs} +3 -3
- package/dist/{runOneShot-cxlk7VKA.mjs → runOneShot-DTukim2A.mjs} +3 -3
- package/dist/{serve-Dr3wPrtK.cjs → serve-BDwuAIK4.cjs} +7 -7
- package/dist/{serve-CKyvJNs0.mjs → serve-BnlYj5ek.mjs} +7 -7
- package/dist/{session-dYzbOo_W.cjs → session-Cp9LEESM.cjs} +5 -5
- package/dist/{session-vf2ZjFto.mjs → session-gfeFU8CA.mjs} +5 -5
- package/dist/{sessionKeyCache-dDquDzn0.cjs → sessionKeyCache-3Pme04yL.cjs} +1 -1
- package/dist/{sessionKeyCache-D2u3JUys.mjs → sessionKeyCache-DtBS_Sb3.mjs} +1 -1
- package/dist/{sessionList-C1k2PNg_.mjs → sessionList-B1w4BUdv.mjs} +2 -2
- package/dist/{sessionList-DmmtC7uR.cjs → sessionList-BR_5UDZJ.cjs} +2 -2
- package/dist/{sessionSummary-DGLoVOxd.cjs → sessionSummary-DLweYgHO.cjs} +3 -3
- package/dist/{sessionSummary-5a1QtFVS.mjs → sessionSummary-E-a2bg8W.mjs} +3 -3
- package/dist/setupOfflineReconnection-DHwthFtd.mjs +459 -0
- package/dist/setupOfflineReconnection-Dkp00dC9.cjs +463 -0
- package/dist/{spawnHappyCLI-CarRI4GM.cjs → spawnHappyCLI-C2uY9WV-.cjs} +1 -1
- package/dist/{spawnHappyCLI-D3EkTFIn.mjs → spawnHappyCLI-Dt7fbmbk.mjs} +1 -1
- package/dist/{ssh-B0hvEYIl.mjs → ssh-C-nEZiGP.mjs} +5 -5
- package/dist/{ssh-CBgVwKsB.cjs → ssh-CsnS89Lr.cjs} +5 -5
- package/dist/{task-CRo6W-3_.mjs → task-B-8_QGGX.mjs} +6 -6
- package/dist/{task-CMunPKCV.cjs → task-lrLb4FCL.cjs} +6 -6
- package/dist/{uninstall-BALE2up0.mjs → uninstall-CirMt_WC.mjs} +2 -2
- package/dist/{uninstall-BJ3eEGM4.cjs → uninstall-DMjUlEXT.cjs} +2 -2
- package/dist/{update-BfjtLrhO.mjs → update-CfXbYshs.mjs} +3 -3
- package/dist/{update-Bb3iijy8.cjs → update-mx2p28IP.cjs} +3 -3
- package/package.json +1 -1
|
@@ -1,19 +1,21 @@
|
|
|
1
1
|
import { useStdout, useInput, Box, Text, render } from 'ink';
|
|
2
2
|
import React, { useState, useRef, useEffect, useCallback } from 'react';
|
|
3
3
|
import { randomUUID } from 'node:crypto';
|
|
4
|
-
import { c as saveDiffRecords, h as readGeminiSessionLog, d as connectionState, A as ApiClient, G as GeminiSessionWriter, j as buildResumeContextFromSessionLog } from './api-
|
|
5
|
-
import { l as logger, p as packageJson, i as isDebug, a as readSettings } from './persistence-
|
|
6
|
-
import {
|
|
7
|
-
import { i as initialMachineMetadata, s as stopCaffeinate } from './run-
|
|
8
|
-
import { M as MessageQueue2, h as hashObject,
|
|
9
|
-
import {
|
|
4
|
+
import { c as saveDiffRecords, h as readGeminiSessionLog, d as connectionState, A as ApiClient, G as GeminiSessionWriter, j as buildResumeContextFromSessionLog } from './api-BUCtd3cB.mjs';
|
|
5
|
+
import { l as logger, p as packageJson, i as isDebug, a as readSettings } from './persistence-DbLMvLvk.mjs';
|
|
6
|
+
import { B as BasePermissionHandler, c as createSessionMetadata, s as setupOfflineReconnection } from './setupOfflineReconnection-DHwthFtd.mjs';
|
|
7
|
+
import { i as initialMachineMetadata, s as stopCaffeinate } from './run-BFnSUK1o.mjs';
|
|
8
|
+
import { M as MessageQueue2, h as hashObject, a as MessageBuffer, p as parseClear } from './downloadImage-BqNp0l7y.mjs';
|
|
9
|
+
import { r as registerKillSessionHandler, c as createMcpContext } from './registerKillSessionHandler-DmfnJ0zq.mjs';
|
|
10
|
+
import { notifyDaemonSessionStarted } from './controlClient-BzzTNSfl.mjs';
|
|
10
11
|
import { spawn } from 'node:child_process';
|
|
11
12
|
import { ndJsonStream, ClientSideConnection } from '@agentclientprotocol/sdk';
|
|
12
13
|
import { d as delay } from './time-DgsBLJA_.mjs';
|
|
13
|
-
import { G as GEMINI_MODEL_MODES } from './index-
|
|
14
|
+
import { G as GEMINI_MODEL_MODES } from './index-DTV7drqs.mjs';
|
|
15
|
+
import { a as handleAgentMessageChunk, b as handleToolCallUpdate, c as handleAgentThoughtChunk, d as handleToolCall, e as handleLegacyMessageChunk, f as handlePlanUpdate, g as handleThinkingUpdate, B as BaseReasoningProcessor, s as summarizeBashToolOutput, h as handleConfigMetadataEvent } from './loadableToolOutput-DzReWITb.mjs';
|
|
14
16
|
import { a as GEMINI_API_KEY_ENV, b as GOOGLE_API_KEY_ENV, G as GEMINI_MODEL_ENV, g as getFirstTurnInstruction } from './constants-pmXZGibX.mjs';
|
|
15
|
-
import { readGeminiLocalConfig, determineGeminiModel, getGeminiModelSource, getInitialGeminiModel, saveGeminiModelToConfig } from './config-
|
|
16
|
-
import { f as formatMessageForGemini } from './formatImageMessage-
|
|
17
|
+
import { readGeminiLocalConfig, determineGeminiModel, getGeminiModelSource, getInitialGeminiModel, saveGeminiModelToConfig } from './config-2wMjzcHl.mjs';
|
|
18
|
+
import { f as formatMessageForGemini } from './formatImageMessage-BRHeLf0-.mjs';
|
|
17
19
|
import 'axios';
|
|
18
20
|
import 'node:events';
|
|
19
21
|
import 'socket.io-client';
|
|
@@ -36,22 +38,22 @@ import 'tweetnacl';
|
|
|
36
38
|
import '@stablelib/base64';
|
|
37
39
|
import 'node:readline';
|
|
38
40
|
import 'expo-server-sdk';
|
|
39
|
-
import './sessionKeyCache-
|
|
41
|
+
import './sessionKeyCache-DtBS_Sb3.mjs';
|
|
40
42
|
import 'chalk';
|
|
41
43
|
import 'fs';
|
|
42
44
|
import 'os';
|
|
43
45
|
import 'tmp';
|
|
44
|
-
import './auth-
|
|
46
|
+
import './auth-qM2eojWx.mjs';
|
|
45
47
|
import 'qrcode-terminal';
|
|
46
|
-
import './browser-
|
|
48
|
+
import './browser-D5RN_Axa.mjs';
|
|
47
49
|
import 'open';
|
|
48
|
-
import './doctor-
|
|
50
|
+
import './doctor-DDT2TXHH.mjs';
|
|
49
51
|
import './doctor-ON7pN5G5.mjs';
|
|
50
52
|
import 'ps-list';
|
|
51
53
|
import 'cross-spawn';
|
|
52
|
-
import './spawnHappyCLI-
|
|
53
|
-
import './deviceKeys-
|
|
54
|
-
import './install-
|
|
54
|
+
import './spawnHappyCLI-Dt7fbmbk.mjs';
|
|
55
|
+
import './deviceKeys-CQyFFPtt.mjs';
|
|
56
|
+
import './install-BOIcR_Wr.mjs';
|
|
55
57
|
import './trimIdent-BAjmv_TG.mjs';
|
|
56
58
|
import 'fastify';
|
|
57
59
|
import 'fastify-type-provider-zod';
|
|
@@ -3,19 +3,21 @@
|
|
|
3
3
|
var ink = require('ink');
|
|
4
4
|
var React = require('react');
|
|
5
5
|
var node_crypto = require('node:crypto');
|
|
6
|
-
var api = require('./api-
|
|
7
|
-
var logger = require('./persistence-
|
|
8
|
-
var
|
|
9
|
-
var run = require('./run-
|
|
10
|
-
var downloadImage = require('./downloadImage-
|
|
11
|
-
var
|
|
6
|
+
var api = require('./api-B-PlVQY6.cjs');
|
|
7
|
+
var logger = require('./persistence-D7zNFI-d.cjs');
|
|
8
|
+
var setupOfflineReconnection = require('./setupOfflineReconnection-Dkp00dC9.cjs');
|
|
9
|
+
var run = require('./run-C5StYRIB.cjs');
|
|
10
|
+
var downloadImage = require('./downloadImage-3A6zY5AX.cjs');
|
|
11
|
+
var registerKillSessionHandler = require('./registerKillSessionHandler-MoLdSQxM.cjs');
|
|
12
|
+
var controlClient = require('./controlClient-yTkpwcOq.cjs');
|
|
12
13
|
var node_child_process = require('node:child_process');
|
|
13
14
|
var sdk = require('@agentclientprotocol/sdk');
|
|
14
15
|
var time = require('./time-Bj2HRkKH.cjs');
|
|
15
|
-
var index = require('./index-
|
|
16
|
+
var index = require('./index-BeKrqPYR.cjs');
|
|
17
|
+
var loadableToolOutput = require('./loadableToolOutput-B3qpMqXT.cjs');
|
|
16
18
|
var constants = require('./constants-E_UWYTo3.cjs');
|
|
17
|
-
var config = require('./config-
|
|
18
|
-
var formatImageMessage = require('./formatImageMessage-
|
|
19
|
+
var config = require('./config-CaKxWGVe.cjs');
|
|
20
|
+
var formatImageMessage = require('./formatImageMessage-bVFGFDJl.cjs');
|
|
19
21
|
require('axios');
|
|
20
22
|
require('node:events');
|
|
21
23
|
require('socket.io-client');
|
|
@@ -38,22 +40,22 @@ require('tweetnacl');
|
|
|
38
40
|
require('@stablelib/base64');
|
|
39
41
|
require('node:readline');
|
|
40
42
|
require('expo-server-sdk');
|
|
41
|
-
require('./sessionKeyCache-
|
|
43
|
+
require('./sessionKeyCache-3Pme04yL.cjs');
|
|
42
44
|
require('chalk');
|
|
43
45
|
require('fs');
|
|
44
46
|
require('os');
|
|
45
47
|
require('tmp');
|
|
46
|
-
require('./auth-
|
|
48
|
+
require('./auth-BqGkUXvq.cjs');
|
|
47
49
|
require('qrcode-terminal');
|
|
48
|
-
require('./browser-
|
|
50
|
+
require('./browser-CY7VNU0C.cjs');
|
|
49
51
|
require('open');
|
|
50
|
-
require('./doctor-
|
|
52
|
+
require('./doctor-D4xWXiE7.cjs');
|
|
51
53
|
require('./doctor-C08m5Z9f.cjs');
|
|
52
54
|
require('ps-list');
|
|
53
55
|
require('cross-spawn');
|
|
54
|
-
require('./spawnHappyCLI-
|
|
55
|
-
require('./deviceKeys-
|
|
56
|
-
require('./install-
|
|
56
|
+
require('./spawnHappyCLI-C2uY9WV-.cjs');
|
|
57
|
+
require('./deviceKeys-CdW-HPnz.cjs');
|
|
58
|
+
require('./install-Jrs6YUu8.cjs');
|
|
57
59
|
require('./trimIdent-4gvk9Wk6.cjs');
|
|
58
60
|
require('fastify');
|
|
59
61
|
require('fastify-type-provider-zod');
|
|
@@ -1528,7 +1530,7 @@ const GeminiDisplay = ({ messageBuffer, logPath, currentModel, onExit }) => {
|
|
|
1528
1530
|
));
|
|
1529
1531
|
};
|
|
1530
1532
|
|
|
1531
|
-
class GeminiPermissionHandler extends
|
|
1533
|
+
class GeminiPermissionHandler extends setupOfflineReconnection.BasePermissionHandler {
|
|
1532
1534
|
currentPermissionMode = "default";
|
|
1533
1535
|
constructor(session, pushClient) {
|
|
1534
1536
|
super(session, pushClient);
|
|
@@ -2130,7 +2132,7 @@ async function runGemini(opts) {
|
|
|
2130
2132
|
} catch (error) {
|
|
2131
2133
|
logger.logger.debug("[Gemini] Failed to fetch cloud token:", error);
|
|
2132
2134
|
}
|
|
2133
|
-
const { state, metadata } =
|
|
2135
|
+
const { state, metadata } = setupOfflineReconnection.createSessionMetadata({
|
|
2134
2136
|
flavor: "gemini",
|
|
2135
2137
|
machineId,
|
|
2136
2138
|
startedBy: opts.startedBy
|
|
@@ -2152,7 +2154,7 @@ async function runGemini(opts) {
|
|
|
2152
2154
|
pendingSessionSwap = null;
|
|
2153
2155
|
}
|
|
2154
2156
|
};
|
|
2155
|
-
const { session: initialSession, reconnectionHandle } =
|
|
2157
|
+
const { session: initialSession, reconnectionHandle } = setupOfflineReconnection.setupOfflineReconnection({
|
|
2156
2158
|
api: api$1,
|
|
2157
2159
|
sessionTag,
|
|
2158
2160
|
metadata,
|
|
@@ -2395,7 +2397,7 @@ async function runGemini(opts) {
|
|
|
2395
2397
|
}
|
|
2396
2398
|
};
|
|
2397
2399
|
session.rpcHandlerManager.registerHandler("abort", handleAbort);
|
|
2398
|
-
|
|
2400
|
+
registerKillSessionHandler.registerKillSessionHandler(session.rpcHandlerManager, handleKillSession);
|
|
2399
2401
|
const messageBuffer = new downloadImage.MessageBuffer();
|
|
2400
2402
|
const hasTTY = process.stdout.isTTY && process.stdin.isTTY;
|
|
2401
2403
|
let inkInstance = null;
|
|
@@ -2451,7 +2453,7 @@ async function runGemini(opts) {
|
|
|
2451
2453
|
}
|
|
2452
2454
|
process.stdin.setEncoding("utf8");
|
|
2453
2455
|
}
|
|
2454
|
-
const mcp = await
|
|
2456
|
+
const mcp = await registerKillSessionHandler.createMcpContext(session);
|
|
2455
2457
|
const mcpServers = mcp.configForHttp();
|
|
2456
2458
|
permissionHandler = new GeminiPermissionHandler(session, api$1.push());
|
|
2457
2459
|
const reasoningProcessor = new GeminiReasoningProcessor((message) => {
|
|
@@ -2,9 +2,9 @@
|
|
|
2
2
|
|
|
3
3
|
var node_child_process = require('node:child_process');
|
|
4
4
|
var fs = require('node:fs');
|
|
5
|
-
var claudeLocal = require('./claudeLocal-
|
|
6
|
-
var logger = require('./persistence-
|
|
7
|
-
var index = require('./index-
|
|
5
|
+
var claudeLocal = require('./claudeLocal-HAXk0deK.cjs');
|
|
6
|
+
var logger = require('./persistence-D7zNFI-d.cjs');
|
|
7
|
+
var index = require('./index-BeKrqPYR.cjs');
|
|
8
8
|
var common = require('./common-CZvSRU4p.cjs');
|
|
9
9
|
require('node:path');
|
|
10
10
|
require('node:readline');
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { spawn } from 'node:child_process';
|
|
2
2
|
import { existsSync } from 'node:fs';
|
|
3
|
-
import { c as claudeCliPath } from './claudeLocal-
|
|
4
|
-
import { l as logger } from './persistence-
|
|
5
|
-
import { i as isModelModeForAgent, M as MODEL_MODE_DEFAULT, p as parseCodexModelMode, a as parseClaudeModelMode } from './index-
|
|
3
|
+
import { c as claudeCliPath } from './claudeLocal-BXK_vQXS.mjs';
|
|
4
|
+
import { l as logger } from './persistence-DbLMvLvk.mjs';
|
|
5
|
+
import { i as isModelModeForAgent, M as MODEL_MODE_DEFAULT, p as parseCodexModelMode, a as parseClaudeModelMode } from './index-DTV7drqs.mjs';
|
|
6
6
|
import { i as isOrchestratorProvider, O as ORCHESTRATOR_ENV_KEYS, d as decodePromptFromBase64 } from './common-BdNgghUJ.mjs';
|
|
7
7
|
import 'node:path';
|
|
8
8
|
import 'node:readline';
|
|
@@ -2,11 +2,11 @@
|
|
|
2
2
|
|
|
3
3
|
var mcp_js = require('@modelcontextprotocol/sdk/server/mcp.js');
|
|
4
4
|
var stdio_js = require('@modelcontextprotocol/sdk/server/stdio.js');
|
|
5
|
-
var logger = require('./persistence-
|
|
6
|
-
var sessionList = require('./sessionList-
|
|
5
|
+
var logger = require('./persistence-D7zNFI-d.cjs');
|
|
6
|
+
var sessionList = require('./sessionList-BR_5UDZJ.cjs');
|
|
7
7
|
var axios = require('axios');
|
|
8
8
|
var z = require('zod');
|
|
9
|
-
var sessionSummary = require('./sessionSummary-
|
|
9
|
+
var sessionSummary = require('./sessionSummary-DLweYgHO.cjs');
|
|
10
10
|
var node_crypto = require('node:crypto');
|
|
11
11
|
require('node:fs/promises');
|
|
12
12
|
require('node:fs');
|
|
@@ -15,14 +15,14 @@ require('node:path');
|
|
|
15
15
|
require('tweetnacl');
|
|
16
16
|
require('chalk');
|
|
17
17
|
require('fs');
|
|
18
|
-
require('./auth-
|
|
18
|
+
require('./auth-BqGkUXvq.cjs');
|
|
19
19
|
require('qrcode-terminal');
|
|
20
20
|
require('./time-Bj2HRkKH.cjs');
|
|
21
|
-
require('./browser-
|
|
21
|
+
require('./browser-CY7VNU0C.cjs');
|
|
22
22
|
require('open');
|
|
23
23
|
require('react');
|
|
24
24
|
require('ink');
|
|
25
|
-
require('./sessionKeyCache-
|
|
25
|
+
require('./sessionKeyCache-3Pme04yL.cjs');
|
|
26
26
|
|
|
27
27
|
const PREVIEW_LIMIT = 200;
|
|
28
28
|
const TAIL_MESSAGES = 5;
|
|
@@ -223,7 +223,7 @@ async function runSessionCancel(credentials, input) {
|
|
|
223
223
|
const sessionSpawnInputSchema = {
|
|
224
224
|
machineId: z.z.string().min(1).describe("Target machine ID (from happy_session_list .machineId or the daemon registration)."),
|
|
225
225
|
directory: z.z.string().min(1).describe("Absolute path on the target machine where the agent should run."),
|
|
226
|
-
agent: z.z.enum(["claude", "gemini", "codex"]).describe("Which agent flavor to spawn."),
|
|
226
|
+
agent: z.z.enum(["claude", "gemini", "codex", "cursor"]).describe("Which agent flavor to spawn."),
|
|
227
227
|
sessionTitle: z.z.string().optional().describe("Optional human-readable title shown in the happy-app session list."),
|
|
228
228
|
approvedNewDirectoryCreation: z.z.boolean().optional().default(false).describe(
|
|
229
229
|
"When false (default) and `directory` does not exist on the machine, the daemon refuses and this tool throws. Set to true to approve directory creation."
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
|
|
2
2
|
import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';
|
|
3
|
-
import { c as configuration, e as encodeBase64, f as encrypt, h as decodeBase64, g as decrypt, r as readCredentials } from './persistence-
|
|
4
|
-
import { s as sessionListInputSchema, r as runSessionList } from './sessionList-
|
|
3
|
+
import { c as configuration, e as encodeBase64, f as encrypt, h as decodeBase64, g as decrypt, r as readCredentials } from './persistence-DbLMvLvk.mjs';
|
|
4
|
+
import { s as sessionListInputSchema, r as runSessionList } from './sessionList-B1w4BUdv.mjs';
|
|
5
5
|
import axios from 'axios';
|
|
6
6
|
import { z } from 'zod';
|
|
7
|
-
import { f as fetchSessionById, a as decryptMessage, s as sessionSummaryInputSchema, r as runSessionSummary } from './sessionSummary-
|
|
7
|
+
import { f as fetchSessionById, a as decryptMessage, s as sessionSummaryInputSchema, r as runSessionSummary } from './sessionSummary-E-a2bg8W.mjs';
|
|
8
8
|
import { randomUUID } from 'node:crypto';
|
|
9
9
|
import 'node:fs/promises';
|
|
10
10
|
import 'node:fs';
|
|
@@ -13,14 +13,14 @@ import 'node:path';
|
|
|
13
13
|
import 'tweetnacl';
|
|
14
14
|
import 'chalk';
|
|
15
15
|
import 'fs';
|
|
16
|
-
import './auth-
|
|
16
|
+
import './auth-qM2eojWx.mjs';
|
|
17
17
|
import 'qrcode-terminal';
|
|
18
18
|
import './time-DgsBLJA_.mjs';
|
|
19
|
-
import './browser-
|
|
19
|
+
import './browser-D5RN_Axa.mjs';
|
|
20
20
|
import 'open';
|
|
21
21
|
import 'react';
|
|
22
22
|
import 'ink';
|
|
23
|
-
import './sessionKeyCache-
|
|
23
|
+
import './sessionKeyCache-DtBS_Sb3.mjs';
|
|
24
24
|
|
|
25
25
|
const PREVIEW_LIMIT = 200;
|
|
26
26
|
const TAIL_MESSAGES = 5;
|
|
@@ -221,7 +221,7 @@ async function runSessionCancel(credentials, input) {
|
|
|
221
221
|
const sessionSpawnInputSchema = {
|
|
222
222
|
machineId: z.string().min(1).describe("Target machine ID (from happy_session_list .machineId or the daemon registration)."),
|
|
223
223
|
directory: z.string().min(1).describe("Absolute path on the target machine where the agent should run."),
|
|
224
|
-
agent: z.enum(["claude", "gemini", "codex"]).describe("Which agent flavor to spawn."),
|
|
224
|
+
agent: z.enum(["claude", "gemini", "codex", "cursor"]).describe("Which agent flavor to spawn."),
|
|
225
225
|
sessionTitle: z.string().optional().describe("Optional human-readable title shown in the happy-app session list."),
|
|
226
226
|
approvedNewDirectoryCreation: z.boolean().optional().default(false).describe(
|
|
227
227
|
"When false (default) and `directory` does not exist on the machine, the daemon refuses and this tool throws. Set to true to approve directory creation."
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var chalk = require('chalk');
|
|
4
|
-
var logger = require('./persistence-
|
|
5
|
-
var sessionSummary = require('./sessionSummary-
|
|
4
|
+
var logger = require('./persistence-D7zNFI-d.cjs');
|
|
5
|
+
var sessionSummary = require('./sessionSummary-DLweYgHO.cjs');
|
|
6
6
|
require('node:fs/promises');
|
|
7
7
|
require('node:fs');
|
|
8
8
|
require('node:os');
|
|
@@ -12,14 +12,14 @@ require('node:crypto');
|
|
|
12
12
|
require('tweetnacl');
|
|
13
13
|
require('fs');
|
|
14
14
|
require('axios');
|
|
15
|
-
require('./auth-
|
|
15
|
+
require('./auth-BqGkUXvq.cjs');
|
|
16
16
|
require('qrcode-terminal');
|
|
17
17
|
require('./time-Bj2HRkKH.cjs');
|
|
18
|
-
require('./browser-
|
|
18
|
+
require('./browser-CY7VNU0C.cjs');
|
|
19
19
|
require('open');
|
|
20
20
|
require('react');
|
|
21
21
|
require('ink');
|
|
22
|
-
require('./sessionKeyCache-
|
|
22
|
+
require('./sessionKeyCache-3Pme04yL.cjs');
|
|
23
23
|
|
|
24
24
|
function printSessionHelp() {
|
|
25
25
|
console.log(`
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import chalk from 'chalk';
|
|
2
|
-
import { r as readCredentials } from './persistence-
|
|
3
|
-
import { r as runSessionSummary } from './sessionSummary-
|
|
2
|
+
import { r as readCredentials } from './persistence-DbLMvLvk.mjs';
|
|
3
|
+
import { r as runSessionSummary } from './sessionSummary-E-a2bg8W.mjs';
|
|
4
4
|
import 'node:fs/promises';
|
|
5
5
|
import 'node:fs';
|
|
6
6
|
import 'node:os';
|
|
@@ -10,14 +10,14 @@ import 'node:crypto';
|
|
|
10
10
|
import 'tweetnacl';
|
|
11
11
|
import 'fs';
|
|
12
12
|
import 'axios';
|
|
13
|
-
import './auth-
|
|
13
|
+
import './auth-qM2eojWx.mjs';
|
|
14
14
|
import 'qrcode-terminal';
|
|
15
15
|
import './time-DgsBLJA_.mjs';
|
|
16
|
-
import './browser-
|
|
16
|
+
import './browser-D5RN_Axa.mjs';
|
|
17
17
|
import 'open';
|
|
18
18
|
import 'react';
|
|
19
19
|
import 'ink';
|
|
20
|
-
import './sessionKeyCache-
|
|
20
|
+
import './sessionKeyCache-DtBS_Sb3.mjs';
|
|
21
21
|
|
|
22
22
|
function printSessionHelp() {
|
|
23
23
|
console.log(`
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
var fs = require('node:fs');
|
|
4
4
|
var promises = require('node:fs/promises');
|
|
5
5
|
var path = require('node:path');
|
|
6
|
-
var logger = require('./persistence-
|
|
6
|
+
var logger = require('./persistence-D7zNFI-d.cjs');
|
|
7
7
|
|
|
8
8
|
function keyPath(sessionId) {
|
|
9
9
|
return path.join(logger.configuration.sessionKeysDir, `${sessionId}.key`);
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { existsSync, mkdirSync, readFileSync } from 'node:fs';
|
|
2
2
|
import { writeFile } from 'node:fs/promises';
|
|
3
3
|
import { join } from 'node:path';
|
|
4
|
-
import { c as configuration, j as encryptWithDataKey, e as encodeBase64, k as decryptWithDataKey, h as decodeBase64 } from './persistence-
|
|
4
|
+
import { c as configuration, j as encryptWithDataKey, e as encodeBase64, k as decryptWithDataKey, h as decodeBase64 } from './persistence-DbLMvLvk.mjs';
|
|
5
5
|
|
|
6
6
|
function keyPath(sessionId) {
|
|
7
7
|
return join(configuration.sessionKeysDir, `${sessionId}.key`);
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import axios from 'axios';
|
|
2
2
|
import { z } from 'zod';
|
|
3
|
-
import { c as configuration } from './persistence-
|
|
4
|
-
import { d as decryptSessionRow } from './sessionSummary-
|
|
3
|
+
import { c as configuration } from './persistence-DbLMvLvk.mjs';
|
|
4
|
+
import { d as decryptSessionRow } from './sessionSummary-E-a2bg8W.mjs';
|
|
5
5
|
|
|
6
6
|
const sessionListInputSchema = {
|
|
7
7
|
status: z.enum(["active", "archived", "all"]).optional().describe("Filter by session state. Default: all."),
|
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
|
|
3
3
|
var axios = require('axios');
|
|
4
4
|
var z = require('zod');
|
|
5
|
-
var logger = require('./persistence-
|
|
6
|
-
var sessionSummary = require('./sessionSummary-
|
|
5
|
+
var logger = require('./persistence-D7zNFI-d.cjs');
|
|
6
|
+
var sessionSummary = require('./sessionSummary-DLweYgHO.cjs');
|
|
7
7
|
|
|
8
8
|
const sessionListInputSchema = {
|
|
9
9
|
status: z.z.enum(["active", "archived", "all"]).optional().describe("Filter by session state. Default: all."),
|
|
@@ -2,9 +2,9 @@
|
|
|
2
2
|
|
|
3
3
|
var axios = require('axios');
|
|
4
4
|
var z = require('zod');
|
|
5
|
-
var logger = require('./persistence-
|
|
6
|
-
var auth = require('./auth-
|
|
7
|
-
var sessionKeyCache = require('./sessionKeyCache-
|
|
5
|
+
var logger = require('./persistence-D7zNFI-d.cjs');
|
|
6
|
+
var auth = require('./auth-BqGkUXvq.cjs');
|
|
7
|
+
var sessionKeyCache = require('./sessionKeyCache-3Pme04yL.cjs');
|
|
8
8
|
|
|
9
9
|
function resolveSessionKey(credentials, dataEncryptionKey, sessionId) {
|
|
10
10
|
if (credentials.encryption.type === "legacy") {
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import axios from 'axios';
|
|
2
2
|
import { z } from 'zod';
|
|
3
|
-
import { q as decryptLegacy, h as decodeBase64, k as decryptWithDataKey, c as configuration } from './persistence-
|
|
4
|
-
import { decryptWithEphemeralKey } from './auth-
|
|
5
|
-
import { r as readCachedSessionKey } from './sessionKeyCache-
|
|
3
|
+
import { q as decryptLegacy, h as decodeBase64, k as decryptWithDataKey, c as configuration } from './persistence-DbLMvLvk.mjs';
|
|
4
|
+
import { decryptWithEphemeralKey } from './auth-qM2eojWx.mjs';
|
|
5
|
+
import { r as readCachedSessionKey } from './sessionKeyCache-DtBS_Sb3.mjs';
|
|
6
6
|
|
|
7
7
|
function resolveSessionKey(credentials, dataEncryptionKey, sessionId) {
|
|
8
8
|
if (credentials.encryption.type === "legacy") {
|