Files
agent-radar 2ed3415fb7
Publish Claude Code Binaries / Stage and publish binaries (push) Canceled after 0s
Publish Tutti App Runtime / Build darwin-arm64 (push) Canceled after 0s
Publish Tutti App Runtime / Build darwin-amd64 (push) Canceled after 0s
Publish Tutti App Runtime / Build linux-amd64 (push) Canceled after 0s
Publish Tutti App Runtime / Build windows-amd64 (push) Canceled after 0s
Sync Tutti Agent Skills / sync (push) Canceled after 0s
Windows Agent Adapters / Test Windows agent adapters (push) Canceled after 0s
Windows Daemon Adapters / Test Windows daemon adapters (push) Canceled after 0s
Publish Tutti App Runtime / Publish runtime catalog (push) Canceled after 0s
源码快照 @ 2026-09-01 (source-only, 剔除非源码素材)
2026-09-01 20:17:27 +08:00

70 lines
1.6 KiB
TypeScript

import type { AgentContextMentionItem } from "./agentFileMentionContracts";
import { managedAgentRoundedIconUrl } from "../../../shared/managedAgentIcons";
export function resolveAgentSessionMentionIconUrl(input: {
agentIconUrl?: string | null;
agentProviderId?: string | null;
}): string | undefined {
const explicitIconUrl = input.agentIconUrl?.trim() ?? "";
if (explicitIconUrl) {
return explicitIconUrl;
}
const agentProviderId = input.agentProviderId?.trim() ?? "";
if (agentProviderId) {
return managedAgentRoundedIconUrl(agentProviderId);
}
return undefined;
}
export function mentionVisual(item: AgentContextMentionItem): {
kindLabel: string;
primary: string;
} {
if (item.kind === "file") {
return {
kindLabel: "File",
primary: item.name
};
}
if (item.kind === "session") {
return {
kindLabel: "Session",
primary: item.title.trim() || item.name.trim()
};
}
if (item.kind === "workspace-app") {
return {
kindLabel: "App",
primary: item.name
};
}
if (item.kind === "agent-target") {
return {
kindLabel: "Agent",
primary: item.name
};
}
if (item.kind === "workspace-app-factory") {
return {
kindLabel: "App Factory",
primary: item.name
};
}
if (item.kind === "workspace-reference") {
return {
kindLabel: "Reference",
primary: item.name
};
}
if (item.kind === "custom") {
return {
kindLabel: "Reference",
primary: item.name
};
}
return {
kindLabel: "Task",
primary: item.name
};
}