very-happy-cli 0.2.139 → 0.2.140
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/{AcpBackend-ioCPQLt4.cjs → AcpBackend-C0Lq4uoA.cjs} +2 -2
- package/dist/{AcpBackend-BwTEBAyP.mjs → AcpBackend-DsSYq8T-.mjs} +2 -2
- package/dist/{AcpSessionManager-Bh3KETfz.mjs → AcpSessionManager-BAErE9s0.mjs} +1 -1
- package/dist/{AcpSessionManager-o9T6W69-.cjs → AcpSessionManager-DIqByTH7.cjs} +1 -1
- package/dist/{agentGuidance-Dxt2uz3R.cjs → agentGuidance-Dl3apItH.cjs} +1 -1
- package/dist/{agentGuidance-DRnXdFAY.mjs → agentGuidance-xk3v4_7E.mjs} +1 -1
- package/dist/codex/happyMcpStdioBridge.cjs +2 -2
- package/dist/codex/happyMcpStdioBridge.mjs +2 -2
- package/dist/{config-o9NFsj8x.mjs → config-BVoHul9V.mjs} +4 -4
- package/dist/{config-nyMHCx-i.cjs → config-D0-jnCOC.cjs} +4 -4
- package/dist/{index-BkmfJyCf.mjs → index-BNydKYvS.mjs} +7 -7
- package/dist/{index-CTemcNko.mjs → index-BPnAbcz_.mjs} +4 -4
- package/dist/{index-gkFhwPXq.cjs → index-BuQn9kUK.cjs} +4 -4
- package/dist/{index-BZr5l8TH.mjs → index-D0IP7gXG.mjs} +42 -21
- package/dist/{index-klhxcpC8.cjs → index-DJvzGXVN.cjs} +6 -6
- package/dist/{index-C3NtU4Ch.cjs → index-__h-pCTK.cjs} +46 -25
- package/dist/index.cjs +4 -4
- package/dist/index.mjs +4 -4
- package/dist/{installTerminalHooks-8CHTgUC-.mjs → installTerminalHooks-D2ice1a-.mjs} +4 -4
- package/dist/{installTerminalHooks-DZUBgnFh.cjs → installTerminalHooks-D3jfvbyY.cjs} +4 -4
- package/dist/lib.cjs +2 -2
- package/dist/lib.mjs +2 -2
- package/dist/{limits-C_RGzva6.cjs → limits-Dbip6eVO.cjs} +7 -7
- package/dist/{limits-DefXc1TL.mjs → limits-nhD0Wran.mjs} +7 -7
- package/dist/{mcp-czNIfD59.cjs → mcp-DeapmTWN.cjs} +4 -4
- package/dist/{mcp-8DcunR0J.mjs → mcp-V26C05fN.mjs} +4 -4
- package/dist/{runGemini-Dy3y-lD9.cjs → runGemini-D34eCFpz.cjs} +6 -6
- package/dist/{runGemini-CDUObQTD.mjs → runGemini-sa5kAgPe.mjs} +6 -6
- package/dist/{runOpenClaw-CJusckVM.cjs → runOpenClaw-B8F8D--R.cjs} +5 -5
- package/dist/{runOpenClaw-B6KMCsVB.mjs → runOpenClaw-Bdsq8KBa.mjs} +5 -5
- package/dist/{send-B4Qo-87h.cjs → send-DP_S3wn0.cjs} +4 -4
- package/dist/{send-BT32Jiel.mjs → send-KICC_ACz.mjs} +4 -4
- package/dist/{sessions-Dh0Lg-5z.mjs → sessions-C6EvnC4B.mjs} +4 -4
- package/dist/{sessions-CN2y0xBl.cjs → sessions-CGBBgVZn.cjs} +4 -4
- package/dist/{spawn-jWj3xFhX.cjs → spawn-BhUK0Vt2.cjs} +4 -4
- package/dist/{spawn-DFIyobCt.mjs → spawn-C1OqXJNb.mjs} +4 -4
- package/dist/{teams-BhFspeAY.cjs → teams-C29nEHFD.cjs} +4 -4
- package/dist/{teams-CZ9ICWeB.mjs → teams-Dm5HGpNz.mjs} +4 -4
- package/dist/{todo-jL3ttna3.mjs → todo-C-vovA0N.mjs} +3 -3
- package/dist/{todo-B0kvqUTQ.cjs → todo-CeJX0z_2.cjs} +3 -3
- package/dist/{types-CxGm_YJ-.cjs → types-DCVS050m.cjs} +2 -2
- package/dist/{types-CrKeJuyF.mjs → types-thyvQB2a.mjs} +1 -1
- package/package.json +7 -7
|
@@ -3,8 +3,8 @@
|
|
|
3
3
|
var node_child_process = require('node:child_process');
|
|
4
4
|
var sdk = require('@agentclientprotocol/sdk');
|
|
5
5
|
var node_crypto = require('node:crypto');
|
|
6
|
-
var persistence = require('./limits-
|
|
7
|
-
var api = require('./types-
|
|
6
|
+
var persistence = require('./limits-Dbip6eVO.cjs');
|
|
7
|
+
var api = require('./types-DCVS050m.cjs');
|
|
8
8
|
|
|
9
9
|
function acpImageBlocks(attachments, supportsImages) {
|
|
10
10
|
return attachments.filter((file) => ["image/jpeg", "image/png", "image/gif", "image/webp"].includes(file.mimeType)).map((file) => {
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { spawn } from 'node:child_process';
|
|
2
2
|
import { ndJsonStream, ClientSideConnection } from '@agentclientprotocol/sdk';
|
|
3
3
|
import { randomUUID } from 'node:crypto';
|
|
4
|
-
import { l as logger, p as packageJson } from './limits-
|
|
5
|
-
import { j as contentLogMetadata, h as errorLogMetadata, m as delay } from './types-
|
|
4
|
+
import { l as logger, p as packageJson } from './limits-nhD0Wran.mjs';
|
|
5
|
+
import { j as contentLogMetadata, h as errorLogMetadata, m as delay } from './types-thyvQB2a.mjs';
|
|
6
6
|
|
|
7
7
|
function acpImageBlocks(attachments, supportsImages) {
|
|
8
8
|
return attachments.filter((file) => ["image/jpeg", "image/png", "image/gif", "image/webp"].includes(file.mimeType)).map((file) => {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { createId } from '@paralleldrive/cuid2';
|
|
2
|
-
import { b as streamKeyOf, d as createEnvelope } from './types-
|
|
2
|
+
import { b as streamKeyOf, d as createEnvelope } from './types-thyvQB2a.mjs';
|
|
3
3
|
|
|
4
4
|
function turnOptions(turnId, time) {
|
|
5
5
|
return turnId ? { turn: turnId, time } : { time };
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
var z = require('zod');
|
|
4
4
|
var node_crypto = require('node:crypto');
|
|
5
|
-
var persistence = require('./limits-
|
|
5
|
+
var persistence = require('./limits-Dbip6eVO.cjs');
|
|
6
6
|
var promises = require('node:fs/promises');
|
|
7
7
|
var node_fs = require('node:fs');
|
|
8
8
|
var path = require('node:path');
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
2
|
import { randomUUID } from 'node:crypto';
|
|
3
|
-
import { n as normalizeHttpEndpoint, c as configuration, g as readSettings, r as readPersistedSessions, d as readCredentialsForConfiguredRelay } from './limits-
|
|
3
|
+
import { n as normalizeHttpEndpoint, c as configuration, g as readSettings, r as readPersistedSessions, d as readCredentialsForConfiguredRelay } from './limits-nhD0Wran.mjs';
|
|
4
4
|
import { open, mkdir, rename, unlink } from 'node:fs/promises';
|
|
5
5
|
import { constants } from 'node:fs';
|
|
6
6
|
import { isAbsolute, join, dirname } from 'node:path';
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var agentGuidance = require('../agentGuidance-
|
|
3
|
+
var agentGuidance = require('../agentGuidance-Dl3apItH.cjs');
|
|
4
4
|
var mcp_js = require('@modelcontextprotocol/sdk/server/mcp.js');
|
|
5
5
|
var stdio_js = require('@modelcontextprotocol/sdk/server/stdio.js');
|
|
6
6
|
var index_js = require('@modelcontextprotocol/sdk/client/index.js');
|
|
7
7
|
var streamableHttp_js = require('@modelcontextprotocol/sdk/client/streamableHttp.js');
|
|
8
8
|
var z = require('zod');
|
|
9
|
-
var persistence = require('../limits-
|
|
9
|
+
var persistence = require('../limits-Dbip6eVO.cjs');
|
|
10
10
|
require('node:crypto');
|
|
11
11
|
require('node:fs/promises');
|
|
12
12
|
require('node:fs');
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { P as PREVIEW_TOOL_NAME, a as PREVIEW_TOOL_TITLE, b as PREVIEW_TOOL_DESCRIPTION, r as registerTeamsTools } from '../agentGuidance-
|
|
1
|
+
import { P as PREVIEW_TOOL_NAME, a as PREVIEW_TOOL_TITLE, b as PREVIEW_TOOL_DESCRIPTION, r as registerTeamsTools } from '../agentGuidance-xk3v4_7E.mjs';
|
|
2
2
|
import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
|
|
3
3
|
import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';
|
|
4
4
|
import { Client } from '@modelcontextprotocol/sdk/client/index.js';
|
|
5
5
|
import { StreamableHTTPClientTransport } from '@modelcontextprotocol/sdk/client/streamableHttp.js';
|
|
6
6
|
import { z } from 'zod';
|
|
7
|
-
import { C as CLIPBOARD_TOOL_NAME, a as CLIPBOARD_TOOL_TITLE, b as CLIPBOARD_TOOL_DESCRIPTION } from '../limits-
|
|
7
|
+
import { C as CLIPBOARD_TOOL_NAME, a as CLIPBOARD_TOOL_TITLE, b as CLIPBOARD_TOOL_DESCRIPTION } from '../limits-nhD0Wran.mjs';
|
|
8
8
|
import 'node:crypto';
|
|
9
9
|
import 'node:fs/promises';
|
|
10
10
|
import 'node:fs';
|
|
@@ -2,8 +2,8 @@ import { existsSync, readFileSync, mkdirSync, writeFileSync } from 'fs';
|
|
|
2
2
|
import { join } from 'path';
|
|
3
3
|
import { homedir } from 'os';
|
|
4
4
|
import { execSync } from 'child_process';
|
|
5
|
-
import { l as logger } from './limits-
|
|
6
|
-
import { g as DEFAULT_GEMINI_MODEL, G as GEMINI_MODEL_ENV } from './index-
|
|
5
|
+
import { l as logger } from './limits-nhD0Wran.mjs';
|
|
6
|
+
import { g as DEFAULT_GEMINI_MODEL, G as GEMINI_MODEL_ENV } from './index-D0IP7gXG.mjs';
|
|
7
7
|
import 'node:fs/promises';
|
|
8
8
|
import 'node:fs';
|
|
9
9
|
import 'node:os';
|
|
@@ -13,7 +13,7 @@ import 'node:crypto';
|
|
|
13
13
|
import 'tweetnacl';
|
|
14
14
|
import 'chalk';
|
|
15
15
|
import 'node:util';
|
|
16
|
-
import './types-
|
|
16
|
+
import './types-thyvQB2a.mjs';
|
|
17
17
|
import 'axios';
|
|
18
18
|
import 'node:events';
|
|
19
19
|
import 'socket.io-client';
|
|
@@ -28,7 +28,7 @@ import 'node-pty';
|
|
|
28
28
|
import 'node:readline';
|
|
29
29
|
import '@anthropic-ai/sandbox-runtime';
|
|
30
30
|
import 'expo-server-sdk';
|
|
31
|
-
import './agentGuidance-
|
|
31
|
+
import './agentGuidance-xk3v4_7E.mjs';
|
|
32
32
|
import 'ink';
|
|
33
33
|
import 'react';
|
|
34
34
|
import '@anthropic-ai/claude-agent-sdk';
|
|
@@ -4,8 +4,8 @@ var fs = require('fs');
|
|
|
4
4
|
var path = require('path');
|
|
5
5
|
var os = require('os');
|
|
6
6
|
var child_process = require('child_process');
|
|
7
|
-
var persistence = require('./limits-
|
|
8
|
-
var index = require('./index-
|
|
7
|
+
var persistence = require('./limits-Dbip6eVO.cjs');
|
|
8
|
+
var index = require('./index-__h-pCTK.cjs');
|
|
9
9
|
require('node:fs/promises');
|
|
10
10
|
require('node:fs');
|
|
11
11
|
require('node:os');
|
|
@@ -15,7 +15,7 @@ require('node:crypto');
|
|
|
15
15
|
require('tweetnacl');
|
|
16
16
|
require('chalk');
|
|
17
17
|
require('node:util');
|
|
18
|
-
require('./types-
|
|
18
|
+
require('./types-DCVS050m.cjs');
|
|
19
19
|
require('axios');
|
|
20
20
|
require('node:events');
|
|
21
21
|
require('socket.io-client');
|
|
@@ -30,7 +30,7 @@ require('node-pty');
|
|
|
30
30
|
require('node:readline');
|
|
31
31
|
require('@anthropic-ai/sandbox-runtime');
|
|
32
32
|
require('expo-server-sdk');
|
|
33
|
-
require('./agentGuidance-
|
|
33
|
+
require('./agentGuidance-Dl3apItH.cjs');
|
|
34
34
|
require('ink');
|
|
35
35
|
require('react');
|
|
36
36
|
require('@anthropic-ai/claude-agent-sdk');
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { D as DefaultTransport, A as AcpBackend } from './AcpBackend-
|
|
2
|
-
export { a as DEFAULT_IDLE_TIMEOUT_MS, b as DEFAULT_TOOL_CALL_TIMEOUT_MS, e as extractErrorDetail, f as formatDuration, c as formatDurationMinutes, h as handleAgentMessageChunk, d as handleAgentThoughtChunk, g as handleLegacyMessageChunk, i as handlePlanUpdate, j as handleThinkingUpdate, k as handleToolCall, l as handleToolCallUpdate, p as parseArgsFromContent } from './AcpBackend-
|
|
3
|
-
import { c as configuration, g as readSettings, i as encodeBase64, l as logger } from './limits-
|
|
4
|
-
import { A as AcpSessionManager } from './AcpSessionManager-
|
|
5
|
-
import { k as connectionState, A as ApiClient, n as notifyDaemonSessionStarted, p as projectPath, l as BUILTIN_TODO_DISCOVERY } from './types-
|
|
6
|
-
import { P as PI_TEAMS_EXTENSION, j as initialMachineMetadata, k as createSessionMetadata, m as setupOfflineReconnection, p as StreamRelay, n as MessageQueue2, u as hashObject, v as startHappyServer, x as registerAgentAttachmentDownloads, y as TitleGenerator, o as registerKillSessionHandler, C as CLAUDE_ATTACHMENT_KINDS, z as stageClaudeAttachments, B as appendStagedAttachmentsToPrompt, E as BasePermissionHandler, F as writeSessionModeFile, H as normalizeAcpPermissionMode, I as removeSessionModeFile } from './index-
|
|
1
|
+
import { D as DefaultTransport, A as AcpBackend } from './AcpBackend-DsSYq8T-.mjs';
|
|
2
|
+
export { a as DEFAULT_IDLE_TIMEOUT_MS, b as DEFAULT_TOOL_CALL_TIMEOUT_MS, e as extractErrorDetail, f as formatDuration, c as formatDurationMinutes, h as handleAgentMessageChunk, d as handleAgentThoughtChunk, g as handleLegacyMessageChunk, i as handlePlanUpdate, j as handleThinkingUpdate, k as handleToolCall, l as handleToolCallUpdate, p as parseArgsFromContent } from './AcpBackend-DsSYq8T-.mjs';
|
|
3
|
+
import { c as configuration, g as readSettings, i as encodeBase64, l as logger } from './limits-nhD0Wran.mjs';
|
|
4
|
+
import { A as AcpSessionManager } from './AcpSessionManager-BAErE9s0.mjs';
|
|
5
|
+
import { k as connectionState, A as ApiClient, n as notifyDaemonSessionStarted, p as projectPath, l as BUILTIN_TODO_DISCOVERY } from './types-thyvQB2a.mjs';
|
|
6
|
+
import { P as PI_TEAMS_EXTENSION, j as initialMachineMetadata, k as createSessionMetadata, m as setupOfflineReconnection, p as StreamRelay, n as MessageQueue2, u as hashObject, v as startHappyServer, x as registerAgentAttachmentDownloads, y as TitleGenerator, o as registerKillSessionHandler, C as CLAUDE_ATTACHMENT_KINDS, z as stageClaudeAttachments, B as appendStagedAttachmentsToPrompt, E as BasePermissionHandler, F as writeSessionModeFile, H as normalizeAcpPermissionMode, I as removeSessionModeFile } from './index-D0IP7gXG.mjs';
|
|
7
7
|
import { mkdir, chmod, writeFile, rename } from 'node:fs/promises';
|
|
8
8
|
import { randomUUID } from 'node:crypto';
|
|
9
9
|
import { join } from 'node:path';
|
|
@@ -32,7 +32,7 @@ import 'fs';
|
|
|
32
32
|
import 'node:readline';
|
|
33
33
|
import '@anthropic-ai/sandbox-runtime';
|
|
34
34
|
import 'expo-server-sdk';
|
|
35
|
-
import './agentGuidance-
|
|
35
|
+
import './agentGuidance-xk3v4_7E.mjs';
|
|
36
36
|
import 'ink';
|
|
37
37
|
import 'react';
|
|
38
38
|
import '@anthropic-ai/claude-agent-sdk';
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import { q as query } from './index-
|
|
1
|
+
import { q as query } from './index-D0IP7gXG.mjs';
|
|
2
2
|
export { AbortError } from '@anthropic-ai/claude-agent-sdk';
|
|
3
3
|
import 'chalk';
|
|
4
4
|
import 'node:os';
|
|
5
5
|
import 'node:crypto';
|
|
6
|
-
import './types-
|
|
6
|
+
import './types-thyvQB2a.mjs';
|
|
7
7
|
import 'axios';
|
|
8
|
-
import './limits-
|
|
8
|
+
import './limits-nhD0Wran.mjs';
|
|
9
9
|
import 'node:fs/promises';
|
|
10
10
|
import 'node:fs';
|
|
11
11
|
import 'node:path';
|
|
@@ -29,7 +29,7 @@ import 'fs';
|
|
|
29
29
|
import 'node:readline';
|
|
30
30
|
import '@anthropic-ai/sandbox-runtime';
|
|
31
31
|
import 'expo-server-sdk';
|
|
32
|
-
import './agentGuidance-
|
|
32
|
+
import './agentGuidance-xk3v4_7E.mjs';
|
|
33
33
|
import 'ink';
|
|
34
34
|
import 'react';
|
|
35
35
|
import 'ps-list';
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var index = require('./index-
|
|
3
|
+
var index = require('./index-__h-pCTK.cjs');
|
|
4
4
|
var claudeAgentSdk = require('@anthropic-ai/claude-agent-sdk');
|
|
5
5
|
require('chalk');
|
|
6
6
|
require('node:os');
|
|
7
7
|
require('node:crypto');
|
|
8
|
-
require('./types-
|
|
8
|
+
require('./types-DCVS050m.cjs');
|
|
9
9
|
require('axios');
|
|
10
|
-
require('./limits-
|
|
10
|
+
require('./limits-Dbip6eVO.cjs');
|
|
11
11
|
require('node:fs/promises');
|
|
12
12
|
require('node:fs');
|
|
13
13
|
require('node:path');
|
|
@@ -31,7 +31,7 @@ require('fs');
|
|
|
31
31
|
require('node:readline');
|
|
32
32
|
require('@anthropic-ai/sandbox-runtime');
|
|
33
33
|
require('expo-server-sdk');
|
|
34
|
-
require('./agentGuidance-
|
|
34
|
+
require('./agentGuidance-Dl3apItH.cjs');
|
|
35
35
|
require('ink');
|
|
36
36
|
require('react');
|
|
37
37
|
require('ps-list');
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import{createRequire as _pkgrollCR}from"node:module";const require=_pkgrollCR(import.meta.url);import chalk from 'chalk';
|
|
2
2
|
import os, { homedir, userInfo, tmpdir } from 'node:os';
|
|
3
3
|
import { randomUUID, randomInt, randomBytes, createHash as createHash$1, timingSafeEqual } from 'node:crypto';
|
|
4
|
-
import { o as notifyDaemonSessionEvent, q as getProjectPath, l as BUILTIN_TODO_DISCOVERY, p as projectPath, r as initializeSandbox, w as wrapCommand, j as contentLogMetadata, I as InvalidateSync, R as RawJSONLinesSchema, m as delay, t as AsyncLock, S as STREAM_DELTA_MAX_CHARS, M as MAX_CHAT_ATTACHMENT_SOURCE_BYTES, u as notifyDaemonClaudeAuthFailed, v as commandOnPath, c as checkIfDaemonRunningAndCleanupStaleState, x as deriveLocalCliUpdateSummary, y as AGENT_VERSION_SOURCES, z as isClaudeSessionId, C as getLocalHappyAgentCredentialPath, D as readLocalHappyAgentCredentials, E as parseExactVersion, F as compareExactVersions, G as extractCompleteLines, H as decideBackfill, J as parseTerminalHookPayload, K as tmuxArgs, L as scrubTmuxClientEnv, N as decideMirrorBinding, O as MIRROR_BACKFILL_LINES_DEFAULT, P as mirrorLineKey, Q as mirrorLocalId, T as listDaemonSessions, U as stopDaemonSession, V as detectCLIAvailability, W as detectResumeSupport, X as isDaemonRunningCurrentlyInstalledHappyVersion, Y as stopDaemon, Z as TurnActivityTracker, _ as summarizeSpawnSessionForLog, $ as shellescape, A as ApiClient, a0 as fetchCliUpdateState, a1 as resolveCliUpdateCheckInterval, a2 as DEFAULT_CLI_UPDATE_CHECK_INTERVAL_MS, a3 as cleanupDaemonState, i as isValidSessionId, s as spawnDaemonSession, a4 as listVhTerminals, a5 as isValidTerminalId, a6 as readVhTerminal, a7 as sendToVhTerminal, a8 as ContextUsageSchema, a9 as TITLE_PROMPT_PREFIX, aa as BOARD_ANALYZER_PROMPT_PREFIX, k as connectionState, ab as startOfflineReconnection, n as notifyDaemonSessionStarted, d as createEnvelope, ac as CodexAppServerClient } from './types-
|
|
5
|
-
import { l as logger, D as ensurePrivateDirectory, E as hardenPrivateFile, c as configuration, p as packageJson, g as readSettings, F as readCredentials, u as credentialRelayProblem, o as readDaemonState, i as encodeBase64, G as readSettingsOutcome, H as updateSettings, I as encodeBase64Url, m as decodeBase64, J as writeCredentialsLegacy, K as writeCredentialsDataKey, d as readCredentialsForConfiguredRelay, j as encrypt, r as readPersistedSessions, w as writePrivateFileSync, L as decryptWithDataKey, M as decryptLegacy, N as persistSession, k as decrypt, f as ensurePrivateDirectorySync, O as acquireDaemonLock, P as deletePersistedSessions, Q as writeDaemonState, R as writeSettings, S as releaseDaemonLock, C as CLIPBOARD_TOOL_NAME, a as CLIPBOARD_TOOL_TITLE, b as CLIPBOARD_TOOL_DESCRIPTION, e as CLIPBOARD_MAX_BYTES, T as clearCredentials, U as clearMachineId, V as SandboxConfigSchema, W as getLatestDaemonLog } from './limits-
|
|
4
|
+
import { o as notifyDaemonSessionEvent, q as getProjectPath, l as BUILTIN_TODO_DISCOVERY, p as projectPath, r as initializeSandbox, w as wrapCommand, j as contentLogMetadata, I as InvalidateSync, R as RawJSONLinesSchema, m as delay, t as AsyncLock, S as STREAM_DELTA_MAX_CHARS, M as MAX_CHAT_ATTACHMENT_SOURCE_BYTES, u as notifyDaemonClaudeAuthFailed, v as commandOnPath, c as checkIfDaemonRunningAndCleanupStaleState, x as deriveLocalCliUpdateSummary, y as AGENT_VERSION_SOURCES, z as isClaudeSessionId, C as getLocalHappyAgentCredentialPath, D as readLocalHappyAgentCredentials, E as parseExactVersion, F as compareExactVersions, G as extractCompleteLines, H as decideBackfill, J as parseTerminalHookPayload, K as tmuxArgs, L as scrubTmuxClientEnv, N as decideMirrorBinding, O as MIRROR_BACKFILL_LINES_DEFAULT, P as mirrorLineKey, Q as mirrorLocalId, T as listDaemonSessions, U as stopDaemonSession, V as detectCLIAvailability, W as detectResumeSupport, X as isDaemonRunningCurrentlyInstalledHappyVersion, Y as stopDaemon, Z as TurnActivityTracker, _ as summarizeSpawnSessionForLog, $ as shellescape, A as ApiClient, a0 as fetchCliUpdateState, a1 as resolveCliUpdateCheckInterval, a2 as DEFAULT_CLI_UPDATE_CHECK_INTERVAL_MS, a3 as cleanupDaemonState, i as isValidSessionId, s as spawnDaemonSession, a4 as listVhTerminals, a5 as isValidTerminalId, a6 as readVhTerminal, a7 as sendToVhTerminal, a8 as ContextUsageSchema, a9 as TITLE_PROMPT_PREFIX, aa as BOARD_ANALYZER_PROMPT_PREFIX, k as connectionState, ab as startOfflineReconnection, n as notifyDaemonSessionStarted, d as createEnvelope, ac as CodexAppServerClient } from './types-thyvQB2a.mjs';
|
|
5
|
+
import { l as logger, D as ensurePrivateDirectory, E as hardenPrivateFile, c as configuration, p as packageJson, g as readSettings, F as readCredentials, u as credentialRelayProblem, o as readDaemonState, i as encodeBase64, G as readSettingsOutcome, H as updateSettings, I as encodeBase64Url, m as decodeBase64, J as writeCredentialsLegacy, K as writeCredentialsDataKey, d as readCredentialsForConfiguredRelay, j as encrypt, r as readPersistedSessions, w as writePrivateFileSync, L as decryptWithDataKey, M as decryptLegacy, N as persistSession, k as decrypt, f as ensurePrivateDirectorySync, O as acquireDaemonLock, P as deletePersistedSessions, Q as writeDaemonState, R as writeSettings, S as releaseDaemonLock, C as CLIPBOARD_TOOL_NAME, a as CLIPBOARD_TOOL_TITLE, b as CLIPBOARD_TOOL_DESCRIPTION, e as CLIPBOARD_MAX_BYTES, T as clearCredentials, U as clearMachineId, V as SandboxConfigSchema, W as getLatestDaemonLog } from './limits-nhD0Wran.mjs';
|
|
6
6
|
import spawn$1, { spawn } from 'cross-spawn';
|
|
7
7
|
import path, { join, resolve, basename, isAbsolute, dirname, sep, delimiter, normalize } from 'node:path';
|
|
8
8
|
import { createInterface } from 'node:readline';
|
|
9
9
|
import { existsSync, readFileSync, readdirSync, statSync, mkdirSync, unlinkSync, renameSync, writeFileSync, accessSync, constants, openSync, fsyncSync, closeSync, rmSync as rmSync$1, chmodSync as chmodSync$1 } from 'node:fs';
|
|
10
|
-
import { f as trimIdent, A as AGENT_GUIDANCE, t as teamScopePath, T as TeamConnectionPreflightError, e as createTeamsClient, P as PREVIEW_TOOL_NAME, R as REPORT_PROGRESS_TOOL_NAME, g as TEAM_TOOL_NAMES, r as registerTeamsTools, a as PREVIEW_TOOL_TITLE, b as PREVIEW_TOOL_DESCRIPTION, h as REPORT_PROGRESS_TOOL_TITLE, i as REPORT_PROGRESS_TOOL_DESCRIPTION } from './agentGuidance-
|
|
10
|
+
import { f as trimIdent, A as AGENT_GUIDANCE, t as teamScopePath, T as TeamConnectionPreflightError, e as createTeamsClient, P as PREVIEW_TOOL_NAME, R as REPORT_PROGRESS_TOOL_NAME, g as TEAM_TOOL_NAMES, r as registerTeamsTools, a as PREVIEW_TOOL_TITLE, b as PREVIEW_TOOL_DESCRIPTION, h as REPORT_PROGRESS_TOOL_TITLE, i as REPORT_PROGRESS_TOOL_DESCRIPTION } from './agentGuidance-xk3v4_7E.mjs';
|
|
11
11
|
import { readFile, writeFile, rename, unlink, mkdir, symlink, rm, readlink, lstat, stat, open as open$1, appendFile } from 'node:fs/promises';
|
|
12
12
|
import fs, { watch, access } from 'fs/promises';
|
|
13
13
|
import { useStdout, useInput, Box, Text, render } from 'ink';
|
|
@@ -3696,6 +3696,7 @@ function applyClaudeSdkMetadata(current, update) {
|
|
|
3696
3696
|
function createTurnSteeringController() {
|
|
3697
3697
|
let interrupt = null;
|
|
3698
3698
|
let steering = false;
|
|
3699
|
+
let interrupting = false;
|
|
3699
3700
|
return {
|
|
3700
3701
|
setInterrupt(next) {
|
|
3701
3702
|
interrupt = next;
|
|
@@ -3720,17 +3721,31 @@ function createTurnSteeringController() {
|
|
|
3720
3721
|
*/
|
|
3721
3722
|
async interruptTurn() {
|
|
3722
3723
|
if (!interrupt) return false;
|
|
3723
|
-
|
|
3724
|
-
|
|
3724
|
+
interrupting = true;
|
|
3725
|
+
try {
|
|
3726
|
+
await interrupt();
|
|
3727
|
+
return true;
|
|
3728
|
+
} catch (error) {
|
|
3729
|
+
interrupting = false;
|
|
3730
|
+
throw error;
|
|
3731
|
+
}
|
|
3725
3732
|
},
|
|
3726
3733
|
consumeReady() {
|
|
3727
3734
|
if (!steering) return false;
|
|
3728
3735
|
steering = false;
|
|
3729
3736
|
return true;
|
|
3730
3737
|
},
|
|
3738
|
+
/** The next `result` belongs to a stop-button interrupt: close the
|
|
3739
|
+
* turn as cancelled and say "Aborted by user", not "failed". */
|
|
3740
|
+
consumeInterrupted() {
|
|
3741
|
+
if (!interrupting) return false;
|
|
3742
|
+
interrupting = false;
|
|
3743
|
+
return true;
|
|
3744
|
+
},
|
|
3731
3745
|
reset() {
|
|
3732
3746
|
interrupt = null;
|
|
3733
3747
|
steering = false;
|
|
3748
|
+
interrupting = false;
|
|
3734
3749
|
}
|
|
3735
3750
|
};
|
|
3736
3751
|
}
|
|
@@ -3892,6 +3907,7 @@ async function claudeRemoteLauncher(session, onPermissionModeChange, onEffective
|
|
|
3892
3907
|
return;
|
|
3893
3908
|
}
|
|
3894
3909
|
logger.debug("[remote]: interrupt did not stop the turn in time; escalating to hard abort");
|
|
3910
|
+
turnSteering.consumeInterrupted();
|
|
3895
3911
|
}
|
|
3896
3912
|
await abort();
|
|
3897
3913
|
}
|
|
@@ -4225,6 +4241,11 @@ async function claudeRemoteLauncher(session, onPermissionModeChange, onEffective
|
|
|
4225
4241
|
session.client.closeClaudeSessionTurn("cancelled");
|
|
4226
4242
|
return;
|
|
4227
4243
|
}
|
|
4244
|
+
if (turnSteering.consumeInterrupted()) {
|
|
4245
|
+
session.client.closeClaudeSessionTurn("cancelled");
|
|
4246
|
+
session.client.sendSessionEvent({ type: "message", message: "Aborted by user" });
|
|
4247
|
+
return;
|
|
4248
|
+
}
|
|
4228
4249
|
applyClaudeResultLifecycle(result, {
|
|
4229
4250
|
closeCompleted: () => session.client.closeClaudeSessionTurn("completed"),
|
|
4230
4251
|
closeFailed: (error) => session.client.closeClaudeSessionTurn("failed", { error }),
|
|
@@ -12284,7 +12305,7 @@ function registerSideQuestionHandler(rpc, deps) {
|
|
|
12284
12305
|
const retainMs = deps.retainMs ?? SIDE_QUESTION_RETAIN_MS;
|
|
12285
12306
|
const maxRunMs = deps.maxRunMs ?? SIDE_QUESTION_MAX_RUN_MS;
|
|
12286
12307
|
const run = deps.run ?? (async (input) => {
|
|
12287
|
-
const { query } = await import('./index-
|
|
12308
|
+
const { query } = await import('./index-BPnAbcz_.mjs');
|
|
12288
12309
|
return runSideQuestion(query, input);
|
|
12289
12310
|
});
|
|
12290
12311
|
const slots = /* @__PURE__ */ new Map();
|
|
@@ -17520,7 +17541,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
|
|
|
17520
17541
|
process.exit(0);
|
|
17521
17542
|
} else if (subcommand === "install-terminal-hooks") {
|
|
17522
17543
|
try {
|
|
17523
|
-
const { installTerminalHooks, parseTerminalHooksArgs, TERMINAL_HOOKS_HELP } = await import('./installTerminalHooks-
|
|
17544
|
+
const { installTerminalHooks, parseTerminalHooksArgs, TERMINAL_HOOKS_HELP } = await import('./installTerminalHooks-D2ice1a-.mjs');
|
|
17524
17545
|
const command = parseTerminalHooksArgs(args.slice(1));
|
|
17525
17546
|
if (command.action === "help") {
|
|
17526
17547
|
console.log(TERMINAL_HOOKS_HELP);
|
|
@@ -17537,7 +17558,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
|
|
|
17537
17558
|
}
|
|
17538
17559
|
} else if (subcommand === "spawn") {
|
|
17539
17560
|
try {
|
|
17540
|
-
const { handleSpawnCommand } = await import('./spawn-
|
|
17561
|
+
const { handleSpawnCommand } = await import('./spawn-C1OqXJNb.mjs');
|
|
17541
17562
|
await handleSpawnCommand(args.slice(1));
|
|
17542
17563
|
} catch (error) {
|
|
17543
17564
|
console.error(chalk.red("Error:"), error instanceof Error ? error.message : "Unknown error");
|
|
@@ -17549,7 +17570,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
|
|
|
17549
17570
|
return;
|
|
17550
17571
|
} else if (subcommand === "sessions") {
|
|
17551
17572
|
try {
|
|
17552
|
-
const { handleSessionsCommand } = await import('./sessions-
|
|
17573
|
+
const { handleSessionsCommand } = await import('./sessions-C6EvnC4B.mjs');
|
|
17553
17574
|
await handleSessionsCommand(args.slice(1));
|
|
17554
17575
|
} catch (error) {
|
|
17555
17576
|
console.error(chalk.red("Error:"), error instanceof Error ? error.message : "Unknown error");
|
|
@@ -17561,7 +17582,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
|
|
|
17561
17582
|
return;
|
|
17562
17583
|
} else if (subcommand === "send") {
|
|
17563
17584
|
try {
|
|
17564
|
-
const { handleSendCommand } = await import('./send-
|
|
17585
|
+
const { handleSendCommand } = await import('./send-KICC_ACz.mjs');
|
|
17565
17586
|
await handleSendCommand(args.slice(1));
|
|
17566
17587
|
} catch (error) {
|
|
17567
17588
|
console.error(chalk.red("Error:"), error instanceof Error ? error.message : "Unknown error");
|
|
@@ -17667,9 +17688,9 @@ Conversation history is preserved on the server, but in-flight tool calls are in
|
|
|
17667
17688
|
if (geminiSubcommand === "project" && args[2] === "set" && args[3]) {
|
|
17668
17689
|
const projectId = args[3];
|
|
17669
17690
|
try {
|
|
17670
|
-
const { saveGoogleCloudProjectToConfig } = await import('./config-
|
|
17671
|
-
const { readCredentialsForConfiguredRelay: readCredentialsForConfiguredRelay2 } = await import('./limits-
|
|
17672
|
-
const { ApiClient: ApiClient2 } = await import('./types-
|
|
17691
|
+
const { saveGoogleCloudProjectToConfig } = await import('./config-BVoHul9V.mjs');
|
|
17692
|
+
const { readCredentialsForConfiguredRelay: readCredentialsForConfiguredRelay2 } = await import('./limits-nhD0Wran.mjs').then(function (n) { return n.X; });
|
|
17693
|
+
const { ApiClient: ApiClient2 } = await import('./types-thyvQB2a.mjs').then(function (n) { return n.ad; });
|
|
17673
17694
|
let userEmail = void 0;
|
|
17674
17695
|
try {
|
|
17675
17696
|
const credentials = await readCredentialsForConfiguredRelay2();
|
|
@@ -17700,7 +17721,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
|
|
|
17700
17721
|
}
|
|
17701
17722
|
if (geminiSubcommand === "project" && args[2] === "get") {
|
|
17702
17723
|
try {
|
|
17703
|
-
const { readGeminiLocalConfig } = await import('./config-
|
|
17724
|
+
const { readGeminiLocalConfig } = await import('./config-BVoHul9V.mjs');
|
|
17704
17725
|
const config = readGeminiLocalConfig();
|
|
17705
17726
|
if (config.googleCloudProject) {
|
|
17706
17727
|
console.log(`Current Google Cloud Project: ${config.googleCloudProject}`);
|
|
@@ -17740,7 +17761,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
|
|
|
17740
17761
|
process.exit(0);
|
|
17741
17762
|
}
|
|
17742
17763
|
try {
|
|
17743
|
-
const { runGemini } = await import('./runGemini-
|
|
17764
|
+
const { runGemini } = await import('./runGemini-sa5kAgPe.mjs');
|
|
17744
17765
|
let startedBy = void 0;
|
|
17745
17766
|
for (let i = 1; i < args.length; i++) {
|
|
17746
17767
|
if (args[i] === "--started-by") {
|
|
@@ -17770,7 +17791,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
|
|
|
17770
17791
|
}
|
|
17771
17792
|
};
|
|
17772
17793
|
try {
|
|
17773
|
-
const { runAcp, resolveAcpAgentConfig } = await import('./index-
|
|
17794
|
+
const { runAcp, resolveAcpAgentConfig } = await import('./index-BNydKYvS.mjs');
|
|
17774
17795
|
const parsed = parsePiRunnerArgs(args.slice(1));
|
|
17775
17796
|
const resolved = resolveAcpAgentConfig(["pi", ...parsed.passthrough]);
|
|
17776
17797
|
const { credentials } = await authAndSetupMachineIfNeeded();
|
|
@@ -17798,7 +17819,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
|
|
|
17798
17819
|
return;
|
|
17799
17820
|
} else if (subcommand === "acp") {
|
|
17800
17821
|
try {
|
|
17801
|
-
const { runAcp, resolveAcpAgentConfig } = await import('./index-
|
|
17822
|
+
const { runAcp, resolveAcpAgentConfig } = await import('./index-BNydKYvS.mjs');
|
|
17802
17823
|
let startedBy = void 0;
|
|
17803
17824
|
let verbose = false;
|
|
17804
17825
|
const acpArgs = [];
|
|
@@ -17838,7 +17859,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
|
|
|
17838
17859
|
return;
|
|
17839
17860
|
} else if (subcommand === "openclaw") {
|
|
17840
17861
|
try {
|
|
17841
|
-
const { runOpenClaw } = await import('./runOpenClaw-
|
|
17862
|
+
const { runOpenClaw } = await import('./runOpenClaw-Bdsq8KBa.mjs');
|
|
17842
17863
|
let startedBy = void 0;
|
|
17843
17864
|
let verbose = false;
|
|
17844
17865
|
let gatewayUrl;
|
|
@@ -17889,7 +17910,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
|
|
|
17889
17910
|
return;
|
|
17890
17911
|
} else if (subcommand === "todo") {
|
|
17891
17912
|
try {
|
|
17892
|
-
const { handleTodoCommand } = await import('./todo-
|
|
17913
|
+
const { handleTodoCommand } = await import('./todo-C-vovA0N.mjs');
|
|
17893
17914
|
await handleTodoCommand(args.slice(1));
|
|
17894
17915
|
} catch (error) {
|
|
17895
17916
|
console.error(JSON.stringify({ error: error instanceof Error ? error.message : "Todo command failed" }));
|
|
@@ -17898,7 +17919,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
|
|
|
17898
17919
|
return;
|
|
17899
17920
|
} else if (subcommand === "teams") {
|
|
17900
17921
|
try {
|
|
17901
|
-
const { handleTeamsCommand } = await import('./teams-
|
|
17922
|
+
const { handleTeamsCommand } = await import('./teams-Dm5HGpNz.mjs');
|
|
17902
17923
|
await handleTeamsCommand(args.slice(1));
|
|
17903
17924
|
} catch (error) {
|
|
17904
17925
|
console.error(error instanceof Error ? error.message : "Teams command failed");
|
|
@@ -17907,7 +17928,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
|
|
|
17907
17928
|
return;
|
|
17908
17929
|
} else if (subcommand === "mcp" && args.length === 1) {
|
|
17909
17930
|
try {
|
|
17910
|
-
const { handleMcpCommand } = await import('./mcp-
|
|
17931
|
+
const { handleMcpCommand } = await import('./mcp-V26C05fN.mjs');
|
|
17911
17932
|
await handleMcpCommand();
|
|
17912
17933
|
} catch (error) {
|
|
17913
17934
|
process.stderr.write(`[very-happy mcp] Fatal: ${error instanceof Error ? error.message : String(error)}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var AcpBackend = require('./AcpBackend-
|
|
4
|
-
var persistence = require('./limits-
|
|
5
|
-
var AcpSessionManager = require('./AcpSessionManager-
|
|
6
|
-
var api = require('./types-
|
|
7
|
-
var index = require('./index-
|
|
3
|
+
var AcpBackend = require('./AcpBackend-C0Lq4uoA.cjs');
|
|
4
|
+
var persistence = require('./limits-Dbip6eVO.cjs');
|
|
5
|
+
var AcpSessionManager = require('./AcpSessionManager-DIqByTH7.cjs');
|
|
6
|
+
var api = require('./types-DCVS050m.cjs');
|
|
7
|
+
var index = require('./index-__h-pCTK.cjs');
|
|
8
8
|
var promises = require('node:fs/promises');
|
|
9
9
|
var node_crypto = require('node:crypto');
|
|
10
10
|
var path = require('node:path');
|
|
@@ -33,7 +33,7 @@ require('fs');
|
|
|
33
33
|
require('node:readline');
|
|
34
34
|
require('@anthropic-ai/sandbox-runtime');
|
|
35
35
|
require('expo-server-sdk');
|
|
36
|
-
require('./agentGuidance-
|
|
36
|
+
require('./agentGuidance-Dl3apItH.cjs');
|
|
37
37
|
require('ink');
|
|
38
38
|
require('react');
|
|
39
39
|
require('@anthropic-ai/claude-agent-sdk');
|