@xenosystem/agent-interface-ui 0.1.4 → 0.1.6
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/adapters/agentHostPlatformBridge.d.ts.map +1 -1
- package/dist/adapters/agentHostPlatformBridge.js +78 -4
- package/dist/adapters/agentHostPlatformBridge.js.map +1 -1
- package/dist/components/agent/AgentInterface.d.ts +2 -1
- package/dist/components/agent/AgentInterface.d.ts.map +1 -1
- package/dist/components/agent/AgentInterface.js +110 -14
- package/dist/components/agent/AgentInterface.js.map +1 -1
- package/dist/components/agent/AgentView.d.ts +1 -0
- package/dist/components/agent/AgentView.d.ts.map +1 -1
- package/dist/components/agent/AgentView.js +57 -47
- package/dist/components/agent/AgentView.js.map +1 -1
- package/dist/components/agent/AgentWorkbenchPanel.d.ts +3 -0
- package/dist/components/agent/AgentWorkbenchPanel.d.ts.map +1 -1
- package/dist/components/agent/AgentWorkbenchPanel.js +2 -1
- package/dist/components/agent/AgentWorkbenchPanel.js.map +1 -1
- package/dist/components/agent/FleetPanel.d.ts.map +1 -1
- package/dist/components/agent/FleetPanel.js +7 -1
- package/dist/components/agent/FleetPanel.js.map +1 -1
- package/dist/components/agent/RunReviewPanel.d.ts.map +1 -1
- package/dist/components/agent/RunReviewPanel.js +2 -2
- package/dist/components/agent/RunReviewPanel.js.map +1 -1
- package/dist/components/agent/SessionsPanel.d.ts.map +1 -1
- package/dist/components/agent/SessionsPanel.js +85 -5
- package/dist/components/agent/SessionsPanel.js.map +1 -1
- package/dist/components/agent/compactionSummary.d.ts +0 -23
- package/dist/components/agent/compactionSummary.d.ts.map +1 -1
- package/dist/components/agent/compactionSummary.js +145 -3
- package/dist/components/agent/compactionSummary.js.map +1 -1
- package/dist/components/agent/injectionSummary.d.ts +37 -0
- package/dist/components/agent/injectionSummary.d.ts.map +1 -0
- package/dist/components/agent/injectionSummary.js +49 -0
- package/dist/components/agent/injectionSummary.js.map +1 -0
- package/dist/components/agent/runtimeEventSummary.d.ts +61 -0
- package/dist/components/agent/runtimeEventSummary.d.ts.map +1 -0
- package/dist/components/agent/runtimeEventSummary.js +112 -0
- package/dist/components/agent/runtimeEventSummary.js.map +1 -0
- package/dist/components/agent/settings/sections/AgentPermissionRulesPanel.d.ts.map +1 -1
- package/dist/components/agent/settings/sections/AgentPermissionRulesPanel.js +27 -1
- package/dist/components/agent/settings/sections/AgentPermissionRulesPanel.js.map +1 -1
- package/dist/components/agent/timelineContextPressure.d.ts +62 -0
- package/dist/components/agent/timelineContextPressure.d.ts.map +1 -0
- package/dist/components/agent/timelineContextPressure.js +104 -0
- package/dist/components/agent/timelineContextPressure.js.map +1 -0
- package/dist/components/agent/tokenLabel.d.ts +14 -0
- package/dist/components/agent/tokenLabel.d.ts.map +1 -0
- package/dist/components/agent/tokenLabel.js +18 -0
- package/dist/components/agent/tokenLabel.js.map +1 -0
- package/dist/index.d.ts +17 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +17 -0
- package/dist/index.js.map +1 -1
- package/dist/platformApiTypes.d.ts +36 -1
- package/dist/platformApiTypes.d.ts.map +1 -1
- package/package.json +6 -6
|
@@ -133,6 +133,7 @@ interface AgentViewProps {
|
|
|
133
133
|
onPeekEditorPath?: (path: string) => void;
|
|
134
134
|
onPeekEditorDiff?: (diff: ConversationEditorDiff) => void;
|
|
135
135
|
onOpenRuntimeSettings?: () => void;
|
|
136
|
+
onOpenConversationSettings?: () => void;
|
|
136
137
|
onSelectSdkRuntime?: () => void;
|
|
137
138
|
onSelectAcpRuntime?: (acpAgentConfigId?: string, providerModel?: string) => void;
|
|
138
139
|
onConversationCreated?: (conversationId: string) => void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AgentView.d.ts","sourceRoot":"","sources":["../../../src/components/agent/AgentView.tsx"],"names":[],"mappings":"AAQA,OAAO,KAA4D,MAAM,OAAO,CAAA;AAiBhF,OAAO,KAAK,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,0BAA0B,EAAE,MAAM,kBAAkB,CAAA;AACxG,OAAO,KAAK,EACV,wBAAwB,EAEzB,MAAM,kCAAkC,CAAA;AACzC,OAAO,KAAK,EAAE,sBAAsB,EAA2B,MAAM,yBAAyB,CAAA;AAiC9F,UAAU,UAAU;IAClB,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,CAAC,EAAE,MAAM,EAAE,CAAA;CACvB;AAED,UAAU,gBAAgB;IACxB,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,eAAe,CAAC,EAAE,OAAO,CAAA;CAC1B;AAED,UAAU,cAAc;IACtB,OAAO,EAAE,MAAM,CAAA;IACf,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC9B,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,SAAS,EAAE,MAAM,CAAA;IACjB,KAAK,EAAE,MAAM,CAAA;IACb,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,YAAY,CAAC,EAAE,iBAAiB,CAAA;IAChC,iBAAiB,CAAC,EAAE,0BAA0B,CAAA;IAC9C,gBAAgB,CAAC,EAAE,wBAAwB,CAAA;IAC3C,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAA;IAC7B,aAAa,CAAC,EAAE,iBAAiB,EAAE,CAAA;IACnC,iBAAiB,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,iBAAiB,EAAE,IAAI,GAAG,WAAW,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,iBAAiB,EAAE,IAAI,GAAG,WAAW,CAAC,CAAC,KAAK,IAAI,CAAA;IACtI,WAAW,CAAC,EAAE,UAAU,EAAE,CAAA;IAC1B,UAAU,CAAC,EAAE,gBAAgB,EAAE,CAAA;IAC/B,aAAa,CAAC,EAAE,CAAC,MAAM,EAAE;QACvB,aAAa,EAAE,MAAM,CAAA;QACrB,IAAI,EAAE,MAAM,CAAA;QACZ,YAAY,CAAC,EAAE,MAAM,CAAA;KACtB,KAAK,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;IACzF,UAAU,CAAC,EAAE,CAAC,MAAM,EAAE;QACpB,aAAa,EAAE,MAAM,CAAA;QACrB,oBAAoB,CAAC,EAAE,MAAM,CAAA;QAC7B,eAAe,CAAC,EAAE,MAAM,CAAA;QACxB,eAAe,EAAE,MAAM,CAAA;QACvB,MAAM,EAAE,MAAM,CAAA;KACf,KAAK,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,eAAe,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,oBAAoB,CAAC,EAAE,MAAM,CAAC;QAAC,aAAa,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;IACpJ,iBAAiB,CAAC,EAAE,CAAC,MAAM,EAAE;QAC3B,IAAI,EAAE,MAAM,CAAA;KACb,KAAK,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAC;QAAC,aAAa,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;IACjG,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE;QACtB,YAAY,EAAE,MAAM,CAAA;QACpB,IAAI,EAAE,MAAM,CAAA;KACb,KAAK,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,aAAa,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;IAC/G,iBAAiB,CAAC,EAAE,CAAC,MAAM,EAAE;QAC3B,YAAY,EAAE,MAAM,CAAA;QACpB,OAAO,EAAE,MAAM,CAAA;QACf,IAAI,EAAE,MAAM,CAAA;QACZ,YAAY,CAAC,EAAE,MAAM,CAAA;KACtB,KAAK,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,aAAa,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;IACpI,iBAAiB,CAAC,EAAE,MAAM,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;IACvE,qBAAqB,CAAC,EAAE,MAAM,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;IAC/F,0BAA0B,CAAC,EAAE,CAAC,MAAM,EAAE;QACpC,cAAc,EAAE,MAAM,CAAA;QACtB,SAAS,EAAE,MAAM,CAAA;QACjB,KAAK,EAAE,MAAM,CAAA;KACd,KAAK,OAAO,CAAC;QACZ,iBAAiB,CAAC,EAAE;YAClB,WAAW,EAAE,MAAM,CAAA;YACnB,aAAa,EAAE,MAAM,CAAA;SACtB,CAAA;QACD,sBAAsB,EAAE,MAAM,CAAA;KAC/B,CAAC,CAAA;IACF,kCAAkC,CAAC,EAAE,CAAC,MAAM,EAAE;QAC5C,cAAc,EAAE,MAAM,CAAA;QACtB,SAAS,EAAE,MAAM,CAAA;QACjB,KAAK,EAAE,MAAM,CAAA;QACb,IAAI,EAAE,OAAO,GAAG,QAAQ,CAAA;QACxB,WAAW,CAAC,EAAE,MAAM,CAAA;KACrB,KAAK,OAAO,CAAC;QACZ,OAAO,EAAE,OAAO,CAAA;QAChB,WAAW,CAAC,EAAE,MAAM,CAAA;QACpB,MAAM,CAAC,EAAE,MAAM,CAAA;QACf,OAAO,CAAC,EAAE,MAAM,CAAA;QAChB,aAAa,CAAC,EAAE,MAAM,CAAA;QACtB,SAAS,CAAC,EAAE,MAAM,CAAA;QAClB,KAAK,CAAC,EAAE,MAAM,CAAA;KACf,CAAC,CAAA;IACF,4BAA4B,CAAC,EAAE,CAAC,MAAM,EAAE;QACtC,cAAc,EAAE,MAAM,CAAA;QACtB,OAAO,EAAE,MAAM,CAAA;KAChB,KAAK,IAAI,CAAA;IACV,gBAAgB,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;IACzC,gBAAgB,CAAC,EAAE,CAAC,IAAI,EAAE,sBAAsB,KAAK,IAAI,CAAA;IACzD,gBAAgB,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;IACzC,gBAAgB,CAAC,EAAE,CAAC,IAAI,EAAE,sBAAsB,KAAK,IAAI,CAAA;IACzD,qBAAqB,CAAC,EAAE,MAAM,IAAI,CAAA;IAClC,kBAAkB,CAAC,EAAE,MAAM,IAAI,CAAA;IAC/B,kBAAkB,CAAC,EAAE,CAAC,gBAAgB,CAAC,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,MAAM,KAAK,IAAI,CAAA;IAChF,qBAAqB,CAAC,EAAE,CAAC,cAAc,EAAE,MAAM,KAAK,IAAI,CAAA;IACxD,oBAAoB,CAAC,EAAE,OAAO,CAAA;CAC/B;AAi1JD,wBAAgB,SAAS,CAAC,KAAK,EAAE,cAAc,
|
|
1
|
+
{"version":3,"file":"AgentView.d.ts","sourceRoot":"","sources":["../../../src/components/agent/AgentView.tsx"],"names":[],"mappings":"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"}
|
|
@@ -3948,6 +3948,41 @@ export function AgentView(props) {
|
|
|
3948
3948
|
return { pending, inProgress, blocked, completed, total: conversationTasks.length };
|
|
3949
3949
|
}, [conversationTasks]);
|
|
3950
3950
|
const sessionPanelOpen = !!sessionUi?.panelOpen;
|
|
3951
|
+
const [sessionDrawerOpen, setSessionDrawerOpen] = useState(false);
|
|
3952
|
+
const [devSessionOpen, setDevSessionOpen] = useState(() => {
|
|
3953
|
+
try {
|
|
3954
|
+
return window.sessionStorage.getItem('xeno-agent-dev-session') === '1';
|
|
3955
|
+
}
|
|
3956
|
+
catch {
|
|
3957
|
+
return false;
|
|
3958
|
+
}
|
|
3959
|
+
});
|
|
3960
|
+
const toggleDevSession = useCallback(() => {
|
|
3961
|
+
setDevSessionOpen((open) => {
|
|
3962
|
+
const next = !open;
|
|
3963
|
+
try {
|
|
3964
|
+
window.sessionStorage.setItem('xeno-agent-dev-session', next ? '1' : '0');
|
|
3965
|
+
}
|
|
3966
|
+
catch {
|
|
3967
|
+
// sessionStorage can be unavailable in locked-down previews
|
|
3968
|
+
}
|
|
3969
|
+
return next;
|
|
3970
|
+
});
|
|
3971
|
+
}, []);
|
|
3972
|
+
useEffect(() => {
|
|
3973
|
+
const onKeyDown = (event) => {
|
|
3974
|
+
if (event.repeat || event.altKey)
|
|
3975
|
+
return;
|
|
3976
|
+
if (!(event.ctrlKey || event.metaKey) || !event.shiftKey)
|
|
3977
|
+
return;
|
|
3978
|
+
if (event.key.toLowerCase() !== 'd')
|
|
3979
|
+
return;
|
|
3980
|
+
event.preventDefault();
|
|
3981
|
+
toggleDevSession();
|
|
3982
|
+
};
|
|
3983
|
+
window.addEventListener('keydown', onKeyDown);
|
|
3984
|
+
return () => window.removeEventListener('keydown', onKeyDown);
|
|
3985
|
+
}, [toggleDevSession]);
|
|
3951
3986
|
const sessionPanelTab = sessionUi?.panelTab || 'trace';
|
|
3952
3987
|
const selectedTraceMessageId = sessionUi?.selectedTraceMessageId;
|
|
3953
3988
|
const tasksCollapsed = !!sessionUi?.tasksCollapsed;
|
|
@@ -4009,30 +4044,26 @@ export function AgentView(props) {
|
|
|
4009
4044
|
});
|
|
4010
4045
|
}, [conversationId, actualModelId, messages.length, conversationGrantedDirectories, effectiveAllowedDirectories]);
|
|
4011
4046
|
useEffect(() => {
|
|
4012
|
-
|
|
4047
|
+
setSessionDrawerOpen(false);
|
|
4048
|
+
}, [conversationId]);
|
|
4049
|
+
useEffect(() => {
|
|
4050
|
+
if (!sessionDrawerOpen)
|
|
4013
4051
|
return;
|
|
4014
4052
|
const handleClick = (event) => {
|
|
4015
4053
|
const target = event.target;
|
|
4016
4054
|
if (sessionPanelRef.current?.contains(target))
|
|
4017
4055
|
return;
|
|
4018
|
-
|
|
4019
|
-
return;
|
|
4020
|
-
updateConversation(conversationId, {
|
|
4021
|
-
sessionUi: {
|
|
4022
|
-
...(conversation?.sessionUi || {}),
|
|
4023
|
-
panelOpen: false
|
|
4024
|
-
}
|
|
4025
|
-
});
|
|
4056
|
+
setSessionDrawerOpen(false);
|
|
4026
4057
|
};
|
|
4027
4058
|
const timer = window.setTimeout(() => document.addEventListener('mousedown', handleClick), 0);
|
|
4028
4059
|
return () => {
|
|
4029
4060
|
window.clearTimeout(timer);
|
|
4030
4061
|
document.removeEventListener('mousedown', handleClick);
|
|
4031
4062
|
};
|
|
4032
|
-
}, [
|
|
4063
|
+
}, [sessionDrawerOpen]);
|
|
4033
4064
|
useEffect(() => {
|
|
4034
4065
|
const sessionId = sessionUi?.sdkSessionId;
|
|
4035
|
-
if (!
|
|
4066
|
+
if (!sessionDrawerOpen || !sessionId || !getAgentPlatformBridge()?.agent?.listSdkCheckpoints) {
|
|
4036
4067
|
setSdkCheckpoints([]);
|
|
4037
4068
|
return;
|
|
4038
4069
|
}
|
|
@@ -4059,7 +4090,7 @@ export function AgentView(props) {
|
|
|
4059
4090
|
return () => {
|
|
4060
4091
|
cancelled = true;
|
|
4061
4092
|
};
|
|
4062
|
-
}, [
|
|
4093
|
+
}, [sessionDrawerOpen, sessionUi?.sdkSessionId]);
|
|
4063
4094
|
const loadSdkSessions = useCallback(async () => {
|
|
4064
4095
|
if (!getAgentPlatformBridge()?.agent?.listSdkSessions)
|
|
4065
4096
|
return;
|
|
@@ -4087,10 +4118,10 @@ export function AgentView(props) {
|
|
|
4087
4118
|
}
|
|
4088
4119
|
}, [sdkSessionWorkingDirectory]);
|
|
4089
4120
|
useEffect(() => {
|
|
4090
|
-
if (!
|
|
4121
|
+
if (!sessionDrawerOpen)
|
|
4091
4122
|
return;
|
|
4092
4123
|
void loadSdkSessions();
|
|
4093
|
-
}, [loadSdkSessions,
|
|
4124
|
+
}, [loadSdkSessions, sessionDrawerOpen]);
|
|
4094
4125
|
useEffect(() => {
|
|
4095
4126
|
const node = footerDockRef.current;
|
|
4096
4127
|
if (!node)
|
|
@@ -6402,11 +6433,11 @@ export function AgentView(props) {
|
|
|
6402
6433
|
});
|
|
6403
6434
|
try {
|
|
6404
6435
|
await copyTextWithFallback(snapshot);
|
|
6405
|
-
setToolStatus(mode === 'full' ? 'Full
|
|
6436
|
+
setToolStatus(mode === 'full' ? 'Full support report copied.' : 'Support report copied.');
|
|
6406
6437
|
}
|
|
6407
6438
|
catch (error) {
|
|
6408
6439
|
console.error('[AgentView] Failed to copy debug snapshot', error);
|
|
6409
|
-
setToolStatus('Failed to copy
|
|
6440
|
+
setToolStatus('Failed to copy support report.');
|
|
6410
6441
|
}
|
|
6411
6442
|
}, [
|
|
6412
6443
|
actualModelId,
|
|
@@ -6893,35 +6924,7 @@ export function AgentView(props) {
|
|
|
6893
6924
|
terminalDraftInput,
|
|
6894
6925
|
updateConversation,
|
|
6895
6926
|
]);
|
|
6896
|
-
return (_jsxs("div", { className: "xeno-app-shell flex-1 relative min-h-0", children: [_jsx("div", { ref: messagesScrollRef, className: "agent-scrollbar absolute inset-0 overflow-auto pr-1.5", style: { scrollbarGutter: 'stable' }, children: conversationHydrating ? (_jsx(ConversationLoadingSkeleton, {})) : (_jsxs("div", { className: "w-full max-w-[820px] mx-auto px-6 pt-6 min-h-full flex flex-col gap-1.5", style: { paddingBottom: messageViewportBottomPadding }, children: [conversation && (_jsx("div", { className: "sticky top-2 z-[20] -mx-1 px-1 pb-2", children: _jsxs("div", { className: "xeno-border-subtle rounded-[6px] border bg-[#111111] px-3 py-2 flex items-center justify-between gap-3", children: [_jsxs("div", { className: "flex items-center gap-3 min-w-0 flex-wrap", children: [_jsx("span", { className: `text-[10px] uppercase tracking-[0.14em] ${sessionStatusClassName}`, children: sessionStatusLabel }), _jsxs("span", { className: "text-[10px] text-white/24 tabular-nums", children: [pendingTurns.length, " queued"] }), _jsxs("span", { className: "text-[10px] text-white/24 tabular-nums", children: [checkpoints.length, " checkpoints"] }), _jsxs("span", { className: "text-[10px] text-white/18", children: ["Last active ", new Date(conversation.lastMessageAt).toLocaleTimeString([], { hour: '2-digit', minute: '2-digit' })] })] }), _jsxs("div", {
|
|
6897
|
-
? new Date(latestRuntimePermissionProfile.timestamp).toLocaleTimeString([], { hour: '2-digit', minute: '2-digit' })
|
|
6898
|
-
: 'runtime' })] }), _jsxs("div", { className: "mt-1 flex flex-wrap items-center gap-2", children: [_jsx("span", { className: "rounded-[3px] bg-white/[0.04] px-1.5 py-0.5 text-[10px] text-white/52", children: getRuntimeEventString(latestRuntimePermissionProfile, 'profile') || 'unknown' }), _jsxs("span", { className: "text-[10px] text-white/26", children: ["SDK ", getRuntimeEventString(latestRuntimePermissionProfile, 'sdkMode') || 'unknown'] }), typeof latestRuntimePermissionProfile.ruleCount === 'number' && (_jsxs("span", { className: "text-[10px] text-white/18 tabular-nums", children: [latestRuntimePermissionProfile.ruleCount, " rules"] })), typeof latestRuntimePermissionProfile.allowedDirectoriesCount === 'number' && (_jsxs("span", { className: "text-[10px] text-white/18 tabular-nums", children: [latestRuntimePermissionProfile.allowedDirectoriesCount, " dirs"] }))] })] })), sdkSessions.length > 0 && (_jsxs("div", { className: "mt-2 rounded-[4px] border border-white/[0.04] bg-black/10", children: [_jsxs("div", { className: "flex items-center justify-between gap-2 border-b border-white/[0.04] px-2 py-1.5", children: [_jsx("p", { className: "text-[10px] uppercase tracking-[0.14em] text-white/22", children: "Available sessions" }), _jsx("button", { type: "button", disabled: !sdkSessionWorkingDirectory || isBusy, onClick: () => { void handleCleanSdkSessions(); }, className: "text-[10px] text-white/24 transition-colors hover:text-white/55 disabled:opacity-25", children: "Clean old" })] }), _jsx("div", { className: "max-h-[170px] overflow-y-auto pr-1", children: sdkSessions.slice(0, 8).map((session) => {
|
|
6899
|
-
const id = typeof session.id === 'string' ? session.id : '';
|
|
6900
|
-
if (!id)
|
|
6901
|
-
return null;
|
|
6902
|
-
const status = typeof session.status === 'string' ? session.status : 'unknown';
|
|
6903
|
-
const modelName = typeof session.model === 'string' ? session.model : '';
|
|
6904
|
-
const messageCount = typeof session.messageCount === 'number' ? session.messageCount : null;
|
|
6905
|
-
const lastActivity = typeof session.lastActivity === 'string' ? session.lastActivity : '';
|
|
6906
|
-
const isAttached = id === sessionUi?.sdkSessionId;
|
|
6907
|
-
return (_jsx("div", { className: "border-b border-white/[0.035] px-2 py-1.5 last:border-b-0", children: _jsxs("div", { className: "flex items-start justify-between gap-2", children: [_jsxs("div", { className: "min-w-0", children: [_jsx("p", { className: `truncate font-mono text-[10px] ${isAttached ? 'text-emerald-200/58' : 'text-white/42'}`, title: id, children: id }), _jsxs("div", { className: "mt-0.5 flex flex-wrap items-center gap-2", children: [_jsx("span", { className: "text-[10px] text-white/18", children: status }), modelName && _jsx("span", { className: "max-w-[120px] truncate text-[10px] text-white/18", children: modelName }), messageCount !== null && _jsxs("span", { className: "text-[10px] text-white/18 tabular-nums", children: [messageCount, " msgs"] }), lastActivity && _jsx("span", { className: "text-[10px] text-white/18", children: new Date(lastActivity).toLocaleTimeString([], { hour: '2-digit', minute: '2-digit' }) })] })] }), _jsxs("div", { className: "flex shrink-0 items-center gap-1.5", children: [!isAttached && (_jsx("button", { type: "button", disabled: isBusy, onClick: () => { void handleAttachSdkSession(id); }, className: "text-[10px] text-white/38 transition-colors hover:text-white/75 disabled:opacity-30", children: "Attach" })), _jsx("button", { type: "button", disabled: isBusy || isAttached, onClick: () => { void handleDeleteSdkSession(id); }, className: "text-[10px] text-white/20 transition-colors hover:text-rose-200/62 disabled:opacity-20", children: "Delete" })] })] }) }, id));
|
|
6908
|
-
}) })] })), sdkCheckpoints.length > 0 && (_jsx("div", { className: "mt-2 space-y-1.5 max-h-[150px] overflow-y-auto pr-1", children: sdkCheckpoints.slice(0, 5).map((checkpoint) => {
|
|
6909
|
-
const id = typeof checkpoint.id === 'string' ? checkpoint.id : '';
|
|
6910
|
-
const description = typeof checkpoint.description === 'string' ? checkpoint.description : 'SDK checkpoint';
|
|
6911
|
-
const createdAt = typeof checkpoint.createdAt === 'string' ? checkpoint.createdAt : '';
|
|
6912
|
-
const messageCount = typeof checkpoint.messageCount === 'number' ? checkpoint.messageCount : null;
|
|
6913
|
-
if (!id)
|
|
6914
|
-
return null;
|
|
6915
|
-
return (_jsx("div", { className: "rounded-[4px] border border-white/[0.04] bg-white/[0.025] px-2 py-1.5", children: _jsxs("div", { className: "flex items-start justify-between gap-2", children: [_jsxs("div", { className: "min-w-0", children: [_jsx("p", { className: "truncate text-[10px] text-white/48", title: description, children: description }), _jsxs("div", { className: "mt-0.5 flex items-center gap-2", children: [createdAt && _jsx("span", { className: "text-[10px] text-white/18", children: new Date(createdAt).toLocaleTimeString([], { hour: '2-digit', minute: '2-digit' }) }), messageCount !== null && _jsxs("span", { className: "text-[10px] text-white/18 tabular-nums", children: [messageCount, " msgs"] })] })] }), _jsx("button", { type: "button", disabled: isBusy, onClick: () => { void handleRestoreSdkCheckpoint(id); }, className: "text-[10px] text-white/42 hover:text-white/75 transition-colors disabled:opacity-30", children: "Restore SDK" })] }) }, id));
|
|
6916
|
-
}) })), runtimeCheckpointEvents.length > 0 && (_jsxs("div", { className: "mt-2 rounded-[4px] border border-white/[0.04] bg-black/10", children: [_jsxs("div", { className: "flex items-center justify-between gap-2 border-b border-white/[0.04] px-2 py-1.5", children: [_jsx("p", { className: "text-[10px] uppercase tracking-[0.14em] text-white/22", children: "Runtime checkpoint events" }), _jsx("span", { className: "text-[10px] text-white/18 tabular-nums", children: runtimeCheckpointEvents.length })] }), _jsx("div", { className: "max-h-[130px] overflow-y-auto pr-1", children: runtimeCheckpointEvents.slice(-5).reverse().map((event, index) => {
|
|
6917
|
-
const checkpointId = getRuntimeEventString(event, 'checkpointId') || `checkpoint-${index}`;
|
|
6918
|
-
const toolName = getRuntimeEventString(event, 'toolName') || 'tool';
|
|
6919
|
-
return (_jsxs("div", { className: "border-b border-white/[0.035] px-2 py-1.5 last:border-b-0", children: [_jsxs("div", { className: "flex items-center justify-between gap-2", children: [_jsx("p", { className: "truncate font-mono text-[10px] text-white/42", title: checkpointId, children: checkpointId }), _jsx("span", { className: "text-[10px] text-white/18", children: toolName })] }), _jsxs("div", { className: "mt-0.5 flex flex-wrap items-center gap-2", children: [typeof event.timestamp === 'string' && (_jsx("span", { className: "text-[10px] text-white/18", children: new Date(event.timestamp).toLocaleTimeString([], { hour: '2-digit', minute: '2-digit' }) })), typeof event.messageCount === 'number' && (_jsxs("span", { className: "text-[10px] text-white/18 tabular-nums", children: [event.messageCount, " msgs"] })), typeof event.path === 'string' && (_jsx("span", { className: "max-w-[170px] truncate text-[10px] text-white/18", title: event.path, children: event.path }))] })] }, `${checkpointId}-${event.id || index}`));
|
|
6920
|
-
}) })] })), backgroundTasks.length > 0 && (_jsx("div", { className: "mt-2 space-y-1.5 max-h-[190px] overflow-y-auto pr-1", children: backgroundTasks.slice(0, 5).map((task) => (_jsxs("div", { className: "rounded-[4px] border border-white/[0.04] bg-white/[0.025] px-2 py-1.5", children: [_jsxs("div", { className: "flex items-center justify-between gap-2", children: [_jsx("p", { className: "truncate font-mono text-[10px] text-white/48", title: task.taskId, children: task.taskId }), _jsxs("div", { className: "flex items-center gap-1.5", children: [_jsx("span", { className: `text-[10px] uppercase tracking-[0.12em] ${task.status === 'running' ? 'text-emerald-300/55' :
|
|
6921
|
-
task.status === 'stopped' ? 'text-amber-300/55' :
|
|
6922
|
-
task.status === 'failed' ? 'text-rose-300/55' :
|
|
6923
|
-
task.status === 'completed' ? 'text-sky-200/50' :
|
|
6924
|
-
'text-white/25'}`, children: task.status }), _jsx("button", { type: "button", disabled: !!backgroundTaskBusy[task.taskId], onClick: () => { void handleReadBackgroundTask(task); }, className: "text-[10px] text-white/28 transition-colors hover:text-white/62 disabled:opacity-25", children: backgroundTaskBusy[task.taskId] === 'output' ? 'Reading' : 'Output' }), task.status === 'running' && (_jsx("button", { type: "button", disabled: !!backgroundTaskBusy[task.taskId], onClick: () => { void handleStopBackgroundTask(task); }, className: "text-[10px] text-white/22 transition-colors hover:text-amber-200/70 disabled:opacity-25", children: backgroundTaskBusy[task.taskId] === 'stop' ? 'Stopping' : 'Stop' }))] })] }), task.command && (_jsx("p", { className: "mt-1 truncate text-[10px] text-white/28", title: task.command, children: task.command })), _jsxs("div", { className: "mt-1 flex flex-wrap items-center gap-2", children: [typeof task.totalSize === 'number' && _jsxs("span", { className: "text-[10px] text-white/16 tabular-nums", children: [task.totalSize, " bytes"] }), typeof task.exitCode === 'number' && _jsxs("span", { className: "text-[10px] text-white/16 tabular-nums", children: ["exit ", task.exitCode] })] }), task.lastOutput && (_jsx("pre", { className: "mt-1 max-h-[92px] overflow-auto whitespace-pre-wrap rounded-[3px] bg-black/20 p-1.5 font-mono text-[10px] leading-3 text-white/26", children: task.lastOutput }))] }, task.taskId))) }))] }), _jsxs("div", { className: "px-3 py-2", children: [_jsxs("div", { className: "flex items-center justify-between mb-2", children: [_jsx("p", { className: "text-[10px] uppercase tracking-[0.14em] text-white/26", children: "Checkpoints" }), _jsx("span", { className: "text-[10px] text-white/18 tabular-nums", children: checkpoints.length })] }), checkpoints.length === 0 ? (_jsx("p", { className: "text-[11px] text-white/28", children: "No checkpoints yet." })) : (_jsx("div", { className: "space-y-1.5 max-h-[260px] overflow-y-auto pr-1", children: checkpoints.map((checkpoint) => (_jsx("div", { className: "xeno-elevated-shell xeno-border-subtle rounded-[4px] border px-2.5 py-2", children: _jsxs("div", { className: "flex items-start justify-between gap-3", children: [_jsxs("div", { className: "min-w-0", children: [_jsx("p", { className: "text-[11px] text-white/72 truncate", children: checkpoint.name }), _jsxs("div", { className: "flex items-center gap-2 mt-1 flex-wrap", children: [_jsx("span", { className: "text-[10px] text-white/18", children: new Date(checkpoint.createdAt).toLocaleTimeString([], { hour: '2-digit', minute: '2-digit' }) }), _jsxs("span", { className: "text-[10px] text-white/18 tabular-nums", children: [checkpoint.messageCount, " msgs"] }), _jsxs("span", { className: "text-[10px] text-white/18 tabular-nums", children: [checkpoint.editorTabCount, " tabs"] }), _jsx("span", { className: "text-[10px] text-white/18", children: checkpoint.source === 'restore' ? 'restore point' : 'manual' })] })] }), _jsxs("div", { className: "flex items-center gap-1.5", children: [_jsx("button", { onClick: () => handleRestoreConversationCheckpoint(checkpoint.id), disabled: isBusy, className: "text-[10px] text-white/45 hover:text-white/78 transition-colors disabled:opacity-30", title: "Restore checkpoint", children: "Restore" }), _jsx("button", { onClick: () => handleDeleteCheckpoint(checkpoint.id), className: "text-[10px] text-white/25 hover:text-white/58 transition-colors", title: "Delete checkpoint", children: "Delete" })] })] }) }, checkpoint.id))) }))] })] }))] })] }) })), runtimeProjectedMessages.length === 0 && (_jsx("div", { className: "flex-1 flex items-center justify-center pt-[20vh]", children: _jsxs("p", { className: "text-[13px] text-white/20", children: ["Message ", agentName, " to get started"] }) })), runtimeProjectedMessages.map((msg, msgIdx) => {
|
|
6927
|
+
return (_jsxs("div", { className: "xeno-app-shell flex-1 relative min-h-0", children: [_jsx("div", { ref: messagesScrollRef, className: "agent-scrollbar absolute inset-0 overflow-auto pr-1.5", style: { scrollbarGutter: 'stable' }, children: conversationHydrating ? (_jsx(ConversationLoadingSkeleton, {})) : (_jsxs("div", { className: "w-full max-w-[820px] mx-auto px-6 pt-6 min-h-full flex flex-col gap-1.5", style: { paddingBottom: messageViewportBottomPadding }, children: [conversation && devSessionOpen && (_jsx("div", { className: "sticky top-2 z-[20] -mx-1 px-1 pb-2", children: _jsxs("div", { className: "xeno-border-subtle rounded-[6px] border bg-[#111111] px-3 py-2 flex items-center justify-between gap-3", children: [_jsxs("div", { className: "flex items-center gap-3 min-w-0 flex-wrap", children: [_jsx("span", { className: "text-[10px] uppercase tracking-[0.14em] text-white/28", children: "Dev session" }), _jsx("span", { className: `text-[10px] uppercase tracking-[0.14em] ${sessionStatusClassName}`, children: sessionStatusLabel }), _jsxs("span", { className: "text-[10px] text-white/24 tabular-nums", children: [pendingTurns.length, " queued"] }), _jsxs("span", { className: "text-[10px] text-white/24 tabular-nums", children: [checkpoints.length, " checkpoints"] }), _jsxs("span", { className: "text-[10px] text-white/18", children: ["Last active ", new Date(conversation.lastMessageAt).toLocaleTimeString([], { hour: '2-digit', minute: '2-digit' })] })] }), _jsxs("div", { className: "flex items-center gap-1.5 flex-shrink-0", children: [_jsxs("button", { type: "button", onClick: () => { void handleCopyDebugSnapshot('standard'); }, disabled: !conversationId || conversationHydrating, className: "h-7 px-2.5 rounded-[4px] bg-white/[0.05] hover:bg-white/[0.08] text-[10px] text-white/55 hover:text-white/78 transition-colors disabled:opacity-35 inline-flex items-center gap-1.5", title: "Copy a redacted support report", children: [_jsx(Copy, { className: "w-3 h-3" }), "Copy report"] }), _jsx("button", { type: "button", onClick: () => { void handleCopyDebugSnapshot('full'); }, disabled: !conversationId || conversationHydrating, className: "h-7 px-2.5 rounded-[4px] bg-white/[0.05] hover:bg-white/[0.08] text-[10px] text-white/45 hover:text-white/72 transition-colors disabled:opacity-35", title: "Copy the full redacted support report", children: "Full report" }), _jsx("button", { type: "button", onClick: toggleDevSession, className: "h-7 px-2.5 rounded-[4px] bg-white/[0.05] hover:bg-white/[0.08] text-[10px] text-white/35 hover:text-white/70 transition-colors", title: "Hide developer session (Ctrl+Shift+D)", children: "Hide" })] })] }) })), runtimeProjectedMessages.length === 0 && (_jsx("div", { className: "flex-1 flex items-center justify-center pt-[20vh]", children: _jsxs("p", { className: "text-[13px] text-white/20", children: ["Message ", agentName, " to get started"] }) })), runtimeProjectedMessages.map((msg, msgIdx) => {
|
|
6925
6928
|
const previousMsg = runtimeProjectedMessages[msgIdx - 1];
|
|
6926
6929
|
const parts = computeMsgParts(msg);
|
|
6927
6930
|
const addConversationTurnGap = previousMsg !== undefined && msg.role !== previousMsg.role;
|
|
@@ -7202,9 +7205,16 @@ export function AgentView(props) {
|
|
|
7202
7205
|
? _jsxs("span", { className: "text-white/30", children: ["- ", activeCloudRunStatus.creditsSettled, "cr"] })
|
|
7203
7206
|
: typeof activeCloudRunStatus.creditsHeld === 'number' && activeCloudRunStatus.creditsHeld > 0
|
|
7204
7207
|
? _jsxs("span", { className: "text-white/30", children: ["- ", activeCloudRunStatus.creditsHeld, "cr held"] })
|
|
7205
|
-
: null] }))] }))] }), _jsxs("div", { className: "flex items-center gap-2", children: [props.onOpenRuntimeSettings && (_jsx("button", { onClick: props.onOpenRuntimeSettings, disabled: isBusy, className: "w-7 h-7 flex items-center justify-center rounded bg-white/[0.04] hover:bg-white/[0.08] text-white/35 hover:text-white/60 transition-colors cursor-pointer focus-visible:outline focus-visible:outline-1 focus-visible:outline-white/35 disabled:opacity-30 disabled:cursor-not-allowed", title: "Edit runtime provider", "aria-label": "Edit runtime provider", children: _jsx(Pencil, { className: "w-3 h-3" }) })), _jsx("button", { onClick:
|
|
7208
|
+
: null] }))] }))] }), _jsxs("div", { className: "flex items-center gap-2", children: [props.onOpenRuntimeSettings && (_jsx("button", { onClick: props.onOpenRuntimeSettings, disabled: isBusy, className: "w-7 h-7 flex items-center justify-center rounded bg-white/[0.04] hover:bg-white/[0.08] text-white/35 hover:text-white/60 transition-colors cursor-pointer focus-visible:outline focus-visible:outline-1 focus-visible:outline-white/35 disabled:opacity-30 disabled:cursor-not-allowed", title: "Edit runtime provider", "aria-label": "Edit runtime provider", children: _jsx(Pencil, { className: "w-3 h-3" }) })), props.onOpenConversationSettings && (_jsx("button", { onClick: props.onOpenConversationSettings, className: "h-7 px-2.5 rounded-[4px] text-[10px] bg-white/[0.04] hover:bg-white/[0.08] text-white/35 hover:text-white/60 transition-colors cursor-pointer focus-visible:outline focus-visible:outline-1 focus-visible:outline-white/35", title: "Open chat and workspace settings", children: "Settings" })), _jsx("button", { onClick: (event) => {
|
|
7209
|
+
if (event.shiftKey) {
|
|
7210
|
+
event.preventDefault();
|
|
7211
|
+
toggleDevSession();
|
|
7212
|
+
return;
|
|
7213
|
+
}
|
|
7214
|
+
patchSessionUi({ panelOpen: !sessionPanelOpen });
|
|
7215
|
+
}, className: `h-7 px-2.5 rounded-[4px] text-[10px] transition-colors cursor-pointer focus-visible:outline focus-visible:outline-1 focus-visible:outline-white/35 ${sessionPanelOpen
|
|
7206
7216
|
? 'bg-white/[0.08] text-white/72'
|
|
7207
|
-
: 'bg-white/[0.04] hover:bg-white/[0.08] text-white/35 hover:text-white/60'}`, title: "Toggle workbench panel", children: "Panel" }), _jsx(AIStatusIndicator, { model: actualModelId, className: "justify-end", refreshKey: runtimeStatusRefreshKey, runtimeAvailable: selectedModel.startsWith('local:') ? localRuntimeAvailable : null, onRuntimeClick: selectedModel.startsWith('local:') ? handleRuntimeIndicatorClick : undefined }), isStreaming && !activeCliThreadRun && (_jsx("button", { onClick: () => { abort(); clearAllSuggestions(); }, disabled: isCancelling, className: "w-7 h-7 flex items-center justify-center rounded bg-white/[0.08] hover:bg-white/[0.14] text-white/50 hover:text-white/90 transition-colors cursor-pointer focus-visible:outline focus-visible:outline-1 focus-visible:outline-white/35 disabled:cursor-wait disabled:opacity-55", title: "Stop current response", "aria-label": "Stop current response", children: isCancelling ? (_jsx(RefreshCw, { className: "w-3 h-3 animate-spin" })) : (_jsx(Square, { className: "w-3 h-3" })) })), activeCliThreadRun && (_jsx("button", { onClick: () => { void cancelCliAppServerMessage(); }, className: "w-7 h-7 flex items-center justify-center rounded bg-white/[0.08] hover:bg-white/[0.14] text-white/50 hover:text-white/90 transition-colors cursor-pointer focus-visible:outline focus-visible:outline-1 focus-visible:outline-white/35", title: activeCliThreadRun.kind === 'remote' ? 'Stop CLI remote run start' : 'Stop CLI app-server turn', "aria-label": activeCliThreadRun.kind === 'remote' ? 'Stop CLI remote run start' : 'Stop CLI app-server turn', children: _jsx(Square, { className: "w-3 h-3" }) })), _jsx("button", { onClick: () => { void handleSend(); }, disabled: (!input.trim() && pendingAttachments.length === 0) || inputLocked, className: "w-7 h-7 flex items-center justify-center rounded bg-white/[0.08] hover:bg-white/[0.14] text-white/50 hover:text-white/90 transition-colors cursor-pointer focus-visible:outline focus-visible:outline-1 focus-visible:outline-white/35 disabled:opacity-30 disabled:cursor-not-allowed", title: isStreaming && !inputLocked ? 'Queue message' : 'Send message', "aria-label": isStreaming && !inputLocked ? 'Queue message' : 'Send message', children: _jsx(ArrowUp, { className: "w-3.5 h-3.5" }) })] })] })] })] })] })] })] }));
|
|
7217
|
+
: 'bg-white/[0.04] hover:bg-white/[0.08] text-white/35 hover:text-white/60'}`, title: "Toggle workbench panel. Shift+click or Ctrl+Shift+D for the developer session.", children: "Panel" }), _jsx(AIStatusIndicator, { model: actualModelId, className: "justify-end", refreshKey: runtimeStatusRefreshKey, runtimeAvailable: selectedModel.startsWith('local:') ? localRuntimeAvailable : null, onRuntimeClick: selectedModel.startsWith('local:') ? handleRuntimeIndicatorClick : undefined }), isStreaming && !activeCliThreadRun && (_jsx("button", { onClick: () => { abort(); clearAllSuggestions(); }, disabled: isCancelling, className: "w-7 h-7 flex items-center justify-center rounded bg-white/[0.08] hover:bg-white/[0.14] text-white/50 hover:text-white/90 transition-colors cursor-pointer focus-visible:outline focus-visible:outline-1 focus-visible:outline-white/35 disabled:cursor-wait disabled:opacity-55", title: "Stop current response", "aria-label": "Stop current response", children: isCancelling ? (_jsx(RefreshCw, { className: "w-3 h-3 animate-spin" })) : (_jsx(Square, { className: "w-3 h-3" })) })), activeCliThreadRun && (_jsx("button", { onClick: () => { void cancelCliAppServerMessage(); }, className: "w-7 h-7 flex items-center justify-center rounded bg-white/[0.08] hover:bg-white/[0.14] text-white/50 hover:text-white/90 transition-colors cursor-pointer focus-visible:outline focus-visible:outline-1 focus-visible:outline-white/35", title: activeCliThreadRun.kind === 'remote' ? 'Stop CLI remote run start' : 'Stop CLI app-server turn', "aria-label": activeCliThreadRun.kind === 'remote' ? 'Stop CLI remote run start' : 'Stop CLI app-server turn', children: _jsx(Square, { className: "w-3 h-3" }) })), _jsx("button", { onClick: () => { void handleSend(); }, disabled: (!input.trim() && pendingAttachments.length === 0) || inputLocked, className: "w-7 h-7 flex items-center justify-center rounded bg-white/[0.08] hover:bg-white/[0.14] text-white/50 hover:text-white/90 transition-colors cursor-pointer focus-visible:outline focus-visible:outline-1 focus-visible:outline-white/35 disabled:opacity-30 disabled:cursor-not-allowed", title: isStreaming && !inputLocked ? 'Queue message' : 'Send message', "aria-label": isStreaming && !inputLocked ? 'Queue message' : 'Send message', children: _jsx(ArrowUp, { className: "w-3.5 h-3.5" }) })] })] })] })] })] })] })] }));
|
|
7208
7218
|
}
|
|
7209
7219
|
const ACP_MODEL_ID = /^[A-Za-z0-9._:/+-]{1,120}$/;
|
|
7210
7220
|
function projectSharedAcpProviderModels(provider) {
|