@tutti-os/agent-gui 0.0.68 → 0.0.69
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/agent-conversation/index.d.ts +2 -2
- package/dist/agent-conversation/index.js +5 -5
- package/dist/agent-message-center/index.js +7 -7
- package/dist/{agentGuiNodeTypes-BTHu_g4m.d.ts → agentGuiNodeTypes-BipgG2ib.d.ts} +8 -1
- package/dist/app/renderer/agentactivity.css +41 -4
- package/dist/app/renderer/assets/icons/agents/opencode-flat-filled.svg +4 -0
- package/dist/{chunk-C2M2ELXF.js → chunk-547R2HOD.js} +2 -2
- package/dist/{chunk-J335PQ5H.js → chunk-6XRTDIDR.js} +11 -26
- package/dist/chunk-6XRTDIDR.js.map +1 -0
- package/dist/{chunk-KJLSZETD.js → chunk-DAPKF2SN.js} +2 -2
- package/dist/{chunk-GOEL3BO7.js → chunk-EHLJL76A.js} +2 -2
- package/dist/{chunk-GXHZNIWT.js → chunk-ERBUQOIL.js} +2 -2
- package/dist/{chunk-TB7PKP6F.js → chunk-FRAG4UFU.js} +4 -4
- package/dist/{chunk-A2KZVRUO.js → chunk-HAKNLXW7.js} +2 -2
- package/dist/{chunk-DYX6466P.js → chunk-JA6Z3QA7.js} +3 -3
- package/dist/{chunk-3QPN2Y7R.js → chunk-KAPBUKIT.js} +21 -15
- package/dist/chunk-KAPBUKIT.js.map +1 -0
- package/dist/{chunk-LQRD4X6R.js → chunk-KTIHLBCN.js} +2 -2
- package/dist/{chunk-D22A3KGQ.js → chunk-KTIKZNGS.js} +2 -2
- package/dist/{chunk-YE5JSME7.js → chunk-N37A62BK.js} +17 -1
- package/dist/chunk-N37A62BK.js.map +1 -0
- package/dist/{chunk-AIR6A4NP.js → chunk-NH3XBJTZ.js} +2 -2
- package/dist/{chunk-VRV6GBF5.js → chunk-NROZAN34.js} +8 -1
- package/dist/chunk-NROZAN34.js.map +1 -0
- package/dist/{chunk-QGKK6FHC.js → chunk-S32FLJRP.js} +4 -4
- package/dist/context-mention-palette/index.js +6 -6
- package/dist/i18n/index.d.ts +20 -14
- package/dist/i18n/index.js +2 -2
- package/dist/index.d.ts +8 -5
- package/dist/index.js +492 -191
- package/dist/index.js.map +1 -1
- package/dist/opencode-flat-filled-CYAJPX45.svg +4 -0
- package/dist/queued-prompt-runtime.d.ts +2 -2
- package/dist/{types-BwDrG654.d.ts → types-DZ79b8Zn.d.ts} +6 -1
- package/dist/workbench/contribution.d.ts +1 -1
- package/dist/workbench/contribution.js +4 -4
- package/dist/workbench/index.d.ts +1 -1
- package/dist/workbench/index.js +7 -7
- package/dist/workbench/launch.d.ts +1 -1
- 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 +1 -1
- package/dist/workspace-agent-generated-files.js +3 -3
- package/package.json +12 -12
- package/dist/chunk-3QPN2Y7R.js.map +0 -1
- package/dist/chunk-J335PQ5H.js.map +0 -1
- package/dist/chunk-VRV6GBF5.js.map +0 -1
- package/dist/chunk-YE5JSME7.js.map +0 -1
- /package/dist/{chunk-C2M2ELXF.js.map → chunk-547R2HOD.js.map} +0 -0
- /package/dist/{chunk-KJLSZETD.js.map → chunk-DAPKF2SN.js.map} +0 -0
- /package/dist/{chunk-GOEL3BO7.js.map → chunk-EHLJL76A.js.map} +0 -0
- /package/dist/{chunk-GXHZNIWT.js.map → chunk-ERBUQOIL.js.map} +0 -0
- /package/dist/{chunk-TB7PKP6F.js.map → chunk-FRAG4UFU.js.map} +0 -0
- /package/dist/{chunk-A2KZVRUO.js.map → chunk-HAKNLXW7.js.map} +0 -0
- /package/dist/{chunk-DYX6466P.js.map → chunk-JA6Z3QA7.js.map} +0 -0
- /package/dist/{chunk-LQRD4X6R.js.map → chunk-KTIHLBCN.js.map} +0 -0
- /package/dist/{chunk-D22A3KGQ.js.map → chunk-KTIKZNGS.js.map} +0 -0
- /package/dist/{chunk-AIR6A4NP.js.map → chunk-NH3XBJTZ.js.map} +0 -0
- /package/dist/{chunk-QGKK6FHC.js.map → chunk-S32FLJRP.js.map} +0 -0
|
@@ -5,7 +5,7 @@ import {
|
|
|
5
5
|
} from "./chunk-BHNJN2TR.js";
|
|
6
6
|
import {
|
|
7
7
|
agentGUIProviderTargetRefsEqual
|
|
8
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-N37A62BK.js";
|
|
9
9
|
|
|
10
10
|
// workbench/state.ts
|
|
11
11
|
function createDefaultAgentGuiWorkbenchNodeState(provider = "codex") {
|
|
@@ -329,4 +329,4 @@ export {
|
|
|
329
329
|
agentGuiWorkbenchProviderFromInstanceIdOrNull,
|
|
330
330
|
createAgentGuiWorkbenchNodeStateSource
|
|
331
331
|
};
|
|
332
|
-
//# sourceMappingURL=chunk-
|
|
332
|
+
//# sourceMappingURL=chunk-KTIHLBCN.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
translateInUiLanguage
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-KAPBUKIT.js";
|
|
4
4
|
import {
|
|
5
5
|
normalizeAgentTitleText
|
|
6
6
|
} from "./chunk-GCBDIQDX.js";
|
|
@@ -327,4 +327,4 @@ export {
|
|
|
327
327
|
resolveAgentGUIProviderDisplayLabel,
|
|
328
328
|
firstAgentGUIUserMessageTitle
|
|
329
329
|
};
|
|
330
|
-
//# sourceMappingURL=chunk-
|
|
330
|
+
//# sourceMappingURL=chunk-KTIKZNGS.js.map
|
|
@@ -46,6 +46,7 @@ function createDisabledPlaceholderAgentGUIProviderTarget(provider) {
|
|
|
46
46
|
function createSharedAgentGUIProviderTarget(input) {
|
|
47
47
|
const sharedAgentId = input.sharedAgentId.trim();
|
|
48
48
|
const targetId = `shared-agent:${sharedAgentId}`;
|
|
49
|
+
const badge = normalizeAgentGUIProviderTargetBadge(input.badge);
|
|
49
50
|
return {
|
|
50
51
|
targetId,
|
|
51
52
|
...input.agentTargetId?.trim() ? { agentTargetId: input.agentTargetId.trim() } : {},
|
|
@@ -57,6 +58,7 @@ function createSharedAgentGUIProviderTarget(input) {
|
|
|
57
58
|
sharedAgentId
|
|
58
59
|
},
|
|
59
60
|
label: input.label,
|
|
61
|
+
...badge ? { badge } : {},
|
|
60
62
|
...input.ownerLabel?.trim() ? { ownerLabel: input.ownerLabel.trim() } : {},
|
|
61
63
|
...input.iconUrl?.trim() ? { iconUrl: input.iconUrl.trim() } : {},
|
|
62
64
|
...input.unavailableReason?.trim() ? { unavailableReason: input.unavailableReason.trim() } : {},
|
|
@@ -174,6 +176,7 @@ function normalizeAgentGUIProviderTarget(target) {
|
|
|
174
176
|
provider: _provider,
|
|
175
177
|
ref: _ref,
|
|
176
178
|
label: _label,
|
|
179
|
+
badge,
|
|
177
180
|
description,
|
|
178
181
|
iconUrl,
|
|
179
182
|
ownerLabel,
|
|
@@ -187,6 +190,7 @@ function normalizeAgentGUIProviderTarget(target) {
|
|
|
187
190
|
if (!targetId || !label || !kind || target.ref.provider !== target.provider) {
|
|
188
191
|
return null;
|
|
189
192
|
}
|
|
193
|
+
const normalizedBadge = normalizeAgentGUIProviderTargetBadge(badge);
|
|
190
194
|
return {
|
|
191
195
|
...rest,
|
|
192
196
|
targetId,
|
|
@@ -198,12 +202,24 @@ function normalizeAgentGUIProviderTarget(target) {
|
|
|
198
202
|
provider: target.provider
|
|
199
203
|
},
|
|
200
204
|
label,
|
|
205
|
+
...normalizedBadge ? { badge: normalizedBadge } : {},
|
|
201
206
|
...description?.trim() ? { description: description.trim() } : {},
|
|
202
207
|
...iconUrl?.trim() ? { iconUrl: iconUrl.trim() } : {},
|
|
203
208
|
...ownerLabel?.trim() ? { ownerLabel: ownerLabel.trim() } : {},
|
|
204
209
|
...unavailableReason?.trim() ? { unavailableReason: unavailableReason.trim() } : {}
|
|
205
210
|
};
|
|
206
211
|
}
|
|
212
|
+
function normalizeAgentGUIProviderTargetBadge(badge) {
|
|
213
|
+
const iconUrl = badge?.iconUrl?.trim() ?? "";
|
|
214
|
+
if (!iconUrl) {
|
|
215
|
+
return null;
|
|
216
|
+
}
|
|
217
|
+
const label = badge?.label?.trim() ?? "";
|
|
218
|
+
return {
|
|
219
|
+
iconUrl,
|
|
220
|
+
...label ? { label } : {}
|
|
221
|
+
};
|
|
222
|
+
}
|
|
207
223
|
function stableProviderTargetRefKey(ref) {
|
|
208
224
|
return JSON.stringify(sortProviderTargetRefValue(ref));
|
|
209
225
|
}
|
|
@@ -231,4 +247,4 @@ export {
|
|
|
231
247
|
resolveAgentGUIProviderTarget,
|
|
232
248
|
agentGUIProviderTargetRefsEqual
|
|
233
249
|
};
|
|
234
|
-
//# sourceMappingURL=chunk-
|
|
250
|
+
//# sourceMappingURL=chunk-N37A62BK.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../providerTargets.ts"],"sourcesContent":["import type {\n AgentGUIProvider,\n AgentGUIProviderTarget,\n AgentGUIProviderTargetBadge,\n AgentGUIProviderTargetRef\n} from \"./types.ts\";\n\nconst agentGUIProviderTargetStaticLabels: Record<AgentGUIProvider, string> = {\n \"claude-code\": \"Claude Code\",\n codex: \"Codex\",\n cursor: \"Cursor\",\n gemini: \"Gemini\",\n hermes: \"Hermes\",\n nexight: \"Tutti Agent\",\n openclaw: \"OpenClaw\",\n opencode: \"OpenCode\",\n \"tutti-agent\": \"Tutti Agent\"\n};\n\nexport const agentGUIDefaultTargetProviders = [\n \"codex\",\n \"claude-code\",\n \"cursor\",\n \"tutti-agent\",\n \"opencode\",\n \"hermes\",\n \"openclaw\"\n] as const satisfies readonly AgentGUIProvider[];\n\nconst agentGUIDisabledPlaceholderProviders = [\n \"hermes\",\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: agentGUIProviderTargetStaticLabels[provider] ?? provider\n };\n}\n\nexport function createDisabledPlaceholderAgentGUIProviderTarget(\n provider: AgentGUIProvider\n): AgentGUIProviderTarget {\n return {\n ...createLocalAgentGUIProviderTarget(provider),\n disabled: true\n };\n}\n\nexport function createSharedAgentGUIProviderTarget(input: {\n provider: AgentGUIProvider;\n sharedAgentId: string;\n label: string;\n agentTargetId?: string | null;\n badge?: AgentGUIProviderTargetBadge | null;\n ownerLabel?: string | null;\n iconUrl?: string | null;\n unavailableReason?: string | null;\n disabled?: boolean;\n ref?: Record<string, unknown> | null;\n}): AgentGUIProviderTarget {\n const sharedAgentId = input.sharedAgentId.trim();\n const targetId = `shared-agent:${sharedAgentId}`;\n const badge = normalizeAgentGUIProviderTargetBadge(input.badge);\n return {\n targetId,\n ...(input.agentTargetId?.trim()\n ? { agentTargetId: input.agentTargetId.trim() }\n : {}),\n provider: input.provider,\n ref: {\n ...(input.ref ?? {}),\n kind: \"shared-agent\",\n provider: input.provider,\n sharedAgentId\n },\n label: input.label,\n ...(badge ? { badge } : {}),\n ...(input.ownerLabel?.trim()\n ? { ownerLabel: input.ownerLabel.trim() }\n : {}),\n ...(input.iconUrl?.trim() ? { iconUrl: input.iconUrl.trim() } : {}),\n ...(input.unavailableReason?.trim()\n ? { unavailableReason: input.unavailableReason.trim() }\n : {}),\n ...(input.disabled === true ? { disabled: true } : {})\n };\n}\n\nexport function createLocalAgentGUIProviderTargets(\n providers: readonly AgentGUIProvider[] = agentGUIDefaultTargetProviders\n): AgentGUIProviderTarget[] {\n return providers.map((provider) =>\n createLocalAgentGUIProviderTarget(provider)\n );\n}\n\nfunction createStaticAgentGUIProviderTargets(\n providers: readonly AgentGUIProvider[] = agentGUIDefaultTargetProviders,\n options?: { includeDisabledPlaceholders?: boolean }\n): AgentGUIProviderTarget[] {\n const disabledProviders = new Set<AgentGUIProvider>(\n options?.includeDisabledPlaceholders === true\n ? agentGUIDisabledPlaceholderProviders\n : []\n );\n return providers.map((provider) =>\n disabledProviders.has(provider)\n ? createDisabledPlaceholderAgentGUIProviderTarget(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 case \"tutti-agent\":\n return \"local:tutti-agent\";\n case \"cursor\":\n return \"local:cursor\";\n case \"hermes\":\n return \"local:hermes\";\n case \"nexight\":\n return \"local:nexight\";\n case \"openclaw\":\n return \"local:openclaw\";\n case \"opencode\":\n return \"local:opencode\";\n default:\n return null;\n }\n}\n\nexport function normalizeAgentGUIProviderTargets(\n targets: readonly AgentGUIProviderTarget[] | null | undefined,\n options?: {\n includeDisabledPlaceholders?: boolean;\n useStaticCatalog?: boolean;\n }\n): AgentGUIProviderTarget[] {\n const includeDisabledPlaceholders =\n options?.includeDisabledPlaceholders === true;\n const useStaticCatalog = options?.useStaticCatalog !== false;\n const source = targets && targets.length > 0 ? targets : [];\n const normalizedTargets: AgentGUIProviderTarget[] = [];\n const seenTargetKeys = new Set<string>();\n const seenProviders = new Set<AgentGUIProvider>();\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 seenProviders.add(normalized.provider);\n normalizedTargets.push(normalized);\n }\n if (includeDisabledPlaceholders && normalizedTargets.length > 0) {\n for (const provider of agentGUIDisabledPlaceholderProviders) {\n if (seenProviders.has(provider)) {\n continue;\n }\n normalizedTargets.push(\n createDisabledPlaceholderAgentGUIProviderTarget(provider)\n );\n }\n }\n return normalizedTargets.length > 0 || !useStaticCatalog\n ? normalizedTargets\n : createStaticAgentGUIProviderTargets(undefined, {\n includeDisabledPlaceholders\n });\n}\n\nexport function resolveAgentGUIProviderTarget(input: {\n agentTargetId?: string | null;\n defaultProviderTargetId?: string | null;\n provider: AgentGUIProvider;\n providerTargetId?: string | null;\n providerTargets: readonly AgentGUIProviderTarget[];\n useStaticCatalog?: boolean;\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.useStaticCatalog === 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 {\n targetId: _targetId,\n agentTargetId: _agentTargetId,\n provider: _provider,\n ref: _ref,\n label: _label,\n badge,\n description,\n iconUrl,\n ownerLabel,\n unavailableReason,\n ...rest\n } = target;\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 const normalizedBadge = normalizeAgentGUIProviderTargetBadge(badge);\n return {\n ...rest,\n targetId,\n ...(agentTargetId ? { agentTargetId } : {}),\n provider: target.provider,\n ref: {\n ...target.ref,\n kind,\n provider: target.provider\n },\n label,\n ...(normalizedBadge ? { badge: normalizedBadge } : {}),\n ...(description?.trim() ? { description: description.trim() } : {}),\n ...(iconUrl?.trim() ? { iconUrl: iconUrl.trim() } : {}),\n ...(ownerLabel?.trim() ? { ownerLabel: ownerLabel.trim() } : {}),\n ...(unavailableReason?.trim()\n ? { unavailableReason: unavailableReason.trim() }\n : {})\n };\n}\n\nfunction normalizeAgentGUIProviderTargetBadge(\n badge: AgentGUIProviderTargetBadge | null | undefined\n): AgentGUIProviderTargetBadge | null {\n const iconUrl = badge?.iconUrl?.trim() ?? \"\";\n if (!iconUrl) {\n return null;\n }\n const label = badge?.label?.trim() ?? \"\";\n return {\n iconUrl,\n ...(label ? { label } : {})\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":"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","names":[]}
|
|
@@ -6,7 +6,7 @@ import {
|
|
|
6
6
|
setCurrentAgentGuiI18nRuntime,
|
|
7
7
|
translate,
|
|
8
8
|
translateInUiLanguage
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-KAPBUKIT.js";
|
|
10
10
|
|
|
11
11
|
// i18n/index.ts
|
|
12
12
|
import React, {
|
|
@@ -68,4 +68,4 @@ export {
|
|
|
68
68
|
AgentGuiI18nProvider,
|
|
69
69
|
useTranslation
|
|
70
70
|
};
|
|
71
|
-
//# sourceMappingURL=chunk-
|
|
71
|
+
//# sourceMappingURL=chunk-NH3XBJTZ.js.map
|
|
@@ -22,6 +22,9 @@ var codex_flat_filled_default = "./codex-flat-filled-WYHCF5VR.svg";
|
|
|
22
22
|
// app/renderer/assets/icons/agents/cursor-flat-filled.svg
|
|
23
23
|
var cursor_flat_filled_default = "./cursor-flat-filled-CL7N3BTZ.svg";
|
|
24
24
|
|
|
25
|
+
// app/renderer/assets/icons/agents/opencode-flat-filled.svg
|
|
26
|
+
var opencode_flat_filled_default = "./opencode-flat-filled-CYAJPX45.svg";
|
|
27
|
+
|
|
25
28
|
// app/renderer/assets/icons/agents/tutti-flat-filled.svg
|
|
26
29
|
var tutti_flat_filled_default = "./tutti-flat-filled-K32QBTZE.svg";
|
|
27
30
|
|
|
@@ -34,6 +37,8 @@ function resolveAgentGuiSessionProviderIconUrl(provider) {
|
|
|
34
37
|
return codexRoundedUrl;
|
|
35
38
|
case "cursor":
|
|
36
39
|
return cursorColorfulUrl;
|
|
40
|
+
case "opencode":
|
|
41
|
+
return opencodeRoundedUrl;
|
|
37
42
|
case "tutti":
|
|
38
43
|
return manageAgentTuttiUrl;
|
|
39
44
|
default:
|
|
@@ -48,6 +53,8 @@ function resolveAgentGuiSessionProviderFlatIconUrl(provider) {
|
|
|
48
53
|
return codex_flat_filled_default;
|
|
49
54
|
case "cursor":
|
|
50
55
|
return cursor_flat_filled_default;
|
|
56
|
+
case "opencode":
|
|
57
|
+
return opencode_flat_filled_default;
|
|
51
58
|
case "tutti":
|
|
52
59
|
return tutti_flat_filled_default;
|
|
53
60
|
default:
|
|
@@ -163,4 +170,4 @@ export {
|
|
|
163
170
|
agentGuiDockIconUrl,
|
|
164
171
|
agentGuiDockIconUrls
|
|
165
172
|
};
|
|
166
|
-
//# sourceMappingURL=chunk-
|
|
173
|
+
//# sourceMappingURL=chunk-NROZAN34.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../agentGuiSessionProviderIconUrls.ts","../agent-gui/agentGuiNode/model/agentGuiRailLayout.ts","../dockIcons.ts"],"sourcesContent":["import claudeCodeFlatFilledIconUrl from \"./app/renderer/assets/icons/agents/claudecode-flat-filled.svg\";\nimport codexFlatFilledIconUrl from \"./app/renderer/assets/icons/agents/codex-flat-filled.svg\";\nimport cursorFlatFilledIconUrl from \"./app/renderer/assets/icons/agents/cursor-flat-filled.svg\";\nimport opencodeFlatFilledIconUrl from \"./app/renderer/assets/icons/agents/opencode-flat-filled.svg\";\nimport tuttiFlatFilledIconUrl from \"./app/renderer/assets/icons/agents/tutti-flat-filled.svg\";\nimport {\n claudeRoundedUrl,\n codexRoundedUrl,\n cursorColorfulUrl,\n manageAgentTuttiUrl,\n opencodeRoundedUrl\n} from \"./managedAgentIconAssets\";\nimport { normalizeManagedAgentProvider } from \"./shared/managedAgentProviders\";\n\nexport {\n claudeCodeFlatFilledIconUrl,\n codexFlatFilledIconUrl,\n cursorColorfulUrl,\n cursorFlatFilledIconUrl,\n opencodeFlatFilledIconUrl,\n tuttiFlatFilledIconUrl\n};\n\n/**\n * Colorful session icons, used where the icon renders as a real <img> avatar\n * (collapsed workbench header, dock popup). Colorful assets keep their fill.\n */\nexport function resolveAgentGuiSessionProviderIconUrl(\n provider: string | undefined\n): string | null {\n switch (normalizeManagedAgentProvider(provider)) {\n case \"claude-code\":\n return claudeRoundedUrl;\n case \"codex\":\n return codexRoundedUrl;\n case \"cursor\":\n return cursorColorfulUrl;\n case \"opencode\":\n return opencodeRoundedUrl;\n case \"tutti\":\n return manageAgentTuttiUrl;\n default:\n return null;\n }\n}\n\n/**\n * Flat monochrome session icons, used where the icon renders through a CSS\n * mask (e.g. the conversation rail rows). Colorful assets would collapse to a\n * solid square under a mask, so these must be single-color glyphs with a\n * transparent background.\n */\nexport function resolveAgentGuiSessionProviderFlatIconUrl(\n provider: string | undefined\n): string | null {\n switch (normalizeManagedAgentProvider(provider)) {\n case \"claude-code\":\n return claudeCodeFlatFilledIconUrl;\n case \"codex\":\n return codexFlatFilledIconUrl;\n case \"cursor\":\n return cursorFlatFilledIconUrl;\n case \"opencode\":\n return opencodeFlatFilledIconUrl;\n case \"tutti\":\n return tuttiFlatFilledIconUrl;\n default:\n return null;\n }\n}\n","function clamp(value: number, min: number, max: number): number {\n return Math.min(max, Math.max(min, value));\n}\n\n// Keep aligned with the issue manager task-list rail dimensions.\nexport const AGENT_GUI_CONVERSATION_RAIL_DEFAULT_WIDTH_PX = 280;\nexport const AGENT_GUI_CONVERSATION_RAIL_MIN_WIDTH_PX = 248;\nexport const AGENT_GUI_CONVERSATION_RAIL_MAX_WIDTH_PX = 520;\nexport const AGENT_GUI_DETAIL_MIN_WIDTH_PX = 220;\nexport const AGENT_GUI_RAIL_RESIZE_HANDLE_WIDTH_PX = 10;\nexport const AGENT_GUI_COLLAPSED_MIN_WIDTH_PX = 460;\nexport const AGENT_GUI_EXPANDED_MIN_WIDTH_PX =\n AGENT_GUI_CONVERSATION_RAIL_MIN_WIDTH_PX +\n AGENT_GUI_DETAIL_MIN_WIDTH_PX +\n AGENT_GUI_RAIL_RESIZE_HANDLE_WIDTH_PX;\nexport const AGENT_GUI_AUTO_COLLAPSE_WIDTH_PX = 610;\nexport const AGENT_GUI_EXPANDED_TARGET_WIDTH_PX = 800;\n\nexport interface AgentGUIExpandedWindowFrameInput {\n position: { x: number; y: number };\n width: number;\n height: number;\n desktopSize: { width: number; height: number };\n conversationRailWidthPx: number | null | undefined;\n}\n\nexport function shouldAutoCollapseAgentGUIConversationRail(\n containerWidthPx: number\n): boolean {\n return (\n Number.isFinite(containerWidthPx) &&\n containerWidthPx > 0 &&\n containerWidthPx <= AGENT_GUI_AUTO_COLLAPSE_WIDTH_PX\n );\n}\n\nexport function resolveAgentGUIConversationRailMaxWidthPx(\n containerWidthPx: number\n): number {\n const safeContainerWidth =\n Number.isFinite(containerWidthPx) && containerWidthPx > 0\n ? containerWidthPx\n : AGENT_GUI_CONVERSATION_RAIL_DEFAULT_WIDTH_PX +\n AGENT_GUI_DETAIL_MIN_WIDTH_PX +\n AGENT_GUI_RAIL_RESIZE_HANDLE_WIDTH_PX;\n\n return Math.max(\n AGENT_GUI_CONVERSATION_RAIL_MIN_WIDTH_PX,\n Math.min(\n AGENT_GUI_CONVERSATION_RAIL_MAX_WIDTH_PX,\n safeContainerWidth -\n AGENT_GUI_DETAIL_MIN_WIDTH_PX -\n AGENT_GUI_RAIL_RESIZE_HANDLE_WIDTH_PX\n )\n );\n}\n\nexport function clampAgentGUIConversationRailWidthPx(\n widthPx: number | null | undefined,\n containerWidthPx: number\n): number {\n const preferredWidthPx =\n typeof widthPx === \"number\" && Number.isFinite(widthPx)\n ? Math.round(widthPx)\n : null;\n\n return clamp(\n preferredWidthPx ?? AGENT_GUI_CONVERSATION_RAIL_DEFAULT_WIDTH_PX,\n AGENT_GUI_CONVERSATION_RAIL_MIN_WIDTH_PX,\n resolveAgentGUIConversationRailMaxWidthPx(containerWidthPx)\n );\n}\n\nexport function resolveNextAgentGUIConversationRailWidthPx(input: {\n currentWidthPx: number | null | undefined;\n requestedWidthPx: number;\n containerWidthPx: number;\n}): number | null {\n const nextWidthPx = clampAgentGUIConversationRailWidthPx(\n input.requestedWidthPx,\n input.containerWidthPx\n );\n if (input.currentWidthPx === nextWidthPx) {\n return input.currentWidthPx;\n }\n\n if (input.currentWidthPx === null || input.currentWidthPx === undefined) {\n const defaultWidthPx = clampAgentGUIConversationRailWidthPx(\n null,\n input.containerWidthPx\n );\n if (nextWidthPx === defaultWidthPx) {\n return null;\n }\n }\n\n return nextWidthPx;\n}\n\nexport function resolveAgentGUIExpandedWindowFrame(\n input: AgentGUIExpandedWindowFrameInput\n): {\n position: { x: number; y: number };\n size: { width: number; height: number };\n} {\n const desiredRailWidthPx = clampAgentGUIConversationRailWidthPx(\n input.conversationRailWidthPx,\n AGENT_GUI_CONVERSATION_RAIL_MAX_WIDTH_PX +\n AGENT_GUI_DETAIL_MIN_WIDTH_PX +\n AGENT_GUI_RAIL_RESIZE_HANDLE_WIDTH_PX\n );\n const desiredWidthPx = Math.max(\n Math.round(input.width),\n desiredRailWidthPx +\n AGENT_GUI_DETAIL_MIN_WIDTH_PX +\n AGENT_GUI_RAIL_RESIZE_HANDLE_WIDTH_PX,\n AGENT_GUI_EXPANDED_MIN_WIDTH_PX,\n AGENT_GUI_EXPANDED_TARGET_WIDTH_PX\n );\n const desktopWidthPx =\n Number.isFinite(input.desktopSize.width) && input.desktopSize.width > 0\n ? Math.round(input.desktopSize.width)\n : desiredWidthPx;\n const nextWidthPx = Math.min(desiredWidthPx, desktopWidthPx);\n const maxX = Math.max(0, desktopWidthPx - nextWidthPx);\n const nextX = clamp(Math.round(input.position.x), 0, maxX);\n\n return {\n position: {\n x: nextX,\n y: input.position.y\n },\n size: {\n width: nextWidthPx,\n height: input.height\n }\n };\n}\n","import {\n codexRoundedUrl,\n cursorRoundedUrl,\n geminiRoundedUrl,\n hermesRoundedUrl,\n manageAgentClaudeCodeUrl,\n manageAgentTuttiUrl,\n opencodeRoundedUrl,\n openclawRoundedUrl,\n tuttiAgentRoundedUrl\n} from \"./managedAgentIconAssets.ts\";\n\nexport const agentGuiDockIconUrl = codexRoundedUrl;\n\nexport const agentGuiDockIconUrls = {\n \"claude-code\": manageAgentClaudeCodeUrl,\n codex: codexRoundedUrl,\n cursor: cursorRoundedUrl,\n gemini: geminiRoundedUrl,\n hermes: hermesRoundedUrl,\n nexight: manageAgentTuttiUrl,\n openclaw: openclawRoundedUrl,\n opencode: opencodeRoundedUrl,\n \"tutti-agent\": tuttiAgentRoundedUrl\n} as const;\n"],"mappings":"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","names":[]}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import {
|
|
2
2
|
userAvatarPlaceholderUrl,
|
|
3
3
|
workspaceAgentActivityStatusLabel
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-HAKNLXW7.js";
|
|
5
5
|
import {
|
|
6
6
|
normalizeAgentSessionMentionTitle
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-547R2HOD.js";
|
|
8
8
|
import {
|
|
9
9
|
resolveAgentMentionFileThumbnailUrl,
|
|
10
10
|
resolveAgentMentionFileVisualKind
|
|
@@ -15,7 +15,7 @@ import {
|
|
|
15
15
|
} from "./chunk-ZZBLWZJR.js";
|
|
16
16
|
import {
|
|
17
17
|
translate
|
|
18
|
-
} from "./chunk-
|
|
18
|
+
} from "./chunk-NH3XBJTZ.js";
|
|
19
19
|
import {
|
|
20
20
|
AGENT_CONTEXT_MENTION_PROVIDER_IDS
|
|
21
21
|
} from "./chunk-JM24HADP.js";
|
|
@@ -2211,4 +2211,4 @@ export {
|
|
|
2211
2211
|
AgentFileMentionPalette,
|
|
2212
2212
|
AgentContextMentionPalette
|
|
2213
2213
|
};
|
|
2214
|
-
//# sourceMappingURL=chunk-
|
|
2214
|
+
//# sourceMappingURL=chunk-S32FLJRP.js.map
|
|
@@ -4,19 +4,19 @@ import {
|
|
|
4
4
|
AgentMentionSearchController,
|
|
5
5
|
flattenAgentMentionPaletteEntries,
|
|
6
6
|
groupStartKeys
|
|
7
|
-
} from "../chunk-
|
|
8
|
-
import "../chunk-
|
|
9
|
-
import "../chunk-
|
|
7
|
+
} from "../chunk-S32FLJRP.js";
|
|
8
|
+
import "../chunk-ERBUQOIL.js";
|
|
9
|
+
import "../chunk-HAKNLXW7.js";
|
|
10
10
|
import "../chunk-IBIMGLCD.js";
|
|
11
|
-
import "../chunk-
|
|
11
|
+
import "../chunk-547R2HOD.js";
|
|
12
12
|
import "../chunk-Y35GDLP2.js";
|
|
13
13
|
import "../chunk-LUGELG5V.js";
|
|
14
14
|
import "../chunk-ZZBLWZJR.js";
|
|
15
15
|
import "../chunk-4US2YHBY.js";
|
|
16
|
-
import "../chunk-
|
|
16
|
+
import "../chunk-NH3XBJTZ.js";
|
|
17
17
|
import "../chunk-PJP5BUU6.js";
|
|
18
18
|
import "../chunk-4I2VCAMW.js";
|
|
19
|
-
import "../chunk-
|
|
19
|
+
import "../chunk-KAPBUKIT.js";
|
|
20
20
|
import {
|
|
21
21
|
AGENT_CONTEXT_MENTION_PROVIDER_IDS
|
|
22
22
|
} from "../chunk-JM24HADP.js";
|
package/dist/i18n/index.d.ts
CHANGED
|
@@ -334,14 +334,14 @@ declare const agentGuiI18nResources: {
|
|
|
334
334
|
readonly agentGui: {
|
|
335
335
|
readonly initialPlaceholder: "Type @ to reference sessions, files, tasks, and apps";
|
|
336
336
|
readonly followupPlaceholder: "Request follow-up changes from {{provider}}";
|
|
337
|
-
readonly installRequiredPlaceholder: "
|
|
338
|
-
readonly installRequiredAction: "
|
|
337
|
+
readonly installRequiredPlaceholder: "Connect {{provider}} to send messages";
|
|
338
|
+
readonly installRequiredAction: "Connect";
|
|
339
339
|
readonly providerGateCheckingTitle: "Checking your agent";
|
|
340
340
|
readonly providerGateCheckingDescription: "One moment while we check whether {{provider}} is ready.";
|
|
341
341
|
readonly providerGateCheckingAgentsDescription: "One moment while we check whether agents are ready.";
|
|
342
|
-
readonly providerGateInstallTitle: "
|
|
343
|
-
readonly providerGateInstallDescription: "{{provider}} needs to be
|
|
344
|
-
readonly providerGateInstallAction: "
|
|
342
|
+
readonly providerGateInstallTitle: "Connect {{provider}} first";
|
|
343
|
+
readonly providerGateInstallDescription: "{{provider}} needs to be connected before you can start a new chat here.";
|
|
344
|
+
readonly providerGateInstallAction: "Connect";
|
|
345
345
|
readonly providerGateLoginTitle: "Log in to {{provider}}";
|
|
346
346
|
readonly providerGateLoginDescription: "Log in with your account to start chatting with {{provider}}.";
|
|
347
347
|
readonly providerGateLoginAction: "Log in";
|
|
@@ -351,7 +351,7 @@ declare const agentGuiI18nResources: {
|
|
|
351
351
|
readonly providerGateUnavailableTitle: "{{provider}} is not ready yet";
|
|
352
352
|
readonly providerGateUnavailableDescription: "We could not confirm that {{provider}} is ready. Try checking again.";
|
|
353
353
|
readonly providerGateRetryAction: "Check again";
|
|
354
|
-
readonly providerGatePendingInstall: "
|
|
354
|
+
readonly providerGatePendingInstall: "Connecting…";
|
|
355
355
|
readonly providerGatePendingLogin: "Opening sign in…";
|
|
356
356
|
readonly providerGatePendingRefresh: "Checking…";
|
|
357
357
|
readonly collaboratorSessionReadOnlyPlaceholder: "This session belongs to another user and cannot be replied to directly";
|
|
@@ -506,6 +506,7 @@ declare const agentGuiI18nResources: {
|
|
|
506
506
|
readonly slashStatusBaseUrl: "Base URL";
|
|
507
507
|
readonly slashStatusContext: "Context";
|
|
508
508
|
readonly slashStatusLimits: "Usage Limits";
|
|
509
|
+
readonly slashStatusAccount: "Account";
|
|
509
510
|
readonly slashStatusClose: "Close";
|
|
510
511
|
readonly slashStatusFiveHourLimit: "5h limit";
|
|
511
512
|
readonly slashStatusWeeklyLimit: "7d limit";
|
|
@@ -539,6 +540,7 @@ declare const agentGuiI18nResources: {
|
|
|
539
540
|
readonly planImplementationSkip: "Stay in Plan Mode";
|
|
540
541
|
readonly noRunningResponse: "No running response to stop.";
|
|
541
542
|
readonly composerTextMenu: "Composer text actions";
|
|
543
|
+
readonly pastedTextPromptAttachment: "Pasted text attachment: {{name}}";
|
|
542
544
|
readonly copyMessage: "Copy message";
|
|
543
545
|
readonly copyImage: "Copy image";
|
|
544
546
|
readonly messageCopied: "Copied";
|
|
@@ -617,6 +619,7 @@ declare const agentGuiI18nResources: {
|
|
|
617
619
|
readonly conversationFilterTutti: "Tutti";
|
|
618
620
|
readonly providerSwitchLabel: "Switch provider";
|
|
619
621
|
readonly handoffConversation: "Handoff";
|
|
622
|
+
readonly handoffConversationTooltip: "Hand off to another agent";
|
|
620
623
|
readonly handoffConversationMenu: "Choose an agent for handoff";
|
|
621
624
|
readonly batchRunnerStandaloneTitle: "Agent GUI batch runner";
|
|
622
625
|
readonly batchRunnerSubtitle: "Run JSONL prompt cases and review execution results";
|
|
@@ -774,7 +777,7 @@ declare const agentGuiI18nResources: {
|
|
|
774
777
|
readonly visibleErrorConfigTimeout: "{{provider}} couldn't apply session settings before the request timed out. Try again in a moment.";
|
|
775
778
|
readonly visibleErrorStreamDisconnected: "{{provider}}'s response was interrupted before it completed. Try again in a moment.";
|
|
776
779
|
readonly visibleErrorConcurrencyLimit: "{{provider}} is handling too many requests right now. Try again after another task finishes.";
|
|
777
|
-
readonly visibleErrorActionInstall: "
|
|
780
|
+
readonly visibleErrorActionInstall: "Connect";
|
|
778
781
|
readonly visibleErrorActionUpgrade: "Upgrade";
|
|
779
782
|
readonly visibleErrorActionRelogin: "Sign in";
|
|
780
783
|
readonly visibleErrorActionCheckNetwork: "Check network";
|
|
@@ -2872,14 +2875,14 @@ declare const agentGuiI18nResources: {
|
|
|
2872
2875
|
readonly agentGui: {
|
|
2873
2876
|
readonly initialPlaceholder: "输入 @ 引用会话、文件、任务和应用";
|
|
2874
2877
|
readonly followupPlaceholder: "要求 {{provider}} 继续后续变更";
|
|
2875
|
-
readonly installRequiredPlaceholder: "
|
|
2876
|
-
readonly installRequiredAction: "
|
|
2878
|
+
readonly installRequiredPlaceholder: "请先连接 {{provider}},然后再发送消息";
|
|
2879
|
+
readonly installRequiredAction: "连接";
|
|
2877
2880
|
readonly providerGateCheckingTitle: "正在检查 Agent";
|
|
2878
2881
|
readonly providerGateCheckingDescription: "稍等一下,我们正在确认 {{provider}} 是否已经可用。";
|
|
2879
2882
|
readonly providerGateCheckingAgentsDescription: "稍等一下,我们正在确认 agents 是否已经可用。";
|
|
2880
|
-
readonly providerGateInstallTitle: "
|
|
2881
|
-
readonly providerGateInstallDescription: "
|
|
2882
|
-
readonly providerGateInstallAction: "
|
|
2883
|
+
readonly providerGateInstallTitle: "先连接 {{provider}}";
|
|
2884
|
+
readonly providerGateInstallDescription: "需要先连接 {{provider}},才能在这里开始新的对话。";
|
|
2885
|
+
readonly providerGateInstallAction: "连接";
|
|
2883
2886
|
readonly providerGateLoginTitle: "登录 {{provider}}";
|
|
2884
2887
|
readonly providerGateLoginDescription: "使用账号登录后即可开始使用 {{provider}} 对话。";
|
|
2885
2888
|
readonly providerGateLoginAction: "登录";
|
|
@@ -2889,7 +2892,7 @@ declare const agentGuiI18nResources: {
|
|
|
2889
2892
|
readonly providerGateUnavailableTitle: "{{provider}} 暂时还不可用";
|
|
2890
2893
|
readonly providerGateUnavailableDescription: "我们还不能确认 {{provider}} 已准备好,可以再检测一次。";
|
|
2891
2894
|
readonly providerGateRetryAction: "重新检测";
|
|
2892
|
-
readonly providerGatePendingInstall: "
|
|
2895
|
+
readonly providerGatePendingInstall: "正在连接…";
|
|
2893
2896
|
readonly providerGatePendingLogin: "正在打开登录…";
|
|
2894
2897
|
readonly providerGatePendingRefresh: "正在检测…";
|
|
2895
2898
|
readonly collaboratorSessionReadOnlyPlaceholder: "非当前用户会话,不可直接对话";
|
|
@@ -3044,6 +3047,7 @@ declare const agentGuiI18nResources: {
|
|
|
3044
3047
|
readonly slashStatusBaseUrl: "Base URL";
|
|
3045
3048
|
readonly slashStatusContext: "上下文";
|
|
3046
3049
|
readonly slashStatusLimits: "限制";
|
|
3050
|
+
readonly slashStatusAccount: "账户";
|
|
3047
3051
|
readonly slashStatusClose: "关闭";
|
|
3048
3052
|
readonly slashStatusFiveHourLimit: "5h limit";
|
|
3049
3053
|
readonly slashStatusWeeklyLimit: "7d limit";
|
|
@@ -3077,6 +3081,7 @@ declare const agentGuiI18nResources: {
|
|
|
3077
3081
|
readonly planImplementationSkip: "留在计划模式";
|
|
3078
3082
|
readonly noRunningResponse: "当前没有正在运行的回复。";
|
|
3079
3083
|
readonly composerTextMenu: "输入框文本操作";
|
|
3084
|
+
readonly pastedTextPromptAttachment: "粘贴的文本附件:{{name}}";
|
|
3080
3085
|
readonly copyMessage: "复制消息";
|
|
3081
3086
|
readonly copyImage: "复制图片";
|
|
3082
3087
|
readonly messageCopied: "已复制";
|
|
@@ -3155,6 +3160,7 @@ declare const agentGuiI18nResources: {
|
|
|
3155
3160
|
readonly conversationFilterTutti: "Tutti";
|
|
3156
3161
|
readonly providerSwitchLabel: "切换 Provider";
|
|
3157
3162
|
readonly handoffConversation: "Handoff";
|
|
3163
|
+
readonly handoffConversationTooltip: "交接给其他 Agent";
|
|
3158
3164
|
readonly handoffConversationMenu: "选择要交接的 Agent";
|
|
3159
3165
|
readonly batchRunnerStandaloneTitle: "Agent GUI 批量执行面板";
|
|
3160
3166
|
readonly batchRunnerSubtitle: "批量执行 JSONL 用例,查看进度与执行结果";
|
|
@@ -3312,7 +3318,7 @@ declare const agentGuiI18nResources: {
|
|
|
3312
3318
|
readonly visibleErrorConfigTimeout: "{{provider}} 在请求超时前未能应用会话设置。请稍后重试。";
|
|
3313
3319
|
readonly visibleErrorStreamDisconnected: "{{provider}} 的响应在完成前被中断。请稍后重试。";
|
|
3314
3320
|
readonly visibleErrorConcurrencyLimit: "{{provider}} 当前处理的请求过多。请在其他任务完成后再试。";
|
|
3315
|
-
readonly visibleErrorActionInstall: "
|
|
3321
|
+
readonly visibleErrorActionInstall: "去连接";
|
|
3316
3322
|
readonly visibleErrorActionUpgrade: "去升级";
|
|
3317
3323
|
readonly visibleErrorActionRelogin: "登录";
|
|
3318
3324
|
readonly visibleErrorActionCheckNetwork: "检测网络";
|
package/dist/i18n/index.js
CHANGED
package/dist/index.d.ts
CHANGED
|
@@ -4,10 +4,10 @@ import { m as WorkspaceAgentActivityListViewModel, g as AgentHostWorkspaceAgentS
|
|
|
4
4
|
import * as react from 'react';
|
|
5
5
|
import { ReactNode, PropsWithChildren, JSX, HTMLAttributes } from 'react';
|
|
6
6
|
import { I18nRuntime } from '@tutti-os/ui-i18n-runtime';
|
|
7
|
-
import {
|
|
8
|
-
export { d as AgentGUIProviderReadinessGateAction, e as AgentGUIProviderReadinessGateStatus } from './types-
|
|
9
|
-
import { k as AgentProbeSnapshot, A as AgentComposerDraft, n as AgentSessionCommand, c as AgentGUIProviderSkillOption, a as AgentGUIComposerSettingsVM, d as AgentGUIQueuedPromptVM, b as AgentGUINodeViewModel, g as AgentHostInputApi } from './agentGuiNodeTypes-
|
|
10
|
-
export { e as AgentHostApi, f as AgentHostApplyWorkspaceGitPatchInput, h as AgentHostRuntimeApi, i as AgentHostSelectFilesInput, j as AgentProbeProvider, l as AgentProviderProbeListInput, m as AgentProviderProbeListResult, o as AgentUsageQuota, p as AgentUsageSnapshot, P as PersistWriteResult, R as ReadWorkspaceAgentReadStateInput, W as WorkspaceAgentReadStateSnapshot, q as WriteWorkspaceAgentReadStateInput } from './agentGuiNodeTypes-
|
|
7
|
+
import { s as AgentProvider, h as AgentGUIProviderTargetRef, k as AgentHostAgentSessionComposerSettings, i as AgentHostActivateAgentSessionResult, q as AgentHostUpdateAgentSessionSettingsResult, o as AgentHostAgentSessionState, p as AgentHostUnactivateAgentSessionResult, A as AgentGUINodeData, a as AgentGUIProvider, f as AgentGUIProviderTarget, r as AgentPromptContentBlock, P as Point, b as AgentGUIProviderRailMode, c as AgentGUIProviderReadinessGate, N as NodeFrame, g as AgentGUIProviderTargetBadge } from './types-DZ79b8Zn.js';
|
|
8
|
+
export { d as AgentGUIProviderReadinessGateAction, e as AgentGUIProviderReadinessGateStatus } from './types-DZ79b8Zn.js';
|
|
9
|
+
import { k as AgentProbeSnapshot, A as AgentComposerDraft, n as AgentSessionCommand, c as AgentGUIProviderSkillOption, a as AgentGUIComposerSettingsVM, d as AgentGUIQueuedPromptVM, b as AgentGUINodeViewModel, g as AgentHostInputApi } from './agentGuiNodeTypes-BipgG2ib.js';
|
|
10
|
+
export { e as AgentHostApi, f as AgentHostApplyWorkspaceGitPatchInput, h as AgentHostRuntimeApi, i as AgentHostSelectFilesInput, j as AgentProbeProvider, l as AgentProviderProbeListInput, m as AgentProviderProbeListResult, o as AgentUsageQuota, p as AgentUsageSnapshot, P as PersistWriteResult, R as ReadWorkspaceAgentReadStateInput, W as WorkspaceAgentReadStateSnapshot, q as WriteWorkspaceAgentReadStateInput } from './agentGuiNodeTypes-BipgG2ib.js';
|
|
11
11
|
import { WorkspaceFileEntry } from '@tutti-os/workspace-file-manager/services';
|
|
12
12
|
import { WorkspaceFileReference, ReferenceLocateTarget, WorkspaceFileReferenceAdapter } from '@tutti-os/workspace-file-reference/contracts';
|
|
13
13
|
import { ReferenceSourceAggregator } from '@tutti-os/workspace-file-reference/core';
|
|
@@ -753,6 +753,7 @@ interface AgentComposerProps {
|
|
|
753
753
|
addContent: string;
|
|
754
754
|
referenceWorkspaceFiles: string;
|
|
755
755
|
handoffConversation: string;
|
|
756
|
+
handoffConversationTooltip: string;
|
|
756
757
|
handoffConversationMenu: string;
|
|
757
758
|
providerSwitchLabel: string;
|
|
758
759
|
projectLocked: string;
|
|
@@ -953,6 +954,7 @@ interface AgentGUINodeProps {
|
|
|
953
954
|
workspaceAgentProbes?: WorkspaceDesktopAgentProbesState | null;
|
|
954
955
|
onAgentProbeDemandChange?: WorkspaceDesktopAgentProbeDemandChange;
|
|
955
956
|
onAgentProbeRefreshRequest?: WorkspaceDesktopAgentProbeRefreshRequest;
|
|
957
|
+
providerAuthAccountLabels?: Partial<Record<string, string>>;
|
|
956
958
|
managedAgentsState?: AgentHostManagedAgentsState | null;
|
|
957
959
|
contextMentionProviders?: readonly AgentContextMentionProvider[];
|
|
958
960
|
workspaceAppIcons?: readonly AgentMessageMarkdownWorkspaceAppIcon[];
|
|
@@ -989,6 +991,7 @@ declare function createSharedAgentGUIProviderTarget(input: {
|
|
|
989
991
|
sharedAgentId: string;
|
|
990
992
|
label: string;
|
|
991
993
|
agentTargetId?: string | null;
|
|
994
|
+
badge?: AgentGUIProviderTargetBadge | null;
|
|
992
995
|
ownerLabel?: string | null;
|
|
993
996
|
iconUrl?: string | null;
|
|
994
997
|
unavailableReason?: string | null;
|
|
@@ -1055,4 +1058,4 @@ interface AgentActivityHostProviderProps extends PropsWithChildren {
|
|
|
1055
1058
|
}
|
|
1056
1059
|
declare function AgentActivityHostProvider({ agentActivityRuntime, agentHostApi, children }: AgentActivityHostProviderProps): JSX.Element;
|
|
1057
1060
|
|
|
1058
|
-
export { AgentActivityHostProvider, type AgentActivityHostProviderProps, type AgentActivityRuntime, type AgentActivityRuntimeListSessionMessagesInput, type AgentActivityRuntimePromptContentBlock, AgentActivityRuntimeProvider, type AgentActivityRuntimeProviderProps, type AgentActivityRuntimeRetainSessionEventsInput, type AgentActivityRuntimeSetSessionPinnedInput, type AgentActivityRuntimeUpdateSessionSettingsInput, type AgentActivityRuntimeUploadPromptContentInput, type AgentActivityRuntimeUploadPromptContentResult, type AgentActivityRuntimeWarmupOpenclawGatewayInput, type AgentActivitySnapshotProjection, AgentContextMentionProvider, type AgentCustomMentionChipContext, type AgentCustomMentionIdentity, type AgentCustomMentionKindDefinition, type AgentCustomMentionPresentation, AgentGUI, type AgentGUIAccountMenuState, type AgentGUIProps, AgentGUIProvider, type AgentGUIProviderRailEmptyRenderer, AgentGUIProviderRailMode, AgentGUIProviderReadinessGate, AgentGUIProviderTarget, AgentGUIProviderTargetRef, type AgentGUISidebarFooterContext, type AgentGUISidebarFooterRenderer, AgentGuiI18nLocale, AgentHostInputApi, AgentProbeSnapshot, AgentQueuedPromptQueueSnapshot, AgentQueuedPromptRuntime, AgentQueuedPromptRuntimeProvider, type AgentQueuedPromptRuntimeProviderProps, agentGUIDefaultTargetProviders, agentGuiDockIconUrl, agentGuiDockIconUrls, agentHostSnapshotFromAgentActivitySnapshot, buildAgentActivitySnapshotProjection, createLocalAgentGUIProviderTarget, createLocalAgentGUIProviderTargets, createSharedAgentGUIProviderTarget, getAgentActivityRuntime, getAgentCustomMentionKind, getOptionalAgentActivityRuntime, localAgentGUIAgentTargetId, localAgentGUIProviderTargetId, normalizeAgentGUIProviderTargets, projectCoreSessionStatus, registerAgentCustomMentionKind, resetAgentActivityRuntimeForTests, resetAgentCustomMentionKindsForTests, resetAgentQueuedPromptRuntimeForTests, resolveAgentGUIExpandedWindowFrame, resolveAgentGUIProviderTarget, setAgentActivityRuntimeForTests, setAgentQueuedPromptRuntimeForTests, shouldAutoCollapseAgentGUIConversationRail, useAgentActivityRuntime, useAgentActivitySnapshot, useAgentQueuedPromptRuntime, useAgentQueuedPromptSessionSnapshot, useOptionalAgentActivityRuntime };
|
|
1061
|
+
export { AgentActivityHostProvider, type AgentActivityHostProviderProps, type AgentActivityRuntime, type AgentActivityRuntimeListSessionMessagesInput, type AgentActivityRuntimePromptContentBlock, AgentActivityRuntimeProvider, type AgentActivityRuntimeProviderProps, type AgentActivityRuntimeRetainSessionEventsInput, type AgentActivityRuntimeSetSessionPinnedInput, type AgentActivityRuntimeUpdateSessionSettingsInput, type AgentActivityRuntimeUploadPromptContentInput, type AgentActivityRuntimeUploadPromptContentResult, type AgentActivityRuntimeWarmupOpenclawGatewayInput, type AgentActivitySnapshotProjection, AgentContextMentionProvider, type AgentCustomMentionChipContext, type AgentCustomMentionIdentity, type AgentCustomMentionKindDefinition, type AgentCustomMentionPresentation, AgentGUI, type AgentGUIAccountMenuState, type AgentGUIProps, AgentGUIProvider, type AgentGUIProviderRailEmptyRenderer, AgentGUIProviderRailMode, AgentGUIProviderReadinessGate, AgentGUIProviderTarget, AgentGUIProviderTargetBadge, AgentGUIProviderTargetRef, type AgentGUISidebarFooterContext, type AgentGUISidebarFooterRenderer, AgentGuiI18nLocale, AgentHostInputApi, AgentProbeSnapshot, AgentQueuedPromptQueueSnapshot, AgentQueuedPromptRuntime, AgentQueuedPromptRuntimeProvider, type AgentQueuedPromptRuntimeProviderProps, agentGUIDefaultTargetProviders, agentGuiDockIconUrl, agentGuiDockIconUrls, agentHostSnapshotFromAgentActivitySnapshot, buildAgentActivitySnapshotProjection, createLocalAgentGUIProviderTarget, createLocalAgentGUIProviderTargets, createSharedAgentGUIProviderTarget, getAgentActivityRuntime, getAgentCustomMentionKind, getOptionalAgentActivityRuntime, localAgentGUIAgentTargetId, localAgentGUIProviderTargetId, normalizeAgentGUIProviderTargets, projectCoreSessionStatus, registerAgentCustomMentionKind, resetAgentActivityRuntimeForTests, resetAgentCustomMentionKindsForTests, resetAgentQueuedPromptRuntimeForTests, resolveAgentGUIExpandedWindowFrame, resolveAgentGUIProviderTarget, setAgentActivityRuntimeForTests, setAgentQueuedPromptRuntimeForTests, shouldAutoCollapseAgentGUIConversationRail, useAgentActivityRuntime, useAgentActivitySnapshot, useAgentQueuedPromptRuntime, useAgentQueuedPromptSessionSnapshot, useOptionalAgentActivityRuntime };
|