@tutti-os/agent-gui 0.0.28 → 0.0.30
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-2Vjvmzh3.d.ts → AgentMentionSearchController-D5ks45fN.d.ts} +1 -0
- package/dist/{AgentMessageMarkdown-CZaG-QW3.d.ts → AgentMessageMarkdown-Cp70W-Z2.d.ts} +20 -2
- package/dist/agent-conversation/index.d.ts +4 -4
- package/dist/agent-conversation/index.js +6 -6
- package/dist/agent-message-center/index.d.ts +2 -2
- package/dist/agent-message-center/index.js +5 -5
- package/dist/{agentConversationVM-BvlmCNOm.d.ts → agentConversationVM-BElW2LNR.d.ts} +1 -1
- package/dist/app/renderer/agentactivity.css +40 -9
- package/dist/{chunk-IBQO76IY.js → chunk-AFTAFV2C.js} +3 -3
- package/dist/{chunk-XAQQN6MP.js → chunk-FG66NW5M.js} +2 -2
- package/dist/{chunk-LKT3EFGR.js → chunk-J2DMJREM.js} +127 -46
- package/dist/chunk-J2DMJREM.js.map +1 -0
- package/dist/{chunk-ILBFIZCI.js → chunk-MFWZKYZ4.js} +31 -40
- package/dist/chunk-MFWZKYZ4.js.map +1 -0
- package/dist/{chunk-B7DTDZVT.js → chunk-OOQIJXCA.js} +114 -12
- package/dist/chunk-OOQIJXCA.js.map +1 -0
- package/dist/{chunk-LHN26OIP.js → chunk-RDCBACWR.js} +5 -5
- package/dist/{chunk-GLDKFIWM.js → chunk-RQ3HEF42.js} +7 -7
- package/dist/chunk-RQ3HEF42.js.map +1 -0
- package/dist/{chunk-EWWAG26H.js → chunk-SGQ4C7JE.js} +1 -1
- package/dist/chunk-SGQ4C7JE.js.map +1 -0
- package/dist/{chunk-F7XLV7M3.js → chunk-WPWZKKKV.js} +2 -2
- package/dist/chunk-Y35GDLP2.js +88 -0
- package/dist/chunk-Y35GDLP2.js.map +1 -0
- package/dist/context-mention-palette/index.d.ts +4 -3
- package/dist/context-mention-palette/index.js +7 -7
- package/dist/i18n/index.d.ts +6 -6
- package/dist/i18n/index.js +1 -1
- package/dist/index.d.ts +9 -8
- package/dist/index.js +557 -79
- package/dist/index.js.map +1 -1
- package/dist/plan-decision-ops.d.ts +2 -2
- package/dist/workspace-agent-generated-files.d.ts +1 -1
- package/dist/workspace-agent-generated-files.js +3 -3
- package/dist/{workspaceAgentActivityListViewModel-jRF8cP37.d.ts → workspaceAgentActivityListViewModel-DwpbJGDx.d.ts} +4 -1
- package/package.json +12 -12
- package/dist/chunk-B7DTDZVT.js.map +0 -1
- package/dist/chunk-EWWAG26H.js.map +0 -1
- package/dist/chunk-GLDKFIWM.js.map +0 -1
- package/dist/chunk-ILBFIZCI.js.map +0 -1
- package/dist/chunk-LKT3EFGR.js.map +0 -1
- package/dist/chunk-XJ34OIEQ.js +0 -18
- package/dist/chunk-XJ34OIEQ.js.map +0 -1
- /package/dist/{chunk-IBQO76IY.js.map → chunk-AFTAFV2C.js.map} +0 -0
- /package/dist/{chunk-XAQQN6MP.js.map → chunk-FG66NW5M.js.map} +0 -0
- /package/dist/{chunk-LHN26OIP.js.map → chunk-RDCBACWR.js.map} +0 -0
- /package/dist/{chunk-F7XLV7M3.js.map → chunk-WPWZKKKV.js.map} +0 -0
|
@@ -176,6 +176,7 @@ declare class AgentMentionSearchController {
|
|
|
176
176
|
private cancelPendingPreload;
|
|
177
177
|
enterCategory(category: AgentMentionFilterId): void;
|
|
178
178
|
selectAgentGeneratedMentionItem(item: AgentContextMentionItem): boolean;
|
|
179
|
+
exitAgentGeneratedBrowse(): boolean;
|
|
179
180
|
expandGroup(groupId: AgentMentionGroupId): void;
|
|
180
181
|
close(): void;
|
|
181
182
|
dispose(): void;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { AgentActivityUsage } from '@tutti-os/agent-activity-core';
|
|
2
|
-
import { A as AgentHostBatchUserInfoInput, a as AgentHostBatchUserInfoResult, b as AgentHostDeleteWorkspaceAgentSessionInput, k as AgentHostWorkspaceAgentSessionSummaryInput, j as AgentHostWorkspaceAgentSessionSummary, e as AgentHostWorkspaceAgentListInput, l as AgentHostWorkspaceAgentSnapshot, i as AgentHostWorkspaceAgentSessionMessagesInput, h as AgentHostWorkspaceAgentSessionMessages, p as WorkspaceAgentActivitySyncState } from './workspaceAgentActivityListViewModel-
|
|
3
|
-
import { A as AgentApprovalItemVM, a as AgentAskUserQuestionVM, b as AgentConversationPromptVM, c as AgentConversationVM, W as WorkspaceAgentSessionDetailViewModel } from './agentConversationVM-
|
|
2
|
+
import { A as AgentHostBatchUserInfoInput, a as AgentHostBatchUserInfoResult, b as AgentHostDeleteWorkspaceAgentSessionInput, k as AgentHostWorkspaceAgentSessionSummaryInput, j as AgentHostWorkspaceAgentSessionSummary, e as AgentHostWorkspaceAgentListInput, l as AgentHostWorkspaceAgentSnapshot, i as AgentHostWorkspaceAgentSessionMessagesInput, h as AgentHostWorkspaceAgentSessionMessages, p as WorkspaceAgentActivitySyncState } from './workspaceAgentActivityListViewModel-DwpbJGDx.js';
|
|
3
|
+
import { A as AgentApprovalItemVM, a as AgentAskUserQuestionVM, b as AgentConversationPromptVM, c as AgentConversationVM, W as WorkspaceAgentSessionDetailViewModel } from './agentConversationVM-BElW2LNR.js';
|
|
4
4
|
import { WorkspaceUserProjectService } from '@tutti-os/workspace-user-project/contracts';
|
|
5
5
|
|
|
6
6
|
type AgentHostAgentSessionProvider = "claude-code" | "codex" | "nexight" | "gemini" | "hermes" | "openclaw";
|
|
@@ -61,6 +61,8 @@ interface AgentHostAgentSessionState {
|
|
|
61
61
|
providerSessionId?: string;
|
|
62
62
|
resumable?: boolean;
|
|
63
63
|
status: AgentHostAgentSession["status"];
|
|
64
|
+
turnLifecycle?: AgentHostAgentActivityTurnLifecycle | null;
|
|
65
|
+
submitAvailability?: AgentHostAgentActivitySubmitAvailability | null;
|
|
64
66
|
permissionModeId?: string;
|
|
65
67
|
permissionConfig?: AgentHostAgentSessionPermissionConfig;
|
|
66
68
|
settings?: AgentHostAgentSessionComposerSettings;
|
|
@@ -70,6 +72,21 @@ interface AgentHostAgentSessionState {
|
|
|
70
72
|
pendingInteractive?: AgentHostAgentSessionInteractivePrompt | null;
|
|
71
73
|
updatedAtUnixMs: number;
|
|
72
74
|
}
|
|
75
|
+
interface AgentHostAgentActivityCompletedCommand {
|
|
76
|
+
kind: string;
|
|
77
|
+
status: string;
|
|
78
|
+
}
|
|
79
|
+
interface AgentHostAgentActivityTurnLifecycle {
|
|
80
|
+
activeTurnId: string | null;
|
|
81
|
+
phase: string;
|
|
82
|
+
settling?: boolean;
|
|
83
|
+
outcome?: string | null;
|
|
84
|
+
completedCommand?: AgentHostAgentActivityCompletedCommand | null;
|
|
85
|
+
}
|
|
86
|
+
interface AgentHostAgentActivitySubmitAvailability {
|
|
87
|
+
state: string;
|
|
88
|
+
reason?: string;
|
|
89
|
+
}
|
|
73
90
|
type AgentHostAgentSessionActivationMode = "new" | "existing";
|
|
74
91
|
type AgentHostAgentSessionActivationStatus = "attached" | "already_attached" | "failed";
|
|
75
92
|
interface AgentHostActivateAgentSessionResult {
|
|
@@ -582,6 +599,7 @@ interface AgentGUIComposerSettingsVM {
|
|
|
582
599
|
supportsBrowser?: boolean;
|
|
583
600
|
supportsComputerUse?: boolean;
|
|
584
601
|
isSettingsLoading: boolean;
|
|
602
|
+
isModelOptionsLoading?: boolean;
|
|
585
603
|
modelUnavailable: boolean;
|
|
586
604
|
reasoningUnavailable: boolean;
|
|
587
605
|
speedUnavailable: boolean;
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import * as react from 'react';
|
|
2
2
|
import { ReactNode, JSX } from 'react';
|
|
3
3
|
import { W as WorkspaceLinkAction } from '../workspaceLinkActions-CqWZaCY4.js';
|
|
4
|
-
import { b as AgentGUIProviderSkillOption, l as AgentMessageMarkdownWorkspaceAppIcon } from '../AgentMessageMarkdown-
|
|
5
|
-
import { c as AgentConversationVM, W as WorkspaceAgentSessionDetailViewModel } from '../agentConversationVM-
|
|
6
|
-
export { B as BuildWorkspaceAgentSessionDetailInput, d as buildWorkspaceAgentSessionDetailViewModel } from '../agentConversationVM-
|
|
7
|
-
export { W as WorkspaceAgentActivityCard, n as WorkspaceAgentActivitySession, q as WorkspaceAgentActivityTimelineItem } from '../workspaceAgentActivityListViewModel-
|
|
4
|
+
import { b as AgentGUIProviderSkillOption, l as AgentMessageMarkdownWorkspaceAppIcon } from '../AgentMessageMarkdown-Cp70W-Z2.js';
|
|
5
|
+
import { c as AgentConversationVM, W as WorkspaceAgentSessionDetailViewModel } from '../agentConversationVM-BElW2LNR.js';
|
|
6
|
+
export { B as BuildWorkspaceAgentSessionDetailInput, d as buildWorkspaceAgentSessionDetailViewModel } from '../agentConversationVM-BElW2LNR.js';
|
|
7
|
+
export { W as WorkspaceAgentActivityCard, n as WorkspaceAgentActivitySession, q as WorkspaceAgentActivityTimelineItem } from '../workspaceAgentActivityListViewModel-DwpbJGDx.js';
|
|
8
8
|
import '@tutti-os/workspace-issue-manager/core';
|
|
9
9
|
import '@tutti-os/agent-activity-core';
|
|
10
10
|
import '@tutti-os/workspace-user-project/contracts';
|
|
@@ -6,15 +6,15 @@ import {
|
|
|
6
6
|
projectAgentConversationVM,
|
|
7
7
|
reconcileProjectedAgentConversationVM,
|
|
8
8
|
useProjectedAgentConversation
|
|
9
|
-
} from "../chunk-
|
|
10
|
-
import "../chunk-
|
|
11
|
-
import "../chunk-
|
|
12
|
-
import "../chunk-
|
|
13
|
-
import "../chunk-
|
|
9
|
+
} from "../chunk-J2DMJREM.js";
|
|
10
|
+
import "../chunk-AFTAFV2C.js";
|
|
11
|
+
import "../chunk-FG66NW5M.js";
|
|
12
|
+
import "../chunk-Y35GDLP2.js";
|
|
13
|
+
import "../chunk-SGQ4C7JE.js";
|
|
14
14
|
import "../chunk-TYGL25EL.js";
|
|
15
15
|
import {
|
|
16
16
|
translate
|
|
17
|
-
} from "../chunk-
|
|
17
|
+
} from "../chunk-RQ3HEF42.js";
|
|
18
18
|
import "../chunk-LUGELG5V.js";
|
|
19
19
|
import "../chunk-PJP5BUU6.js";
|
|
20
20
|
|
|
@@ -4,8 +4,8 @@ import { I18nRuntime } from '@tutti-os/ui-i18n-runtime';
|
|
|
4
4
|
import { useTranslation, AgentGuiI18nLocale, TranslateFn } from '../i18n/index.js';
|
|
5
5
|
import { W as WorkspaceLinkAction } from '../workspaceLinkActions-CqWZaCY4.js';
|
|
6
6
|
import { AgentActivityNeedsAttentionItem, AgentActivitySnapshot } from '@tutti-os/agent-activity-core';
|
|
7
|
-
import { b as AgentConversationPromptVM } from '../agentConversationVM-
|
|
8
|
-
import { o as WorkspaceAgentActivityStatus } from '../workspaceAgentActivityListViewModel-
|
|
7
|
+
import { b as AgentConversationPromptVM } from '../agentConversationVM-BElW2LNR.js';
|
|
8
|
+
import { o as WorkspaceAgentActivityStatus } from '../workspaceAgentActivityListViewModel-DwpbJGDx.js';
|
|
9
9
|
export { PLAN_IMPLEMENTATION_ACTION_IMPLEMENT, PLAN_IMPLEMENTATION_PROMPT } from '../plan-decision-ops.js';
|
|
10
10
|
import '@tutti-os/workspace-issue-manager/core';
|
|
11
11
|
|
|
@@ -3,7 +3,7 @@ import {
|
|
|
3
3
|
approvalOptionDisplayLabel,
|
|
4
4
|
getPromptToolDetails,
|
|
5
5
|
isPromptRequestIdTitle
|
|
6
|
-
} from "../chunk-
|
|
6
|
+
} from "../chunk-RDCBACWR.js";
|
|
7
7
|
import {
|
|
8
8
|
PLAN_IMPLEMENTATION_ACTION_IMPLEMENT,
|
|
9
9
|
PLAN_IMPLEMENTATION_PROMPT,
|
|
@@ -16,17 +16,17 @@ import {
|
|
|
16
16
|
cn,
|
|
17
17
|
extractAgentMcpToolTarget,
|
|
18
18
|
normalizeAskUserQuestions
|
|
19
|
-
} from "../chunk-
|
|
19
|
+
} from "../chunk-AFTAFV2C.js";
|
|
20
20
|
import {
|
|
21
21
|
managedAgentRoundedIconUrl,
|
|
22
22
|
userAvatarPlaceholderUrl,
|
|
23
23
|
workspaceAgentActivityStatusLabel
|
|
24
|
-
} from "../chunk-
|
|
24
|
+
} from "../chunk-WPWZKKKV.js";
|
|
25
25
|
import "../chunk-MTFSQWZ6.js";
|
|
26
26
|
import {
|
|
27
27
|
resolveWorkspaceAgentSessionSortTimeUnixMs
|
|
28
28
|
} from "../chunk-IBIMGLCD.js";
|
|
29
|
-
import "../chunk-
|
|
29
|
+
import "../chunk-SGQ4C7JE.js";
|
|
30
30
|
import {
|
|
31
31
|
workspaceAgentProviderLabel
|
|
32
32
|
} from "../chunk-TYGL25EL.js";
|
|
@@ -36,7 +36,7 @@ import {
|
|
|
36
36
|
import {
|
|
37
37
|
AgentGuiI18nProvider,
|
|
38
38
|
useTranslation
|
|
39
|
-
} from "../chunk-
|
|
39
|
+
} from "../chunk-RQ3HEF42.js";
|
|
40
40
|
import "../chunk-PJP5BUU6.js";
|
|
41
41
|
|
|
42
42
|
// agent-message-center/WorkspaceAgentMessageCenterPanel.tsx
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { W as WorkspaceAgentActivityCard, n as WorkspaceAgentActivitySession, T as ToolCallStatusKind, q as WorkspaceAgentActivityTimelineItem } from './workspaceAgentActivityListViewModel-
|
|
1
|
+
import { W as WorkspaceAgentActivityCard, n as WorkspaceAgentActivitySession, T as ToolCallStatusKind, q as WorkspaceAgentActivityTimelineItem } from './workspaceAgentActivityListViewModel-DwpbJGDx.js';
|
|
2
2
|
|
|
3
3
|
interface WorkspaceAgentSessionDetailMessage {
|
|
4
4
|
id: string;
|
|
@@ -2281,10 +2281,14 @@ aside.workspace-agents-status-panel
|
|
|
2281
2281
|
}
|
|
2282
2282
|
|
|
2283
2283
|
[data-agent-file-mention="true"][data-agent-mention-kind="file"][data-agent-file-visual-kind="back"]
|
|
2284
|
-
.agent-gui-node__mention-file-icon {
|
|
2285
|
-
|
|
2286
|
-
|
|
2287
|
-
-
|
|
2284
|
+
.agent-gui-node__mention-file-icon.rich-text-at-mention-file-icon--glyph {
|
|
2285
|
+
display: inline-flex;
|
|
2286
|
+
align-items: center;
|
|
2287
|
+
justify-content: center;
|
|
2288
|
+
background-color: transparent;
|
|
2289
|
+
mask-image: none;
|
|
2290
|
+
-webkit-mask-image: none;
|
|
2291
|
+
color: currentColor;
|
|
2288
2292
|
}
|
|
2289
2293
|
|
|
2290
2294
|
.agent-gui-chrome__session-chrome {
|
|
@@ -2331,14 +2335,25 @@ aside.workspace-agents-status-panel
|
|
|
2331
2335
|
margin-left: 24px;
|
|
2332
2336
|
}
|
|
2333
2337
|
|
|
2338
|
+
.agent-gui-node__bottom-dock > .agent-gui-chrome__session-chrome {
|
|
2339
|
+
margin-right: 24px;
|
|
2340
|
+
margin-left: 24px;
|
|
2341
|
+
}
|
|
2342
|
+
|
|
2343
|
+
.agent-gui-node__bottom-dock
|
|
2344
|
+
> .agent-gui-chrome__session-chrome:has(+ .agent-gui-chrome__session-chrome) {
|
|
2345
|
+
margin-right: 36px;
|
|
2346
|
+
margin-left: 36px;
|
|
2347
|
+
}
|
|
2348
|
+
|
|
2334
2349
|
.agent-gui-node__bottom-dock
|
|
2335
2350
|
> .agent-gui-chrome__session-chrome:has(
|
|
2336
2351
|
+ .agent-gui-node__composer
|
|
2337
2352
|
.agent-gui-node__composer-input-group
|
|
2338
2353
|
> .agent-gui-chrome__session-chrome
|
|
2339
2354
|
) {
|
|
2340
|
-
margin-right:
|
|
2341
|
-
margin-left:
|
|
2355
|
+
margin-right: 36px;
|
|
2356
|
+
margin-left: 36px;
|
|
2342
2357
|
}
|
|
2343
2358
|
|
|
2344
2359
|
.agent-gui-node__bottom-dock
|
|
@@ -2350,8 +2365,8 @@ aside.workspace-agents-status-panel
|
|
|
2350
2365
|
+ .agent-gui-node__composer
|
|
2351
2366
|
.agent-gui-node__composer-input-group
|
|
2352
2367
|
> .agent-gui-chrome__session-chrome {
|
|
2353
|
-
margin-right:
|
|
2354
|
-
margin-left:
|
|
2368
|
+
margin-right: 24px;
|
|
2369
|
+
margin-left: 24px;
|
|
2355
2370
|
}
|
|
2356
2371
|
|
|
2357
2372
|
.agent-gui-chrome__card {
|
|
@@ -5477,11 +5492,16 @@ button.agent-gui-node__conversation-section-toggle:hover
|
|
|
5477
5492
|
}
|
|
5478
5493
|
|
|
5479
5494
|
.agent-gui-node__provider-setup-notice {
|
|
5495
|
+
position: absolute;
|
|
5496
|
+
top: 16px;
|
|
5497
|
+
right: var(--agent-gui-detail-padding-x);
|
|
5498
|
+
left: var(--agent-gui-detail-padding-x);
|
|
5499
|
+
z-index: 2;
|
|
5480
5500
|
display: flex;
|
|
5481
5501
|
align-items: center;
|
|
5482
5502
|
gap: 8px;
|
|
5483
5503
|
box-sizing: border-box;
|
|
5484
|
-
margin:
|
|
5504
|
+
margin: 0;
|
|
5485
5505
|
border: 1px solid
|
|
5486
5506
|
color-mix(
|
|
5487
5507
|
in srgb,
|
|
@@ -5498,6 +5518,11 @@ button.agent-gui-node__conversation-section-toggle:hover
|
|
|
5498
5518
|
);
|
|
5499
5519
|
font-size: 13px;
|
|
5500
5520
|
line-height: 18px;
|
|
5521
|
+
pointer-events: auto;
|
|
5522
|
+
}
|
|
5523
|
+
|
|
5524
|
+
.agent-gui-node__detail-header + .agent-gui-node__provider-setup-notice {
|
|
5525
|
+
top: calc(64px + 8px);
|
|
5501
5526
|
}
|
|
5502
5527
|
|
|
5503
5528
|
.agent-gui-node__provider-setup-notice-icon {
|
|
@@ -6824,6 +6849,12 @@ html[data-theme="light"] [data-message-center-item-id].agent-gui-edge-glow {
|
|
|
6824
6849
|
overscroll-behavior: contain;
|
|
6825
6850
|
}
|
|
6826
6851
|
|
|
6852
|
+
.agent-gui-node__composer-menu-content
|
|
6853
|
+
[data-workspace-user-project-action-separator="true"] {
|
|
6854
|
+
margin-inline: 12px;
|
|
6855
|
+
background: var(--agent-gui-border-subtle, var(--line-2));
|
|
6856
|
+
}
|
|
6857
|
+
|
|
6827
6858
|
.agent-gui-node__composer-menu-label {
|
|
6828
6859
|
padding: 4px 10px 2px;
|
|
6829
6860
|
color: var(--agent-gui-text-secondary);
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import {
|
|
2
2
|
getOptionalAgentHostApi,
|
|
3
3
|
useOptionalAgentHostApi
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-SGQ4C7JE.js";
|
|
5
5
|
import {
|
|
6
6
|
useTranslation
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-RQ3HEF42.js";
|
|
8
8
|
import {
|
|
9
9
|
resolveAgentWorkspaceFileVisualKind
|
|
10
10
|
} from "./chunk-PJP5BUU6.js";
|
|
@@ -2668,4 +2668,4 @@ export {
|
|
|
2668
2668
|
CustomScrollArea,
|
|
2669
2669
|
MessageSquareMoreIcon
|
|
2670
2670
|
};
|
|
2671
|
-
//# sourceMappingURL=chunk-
|
|
2671
|
+
//# sourceMappingURL=chunk-AFTAFV2C.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import {
|
|
2
2
|
translate,
|
|
3
3
|
useTranslation
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-RQ3HEF42.js";
|
|
5
5
|
import {
|
|
6
6
|
resolveAgentMentionFileThumbnailUrl,
|
|
7
7
|
resolveAgentMentionFileVisualKind
|
|
@@ -1192,4 +1192,4 @@ export {
|
|
|
1192
1192
|
mentionItemToAttrs,
|
|
1193
1193
|
attrsToMentionItem
|
|
1194
1194
|
};
|
|
1195
|
-
//# sourceMappingURL=chunk-
|
|
1195
|
+
//# sourceMappingURL=chunk-FG66NW5M.js.map
|
|
@@ -10,27 +10,30 @@ import {
|
|
|
10
10
|
resolveWorkspaceFileLinkAction,
|
|
11
11
|
resolveWorkspaceFilePathCandidate,
|
|
12
12
|
resolveWorkspaceLinkAction
|
|
13
|
-
} from "./chunk-
|
|
13
|
+
} from "./chunk-AFTAFV2C.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-FG66NW5M.js";
|
|
21
21
|
import {
|
|
22
|
+
fileChangeCountFromChanges,
|
|
23
|
+
fileChangeEntriesFromChanges,
|
|
24
|
+
fileChangeTypeValue,
|
|
22
25
|
isWorkspaceAgentSyntheticControlMessage
|
|
23
|
-
} from "./chunk-
|
|
26
|
+
} from "./chunk-Y35GDLP2.js";
|
|
24
27
|
import {
|
|
25
28
|
getOptionalAgentActivityRuntime,
|
|
26
29
|
useOptionalAgentHostApi
|
|
27
|
-
} from "./chunk-
|
|
30
|
+
} from "./chunk-SGQ4C7JE.js";
|
|
28
31
|
import {
|
|
29
32
|
workspaceAgentProviderLabel
|
|
30
33
|
} from "./chunk-TYGL25EL.js";
|
|
31
34
|
import {
|
|
32
35
|
translate
|
|
33
|
-
} from "./chunk-
|
|
36
|
+
} from "./chunk-RQ3HEF42.js";
|
|
34
37
|
|
|
35
38
|
// shared/imageGenerationTool.ts
|
|
36
39
|
var KNOWN_IMAGE_GENERATION_TOOL_NAMES = /* @__PURE__ */ new Set([
|
|
@@ -895,7 +898,12 @@ function toolCallDetail(item, toolName) {
|
|
|
895
898
|
summarizeToolInput(payloadInput)
|
|
896
899
|
);
|
|
897
900
|
const normalizedToolName = normalizeToolNameToken3(toolName);
|
|
898
|
-
const multiFileSummary = summarizeFileChangeCount(
|
|
901
|
+
const multiFileSummary = summarizeFileChangeCount(
|
|
902
|
+
payloadOutput,
|
|
903
|
+
payloadInput,
|
|
904
|
+
item.payload,
|
|
905
|
+
metadataInput
|
|
906
|
+
);
|
|
899
907
|
const todoSummary = summarizeTodoProgress(payloadInput);
|
|
900
908
|
const webDomainSummary = summarizeWebDomain(webTarget);
|
|
901
909
|
const imageGeneration = extractImageGenerationPreview({
|
|
@@ -1155,17 +1163,23 @@ function summarizeToolInput(value) {
|
|
|
1155
1163
|
}
|
|
1156
1164
|
return "";
|
|
1157
1165
|
}
|
|
1158
|
-
function summarizeFileChangeCount(
|
|
1159
|
-
const
|
|
1160
|
-
|
|
1161
|
-
|
|
1162
|
-
|
|
1163
|
-
|
|
1164
|
-
|
|
1165
|
-
|
|
1166
|
-
|
|
1167
|
-
|
|
1168
|
-
|
|
1166
|
+
function summarizeFileChangeCount(...values) {
|
|
1167
|
+
for (const value of values) {
|
|
1168
|
+
const structuredPatch = arrayRecordValue(value, "structuredPatch");
|
|
1169
|
+
if (structuredPatch.length > 1) {
|
|
1170
|
+
return `${structuredPatch.length} files`;
|
|
1171
|
+
}
|
|
1172
|
+
const fileChanges = arrayRecordValue(
|
|
1173
|
+
recordValue3(value, "fileChanges"),
|
|
1174
|
+
"files"
|
|
1175
|
+
);
|
|
1176
|
+
if (fileChanges.length > 1) {
|
|
1177
|
+
return `${fileChanges.length} files`;
|
|
1178
|
+
}
|
|
1179
|
+
const changesCount = fileChangeCountFromChanges(value?.changes);
|
|
1180
|
+
if (changesCount > 1) {
|
|
1181
|
+
return `${changesCount} files`;
|
|
1182
|
+
}
|
|
1169
1183
|
}
|
|
1170
1184
|
return null;
|
|
1171
1185
|
}
|
|
@@ -3378,7 +3392,7 @@ function projectAgentTurnSummaryRows(detail) {
|
|
|
3378
3392
|
}
|
|
3379
3393
|
function normalizedActivityFilePath(value, options) {
|
|
3380
3394
|
const path = value?.trim() ?? "";
|
|
3381
|
-
return path && !isStructuredPayloadPath(path) && resolveWorkspaceFilePathCandidate({
|
|
3395
|
+
return path && !isStructuredPayloadPath(path) && !isIgnoredFilePath(path) && resolveWorkspaceFilePathCandidate({
|
|
3382
3396
|
path,
|
|
3383
3397
|
workspaceRoot: options.workspaceRoot
|
|
3384
3398
|
}) ? path : null;
|
|
@@ -3497,7 +3511,12 @@ function extractFileChanges(input) {
|
|
|
3497
3511
|
if (isFailedToolStatus(input.statusKind)) {
|
|
3498
3512
|
return [];
|
|
3499
3513
|
}
|
|
3500
|
-
const changes =
|
|
3514
|
+
const changes = firstFileChangeValue(
|
|
3515
|
+
input.output?.changes,
|
|
3516
|
+
payload?.changes,
|
|
3517
|
+
input.input?.changes,
|
|
3518
|
+
rawInput?.changes
|
|
3519
|
+
);
|
|
3501
3520
|
const filesFromMetadata = collectMetadataFiles(
|
|
3502
3521
|
input.id,
|
|
3503
3522
|
input.toolName ?? null,
|
|
@@ -3686,16 +3705,13 @@ function collectMetadataFiles(messageId, toolName, occurredAtUnixMs, files, patc
|
|
|
3686
3705
|
});
|
|
3687
3706
|
}
|
|
3688
3707
|
function collectChangeMapFiles(messageId, toolName, occurredAtUnixMs, changes, options) {
|
|
3689
|
-
|
|
3690
|
-
|
|
3691
|
-
|
|
3692
|
-
|
|
3693
|
-
const change = objectValue5(rawChange);
|
|
3694
|
-
const normalizedPath = normalizedFilePath(path, options);
|
|
3695
|
-
if (!change || !normalizedPath) {
|
|
3708
|
+
return fileChangeEntriesFromChanges(changes).flatMap((entry) => {
|
|
3709
|
+
const change = entry.change;
|
|
3710
|
+
const normalizedPath = normalizedFilePath(entry.path, options);
|
|
3711
|
+
if (!normalizedPath) {
|
|
3696
3712
|
return [];
|
|
3697
3713
|
}
|
|
3698
|
-
const normalizedType = normalizeChangeType(
|
|
3714
|
+
const normalizedType = normalizeChangeType(fileChangeTypeValue(change));
|
|
3699
3715
|
const unifiedDiff = firstNonEmptyString(
|
|
3700
3716
|
stringValue6(change.unified_diff),
|
|
3701
3717
|
stringValue6(change.unifiedDiff),
|
|
@@ -3731,7 +3747,7 @@ function collectChangeMapFiles(messageId, toolName, occurredAtUnixMs, changes, o
|
|
|
3731
3747
|
}
|
|
3732
3748
|
return [
|
|
3733
3749
|
buildFileChange({
|
|
3734
|
-
id: `${messageId}:change:${index + 1}`,
|
|
3750
|
+
id: `${messageId}:change:${entry.index + 1}`,
|
|
3735
3751
|
toolName,
|
|
3736
3752
|
path: normalizedPath,
|
|
3737
3753
|
changeType: normalizedType ?? inferAgentPatchChangeType(unifiedDiff),
|
|
@@ -3748,6 +3764,12 @@ function collectContentDiffFiles(messageId, toolName, occurredAtUnixMs, contentI
|
|
|
3748
3764
|
if (!contentItems) {
|
|
3749
3765
|
return [];
|
|
3750
3766
|
}
|
|
3767
|
+
const changesByPath = new Map(
|
|
3768
|
+
fileChangeEntriesFromChanges(changes).map((entry) => [
|
|
3769
|
+
entry.path,
|
|
3770
|
+
entry.change
|
|
3771
|
+
])
|
|
3772
|
+
);
|
|
3751
3773
|
return contentItems.flatMap((value, index) => {
|
|
3752
3774
|
const item = objectValue5(value);
|
|
3753
3775
|
if (!item) {
|
|
@@ -3761,9 +3783,9 @@ function collectContentDiffFiles(messageId, toolName, occurredAtUnixMs, contentI
|
|
|
3761
3783
|
if (!path) {
|
|
3762
3784
|
return [];
|
|
3763
3785
|
}
|
|
3764
|
-
const relatedChange =
|
|
3786
|
+
const relatedChange = changesByPath.get(path) ?? null;
|
|
3765
3787
|
const normalizedType = normalizeChangeType(
|
|
3766
|
-
|
|
3788
|
+
relatedChange ? fileChangeTypeValue(relatedChange) : null
|
|
3767
3789
|
);
|
|
3768
3790
|
const unifiedDiff = firstNonEmptyString(
|
|
3769
3791
|
stringValue6(item.diff),
|
|
@@ -3855,7 +3877,8 @@ function normalizedFilePath(value, options = {}) {
|
|
|
3855
3877
|
}) ? path : null;
|
|
3856
3878
|
}
|
|
3857
3879
|
function isIgnoredFilePath(path) {
|
|
3858
|
-
|
|
3880
|
+
const normalizedPath = path.replace(/\\/g, "/").replace(/\/+$/, "");
|
|
3881
|
+
return normalizedPath === "/dev/null" || normalizedPath === "NUL" || normalizedPath === "/private/tmp" || normalizedPath.startsWith("/private/tmp/");
|
|
3859
3882
|
}
|
|
3860
3883
|
function isStructuredPayloadPath(path) {
|
|
3861
3884
|
if (/[\r\n]/.test(path)) {
|
|
@@ -4019,6 +4042,14 @@ function isFailedToolStatus(value) {
|
|
|
4019
4042
|
function objectValue5(value) {
|
|
4020
4043
|
return value && typeof value === "object" && !Array.isArray(value) ? value : null;
|
|
4021
4044
|
}
|
|
4045
|
+
function firstFileChangeValue(...values) {
|
|
4046
|
+
for (const value of values) {
|
|
4047
|
+
if (fileChangeEntriesFromChanges(value).length > 0) {
|
|
4048
|
+
return value;
|
|
4049
|
+
}
|
|
4050
|
+
}
|
|
4051
|
+
return null;
|
|
4052
|
+
}
|
|
4022
4053
|
function arrayValue5(value) {
|
|
4023
4054
|
return Array.isArray(value) ? value : null;
|
|
4024
4055
|
}
|
|
@@ -4094,8 +4125,10 @@ function projectAgentConversationVM(detail, options = {}) {
|
|
|
4094
4125
|
rows.push(processing);
|
|
4095
4126
|
}
|
|
4096
4127
|
const normalizedRows = projectMessageCopyText(
|
|
4097
|
-
|
|
4098
|
-
|
|
4128
|
+
dropRedundantErrorWarningNotices(
|
|
4129
|
+
mergeAdjacentAssistantMessageRows(
|
|
4130
|
+
mergeAdjacentTransportRetryNoticeRows(rows)
|
|
4131
|
+
)
|
|
4099
4132
|
),
|
|
4100
4133
|
{
|
|
4101
4134
|
assistantCopyEligibleTurnIds: buildAssistantCopyEligibleTurnIds(detail)
|
|
@@ -4222,6 +4255,53 @@ function mergeAdjacentAssistantMessageRows(rows) {
|
|
|
4222
4255
|
}
|
|
4223
4256
|
return merged;
|
|
4224
4257
|
}
|
|
4258
|
+
function dropRedundantErrorWarningNotices(rows) {
|
|
4259
|
+
const turnsWithVisibleError = /* @__PURE__ */ new Set();
|
|
4260
|
+
for (const row of rows) {
|
|
4261
|
+
if (row.kind !== "message" || row.speaker !== "assistant") {
|
|
4262
|
+
continue;
|
|
4263
|
+
}
|
|
4264
|
+
for (const message of row.messages) {
|
|
4265
|
+
if (message.visibleError) {
|
|
4266
|
+
turnsWithVisibleError.add(row.turnId);
|
|
4267
|
+
}
|
|
4268
|
+
}
|
|
4269
|
+
}
|
|
4270
|
+
if (turnsWithVisibleError.size === 0) {
|
|
4271
|
+
return [...rows];
|
|
4272
|
+
}
|
|
4273
|
+
const filteredRows = [];
|
|
4274
|
+
for (const row of rows) {
|
|
4275
|
+
if (row.kind !== "message" || row.speaker !== "assistant") {
|
|
4276
|
+
filteredRows.push(row);
|
|
4277
|
+
continue;
|
|
4278
|
+
}
|
|
4279
|
+
if (!turnsWithVisibleError.has(row.turnId)) {
|
|
4280
|
+
filteredRows.push(row);
|
|
4281
|
+
continue;
|
|
4282
|
+
}
|
|
4283
|
+
const messages = row.messages.filter(
|
|
4284
|
+
(message) => !isRedundantErrorWarningNotice(message)
|
|
4285
|
+
);
|
|
4286
|
+
if (messages.length === 0) {
|
|
4287
|
+
continue;
|
|
4288
|
+
}
|
|
4289
|
+
if (messages.length === row.messages.length) {
|
|
4290
|
+
filteredRows.push(row);
|
|
4291
|
+
continue;
|
|
4292
|
+
}
|
|
4293
|
+
filteredRows.push({ ...row, messages });
|
|
4294
|
+
}
|
|
4295
|
+
return filteredRows;
|
|
4296
|
+
}
|
|
4297
|
+
function isRedundantErrorWarningNotice(message) {
|
|
4298
|
+
const notice = message.systemNotice;
|
|
4299
|
+
if (!notice || notice.noticeKind !== "warning") {
|
|
4300
|
+
return false;
|
|
4301
|
+
}
|
|
4302
|
+
const title = notice.title?.trim() ?? "";
|
|
4303
|
+
return title === "Codex reported an error.";
|
|
4304
|
+
}
|
|
4225
4305
|
function mergeAdjacentTransportRetryNoticeRows(rows) {
|
|
4226
4306
|
const merged = [];
|
|
4227
4307
|
for (const row of rows) {
|
|
@@ -7726,14 +7806,10 @@ function fileChangesFiles(value) {
|
|
|
7726
7806
|
});
|
|
7727
7807
|
}
|
|
7728
7808
|
function changeMapFiles(value) {
|
|
7729
|
-
|
|
7730
|
-
|
|
7731
|
-
|
|
7732
|
-
|
|
7733
|
-
return Object.entries(record).flatMap(([path, rawChange]) => {
|
|
7734
|
-
const change = recordValue4(rawChange);
|
|
7735
|
-
const normalizedPath = path.trim();
|
|
7736
|
-
if (!normalizedPath || !change) {
|
|
7809
|
+
return fileChangeEntriesFromChanges(value).flatMap((entry) => {
|
|
7810
|
+
const change = entry.change;
|
|
7811
|
+
const normalizedPath = entry.path.trim();
|
|
7812
|
+
if (!normalizedPath) {
|
|
7737
7813
|
return [];
|
|
7738
7814
|
}
|
|
7739
7815
|
const unifiedDiff = firstString3(
|
|
@@ -7743,7 +7819,7 @@ function changeMapFiles(value) {
|
|
|
7743
7819
|
stringValue7(change.patch)
|
|
7744
7820
|
);
|
|
7745
7821
|
const explicitContent = stringValue7(change.content);
|
|
7746
|
-
const normalizedType = normalizeChangeType2(
|
|
7822
|
+
const normalizedType = normalizeChangeType2(fileChangeTypeValue(change));
|
|
7747
7823
|
let oldString = firstString3(
|
|
7748
7824
|
stringValue7(change.old_string),
|
|
7749
7825
|
stringValue7(change.oldString)
|
|
@@ -7802,7 +7878,12 @@ function contentDiffFiles(value, changesValue, toolName) {
|
|
|
7802
7878
|
if (!items) {
|
|
7803
7879
|
return [];
|
|
7804
7880
|
}
|
|
7805
|
-
const
|
|
7881
|
+
const changesByPath = new Map(
|
|
7882
|
+
fileChangeEntriesFromChanges(changesValue).map((entry) => [
|
|
7883
|
+
entry.path,
|
|
7884
|
+
entry.change
|
|
7885
|
+
])
|
|
7886
|
+
);
|
|
7806
7887
|
return items.flatMap((item) => {
|
|
7807
7888
|
const record = recordValue4(item);
|
|
7808
7889
|
if (!record) {
|
|
@@ -7816,7 +7897,7 @@ function contentDiffFiles(value, changesValue, toolName) {
|
|
|
7816
7897
|
if (!path) {
|
|
7817
7898
|
return [];
|
|
7818
7899
|
}
|
|
7819
|
-
const relatedChange =
|
|
7900
|
+
const relatedChange = changesByPath.get(path) ?? null;
|
|
7820
7901
|
const unifiedDiff = firstString3(
|
|
7821
7902
|
stringValue7(record.diff),
|
|
7822
7903
|
stringValue7(record.patch),
|
|
@@ -7824,7 +7905,7 @@ function contentDiffFiles(value, changesValue, toolName) {
|
|
|
7824
7905
|
stringValue7(relatedChange?.unifiedDiff)
|
|
7825
7906
|
);
|
|
7826
7907
|
const normalizedType = normalizeChangeType2(
|
|
7827
|
-
|
|
7908
|
+
relatedChange ? fileChangeTypeValue(relatedChange) : null
|
|
7828
7909
|
);
|
|
7829
7910
|
let oldString = firstString3(
|
|
7830
7911
|
stringValue7(record.oldText),
|
|
@@ -12386,4 +12467,4 @@ export {
|
|
|
12386
12467
|
AgentConversationFlow,
|
|
12387
12468
|
useProjectedAgentConversation
|
|
12388
12469
|
};
|
|
12389
|
-
//# sourceMappingURL=chunk-
|
|
12470
|
+
//# sourceMappingURL=chunk-J2DMJREM.js.map
|