@zonease/happy 0.6.44 → 0.6.45

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-Ct7Z1lwF.cjs → api-CPQUJQGJ.cjs} +3 -3
  2. package/dist/{api-D3j3YL3m.mjs → api-Cj4RF4ga.mjs} +2 -2
  3. package/dist/{auth-W1aK_a-P.cjs → auth-Bk9bRj3Q.cjs} +4 -4
  4. package/dist/{auth-DPe89SQx.mjs → auth-BxRfxsPn.mjs} +2 -2
  5. package/dist/{auth-C2ZyAGMu.mjs → auth-Byjbkudh.mjs} +4 -4
  6. package/dist/{auth-B9kOli6i.cjs → auth-Du-LmcLH.cjs} +2 -2
  7. package/dist/{browser-BPEhi6te.cjs → browser-CBrNk2b6.cjs} +1 -1
  8. package/dist/{browser-Byx5gq-W.mjs → browser-CrNqwWO0.mjs} +1 -1
  9. package/dist/{claudeLocal-BtxBYzs7.mjs → claudeLocal-CR1aG4FT.mjs} +1 -1
  10. package/dist/{claudeLocal-CcarNVE9.cjs → claudeLocal-DMn1kiJq.cjs} +1 -1
  11. package/dist/codex/happyMcpStdioBridge.cjs +8 -0
  12. package/dist/codex/happyMcpStdioBridge.mjs +8 -0
  13. package/dist/{config-DJLOlgjr.mjs → config-DIUIjSc3.mjs} +1 -1
  14. package/dist/{config-Djr2JMWO.cjs → config-DfXlAE9f.cjs} +1 -1
  15. package/dist/{connect-PrUuHNLU.mjs → connect-Blv2AOQ7.mjs} +4 -4
  16. package/dist/{connect-rcgRx9US.cjs → connect-DxKG4c89.cjs} +4 -4
  17. package/dist/{controlClient-FDsMeGVn.cjs → controlClient-Aga5KOuL.cjs} +1 -1
  18. package/dist/{controlClient-DSiES8Un.mjs → controlClient-D-5BGcGC.mjs} +1 -1
  19. package/dist/{cursorApprovalHook-CTJiiPO6.cjs → cursorApprovalHook-DhdW7SxP.cjs} +2 -2
  20. package/dist/{cursorApprovalHook-DGYeNaLe.mjs → cursorApprovalHook-G462ilpH.mjs} +2 -2
  21. package/dist/{cursorApprovalServer-fjPBXSAb.mjs → cursorApprovalServer-CajHEZIy.mjs} +1 -1
  22. package/dist/{cursorApprovalServer-C_wqI7wm.cjs → cursorApprovalServer-DJDjSGu1.cjs} +1 -1
  23. package/dist/{deviceKeys-BYHzWSyg.mjs → deviceKeys-DL_YhAVs.mjs} +2 -2
  24. package/dist/{deviceKeys-DPut1U07.cjs → deviceKeys-DjItabvw.cjs} +2 -2
  25. package/dist/{doctor-BA28TuMy.mjs → doctor-DpCWRLts.mjs} +2 -2
  26. package/dist/{doctor-B_W7odmC.cjs → doctor-s5r5tBV2.cjs} +2 -2
  27. package/dist/{downloadImage-B7MKUI0u.cjs → downloadImage-AYf-3ZYW.cjs} +1 -1
  28. package/dist/{downloadImage-DKWzC11M.mjs → downloadImage-aU6-_LTd.mjs} +1 -1
  29. package/dist/{enroll-Bc3Lke1H.mjs → enroll-AafyH7YB.mjs} +3 -3
  30. package/dist/{enroll-Blqx_Kg8.cjs → enroll-DDmZIfwr.cjs} +3 -3
  31. package/dist/{evidence-jfqT04hc.cjs → evidence-BeL77p_3.cjs} +1 -1
  32. package/dist/{evidence-D8nvQ8pQ.mjs → evidence-s4HSdwJW.mjs} +1 -1
  33. package/dist/{formatImageMessage-CZeSzoFO.cjs → formatImageMessage-D09-zSuq.cjs} +1 -1
  34. package/dist/{formatImageMessage-BFWnadBR.mjs → formatImageMessage-X7lBbNk9.mjs} +1 -1
  35. package/dist/index.cjs +46 -46
  36. package/dist/index.mjs +46 -46
  37. package/dist/{install-nJv8rYWA.cjs → install-CUhg7JSa.cjs} +2 -2
  38. package/dist/{install-DFmp8KKp.cjs → install-CV4tyU-f.cjs} +1 -1
  39. package/dist/{install-ChK8Eb58.mjs → install-D3-4H76L.mjs} +2 -2
  40. package/dist/{install-BvuadnKW.mjs → install-MLAZRCd1.mjs} +1 -1
  41. package/dist/lib.cjs +3 -3
  42. package/dist/lib.mjs +3 -3
  43. package/dist/{loadableToolOutput-D6crYom_.mjs → loadableToolOutput-B8h8vRAi.mjs} +2 -2
  44. package/dist/{loadableToolOutput-CqMfcEh7.cjs → loadableToolOutput-CyxrSX6o.cjs} +2 -2
  45. package/dist/{persistence-DOgft4tZ.cjs → persistence-C8YmO6e-.cjs} +1 -1
  46. package/dist/{persistence-BXtirP1k.mjs → persistence-CIuIRPwE.mjs} +1 -1
  47. package/dist/{push-DykEVhRR.cjs → push-C3zA8d8v.cjs} +6 -6
  48. package/dist/{push-188EjPTP.mjs → push-CmNOCsuP.mjs} +6 -6
  49. package/dist/{registerKillSessionHandler-6loIZYD9.mjs → registerKillSessionHandler-CH_7VXKc.mjs} +63 -5
  50. package/dist/{registerKillSessionHandler-ks8iPY9a.cjs → registerKillSessionHandler-LeIqHfbo.cjs} +63 -5
  51. package/dist/{run-DSJ7IIWW.cjs → run-0LQDK84Z.cjs} +8 -8
  52. package/dist/{run-Dp4_De-r.mjs → run-C4WAd7tO.mjs} +8 -8
  53. package/dist/{runClaude-C3be35z0.cjs → runClaude-C35zHmK5.cjs} +16 -16
  54. package/dist/{runClaude-gj4urJvB.mjs → runClaude-CUKs1uIM.mjs} +15 -15
  55. package/dist/{runCodex-p_fToj9T.cjs → runCodex-DqH5zG0r.cjs} +15 -15
  56. package/dist/{runCodex-DRZidxNB.mjs → runCodex-DyZ2jjPq.mjs} +15 -15
  57. package/dist/{runCursor-CJlqkSYR.cjs → runCursor-CUYlNNzB.cjs} +14 -14
  58. package/dist/{runCursor-SFd9G7X_.mjs → runCursor-DBJr4Grx.mjs} +14 -14
  59. package/dist/{runGemini-lxvXq70R.cjs → runGemini-DR8URN73.cjs} +21 -17
  60. package/dist/{runGemini-BOsfh6dX.mjs → runGemini-wXzzfjlb.mjs} +21 -17
  61. package/dist/{runOneShot-CtzlkF1l.mjs → runOneShot-C7rpjuvK.mjs} +2 -2
  62. package/dist/{runOneShot-BExFkHmA.cjs → runOneShot-CyQgMHdu.cjs} +2 -2
  63. package/dist/{serve-DfvSXAD2.mjs → serve-9sPqPPfs.mjs} +6 -6
  64. package/dist/{serve-Bl1Caf6x.cjs → serve-CLUZny1h.cjs} +6 -6
  65. package/dist/{session--R6FqsxL.cjs → session-DsK6TYKl.cjs} +5 -5
  66. package/dist/{session-BSzNJiAb.mjs → session-DwFwW1If.mjs} +5 -5
  67. package/dist/{sessionKeyCache-CVkksG68.cjs → sessionKeyCache-CCCCQahC.cjs} +1 -1
  68. package/dist/{sessionKeyCache-DYiCIvYC.mjs → sessionKeyCache-Jman_FzK.mjs} +1 -1
  69. package/dist/{sessionList-D3pCseut.mjs → sessionList-CRAr1LIi.mjs} +2 -2
  70. package/dist/{sessionList-C1q9fy5j.cjs → sessionList-jb1iwUO8.cjs} +2 -2
  71. package/dist/{sessionSummary-WpOlgXe1.mjs → sessionSummary-By9LYnr1.mjs} +3 -3
  72. package/dist/{sessionSummary-CUZxEBEZ.cjs → sessionSummary-C4ttdYkc.cjs} +3 -3
  73. package/dist/{setupOfflineReconnection-BeWF3SGN.mjs → setupOfflineReconnection-B8LXjrYU.mjs} +3 -3
  74. package/dist/{setupOfflineReconnection-CixoiWTS.cjs → setupOfflineReconnection-EeK8Zibv.cjs} +3 -3
  75. package/dist/{spawnHappyCLI-hRc7u16s.cjs → spawnHappyCLI-DH1071fN.cjs} +1 -1
  76. package/dist/{spawnHappyCLI-Cyc-69jO.mjs → spawnHappyCLI-ZuC3trh3.mjs} +1 -1
  77. package/dist/{ssh-B_TYtrys.cjs → ssh-DsBRhE6K.cjs} +5 -5
  78. package/dist/{ssh-BsxAgWgG.mjs → ssh-bVM6-eHl.mjs} +5 -5
  79. package/dist/{task-BS4usaxx.mjs → task-QsscHPOu.mjs} +6 -6
  80. package/dist/{task-BInh42e3.cjs → task-rXw2soeh.cjs} +6 -6
  81. package/dist/{uninstall-DNFGxNLl.cjs → uninstall-CFVmL2EA.cjs} +2 -2
  82. package/dist/{uninstall-BKuDaZKB.mjs → uninstall-D-DMUz_6.mjs} +2 -2
  83. package/dist/{update-DC300VOW.mjs → update-CS-sauOX.mjs} +3 -3
  84. package/dist/{update-B9LoI5l8.cjs → update-lVVrNorG.cjs} +3 -3
  85. package/package.json +1 -1
