






















@@ -80,7 +80,7 @@ import { resolveOpenClawReferencePaths } from "../../docs-path.js";
8080import { isTimeoutError } from "../../failover-error.js";
8181import { resolveHeartbeatPromptForSystemPrompt } from "../../heartbeat-system-prompt.js";
8282import { resolveImageSanitizationLimits } from "../../image-sanitization.js";
83-import { stripRuntimeContextCustomMessages } from "../../internal-runtime-context.js";
83+import { stripHistoricalRuntimeContextCustomMessages } from "../../internal-runtime-context.js";
8484import { buildModelAliasLines } from "../../model-alias-lines.js";
8585import { resolveModelAuthMode } from "../../model-auth.js";
8686import { resolveDefaultModelForAgent } from "../../model-selection.js";
@@ -330,7 +330,6 @@ import {
330330} from "./preemptive-compaction.js";
331331import {
332332buildCurrentTurnPromptContextSuffix,
333-buildRuntimeContextSystemContext,
334333queueRuntimeContextForNextTurn,
335334resolveRuntimeContextPromptParts,
336335} from "./runtime-context-prompt.js";
@@ -545,7 +544,7 @@ export function shouldBuildCoreCodingToolsForAllowlist(toolsAllow?: string[]): b
545544546545export function normalizeMessagesForLlmBoundary(messages: AgentMessage[]): AgentMessage[] {
547546const normalized = stripToolResultDetails(normalizeAssistantReplayContent(messages));
548-return stripRuntimeContextCustomMessages(normalized);
547+return stripHistoricalRuntimeContextCustomMessages(normalized);
549548}
550549551550function isMidTurnPrecheckAssistantError(message: AgentMessage | undefined): boolean {
@@ -3065,34 +3064,19 @@ export async function runEmbeddedAttempt(
30653064await abortable(activeSession.prompt(promptForModel));
30663065} else {
30673066const runtimeContext = promptSubmission.runtimeContext?.trim();
3068-const runtimeSystemPrompt = runtimeContext
3069- ? composeSystemPromptWithHookContext({
3070-baseSystemPrompt: systemPromptText,
3071-appendSystemContext: buildRuntimeContextSystemContext(runtimeContext),
3072-})
3073- : undefined;
3074-if (runtimeSystemPrompt) {
3075-applySystemPromptOverrideToSession(activeSession, runtimeSystemPrompt);
3076-}
3077-try {
3078-await queueRuntimeContextForNextTurn({
3079-session: activeSession,
3080- runtimeContext,
3081-});
3082-3083-// Only pass images option if there are actually images to pass
3084-// This avoids potential issues with models that don't expect the images parameter
3085-if (imageResult.images.length > 0) {
3086-await abortable(
3087-activeSession.prompt(promptForModel, { images: imageResult.images }),
3088-);
3089-} else {
3090-await abortable(activeSession.prompt(promptForModel));
3091-}
3092-} finally {
3093-if (runtimeSystemPrompt) {
3094-applySystemPromptOverrideToSession(activeSession, systemPromptText);
3095-}
3067+await queueRuntimeContextForNextTurn({
3068+session: activeSession,
3069+ runtimeContext,
3070+});
3071+3072+// Only pass images option if there are actually images to pass
3073+// This avoids potential issues with models that don't expect the images parameter
3074+if (imageResult.images.length > 0) {
3075+await abortable(
3076+activeSession.prompt(promptForModel, { images: imageResult.images }),
3077+);
3078+} else {
3079+await abortable(activeSession.prompt(promptForModel));
30963080}
30973081}
30983082}
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。