@zonease/happy 0.6.44 → 0.6.46

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.
Files changed (85) hide show
  1. package/dist/{api-D3j3YL3m.mjs → api-CxdKKE-w.mjs} +2 -2
  2. package/dist/{api-Ct7Z1lwF.cjs → api-DGgccR6B.cjs} +3 -3
  3. package/dist/{auth-B9kOli6i.cjs → auth-Bf-VkNDK.cjs} +2 -2
  4. package/dist/{auth-DPe89SQx.mjs → auth-C7oghkN1.mjs} +2 -2
  5. package/dist/{auth-C2ZyAGMu.mjs → auth-CcMvoMIH.mjs} +4 -4
  6. package/dist/{auth-W1aK_a-P.cjs → auth-XO55Tcek.cjs} +4 -4
  7. package/dist/{browser-BPEhi6te.cjs → browser-Cn_RttD9.cjs} +1 -1
  8. package/dist/{browser-Byx5gq-W.mjs → browser-DedYcRMI.mjs} +1 -1
  9. package/dist/{claudeLocal-CcarNVE9.cjs → claudeLocal-CupQ03sq.cjs} +1 -1
  10. package/dist/{claudeLocal-BtxBYzs7.mjs → claudeLocal-G2km5rB3.mjs} +1 -1
  11. package/dist/codex/happyMcpStdioBridge.cjs +24 -0
  12. package/dist/codex/happyMcpStdioBridge.mjs +24 -0
  13. package/dist/{config-Djr2JMWO.cjs → config-BDbpXufc.cjs} +1 -1
  14. package/dist/{config-DJLOlgjr.mjs → config-DimzIdjy.mjs} +1 -1
  15. package/dist/{connect-PrUuHNLU.mjs → connect-CjFR0V4l.mjs} +4 -4
  16. package/dist/{connect-rcgRx9US.cjs → connect-DWElyqHy.cjs} +4 -4
  17. package/dist/{controlClient-DSiES8Un.mjs → controlClient-C8MF8Qxi.mjs} +1 -1
  18. package/dist/{controlClient-FDsMeGVn.cjs → controlClient-DTS16hKY.cjs} +1 -1
  19. package/dist/{cursorApprovalHook-CTJiiPO6.cjs → cursorApprovalHook-B9dUHp7N.cjs} +2 -2
  20. package/dist/{cursorApprovalHook-DGYeNaLe.mjs → cursorApprovalHook-DmVCQFLi.mjs} +2 -2
  21. package/dist/{cursorApprovalServer-C_wqI7wm.cjs → cursorApprovalServer-BkQ3JeOR.cjs} +1 -1
  22. package/dist/{cursorApprovalServer-fjPBXSAb.mjs → cursorApprovalServer-DeyL8InE.mjs} +1 -1
  23. package/dist/{deviceKeys-BYHzWSyg.mjs → deviceKeys-CUdnv0Yf.mjs} +2 -2
  24. package/dist/{deviceKeys-DPut1U07.cjs → deviceKeys-CcXkzhNB.cjs} +2 -2
  25. package/dist/{doctor-B_W7odmC.cjs → doctor-B1Tm6BSe.cjs} +2 -2
  26. package/dist/{doctor-BA28TuMy.mjs → doctor-C59DXnte.mjs} +2 -2
  27. package/dist/{downloadImage-B7MKUI0u.cjs → downloadImage-fpJ_y7st.cjs} +1 -1
  28. package/dist/{downloadImage-DKWzC11M.mjs → downloadImage-tso3BJBM.mjs} +1 -1
  29. package/dist/{enroll-Bc3Lke1H.mjs → enroll-DJwHeZQv.mjs} +3 -3
  30. package/dist/{enroll-Blqx_Kg8.cjs → enroll-qLqzLVlX.cjs} +3 -3
  31. package/dist/{evidence-D8nvQ8pQ.mjs → evidence-B2t1PILg.mjs} +1 -1
  32. package/dist/{evidence-jfqT04hc.cjs → evidence-IqM8YLhr.cjs} +1 -1
  33. package/dist/{formatImageMessage-CZeSzoFO.cjs → formatImageMessage-BzBJVvC5.cjs} +1 -1
  34. package/dist/{formatImageMessage-BFWnadBR.mjs → formatImageMessage-R9j4fTqw.mjs} +1 -1
  35. package/dist/index.cjs +46 -46
  36. package/dist/index.mjs +46 -46
  37. package/dist/{install-ChK8Eb58.mjs → install-BvOb90B1.mjs} +2 -2
  38. package/dist/{install-DFmp8KKp.cjs → install-C4UgnaVt.cjs} +1 -1
  39. package/dist/{install-nJv8rYWA.cjs → install-CAWGzh-y.cjs} +2 -2
  40. package/dist/{install-BvuadnKW.mjs → install-DVsfVhR4.mjs} +1 -1
  41. package/dist/lib.cjs +3 -3
  42. package/dist/lib.mjs +3 -3
  43. package/dist/{loadableToolOutput-CqMfcEh7.cjs → loadableToolOutput-JbPnwQD1.cjs} +2 -2
  44. package/dist/{loadableToolOutput-D6crYom_.mjs → loadableToolOutput-Pxv9LNrC.mjs} +2 -2
  45. package/dist/{persistence-BXtirP1k.mjs → persistence-BGgHa7Mf.mjs} +1 -1
  46. package/dist/{persistence-DOgft4tZ.cjs → persistence-DflTrEXm.cjs} +1 -1
  47. package/dist/{push-DykEVhRR.cjs → push-CavNF4-w.cjs} +6 -6
  48. package/dist/{push-188EjPTP.mjs → push-DOwuDkzH.mjs} +6 -6
  49. package/dist/{registerKillSessionHandler-ks8iPY9a.cjs → registerKillSessionHandler-B9qo40Js.cjs} +170 -6
  50. package/dist/{registerKillSessionHandler-6loIZYD9.mjs → registerKillSessionHandler-Bcg7ph3f.mjs} +171 -7
  51. package/dist/{run-Dp4_De-r.mjs → run-CS7zNIOF.mjs} +8 -8
  52. package/dist/{run-DSJ7IIWW.cjs → run-vWYjxpj7.cjs} +8 -8
  53. package/dist/{runClaude-C3be35z0.cjs → runClaude-DPv8wwz5.cjs} +16 -16
  54. package/dist/{runClaude-gj4urJvB.mjs → runClaude-uzuESWTN.mjs} +15 -15
  55. package/dist/{runCodex-DRZidxNB.mjs → runCodex-BQj7asY1.mjs} +15 -15
  56. package/dist/{runCodex-p_fToj9T.cjs → runCodex-CukxaOtw.cjs} +15 -15
  57. package/dist/{runCursor-SFd9G7X_.mjs → runCursor-DDFZIPow.mjs} +14 -14
  58. package/dist/{runCursor-CJlqkSYR.cjs → runCursor-DRTH8eya.cjs} +14 -14
  59. package/dist/{runGemini-BOsfh6dX.mjs → runGemini-Dq1n_3Il.mjs} +29 -17
  60. package/dist/{runGemini-lxvXq70R.cjs → runGemini-fCjqaRxV.cjs} +29 -17
  61. package/dist/{runOneShot-CtzlkF1l.mjs → runOneShot-B58c3uwD.mjs} +2 -2
  62. package/dist/{runOneShot-BExFkHmA.cjs → runOneShot-cFeh3BT0.cjs} +2 -2
  63. package/dist/{serve-DfvSXAD2.mjs → serve-DlQJZwiG.mjs} +6 -6
  64. package/dist/{serve-Bl1Caf6x.cjs → serve-Dow3CBz9.cjs} +6 -6
  65. package/dist/{session--R6FqsxL.cjs → session-DKY0LmV1.cjs} +5 -5
  66. package/dist/{session-BSzNJiAb.mjs → session-xYoR4mck.mjs} +5 -5
  67. package/dist/{sessionKeyCache-CVkksG68.cjs → sessionKeyCache-B7Cr3M7u.cjs} +1 -1
  68. package/dist/{sessionKeyCache-DYiCIvYC.mjs → sessionKeyCache-Pyx1Ydwx.mjs} +1 -1
  69. package/dist/{sessionList-D3pCseut.mjs → sessionList-C4JvaNZK.mjs} +2 -2
  70. package/dist/{sessionList-C1q9fy5j.cjs → sessionList-DGnoq1GY.cjs} +2 -2
  71. package/dist/{sessionSummary-WpOlgXe1.mjs → sessionSummary-CTGgh_U0.mjs} +3 -3
  72. package/dist/{sessionSummary-CUZxEBEZ.cjs → sessionSummary-DBDFmDZc.cjs} +3 -3
  73. package/dist/{setupOfflineReconnection-BeWF3SGN.mjs → setupOfflineReconnection-CD7ix1EA.mjs} +3 -3
  74. package/dist/{setupOfflineReconnection-CixoiWTS.cjs → setupOfflineReconnection-Cjcq7f53.cjs} +3 -3
  75. package/dist/{spawnHappyCLI-hRc7u16s.cjs → spawnHappyCLI-Bf5U61Km.cjs} +1 -1
  76. package/dist/{spawnHappyCLI-Cyc-69jO.mjs → spawnHappyCLI-CcZ1W5ck.mjs} +1 -1
  77. package/dist/{ssh-B_TYtrys.cjs → ssh-DVtjvpXO.cjs} +5 -5
  78. package/dist/{ssh-BsxAgWgG.mjs → ssh-X7pcNZhV.mjs} +5 -5
  79. package/dist/{task-BS4usaxx.mjs → task-B38P7nUL.mjs} +6 -6
  80. package/dist/{task-BInh42e3.cjs → task-CDCM3UoN.cjs} +6 -6
  81. package/dist/{uninstall-DNFGxNLl.cjs → uninstall-BzSiuDRd.cjs} +2 -2
  82. package/dist/{uninstall-BKuDaZKB.mjs → uninstall-CnsQ85RV.mjs} +2 -2
  83. package/dist/{update-DC300VOW.mjs → update-CffXErUk.mjs} +3 -3
  84. package/dist/{update-B9LoI5l8.cjs → update-VzbqRv5g.cjs} +3 -3
  85. package/package.json +1 -1
