very-happy-cli 0.2.87 → 0.2.88
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-DxNg9T6Z.cjs → AcpBackend-CBZNjcYO.cjs} +1 -1
- package/dist/{AcpBackend-kotk9Pwu.mjs → AcpBackend-C_simUP7.mjs} +1 -1
- package/dist/{AcpSessionManager-Im0qDPE0.cjs → AcpSessionManager-B9mJWEzL.cjs} +1 -1
- package/dist/{AcpSessionManager-DGY1Ss6H.mjs → AcpSessionManager-G8w8Q6tt.mjs} +1 -1
- package/dist/{config-DcoxG-LO.cjs → config-BPPY98U1.cjs} +2 -2
- package/dist/{config-CDMM_UhY.mjs → config-CFSdirvc.mjs} +2 -2
- package/dist/{index-DBYxKaw7.cjs → index-Bp5ZSCRm.cjs} +4 -4
- package/dist/{index-DLI9RIsu.mjs → index-Cn3VqAah.mjs} +5 -5
- package/dist/{index-DveDBCaA.cjs → index-FxD6Abgx.cjs} +15 -15
- package/dist/{index-UiX6h05D.mjs → index-j2LYx2KW.mjs} +12 -12
- package/dist/index.cjs +2 -2
- package/dist/index.mjs +2 -2
- package/dist/{installTerminalHooks-fuWRm0w5.cjs → installTerminalHooks-BL25f9BN.cjs} +2 -2
- package/dist/{installTerminalHooks-BXxMZXNx.mjs → installTerminalHooks-DsqU3Dxc.mjs} +2 -2
- package/dist/lib.cjs +1 -1
- package/dist/lib.mjs +1 -1
- package/dist/{mcp-YzpXuAUY.cjs → mcp-BVoo0PQS.cjs} +2 -2
- package/dist/{mcp-CgOiXU_f.mjs → mcp-DV49L5g2.mjs} +2 -2
- package/dist/{runGemini-C3jrBffn.mjs → runGemini-cm1mKuxv.mjs} +4 -4
- package/dist/{runGemini-BBAR1VMh.cjs → runGemini-t_Oikq3z.cjs} +4 -4
- package/dist/{runOpenClaw-CaA37yjx.cjs → runOpenClaw-CCGywWGD.cjs} +3 -3
- package/dist/{runOpenClaw-B7pEvhUJ.mjs → runOpenClaw-CCwYAKyZ.mjs} +3 -3
- package/dist/{send-DHj783NY.cjs → send-CqPpRb7v.cjs} +2 -2
- package/dist/{send-bhOlmnWQ.mjs → send-ifKBw-7j.mjs} +2 -2
- package/dist/{spawn-CVUvoWvq.cjs → spawn-28RbN4P6.cjs} +2 -2
- package/dist/{spawn-DW_crRm0.mjs → spawn-DkG_GIXM.mjs} +2 -2
- package/dist/{types-DY9ef3Sf.mjs → types-AO-TVSTa.mjs} +9 -9
- package/dist/{types-1ZueD6ob.cjs → types-DE03map-.cjs} +10 -10
- package/package.json +7 -7
|
@@ -3,7 +3,7 @@
|
|
|
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('./types-
|
|
6
|
+
var persistence = require('./types-DE03map-.cjs');
|
|
7
7
|
|
|
8
8
|
const DEFAULT_TIMEOUTS = {
|
|
9
9
|
/** Default initialization timeout: 60 seconds */
|
|
@@ -1,7 +1,7 @@
|
|
|
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, d as contentLogMetadata, e as errorLogMetadata, f as packageJson, g as delay } from './types-
|
|
4
|
+
import { l as logger, d as contentLogMetadata, e as errorLogMetadata, f as packageJson, g as delay } from './types-AO-TVSTa.mjs';
|
|
5
5
|
|
|
6
6
|
const DEFAULT_TIMEOUTS = {
|
|
7
7
|
/** Default initialization timeout: 60 seconds */
|
|
@@ -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('./types-
|
|
8
|
-
var index = require('./index-
|
|
7
|
+
var persistence = require('./types-DE03map-.cjs');
|
|
8
|
+
var index = require('./index-FxD6Abgx.cjs');
|
|
9
9
|
require('axios');
|
|
10
10
|
require('chalk');
|
|
11
11
|
require('node:util');
|
|
@@ -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 './types-
|
|
6
|
-
import { D as DEFAULT_GEMINI_MODEL, G as GEMINI_MODEL_ENV } from './index-
|
|
5
|
+
import { l as logger } from './types-AO-TVSTa.mjs';
|
|
6
|
+
import { D as DEFAULT_GEMINI_MODEL, G as GEMINI_MODEL_ENV } from './index-j2LYx2KW.mjs';
|
|
7
7
|
import 'axios';
|
|
8
8
|
import 'chalk';
|
|
9
9
|
import 'node:util';
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var AcpBackend = require('./AcpBackend-
|
|
4
|
-
var persistence = require('./types-
|
|
5
|
-
var AcpSessionManager = require('./AcpSessionManager-
|
|
3
|
+
var AcpBackend = require('./AcpBackend-CBZNjcYO.cjs');
|
|
4
|
+
var persistence = require('./types-DE03map-.cjs');
|
|
5
|
+
var AcpSessionManager = require('./AcpSessionManager-B9mJWEzL.cjs');
|
|
6
6
|
var node_crypto = require('node:crypto');
|
|
7
7
|
var path = require('node:path');
|
|
8
|
-
var index = require('./index-
|
|
8
|
+
var index = require('./index-FxD6Abgx.cjs');
|
|
9
9
|
require('node:child_process');
|
|
10
10
|
require('@agentclientprotocol/sdk');
|
|
11
11
|
require('axios');
|
|
@@ -1,10 +1,10 @@
|
|
|
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 { h as connectionState, A as ApiClient, i as readSettings, j as encodeBase64, l as logger, p as projectPath } from './types-
|
|
4
|
-
import { A as AcpSessionManager } from './AcpSessionManager-
|
|
1
|
+
import { D as DefaultTransport, A as AcpBackend } from './AcpBackend-C_simUP7.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-C_simUP7.mjs';
|
|
3
|
+
import { h as connectionState, A as ApiClient, i as readSettings, j as encodeBase64, l as logger, p as projectPath } from './types-AO-TVSTa.mjs';
|
|
4
|
+
import { A as AcpSessionManager } from './AcpSessionManager-G8w8Q6tt.mjs';
|
|
5
5
|
import { randomUUID } from 'node:crypto';
|
|
6
6
|
import { join } from 'node:path';
|
|
7
|
-
import { i as initialMachineMetadata, d as createSessionMetadata, e as setupOfflineReconnection, n as notifyDaemonSessionStarted, M as MessageQueue2, h as hashObject, f as startHappyServer, r as registerKillSessionHandler, B as BasePermissionHandler } from './index-
|
|
7
|
+
import { i as initialMachineMetadata, d as createSessionMetadata, e as setupOfflineReconnection, n as notifyDaemonSessionStarted, M as MessageQueue2, h as hashObject, f as startHappyServer, r as registerKillSessionHandler, B as BasePermissionHandler } from './index-j2LYx2KW.mjs';
|
|
8
8
|
import 'node:child_process';
|
|
9
9
|
import '@agentclientprotocol/sdk';
|
|
10
10
|
import 'axios';
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
var chalk = require('chalk');
|
|
4
4
|
var os = require('node:os');
|
|
5
5
|
var node_crypto = require('node:crypto');
|
|
6
|
-
var persistence = require('./types-
|
|
6
|
+
var persistence = require('./types-DE03map-.cjs');
|
|
7
7
|
var spawn = require('cross-spawn');
|
|
8
8
|
var path = require('node:path');
|
|
9
9
|
var node_readline = require('node:readline');
|
|
@@ -8704,7 +8704,7 @@ const MAX_TITLE_CHARS = 60;
|
|
|
8704
8704
|
const GENERATION_TIMEOUT_MS = 3e4;
|
|
8705
8705
|
function resolveClaudeBinary() {
|
|
8706
8706
|
try {
|
|
8707
|
-
const require$1 = node_module.createRequire((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('index-
|
|
8707
|
+
const require$1 = node_module.createRequire((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('index-FxD6Abgx.cjs', document.baseURI).href)));
|
|
8708
8708
|
const utilsPath = path.resolve(path.join(persistence.projectPath(), "scripts", "claude_version_utils.cjs"));
|
|
8709
8709
|
const { getClaudeCliPath } = require$1(utilsPath);
|
|
8710
8710
|
const path$1 = getClaudeCliPath();
|
|
@@ -10848,9 +10848,9 @@ function resolveLocalSignupBootstrap(configuredMode, configuredInviteCodes, gene
|
|
|
10848
10848
|
};
|
|
10849
10849
|
}
|
|
10850
10850
|
|
|
10851
|
-
const __filename$1 = node_url.fileURLToPath((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('index-
|
|
10851
|
+
const __filename$1 = node_url.fileURLToPath((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('index-FxD6Abgx.cjs', document.baseURI).href)));
|
|
10852
10852
|
const __dirname$1 = path.dirname(__filename$1);
|
|
10853
|
-
const require_ = node_module.createRequire((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('index-
|
|
10853
|
+
const require_ = node_module.createRequire((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('index-FxD6Abgx.cjs', document.baseURI).href)));
|
|
10854
10854
|
const PRISMA_QUERY_ENGINE_FILES = {
|
|
10855
10855
|
"arm64-darwin": "libquery_engine-darwin-arm64.dylib.node",
|
|
10856
10856
|
"x64-darwin": "libquery_engine-darwin.dylib.node",
|
|
@@ -13462,7 +13462,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
|
|
|
13462
13462
|
process.exit(0);
|
|
13463
13463
|
} else if (subcommand === "install-terminal-hooks") {
|
|
13464
13464
|
try {
|
|
13465
|
-
const { installTerminalHooks, parseTerminalHooksArgs, TERMINAL_HOOKS_HELP } = await Promise.resolve().then(function () { return require('./installTerminalHooks-
|
|
13465
|
+
const { installTerminalHooks, parseTerminalHooksArgs, TERMINAL_HOOKS_HELP } = await Promise.resolve().then(function () { return require('./installTerminalHooks-BL25f9BN.cjs'); });
|
|
13466
13466
|
const command = parseTerminalHooksArgs(args.slice(1));
|
|
13467
13467
|
if (command.action === "help") {
|
|
13468
13468
|
console.log(TERMINAL_HOOKS_HELP);
|
|
@@ -13479,7 +13479,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
|
|
|
13479
13479
|
}
|
|
13480
13480
|
} else if (subcommand === "spawn") {
|
|
13481
13481
|
try {
|
|
13482
|
-
const { handleSpawnCommand } = await Promise.resolve().then(function () { return require('./spawn-
|
|
13482
|
+
const { handleSpawnCommand } = await Promise.resolve().then(function () { return require('./spawn-28RbN4P6.cjs'); });
|
|
13483
13483
|
await handleSpawnCommand(args.slice(1));
|
|
13484
13484
|
} catch (error) {
|
|
13485
13485
|
console.error(chalk.red("Error:"), error instanceof Error ? error.message : "Unknown error");
|
|
@@ -13491,7 +13491,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
|
|
|
13491
13491
|
return;
|
|
13492
13492
|
} else if (subcommand === "send") {
|
|
13493
13493
|
try {
|
|
13494
|
-
const { handleSendCommand } = await Promise.resolve().then(function () { return require('./send-
|
|
13494
|
+
const { handleSendCommand } = await Promise.resolve().then(function () { return require('./send-CqPpRb7v.cjs'); });
|
|
13495
13495
|
await handleSendCommand(args.slice(1));
|
|
13496
13496
|
} catch (error) {
|
|
13497
13497
|
console.error(chalk.red("Error:"), error instanceof Error ? error.message : "Unknown error");
|
|
@@ -13597,9 +13597,9 @@ Conversation history is preserved on the server, but in-flight tool calls are in
|
|
|
13597
13597
|
if (geminiSubcommand === "project" && args[2] === "set" && args[3]) {
|
|
13598
13598
|
const projectId = args[3];
|
|
13599
13599
|
try {
|
|
13600
|
-
const { saveGoogleCloudProjectToConfig } = await Promise.resolve().then(function () { return require('./config-
|
|
13601
|
-
const { readCredentialsForConfiguredRelay: readCredentialsForConfiguredRelay2 } = await Promise.resolve().then(function () { return require('./types-
|
|
13602
|
-
const { ApiClient: ApiClient2 } = await Promise.resolve().then(function () { return require('./types-
|
|
13600
|
+
const { saveGoogleCloudProjectToConfig } = await Promise.resolve().then(function () { return require('./config-BPPY98U1.cjs'); });
|
|
13601
|
+
const { readCredentialsForConfiguredRelay: readCredentialsForConfiguredRelay2 } = await Promise.resolve().then(function () { return require('./types-DE03map-.cjs'); }).then(function (n) { return n.persistence; });
|
|
13602
|
+
const { ApiClient: ApiClient2 } = await Promise.resolve().then(function () { return require('./types-DE03map-.cjs'); }).then(function (n) { return n.api; });
|
|
13603
13603
|
let userEmail = void 0;
|
|
13604
13604
|
try {
|
|
13605
13605
|
const credentials = await readCredentialsForConfiguredRelay2();
|
|
@@ -13630,7 +13630,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
|
|
|
13630
13630
|
}
|
|
13631
13631
|
if (geminiSubcommand === "project" && args[2] === "get") {
|
|
13632
13632
|
try {
|
|
13633
|
-
const { readGeminiLocalConfig } = await Promise.resolve().then(function () { return require('./config-
|
|
13633
|
+
const { readGeminiLocalConfig } = await Promise.resolve().then(function () { return require('./config-BPPY98U1.cjs'); });
|
|
13634
13634
|
const config = readGeminiLocalConfig();
|
|
13635
13635
|
if (config.googleCloudProject) {
|
|
13636
13636
|
console.log(`Current Google Cloud Project: ${config.googleCloudProject}`);
|
|
@@ -13670,7 +13670,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
|
|
|
13670
13670
|
process.exit(0);
|
|
13671
13671
|
}
|
|
13672
13672
|
try {
|
|
13673
|
-
const { runGemini } = await Promise.resolve().then(function () { return require('./runGemini-
|
|
13673
|
+
const { runGemini } = await Promise.resolve().then(function () { return require('./runGemini-t_Oikq3z.cjs'); });
|
|
13674
13674
|
let startedBy = void 0;
|
|
13675
13675
|
for (let i = 1; i < args.length; i++) {
|
|
13676
13676
|
if (args[i] === "--started-by") {
|
|
@@ -13692,7 +13692,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
|
|
|
13692
13692
|
return;
|
|
13693
13693
|
} else if (subcommand === "acp") {
|
|
13694
13694
|
try {
|
|
13695
|
-
const { runAcp, resolveAcpAgentConfig } = await Promise.resolve().then(function () { return require('./index-
|
|
13695
|
+
const { runAcp, resolveAcpAgentConfig } = await Promise.resolve().then(function () { return require('./index-Bp5ZSCRm.cjs'); });
|
|
13696
13696
|
let startedBy = void 0;
|
|
13697
13697
|
let verbose = false;
|
|
13698
13698
|
const acpArgs = [];
|
|
@@ -13732,7 +13732,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
|
|
|
13732
13732
|
return;
|
|
13733
13733
|
} else if (subcommand === "openclaw") {
|
|
13734
13734
|
try {
|
|
13735
|
-
const { runOpenClaw } = await Promise.resolve().then(function () { return require('./runOpenClaw-
|
|
13735
|
+
const { runOpenClaw } = await Promise.resolve().then(function () { return require('./runOpenClaw-CCGywWGD.cjs'); });
|
|
13736
13736
|
let startedBy = void 0;
|
|
13737
13737
|
let verbose = false;
|
|
13738
13738
|
let gatewayUrl;
|
|
@@ -13783,7 +13783,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
|
|
|
13783
13783
|
return;
|
|
13784
13784
|
} else if (subcommand === "mcp" && args.length === 1) {
|
|
13785
13785
|
try {
|
|
13786
|
-
const { handleMcpCommand } = await Promise.resolve().then(function () { return require('./mcp-
|
|
13786
|
+
const { handleMcpCommand } = await Promise.resolve().then(function () { return require('./mcp-BVoo0PQS.cjs'); });
|
|
13787
13787
|
await handleMcpCommand();
|
|
13788
13788
|
} catch (error) {
|
|
13789
13789
|
process.stderr.write(`[very-happy mcp] Fatal: ${error instanceof Error ? error.message : String(error)}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import{createRequire as _pkgrollCR}from"node:module";const require=_pkgrollCR(import.meta.url);import chalk from 'chalk';
|
|
2
2
|
import os, { homedir } from 'node:os';
|
|
3
3
|
import { randomUUID, randomBytes, createHash as createHash$1, timingSafeEqual } from 'node:crypto';
|
|
4
|
-
import { n as readDaemonState, l as logger, c as configuration, o as clearDaemonState, q as getProjectPath, p as projectPath, s as initializeSandbox, t as wrapCommand, d as contentLogMetadata, I as InvalidateSync, R as RawJSONLinesSchema, g as delay, u as AsyncLock, v as ensurePrivateDirectory, M as MAX_CHAT_ATTACHMENT_SOURCE_BYTES, x as hardenPrivateFile, f as packageJson, i as readSettings, y as readCredentials, z as credentialRelayProblem, B as deriveLocalCliUpdateSummary, j as encodeBase64, C as updateSettings, D as encodeBase64Url, E as decodeBase64, F as writeCredentialsLegacy, G as writeCredentialsDataKey, H as readCredentialsForConfiguredRelay, J as encrypt, r as readPersistedSessions, K as getLocalHappyAgentCredentialPath, L as readLocalHappyAgentCredentials, N as decryptWithDataKey, O as decryptLegacy, P as extractCompleteLines, Q as decideBackfill, S as parseTerminalHookPayload, T as decideMirrorBinding, U as persistSession, V as MIRROR_BACKFILL_LINES_DEFAULT, W as mirrorLineKey, X as mirrorLocalId, Y as detectResumeSupport, Z as detectCLIAvailability, _ as acquireDaemonLock, $ as summarizeSpawnSessionForLog, a0 as deletePersistedSessions, a1 as decrypt, a2 as writeDaemonState, A as ApiClient, a3 as fetchCliUpdateState, a4 as resolveCliUpdateCheckInterval, a5 as DEFAULT_CLI_UPDATE_CHECK_INTERVAL_MS, a6 as releaseDaemonLock, a7 as isValidSessionId, a8 as listVhTerminals, a9 as isValidTerminalId, aa as readVhTerminal, ab as sendToVhTerminal, h as connectionState, ac as startOfflineReconnection, ad as clearCredentials, ae as clearMachineId, k as ensurePrivateDirectorySync, w as writePrivateFileSync, af as SandboxConfigSchema, b as createEnvelope, ag as CodexAppServerClient, ah as getLatestDaemonLog } from './types-
|
|
4
|
+
import { n as readDaemonState, l as logger, c as configuration, o as clearDaemonState, q as getProjectPath, p as projectPath, s as initializeSandbox, t as wrapCommand, d as contentLogMetadata, I as InvalidateSync, R as RawJSONLinesSchema, g as delay, u as AsyncLock, v as ensurePrivateDirectory, M as MAX_CHAT_ATTACHMENT_SOURCE_BYTES, x as hardenPrivateFile, f as packageJson, i as readSettings, y as readCredentials, z as credentialRelayProblem, B as deriveLocalCliUpdateSummary, j as encodeBase64, C as updateSettings, D as encodeBase64Url, E as decodeBase64, F as writeCredentialsLegacy, G as writeCredentialsDataKey, H as readCredentialsForConfiguredRelay, J as encrypt, r as readPersistedSessions, K as getLocalHappyAgentCredentialPath, L as readLocalHappyAgentCredentials, N as decryptWithDataKey, O as decryptLegacy, P as extractCompleteLines, Q as decideBackfill, S as parseTerminalHookPayload, T as decideMirrorBinding, U as persistSession, V as MIRROR_BACKFILL_LINES_DEFAULT, W as mirrorLineKey, X as mirrorLocalId, Y as detectResumeSupport, Z as detectCLIAvailability, _ as acquireDaemonLock, $ as summarizeSpawnSessionForLog, a0 as deletePersistedSessions, a1 as decrypt, a2 as writeDaemonState, A as ApiClient, a3 as fetchCliUpdateState, a4 as resolveCliUpdateCheckInterval, a5 as DEFAULT_CLI_UPDATE_CHECK_INTERVAL_MS, a6 as releaseDaemonLock, a7 as isValidSessionId, a8 as listVhTerminals, a9 as isValidTerminalId, aa as readVhTerminal, ab as sendToVhTerminal, h as connectionState, ac as startOfflineReconnection, ad as clearCredentials, ae as clearMachineId, k as ensurePrivateDirectorySync, w as writePrivateFileSync, af as SandboxConfigSchema, b as createEnvelope, ag as CodexAppServerClient, ah as getLatestDaemonLog } from './types-AO-TVSTa.mjs';
|
|
5
5
|
import spawn$1, { spawn } from 'cross-spawn';
|
|
6
6
|
import path, { join, resolve, basename, isAbsolute, normalize, sep, dirname } from 'node:path';
|
|
7
7
|
import { createInterface } from 'node:readline';
|
|
@@ -13440,7 +13440,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
|
|
|
13440
13440
|
process.exit(0);
|
|
13441
13441
|
} else if (subcommand === "install-terminal-hooks") {
|
|
13442
13442
|
try {
|
|
13443
|
-
const { installTerminalHooks, parseTerminalHooksArgs, TERMINAL_HOOKS_HELP } = await import('./installTerminalHooks-
|
|
13443
|
+
const { installTerminalHooks, parseTerminalHooksArgs, TERMINAL_HOOKS_HELP } = await import('./installTerminalHooks-DsqU3Dxc.mjs');
|
|
13444
13444
|
const command = parseTerminalHooksArgs(args.slice(1));
|
|
13445
13445
|
if (command.action === "help") {
|
|
13446
13446
|
console.log(TERMINAL_HOOKS_HELP);
|
|
@@ -13457,7 +13457,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
|
|
|
13457
13457
|
}
|
|
13458
13458
|
} else if (subcommand === "spawn") {
|
|
13459
13459
|
try {
|
|
13460
|
-
const { handleSpawnCommand } = await import('./spawn-
|
|
13460
|
+
const { handleSpawnCommand } = await import('./spawn-DkG_GIXM.mjs');
|
|
13461
13461
|
await handleSpawnCommand(args.slice(1));
|
|
13462
13462
|
} catch (error) {
|
|
13463
13463
|
console.error(chalk.red("Error:"), error instanceof Error ? error.message : "Unknown error");
|
|
@@ -13469,7 +13469,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
|
|
|
13469
13469
|
return;
|
|
13470
13470
|
} else if (subcommand === "send") {
|
|
13471
13471
|
try {
|
|
13472
|
-
const { handleSendCommand } = await import('./send-
|
|
13472
|
+
const { handleSendCommand } = await import('./send-ifKBw-7j.mjs');
|
|
13473
13473
|
await handleSendCommand(args.slice(1));
|
|
13474
13474
|
} catch (error) {
|
|
13475
13475
|
console.error(chalk.red("Error:"), error instanceof Error ? error.message : "Unknown error");
|
|
@@ -13575,9 +13575,9 @@ Conversation history is preserved on the server, but in-flight tool calls are in
|
|
|
13575
13575
|
if (geminiSubcommand === "project" && args[2] === "set" && args[3]) {
|
|
13576
13576
|
const projectId = args[3];
|
|
13577
13577
|
try {
|
|
13578
|
-
const { saveGoogleCloudProjectToConfig } = await import('./config-
|
|
13579
|
-
const { readCredentialsForConfiguredRelay: readCredentialsForConfiguredRelay2 } = await import('./types-
|
|
13580
|
-
const { ApiClient: ApiClient2 } = await import('./types-
|
|
13578
|
+
const { saveGoogleCloudProjectToConfig } = await import('./config-CFSdirvc.mjs');
|
|
13579
|
+
const { readCredentialsForConfiguredRelay: readCredentialsForConfiguredRelay2 } = await import('./types-AO-TVSTa.mjs').then(function (n) { return n.ai; });
|
|
13580
|
+
const { ApiClient: ApiClient2 } = await import('./types-AO-TVSTa.mjs').then(function (n) { return n.aj; });
|
|
13581
13581
|
let userEmail = void 0;
|
|
13582
13582
|
try {
|
|
13583
13583
|
const credentials = await readCredentialsForConfiguredRelay2();
|
|
@@ -13608,7 +13608,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
|
|
|
13608
13608
|
}
|
|
13609
13609
|
if (geminiSubcommand === "project" && args[2] === "get") {
|
|
13610
13610
|
try {
|
|
13611
|
-
const { readGeminiLocalConfig } = await import('./config-
|
|
13611
|
+
const { readGeminiLocalConfig } = await import('./config-CFSdirvc.mjs');
|
|
13612
13612
|
const config = readGeminiLocalConfig();
|
|
13613
13613
|
if (config.googleCloudProject) {
|
|
13614
13614
|
console.log(`Current Google Cloud Project: ${config.googleCloudProject}`);
|
|
@@ -13648,7 +13648,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
|
|
|
13648
13648
|
process.exit(0);
|
|
13649
13649
|
}
|
|
13650
13650
|
try {
|
|
13651
|
-
const { runGemini } = await import('./runGemini-
|
|
13651
|
+
const { runGemini } = await import('./runGemini-cm1mKuxv.mjs');
|
|
13652
13652
|
let startedBy = void 0;
|
|
13653
13653
|
for (let i = 1; i < args.length; i++) {
|
|
13654
13654
|
if (args[i] === "--started-by") {
|
|
@@ -13670,7 +13670,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
|
|
|
13670
13670
|
return;
|
|
13671
13671
|
} else if (subcommand === "acp") {
|
|
13672
13672
|
try {
|
|
13673
|
-
const { runAcp, resolveAcpAgentConfig } = await import('./index-
|
|
13673
|
+
const { runAcp, resolveAcpAgentConfig } = await import('./index-Cn3VqAah.mjs');
|
|
13674
13674
|
let startedBy = void 0;
|
|
13675
13675
|
let verbose = false;
|
|
13676
13676
|
const acpArgs = [];
|
|
@@ -13710,7 +13710,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
|
|
|
13710
13710
|
return;
|
|
13711
13711
|
} else if (subcommand === "openclaw") {
|
|
13712
13712
|
try {
|
|
13713
|
-
const { runOpenClaw } = await import('./runOpenClaw-
|
|
13713
|
+
const { runOpenClaw } = await import('./runOpenClaw-CCwYAKyZ.mjs');
|
|
13714
13714
|
let startedBy = void 0;
|
|
13715
13715
|
let verbose = false;
|
|
13716
13716
|
let gatewayUrl;
|
|
@@ -13761,7 +13761,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
|
|
|
13761
13761
|
return;
|
|
13762
13762
|
} else if (subcommand === "mcp" && args.length === 1) {
|
|
13763
13763
|
try {
|
|
13764
|
-
const { handleMcpCommand } = await import('./mcp-
|
|
13764
|
+
const { handleMcpCommand } = await import('./mcp-DV49L5g2.mjs');
|
|
13765
13765
|
await handleMcpCommand();
|
|
13766
13766
|
} catch (error) {
|
|
13767
13767
|
process.stderr.write(`[very-happy mcp] Fatal: ${error instanceof Error ? error.message : String(error)}
|
package/dist/index.cjs
CHANGED
package/dist/index.mjs
CHANGED
|
@@ -5,8 +5,8 @@ var path = require('node:path');
|
|
|
5
5
|
var os = require('node:os');
|
|
6
6
|
var node_child_process = require('node:child_process');
|
|
7
7
|
var chalk = require('chalk');
|
|
8
|
-
var persistence = require('./types-
|
|
9
|
-
var index = require('./index-
|
|
8
|
+
var persistence = require('./types-DE03map-.cjs');
|
|
9
|
+
var index = require('./index-FxD6Abgx.cjs');
|
|
10
10
|
require('axios');
|
|
11
11
|
require('node:util');
|
|
12
12
|
require('node:fs/promises');
|
|
@@ -3,8 +3,8 @@ import { join, resolve } from 'node:path';
|
|
|
3
3
|
import { homedir } from 'node:os';
|
|
4
4
|
import { spawnSync } from 'node:child_process';
|
|
5
5
|
import chalk from 'chalk';
|
|
6
|
-
import { p as projectPath } from './types-
|
|
7
|
-
import { t as tmuxSupportsSessionEnv } from './index-
|
|
6
|
+
import { p as projectPath } from './types-AO-TVSTa.mjs';
|
|
7
|
+
import { t as tmuxSupportsSessionEnv } from './index-j2LYx2KW.mjs';
|
|
8
8
|
import 'axios';
|
|
9
9
|
import 'node:util';
|
|
10
10
|
import 'node:fs/promises';
|
package/dist/lib.cjs
CHANGED
package/dist/lib.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { A as ApiClient, a as ApiSessionClient, R as RawJSONLinesSchema, c as configuration, l as logger } from './types-
|
|
1
|
+
export { A as ApiClient, a as ApiSessionClient, R as RawJSONLinesSchema, c as configuration, l as logger } from './types-AO-TVSTa.mjs';
|
|
2
2
|
import 'axios';
|
|
3
3
|
import 'chalk';
|
|
4
4
|
import 'node:util';
|
|
@@ -3,9 +3,9 @@
|
|
|
3
3
|
var mcp_js = require('@modelcontextprotocol/sdk/server/mcp.js');
|
|
4
4
|
var stdio_js = require('@modelcontextprotocol/sdk/server/stdio.js');
|
|
5
5
|
var z = require('zod');
|
|
6
|
-
var index = require('./index-
|
|
6
|
+
var index = require('./index-FxD6Abgx.cjs');
|
|
7
7
|
var limits = require('./limits-KdWKmwtH.cjs');
|
|
8
|
-
var persistence = require('./types-
|
|
8
|
+
var persistence = require('./types-DE03map-.cjs');
|
|
9
9
|
require('chalk');
|
|
10
10
|
require('node:os');
|
|
11
11
|
require('node:crypto');
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
|
|
2
2
|
import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';
|
|
3
3
|
import { z } from 'zod';
|
|
4
|
-
import { p as pushClipboardViaDaemon } from './index-
|
|
4
|
+
import { p as pushClipboardViaDaemon } from './index-j2LYx2KW.mjs';
|
|
5
5
|
import { C as CLIPBOARD_TOOL_NAME, a as CLIPBOARD_TOOL_TITLE, b as CLIPBOARD_TOOL_DESCRIPTION, c as CLIPBOARD_MAX_BYTES } from './limits-CwFb5S2b.mjs';
|
|
6
|
-
import { l as logger } from './types-
|
|
6
|
+
import { l as logger } from './types-AO-TVSTa.mjs';
|
|
7
7
|
import 'chalk';
|
|
8
8
|
import 'node:os';
|
|
9
9
|
import 'node:crypto';
|
|
@@ -2,10 +2,10 @@ 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
4
|
import { join } from 'node:path';
|
|
5
|
-
import { l as logger, h as connectionState, A as ApiClient, i as readSettings, e as errorLogMetadata, j as encodeBase64, p as projectPath, d as contentLogMetadata } from './types-
|
|
6
|
-
import { g as GEMINI_API_KEY_ENV, j as GOOGLE_API_KEY_ENV, G as GEMINI_MODEL_ENV, B as BasePermissionHandler, k as BaseReasoningProcessor, i as initialMachineMetadata, d as createSessionMetadata, e as setupOfflineReconnection, n as notifyDaemonSessionStarted, M as MessageQueue2, h as hashObject, l as MessageBuffer, C as CHANGE_TITLE_INSTRUCTION, r as registerKillSessionHandler, f as startHappyServer } from './index-
|
|
7
|
-
import { A as AcpBackend } from './AcpBackend-
|
|
8
|
-
import { readGeminiLocalConfig, determineGeminiModel, getGeminiModelSource, getInitialGeminiModel, saveGeminiModelToConfig } from './config-
|
|
5
|
+
import { l as logger, h as connectionState, A as ApiClient, i as readSettings, e as errorLogMetadata, j as encodeBase64, p as projectPath, d as contentLogMetadata } from './types-AO-TVSTa.mjs';
|
|
6
|
+
import { g as GEMINI_API_KEY_ENV, j as GOOGLE_API_KEY_ENV, G as GEMINI_MODEL_ENV, B as BasePermissionHandler, k as BaseReasoningProcessor, i as initialMachineMetadata, d as createSessionMetadata, e as setupOfflineReconnection, n as notifyDaemonSessionStarted, M as MessageQueue2, h as hashObject, l as MessageBuffer, C as CHANGE_TITLE_INSTRUCTION, r as registerKillSessionHandler, f as startHappyServer } from './index-j2LYx2KW.mjs';
|
|
7
|
+
import { A as AcpBackend } from './AcpBackend-C_simUP7.mjs';
|
|
8
|
+
import { readGeminiLocalConfig, determineGeminiModel, getGeminiModelSource, getInitialGeminiModel, saveGeminiModelToConfig } from './config-CFSdirvc.mjs';
|
|
9
9
|
import 'axios';
|
|
10
10
|
import 'chalk';
|
|
11
11
|
import 'node:util';
|
|
@@ -4,10 +4,10 @@ var ink = require('ink');
|
|
|
4
4
|
var React = require('react');
|
|
5
5
|
var node_crypto = require('node:crypto');
|
|
6
6
|
var path = require('node:path');
|
|
7
|
-
var persistence = require('./types-
|
|
8
|
-
var index = require('./index-
|
|
9
|
-
var AcpBackend = require('./AcpBackend-
|
|
10
|
-
var config = require('./config-
|
|
7
|
+
var persistence = require('./types-DE03map-.cjs');
|
|
8
|
+
var index = require('./index-FxD6Abgx.cjs');
|
|
9
|
+
var AcpBackend = require('./AcpBackend-CBZNjcYO.cjs');
|
|
10
|
+
var config = require('./config-BPPY98U1.cjs');
|
|
11
11
|
require('axios');
|
|
12
12
|
require('chalk');
|
|
13
13
|
require('node:util');
|
|
@@ -5,9 +5,9 @@ var node_child_process = require('node:child_process');
|
|
|
5
5
|
var os = require('node:os');
|
|
6
6
|
var node_fs = require('node:fs');
|
|
7
7
|
var path = require('node:path');
|
|
8
|
-
var persistence = require('./types-
|
|
9
|
-
var AcpSessionManager = require('./AcpSessionManager-
|
|
10
|
-
var index = require('./index-
|
|
8
|
+
var persistence = require('./types-DE03map-.cjs');
|
|
9
|
+
var AcpSessionManager = require('./AcpSessionManager-B9mJWEzL.cjs');
|
|
10
|
+
var index = require('./index-FxD6Abgx.cjs');
|
|
11
11
|
var WebSocket = require('ws');
|
|
12
12
|
var ed = require('@noble/ed25519');
|
|
13
13
|
var sha2_js = require('@noble/hashes/sha2.js');
|
|
@@ -3,9 +3,9 @@ import { execFileSync } from 'node:child_process';
|
|
|
3
3
|
import os from 'node:os';
|
|
4
4
|
import { existsSync, readFileSync } from 'node:fs';
|
|
5
5
|
import { join } from 'node:path';
|
|
6
|
-
import { k as ensurePrivateDirectorySync, m as hardenPrivateFileSync, w as writePrivateFileSync, e as errorLogMetadata, d as contentLogMetadata, h as connectionState, A as ApiClient, i as readSettings, j as encodeBase64, l as logger, c as configuration } from './types-
|
|
7
|
-
import { A as AcpSessionManager } from './AcpSessionManager-
|
|
8
|
-
import { i as initialMachineMetadata, d as createSessionMetadata, e as setupOfflineReconnection, n as notifyDaemonSessionStarted, M as MessageQueue2, r as registerKillSessionHandler } from './index-
|
|
6
|
+
import { k as ensurePrivateDirectorySync, m as hardenPrivateFileSync, w as writePrivateFileSync, e as errorLogMetadata, d as contentLogMetadata, h as connectionState, A as ApiClient, i as readSettings, j as encodeBase64, l as logger, c as configuration } from './types-AO-TVSTa.mjs';
|
|
7
|
+
import { A as AcpSessionManager } from './AcpSessionManager-G8w8Q6tt.mjs';
|
|
8
|
+
import { i as initialMachineMetadata, d as createSessionMetadata, e as setupOfflineReconnection, n as notifyDaemonSessionStarted, M as MessageQueue2, r as registerKillSessionHandler } from './index-j2LYx2KW.mjs';
|
|
9
9
|
import WebSocket from 'ws';
|
|
10
10
|
import * as ed from '@noble/ed25519';
|
|
11
11
|
import { sha512 } from '@noble/hashes/sha2.js';
|
|
@@ -3,8 +3,8 @@
|
|
|
3
3
|
var chalk = require('chalk');
|
|
4
4
|
var node_fs = require('node:fs');
|
|
5
5
|
var path = require('node:path');
|
|
6
|
-
var persistence = require('./types-
|
|
7
|
-
var index = require('./index-
|
|
6
|
+
var persistence = require('./types-DE03map-.cjs');
|
|
7
|
+
var index = require('./index-FxD6Abgx.cjs');
|
|
8
8
|
require('axios');
|
|
9
9
|
require('node:util');
|
|
10
10
|
require('node:os');
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import chalk from 'chalk';
|
|
2
2
|
import { readFileSync } from 'node:fs';
|
|
3
3
|
import { resolve } from 'node:path';
|
|
4
|
-
import { r as readPersistedSessions, c as configuration } from './types-
|
|
5
|
-
import { b as sendUserMessage, a as sessionWebUrl } from './index-
|
|
4
|
+
import { r as readPersistedSessions, c as configuration } from './types-AO-TVSTa.mjs';
|
|
5
|
+
import { b as sendUserMessage, a as sessionWebUrl } from './index-j2LYx2KW.mjs';
|
|
6
6
|
import 'axios';
|
|
7
7
|
import 'node:util';
|
|
8
8
|
import 'node:os';
|
|
@@ -3,8 +3,8 @@
|
|
|
3
3
|
var chalk = require('chalk');
|
|
4
4
|
var node_fs = require('node:fs');
|
|
5
5
|
var path = require('node:path');
|
|
6
|
-
var index = require('./index-
|
|
7
|
-
var persistence = require('./types-
|
|
6
|
+
var index = require('./index-FxD6Abgx.cjs');
|
|
7
|
+
var persistence = require('./types-DE03map-.cjs');
|
|
8
8
|
require('node:os');
|
|
9
9
|
require('node:crypto');
|
|
10
10
|
require('cross-spawn');
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import chalk from 'chalk';
|
|
2
2
|
import { readFileSync, statSync } from 'node:fs';
|
|
3
3
|
import { resolve } from 'node:path';
|
|
4
|
-
import { c as checkIfDaemonRunningAndCleanupStaleState, s as spawnDaemonSession, a as sessionWebUrl, w as waitForSessionKey, b as sendUserMessage } from './index-
|
|
5
|
-
import { l as logger } from './types-
|
|
4
|
+
import { c as checkIfDaemonRunningAndCleanupStaleState, s as spawnDaemonSession, a as sessionWebUrl, w as waitForSessionKey, b as sendUserMessage } from './index-j2LYx2KW.mjs';
|
|
5
|
+
import { l as logger } from './types-AO-TVSTa.mjs';
|
|
6
6
|
import 'node:os';
|
|
7
7
|
import 'node:crypto';
|
|
8
8
|
import 'cross-spawn';
|
|
@@ -29,7 +29,7 @@ import { SandboxManager } from '@anthropic-ai/sandbox-runtime';
|
|
|
29
29
|
import { Expo } from 'expo-server-sdk';
|
|
30
30
|
|
|
31
31
|
var name = "very-happy-cli";
|
|
32
|
-
var version = "0.2.
|
|
32
|
+
var version = "0.2.88";
|
|
33
33
|
var description = "Remote multi-agent workspace CLI with deep Claude integration, native terminal streaming, and self-hosting.";
|
|
34
34
|
var author = "Kirill Dubovitskiy";
|
|
35
35
|
var contributors = [
|
|
@@ -142,12 +142,12 @@ var dependencies = {
|
|
|
142
142
|
zod: "^4.0.0"
|
|
143
143
|
};
|
|
144
144
|
var optionalDependencies = {
|
|
145
|
-
"very-happy-tools-arm64-darwin": "0.2.
|
|
146
|
-
"very-happy-tools-x64-darwin": "0.2.
|
|
147
|
-
"very-happy-tools-arm64-linux": "0.2.
|
|
148
|
-
"very-happy-tools-x64-linux": "0.2.
|
|
149
|
-
"very-happy-tools-arm64-win32": "0.2.
|
|
150
|
-
"very-happy-tools-x64-win32": "0.2.
|
|
145
|
+
"very-happy-tools-arm64-darwin": "0.2.88",
|
|
146
|
+
"very-happy-tools-x64-darwin": "0.2.88",
|
|
147
|
+
"very-happy-tools-arm64-linux": "0.2.88",
|
|
148
|
+
"very-happy-tools-x64-linux": "0.2.88",
|
|
149
|
+
"very-happy-tools-arm64-win32": "0.2.88",
|
|
150
|
+
"very-happy-tools-x64-win32": "0.2.88"
|
|
151
151
|
};
|
|
152
152
|
var devDependencies = {
|
|
153
153
|
"@slopus/happy-wire": "workspace:*",
|
|
@@ -2534,11 +2534,11 @@ function mapClaudeLogMessageToSessionEnvelopesInternal(message, state) {
|
|
|
2534
2534
|
const usage = pickAssistantUsage(message);
|
|
2535
2535
|
const blocks = Array.isArray(message.message?.content) ? message.message.content : [];
|
|
2536
2536
|
for (const block of blocks) {
|
|
2537
|
-
if (block.type === "text" && typeof block.text === "string") {
|
|
2537
|
+
if (block.type === "text" && typeof block.text === "string" && block.text.trim().length > 0) {
|
|
2538
2538
|
envelopes.push(createEnvelope("agent", { t: "text", text: block.text }, { turn: turnId, subagent, claudeUuid, usage }));
|
|
2539
2539
|
continue;
|
|
2540
2540
|
}
|
|
2541
|
-
if (block.type === "thinking" && typeof block.thinking === "string") {
|
|
2541
|
+
if (block.type === "thinking" && typeof block.thinking === "string" && block.thinking.trim().length > 0) {
|
|
2542
2542
|
envelopes.push(createEnvelope("agent", { t: "text", text: block.thinking, thinking: true }, { turn: turnId, subagent, claudeUuid, usage }));
|
|
2543
2543
|
continue;
|
|
2544
2544
|
}
|
|
@@ -51,7 +51,7 @@ var z__namespace = /*#__PURE__*/_interopNamespaceDefault(z);
|
|
|
51
51
|
var pty__namespace = /*#__PURE__*/_interopNamespaceDefault(pty);
|
|
52
52
|
|
|
53
53
|
var name = "very-happy-cli";
|
|
54
|
-
var version = "0.2.
|
|
54
|
+
var version = "0.2.88";
|
|
55
55
|
var description = "Remote multi-agent workspace CLI with deep Claude integration, native terminal streaming, and self-hosting.";
|
|
56
56
|
var author = "Kirill Dubovitskiy";
|
|
57
57
|
var contributors = [
|
|
@@ -164,12 +164,12 @@ var dependencies = {
|
|
|
164
164
|
zod: "^4.0.0"
|
|
165
165
|
};
|
|
166
166
|
var optionalDependencies = {
|
|
167
|
-
"very-happy-tools-arm64-darwin": "0.2.
|
|
168
|
-
"very-happy-tools-x64-darwin": "0.2.
|
|
169
|
-
"very-happy-tools-arm64-linux": "0.2.
|
|
170
|
-
"very-happy-tools-x64-linux": "0.2.
|
|
171
|
-
"very-happy-tools-arm64-win32": "0.2.
|
|
172
|
-
"very-happy-tools-x64-win32": "0.2.
|
|
167
|
+
"very-happy-tools-arm64-darwin": "0.2.88",
|
|
168
|
+
"very-happy-tools-x64-darwin": "0.2.88",
|
|
169
|
+
"very-happy-tools-arm64-linux": "0.2.88",
|
|
170
|
+
"very-happy-tools-x64-linux": "0.2.88",
|
|
171
|
+
"very-happy-tools-arm64-win32": "0.2.88",
|
|
172
|
+
"very-happy-tools-x64-win32": "0.2.88"
|
|
173
173
|
};
|
|
174
174
|
var devDependencies = {
|
|
175
175
|
"@slopus/happy-wire": "workspace:*",
|
|
@@ -1484,7 +1484,7 @@ class RpcHandlerManager {
|
|
|
1484
1484
|
}
|
|
1485
1485
|
}
|
|
1486
1486
|
|
|
1487
|
-
const __dirname$1 = path$1.dirname(url.fileURLToPath((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('types-
|
|
1487
|
+
const __dirname$1 = path$1.dirname(url.fileURLToPath((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('types-DE03map-.cjs', document.baseURI).href))));
|
|
1488
1488
|
function projectPath() {
|
|
1489
1489
|
const path = path$1.resolve(__dirname$1, "..");
|
|
1490
1490
|
return path;
|
|
@@ -2556,11 +2556,11 @@ function mapClaudeLogMessageToSessionEnvelopesInternal(message, state) {
|
|
|
2556
2556
|
const usage = pickAssistantUsage(message);
|
|
2557
2557
|
const blocks = Array.isArray(message.message?.content) ? message.message.content : [];
|
|
2558
2558
|
for (const block of blocks) {
|
|
2559
|
-
if (block.type === "text" && typeof block.text === "string") {
|
|
2559
|
+
if (block.type === "text" && typeof block.text === "string" && block.text.trim().length > 0) {
|
|
2560
2560
|
envelopes.push(createEnvelope("agent", { t: "text", text: block.text }, { turn: turnId, subagent, claudeUuid, usage }));
|
|
2561
2561
|
continue;
|
|
2562
2562
|
}
|
|
2563
|
-
if (block.type === "thinking" && typeof block.thinking === "string") {
|
|
2563
|
+
if (block.type === "thinking" && typeof block.thinking === "string" && block.thinking.trim().length > 0) {
|
|
2564
2564
|
envelopes.push(createEnvelope("agent", { t: "text", text: block.thinking, thinking: true }, { turn: turnId, subagent, claudeUuid, usage }));
|
|
2565
2565
|
continue;
|
|
2566
2566
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "very-happy-cli",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.88",
|
|
4
4
|
"description": "Remote multi-agent workspace CLI with deep Claude integration, native terminal streaming, and self-hosting.",
|
|
5
5
|
"author": "Kirill Dubovitskiy",
|
|
6
6
|
"contributors": [
|
|
@@ -113,12 +113,12 @@
|
|
|
113
113
|
"zod": "^4.0.0"
|
|
114
114
|
},
|
|
115
115
|
"optionalDependencies": {
|
|
116
|
-
"very-happy-tools-arm64-darwin": "0.2.
|
|
117
|
-
"very-happy-tools-x64-darwin": "0.2.
|
|
118
|
-
"very-happy-tools-arm64-linux": "0.2.
|
|
119
|
-
"very-happy-tools-x64-linux": "0.2.
|
|
120
|
-
"very-happy-tools-arm64-win32": "0.2.
|
|
121
|
-
"very-happy-tools-x64-win32": "0.2.
|
|
116
|
+
"very-happy-tools-arm64-darwin": "0.2.88",
|
|
117
|
+
"very-happy-tools-x64-darwin": "0.2.88",
|
|
118
|
+
"very-happy-tools-arm64-linux": "0.2.88",
|
|
119
|
+
"very-happy-tools-x64-linux": "0.2.88",
|
|
120
|
+
"very-happy-tools-arm64-win32": "0.2.88",
|
|
121
|
+
"very-happy-tools-x64-win32": "0.2.88"
|
|
122
122
|
},
|
|
123
123
|
"devDependencies": {
|
|
124
124
|
"@slopus/happy-wire": "workspace:*",
|