@@ -2,14 +2,14 @@
2
2
 
3
3
  var node_crypto = require('node:crypto');
4
4
  var chalk = require('chalk');
5
- var api = require('./api-Ct7Z1lwF.cjs');
6
- var logger = require('./persistence-DOgft4tZ.cjs');
7
- var run = require('./run-DSJ7IIWW.cjs');
8
- var setupOfflineReconnection = require('./setupOfflineReconnection-CixoiWTS.cjs');
9
- var controlClient = require('./controlClient-FDsMeGVn.cjs');
10
- var registerKillSessionHandler = require('./registerKillSessionHandler-ks8iPY9a.cjs');
5
+ var api = require('./api-CPQUJQGJ.cjs');
6
+ var logger = require('./persistence-C8YmO6e-.cjs');
7
+ var run = require('./run-0LQDK84Z.cjs');
8
+ var setupOfflineReconnection = require('./setupOfflineReconnection-EeK8Zibv.cjs');
9
+ var controlClient = require('./controlClient-Aga5KOuL.cjs');
10
+ var registerKillSessionHandler = require('./registerKillSessionHandler-LeIqHfbo.cjs');
11
11
  var node_child_process = require('node:child_process');
12
- var cursorApprovalServer = require('./cursorApprovalServer-C_wqI7wm.cjs');
12
+ var cursorApprovalServer = require('./cursorApprovalServer-DJDjSGu1.cjs');
13
13
  require('axios');
