fix(agents): pass agentDir to media understanding in ACP dispatch path

The ACP dispatch path calls applyMediaUnderstanding without the agentDir
parameter. This prevents the media understanding pipeline from locating
agent-specific models.json and auth profiles, causing image understanding
to fail silently for non-visual models configured with a separate image
understanding model.

The non-ACP reply path (get-reply.ts) already passes agentDir correctly.
This aligns the ACP path with the same behavior.

Closes #55046

AI-assisted (built with Hermes orchestration).
This commit is contained in:
luyao618
2026-04-27 21:33:58 +08:00
committed by Peter Steinberger
parent be2196c6cb
commit 2b578c3a9e

View File

@@ -6,6 +6,7 @@ import {
isSessionIdentityPending,
resolveSessionIdentityFromMeta,
} from "../../acp/runtime/session-identity.js";
import { resolveAgentDir } from "../../agents/agent-scope.js";
import type { OpenClawConfig } from "../../config/types.openclaw.js";
import type { TtsAutoMode } from "../../config/types.tts.js";
import { logVerbose } from "../../globals.js";
@@ -420,6 +421,7 @@ export async function tryDispatchAcpReply(params: {
await applyMediaUnderstanding({
ctx: params.ctx,
cfg: params.cfg,
agentDir: resolveAgentDir(params.cfg, acpAgentId),
});
} catch (err) {
logVerbose(