happy-imou-cloud 2.1.39 → 2.1.41
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/{BaseReasoningProcessor-BUTolvO5.cjs → BaseReasoningProcessor-DAPsauUX.cjs} +2 -2
- package/dist/{BaseReasoningProcessor-Cbp6sIDm.mjs → BaseReasoningProcessor-Dica2zdX.mjs} +2 -2
- package/dist/{ProviderSelectionHandler-B22eXuym.cjs → ProviderSelectionHandler-4nuTd8AP.cjs} +2 -2
- package/dist/{ProviderSelectionHandler-DrSgStLw.mjs → ProviderSelectionHandler-CmeZ92yO.mjs} +2 -2
- package/dist/{api-BoeZDGwx.cjs → api-C_Tnx4UG.cjs} +131 -5
- package/dist/{api-wcqkneTg.mjs → api-CwNEbJBM.mjs} +131 -6
- package/dist/{command-CkYq_KwA.cjs → command-C3RwwPVD.cjs} +2 -2
- package/dist/{command-DcgK0y3F.mjs → command-D0FxDynx.mjs} +2 -2
- package/dist/{index-B9mt95QV.mjs → index-D5m2Duxd.mjs} +7 -7
- package/dist/{index-Cgor8CE7.cjs → index-Dh0qGrEd.cjs} +10 -10
- package/dist/index.cjs +2 -2
- package/dist/index.mjs +2 -2
- package/dist/lib.cjs +1 -1
- package/dist/lib.d.cts +195 -40
- package/dist/lib.d.mts +195 -40
- package/dist/lib.mjs +1 -1
- package/dist/{registerKillSessionHandler-Buc97BEh.mjs → registerKillSessionHandler-6JloVYkb.mjs} +132 -7
- package/dist/{registerKillSessionHandler-DtXhn2Cd.cjs → registerKillSessionHandler-Bkh8uLhC.cjs} +132 -7
- package/dist/{runClaude-BYKNCDEU.mjs → runClaude-Bng_IsE7.mjs} +59 -5
- package/dist/{runClaude-CwXQwmgw.cjs → runClaude-mIFO7YxF.cjs} +59 -5
- package/dist/{runCodex-DqAddhDE.mjs → runCodex-DAc6flez.mjs} +34 -8
- package/dist/{runCodex-BkB_YKhV.cjs → runCodex-cNuxGshy.cjs} +34 -8
- package/dist/{runGemini-3jkfOtlr.mjs → runGemini-DdXj8ltI.mjs} +65 -7
- package/dist/{runGemini-B4uXPrue.cjs → runGemini-DsRFV8WN.cjs} +65 -7
- package/package.json +1 -1
|
@@ -3,10 +3,10 @@
|
|
|
3
3
|
var ink = require('ink');
|
|
4
4
|
var React = require('react');
|
|
5
5
|
var node_crypto = require('node:crypto');
|
|
6
|
-
var persistence = require('./api-
|
|
7
|
-
var registerKillSessionHandler = require('./registerKillSessionHandler-
|
|
8
|
-
var index = require('./index-
|
|
9
|
-
var BaseReasoningProcessor = require('./BaseReasoningProcessor-
|
|
6
|
+
var persistence = require('./api-C_Tnx4UG.cjs');
|
|
7
|
+
var registerKillSessionHandler = require('./registerKillSessionHandler-Bkh8uLhC.cjs');
|
|
8
|
+
var index = require('./index-Dh0qGrEd.cjs');
|
|
9
|
+
var BaseReasoningProcessor = require('./BaseReasoningProcessor-DAPsauUX.cjs');
|
|
10
10
|
require('cross-spawn');
|
|
11
11
|
require('@agentclientprotocol/sdk');
|
|
12
12
|
require('ps-list');
|
|
@@ -692,6 +692,7 @@ async function runGemini(opts) {
|
|
|
692
692
|
let currentModeHash = null;
|
|
693
693
|
let unexpectedRuntimeStopRecovery = null;
|
|
694
694
|
let readyAlreadySent = false;
|
|
695
|
+
let currentHappyOrgTurn = null;
|
|
695
696
|
async function handleAbort() {
|
|
696
697
|
persistence.logger.debug("[Gemini] Abort requested - stopping current task");
|
|
697
698
|
if (!turnAbortedSent) {
|
|
@@ -703,6 +704,7 @@ async function runGemini(opts) {
|
|
|
703
704
|
}
|
|
704
705
|
reasoningProcessor.abort();
|
|
705
706
|
diffProcessor.reset();
|
|
707
|
+
assistantMessageStream.reset();
|
|
706
708
|
try {
|
|
707
709
|
abortController.abort();
|
|
708
710
|
messageQueue.reset();
|
|
@@ -842,20 +844,72 @@ async function runGemini(opts) {
|
|
|
842
844
|
});
|
|
843
845
|
};
|
|
844
846
|
let accumulatedResponse = "";
|
|
847
|
+
let currentAssistantStreamStartLength = 0;
|
|
845
848
|
let isResponseInProgress = false;
|
|
846
849
|
let hadToolCallInTurn = false;
|
|
847
850
|
let taskStartedSent = false;
|
|
851
|
+
const assistantMessageStream = new persistence.AssistantMessageStream();
|
|
848
852
|
const resetTurnState = () => {
|
|
849
853
|
reasoningProcessor.abort();
|
|
850
854
|
diffProcessor.reset();
|
|
851
855
|
accumulatedResponse = "";
|
|
856
|
+
currentAssistantStreamStartLength = 0;
|
|
852
857
|
isResponseInProgress = false;
|
|
853
858
|
hadToolCallInTurn = false;
|
|
854
859
|
taskStartedSent = false;
|
|
855
860
|
turnAbortedSent = false;
|
|
861
|
+
currentHappyOrgTurn = null;
|
|
862
|
+
assistantMessageStream.reset();
|
|
856
863
|
thinking = false;
|
|
857
864
|
session.keepAlive(thinking, "remote");
|
|
858
865
|
};
|
|
866
|
+
const emitAssistantMessageDelta = (text) => {
|
|
867
|
+
if (currentHappyOrgTurn) {
|
|
868
|
+
return false;
|
|
869
|
+
}
|
|
870
|
+
if (!text.trim()) {
|
|
871
|
+
return false;
|
|
872
|
+
}
|
|
873
|
+
if (!assistantMessageStream.hasActive()) {
|
|
874
|
+
currentAssistantStreamStartLength = accumulatedResponse.length - text.length;
|
|
875
|
+
}
|
|
876
|
+
const stream = assistantMessageStream.delta();
|
|
877
|
+
session.sendAgentMessage("gemini", {
|
|
878
|
+
type: "message",
|
|
879
|
+
message: text,
|
|
880
|
+
id: stream.messageId,
|
|
881
|
+
...stream
|
|
882
|
+
});
|
|
883
|
+
return true;
|
|
884
|
+
};
|
|
885
|
+
const buildAssistantMessageCommit = (message) => {
|
|
886
|
+
if (!assistantMessageStream.hasActive()) {
|
|
887
|
+
return {
|
|
888
|
+
type: "message",
|
|
889
|
+
message,
|
|
890
|
+
id: node_crypto.randomUUID()
|
|
891
|
+
};
|
|
892
|
+
}
|
|
893
|
+
const stream = assistantMessageStream.commit();
|
|
894
|
+
return {
|
|
895
|
+
type: "message",
|
|
896
|
+
message: message.slice(currentAssistantStreamStartLength),
|
|
897
|
+
id: stream.messageId,
|
|
898
|
+
...stream
|
|
899
|
+
};
|
|
900
|
+
};
|
|
901
|
+
const commitActiveAssistantMessageStream = () => {
|
|
902
|
+
if (!assistantMessageStream.hasActive()) {
|
|
903
|
+
return false;
|
|
904
|
+
}
|
|
905
|
+
const messagePayload = buildAssistantMessageCommit(accumulatedResponse);
|
|
906
|
+
if (!messagePayload.message.trim()) {
|
|
907
|
+
return false;
|
|
908
|
+
}
|
|
909
|
+
session.sendAgentMessage("gemini", messagePayload);
|
|
910
|
+
currentAssistantStreamStartLength = accumulatedResponse.length;
|
|
911
|
+
return true;
|
|
912
|
+
};
|
|
859
913
|
const disposeRuntimeHandle = async () => {
|
|
860
914
|
if (!runtimeHandle) {
|
|
861
915
|
return;
|
|
@@ -923,6 +977,7 @@ async function runGemini(opts) {
|
|
|
923
977
|
persistence.logger.debug(`[gemini] Updated response, chunk length: ${msg.textDelta.length}, total accumulated: ${accumulatedResponse.length + msg.textDelta.length}`);
|
|
924
978
|
}
|
|
925
979
|
accumulatedResponse += msg.textDelta;
|
|
980
|
+
emitAssistantMessageDelta(msg.textDelta);
|
|
926
981
|
}
|
|
927
982
|
break;
|
|
928
983
|
case "status":
|
|
@@ -979,9 +1034,11 @@ Guide: https://goo.gle/gemini-cli-auth-docs#workspace-gca`;
|
|
|
979
1034
|
type: "message",
|
|
980
1035
|
message: `Error: ${errorMessage}`
|
|
981
1036
|
});
|
|
1037
|
+
assistantMessageStream.reset();
|
|
982
1038
|
}
|
|
983
1039
|
break;
|
|
984
1040
|
case "tool-call":
|
|
1041
|
+
commitActiveAssistantMessageStream();
|
|
985
1042
|
hadToolCallInTurn = true;
|
|
986
1043
|
const toolArgs = msg.args ? JSON.stringify(msg.args).substring(0, 100) : "";
|
|
987
1044
|
const isInvestigationTool = msg.toolName === "codebase_investigator" || typeof msg.toolName === "string" && msg.toolName.includes("investigator");
|
|
@@ -1206,10 +1263,12 @@ Guide: https://goo.gle/gemini-cli-auth-docs#workspace-gca`;
|
|
|
1206
1263
|
throw new Error("Gemini runtime session not started");
|
|
1207
1264
|
}
|
|
1208
1265
|
accumulatedResponse = "";
|
|
1266
|
+
currentAssistantStreamStartLength = 0;
|
|
1209
1267
|
isResponseInProgress = false;
|
|
1210
1268
|
hadToolCallInTurn = false;
|
|
1211
1269
|
taskStartedSent = false;
|
|
1212
1270
|
turnAbortedSent = false;
|
|
1271
|
+
currentHappyOrgTurn = message.mode.happyOrg ?? null;
|
|
1213
1272
|
let promptToSend = message.message;
|
|
1214
1273
|
if (shouldInjectHistoryOnNextSession && conversationHistory.hasHistory()) {
|
|
1215
1274
|
const historyContext = conversationHistory.getContextForNewSession();
|
|
@@ -1361,11 +1420,10 @@ Guide: https://goo.gle/gemini-cli-auth-docs#workspace-gca`;
|
|
|
1361
1420
|
persistence.logger.debug(`[gemini] Warning: Incomplete options block detected`);
|
|
1362
1421
|
}
|
|
1363
1422
|
const messagePayload = {
|
|
1364
|
-
|
|
1365
|
-
message: finalMessageText,
|
|
1366
|
-
id: node_crypto.randomUUID(),
|
|
1423
|
+
...buildAssistantMessageCommit(finalMessageText),
|
|
1367
1424
|
...options.length > 0 && { options }
|
|
1368
1425
|
};
|
|
1426
|
+
currentAssistantStreamStartLength = accumulatedResponse.length;
|
|
1369
1427
|
persistence.logger.debug(`[gemini] Sending complete message to mobile (length: ${finalMessageText.length}): ${finalMessageText.substring(0, 100)}...`);
|
|
1370
1428
|
session.sendAgentMessage("gemini", messagePayload);
|
|
1371
1429
|
if (!shouldExit) {
|