14
14
  require('node:events');
15
15
  require('socket.io-client');
@@ -35,23 +35,23 @@ require('tweetnacl');
35
35
  require('@stablelib/base64');
36
36
  require('node:readline');
37
37
  require('expo-server-sdk');
38
- require('./sessionKeyCache-CVkksG68.cjs');
38
+ require('./sessionKeyCache-CCCCQahC.cjs');
39
39
  require('fs');
40
40
  require('os');
41
41
  require('tmp');
42
- require('./auth-B9kOli6i.cjs');
42
+ require('./auth-Du-LmcLH.cjs');
43
43
  require('qrcode-terminal');
44
- require('./browser-BPEhi6te.cjs');
44
+ require('./browser-CBrNk2b6.cjs');
45
45
  require('open');
46
46
  require('react');
47
47
  require('ink');
48
- require('./doctor-B_W7odmC.cjs');
48
+ require('./doctor-s5r5tBV2.cjs');
49
49
  require('./doctor-C08m5Z9f.cjs');
50
50
  require('ps-list');
51
51
  require('cross-spawn');
52
- require('./spawnHappyCLI-hRc7u16s.cjs');
53
- require('./deviceKeys-DPut1U07.cjs');
54
- require('./install-DFmp8KKp.cjs');
52
+ require('./spawnHappyCLI-DH1071fN.cjs');
53
+ require('./deviceKeys-DjItabvw.cjs');
54
+ require('./install-CV4tyU-f.cjs');
55
55
  require('./trimIdent-4gvk9Wk6.cjs');
56
56
  require('fastify');
57
57
  require('fastify-type-provider-zod');
@@ -1,13 +1,13 @@
1
1
  import { randomUUID } from 'node:crypto';
2
2
  import chalk from 'chalk';
3
- import { A as ApiClient } from './api-D3j3YL3m.mjs';
4
- import { l as logger, a as readSettings } from './persistence-BXtirP1k.mjs';
5
- import { i as initialMachineMetadata } from './run-Dp4_De-r.mjs';
6
- import { B as BasePermissionHandler, c as createSessionMetadata, s as setupOfflineReconnection } from './setupOfflineReconnection-BeWF3SGN.mjs';
7
- import { notifyDaemonSessionStarted } from './controlClient-DSiES8Un.mjs';
8
- import { c as createMcpContext, r as registerKillSessionHandler } from './registerKillSessionHandler-6loIZYD9.mjs';
3
+ import { A as ApiClient } from './api-Cj4RF4ga.mjs';
4
+ import { l as logger, a as readSettings } from './persistence-CIuIRPwE.mjs';
5
+ import { i as initialMachineMetadata } from './run-C4WAd7tO.mjs';
6
+ import { B as BasePermissionHandler, c as createSessionMetadata, s as setupOfflineReconnection } from './setupOfflineReconnection-B8LXjrYU.mjs';
7
+ import { notifyDaemonSessionStarted } from './controlClient-D-5BGcGC.mjs';
8
+ import { c as createMcpContext, r as registerKillSessionHandler } from './registerKillSessionHandler-CH_7VXKc.mjs';
9
9
  import { spawn } from 'node:child_process';
10
- import { n as normalizeCursorTool, C as CursorApprovalBridge } from './cursorApprovalServer-fjPBXSAb.mjs';
10
+ import { n as normalizeCursorTool, C as CursorApprovalBridge } from './cursorApprovalServer-CajHEZIy.mjs';
11
11
  import 'axios';
