agent: accept workspace override and invalidate skills snapshot on workspace switch

This commit is contained in:
kumarabhirup 2026-02-19 21:51:26 -08:00
parent 81ce5eac3a
commit 049cedc5fd
No known key found for this signature in database
GPG Key ID: DB7CA2289CAB0167

View File

@ -217,7 +217,7 @@ export async function agentCommand(
}
const agentCfg = cfg.agents?.defaults;
const sessionAgentId = agentIdOverride ?? resolveAgentIdFromSessionKey(opts.sessionKey?.trim());
const workspaceDirRaw = resolveAgentWorkspaceDir(cfg, sessionAgentId);
const workspaceDirRaw = opts.workspace?.trim() || resolveAgentWorkspaceDir(cfg, sessionAgentId);
const agentDir = resolveAgentDir(cfg, sessionAgentId);
const workspace = await ensureAgentWorkspace({
dir: workspaceDirRaw,
@ -332,7 +332,11 @@ export async function agentCommand(
});
}
const needsSkillsSnapshot = isNewSession || !sessionEntry?.skillsSnapshot;
const cachedSnapshot = sessionEntry?.skillsSnapshot;
const needsSkillsSnapshot =
isNewSession ||
!cachedSnapshot ||
(cachedSnapshot.workspaceDir && cachedSnapshot.workspaceDir !== workspaceDir);
const skillsSnapshotVersion = getSkillsSnapshotVersion(workspaceDir);
const skillFilter = resolveAgentSkillsFilter(cfg, sessionAgentId);
const skillsSnapshot = needsSkillsSnapshot