

























@@ -43,6 +43,7 @@ import {
4343isMessagingTool,
4444isMessagingToolDeliveryAction,
4545isMessagingToolSendAction,
46+isMessagingToolTargetEvidenceAction,
4647} from "../embedded-agent-messaging.js";
4748import type {
4849MessagingToolSend,
@@ -123,7 +124,7 @@ function extractCliMessagingTarget(
123124normalizedToolName === "message" && currentProvider && !hasExplicitProvider
124125 ? { ...args, provider: currentProvider }
125126 : args;
126-if (!isMessagingToolSendAction(normalizedToolName, targetArgs)) {
127+if (!isMessagingToolTargetEvidenceAction(normalizedToolName, targetArgs)) {
127128return undefined;
128129}
129130return extractMessagingToolSend(normalizedToolName, targetArgs, {
@@ -733,38 +734,40 @@ export async function executePreparedCliRun(
733734}
734735didSendViaMessagingTool = true;
735736const toolArgs = paramsLocal.args ?? {};
736-if (!isMessagingToolSendAction(paramsLocal.toolName, toolArgs)) {
737-return;
738-}
739-const content = extractCliMessagingContent(toolArgs, paramsLocal.result);
740-appendUniqueCliMessagingEvidence(
741-messagingToolSentTexts,
742-messagingToolSentTextKeys,
743-content.text ? [content.text] : [],
744-);
745-appendUniqueCliMessagingEvidence(
746-messagingToolSentMediaUrls,
747-messagingToolSentMediaUrlKeys,
748-content.mediaUrls ?? [],
749-);
750-if (
751-isDeliveredMessageToolOnlySourceReplyResult({
752-sourceReplyDeliveryMode: context.params.sourceReplyDeliveryMode,
753-toolName: paramsLocal.toolName,
754-args: paramsLocal.args,
755-result: paramsLocal.result,
756-isError: paramsLocal.isError,
757-})
758-) {
759-didDeliverSourceReplyViaMessageTool = true;
760-const sourceReplyPayload = extractMessagingToolSourceReplyPayload(paramsLocal.result);
761-if (sourceReplyPayload) {
762-if (messagingToolSourceReplyPayloads.length >= CLI_MESSAGING_EVIDENCE_MAX_CALLS) {
763-messagingToolSourceReplyPayloads.shift();
737+const isMessagingSend = isMessagingToolSendAction(paramsLocal.toolName, toolArgs);
738+const content = isMessagingSend
739+ ? extractCliMessagingContent(toolArgs, paramsLocal.result)
740+ : {};
741+if (isMessagingSend) {
742+appendUniqueCliMessagingEvidence(
743+messagingToolSentTexts,
744+messagingToolSentTextKeys,
745+content.text ? [content.text] : [],
746+);
747+appendUniqueCliMessagingEvidence(
748+messagingToolSentMediaUrls,
749+messagingToolSentMediaUrlKeys,
750+content.mediaUrls ?? [],
751+);
752+if (
753+isDeliveredMessageToolOnlySourceReplyResult({
754+sourceReplyDeliveryMode: context.params.sourceReplyDeliveryMode,
755+toolName: paramsLocal.toolName,
756+args: paramsLocal.args,
757+result: paramsLocal.result,
758+isError: paramsLocal.isError,
759+})
760+) {
761+didDeliverSourceReplyViaMessageTool = true;
762+const sourceReplyPayload = extractMessagingToolSourceReplyPayload(paramsLocal.result);
763+if (sourceReplyPayload) {
764+if (messagingToolSourceReplyPayloads.length >= CLI_MESSAGING_EVIDENCE_MAX_CALLS) {
765+messagingToolSourceReplyPayloads.shift();
766+}
767+// Each internal source-reply send is a distinct delivery, even when
768+// two intentional sends have identical text or media.
769+messagingToolSourceReplyPayloads.push(sourceReplyPayload);
764770}
765-// Each internal source-reply send is a distinct delivery, even when
766-// two intentional sends have identical text or media.
767-messagingToolSourceReplyPayloads.push(sourceReplyPayload);
768771}
769772}
770773if (paramsLocal.target) {
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。