12
12
  import 'node:events';
13
13
  import 'socket.io-client';
@@ -33,23 +33,23 @@ import 'tweetnacl';
33
33
  import '@stablelib/base64';
34
34
  import 'node:readline';
35
35
  import 'expo-server-sdk';
36
- import './sessionKeyCache-DYiCIvYC.mjs';
36
+ import './sessionKeyCache-Jman_FzK.mjs';
37
37
  import 'fs';
38
38
  import 'os';
39
39
  import 'tmp';
40
- import './auth-DPe89SQx.mjs';
40
+ import './auth-BxRfxsPn.mjs';
41
41
  import 'qrcode-terminal';
42
- import './browser-Byx5gq-W.mjs';
42
+ import './browser-CrNqwWO0.mjs';
43
43
  import 'open';
44
44
  import 'react';
45
45
  import 'ink';
46
- import './doctor-BA28TuMy.mjs';
46
+ import './doctor-DpCWRLts.mjs';
47
47
  import './doctor-ON7pN5G5.mjs';
48
48
  import 'ps-list';
49
49
  import 'cross-spawn';
50
- import './spawnHappyCLI-Cyc-69jO.mjs';
51
- import './deviceKeys-BYHzWSyg.mjs';
52
- import './install-BvuadnKW.mjs';
50
+ import './spawnHappyCLI-ZuC3trh3.mjs';
51
+ import './deviceKeys-DL_YhAVs.mjs';
52
+ import './install-MLAZRCd1.mjs';
53
53
  import './trimIdent-BAjmv_TG.mjs';
54
54
  import 'fastify';
55
55
  import 'fastify-type-provider-zod';
@@ -3,21 +3,21 @@
3
3
  var ink = require('ink');
4
4
  var React = require('react');
5
5
  var node_crypto = require('node:crypto');
6
- var api = require('./api-Ct7Z1lwF.cjs');
7
- var logger = require('./persistence-DOgft4tZ.cjs');
8
- var setupOfflineReconnection = require('./setupOfflineReconnection-CixoiWTS.cjs');
9
- var run = require('./run-DSJ7IIWW.cjs');
10
- var downloadImage = require('./downloadImage-B7MKUI0u.cjs');
11
- var registerKillSessionHandler = require('./registerKillSessionHandler-ks8iPY9a.cjs');
12
- var controlClient = require('./controlClient-FDsMeGVn.cjs');
6
+ var api = require('./api-CPQUJQGJ.cjs');
7
+ var logger = require('./persistence-C8YmO6e-.cjs');
8
+ var setupOfflineReconnection = require('./setupOfflineReconnection-EeK8Zibv.cjs');
9
+ var run = require('./run-0LQDK84Z.cjs');
10
+ var downloadImage = require('./downloadImage-AYf-3ZYW.cjs');
11
+ var registerKillSessionHandler = require('./registerKillSessionHandler-LeIqHfbo.cjs');
12
+ var controlClient = require('./controlClient-Aga5KOuL.cjs');
13
13
  var node_child_process = require('node:child_process');
14
14
  var sdk = require('@agentclientprotocol/sdk');
15
15
  var time = require('./time-Bj2HRkKH.cjs');
16
16
  var index = require('./index-BeKrqPYR.cjs');
17
- var loadableToolOutput = require('./loadableToolOutput-CqMfcEh7.cjs');
17
+ var loadableToolOutput = require('./loadableToolOutput-CyxrSX6o.cjs');
18
18
  var constants = require('./constants-E_UWYTo3.cjs');
19
- var config = require('./config-Djr2JMWO.cjs');
20
- var formatImageMessage = require('./formatImageMessage-CZeSzoFO.cjs');
19
+ var config = require('./config-DfXlAE9f.cjs');
20
+ var formatImageMessage = require('./formatImageMessage-D09-zSuq.cjs');
21
21
  require('axios');
22
22
  require('node:events');
23
23
  require('socket.io-client');
@@ -40,22 +40,22 @@ require('tweetnacl');
40
40
  require('@stablelib/base64');
41
41
  require('node:readline');
42
42
  require('expo-server-sdk');
43
- require('./sessionKeyCache-CVkksG68.cjs');
43
+ require('./sessionKeyCache-CCCCQahC.cjs');
44
44
  require('chalk');
45
45
  require('fs');
46
46
  require('os');
47
47
  require('tmp');
48
- require('./auth-B9kOli6i.cjs');
48
+ require('./auth-Du-LmcLH.cjs');
49
49
  require('qrcode-terminal');
50
- require('./browser-BPEhi6te.cjs');
50
+ require('./browser-CBrNk2b6.cjs');
51
51
  require('open');
52
- require('./doctor-B_W7odmC.cjs');
52
+ require('./doctor-s5r5tBV2.cjs');
53
53
  require('./doctor-C08m5Z9f.cjs');
54
54
  require('ps-list');
55
55
  require('cross-spawn');
