@zhigang1992/happy-cli 0.12.10 → 0.12.11
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/README.md +6 -0
- package/dist/{index-xZm9eMZ-.mjs → index-Z_1PFUM2.mjs} +4 -4
- package/dist/{index-B2T-8Qkp.cjs → index-kN77bT9j.cjs} +5 -5
- package/dist/index.cjs +2 -2
- package/dist/index.mjs +2 -2
- package/dist/lib.cjs +1 -1
- package/dist/lib.mjs +1 -1
- package/dist/{list-DwEmJUfq.mjs → list-CkDUkqjR.mjs} +1 -1
- package/dist/{list-CE0RKOOh.cjs → list-DTBBqufH.cjs} +1 -1
- package/dist/{prompt-B4TvNDA2.mjs → prompt-ChEWrDOB.mjs} +1 -1
- package/dist/{prompt-IezYY014.cjs → prompt-DbTKMvNz.cjs} +1 -1
- package/dist/{runCodex-CFnERFiI.cjs → runCodex-BKM5EQtE.cjs} +2 -2
- package/dist/{runCodex-CjK_Hx1-.mjs → runCodex-kOPypLpq.mjs} +2 -2
- package/dist/{types-DeW4Ii33.mjs → types-BOay0dlI.mjs} +3 -3
- package/dist/{types-jTJmEbfZ.cjs → types-DK1d73BF.cjs} +4 -4
- package/package.json +3 -3
package/README.md
CHANGED
|
@@ -65,6 +65,12 @@ This will:
|
|
|
65
65
|
- `HAPPY_DISABLE_CAFFEINATE` - Disable macOS sleep prevention (set to `true`, `1`, or `yes`)
|
|
66
66
|
- `HAPPY_EXPERIMENTAL` - Enable experimental features (set to `true`, `1`, or `yes`)
|
|
67
67
|
|
|
68
|
+
## Recommended MCP Servers
|
|
69
|
+
|
|
70
|
+
These MCP servers work well with Happy:
|
|
71
|
+
|
|
72
|
+
- **[@zhigang1992/uploadfile-mcp](https://github.com/zhigang1992/upload-mcp)** - Upload local files to get shareable public URLs. Useful for sharing generated images, CSVs, and other files from AI sessions.
|
|
73
|
+
|
|
68
74
|
## Requirements
|
|
69
75
|
|
|
70
76
|
- Node.js >= 20.0.0
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import chalk from 'chalk';
|
|
2
2
|
import os$1, { homedir } from 'node:os';
|
|
3
3
|
import { randomUUID, randomBytes, createHmac } from 'node:crypto';
|
|
4
|
-
import { l as logger, p as projectPath, j as backoff, k as delay, R as RawJSONLinesSchema, m as AsyncLock, c as configuration, n as readDaemonState, o as clearDaemonState, i as packageJson, r as readSettings, q as readCredentials, g as encodeBase64, u as updateSettings, s as encodeBase64Url, d as decodeBase64, w as writeCredentialsLegacy, t as writeCredentialsDataKey, v as acquireDaemonLock, x as writeDaemonState, A as ApiClient, y as releaseDaemonLock, z as authChallenge, B as clearCredentials, C as clearMachineId, D as getLatestDaemonLog } from './types-
|
|
4
|
+
import { l as logger, p as projectPath, j as backoff, k as delay, R as RawJSONLinesSchema, m as AsyncLock, c as configuration, n as readDaemonState, o as clearDaemonState, i as packageJson, r as readSettings, q as readCredentials, g as encodeBase64, u as updateSettings, s as encodeBase64Url, d as decodeBase64, w as writeCredentialsLegacy, t as writeCredentialsDataKey, v as acquireDaemonLock, x as writeDaemonState, A as ApiClient, y as releaseDaemonLock, z as authChallenge, B as clearCredentials, C as clearMachineId, D as getLatestDaemonLog } from './types-BOay0dlI.mjs';
|
|
5
5
|
import { spawn, execSync, execFileSync } from 'node:child_process';
|
|
6
6
|
import { resolve, join } from 'node:path';
|
|
7
7
|
import { createInterface } from 'node:readline';
|
|
@@ -6397,7 +6397,7 @@ async function handleConnectVendor(vendor, displayName) {
|
|
|
6397
6397
|
return;
|
|
6398
6398
|
} else if (subcommand === "codex") {
|
|
6399
6399
|
try {
|
|
6400
|
-
const { runCodex } = await import('./runCodex-
|
|
6400
|
+
const { runCodex } = await import('./runCodex-kOPypLpq.mjs');
|
|
6401
6401
|
let startedBy = void 0;
|
|
6402
6402
|
for (let i = 1; i < args.length; i++) {
|
|
6403
6403
|
if (args[i] === "--started-by") {
|
|
@@ -6442,7 +6442,7 @@ async function handleConnectVendor(vendor, displayName) {
|
|
|
6442
6442
|
} else if (subcommand === "list") {
|
|
6443
6443
|
try {
|
|
6444
6444
|
const { credentials } = await authAndSetupMachineIfNeeded();
|
|
6445
|
-
const { listSessions } = await import('./list-
|
|
6445
|
+
const { listSessions } = await import('./list-CkDUkqjR.mjs');
|
|
6446
6446
|
let sessionId;
|
|
6447
6447
|
let titleFilter;
|
|
6448
6448
|
let recentMsgs;
|
|
@@ -6544,7 +6544,7 @@ Examples:
|
|
|
6544
6544
|
process.exit(1);
|
|
6545
6545
|
}
|
|
6546
6546
|
const { credentials } = await authAndSetupMachineIfNeeded();
|
|
6547
|
-
const { promptSession } = await import('./prompt-
|
|
6547
|
+
const { promptSession } = await import('./prompt-ChEWrDOB.mjs');
|
|
6548
6548
|
await promptSession(credentials, sessionId, promptText, timeoutMinutes ?? void 0);
|
|
6549
6549
|
} catch (error) {
|
|
6550
6550
|
console.error(chalk.red("Error:"), error instanceof Error ? error.message : "Unknown error");
|
|
@@ -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 types = require('./types-
|
|
6
|
+
var types = require('./types-DK1d73BF.cjs');
|
|
7
7
|
var node_child_process = require('node:child_process');
|
|
8
8
|
var node_path = require('node:path');
|
|
9
9
|
var node_readline = require('node:readline');
|
|
@@ -1089,7 +1089,7 @@ class AbortError extends Error {
|
|
|
1089
1089
|
}
|
|
1090
1090
|
}
|
|
1091
1091
|
|
|
1092
|
-
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-
|
|
1092
|
+
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-kN77bT9j.cjs', document.baseURI).href)));
|
|
1093
1093
|
const __dirname$1 = node_path.join(__filename$1, "..");
|
|
1094
1094
|
function getDefaultClaudeCodePath() {
|
|
1095
1095
|
return node_path.join(__dirname$1, "..", "..", "..", "node_modules", "@anthropic-ai", "claude-code", "cli.js");
|
|
@@ -6420,7 +6420,7 @@ async function handleConnectVendor(vendor, displayName) {
|
|
|
6420
6420
|
return;
|
|
6421
6421
|
} else if (subcommand === "codex") {
|
|
6422
6422
|
try {
|
|
6423
|
-
const { runCodex } = await Promise.resolve().then(function () { return require('./runCodex-
|
|
6423
|
+
const { runCodex } = await Promise.resolve().then(function () { return require('./runCodex-BKM5EQtE.cjs'); });
|
|
6424
6424
|
let startedBy = void 0;
|
|
6425
6425
|
for (let i = 1; i < args.length; i++) {
|
|
6426
6426
|
if (args[i] === "--started-by") {
|
|
@@ -6465,7 +6465,7 @@ async function handleConnectVendor(vendor, displayName) {
|
|
|
6465
6465
|
} else if (subcommand === "list") {
|
|
6466
6466
|
try {
|
|
6467
6467
|
const { credentials } = await authAndSetupMachineIfNeeded();
|
|
6468
|
-
const { listSessions } = await Promise.resolve().then(function () { return require('./list-
|
|
6468
|
+
const { listSessions } = await Promise.resolve().then(function () { return require('./list-DTBBqufH.cjs'); });
|
|
6469
6469
|
let sessionId;
|
|
6470
6470
|
let titleFilter;
|
|
6471
6471
|
let recentMsgs;
|
|
@@ -6567,7 +6567,7 @@ Examples:
|
|
|
6567
6567
|
process.exit(1);
|
|
6568
6568
|
}
|
|
6569
6569
|
const { credentials } = await authAndSetupMachineIfNeeded();
|
|
6570
|
-
const { promptSession } = await Promise.resolve().then(function () { return require('./prompt-
|
|
6570
|
+
const { promptSession } = await Promise.resolve().then(function () { return require('./prompt-DbTKMvNz.cjs'); });
|
|
6571
6571
|
await promptSession(credentials, sessionId, promptText, timeoutMinutes ?? void 0);
|
|
6572
6572
|
} catch (error) {
|
|
6573
6573
|
console.error(chalk.red("Error:"), error instanceof Error ? error.message : "Unknown error");
|
package/dist/index.cjs
CHANGED
package/dist/index.mjs
CHANGED
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-BOay0dlI.mjs';
|
|
2
2
|
import 'axios';
|
|
3
3
|
import 'chalk';
|
|
4
4
|
import 'fs';
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { c as configuration, l as logger, d as decodeBase64, b as decrypt, f as formatTimeAgo, e as libsodiumDecryptFromPublicKey } from './types-
|
|
1
|
+
import { c as configuration, l as logger, d as decodeBase64, b as decrypt, f as formatTimeAgo, e as libsodiumDecryptFromPublicKey } from './types-BOay0dlI.mjs';
|
|
2
2
|
import axios from 'axios';
|
|
3
3
|
import { existsSync, readdirSync, statSync, readFileSync } from 'fs';
|
|
4
4
|
import { join } from 'path';
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { c as configuration, b as decrypt, d as decodeBase64, l as logger, g as encodeBase64, h as encrypt } from './types-
|
|
1
|
+
import { c as configuration, b as decrypt, d as decodeBase64, l as logger, g as encodeBase64, h as encrypt } from './types-BOay0dlI.mjs';
|
|
2
2
|
import axios from 'axios';
|
|
3
3
|
import { io } from 'socket.io-client';
|
|
4
4
|
import 'chalk';
|
|
@@ -2,14 +2,14 @@
|
|
|
2
2
|
|
|
3
3
|
var ink = require('ink');
|
|
4
4
|
var React = require('react');
|
|
5
|
-
var types = require('./types-
|
|
5
|
+
var types = require('./types-DK1d73BF.cjs');
|
|
6
6
|
var index_js = require('@modelcontextprotocol/sdk/client/index.js');
|
|
7
7
|
var stdio_js = require('@modelcontextprotocol/sdk/client/stdio.js');
|
|
8
8
|
var z = require('zod');
|
|
9
9
|
var types_js = require('@modelcontextprotocol/sdk/types.js');
|
|
10
10
|
var child_process = require('child_process');
|
|
11
11
|
var node_crypto = require('node:crypto');
|
|
12
|
-
var index = require('./index-
|
|
12
|
+
var index = require('./index-kN77bT9j.cjs');
|
|
13
13
|
var os = require('node:os');
|
|
14
14
|
var node_path = require('node:path');
|
|
15
15
|
var fs = require('node:fs');
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import { useStdout, useInput, Box, Text, render } from 'ink';
|
|
2
2
|
import React, { useState, useRef, useEffect, useCallback } from 'react';
|
|
3
|
-
import { l as logger, A as ApiClient, r as readSettings, p as projectPath, c as configuration, i as packageJson } from './types-
|
|
3
|
+
import { l as logger, A as ApiClient, r as readSettings, p as projectPath, c as configuration, i as packageJson } from './types-BOay0dlI.mjs';
|
|
4
4
|
import { Client } from '@modelcontextprotocol/sdk/client/index.js';
|
|
5
5
|
import { StdioClientTransport } from '@modelcontextprotocol/sdk/client/stdio.js';
|
|
6
6
|
import { z } from 'zod';
|
|
7
7
|
import { ElicitRequestSchema } from '@modelcontextprotocol/sdk/types.js';
|
|
8
8
|
import { execSync } from 'child_process';
|
|
9
9
|
import { randomUUID } from 'node:crypto';
|
|
10
|
-
import { i as initialMachineMetadata, n as notifyDaemonSessionStarted, M as MessageQueue2, h as hashObject, r as registerKillSessionHandler, a as MessageBuffer, s as startHappyServer, t as trimIdent, b as stopCaffeinate } from './index-
|
|
10
|
+
import { i as initialMachineMetadata, n as notifyDaemonSessionStarted, M as MessageQueue2, h as hashObject, r as registerKillSessionHandler, a as MessageBuffer, s as startHappyServer, t as trimIdent, b as stopCaffeinate } from './index-Z_1PFUM2.mjs';
|
|
11
11
|
import os from 'node:os';
|
|
12
12
|
import { resolve, join } from 'node:path';
|
|
13
13
|
import fs from 'node:fs';
|
|
@@ -20,7 +20,7 @@ import { fileURLToPath } from 'url';
|
|
|
20
20
|
import { Expo } from 'expo-server-sdk';
|
|
21
21
|
|
|
22
22
|
var name = "@zhigang1992/happy-cli";
|
|
23
|
-
var version = "0.12.
|
|
23
|
+
var version = "0.12.11";
|
|
24
24
|
var description = "Mobile and Web client for Claude Code and Codex";
|
|
25
25
|
var author = "Kirill Dubovitskiy";
|
|
26
26
|
var license = "MIT";
|
|
@@ -86,8 +86,8 @@ var scripts = {
|
|
|
86
86
|
release: "release-it"
|
|
87
87
|
};
|
|
88
88
|
var dependencies = {
|
|
89
|
-
"@anthropic-ai/claude-code": "2.0.
|
|
90
|
-
"@anthropic-ai/sdk": "0.
|
|
89
|
+
"@anthropic-ai/claude-code": "2.0.76",
|
|
90
|
+
"@anthropic-ai/sdk": "0.71.2",
|
|
91
91
|
"@elevenlabs/elevenlabs-js": "^2.25.1",
|
|
92
92
|
"@iarna/toml": "^3.0.0",
|
|
93
93
|
"@modelcontextprotocol/sdk": "^1.15.1",
|
|
@@ -41,7 +41,7 @@ function _interopNamespaceDefault(e) {
|
|
|
41
41
|
var z__namespace = /*#__PURE__*/_interopNamespaceDefault(z);
|
|
42
42
|
|
|
43
43
|
var name = "@zhigang1992/happy-cli";
|
|
44
|
-
var version = "0.12.
|
|
44
|
+
var version = "0.12.11";
|
|
45
45
|
var description = "Mobile and Web client for Claude Code and Codex";
|
|
46
46
|
var author = "Kirill Dubovitskiy";
|
|
47
47
|
var license = "MIT";
|
|
@@ -107,8 +107,8 @@ var scripts = {
|
|
|
107
107
|
release: "release-it"
|
|
108
108
|
};
|
|
109
109
|
var dependencies = {
|
|
110
|
-
"@anthropic-ai/claude-code": "2.0.
|
|
111
|
-
"@anthropic-ai/sdk": "0.
|
|
110
|
+
"@anthropic-ai/claude-code": "2.0.76",
|
|
111
|
+
"@anthropic-ai/sdk": "0.71.2",
|
|
112
112
|
"@elevenlabs/elevenlabs-js": "^2.25.1",
|
|
113
113
|
"@iarna/toml": "^3.0.0",
|
|
114
114
|
"@modelcontextprotocol/sdk": "^1.15.1",
|
|
@@ -1150,7 +1150,7 @@ class RpcHandlerManager {
|
|
|
1150
1150
|
}
|
|
1151
1151
|
}
|
|
1152
1152
|
|
|
1153
|
-
const __dirname$1 = path.dirname(url.fileURLToPath((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('types-
|
|
1153
|
+
const __dirname$1 = path.dirname(url.fileURLToPath((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('types-DK1d73BF.cjs', document.baseURI).href))));
|
|
1154
1154
|
function projectPath() {
|
|
1155
1155
|
const path$1 = path.resolve(__dirname$1, "..");
|
|
1156
1156
|
return path$1;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@zhigang1992/happy-cli",
|
|
3
|
-
"version": "0.12.
|
|
3
|
+
"version": "0.12.11",
|
|
4
4
|
"description": "Mobile and Web client for Claude Code and Codex",
|
|
5
5
|
"author": "Kirill Dubovitskiy",
|
|
6
6
|
"license": "MIT",
|
|
@@ -66,8 +66,8 @@
|
|
|
66
66
|
"release": "release-it"
|
|
67
67
|
},
|
|
68
68
|
"dependencies": {
|
|
69
|
-
"@anthropic-ai/claude-code": "2.0.
|
|
70
|
-
"@anthropic-ai/sdk": "0.
|
|
69
|
+
"@anthropic-ai/claude-code": "2.0.76",
|
|
70
|
+
"@anthropic-ai/sdk": "0.71.2",
|
|
71
71
|
"@elevenlabs/elevenlabs-js": "^2.25.1",
|
|
72
72
|
"@iarna/toml": "^3.0.0",
|
|
73
73
|
"@modelcontextprotocol/sdk": "^1.15.1",
|