@tutti-os/agent-gui 0.0.52 → 0.0.54
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{AgentMentionSearchController-CExFPobz.d.ts → AgentMentionSearchController-DzhWr0PN.d.ts} +13 -3
- package/dist/agent-conversation/index.d.ts +2 -2
- package/dist/agent-conversation/index.js +7 -6
- package/dist/agent-conversation/index.js.map +1 -1
- package/dist/agent-message-center/index.js +33 -12
- package/dist/agent-message-center/index.js.map +1 -1
- package/dist/{agentGuiNodeTypes-wzOITHRW.d.ts → agentGuiNodeTypes-DCnsaqJr.d.ts} +16 -2
- package/dist/app/renderer/agentactivity.css +136 -2
- package/dist/{chunk-ZTSS2NU2.js → chunk-2XVECUTU.js} +25 -1
- package/dist/chunk-2XVECUTU.js.map +1 -0
- package/dist/{chunk-OBFDA7RG.js → chunk-4PSDYKZQ.js} +20 -3
- package/dist/chunk-4PSDYKZQ.js.map +1 -0
- package/dist/{chunk-BFIYBPFD.js → chunk-6AXH2BOD.js} +5 -5
- package/dist/{chunk-4K22O34C.js → chunk-7GM7UQXD.js} +29 -3
- package/dist/chunk-7GM7UQXD.js.map +1 -0
- package/dist/{chunk-2OLYX32K.js → chunk-7ZDLFTVL.js} +76 -7
- package/dist/chunk-7ZDLFTVL.js.map +1 -0
- package/dist/{chunk-FYVVHRLZ.js → chunk-BGZ2OSDQ.js} +2 -2
- package/dist/{chunk-DPG2J7N5.js → chunk-CMOGPJ23.js} +2 -2
- package/dist/{chunk-3ZVVFQH5.js → chunk-EXZH66UE.js} +180 -88
- package/dist/chunk-EXZH66UE.js.map +1 -0
- package/dist/{chunk-66EQ6EQO.js → chunk-GL54NRMB.js} +59 -2
- package/dist/chunk-GL54NRMB.js.map +1 -0
- package/dist/{chunk-Y7ZVTWMZ.js → chunk-H2YWXFYX.js} +2 -2
- package/dist/{chunk-UKDC63WG.js → chunk-JRA44NYI.js} +78 -4
- package/dist/chunk-JRA44NYI.js.map +1 -0
- package/dist/{chunk-EFDGMXTB.js → chunk-OQJSZSYB.js} +48 -48
- package/dist/chunk-OQJSZSYB.js.map +1 -0
- package/dist/{chunk-ARCM7YB2.js → chunk-PBHTLI3E.js} +13 -3
- package/dist/{chunk-ARCM7YB2.js.map → chunk-PBHTLI3E.js.map} +1 -1
- package/dist/{chunk-5Y3PC7HP.js → chunk-VOXUYDQF.js} +238 -25
- package/dist/chunk-VOXUYDQF.js.map +1 -0
- package/dist/{chunk-HDBKB5RA.js → chunk-WMQN7SZC.js} +2 -58
- package/dist/chunk-WMQN7SZC.js.map +1 -0
- package/dist/{chunk-F5DYXCY3.js → chunk-Z2BTIAOC.js} +1 -1
- package/dist/chunk-Z2BTIAOC.js.map +1 -0
- package/dist/{chunk-PIKG746A.js → chunk-ZFDO72FE.js} +132 -67
- package/dist/chunk-ZFDO72FE.js.map +1 -0
- package/dist/context-mention-palette/index.d.ts +2 -2
- package/dist/context-mention-palette/index.js +8 -8
- package/dist/context-mention-provider.d.ts +1 -0
- package/dist/i18n/index.d.ts +24 -0
- package/dist/i18n/index.js +2 -2
- package/dist/index.d.ts +23 -53
- package/dist/index.js +945 -665
- package/dist/index.js.map +1 -1
- package/dist/queued-prompt-runtime.d.ts +2 -2
- package/dist/{types-xMz0lJWt.d.ts → types-B2m7UcBb.d.ts} +8 -0
- package/dist/workbench/contribution.d.ts +43 -4
- package/dist/workbench/contribution.js +9 -5
- package/dist/workbench/index.d.ts +3 -3
- package/dist/workbench/index.js +18 -8
- package/dist/workbench/launch.d.ts +2 -1
- package/dist/workbench/launch.js +2 -2
- package/dist/workbench/providerCatalog.d.ts +1 -1
- package/dist/workbench/sessionTitle.d.ts +1 -1
- package/dist/workbench/sessionTitle.js +3 -3
- package/dist/workbench/state.d.ts +1 -1
- package/dist/workbench/state.js +2 -2
- package/dist/workbench/types.d.ts +8 -8
- package/dist/workbench/types.js +1 -1
- package/dist/workspace-agent-generated-files.js +3 -3
- package/package.json +14 -14
- package/dist/chunk-2OLYX32K.js.map +0 -1
- package/dist/chunk-3ZVVFQH5.js.map +0 -1
- package/dist/chunk-4K22O34C.js.map +0 -1
- package/dist/chunk-5Y3PC7HP.js.map +0 -1
- package/dist/chunk-66EQ6EQO.js.map +0 -1
- package/dist/chunk-EFDGMXTB.js.map +0 -1
- package/dist/chunk-F5DYXCY3.js.map +0 -1
- package/dist/chunk-HDBKB5RA.js.map +0 -1
- package/dist/chunk-OBFDA7RG.js.map +0 -1
- package/dist/chunk-PIKG746A.js.map +0 -1
- package/dist/chunk-UKDC63WG.js.map +0 -1
- package/dist/chunk-ZTSS2NU2.js.map +0 -1
- /package/dist/{chunk-BFIYBPFD.js.map → chunk-6AXH2BOD.js.map} +0 -0
- /package/dist/{chunk-FYVVHRLZ.js.map → chunk-BGZ2OSDQ.js.map} +0 -0
- /package/dist/{chunk-DPG2J7N5.js.map → chunk-CMOGPJ23.js.map} +0 -0
- /package/dist/{chunk-Y7ZVTWMZ.js.map → chunk-H2YWXFYX.js.map} +0 -0
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import {
|
|
2
2
|
agentGuiWorkbenchOpenSessionActivationType,
|
|
3
3
|
agentGuiWorkbenchPrefillPromptActivationType
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-Z2BTIAOC.js";
|
|
5
5
|
import {
|
|
6
6
|
isAgentGuiWorkbenchProvider,
|
|
7
7
|
normalizeAgentGuiWorkbenchProvider
|
|
@@ -32,6 +32,12 @@ function createAgentGuiWorkbenchInstanceId(input) {
|
|
|
32
32
|
agentSessionId
|
|
33
33
|
)}`;
|
|
34
34
|
}
|
|
35
|
+
const agentTargetId = input.agentTargetId?.trim();
|
|
36
|
+
if (agentTargetId) {
|
|
37
|
+
return `${prefix}:target:${encodeAgentGuiWorkbenchInstanceSegment(
|
|
38
|
+
agentTargetId
|
|
39
|
+
)}`;
|
|
40
|
+
}
|
|
35
41
|
agentGuiWorkbenchInstanceSequence += 1;
|
|
36
42
|
return [
|
|
37
43
|
prefix,
|
|
@@ -111,7 +117,10 @@ function createAgentGuiWorkbenchLaunchDescriptor(request) {
|
|
|
111
117
|
type: agentGuiWorkbenchPrefillPromptActivationType
|
|
112
118
|
},
|
|
113
119
|
dockEntryId,
|
|
114
|
-
instanceId: createAgentGuiWorkbenchInstanceId({
|
|
120
|
+
instanceId: createAgentGuiWorkbenchInstanceId({
|
|
121
|
+
agentTargetId: agentTargetIdFromLaunchPayload(request.payload),
|
|
122
|
+
provider
|
|
123
|
+
}),
|
|
115
124
|
openInNewWindow: false,
|
|
116
125
|
provider,
|
|
117
126
|
reuseDockEntryNode: shouldReuseAgentGuiWorkbenchDockEntryNode({
|
|
@@ -126,6 +135,7 @@ function createAgentGuiWorkbenchLaunchDescriptor(request) {
|
|
|
126
135
|
const openInNewWindow = openInNewWindowFromLaunchPayload(request.payload);
|
|
127
136
|
const instanceId = createAgentGuiWorkbenchInstanceId({
|
|
128
137
|
agentSessionId: openInNewWindow ? null : targetAgentSessionId,
|
|
138
|
+
agentTargetId: openInNewWindow ? null : agentTargetIdFromLaunchPayload(request.payload),
|
|
129
139
|
provider
|
|
130
140
|
});
|
|
131
141
|
return {
|
|
@@ -193,6 +203,13 @@ function agentSessionIdFromLaunchPayload(payload) {
|
|
|
193
203
|
const agentSessionId = payload.agentSessionId;
|
|
194
204
|
return typeof agentSessionId === "string" && agentSessionId.trim() ? agentSessionId.trim() : null;
|
|
195
205
|
}
|
|
206
|
+
function agentTargetIdFromLaunchPayload(payload) {
|
|
207
|
+
if (!payload || typeof payload !== "object" || Array.isArray(payload)) {
|
|
208
|
+
return null;
|
|
209
|
+
}
|
|
210
|
+
const agentTargetId = payload.agentTargetId;
|
|
211
|
+
return typeof agentTargetId === "string" && agentTargetId.trim() ? agentTargetId.trim() : null;
|
|
212
|
+
}
|
|
196
213
|
function openInNewWindowFromLaunchPayload(payload) {
|
|
197
214
|
if (!payload || typeof payload !== "object" || Array.isArray(payload)) {
|
|
198
215
|
return false;
|
|
@@ -216,4 +233,4 @@ export {
|
|
|
216
233
|
resolveAgentGuiWorkbenchLaunchDockEntryId,
|
|
217
234
|
shouldReuseAgentGuiWorkbenchDockEntryNode
|
|
218
235
|
};
|
|
219
|
-
//# sourceMappingURL=chunk-
|
|
236
|
+
//# sourceMappingURL=chunk-4PSDYKZQ.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../workbench/launch.ts"],"sourcesContent":["import type { WorkbenchHostLaunchRequest } from \"@tutti-os/workbench-surface\";\nimport {\n isAgentGuiWorkbenchProvider,\n normalizeAgentGuiWorkbenchProvider\n} from \"./providerCatalog.ts\";\nimport {\n agentGuiWorkbenchOpenSessionActivationType,\n agentGuiWorkbenchPrefillPromptActivationType,\n type AgentGuiWorkbenchPrefillPromptPayload,\n type AgentGuiWorkbenchProvider\n} from \"./types.ts\";\n\nexport { agentGuiWorkbenchPrefillPromptActivationType } from \"./types.ts\";\n\ntype AgentGuiWorkbenchLaunchRequestInput = Pick<\n WorkbenchHostLaunchRequest,\n \"payload\" | \"typeId\"\n> & {\n dockEntryId?: string | null;\n};\n\nexport const agentGuiWorkbenchTypeId = \"agent-gui\";\n\nconst agentGuiWorkbenchDockEntryPrefix = \"agent-gui:\";\nconst agentGuiWorkbenchUnifiedDockEntryIdValue = \"agent-gui:unified\";\nlet agentGuiWorkbenchInstanceSequence = 0;\n\nexport type AgentGuiWorkbenchDockLayout = \"legacySplit\" | \"unified\";\n\nexport type AgentGuiWorkbenchDockIdentity =\n | {\n kind: \"legacyProvider\";\n provider: AgentGuiWorkbenchProvider;\n }\n | {\n kind: \"unifiedAggregate\";\n };\n\nexport function agentGuiWorkbenchDockEntryId(\n provider: AgentGuiWorkbenchProvider\n): string {\n return provider === \"codex\"\n ? agentGuiWorkbenchTypeId\n : `${agentGuiWorkbenchDockEntryPrefix}${provider}`;\n}\n\nexport function agentGuiWorkbenchUnifiedDockEntryId(): string {\n return agentGuiWorkbenchUnifiedDockEntryIdValue;\n}\n\nexport function agentGuiWorkbenchDockEntryIdForLayout(input: {\n dockLayout: AgentGuiWorkbenchDockLayout;\n provider: AgentGuiWorkbenchProvider;\n}): string {\n return input.dockLayout === \"unified\"\n ? agentGuiWorkbenchUnifiedDockEntryId()\n : agentGuiWorkbenchDockEntryId(input.provider);\n}\n\nexport function agentGuiWorkbenchInstanceId(\n provider: AgentGuiWorkbenchProvider\n): string {\n return `${agentGuiWorkbenchDockEntryPrefix}${provider}`;\n}\n\nexport function createAgentGuiWorkbenchInstanceId(input: {\n agentSessionId?: string | null;\n agentTargetId?: string | null;\n provider: AgentGuiWorkbenchProvider;\n}): string {\n const prefix = agentGuiWorkbenchInstanceId(input.provider);\n const agentSessionId = input.agentSessionId?.trim();\n if (agentSessionId) {\n return `${prefix}:session:${encodeAgentGuiWorkbenchInstanceSegment(\n agentSessionId\n )}`;\n }\n const agentTargetId = input.agentTargetId?.trim();\n if (agentTargetId) {\n return `${prefix}:target:${encodeAgentGuiWorkbenchInstanceSegment(\n agentTargetId\n )}`;\n }\n\n agentGuiWorkbenchInstanceSequence += 1;\n return [\n prefix,\n \"panel\",\n `${Date.now().toString(36)}-${agentGuiWorkbenchInstanceSequence.toString(36)}`\n ].join(\":\");\n}\n\nexport function agentGuiWorkbenchProviderFromIdentifier(\n value: string | null | undefined\n): AgentGuiWorkbenchProvider | null {\n const identity = agentGuiWorkbenchDockIdentityFromIdentifier(value);\n return identity?.kind === \"legacyProvider\" ? identity.provider : null;\n}\n\nexport function agentGuiWorkbenchDockIdentityFromIdentifier(\n value: string | null | undefined\n): AgentGuiWorkbenchDockIdentity | null {\n const normalized = value?.trim();\n if (!normalized) {\n return null;\n }\n if (normalized === agentGuiWorkbenchUnifiedDockEntryId()) {\n return { kind: \"unifiedAggregate\" };\n }\n if (normalized === agentGuiWorkbenchTypeId) {\n return { kind: \"legacyProvider\", provider: \"codex\" };\n }\n if (!normalized.startsWith(agentGuiWorkbenchDockEntryPrefix)) {\n return null;\n }\n const provider = normalized\n .slice(agentGuiWorkbenchDockEntryPrefix.length)\n .split(\":\", 1)[0];\n return isAgentGuiWorkbenchProvider(provider)\n ? { kind: \"legacyProvider\", provider }\n : null;\n}\n\nexport function agentGuiWorkbenchProviderFromLaunchRequest(\n request: AgentGuiWorkbenchLaunchRequestInput\n): AgentGuiWorkbenchProvider {\n const payloadProvider =\n request.payload &&\n typeof request.payload === \"object\" &&\n !Array.isArray(request.payload)\n ? (request.payload as { provider?: unknown }).provider\n : null;\n if (isAgentGuiWorkbenchProvider(payloadProvider)) {\n return payloadProvider;\n }\n return (\n agentGuiWorkbenchProviderFromIdentifier(request.dockEntryId) ??\n agentGuiWorkbenchProviderFromIdentifier(request.typeId) ??\n \"codex\"\n );\n}\n\nexport function createAgentGuiWorkbenchSessionLaunchRequest(input: {\n agentSessionId?: string;\n openInNewWindow?: boolean;\n provider: unknown;\n}) {\n const provider = normalizeAgentGuiWorkbenchProvider(input.provider);\n return {\n dockEntryId: agentGuiWorkbenchDockEntryId(provider),\n payload: {\n ...(input.agentSessionId ? { agentSessionId: input.agentSessionId } : {}),\n ...(input.openInNewWindow ? { openInNewWindow: true } : {}),\n provider\n },\n reason: \"host\" as const,\n typeId: agentGuiWorkbenchTypeId\n };\n}\n\nexport function createAgentGuiWorkbenchDraftLaunchRequest(input: {\n autoSubmit?: boolean;\n draftPrompt: string;\n provider: unknown;\n userProjectPath?: string | null;\n}) {\n const provider = normalizeAgentGuiWorkbenchProvider(input.provider);\n const userProjectPath = normalizeAgentGuiWorkbenchUserProjectPath(\n input.userProjectPath\n );\n return {\n dockEntryId: agentGuiWorkbenchDockEntryId(provider),\n payload: {\n draftPrompt: input.draftPrompt,\n provider,\n ...(input.autoSubmit ? { autoSubmit: true } : {}),\n ...(userProjectPath ? { userProjectPath } : {})\n },\n reason: \"host\" as const,\n typeId: agentGuiWorkbenchTypeId\n };\n}\n\nexport interface AgentGuiWorkbenchLaunchDescriptor {\n activation:\n | {\n payload: {\n agentSessionId: string;\n };\n type: typeof agentGuiWorkbenchOpenSessionActivationType;\n }\n | {\n payload: AgentGuiWorkbenchPrefillPromptPayload;\n type: typeof agentGuiWorkbenchPrefillPromptActivationType;\n }\n | null;\n dockEntryId: string;\n instanceId: string;\n openInNewWindow: boolean;\n provider: AgentGuiWorkbenchProvider;\n reuseDockEntryNode: boolean;\n reuseExistingSessionNode: boolean;\n targetAgentSessionId: string | null;\n}\n\nexport function createAgentGuiWorkbenchLaunchDescriptor(\n request: AgentGuiWorkbenchLaunchRequestInput\n): AgentGuiWorkbenchLaunchDescriptor {\n const provider = agentGuiWorkbenchProviderFromLaunchRequest(request);\n const dockEntryId = resolveAgentGuiWorkbenchLaunchDockEntryId({\n provider,\n requestedDockEntryId: request.dockEntryId\n });\n const prefillPrompt = prefillPromptFromLaunchPayload(request.payload);\n if (prefillPrompt) {\n return {\n activation: {\n payload: prefillPrompt,\n type: agentGuiWorkbenchPrefillPromptActivationType\n },\n dockEntryId,\n instanceId: createAgentGuiWorkbenchInstanceId({\n agentTargetId: agentTargetIdFromLaunchPayload(request.payload),\n provider\n }),\n openInNewWindow: false,\n provider,\n reuseDockEntryNode: shouldReuseAgentGuiWorkbenchDockEntryNode({\n dockEntryId,\n launchKind: \"prefill\"\n }),\n reuseExistingSessionNode: true,\n targetAgentSessionId: null\n };\n }\n\n const targetAgentSessionId = agentSessionIdFromLaunchPayload(request.payload);\n const openInNewWindow = openInNewWindowFromLaunchPayload(request.payload);\n const instanceId = createAgentGuiWorkbenchInstanceId({\n agentSessionId: openInNewWindow ? null : targetAgentSessionId,\n agentTargetId: openInNewWindow\n ? null\n : agentTargetIdFromLaunchPayload(request.payload),\n provider\n });\n\n return {\n activation: targetAgentSessionId\n ? {\n payload: {\n agentSessionId: targetAgentSessionId\n },\n type: agentGuiWorkbenchOpenSessionActivationType\n }\n : null,\n dockEntryId,\n instanceId,\n openInNewWindow,\n provider,\n reuseDockEntryNode: shouldReuseAgentGuiWorkbenchDockEntryNode({\n dockEntryId,\n launchKind: targetAgentSessionId ? \"session\" : \"empty\"\n }),\n reuseExistingSessionNode: !openInNewWindow,\n targetAgentSessionId\n };\n}\n\nexport function resolveAgentGuiWorkbenchLaunchDockEntryId(input: {\n provider: AgentGuiWorkbenchProvider;\n requestedDockEntryId?: string | null;\n}): string {\n const requestedIdentity = agentGuiWorkbenchDockIdentityFromIdentifier(\n input.requestedDockEntryId\n );\n if (requestedIdentity?.kind === \"unifiedAggregate\") {\n return agentGuiWorkbenchUnifiedDockEntryId();\n }\n return agentGuiWorkbenchDockEntryId(input.provider);\n}\n\nexport function shouldReuseAgentGuiWorkbenchDockEntryNode(input: {\n dockEntryId: string;\n launchKind: \"empty\" | \"prefill\" | \"session\";\n}): boolean {\n if (input.launchKind !== \"prefill\") {\n return false;\n }\n return (\n agentGuiWorkbenchDockIdentityFromIdentifier(input.dockEntryId)?.kind !==\n \"unifiedAggregate\"\n );\n}\n\nfunction encodeAgentGuiWorkbenchInstanceSegment(value: string): string {\n return encodeURIComponent(value.trim());\n}\n\nfunction prefillPromptFromLaunchPayload(\n payload: unknown\n): AgentGuiWorkbenchPrefillPromptPayload | null {\n if (!payload || typeof payload !== \"object\" || Array.isArray(payload)) {\n return null;\n }\n const draftPrompt = (payload as { draftPrompt?: unknown }).draftPrompt;\n if (typeof draftPrompt !== \"string\" || !draftPrompt.trim()) {\n return null;\n }\n const autoSubmit = (payload as { autoSubmit?: unknown }).autoSubmit === true;\n const userProjectPath = (payload as { userProjectPath?: unknown })\n .userProjectPath;\n const normalizedUserProjectPath =\n typeof userProjectPath === \"string\"\n ? normalizeAgentGuiWorkbenchUserProjectPath(userProjectPath)\n : null;\n return {\n draftPrompt,\n ...(autoSubmit ? { autoSubmit: true } : {}),\n ...(normalizedUserProjectPath\n ? { userProjectPath: normalizedUserProjectPath }\n : {})\n };\n}\n\nfunction normalizeAgentGuiWorkbenchUserProjectPath(\n value: string | null | undefined\n): string | null {\n const normalized = value?.trim().replaceAll(\"\\\\\", \"/\").replace(/\\/+$/, \"\");\n return normalized ? normalized : null;\n}\n\nfunction agentSessionIdFromLaunchPayload(payload: unknown): string | null {\n if (!payload || typeof payload !== \"object\" || Array.isArray(payload)) {\n return null;\n }\n const agentSessionId = (payload as { agentSessionId?: unknown })\n .agentSessionId;\n return typeof agentSessionId === \"string\" && agentSessionId.trim()\n ? agentSessionId.trim()\n : null;\n}\n\nfunction agentTargetIdFromLaunchPayload(payload: unknown): string | null {\n if (!payload || typeof payload !== \"object\" || Array.isArray(payload)) {\n return null;\n }\n const agentTargetId = (payload as { agentTargetId?: unknown }).agentTargetId;\n return typeof agentTargetId === \"string\" && agentTargetId.trim()\n ? agentTargetId.trim()\n : null;\n}\n\nfunction openInNewWindowFromLaunchPayload(payload: unknown): boolean {\n if (!payload || typeof payload !== \"object\" || Array.isArray(payload)) {\n return false;\n }\n return (payload as { openInNewWindow?: unknown }).openInNewWindow === true;\n}\n"],"mappings":"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","names":[]}
|
|
@@ -7,17 +7,17 @@ import {
|
|
|
7
7
|
AgentGUIConversation_styles_default,
|
|
8
8
|
MessageSquareMoreIcon,
|
|
9
9
|
extractAgentMcpToolTarget
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-ZFDO72FE.js";
|
|
11
11
|
import {
|
|
12
12
|
Spinner
|
|
13
|
-
} from "./chunk-
|
|
13
|
+
} from "./chunk-WMQN7SZC.js";
|
|
14
14
|
import {
|
|
15
15
|
getOptionalAgentHostApi,
|
|
16
16
|
useOptionalAgentHostApi
|
|
17
|
-
} from "./chunk-
|
|
17
|
+
} from "./chunk-GL54NRMB.js";
|
|
18
18
|
import {
|
|
19
19
|
translate
|
|
20
|
-
} from "./chunk-
|
|
20
|
+
} from "./chunk-H2YWXFYX.js";
|
|
21
21
|
|
|
22
22
|
// shared/agentConversation/approvalOptionPresentation.ts
|
|
23
23
|
function approvalOptionDisplayLabel(option, intent = {}) {
|
|
@@ -1150,4 +1150,4 @@ export {
|
|
|
1150
1150
|
isPromptRequestIdTitle,
|
|
1151
1151
|
AgentInteractivePromptSurface
|
|
1152
1152
|
};
|
|
1153
|
-
//# sourceMappingURL=chunk-
|
|
1153
|
+
//# sourceMappingURL=chunk-6AXH2BOD.js.map
|
|
@@ -16,8 +16,11 @@ var agentGUIDefaultTargetProviders = [
|
|
|
16
16
|
"openclaw"
|
|
17
17
|
];
|
|
18
18
|
function createLocalAgentGUIProviderTarget(provider) {
|
|
19
|
+
const targetId = localAgentGUIProviderTargetId(provider);
|
|
20
|
+
const agentTargetId = localAgentGUIAgentTargetId(provider);
|
|
19
21
|
return {
|
|
20
|
-
targetId
|
|
22
|
+
targetId,
|
|
23
|
+
...agentTargetId ? { agentTargetId } : {},
|
|
21
24
|
provider,
|
|
22
25
|
ref: {
|
|
23
26
|
kind: "local",
|
|
@@ -34,6 +37,16 @@ function createLocalAgentGUIProviderTargets(providers = agentGUIDefaultTargetPro
|
|
|
34
37
|
function localAgentGUIProviderTargetId(provider) {
|
|
35
38
|
return `local:${provider}`;
|
|
36
39
|
}
|
|
40
|
+
function localAgentGUIAgentTargetId(provider) {
|
|
41
|
+
switch (provider) {
|
|
42
|
+
case "codex":
|
|
43
|
+
return "local:codex";
|
|
44
|
+
case "claude-code":
|
|
45
|
+
return "local:claude-code";
|
|
46
|
+
default:
|
|
47
|
+
return null;
|
|
48
|
+
}
|
|
49
|
+
}
|
|
37
50
|
function normalizeAgentGUIProviderTargets(targets, options) {
|
|
38
51
|
const fallbackToLocal = options?.fallbackToLocal !== false;
|
|
39
52
|
const source = targets && targets.length > 0 ? targets : [];
|
|
@@ -54,13 +67,24 @@ function normalizeAgentGUIProviderTargets(targets, options) {
|
|
|
54
67
|
return normalizedTargets.length > 0 || !fallbackToLocal ? normalizedTargets : createLocalAgentGUIProviderTargets();
|
|
55
68
|
}
|
|
56
69
|
function resolveAgentGUIProviderTarget(input) {
|
|
70
|
+
const targetByAgentTargetId = new Map(
|
|
71
|
+
input.providerTargets.flatMap(
|
|
72
|
+
(target) => target.agentTargetId ? [[target.agentTargetId, target]] : []
|
|
73
|
+
)
|
|
74
|
+
);
|
|
75
|
+
const agentTarget = targetByAgentTargetId.get(
|
|
76
|
+
input.agentTargetId?.trim() ?? ""
|
|
77
|
+
);
|
|
78
|
+
if (agentTarget) {
|
|
79
|
+
return agentTarget;
|
|
80
|
+
}
|
|
57
81
|
const providerTargets = input.providerTargets.filter(
|
|
58
82
|
(target) => target.provider === input.provider
|
|
59
83
|
);
|
|
60
84
|
const targetById = new Map(
|
|
61
85
|
providerTargets.map((target) => [target.targetId, target])
|
|
62
86
|
);
|
|
63
|
-
return targetById.get(input.providerTargetId?.trim() ?? "") ?? targetById.get(input.defaultProviderTargetId?.trim() ?? "") ?? targetById.get(localAgentGUIProviderTargetId(input.provider)) ?? providerTargets.find((target) => target.disabled !== true) ?? providerTargets[0] ?? createLocalAgentGUIProviderTarget(input.provider);
|
|
87
|
+
return targetById.get(input.providerTargetId?.trim() ?? "") ?? targetById.get(input.defaultProviderTargetId?.trim() ?? "") ?? targetById.get(localAgentGUIProviderTargetId(input.provider)) ?? providerTargets.find((target) => target.disabled !== true) ?? providerTargets[0] ?? (input.fallbackToLocal === false ? null : createLocalAgentGUIProviderTarget(input.provider));
|
|
64
88
|
}
|
|
65
89
|
function agentGUIProviderTargetRefsEqual(left, right) {
|
|
66
90
|
if (left === right) {
|
|
@@ -76,6 +100,7 @@ function agentGUIProviderTargetRefsEqual(left, right) {
|
|
|
76
100
|
}
|
|
77
101
|
function normalizeAgentGUIProviderTarget(target) {
|
|
78
102
|
const targetId = target.targetId.trim();
|
|
103
|
+
const agentTargetId = target.agentTargetId?.trim();
|
|
79
104
|
const label = target.label.trim();
|
|
80
105
|
const kind = typeof target.ref.kind === "string" ? target.ref.kind.trim() : "";
|
|
81
106
|
if (!targetId || !label || !kind || target.ref.provider !== target.provider) {
|
|
@@ -84,6 +109,7 @@ function normalizeAgentGUIProviderTarget(target) {
|
|
|
84
109
|
return {
|
|
85
110
|
...target,
|
|
86
111
|
targetId,
|
|
112
|
+
...agentTargetId ? { agentTargetId } : {},
|
|
87
113
|
provider: target.provider,
|
|
88
114
|
ref: {
|
|
89
115
|
...target.ref,
|
|
@@ -120,4 +146,4 @@ export {
|
|
|
120
146
|
resolveAgentGUIProviderTarget,
|
|
121
147
|
agentGUIProviderTargetRefsEqual
|
|
122
148
|
};
|
|
123
|
-
//# sourceMappingURL=chunk-
|
|
149
|
+
//# sourceMappingURL=chunk-7GM7UQXD.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../providerTargets.ts"],"sourcesContent":["import type {\n AgentGUIProvider,\n AgentGUIProviderTarget,\n AgentGUIProviderTargetRef\n} from \"./types.ts\";\n\nconst agentGUIProviderTargetFallbackLabels: Record<AgentGUIProvider, string> = {\n \"claude-code\": \"Claude Code\",\n codex: \"Codex\",\n gemini: \"Gemini\",\n hermes: \"Hermes\",\n nexight: \"Nexight\",\n openclaw: \"OpenClaw\"\n};\n\nexport const agentGUIDefaultTargetProviders = [\n \"codex\",\n \"claude-code\",\n \"nexight\",\n \"hermes\",\n \"gemini\",\n \"openclaw\"\n] as const satisfies readonly AgentGUIProvider[];\n\nexport function createLocalAgentGUIProviderTarget(\n provider: AgentGUIProvider\n): AgentGUIProviderTarget {\n const targetId = localAgentGUIProviderTargetId(provider);\n const agentTargetId = localAgentGUIAgentTargetId(provider);\n return {\n targetId,\n ...(agentTargetId ? { agentTargetId } : {}),\n provider,\n ref: {\n kind: \"local\",\n provider\n },\n label: agentGUIProviderTargetFallbackLabels[provider] ?? provider\n };\n}\n\nexport function createLocalAgentGUIProviderTargets(\n providers: readonly AgentGUIProvider[] = agentGUIDefaultTargetProviders\n): AgentGUIProviderTarget[] {\n return providers.map((provider) =>\n createLocalAgentGUIProviderTarget(provider)\n );\n}\n\nexport function localAgentGUIProviderTargetId(\n provider: AgentGUIProvider\n): string {\n return `local:${provider}`;\n}\n\nexport function localAgentGUIAgentTargetId(\n provider: AgentGUIProvider\n): string | null {\n switch (provider) {\n case \"codex\":\n return \"local:codex\";\n case \"claude-code\":\n return \"local:claude-code\";\n default:\n return null;\n }\n}\n\nexport function normalizeAgentGUIProviderTargets(\n targets: readonly AgentGUIProviderTarget[] | null | undefined,\n options?: { fallbackToLocal?: boolean }\n): AgentGUIProviderTarget[] {\n const fallbackToLocal = options?.fallbackToLocal !== false;\n const source = targets && targets.length > 0 ? targets : [];\n const normalizedTargets: AgentGUIProviderTarget[] = [];\n const seenTargetKeys = new Set<string>();\n for (const target of source) {\n const normalized = normalizeAgentGUIProviderTarget(target);\n if (!normalized) {\n continue;\n }\n const dedupeKey = `${normalized.provider}\\u0000${normalized.targetId}`;\n if (seenTargetKeys.has(dedupeKey)) {\n continue;\n }\n seenTargetKeys.add(dedupeKey);\n normalizedTargets.push(normalized);\n }\n return normalizedTargets.length > 0 || !fallbackToLocal\n ? normalizedTargets\n : createLocalAgentGUIProviderTargets();\n}\n\nexport function resolveAgentGUIProviderTarget(input: {\n agentTargetId?: string | null;\n defaultProviderTargetId?: string | null;\n fallbackToLocal?: boolean;\n provider: AgentGUIProvider;\n providerTargetId?: string | null;\n providerTargets: readonly AgentGUIProviderTarget[];\n}): AgentGUIProviderTarget | null {\n const targetByAgentTargetId = new Map(\n input.providerTargets.flatMap((target) =>\n target.agentTargetId ? [[target.agentTargetId, target] as const] : []\n )\n );\n const agentTarget = targetByAgentTargetId.get(\n input.agentTargetId?.trim() ?? \"\"\n );\n if (agentTarget) {\n return agentTarget;\n }\n const providerTargets = input.providerTargets.filter(\n (target) => target.provider === input.provider\n );\n const targetById = new Map(\n providerTargets.map((target) => [target.targetId, target])\n );\n return (\n targetById.get(input.providerTargetId?.trim() ?? \"\") ??\n targetById.get(input.defaultProviderTargetId?.trim() ?? \"\") ??\n targetById.get(localAgentGUIProviderTargetId(input.provider)) ??\n providerTargets.find((target) => target.disabled !== true) ??\n providerTargets[0] ??\n (input.fallbackToLocal === false\n ? null\n : createLocalAgentGUIProviderTarget(input.provider))\n );\n}\n\nexport function agentGUIProviderTargetRefsEqual(\n left: AgentGUIProviderTargetRef | null | undefined,\n right: AgentGUIProviderTargetRef | null | undefined\n): boolean {\n if (left === right) {\n return true;\n }\n if (!left && !right) {\n return true;\n }\n if (!left || !right) {\n return false;\n }\n return stableProviderTargetRefKey(left) === stableProviderTargetRefKey(right);\n}\n\nfunction normalizeAgentGUIProviderTarget(\n target: AgentGUIProviderTarget\n): AgentGUIProviderTarget | null {\n const targetId = target.targetId.trim();\n const agentTargetId = target.agentTargetId?.trim();\n const label = target.label.trim();\n const kind =\n typeof target.ref.kind === \"string\" ? target.ref.kind.trim() : \"\";\n if (!targetId || !label || !kind || target.ref.provider !== target.provider) {\n return null;\n }\n return {\n ...target,\n targetId,\n ...(agentTargetId ? { agentTargetId } : {}),\n provider: target.provider,\n ref: {\n ...target.ref,\n kind,\n provider: target.provider\n },\n label,\n ...(target.description?.trim()\n ? { description: target.description.trim() }\n : {}),\n ...(target.ownerLabel?.trim()\n ? { ownerLabel: target.ownerLabel.trim() }\n : {}),\n ...(target.unavailableReason?.trim()\n ? { unavailableReason: target.unavailableReason.trim() }\n : {})\n };\n}\n\nfunction stableProviderTargetRefKey(ref: AgentGUIProviderTargetRef): string {\n return JSON.stringify(sortProviderTargetRefValue(ref));\n}\n\nfunction sortProviderTargetRefValue(value: unknown): unknown {\n if (Array.isArray(value)) {\n return value.map(sortProviderTargetRefValue);\n }\n if (!value || typeof value !== \"object\") {\n return value;\n }\n return Object.fromEntries(\n Object.entries(value)\n .sort(([left], [right]) => left.localeCompare(right))\n .map(([key, entryValue]) => [key, sortProviderTargetRefValue(entryValue)])\n );\n}\n"],"mappings":";AAMA,IAAM,uCAAyE;AAAA,EAC7E,eAAe;AAAA,EACf,OAAO;AAAA,EACP,QAAQ;AAAA,EACR,QAAQ;AAAA,EACR,SAAS;AAAA,EACT,UAAU;AACZ;AAEO,IAAM,iCAAiC;AAAA,EAC5C;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;AAEO,SAAS,kCACd,UACwB;AACxB,QAAM,WAAW,8BAA8B,QAAQ;AACvD,QAAM,gBAAgB,2BAA2B,QAAQ;AACzD,SAAO;AAAA,IACL;AAAA,IACA,GAAI,gBAAgB,EAAE,cAAc,IAAI,CAAC;AAAA,IACzC;AAAA,IACA,KAAK;AAAA,MACH,MAAM;AAAA,MACN;AAAA,IACF;AAAA,IACA,OAAO,qCAAqC,QAAQ,KAAK;AAAA,EAC3D;AACF;AAEO,SAAS,mCACd,YAAyC,gCACf;AAC1B,SAAO,UAAU;AAAA,IAAI,CAAC,aACpB,kCAAkC,QAAQ;AAAA,EAC5C;AACF;AAEO,SAAS,8BACd,UACQ;AACR,SAAO,SAAS,QAAQ;AAC1B;AAEO,SAAS,2BACd,UACe;AACf,UAAQ,UAAU;AAAA,IAChB,KAAK;AACH,aAAO;AAAA,IACT,KAAK;AACH,aAAO;AAAA,IACT;AACE,aAAO;AAAA,EACX;AACF;AAEO,SAAS,iCACd,SACA,SAC0B;AAC1B,QAAM,kBAAkB,SAAS,oBAAoB;AACrD,QAAM,SAAS,WAAW,QAAQ,SAAS,IAAI,UAAU,CAAC;AAC1D,QAAM,oBAA8C,CAAC;AACrD,QAAM,iBAAiB,oBAAI,IAAY;AACvC,aAAW,UAAU,QAAQ;AAC3B,UAAM,aAAa,gCAAgC,MAAM;AACzD,QAAI,CAAC,YAAY;AACf;AAAA,IACF;AACA,UAAM,YAAY,GAAG,WAAW,QAAQ,KAAS,WAAW,QAAQ;AACpE,QAAI,eAAe,IAAI,SAAS,GAAG;AACjC;AAAA,IACF;AACA,mBAAe,IAAI,SAAS;AAC5B,sBAAkB,KAAK,UAAU;AAAA,EACnC;AACA,SAAO,kBAAkB,SAAS,KAAK,CAAC,kBACpC,oBACA,mCAAmC;AACzC;AAEO,SAAS,8BAA8B,OAOZ;AAChC,QAAM,wBAAwB,IAAI;AAAA,IAChC,MAAM,gBAAgB;AAAA,MAAQ,CAAC,WAC7B,OAAO,gBAAgB,CAAC,CAAC,OAAO,eAAe,MAAM,CAAU,IAAI,CAAC;AAAA,IACtE;AAAA,EACF;AACA,QAAM,cAAc,sBAAsB;AAAA,IACxC,MAAM,eAAe,KAAK,KAAK;AAAA,EACjC;AACA,MAAI,aAAa;AACf,WAAO;AAAA,EACT;AACA,QAAM,kBAAkB,MAAM,gBAAgB;AAAA,IAC5C,CAAC,WAAW,OAAO,aAAa,MAAM;AAAA,EACxC;AACA,QAAM,aAAa,IAAI;AAAA,IACrB,gBAAgB,IAAI,CAAC,WAAW,CAAC,OAAO,UAAU,MAAM,CAAC;AAAA,EAC3D;AACA,SACE,WAAW,IAAI,MAAM,kBAAkB,KAAK,KAAK,EAAE,KACnD,WAAW,IAAI,MAAM,yBAAyB,KAAK,KAAK,EAAE,KAC1D,WAAW,IAAI,8BAA8B,MAAM,QAAQ,CAAC,KAC5D,gBAAgB,KAAK,CAAC,WAAW,OAAO,aAAa,IAAI,KACzD,gBAAgB,CAAC,MAChB,MAAM,oBAAoB,QACvB,OACA,kCAAkC,MAAM,QAAQ;AAExD;AAEO,SAAS,gCACd,MACA,OACS;AACT,MAAI,SAAS,OAAO;AAClB,WAAO;AAAA,EACT;AACA,MAAI,CAAC,QAAQ,CAAC,OAAO;AACnB,WAAO;AAAA,EACT;AACA,MAAI,CAAC,QAAQ,CAAC,OAAO;AACnB,WAAO;AAAA,EACT;AACA,SAAO,2BAA2B,IAAI,MAAM,2BAA2B,KAAK;AAC9E;AAEA,SAAS,gCACP,QAC+B;AAC/B,QAAM,WAAW,OAAO,SAAS,KAAK;AACtC,QAAM,gBAAgB,OAAO,eAAe,KAAK;AACjD,QAAM,QAAQ,OAAO,MAAM,KAAK;AAChC,QAAM,OACJ,OAAO,OAAO,IAAI,SAAS,WAAW,OAAO,IAAI,KAAK,KAAK,IAAI;AACjE,MAAI,CAAC,YAAY,CAAC,SAAS,CAAC,QAAQ,OAAO,IAAI,aAAa,OAAO,UAAU;AAC3E,WAAO;AAAA,EACT;AACA,SAAO;AAAA,IACL,GAAG;AAAA,IACH;AAAA,IACA,GAAI,gBAAgB,EAAE,cAAc,IAAI,CAAC;AAAA,IACzC,UAAU,OAAO;AAAA,IACjB,KAAK;AAAA,MACH,GAAG,OAAO;AAAA,MACV;AAAA,MACA,UAAU,OAAO;AAAA,IACnB;AAAA,IACA;AAAA,IACA,GAAI,OAAO,aAAa,KAAK,IACzB,EAAE,aAAa,OAAO,YAAY,KAAK,EAAE,IACzC,CAAC;AAAA,IACL,GAAI,OAAO,YAAY,KAAK,IACxB,EAAE,YAAY,OAAO,WAAW,KAAK,EAAE,IACvC,CAAC;AAAA,IACL,GAAI,OAAO,mBAAmB,KAAK,IAC/B,EAAE,mBAAmB,OAAO,kBAAkB,KAAK,EAAE,IACrD,CAAC;AAAA,EACP;AACF;AAEA,SAAS,2BAA2B,KAAwC;AAC1E,SAAO,KAAK,UAAU,2BAA2B,GAAG,CAAC;AACvD;AAEA,SAAS,2BAA2B,OAAyB;AAC3D,MAAI,MAAM,QAAQ,KAAK,GAAG;AACxB,WAAO,MAAM,IAAI,0BAA0B;AAAA,EAC7C;AACA,MAAI,CAAC,SAAS,OAAO,UAAU,UAAU;AACvC,WAAO;AAAA,EACT;AACA,SAAO,OAAO;AAAA,IACZ,OAAO,QAAQ,KAAK,EACjB,KAAK,CAAC,CAAC,IAAI,GAAG,CAAC,KAAK,MAAM,KAAK,cAAc,KAAK,CAAC,EACnD,IAAI,CAAC,CAAC,KAAK,UAAU,MAAM,CAAC,KAAK,2BAA2B,UAAU,CAAC,CAAC;AAAA,EAC7E;AACF;","names":[]}
|
|
@@ -1,25 +1,25 @@
|
|
|
1
1
|
import {
|
|
2
2
|
Spinner,
|
|
3
|
-
managedAgentRoundedIconUrl,
|
|
4
3
|
userAvatarPlaceholderUrl,
|
|
5
4
|
workspaceAgentActivityStatusLabel
|
|
6
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-WMQN7SZC.js";
|
|
7
6
|
import {
|
|
8
7
|
normalizeAgentSessionMentionTitle
|
|
9
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-JRA44NYI.js";
|
|
10
9
|
import {
|
|
11
10
|
resolveAgentMentionFileThumbnailUrl,
|
|
12
11
|
resolveAgentMentionFileVisualKind
|
|
13
12
|
} from "./chunk-LUGELG5V.js";
|
|
14
13
|
import {
|
|
15
|
-
getOptionalAgentHostApi
|
|
16
|
-
|
|
14
|
+
getOptionalAgentHostApi,
|
|
15
|
+
managedAgentRoundedIconUrl
|
|
16
|
+
} from "./chunk-GL54NRMB.js";
|
|
17
17
|
import {
|
|
18
18
|
AGENT_CONTEXT_MENTION_PROVIDER_IDS
|
|
19
19
|
} from "./chunk-JM24HADP.js";
|
|
20
20
|
import {
|
|
21
21
|
translate
|
|
22
|
-
} from "./chunk-
|
|
22
|
+
} from "./chunk-H2YWXFYX.js";
|
|
23
23
|
|
|
24
24
|
// agent-gui/agentGuiNode/agentMentionAgentGeneratedFilesPresentation.ts
|
|
25
25
|
var AGENT_GENERATED_FOLDER_MIN_FILES = 2;
|
|
@@ -288,6 +288,8 @@ function agentMentionGroupLabel(groupId) {
|
|
|
288
288
|
switch (groupId) {
|
|
289
289
|
case "apps":
|
|
290
290
|
return translate("agentHost.agentGui.mentionGroupApps");
|
|
291
|
+
case "agents":
|
|
292
|
+
return translate("agentHost.agentGui.mentionGroupAgents");
|
|
291
293
|
case "files":
|
|
292
294
|
return translate("agentHost.agentGui.mentionGroupFiles");
|
|
293
295
|
case "opened_files":
|
|
@@ -306,6 +308,8 @@ function agentMentionFilterLabel(filter) {
|
|
|
306
308
|
switch (filter) {
|
|
307
309
|
case "app":
|
|
308
310
|
return translate("agentHost.agentGui.mentionFilterApp");
|
|
311
|
+
case "agent":
|
|
312
|
+
return translate("agentHost.agentGui.mentionFilterAgent");
|
|
309
313
|
case "file":
|
|
310
314
|
return translate("agentHost.agentGui.mentionFilterFile");
|
|
311
315
|
case "session":
|
|
@@ -324,6 +328,9 @@ function agentMentionEmptyGroupLabel(groupId, query) {
|
|
|
324
328
|
if (groupId === "apps") {
|
|
325
329
|
return translate("agentHost.agentGui.mentionEmptyApps");
|
|
326
330
|
}
|
|
331
|
+
if (groupId === "agents") {
|
|
332
|
+
return translate("agentHost.agentGui.mentionEmptyAgents");
|
|
333
|
+
}
|
|
327
334
|
if (groupId === "my_sessions") {
|
|
328
335
|
return translate("agentHost.agentGui.mentionEmptyMySessions");
|
|
329
336
|
}
|
|
@@ -342,6 +349,7 @@ var AGENT_MENTION_FILTER_TAB_ORDER = [
|
|
|
342
349
|
"session",
|
|
343
350
|
"file",
|
|
344
351
|
"issue",
|
|
352
|
+
"agent",
|
|
345
353
|
"app"
|
|
346
354
|
];
|
|
347
355
|
var DEFAULT_AGENT_MENTION_FILTER = "session";
|
|
@@ -359,6 +367,8 @@ function mentionGroupExpandCount(group, filter) {
|
|
|
359
367
|
}
|
|
360
368
|
function groupIdsForFilter(filter) {
|
|
361
369
|
switch (filter) {
|
|
370
|
+
case "agent":
|
|
371
|
+
return ["agents"];
|
|
362
372
|
case "app":
|
|
363
373
|
return ["apps"];
|
|
364
374
|
case "file":
|
|
@@ -380,6 +390,9 @@ function shouldShowEmptyGroup(groupId, filter, query) {
|
|
|
380
390
|
if (groupId === "apps") {
|
|
381
391
|
return filter === "app";
|
|
382
392
|
}
|
|
393
|
+
if (groupId === "agents") {
|
|
394
|
+
return filter === "agent";
|
|
395
|
+
}
|
|
383
396
|
if (groupId === "my_sessions") {
|
|
384
397
|
return filter === "session";
|
|
385
398
|
}
|
|
@@ -470,6 +483,7 @@ function buildBrowseCategories() {
|
|
|
470
483
|
var {
|
|
471
484
|
agentGeneratedFile: AGENT_GENERATED_FILE_PROVIDER_ID2,
|
|
472
485
|
agentSession: AGENT_SESSION_PROVIDER_ID2,
|
|
486
|
+
agentTarget: AGENT_TARGET_PROVIDER_ID,
|
|
473
487
|
file: FILE_PROVIDER_ID2,
|
|
474
488
|
workspaceApp: WORKSPACE_APP_PROVIDER_ID2,
|
|
475
489
|
workspaceIssue: WORKSPACE_ISSUE_PROVIDER_ID2
|
|
@@ -1178,6 +1192,25 @@ var AgentMentionSearchController = class {
|
|
|
1178
1192
|
totalCounts: totalCountsFromRawGroups(rawGroups)
|
|
1179
1193
|
};
|
|
1180
1194
|
}
|
|
1195
|
+
case "agent": {
|
|
1196
|
+
const agentItems = await this.queryProviderMentionItemsById({
|
|
1197
|
+
providerId: AGENT_TARGET_PROVIDER_ID,
|
|
1198
|
+
workspaceId: input.workspaceId,
|
|
1199
|
+
currentUserId: input.currentUserId,
|
|
1200
|
+
query: input.query,
|
|
1201
|
+
sessionCwd: input.sessionCwd,
|
|
1202
|
+
diagnostics: providerDiagnostics
|
|
1203
|
+
});
|
|
1204
|
+
const rawGroups = emptyAgentMentionRawGroups();
|
|
1205
|
+
rawGroups.agents = agentItems.filter(
|
|
1206
|
+
(item) => item.kind === "agent-target"
|
|
1207
|
+
);
|
|
1208
|
+
return {
|
|
1209
|
+
providerDiagnostics,
|
|
1210
|
+
rawGroups,
|
|
1211
|
+
totalCounts: totalCountsFromRawGroups(rawGroups)
|
|
1212
|
+
};
|
|
1213
|
+
}
|
|
1181
1214
|
case "app": {
|
|
1182
1215
|
const appItems = await this.queryProviderMentionItemsById({
|
|
1183
1216
|
providerId: WORKSPACE_APP_PROVIDER_ID2,
|
|
@@ -1400,6 +1433,7 @@ var AgentMentionSearchController = class {
|
|
|
1400
1433
|
"agent_generated_files",
|
|
1401
1434
|
"my_sessions",
|
|
1402
1435
|
"collab_sessions",
|
|
1436
|
+
"agents",
|
|
1403
1437
|
"apps",
|
|
1404
1438
|
"issues"
|
|
1405
1439
|
]) {
|
|
@@ -1427,6 +1461,7 @@ var AgentMentionSearchController = class {
|
|
|
1427
1461
|
"agent_generated_files",
|
|
1428
1462
|
"my_sessions",
|
|
1429
1463
|
"collab_sessions",
|
|
1464
|
+
"agents",
|
|
1430
1465
|
"apps",
|
|
1431
1466
|
"issues"
|
|
1432
1467
|
]) {
|
|
@@ -1454,6 +1489,7 @@ function preloadAgentMentionBrowse(input) {
|
|
|
1454
1489
|
function emptyAgentMentionRawGroups() {
|
|
1455
1490
|
return {
|
|
1456
1491
|
apps: [],
|
|
1492
|
+
agents: [],
|
|
1457
1493
|
opened_files: [],
|
|
1458
1494
|
agent_generated_files: [],
|
|
1459
1495
|
my_sessions: [],
|
|
@@ -1464,6 +1500,7 @@ function emptyAgentMentionRawGroups() {
|
|
|
1464
1500
|
function cloneAgentMentionRawGroups(rawGroups) {
|
|
1465
1501
|
return {
|
|
1466
1502
|
apps: [...rawGroups.apps],
|
|
1503
|
+
agents: [...rawGroups.agents],
|
|
1467
1504
|
opened_files: [...rawGroups.opened_files],
|
|
1468
1505
|
agent_generated_files: [...rawGroups.agent_generated_files],
|
|
1469
1506
|
my_sessions: [...rawGroups.my_sessions],
|
|
@@ -1474,6 +1511,7 @@ function cloneAgentMentionRawGroups(rawGroups) {
|
|
|
1474
1511
|
function totalCountsFromRawGroups(rawGroups) {
|
|
1475
1512
|
return {
|
|
1476
1513
|
apps: rawGroups.apps.length,
|
|
1514
|
+
agents: rawGroups.agents.length,
|
|
1477
1515
|
opened_files: rawGroups.opened_files.length,
|
|
1478
1516
|
agent_generated_files: rawGroups.agent_generated_files.length,
|
|
1479
1517
|
my_sessions: rawGroups.my_sessions.length,
|
|
@@ -1612,6 +1650,24 @@ function providerItemToAgentMentionItem(input) {
|
|
|
1612
1650
|
referencesListSupported: presentation.referencesListSupported === "true"
|
|
1613
1651
|
};
|
|
1614
1652
|
}
|
|
1653
|
+
if (input.providerId === AGENT_TARGET_PROVIDER_ID) {
|
|
1654
|
+
const agentProviderId = presentation.agentProviderId?.trim() || void 0;
|
|
1655
|
+
return {
|
|
1656
|
+
kind: "agent-target",
|
|
1657
|
+
href: createRichTextMentionHref2({
|
|
1658
|
+
providerId: "agent-target",
|
|
1659
|
+
entityId: targetId,
|
|
1660
|
+
label,
|
|
1661
|
+
scope: { workspaceId }
|
|
1662
|
+
}),
|
|
1663
|
+
workspaceId,
|
|
1664
|
+
targetId,
|
|
1665
|
+
name: label,
|
|
1666
|
+
description: compactText(presentation.description) || compactText(presentation.subtitle) || compactText(input.subtitle) || void 0,
|
|
1667
|
+
agentProviderId,
|
|
1668
|
+
iconUrl: presentation.iconUrl?.trim() || void 0
|
|
1669
|
+
};
|
|
1670
|
+
}
|
|
1615
1671
|
if (input.providerId === AGENT_SESSION_PROVIDER_ID2) {
|
|
1616
1672
|
const agentName = presentation.subtitle?.trim() || "";
|
|
1617
1673
|
const title = normalizeAgentSessionMentionTitle(label) || label;
|
|
@@ -1945,6 +2001,9 @@ function resolveMentionPaletteEmptyLabel(input) {
|
|
|
1945
2001
|
if (input.filter === "app") {
|
|
1946
2002
|
return agentMentionEmptyGroupLabel("apps", input.query);
|
|
1947
2003
|
}
|
|
2004
|
+
if (input.filter === "agent") {
|
|
2005
|
+
return agentMentionEmptyGroupLabel("agents", input.query);
|
|
2006
|
+
}
|
|
1948
2007
|
if (input.filter === "issue") {
|
|
1949
2008
|
return agentMentionEmptyGroupLabel("issues", input.query);
|
|
1950
2009
|
}
|
|
@@ -2004,6 +2063,14 @@ function agentMentionItemToRowItem(item) {
|
|
|
2004
2063
|
iconUrl: item.iconUrl ?? null
|
|
2005
2064
|
};
|
|
2006
2065
|
}
|
|
2066
|
+
if (item.kind === "agent-target") {
|
|
2067
|
+
return {
|
|
2068
|
+
kind: "app",
|
|
2069
|
+
name: item.name,
|
|
2070
|
+
description: item.description ?? null,
|
|
2071
|
+
iconUrl: item.iconUrl ?? managedAgentRoundedIconUrl(item.agentProviderId)
|
|
2072
|
+
};
|
|
2073
|
+
}
|
|
2007
2074
|
if (item.kind === "workspace-reference") {
|
|
2008
2075
|
return {
|
|
2009
2076
|
kind: "app",
|
|
@@ -2086,6 +2153,8 @@ function mentionStatusTone(status) {
|
|
|
2086
2153
|
}
|
|
2087
2154
|
function browseHintForFilter(filter) {
|
|
2088
2155
|
switch (filter) {
|
|
2156
|
+
case "agent":
|
|
2157
|
+
return translate("agentHost.agentGui.contextPickerBrowseAgentHint");
|
|
2089
2158
|
case "app":
|
|
2090
2159
|
return translate("agentHost.agentGui.contextPickerBrowseAppHint");
|
|
2091
2160
|
case "file":
|
|
@@ -2134,4 +2203,4 @@ export {
|
|
|
2134
2203
|
AgentFileMentionPalette,
|
|
2135
2204
|
AgentContextMentionPalette
|
|
2136
2205
|
};
|
|
2137
|
-
//# sourceMappingURL=chunk-
|
|
2206
|
+
//# sourceMappingURL=chunk-7ZDLFTVL.js.map
|