56
- require('./spawnHappyCLI-hRc7u16s.cjs');
57
- require('./deviceKeys-DPut1U07.cjs');
58
- require('./install-DFmp8KKp.cjs');
56
+ require('./spawnHappyCLI-DH1071fN.cjs');
57
+ require('./deviceKeys-DjItabvw.cjs');
58
+ require('./install-CV4tyU-f.cjs');
59
59
  require('./trimIdent-4gvk9Wk6.cjs');
60
60
  require('fastify');
61
61
  require('fastify-type-provider-zod');
@@ -181,6 +181,10 @@ const GEMINI_TOOL_PATTERNS = [
181
181
  name: "preview_html",
182
182
  inputFields: ["html"]
183
183
  }),
184
+ createTool({
185
+ name: "submit_bug",
186
+ inputFields: ["description"]
187
+ }),
184
188
  // Gemini built-in
185
189
  createTool({
186
190
  name: "save_memory",
@@ -1,21 +1,21 @@
1
1
  import { useStdout, useInput, Box, Text, render } from 'ink';
2
2
  import React, { useState, useRef, useEffect, useCallback } from 'react';
3
3
  import { randomUUID } from 'node:crypto';
4
- import { c as saveDiffRecords, h as readGeminiSessionLog, d as connectionState, A as ApiClient, G as GeminiSessionWriter, j as buildResumeContextFromSessionLog } from './api-D3j3YL3m.mjs';
5
- import { l as logger, p as packageJson, i as isDebug, a as readSettings } from './persistence-BXtirP1k.mjs';
6
- import { B as BasePermissionHandler, c as createSessionMetadata, s as setupOfflineReconnection } from './setupOfflineReconnection-BeWF3SGN.mjs';
7
- import { i as initialMachineMetadata, s as stopCaffeinate } from './run-Dp4_De-r.mjs';
8
- import { M as MessageQueue2, h as hashObject, a as MessageBuffer, p as parseClear } from './downloadImage-DKWzC11M.mjs';
9
- import { r as registerKillSessionHandler, c as createMcpContext } from './registerKillSessionHandler-6loIZYD9.mjs';
10
- import { notifyDaemonSessionStarted } from './controlClient-DSiES8Un.mjs';
4
+ import { c as saveDiffRecords, h as readGeminiSessionLog, d as connectionState, A as ApiClient, G as GeminiSessionWriter, j as buildResumeContextFromSessionLog } from './api-Cj4RF4ga.mjs';
5
+ import { l as logger, p as packageJson, i as isDebug, a as readSettings } from './persistence-CIuIRPwE.mjs';
6
+ import { B as BasePermissionHandler, c as createSessionMetadata, s as setupOfflineReconnection } from './setupOfflineReconnection-B8LXjrYU.mjs';
7
+ import { i as initialMachineMetadata, s as stopCaffeinate } from './run-C4WAd7tO.mjs';
8
+ import { M as MessageQueue2, h as hashObject, a as MessageBuffer, p as parseClear } from './downloadImage-aU6-_LTd.mjs';
9
+ import { r as registerKillSessionHandler, c as createMcpContext } from './registerKillSessionHandler-CH_7VXKc.mjs';
10
+ import { notifyDaemonSessionStarted } from './controlClient-D-5BGcGC.mjs';
11
11
  import { spawn } from 'node:child_process';
12
12
  import { ndJsonStream, ClientSideConnection } from '@agentclientprotocol/sdk';
13
13
  import { d as delay } from './time-DgsBLJA_.mjs';
14
14
  import { G as GEMINI_MODEL_MODES } from './index-DTV7drqs.mjs';
15
- import { a as handleAgentMessageChunk, b as handleToolCallUpdate, c as handleAgentThoughtChunk, d as handleToolCall, e as handleLegacyMessageChunk, f as handlePlanUpdate, g as handleThinkingUpdate, B as BaseReasoningProcessor, s as summarizeBashToolOutput, h as handleConfigMetadataEvent } from './loadableToolOutput-D6crYom_.mjs';
15
+ import { a as handleAgentMessageChunk, b as handleToolCallUpdate, c as handleAgentThoughtChunk, d as handleToolCall, e as handleLegacyMessageChunk, f as handlePlanUpdate, g as handleThinkingUpdate, B as BaseReasoningProcessor, s as summarizeBashToolOutput, h as handleConfigMetadataEvent } from './loadableToolOutput-B8h8vRAi.mjs';
16
16
  import { a as GEMINI_API_KEY_ENV, b as GOOGLE_API_KEY_ENV, G as GEMINI_MODEL_ENV, g as getFirstTurnInstruction } from './constants-pmXZGibX.mjs';
17
- import { readGeminiLocalConfig, determineGeminiModel, getGeminiModelSource, getInitialGeminiModel, saveGeminiModelToConfig } from './config-DJLOlgjr.mjs';
18
- import { f as formatMessageForGemini } from './formatImageMessage-BFWnadBR.mjs';
17
+ import { readGeminiLocalConfig, determineGeminiModel, getGeminiModelSource, getInitialGeminiModel, saveGeminiModelToConfig } from './config-DIUIjSc3.mjs';
18
+ import { f as formatMessageForGemini } from './formatImageMessage-X7lBbNk9.mjs';
19
19
  import 'axios';
20
20
  import 'node:events';
21
21
  import 'socket.io-client';
@@ -38,22 +38,22 @@ import 'tweetnacl';
38
38
  import '@stablelib/base64';
39
39
  import 'node:readline';
40
40
  import 'expo-server-sdk';
41
- import './sessionKeyCache-DYiCIvYC.mjs';
41
+ import './sessionKeyCache-Jman_FzK.mjs';
42
42
  import 'chalk';
43
43
  import 'fs';
44
44
  import 'os';
45
45
  import 'tmp';
46
- import './auth-DPe89SQx.mjs';
46
+ import './auth-BxRfxsPn.mjs';
47
47
  import 'qrcode-terminal';
48
- import './browser-Byx5gq-W.mjs';
48
+ import './browser-CrNqwWO0.mjs';
49
49
  import 'open';
50
- import './doctor-BA28TuMy.mjs';
50
+ import './doctor-DpCWRLts.mjs';
51
51
  import './doctor-ON7pN5G5.mjs';
52
52
  import 'ps-list';
53
53
  import 'cross-spawn';
54
- import './spawnHappyCLI-Cyc-69jO.mjs';
55
- import './deviceKeys-BYHzWSyg.mjs';
56
- import './install-BvuadnKW.mjs';
54
+ import './spawnHappyCLI-ZuC3trh3.mjs';
55
+ import './deviceKeys-DL_YhAVs.mjs';
56
+ import './install-MLAZRCd1.mjs';
57
57
  import './trimIdent-BAjmv_TG.mjs';
58
58
  import 'fastify';
59
59
  import 'fastify-type-provider-zod';
@@ -179,6 +179,10 @@ const GEMINI_TOOL_PATTERNS = [
179
179
  name: "preview_html",
180
180
  inputFields: ["html"]
181
181
  }),
182
+ createTool({
183
+ name: "submit_bug",
184
+ inputFields: ["description"]
185
+ }),
182
186
  // Gemini built-in
183
187
  createTool({
184
188
  name: "save_memory",
@@ -1,7 +1,7 @@
1
1
  import { spawn } from 'node:child_process';
2
2
  import { existsSync } from 'node:fs';
3
- import { c as claudeCliPath } from './claudeLocal-BtxBYzs7.mjs';
4
- import { l as logger } from './persistence-BXtirP1k.mjs';
3
+ import { c as claudeCliPath } from './claudeLocal-CR1aG4FT.mjs';
4
+ import { l as logger } from './persistence-CIuIRPwE.mjs';
5
5
  import { i as isModelModeForAgent, M as MODEL_MODE_DEFAULT, p as parseCodexModelMode, a as parseClaudeModelMode } from './index-DTV7drqs.mjs';
6
6
  import { i as isOrchestratorProvider, O as ORCHESTRATOR_ENV_KEYS, d as decodePromptFromBase64 } from './common-BdNgghUJ.mjs';
7
7
  import 'node:path';
@@ -2,8 +2,8 @@
2
2
 
3
3
  var node_child_process = require('node:child_process');
4
4
  var fs = require('node:fs');
5
- var claudeLocal = require('./claudeLocal-CcarNVE9.cjs');
6
- var logger = require('./persistence-DOgft4tZ.cjs');
5
+ var claudeLocal = require('./claudeLocal-DMn1kiJq.cjs');
6
+ var logger = require('./persistence-C8YmO6e-.cjs');
7
7
  var index = require('./index-BeKrqPYR.cjs');
8
8
  var common = require('./common-CZvSRU4p.cjs');
9
9
  require('node:path');
@@ -1,10 +1,10 @@
1
1
  import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
2
2
  import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';
3
- import { c as configuration, e as encodeBase64, f as encrypt, h as decodeBase64, g as decrypt, r as readCredentials } from './persistence-BXtirP1k.mjs';
4
- import { s as sessionListInputSchema, r as runSessionList } from './sessionList-D3pCseut.mjs';
3
+ import { c as configuration, e as encodeBase64, f as encrypt, h as decodeBase64, g as decrypt, r as readCredentials } from './persistence-CIuIRPwE.mjs';
4
+ import { s as sessionListInputSchema, r as runSessionList } from './sessionList-CRAr1LIi.mjs';
5
5
  import axios from 'axios';
6
6
  import { z } from 'zod';
7
- import { f as fetchSessionById, a as decryptMessage, s as sessionSummaryInputSchema, r as runSessionSummary } from './sessionSummary-WpOlgXe1.mjs';
7
+ import { f as fetchSessionById, a as decryptMessage, s as sessionSummaryInputSchema, r as runSessionSummary } from './sessionSummary-By9LYnr1.mjs';
8
8
  import { randomUUID } from 'node:crypto';
9
9
  import 'node:fs/promises';
10
10
  import 'node:fs';
@@ -13,14 +13,14 @@ import 'node:path';
13
13
  import 'tweetnacl';
14
14
  import 'chalk';
15
15
  import 'fs';
16
- import './auth-DPe89SQx.mjs';
16
+ import './auth-BxRfxsPn.mjs';
17
17
  import 'qrcode-terminal';
18
18
  import './time-DgsBLJA_.mjs';
19
- import './browser-Byx5gq-W.mjs';
19
+ import './browser-CrNqwWO0.mjs';
20
20
  import 'open';
21
21
  import 'react';
22
22
  import 'ink';
23
- import './sessionKeyCache-DYiCIvYC.mjs';
23
+ import './sessionKeyCache-Jman_FzK.mjs';
24
24
 
25
25
  const PREVIEW_LIMIT = 200;
26
26
  const TAIL_MESSAGES = 5;
@@ -2,11 +2,11 @@
2
2
 
3
3
  var mcp_js = require('@modelcontextprotocol/sdk/server/mcp.js');
4
4
  var stdio_js = require('@modelcontextprotocol/sdk/server/stdio.js');
5
- var logger = require('./persistence-DOgft4tZ.cjs');
6
- var sessionList = require('./sessionList-C1q9fy5j.cjs');
5
+ var logger = require('./persistence-C8YmO6e-.cjs');
6
+ var sessionList = require('./sessionList-jb1iwUO8.cjs');
7
7
  var axios = require('axios');
8
8
  var z = require('zod');
9
- var sessionSummary = require('./sessionSummary-CUZxEBEZ.cjs');
9
+ var sessionSummary = require('./sessionSummary-C4ttdYkc.cjs');
10
10
  var node_crypto = require('node:crypto');
11
11
  require('node:fs/promises');
12
12
  require('node:fs');
@@ -15,14 +15,14 @@ require('node:path');
15
15
  require('tweetnacl');
16
16
  require('chalk');
17
17
  require('fs');
18
- require('./auth-B9kOli6i.cjs');
18
+ require('./auth-Du-LmcLH.cjs');
19
19
  require('qrcode-terminal');
20
20
  require('./time-Bj2HRkKH.cjs');
21
- require('./browser-BPEhi6te.cjs');
21
+ require('./browser-CBrNk2b6.cjs');
22
22
  require('open');
23
23
  require('react');
24
24
  require('ink');
25
- require('./sessionKeyCache-CVkksG68.cjs');
25
+ require('./sessionKeyCache-CCCCQahC.cjs');
26
26
 
27
27
  const PREVIEW_LIMIT = 200;
28
28
  const TAIL_MESSAGES = 5;
@@ -1,8 +1,8 @@
1
1
  'use strict';
2
2
 
3
3
  var chalk = require('chalk');
4
- var logger = require('./persistence-DOgft4tZ.cjs');
5
- var sessionSummary = require('./sessionSummary-CUZxEBEZ.cjs');
4
+ var logger = require('./persistence-C8YmO6e-.cjs');
5
+ var sessionSummary = require('./sessionSummary-C4ttdYkc.cjs');
6
6
  require('node:fs/promises');
7
7
  require('node:fs');
8
8
  require('node:os');
@@ -12,14 +12,14 @@ require('node:crypto');
12
12
  require('tweetnacl');
13
13
  require('fs');
14
14
  require('axios');
15
- require('./auth-B9kOli6i.cjs');
15
+ require('./auth-Du-LmcLH.cjs');
16
16
  require('qrcode-terminal');
17
17
  require('./time-Bj2HRkKH.cjs');
18
- require('./browser-BPEhi6te.cjs');
18
+ require('./browser-CBrNk2b6.cjs');
19
19
  require('open');
20
20
  require('react');
21
21
  require('ink');
22
- require('./sessionKeyCache-CVkksG68.cjs');
22
+ require('./sessionKeyCache-CCCCQahC.cjs');
23
23
 
24
24
  function printSessionHelp() {
25
25
  console.log(`
@@ -1,6 +1,6 @@
1
1
  import chalk from 'chalk';
2
- import { r as readCredentials } from './persistence-BXtirP1k.mjs';
3
- import { r as runSessionSummary } from './sessionSummary-WpOlgXe1.mjs';
2
+ import { r as readCredentials } from './persistence-CIuIRPwE.mjs';
3
+ import { r as runSessionSummary } from './sessionSummary-By9LYnr1.mjs';
4
4
  import 'node:fs/promises';
5
5
  import 'node:fs';
6
6
  import 'node:os';
@@ -10,14 +10,14 @@ import 'node:crypto';
10
10
  import 'tweetnacl';
11
11
  import 'fs';
12
12
  import 'axios';
13
- import './auth-DPe89SQx.mjs';
13
+ import './auth-BxRfxsPn.mjs';
14
14
  import 'qrcode-terminal';
15
15
  import './time-DgsBLJA_.mjs';
16
- import './browser-Byx5gq-W.mjs';
16
+ import './browser-CrNqwWO0.mjs';
17
17
  import 'open';
18
18
  import 'react';
19
19
  import 'ink';
20
- import './sessionKeyCache-DYiCIvYC.mjs';
20
+ import './sessionKeyCache-Jman_FzK.mjs';
21
21
 
22
22
  function printSessionHelp() {
23
23
  console.log(`
@@ -3,7 +3,7 @@
3
3
  var fs = require('node:fs');
4
4
  var promises = require('node:fs/promises');
5
5
  var path = require('node:path');
6
- var logger = require('./persistence-DOgft4tZ.cjs');
6
+ var logger = require('./persistence-C8YmO6e-.cjs');
7
7
 
8
8
  function keyPath(sessionId) {
9
9
  return path.join(logger.configuration.sessionKeysDir, `${sessionId}.key`);
@@ -1,7 +1,7 @@
1
1
  import { existsSync, mkdirSync, readFileSync } from 'node:fs';
2
2
  import { writeFile } from 'node:fs/promises';
3
3
  import { join } from 'node:path';
4
- import { c as configuration, j as encryptWithDataKey, e as encodeBase64, k as decryptWithDataKey, h as decodeBase64 } from './persistence-BXtirP1k.mjs';
4
+ import { c as configuration, j as encryptWithDataKey, e as encodeBase64, k as decryptWithDataKey, h as decodeBase64 } from './persistence-CIuIRPwE.mjs';
5
5
 
6
6
  function keyPath(sessionId) {
7
7
  return join(configuration.sessionKeysDir, `${sessionId}.key`);
@@ -1,7 +1,7 @@
1
1
  import axios from 'axios';
2
2
  import { z } from 'zod';
3
- import { c as configuration } from './persistence-BXtirP1k.mjs';
4
- import { d as decryptSessionRow } from './sessionSummary-WpOlgXe1.mjs';
3
+ import { c as configuration } from './persistence-CIuIRPwE.mjs';
4
+ import { d as decryptSessionRow } from './sessionSummary-By9LYnr1.mjs';
5
5
 
6
6
  const sessionListInputSchema = {
7
7
  status: z.enum(["active", "archived", "all"]).optional().describe("Filter by session state. Default: all."),
@@ -2,8 +2,8 @@
2
2
 
3
3
  var axios = require('axios');
4
4
  var z = require('zod');
5
- var logger = require('./persistence-DOgft4tZ.cjs');
6
- var sessionSummary = require('./sessionSummary-CUZxEBEZ.cjs');
5
+ var logger = require('./persistence-C8YmO6e-.cjs');
6
+ var sessionSummary = require('./sessionSummary-C4ttdYkc.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-CIuIRPwE.mjs';
4
+ import { decryptWithEphemeralKey } from './auth-BxRfxsPn.mjs';
5
+ import { r as readCachedSessionKey } from './sessionKeyCache-Jman_FzK.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-C8YmO6e-.cjs');
6
+ var auth = require('./auth-Du-LmcLH.cjs');
7
+ var sessionKeyCache = require('./sessionKeyCache-CCCCQahC.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-CIuIRPwE.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-Cj4RF4ga.mjs';
7
+ import { d as detectGitWorktree } from './registerKillSessionHandler-CH_7VXKc.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-C8YmO6e-.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-CPQUJQGJ.cjs');
9
+ var registerKillSessionHandler = require('./registerKillSessionHandler-LeIqHfbo.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-C8YmO6e-.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-CIuIRPwE.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-C8YmO6e-.cjs');
5
+ var deviceKeys = require('./deviceKeys-DjItabvw.cjs');
6
+ var controlClient = require('./controlClient-Aga5KOuL.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-Du-LmcLH.cjs');
18
18
  require('qrcode-terminal');
19
19
  require('./time-Bj2HRkKH.cjs');
20
- require('./browser-BPEhi6te.cjs');
20
+ require('./browser-CBrNk2b6.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-CIuIRPwE.mjs';
3
+ import { e as ensureDeviceKey, l as listDevices, r as readCachedDeviceNames, a as readCachedDeviceKey, p as pruneDeviceAliases, d as deviceExec } from './deviceKeys-DL_YhAVs.mjs';
4
+ import { execOnDeviceViaDaemon } from './controlClient-D-5BGcGC.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-BxRfxsPn.mjs';
16
16
  import 'qrcode-terminal';
17
17
  import './time-DgsBLJA_.mjs';
18
- import './browser-Byx5gq-W.mjs';
18
+ import './browser-CrNqwWO0.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-CIuIRPwE.mjs';
4
+ import { r as runSessionList } from './sessionList-CRAr1LIi.mjs';
5
+ import { r as runSessionSummary } from './sessionSummary-By9LYnr1.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-BxRfxsPn.mjs';
16
16
  import 'qrcode-terminal';
17
17
  import './time-DgsBLJA_.mjs';
18
- import './browser-Byx5gq-W.mjs';
18
+ import './browser-CrNqwWO0.mjs';
19
19
  import 'open';
20
20
  import 'react';
21
21
  import 'ink';
22
- import './sessionKeyCache-DYiCIvYC.mjs';
22
+ import './sessionKeyCache-Jman_FzK.mjs';
23
23
 
24
24
  function printTaskHelp() {
25
25
  console.log(`