@@ -2,8 +2,8 @@
2
2
 
3
3
  var axios = require('axios');
4
4
  var z = require('zod');
5
- var logger = require('./persistence-DOgft4tZ.cjs');
6
- var sessionSummary = require('./sessionSummary-CUZxEBEZ.cjs');
5
+ var logger = require('./persistence-DflTrEXm.cjs');
6
+ var sessionSummary = require('./sessionSummary-DBDFmDZc.cjs');
7
7
 
8
8
  const sessionListInputSchema = {
9
9
  status: z.z.enum(["active", "archived", "all"]).optional().describe("Filter by session state. Default: all."),
@@ -1,8 +1,8 @@
1
1
  import axios from 'axios';
2
2
  import { z } from 'zod';
3
- import { q as decryptLegacy, h as decodeBase64, k as decryptWithDataKey, c as configuration } from './persistence-BXtirP1k.mjs';
4
- import { decryptWithEphemeralKey } from './auth-DPe89SQx.mjs';
5
- import { r as readCachedSessionKey } from './sessionKeyCache-DYiCIvYC.mjs';
3
+ import { q as decryptLegacy, h as decodeBase64, k as decryptWithDataKey, c as configuration } from './persistence-BGgHa7Mf.mjs';
4
+ import { decryptWithEphemeralKey } from './auth-C7oghkN1.mjs';
5
+ import { r as readCachedSessionKey } from './sessionKeyCache-Pyx1Ydwx.mjs';
6
6
 
7
7
  function resolveSessionKey(credentials, dataEncryptionKey, sessionId) {
8
8
  if (credentials.encryption.type === "legacy") {
@@ -2,9 +2,9 @@
2
2
 
3
3
  var axios = require('axios');
4
4
  var z = require('zod');
5
- var logger = require('./persistence-DOgft4tZ.cjs');
6
- var auth = require('./auth-B9kOli6i.cjs');
7
- var sessionKeyCache = require('./sessionKeyCache-CVkksG68.cjs');
5
+ var logger = require('./persistence-DflTrEXm.cjs');
6
+ var auth = require('./auth-Bf-VkNDK.cjs');
7
+ var sessionKeyCache = require('./sessionKeyCache-B7Cr3M7u.cjs');
8
8
 
9
9
  function resolveSessionKey(credentials, dataEncryptionKey, sessionId) {
10
10
  if (credentials.encryption.type === "legacy") {
@@ -1,10 +1,10 @@
1
- import { l as logger, c as configuration, p as packageJson } from './persistence-BXtirP1k.mjs';
1
+ import { l as logger, c as configuration, p as packageJson } from './persistence-BGgHa7Mf.mjs';
2
2
  import { readFileSync, existsSync, readdirSync } from 'node:fs';
3
3
  import os, { homedir } from 'node:os';
4
4
  import { join, basename, dirname } from 'node:path';
5
5
  import { p as projectPath } from './projectPath-BTBIMB57.mjs';
6
- import { r as resolveToolsDir, b as startOfflineReconnection } from './api-D3j3YL3m.mjs';
7
- import { d as detectGitWorktree } from './registerKillSessionHandler-6loIZYD9.mjs';
6
+ import { r as resolveToolsDir, b as startOfflineReconnection } from './api-CxdKKE-w.mjs';
7
+ import { d as detectGitWorktree } from './registerKillSessionHandler-Bcg7ph3f.mjs';
8
8
 
9
9
  class BasePermissionHandler {
10
10
  pendingRequests = /* @__PURE__ */ new Map();
@@ -1,12 +1,12 @@
1
1
  'use strict';
2
2
 
3
- var logger = require('./persistence-DOgft4tZ.cjs');
3
+ var logger = require('./persistence-DflTrEXm.cjs');
4
4
  var fs = require('node:fs');
5
5
  var os = require('node:os');
6
6
  var path = require('node:path');
7
7
  var projectPath = require('./projectPath-ChLhdOyt.cjs');
8
- var api = require('./api-Ct7Z1lwF.cjs');
9
- var registerKillSessionHandler = require('./registerKillSessionHandler-ks8iPY9a.cjs');
8
+ var api = require('./api-DGgccR6B.cjs');
9
+ var registerKillSessionHandler = require('./registerKillSessionHandler-B9qo40Js.cjs');
10
10
 
11
11
  class BasePermissionHandler {
12
12
  pendingRequests = /* @__PURE__ */ new Map();
@@ -3,7 +3,7 @@
3
3
  var child_process = require('child_process');
4
4
  var path = require('node:path');
5
5
  var projectPath = require('./projectPath-ChLhdOyt.cjs');
6
- var logger = require('./persistence-DOgft4tZ.cjs');
6
+ var logger = require('./persistence-DflTrEXm.cjs');
7
7
  var fs = require('node:fs');
8
8
 
9
9
  let cachedRuntime = null;
@@ -1,7 +1,7 @@
1
1
  import { spawn } from 'child_process';
2
2
  import { join } from 'node:path';
3
3
  import { p as projectPath } from './projectPath-BTBIMB57.mjs';
4
- import { l as logger } from './persistence-BXtirP1k.mjs';
4
+ import { l as logger } from './persistence-BGgHa7Mf.mjs';
5
5
  import { existsSync } from 'node:fs';
6
6
 
7
7
  let cachedRuntime = null;
@@ -1,9 +1,9 @@
1
1
  'use strict';
2
2
 
3
3
  var socket_ioClient = require('socket.io-client');
4
- var logger = require('./persistence-DOgft4tZ.cjs');
5
- var deviceKeys = require('./deviceKeys-DPut1U07.cjs');
6
- var controlClient = require('./controlClient-FDsMeGVn.cjs');
4
+ var logger = require('./persistence-DflTrEXm.cjs');
5
+ var deviceKeys = require('./deviceKeys-CcXkzhNB.cjs');
6
+ var controlClient = require('./controlClient-DTS16hKY.cjs');
7
7
  require('node:fs/promises');
8
8
  require('node:fs');
9
9
  require('node:os');
@@ -14,10 +14,10 @@ require('tweetnacl');
14
14
  require('chalk');
15
15
  require('fs');
16
16
  require('axios');
17
- require('./auth-B9kOli6i.cjs');
17
+ require('./auth-Bf-VkNDK.cjs');
18
18
  require('qrcode-terminal');
19
19
  require('./time-Bj2HRkKH.cjs');
20
- require('./browser-BPEhi6te.cjs');
20
+ require('./browser-Cn_RttD9.cjs');
21
21
  require('open');
22
22
  require('react');
23
23
  require('ink');
@@ -1,7 +1,7 @@
1
1
  import { io } from 'socket.io-client';
2
- import { c as configuration, g as decrypt, h as decodeBase64, e as encodeBase64, f as encrypt } from './persistence-BXtirP1k.mjs';
3
- import { e as ensureDeviceKey, l as listDevices, r as readCachedDeviceNames, a as readCachedDeviceKey, p as pruneDeviceAliases, d as deviceExec } from './deviceKeys-BYHzWSyg.mjs';
4
- import { execOnDeviceViaDaemon } from './controlClient-DSiES8Un.mjs';
2
+ import { c as configuration, g as decrypt, h as decodeBase64, e as encodeBase64, f as encrypt } from './persistence-BGgHa7Mf.mjs';
3
+ import { e as ensureDeviceKey, l as listDevices, r as readCachedDeviceNames, a as readCachedDeviceKey, p as pruneDeviceAliases, d as deviceExec } from './deviceKeys-CUdnv0Yf.mjs';
4
+ import { execOnDeviceViaDaemon } from './controlClient-C8MF8Qxi.mjs';
5
5
  import 'node:fs/promises';
6
6
  import 'node:fs';
7
7
  import 'node:os';
@@ -12,10 +12,10 @@ import 'tweetnacl';
12
12
  import 'chalk';
13
13
  import 'fs';
14
14
  import 'axios';
15
- import './auth-DPe89SQx.mjs';
15
+ import './auth-C7oghkN1.mjs';
16
16
  import 'qrcode-terminal';
17
17
  import './time-DgsBLJA_.mjs';
18
- import './browser-Byx5gq-W.mjs';
18
+ import './browser-DedYcRMI.mjs';
19
19
  import 'open';
20
20
  import 'react';
21
21
  import 'ink';
@@ -1,8 +1,8 @@
1
1
  import chalk from 'chalk';
2
2
  import { resolve } from 'node:path';
3
- import { r as readCredentials } from './persistence-BXtirP1k.mjs';
4
- import { r as runSessionList } from './sessionList-D3pCseut.mjs';
5
- import { r as runSessionSummary } from './sessionSummary-WpOlgXe1.mjs';
3
+ import { r as readCredentials } from './persistence-BGgHa7Mf.mjs';
4
+ import { r as runSessionList } from './sessionList-C4JvaNZK.mjs';
5
+ import { r as runSessionSummary } from './sessionSummary-CTGgh_U0.mjs';
6
6
  import { p as parseWorkflowArgs, s as stringFlag, b as booleanFlag, n as numberFlag, a as printOrWriteOutput } from './workflowCommon-B0d01Y_a.mjs';
7
7
  import 'node:fs/promises';
8
8
  import 'node:fs';
@@ -12,14 +12,14 @@ import 'node:crypto';
12
12
  import 'tweetnacl';
13
13
  import 'fs';
14
14
  import 'axios';
15
- import './auth-DPe89SQx.mjs';
15
+ import './auth-C7oghkN1.mjs';
16
16
  import 'qrcode-terminal';
17
17
  import './time-DgsBLJA_.mjs';
18
- import './browser-Byx5gq-W.mjs';
18
+ import './browser-DedYcRMI.mjs';
19
19
  import 'open';
20
20
  import 'react';
21
21
  import 'ink';
22
- import './sessionKeyCache-DYiCIvYC.mjs';
22
+ import './sessionKeyCache-Pyx1Ydwx.mjs';
23
23
 
24
24
  function printTaskHelp() {
25
25
  console.log(`
@@ -2,9 +2,9 @@
2
2
 
3
3
  var chalk = require('chalk');
4
4
  var path = require('node:path');
5
- var logger = require('./persistence-DOgft4tZ.cjs');
6
- var sessionList = require('./sessionList-C1q9fy5j.cjs');
7
- var sessionSummary = require('./sessionSummary-CUZxEBEZ.cjs');
5
+ var logger = require('./persistence-DflTrEXm.cjs');
6
+ var sessionList = require('./sessionList-DGnoq1GY.cjs');
7
+ var sessionSummary = require('./sessionSummary-DBDFmDZc.cjs');
8
8
  var workflowCommon = require('./workflowCommon-Bl568-rt.cjs');
9
9
  require('node:fs/promises');
10
10
  require('node:fs');
@@ -14,14 +14,14 @@ require('node:crypto');
14
14
  require('tweetnacl');
15
15
  require('fs');
16
16
  require('axios');
17
- require('./auth-B9kOli6i.cjs');
17
+ require('./auth-Bf-VkNDK.cjs');
18
18
  require('qrcode-terminal');
19
19
  require('./time-Bj2HRkKH.cjs');
20
- require('./browser-BPEhi6te.cjs');
20
+ require('./browser-Cn_RttD9.cjs');
21
21
  require('open');
22
22
  require('react');
23
23
  require('ink');
24
- require('./sessionKeyCache-CVkksG68.cjs');
24
+ require('./sessionKeyCache-B7Cr3M7u.cjs');
25
25
 
26
26
  function printTaskHelp() {
27
27
  console.log(`
@@ -1,12 +1,12 @@
1
1
  'use strict';
2
2
 
3
- var logger = require('./persistence-DOgft4tZ.cjs');
3
+ var logger = require('./persistence-DflTrEXm.cjs');
4
4
  var fs = require('fs');
5
5
  var child_process = require('child_process');
6
6
  var path = require('path');
7
7
  var os = require('os');
8
8
  var systemdScope = require('./systemdScope-DW3-UoKB.cjs');
9
- var controlClient = require('./controlClient-FDsMeGVn.cjs');
9
+ var controlClient = require('./controlClient-DTS16hKY.cjs');
10
10
  require('node:fs/promises');
11
11
  require('node:fs');
12
12
  require('node:os');
@@ -1,10 +1,10 @@
1
- import { l as logger } from './persistence-BXtirP1k.mjs';
1
+ import { l as logger } from './persistence-BGgHa7Mf.mjs';
2
2
  import { existsSync, unlinkSync } from 'fs';
3
3
  import { execSync } from 'child_process';
4
4
  import { join } from 'path';
5
5
  import os from 'os';
6
6
  import { s as systemdScopeFor, i as isRootUser, S as SERVICE_NAME } from './systemdScope-BeOtAkhk.mjs';
7
- import { stopDaemon } from './controlClient-DSiES8Un.mjs';
7
+ import { stopDaemon } from './controlClient-C8MF8Qxi.mjs';
8
8
  import 'node:fs/promises';
9
9
  import 'node:fs';
10
10
  import 'node:os';
@@ -1,9 +1,9 @@
1
1
  import chalk from 'chalk';
2
2
  import { execFileSync, execSync } from 'node:child_process';
3
3
  import { realpathSync } from 'node:fs';
4
- import { p as packageJson } from './persistence-BXtirP1k.mjs';
5
- import { checkIfDaemonRunningAndCleanupStaleState, stopDaemon } from './controlClient-DSiES8Un.mjs';
6
- import { s as spawnHappyCLI } from './spawnHappyCLI-Cyc-69jO.mjs';
4
+ import { p as packageJson } from './persistence-BGgHa7Mf.mjs';
5
+ import { checkIfDaemonRunningAndCleanupStaleState, stopDaemon } from './controlClient-C8MF8Qxi.mjs';
6
+ import { s as spawnHappyCLI } from './spawnHappyCLI-CcZ1W5ck.mjs';
7
7
  import 'node:fs/promises';
8
8
  import 'node:os';
9
9
  import 'node:path';
@@ -3,9 +3,9 @@
3
3
  var chalk = require('chalk');
4
4
  var node_child_process = require('node:child_process');
5
5
  var fs = require('node:fs');
6
- var logger = require('./persistence-DOgft4tZ.cjs');
7
- var controlClient = require('./controlClient-FDsMeGVn.cjs');
8
- var spawnHappyCLI = require('./spawnHappyCLI-hRc7u16s.cjs');
6
+ var logger = require('./persistence-DflTrEXm.cjs');
7
+ var controlClient = require('./controlClient-DTS16hKY.cjs');
8
+ var spawnHappyCLI = require('./spawnHappyCLI-Bf5U61Km.cjs');
9
9
  require('node:fs/promises');
10
10
  require('node:os');
11
11
  require('node:path');
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zonease/happy",
3
- "version": "0.6.44",
3
+ "version": "0.6.46",
4
4
  "description": "Mobile and Web client for Claude Code, Codex, and Gemini",
5
5
  "author": "ZonEaseTech",
6
6
  "license": "MIT",