@tutti-os/agent-gui 0.0.32 → 0.0.34
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/README.md +5 -0
- package/dist/{AgentMessageMarkdown-Cp70W-Z2.d.ts → AgentMessageMarkdown-CU6gRvTm.d.ts} +53 -2
- package/dist/agent-conversation/index.d.ts +4 -4
- package/dist/agent-conversation/index.js +5 -5
- package/dist/agent-message-center/index.d.ts +2 -2
- package/dist/agent-message-center/index.js +29 -8
- package/dist/agent-message-center/index.js.map +1 -1
- package/dist/{agentConversationVM-BElW2LNR.d.ts → agentConversationVM-xuzmD5IL.d.ts} +2 -0
- package/dist/app/renderer/agentactivity.css +53 -76
- package/dist/{chunk-SGQ4C7JE.js → chunk-2ADVHCST.js} +2 -1
- package/dist/chunk-2ADVHCST.js.map +1 -0
- package/dist/{chunk-MFWZKYZ4.js → chunk-I5GHWK6X.js} +7 -11
- package/dist/chunk-I5GHWK6X.js.map +1 -0
- package/dist/{chunk-ZWYHKGQ7.js → chunk-NCS7X3XY.js} +11 -9
- package/dist/{chunk-ZWYHKGQ7.js.map → chunk-NCS7X3XY.js.map} +1 -1
- package/dist/{chunk-FG66NW5M.js → chunk-PVEFWBH6.js} +15 -2
- package/dist/chunk-PVEFWBH6.js.map +1 -0
- package/dist/{chunk-WPWZKKKV.js → chunk-RUO6SDNC.js} +2 -2
- package/dist/{chunk-OOQIJXCA.js → chunk-SV4UKLJO.js} +3 -2
- package/dist/{chunk-RDCBACWR.js → chunk-TCKH7GZ6.js} +5 -5
- package/dist/{chunk-RQ3HEF42.js → chunk-TQFYX7KY.js} +36 -6
- package/dist/chunk-TQFYX7KY.js.map +1 -0
- package/dist/{chunk-AFTAFV2C.js → chunk-XPVYQUFK.js} +78 -12
- package/dist/chunk-XPVYQUFK.js.map +1 -0
- package/dist/{chunk-J2DMJREM.js → chunk-ZR2LZVN6.js} +229 -21
- package/dist/chunk-ZR2LZVN6.js.map +1 -0
- package/dist/context-mention-palette/index.js +6 -6
- package/dist/i18n/index.d.ts +34 -4
- package/dist/i18n/index.js +1 -1
- package/dist/index.d.ts +5 -4
- package/dist/index.js +892 -199
- package/dist/index.js.map +1 -1
- package/dist/plan-decision-ops.d.ts +1 -1
- package/dist/workbench/contribution.js +1 -1
- package/dist/workbench/index.js +1 -1
- package/dist/workspace-agent-generated-files.js +2 -2
- package/dist/{workspaceLinkActions-CqWZaCY4.d.ts → workspaceLinkActions-C6POH38D.d.ts} +7 -1
- package/package.json +12 -12
- package/dist/chunk-AFTAFV2C.js.map +0 -1
- package/dist/chunk-FG66NW5M.js.map +0 -1
- package/dist/chunk-J2DMJREM.js.map +0 -1
- package/dist/chunk-MFWZKYZ4.js.map +0 -1
- package/dist/chunk-RQ3HEF42.js.map +0 -1
- package/dist/chunk-SGQ4C7JE.js.map +0 -1
- /package/dist/{chunk-WPWZKKKV.js.map → chunk-RUO6SDNC.js.map} +0 -0
- /package/dist/{chunk-OOQIJXCA.js.map → chunk-SV4UKLJO.js.map} +0 -0
- /package/dist/{chunk-RDCBACWR.js.map → chunk-TCKH7GZ6.js.map} +0 -0
|
@@ -10,14 +10,14 @@ import {
|
|
|
10
10
|
resolveWorkspaceFileLinkAction,
|
|
11
11
|
resolveWorkspaceFilePathCandidate,
|
|
12
12
|
resolveWorkspaceLinkAction
|
|
13
|
-
} from "./chunk-
|
|
13
|
+
} from "./chunk-XPVYQUFK.js";
|
|
14
14
|
import {
|
|
15
15
|
attrsToMentionItem,
|
|
16
16
|
createAgentFileMentionExtension,
|
|
17
17
|
formatAgentMentionMarkdown,
|
|
18
18
|
mentionItemToAttrs,
|
|
19
19
|
parseAgentMentionMarkdown
|
|
20
|
-
} from "./chunk-
|
|
20
|
+
} from "./chunk-PVEFWBH6.js";
|
|
21
21
|
import {
|
|
22
22
|
fileChangeCountFromChanges,
|
|
23
23
|
fileChangeEntriesFromChanges,
|
|
@@ -27,13 +27,13 @@ import {
|
|
|
27
27
|
import {
|
|
28
28
|
getOptionalAgentActivityRuntime,
|
|
29
29
|
useOptionalAgentHostApi
|
|
30
|
-
} from "./chunk-
|
|
30
|
+
} from "./chunk-2ADVHCST.js";
|
|
31
31
|
import {
|
|
32
32
|
workspaceAgentProviderLabel
|
|
33
33
|
} from "./chunk-TYGL25EL.js";
|
|
34
34
|
import {
|
|
35
35
|
translate
|
|
36
|
-
} from "./chunk-
|
|
36
|
+
} from "./chunk-TQFYX7KY.js";
|
|
37
37
|
|
|
38
38
|
// shared/imageGenerationTool.ts
|
|
39
39
|
var KNOWN_IMAGE_GENERATION_TOOL_NAMES = /* @__PURE__ */ new Set([
|
|
@@ -2158,9 +2158,11 @@ function systemNoticeFromPayload(payload) {
|
|
|
2158
2158
|
if (stringRecordValue5(payload, "kind") !== "agent_system_notice") {
|
|
2159
2159
|
return null;
|
|
2160
2160
|
}
|
|
2161
|
+
const source = stringRecordValue5(payload, "source");
|
|
2161
2162
|
return {
|
|
2162
2163
|
noticeKind: stringRecordValue5(payload, "noticeKind"),
|
|
2163
2164
|
severity: stringRecordValue5(payload, "severity"),
|
|
2165
|
+
...source ? { source } : {},
|
|
2164
2166
|
title: stringRecordValue5(payload, "title"),
|
|
2165
2167
|
detail: stringRecordValue5(payload, "detail"),
|
|
2166
2168
|
retryable: booleanRecordValue(payload, "retryable")
|
|
@@ -4095,6 +4097,7 @@ function firstNonEmptyString(...values) {
|
|
|
4095
4097
|
|
|
4096
4098
|
// shared/agentConversation/projection/agentConversationProjection.ts
|
|
4097
4099
|
var RENDER_IRRELEVANT_TRANSCRIPT_ROW_FIELDS = /* @__PURE__ */ new Set(["occurredAtUnixMs"]);
|
|
4100
|
+
var CODEX_SKILLS_CONTEXT_BUDGET_NOTICE_FRAGMENT = "skill descriptions were shortened to fit the 2% skills context budget";
|
|
4098
4101
|
function projectAgentConversationVM(detail, options = {}) {
|
|
4099
4102
|
const rows = [];
|
|
4100
4103
|
const turns = detail.turns;
|
|
@@ -4125,9 +4128,11 @@ function projectAgentConversationVM(detail, options = {}) {
|
|
|
4125
4128
|
rows.push(processing);
|
|
4126
4129
|
}
|
|
4127
4130
|
const normalizedRows = projectMessageCopyText(
|
|
4128
|
-
|
|
4129
|
-
|
|
4130
|
-
|
|
4131
|
+
dropCodexRuntimeDiagnosticNotices(
|
|
4132
|
+
dropRedundantErrorWarningNotices(
|
|
4133
|
+
mergeAdjacentAssistantMessageRows(
|
|
4134
|
+
mergeAdjacentTransportRetryNoticeRows(rows)
|
|
4135
|
+
)
|
|
4131
4136
|
)
|
|
4132
4137
|
),
|
|
4133
4138
|
{
|
|
@@ -4255,6 +4260,38 @@ function mergeAdjacentAssistantMessageRows(rows) {
|
|
|
4255
4260
|
}
|
|
4256
4261
|
return merged;
|
|
4257
4262
|
}
|
|
4263
|
+
function dropCodexRuntimeDiagnosticNotices(rows) {
|
|
4264
|
+
const filteredRows = [];
|
|
4265
|
+
for (const row of rows) {
|
|
4266
|
+
if (row.kind !== "message" || row.speaker !== "assistant") {
|
|
4267
|
+
filteredRows.push(row);
|
|
4268
|
+
continue;
|
|
4269
|
+
}
|
|
4270
|
+
const messages = row.messages.filter(
|
|
4271
|
+
(message) => !isCodexSkillsContextBudgetNotice(message)
|
|
4272
|
+
);
|
|
4273
|
+
if (messages.length === 0 && row.thinking.length === 0) {
|
|
4274
|
+
continue;
|
|
4275
|
+
}
|
|
4276
|
+
if (messages.length === row.messages.length) {
|
|
4277
|
+
filteredRows.push(row);
|
|
4278
|
+
continue;
|
|
4279
|
+
}
|
|
4280
|
+
filteredRows.push({ ...row, messages });
|
|
4281
|
+
}
|
|
4282
|
+
return filteredRows;
|
|
4283
|
+
}
|
|
4284
|
+
function isCodexSkillsContextBudgetNotice(message) {
|
|
4285
|
+
const notice = message.systemNotice;
|
|
4286
|
+
if (!notice || notice.noticeKind !== "warning") {
|
|
4287
|
+
return false;
|
|
4288
|
+
}
|
|
4289
|
+
if (notice.source !== "runtime") {
|
|
4290
|
+
return false;
|
|
4291
|
+
}
|
|
4292
|
+
const text = [notice.title, notice.detail, message.body].filter(Boolean).join("\n").toLowerCase();
|
|
4293
|
+
return text.includes(CODEX_SKILLS_CONTEXT_BUDGET_NOTICE_FRAGMENT);
|
|
4294
|
+
}
|
|
4258
4295
|
function dropRedundantErrorWarningNotices(rows) {
|
|
4259
4296
|
const turnsWithVisibleError = /* @__PURE__ */ new Set();
|
|
4260
4297
|
for (const row of rows) {
|
|
@@ -5563,6 +5600,133 @@ function resolveWorkspaceAppIconUrl(input) {
|
|
|
5563
5600
|
return exactMatch?.iconUrl?.trim() || fallbackMatch?.iconUrl?.trim() || void 0;
|
|
5564
5601
|
}
|
|
5565
5602
|
|
|
5603
|
+
// shared/agentEnv/agentEnvPanelStore.ts
|
|
5604
|
+
import { useSnapshot } from "valtio";
|
|
5605
|
+
import { proxy } from "valtio/vanilla";
|
|
5606
|
+
var agentEnvPanelStore = proxy({
|
|
5607
|
+
open: false,
|
|
5608
|
+
provider: null,
|
|
5609
|
+
focus: null,
|
|
5610
|
+
requestSequence: 0
|
|
5611
|
+
});
|
|
5612
|
+
function openAgentEnvPanel(input) {
|
|
5613
|
+
agentEnvPanelStore.open = true;
|
|
5614
|
+
agentEnvPanelStore.provider = input?.provider ?? null;
|
|
5615
|
+
agentEnvPanelStore.focus = input?.focus ?? null;
|
|
5616
|
+
agentEnvPanelStore.requestSequence += 1;
|
|
5617
|
+
}
|
|
5618
|
+
|
|
5619
|
+
// shared/agentEnv/agentErrorPresentation.ts
|
|
5620
|
+
var NO_CTA = { focus: null, actionKey: null };
|
|
5621
|
+
var SELF_DETECT = {
|
|
5622
|
+
messageKey: null,
|
|
5623
|
+
focus: "detect",
|
|
5624
|
+
actionKey: "agentHost.agentGui.visibleErrorActionDetect"
|
|
5625
|
+
};
|
|
5626
|
+
var PRESENTATIONS = {
|
|
5627
|
+
// Environment problems the wizard can detect or repair → route to its step.
|
|
5628
|
+
auth_required: {
|
|
5629
|
+
messageKey: "agentHost.agentGui.visibleErrorAuthRequired",
|
|
5630
|
+
focus: "auth",
|
|
5631
|
+
actionKey: "agentHost.agentGui.visibleErrorActionRelogin"
|
|
5632
|
+
},
|
|
5633
|
+
cli_not_found: {
|
|
5634
|
+
messageKey: "agentHost.agentGui.visibleErrorCliNotFound",
|
|
5635
|
+
focus: "install",
|
|
5636
|
+
actionKey: "agentHost.agentGui.visibleErrorActionInstall"
|
|
5637
|
+
},
|
|
5638
|
+
cli_version_unsupported: {
|
|
5639
|
+
messageKey: "agentHost.agentGui.visibleErrorVersionUnsupported",
|
|
5640
|
+
focus: "upgrade",
|
|
5641
|
+
actionKey: "agentHost.agentGui.visibleErrorActionUpgrade"
|
|
5642
|
+
},
|
|
5643
|
+
network_error: {
|
|
5644
|
+
messageKey: "agentHost.agentGui.visibleErrorNetwork",
|
|
5645
|
+
focus: "network",
|
|
5646
|
+
actionKey: "agentHost.agentGui.visibleErrorActionCheckNetwork"
|
|
5647
|
+
},
|
|
5648
|
+
runtime_unavailable: {
|
|
5649
|
+
messageKey: "agentHost.agentGui.visibleErrorRuntimeUnavailable",
|
|
5650
|
+
focus: "detect",
|
|
5651
|
+
actionKey: "agentHost.agentGui.visibleErrorActionDetect"
|
|
5652
|
+
},
|
|
5653
|
+
// Transient / server-side failures: accurate copy, but no wizard CTA — it
|
|
5654
|
+
// cannot fix a rate limit or a dropped stream.
|
|
5655
|
+
request_timed_out: {
|
|
5656
|
+
messageKey: "agentHost.agentGui.visibleErrorRequestTimedOut",
|
|
5657
|
+
...NO_CTA
|
|
5658
|
+
},
|
|
5659
|
+
provider_config_timeout: {
|
|
5660
|
+
messageKey: "agentHost.agentGui.visibleErrorConfigTimeout",
|
|
5661
|
+
...NO_CTA
|
|
5662
|
+
},
|
|
5663
|
+
provider_stream_disconnected: {
|
|
5664
|
+
messageKey: "agentHost.agentGui.visibleErrorStreamDisconnected",
|
|
5665
|
+
...NO_CTA
|
|
5666
|
+
},
|
|
5667
|
+
provider_concurrency_limit: {
|
|
5668
|
+
messageKey: "agentHost.agentGui.visibleErrorConcurrencyLimit",
|
|
5669
|
+
...NO_CTA
|
|
5670
|
+
},
|
|
5671
|
+
quota_or_rate_limit: {
|
|
5672
|
+
messageKey: "agentHost.agentGui.visibleErrorQuotaOrRateLimit",
|
|
5673
|
+
...NO_CTA
|
|
5674
|
+
},
|
|
5675
|
+
// Ambiguous hard failures → generic message + self-detect escape hatch.
|
|
5676
|
+
process_exited: SELF_DETECT,
|
|
5677
|
+
provider_error: SELF_DETECT,
|
|
5678
|
+
unknown: SELF_DETECT
|
|
5679
|
+
};
|
|
5680
|
+
function resolveAgentErrorPresentation(code) {
|
|
5681
|
+
if (!code) {
|
|
5682
|
+
return null;
|
|
5683
|
+
}
|
|
5684
|
+
return PRESENTATIONS[code] ?? null;
|
|
5685
|
+
}
|
|
5686
|
+
var FAILED_MESSAGE_CODE_MARKERS = [
|
|
5687
|
+
[
|
|
5688
|
+
"auth_required",
|
|
5689
|
+
[
|
|
5690
|
+
"authentication_failed",
|
|
5691
|
+
"invalid authentication credentials",
|
|
5692
|
+
"401 invalid authentication",
|
|
5693
|
+
"unauthorized",
|
|
5694
|
+
"not logged in",
|
|
5695
|
+
"please run /login",
|
|
5696
|
+
"invalid api key"
|
|
5697
|
+
]
|
|
5698
|
+
],
|
|
5699
|
+
[
|
|
5700
|
+
"cli_version_unsupported",
|
|
5701
|
+
["requires a newer version", "version is too old", "unsupported version"]
|
|
5702
|
+
],
|
|
5703
|
+
[
|
|
5704
|
+
"cli_not_found",
|
|
5705
|
+
[
|
|
5706
|
+
"no such file or directory",
|
|
5707
|
+
"command not found",
|
|
5708
|
+
"enoent",
|
|
5709
|
+
"executable file not found"
|
|
5710
|
+
]
|
|
5711
|
+
],
|
|
5712
|
+
[
|
|
5713
|
+
"network_error",
|
|
5714
|
+
["enotfound", "econnrefused", "econnreset", "getaddrinfo", "socket hang up"]
|
|
5715
|
+
]
|
|
5716
|
+
];
|
|
5717
|
+
function classifyFailedAgentMessage(body) {
|
|
5718
|
+
if (!body) {
|
|
5719
|
+
return null;
|
|
5720
|
+
}
|
|
5721
|
+
const lower = body.toLowerCase();
|
|
5722
|
+
for (const [code, markers] of FAILED_MESSAGE_CODE_MARKERS) {
|
|
5723
|
+
if (markers.some((marker) => lower.includes(marker))) {
|
|
5724
|
+
return code;
|
|
5725
|
+
}
|
|
5726
|
+
}
|
|
5727
|
+
return null;
|
|
5728
|
+
}
|
|
5729
|
+
|
|
5566
5730
|
// shared/agentConversation/components/CollapsibleReveal.tsx
|
|
5567
5731
|
import {
|
|
5568
5732
|
useCallback as useCallback2,
|
|
@@ -6408,7 +6572,7 @@ var CanvasNodeGhostIconButton = forwardRef3(function CanvasNodeGhostIconButton2(
|
|
|
6408
6572
|
...rest,
|
|
6409
6573
|
type: "button",
|
|
6410
6574
|
className: cn(
|
|
6411
|
-
"nodrag inline-flex h-7 min-h-7 w-7 min-w-7 shrink-0 items-center justify-center rounded-[4px] border border-transparent bg-transparent p-0 text-[var(--
|
|
6575
|
+
"nodrag inline-flex h-7 min-h-7 w-7 min-w-7 shrink-0 items-center justify-center rounded-[4px] border border-transparent bg-transparent p-0 text-[var(--text-secondary)] transition-[background-color,color,border-color,opacity] duration-200 ease-in-out [-webkit-app-region:no-drag] hover:border-transparent hover:bg-[var(--transparency-block)] hover:text-[var(--text-primary)] active:bg-[var(--transparency-block-active)] active:text-[var(--text-primary)] disabled:cursor-not-allowed disabled:opacity-45 focus-visible:outline-2 focus-visible:outline-[color:color-mix(in_srgb,var(--tsh-shell-accent)_80%,white)] focus-visible:outline-offset-2 [&_svg]:block [&_svg]:h-3.5 [&_svg]:w-3.5 [&_svg]:shrink-0 [&_svg:not([data-nexight-chrome-glyph=fill]):not([data-tutti-chrome-glyph=fill])]:fill-none [&_svg:not([data-nexight-chrome-glyph=fill]):not([data-tutti-chrome-glyph=fill])]:stroke-current data-[menu-open=true]:border-transparent data-[menu-open=true]:bg-[var(--transparency-block)] data-[menu-open=true]:text-[var(--text-primary)] data-[menu-open=true]:hover:bg-[var(--transparency-block-active)]",
|
|
6412
6576
|
className
|
|
6413
6577
|
),
|
|
6414
6578
|
onPointerDown: (event) => {
|
|
@@ -6446,6 +6610,7 @@ function AgentMessageBlock({
|
|
|
6446
6610
|
onLinkAction,
|
|
6447
6611
|
thinkingLabel,
|
|
6448
6612
|
onAuthLogin,
|
|
6613
|
+
provider,
|
|
6449
6614
|
availableSkills,
|
|
6450
6615
|
workspaceAppIcons,
|
|
6451
6616
|
previewMode = false,
|
|
@@ -6517,6 +6682,7 @@ function AgentMessageBlock({
|
|
|
6517
6682
|
label: rawTimelineJsonLabel
|
|
6518
6683
|
}
|
|
6519
6684
|
) : null;
|
|
6685
|
+
const recoveredError = !isUser && !message.visibleError && message.statusKind === "failed" ? recoverVisibleErrorFromFailedMessage(message, provider) : null;
|
|
6520
6686
|
const content = isUser && message.contentKind === "image-grid" ? /* @__PURE__ */ jsx12(AgentUserImageGrid, { message }) : isUser ? /* @__PURE__ */ jsx12(
|
|
6521
6687
|
AgentRichTextReadonly,
|
|
6522
6688
|
{
|
|
@@ -6533,6 +6699,12 @@ function AgentMessageBlock({
|
|
|
6533
6699
|
message,
|
|
6534
6700
|
onAuthLogin
|
|
6535
6701
|
}
|
|
6702
|
+
) : recoveredError ? /* @__PURE__ */ jsx12(
|
|
6703
|
+
AgentVisibleErrorMessage,
|
|
6704
|
+
{
|
|
6705
|
+
message: recoveredError,
|
|
6706
|
+
onAuthLogin
|
|
6707
|
+
}
|
|
6536
6708
|
) : message.systemNotice ? /* @__PURE__ */ jsx12(AgentSystemNoticeMessage, { message }) : message.contentKind === "plan" ? /* @__PURE__ */ jsx12(
|
|
6537
6709
|
AgentPlanCardMessage,
|
|
6538
6710
|
{
|
|
@@ -6890,16 +7062,36 @@ function systemNoticeTitle(message) {
|
|
|
6890
7062
|
return notice?.title || message.body || translate("agentHost.agentGui.systemNoticeDefault");
|
|
6891
7063
|
}
|
|
6892
7064
|
}
|
|
7065
|
+
function recoverVisibleErrorFromFailedMessage(message, provider) {
|
|
7066
|
+
const code = classifyFailedAgentMessage(message.body);
|
|
7067
|
+
if (!code) {
|
|
7068
|
+
return null;
|
|
7069
|
+
}
|
|
7070
|
+
return {
|
|
7071
|
+
...message,
|
|
7072
|
+
visibleError: {
|
|
7073
|
+
code,
|
|
7074
|
+
phase: null,
|
|
7075
|
+
provider: provider ?? null,
|
|
7076
|
+
detail: message.body,
|
|
7077
|
+
retryable: null
|
|
7078
|
+
}
|
|
7079
|
+
};
|
|
7080
|
+
}
|
|
6893
7081
|
function AgentVisibleErrorMessage({
|
|
6894
|
-
message
|
|
6895
|
-
onAuthLogin
|
|
7082
|
+
message
|
|
6896
7083
|
}) {
|
|
6897
7084
|
"use memo";
|
|
6898
7085
|
const error = message.visibleError;
|
|
6899
|
-
const title = visibleErrorTitle(message);
|
|
6900
|
-
const hint = visibleErrorHint(message);
|
|
6901
7086
|
const detail = error?.detail?.trim() ?? "";
|
|
6902
|
-
const
|
|
7087
|
+
const providerLabel = workspaceAgentProviderLabel(
|
|
7088
|
+
error?.provider ?? "unknown"
|
|
7089
|
+
);
|
|
7090
|
+
const presentation = resolveAgentErrorPresentation(error?.code);
|
|
7091
|
+
const headline = presentation?.messageKey ? translate(presentation.messageKey, { provider: providerLabel }) : visibleErrorTitle(message);
|
|
7092
|
+
const focus = presentation?.focus ?? null;
|
|
7093
|
+
const actionKey = presentation?.actionKey ?? null;
|
|
7094
|
+
const hint = visibleErrorHint(message);
|
|
6903
7095
|
return /* @__PURE__ */ jsx12(
|
|
6904
7096
|
"section",
|
|
6905
7097
|
{
|
|
@@ -6907,19 +7099,29 @@ function AgentVisibleErrorMessage({
|
|
|
6907
7099
|
className: "box-border w-full min-w-0 rounded-[8px] border border-[var(--on-danger-hover)] bg-[var(--on-danger)] p-3 text-[13px] leading-5 text-[var(--state-danger)]",
|
|
6908
7100
|
children: /* @__PURE__ */ jsxs7("div", { className: "flex min-w-0 items-start gap-3", children: [
|
|
6909
7101
|
/* @__PURE__ */ jsxs7("div", { className: "min-w-0 flex-1", children: [
|
|
6910
|
-
/* @__PURE__ */ jsx12("div", { className: "font-medium text-[var(--text-primary)]", children:
|
|
7102
|
+
/* @__PURE__ */ jsx12("div", { className: "font-medium text-[var(--text-primary)]", children: headline }),
|
|
6911
7103
|
hint ? /* @__PURE__ */ jsx12("div", { className: "mt-1 text-[11px] text-[var(--text-secondary)]", children: hint }) : null,
|
|
6912
|
-
detail ? /* @__PURE__ */ jsx12(
|
|
7104
|
+
detail ? /* @__PURE__ */ jsx12(
|
|
7105
|
+
AgentMessageDetailsDisclosure,
|
|
7106
|
+
{
|
|
7107
|
+
detail,
|
|
7108
|
+
className: "mt-1",
|
|
7109
|
+
label: translate("agentHost.agentGui.visibleErrorRawDetails")
|
|
7110
|
+
}
|
|
7111
|
+
) : null
|
|
6913
7112
|
] }),
|
|
6914
|
-
|
|
7113
|
+
focus && actionKey ? /* @__PURE__ */ jsx12(
|
|
6915
7114
|
Button,
|
|
6916
7115
|
{
|
|
6917
7116
|
type: "button",
|
|
6918
7117
|
variant: "ghost",
|
|
6919
7118
|
size: "sm",
|
|
6920
7119
|
className: "mt-0.5 shrink-0",
|
|
6921
|
-
onClick: () =>
|
|
6922
|
-
|
|
7120
|
+
onClick: () => openAgentEnvPanel({
|
|
7121
|
+
provider: error?.provider ?? "codex",
|
|
7122
|
+
focus
|
|
7123
|
+
}),
|
|
7124
|
+
children: translate(actionKey)
|
|
6923
7125
|
}
|
|
6924
7126
|
) : null
|
|
6925
7127
|
] })
|
|
@@ -6928,7 +7130,8 @@ function AgentVisibleErrorMessage({
|
|
|
6928
7130
|
}
|
|
6929
7131
|
function AgentMessageDetailsDisclosure({
|
|
6930
7132
|
detail,
|
|
6931
|
-
className = ""
|
|
7133
|
+
className = "",
|
|
7134
|
+
label
|
|
6932
7135
|
}) {
|
|
6933
7136
|
"use memo";
|
|
6934
7137
|
const [expanded, setExpanded] = useState5(false);
|
|
@@ -6941,7 +7144,7 @@ function AgentMessageDetailsDisclosure({
|
|
|
6941
7144
|
"aria-expanded": expanded,
|
|
6942
7145
|
onClick: () => setExpanded((value) => !value),
|
|
6943
7146
|
children: [
|
|
6944
|
-
translate("agentHost.agentGui.visibleErrorDetails"),
|
|
7147
|
+
label ?? translate("agentHost.agentGui.visibleErrorDetails"),
|
|
6945
7148
|
/* @__PURE__ */ jsx12(
|
|
6946
7149
|
ChevronRight3,
|
|
6947
7150
|
{
|
|
@@ -11958,6 +12161,7 @@ var AgentTranscriptItemView = memo2(function AgentTranscriptItemView2({
|
|
|
11958
12161
|
labels,
|
|
11959
12162
|
onLinkAction,
|
|
11960
12163
|
onAuthLogin,
|
|
12164
|
+
provider,
|
|
11961
12165
|
availableSkills,
|
|
11962
12166
|
workspaceAppIcons,
|
|
11963
12167
|
previewMode = false,
|
|
@@ -11991,6 +12195,7 @@ var AgentTranscriptItemView = memo2(function AgentTranscriptItemView2({
|
|
|
11991
12195
|
row,
|
|
11992
12196
|
onLinkAction,
|
|
11993
12197
|
onAuthLogin,
|
|
12198
|
+
provider,
|
|
11994
12199
|
availableSkills,
|
|
11995
12200
|
workspaceAppIcons,
|
|
11996
12201
|
previewMode,
|
|
@@ -12220,6 +12425,7 @@ var AgentTranscriptView = memo3(function AgentTranscriptView2({
|
|
|
12220
12425
|
);
|
|
12221
12426
|
const basePath = conversation.sourceDetail.cwd;
|
|
12222
12427
|
const workspaceRoot = conversation.workspaceRoot;
|
|
12428
|
+
const provider = conversation.activity.agentProvider;
|
|
12223
12429
|
const shouldVirtualize = useMemo6(
|
|
12224
12430
|
() => assessAgentTranscriptComplexity(turnGroups).shouldVirtualize,
|
|
12225
12431
|
[turnGroups]
|
|
@@ -12267,6 +12473,7 @@ var AgentTranscriptView = memo3(function AgentTranscriptView2({
|
|
|
12267
12473
|
labels,
|
|
12268
12474
|
onLinkAction,
|
|
12269
12475
|
onAuthLogin,
|
|
12476
|
+
provider,
|
|
12270
12477
|
availableSkills,
|
|
12271
12478
|
workspaceAppIcons,
|
|
12272
12479
|
previewMode,
|
|
@@ -12458,6 +12665,7 @@ export {
|
|
|
12458
12665
|
labelForProviderSkill,
|
|
12459
12666
|
promptForProviderSkills,
|
|
12460
12667
|
skillDescriptionForDisplay,
|
|
12668
|
+
openAgentEnvPanel,
|
|
12461
12669
|
AgentTranscriptSkeleton,
|
|
12462
12670
|
plainTextToAgentRichTextDoc,
|
|
12463
12671
|
plainTextToAgentRichTextInlineContent,
|
|
@@ -12467,4 +12675,4 @@ export {
|
|
|
12467
12675
|
AgentConversationFlow,
|
|
12468
12676
|
useProjectedAgentConversation
|
|
12469
12677
|
};
|
|
12470
|
-
//# sourceMappingURL=chunk-
|
|
12678
|
+
//# sourceMappingURL=chunk-ZR2LZVN6.js.map
|