@xenosystem/agent-conversation 0.1.77 → 0.1.79
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/xenoAgentHostCatalog.d.ts +2 -2
- package/dist/adapters/xenoAgentHostCatalog.d.ts.map +1 -1
- package/dist/adapters/xenoAgentHostCatalog.js +36 -2
- package/dist/adapters/xenoAgentHostCatalog.js.map +1 -1
- package/dist/components/agent/AgentView.d.ts +5 -0
- package/dist/components/agent/AgentView.d.ts.map +1 -1
- package/dist/components/agent/AgentView.js +67 -2
- package/dist/components/agent/AgentView.js.map +1 -1
- package/dist/components/agent/composer/Composer.d.ts +9 -2
- package/dist/components/agent/composer/Composer.d.ts.map +1 -1
- package/dist/components/agent/composer/Composer.js +3 -2
- package/dist/components/agent/composer/Composer.js.map +1 -1
- package/dist/platformApiTypes.d.ts +31 -0
- package/dist/platformApiTypes.d.ts.map +1 -1
- package/dist/stores/agentChatStore.d.ts +19 -0
- package/dist/stores/agentChatStore.d.ts.map +1 -1
- package/dist/stores/agentChatStore.js +10 -0
- package/dist/stores/agentChatStore.js.map +1 -1
- package/package.json +6 -6
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { AgentProviderListResult, AgentRuntimeProviderDescriptor } from '@xenosystem/agent-interface-contract';
|
|
2
2
|
import { AgentHostClient } from '@xenosystem/agent-interface-client';
|
|
3
|
-
import type { XenoAPI } from '../platformApiTypes.js';
|
|
3
|
+
import type { AgentProviderCatalogPort, XenoAPI } from '../platformApiTypes.js';
|
|
4
4
|
import { type HubPreloadApi } from './xenoAgentCompatibilityBridge.js';
|
|
5
5
|
export type HubAgentHostPreloadApi = HubPreloadApi & Pick<XenoAPI, 'updater' | 'agentHost'>;
|
|
6
6
|
export interface CreateHubAgentCatalogClientOptions {
|
|
@@ -17,7 +17,7 @@ export interface HubAgentHostClientSession {
|
|
|
17
17
|
/**
|
|
18
18
|
* Selects a connected product-owned client for all shared UI catalog reads.
|
|
19
19
|
*/
|
|
20
|
-
export declare function configureAgentCatalogHostClient(client:
|
|
20
|
+
export declare function configureAgentCatalogHostClient(client: AgentProviderCatalogPort | null): () => void;
|
|
21
21
|
export declare function subscribeHubAgentProviderCatalog(listener: (catalog: AgentProviderListResult) => void): () => void;
|
|
22
22
|
/**
|
|
23
23
|
* Prefers Hub's main-process local-host transport. The compatibility facade is
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"xenoAgentHostCatalog.d.ts","sourceRoot":"","sources":["../../src/adapters/xenoAgentHostCatalog.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAMV,uBAAuB,EACvB,8BAA8B,EAC/B,MAAM,sCAAsC,CAAA;AAE7C,OAAO,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAA;AAIpE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAA;
|
|
1
|
+
{"version":3,"file":"xenoAgentHostCatalog.d.ts","sourceRoot":"","sources":["../../src/adapters/xenoAgentHostCatalog.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAMV,uBAAuB,EACvB,8BAA8B,EAC/B,MAAM,sCAAsC,CAAA;AAE7C,OAAO,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAA;AAIpE,OAAO,KAAK,EAAE,wBAAwB,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAA;AAC/E,OAAO,EAEL,KAAK,aAAa,EACnB,MAAM,mCAAmC,CAAA;AAE1C,MAAM,MAAM,sBAAsB,GAAG,aAAa,GAAG,IAAI,CAAC,OAAO,EAAE,SAAS,GAAG,WAAW,CAAC,CAAA;AAE3F,MAAM,WAAW,kCAAkC;IACjD,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,qBAAqB,CAAC,EAAE,OAAO,CAAA;CAChC;AAED,MAAM,WAAW,yBAAyB;IACxC,MAAM,EAAE,eAAe,CAAA;IACvB,SAAS,EAAE;QAAE,OAAO,IAAI,IAAI,CAAA;KAAE,CAAA;IAC9B,MAAM,EAAE,aAAa,GAAG,sBAAsB,CAAA;CAC/C;AAgBD;;GAEG;AACH,wBAAgB,+BAA+B,CAC7C,MAAM,EAAE,wBAAwB,GAAG,IAAI,GACtC,MAAM,IAAI,CAEZ;AA2BD,wBAAgB,gCAAgC,CAC9C,QAAQ,EAAE,CAAC,OAAO,EAAE,uBAAuB,KAAK,IAAI,GACnD,MAAM,IAAI,CAKZ;AAED;;;GAGG;AACH,wBAAsB,wBAAwB,CAC5C,GAAG,EAAE,sBAAsB,EAC3B,OAAO,GAAE,kCAAuC,GAC/C,OAAO,CAAC,yBAAyB,CAAC,CAyCpC;AAED,0FAA0F;AAC1F,wBAAgB,2BAA2B,CACzC,GAAG,EAAE,sBAAsB,EAC3B,OAAO,GAAE,kCAAuC,GAC/C,OAAO,CAAC,yBAAyB,CAAC,CAEpC;AAED,wBAAsB,2BAA2B,IAAI,OAAO,CAAC,uBAAuB,CAAC,CAGpF;AAED;;;;GAIG;AACH,wBAAsB,8BAA8B,CAClD,OAAO,GAAE;IAAE,KAAK,CAAC,EAAE,OAAO,CAAA;CAAO,GAChC,OAAO,CAAC,uBAAuB,CAAC,CAYlC;AAED,wBAAsB,oBAAoB,CACxC,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,8BAA8B,GAAG,SAAS,CAAC,CAGrD;AAED,wBAAgB,4BAA4B,IAAI,IAAI,CAYnD"}
|
|
@@ -1,10 +1,12 @@
|
|
|
1
|
-
import { getAgentPlatformBridge } from '../platformBridge.js';
|
|
1
|
+
import { getAgentPlatformBridge, getOptionalAgentPlatformBridge } from '../platformBridge.js';
|
|
2
2
|
import { isAgentHostEvent } from '@xenosystem/agent-interface-contract';
|
|
3
3
|
import { AgentHostClient } from '@xenosystem/agent-interface-client';
|
|
4
4
|
import { createHubAgentCompatibilityClient, } from '@xenosystem/agent-interface-hub-adapter';
|
|
5
5
|
import { createHubXenoAgentCompatibilityBridge, } from './xenoAgentCompatibilityBridge.js';
|
|
6
6
|
let activeClientPromise = null;
|
|
7
7
|
let activeNativeHostClient = null;
|
|
8
|
+
/** Whether the active client was registered by the product (wins) or adopted from the bridge. */
|
|
9
|
+
let activeCatalogFromBridge = false;
|
|
8
10
|
let activeCatalogEventUnsubscribe = null;
|
|
9
11
|
let activeCatalogRequest = null;
|
|
10
12
|
let activeCatalogPublishRequested = false;
|
|
@@ -18,16 +20,25 @@ const providerCatalogListeners = new Set();
|
|
|
18
20
|
* Selects a connected product-owned client for all shared UI catalog reads.
|
|
19
21
|
*/
|
|
20
22
|
export function configureAgentCatalogHostClient(client) {
|
|
23
|
+
return adoptCatalogClient(client, false);
|
|
24
|
+
}
|
|
25
|
+
function adoptCatalogClient(client, fromBridge) {
|
|
21
26
|
activeCatalogEventUnsubscribe?.();
|
|
22
27
|
activeCatalogEventUnsubscribe = null;
|
|
23
28
|
resetProviderCatalogCache();
|
|
24
29
|
activeNativeHostClient = client;
|
|
30
|
+
activeCatalogFromBridge = fromBridge && client !== null;
|
|
25
31
|
if (client) {
|
|
26
|
-
|
|
32
|
+
const off = client.subscribe((event) => {
|
|
27
33
|
if (event.type !== 'provider.catalog.changed')
|
|
28
34
|
return;
|
|
29
35
|
void readChangedProviderCatalog(client);
|
|
30
36
|
});
|
|
37
|
+
// A port that answers subscribe with anything but an unsubscribe cannot deliver changes; never let
|
|
38
|
+
// a rejected promise from it escape as an unhandled rejection.
|
|
39
|
+
if (off && typeof off.catch === 'function')
|
|
40
|
+
off.catch(() => undefined);
|
|
41
|
+
activeCatalogEventUnsubscribe = typeof off === 'function' ? off : null;
|
|
31
42
|
}
|
|
32
43
|
return () => {
|
|
33
44
|
if (activeNativeHostClient !== client)
|
|
@@ -145,12 +156,35 @@ async function readChangedProviderCatalog(client) {
|
|
|
145
156
|
}
|
|
146
157
|
await requestProviderCatalog(client, 'list', true).catch(() => undefined);
|
|
147
158
|
}
|
|
159
|
+
/**
|
|
160
|
+
* The catalog source for this surface, in order: the bridge's own connection, a client the product
|
|
161
|
+
* registered, then Hub's preload.
|
|
162
|
+
*
|
|
163
|
+
* 🔴 The bridge comes FIRST, and its absence here was a shipped defect. A panel host (Canvas) mounts
|
|
164
|
+
* the UI with a bridge and never registers a catalog client, so the lookup fell through to Hub's
|
|
165
|
+
* legacy facade, which reads `llm.models()` — a member no panel bridge has — and reported XENO
|
|
166
|
+
* Cloud unavailable. The host meanwhile HAD loaded that connection's own catalog (surface-account
|
|
167
|
+
* spec §4.6), signed by the product's account; the panel simply never asked through that
|
|
168
|
+
* connection. Reading through the bridge's port is what makes the list the one this surface is
|
|
169
|
+
* entitled to, and it carries the host's catalog-changed event so a catalog that loads after the
|
|
170
|
+
* first read reaches the panel.
|
|
171
|
+
*/
|
|
148
172
|
async function currentCatalogClient() {
|
|
173
|
+
// A client the product registered explicitly wins; the bridge's port serves a surface that
|
|
174
|
+
// registered none. A new mount brings a new bridge and connection — never keep reading a disposed one.
|
|
175
|
+
const bridged = getOptionalAgentPlatformBridge()?.providerCatalog;
|
|
176
|
+
if ((!activeNativeHostClient || activeCatalogFromBridge) && isCatalogPort(bridged) && bridged !== activeNativeHostClient) {
|
|
177
|
+
adoptCatalogClient(bridged, true);
|
|
178
|
+
}
|
|
149
179
|
if (activeNativeHostClient)
|
|
150
180
|
return activeNativeHostClient;
|
|
151
181
|
const session = await getHubAgentCatalogClient();
|
|
152
182
|
return activeNativeHostClient || session.client;
|
|
153
183
|
}
|
|
184
|
+
function isCatalogPort(value) {
|
|
185
|
+
const port = value;
|
|
186
|
+
return !!port && typeof port.listProviders === 'function' && typeof port.refreshProviders === 'function' && typeof port.subscribe === 'function';
|
|
187
|
+
}
|
|
154
188
|
function requestProviderCatalog(client, mode, publish) {
|
|
155
189
|
if (activeCatalogRequest) {
|
|
156
190
|
activeCatalogPublishRequested ||= publish;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"xenoAgentHostCatalog.js","sourceRoot":"","sources":["../../src/adapters/xenoAgentHostCatalog.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAA;
|
|
1
|
+
{"version":3,"file":"xenoAgentHostCatalog.js","sourceRoot":"","sources":["../../src/adapters/xenoAgentHostCatalog.ts"],"names":[],"mappings":"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"}
|
|
@@ -52,6 +52,11 @@ export interface AgentViewProps {
|
|
|
52
52
|
available: boolean;
|
|
53
53
|
reason?: string;
|
|
54
54
|
};
|
|
55
|
+
/**
|
|
56
|
+
* Which envelopes the composer offers. Defaults to Chat + Agent when the HOST recorded this
|
|
57
|
+
* surface as an app's own panel (`surfaceApplication` on the bridge), else all three.
|
|
58
|
+
*/
|
|
59
|
+
modes?: ReadonlyArray<'chat' | 'agent' | 'machine'>;
|
|
55
60
|
permissionProfile?: AgentPermissionProfileName;
|
|
56
61
|
runtimeSelection?: HubAgentRuntimeSelection;
|
|
57
62
|
allowedDirectories?: string[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AgentView.d.ts","sourceRoot":"","sources":["../../../src/components/agent/AgentView.tsx"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"AgentView.d.ts","sourceRoot":"","sources":["../../../src/components/agent/AgentView.tsx"],"names":[],"mappings":"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"}
|
|
@@ -3379,10 +3379,30 @@ export function AgentView(props) {
|
|
|
3379
3379
|
// Get messages from the conversation store
|
|
3380
3380
|
const conversationHydrating = !!conversationId && !conversation;
|
|
3381
3381
|
const conversationGrantedDirectories = conversation?.grantedDirectories || EMPTY_STRINGS;
|
|
3382
|
+
/*
|
|
3383
|
+
* The app whose own panel this is — the HOST's record (handshake echo), read once per mount. It
|
|
3384
|
+
* decides three things: Machine is not offered, Agent needs no folder (the app's document is the
|
|
3385
|
+
* workspace), and the strip names the app instead of a path.
|
|
3386
|
+
*/
|
|
3387
|
+
const surfaceApplication = useMemo(() => {
|
|
3388
|
+
// Read defensively: a bridge that does not implement this member must mean "not an app panel",
|
|
3389
|
+
// never a render-time throw — a panel that dies because a host is older is the wrong failure.
|
|
3390
|
+
const read = getOptionalAgentPlatformBridge()?.surfaceApplication;
|
|
3391
|
+
if (typeof read !== 'function')
|
|
3392
|
+
return undefined;
|
|
3393
|
+
try {
|
|
3394
|
+
const application = read();
|
|
3395
|
+
return application && typeof application.app === 'string' && application.app ? application : undefined;
|
|
3396
|
+
}
|
|
3397
|
+
catch {
|
|
3398
|
+
return undefined;
|
|
3399
|
+
}
|
|
3400
|
+
}, []);
|
|
3382
3401
|
const workspaceBinding = useMemo(() => resolveConversationWorkspaceBinding({
|
|
3383
3402
|
workspaceMode: conversation?.workspaceMode,
|
|
3384
3403
|
rootDirectory: conversation?.rootDirectory,
|
|
3385
3404
|
grantedDirectories: conversationGrantedDirectories,
|
|
3405
|
+
workspaceSurface: conversation?.workspaceSurface,
|
|
3386
3406
|
inheritedDirectories: allowedDirectories,
|
|
3387
3407
|
hasMessages: (conversation?.messages.length || 0) > 0,
|
|
3388
3408
|
}), [
|
|
@@ -3390,8 +3410,29 @@ export function AgentView(props) {
|
|
|
3390
3410
|
conversation?.messages.length,
|
|
3391
3411
|
conversation?.rootDirectory,
|
|
3392
3412
|
conversation?.workspaceMode,
|
|
3413
|
+
conversation?.workspaceSurface,
|
|
3393
3414
|
conversationGrantedDirectories,
|
|
3394
3415
|
]);
|
|
3416
|
+
const composerModes = props.modes ?? (surfaceApplication ? ['chat', 'agent'] : undefined);
|
|
3417
|
+
const surfaceLabel = surfaceApplication ? (surfaceApplication.displayName || surfaceApplication.app) : undefined;
|
|
3418
|
+
/*
|
|
3419
|
+
* How many of the app's tools a turn in THIS mode is given — the host's own answer, from the same
|
|
3420
|
+
* resolver a turn uses, so the strip cannot claim tools the agent does not have.
|
|
3421
|
+
*/
|
|
3422
|
+
const [surfaceToolCount, setSurfaceToolCount] = useState(undefined);
|
|
3423
|
+
const surfaceToolMode = workspaceBinding.mode === 'agent' ? 'development' : 'chat';
|
|
3424
|
+
useEffect(() => {
|
|
3425
|
+
const list = getOptionalAgentPlatformBridge()?.surfaceTools;
|
|
3426
|
+
if (!surfaceApplication || typeof list !== 'function')
|
|
3427
|
+
return;
|
|
3428
|
+
let cancelled = false;
|
|
3429
|
+
void Promise.resolve().then(() => list(surfaceToolMode)).then((result) => {
|
|
3430
|
+
if (!cancelled)
|
|
3431
|
+
setSurfaceToolCount({ mode: surfaceToolMode, count: Array.isArray(result?.tools) ? result.tools.length : 0, ...(result?.unavailableReason ? { reason: result.unavailableReason } : {}) });
|
|
3432
|
+
}).catch(() => { if (!cancelled)
|
|
3433
|
+
setSurfaceToolCount({ mode: surfaceToolMode, count: 0, reason: 'The Agent host did not answer.' }); });
|
|
3434
|
+
return () => { cancelled = true; };
|
|
3435
|
+
}, [surfaceApplication, surfaceToolMode, conversationId]);
|
|
3395
3436
|
const effectiveAllowedDirectories = workspaceBinding.allowedDirectories;
|
|
3396
3437
|
useEffect(() => {
|
|
3397
3438
|
if (!conversationId || !conversation || !workspaceBinding.legacyInferred)
|
|
@@ -3559,7 +3600,8 @@ export function AgentView(props) {
|
|
|
3559
3600
|
* pointed at this computer (`sessionUi.machine`); an agent conversation is Agent whatever the flag
|
|
3560
3601
|
* says, because a project folder is a stronger fact than a remembered choice.
|
|
3561
3602
|
*/
|
|
3562
|
-
|
|
3603
|
+
// An app panel never offers Machine, so a conversation carried over with it set reads as Chat there.
|
|
3604
|
+
const composerMode = workspaceBinding.mode === 'agent' ? 'agent' : sessionUi?.machine && !surfaceApplication ? 'machine' : 'chat';
|
|
3563
3605
|
/*
|
|
3564
3606
|
* Whether this computer can be acted on — a MEASUREMENT (did a XENO Use device answer?), never a
|
|
3565
3607
|
* flag. A surface that already knows says so through `props.machine`; otherwise the conversation
|
|
@@ -4417,6 +4459,20 @@ export function AgentView(props) {
|
|
|
4417
4459
|
return;
|
|
4418
4460
|
}
|
|
4419
4461
|
const current = conversationId ? useAgentChatStore.getState().conversations[conversationId] : undefined;
|
|
4462
|
+
if (surfaceApplication) {
|
|
4463
|
+
// An app panel's Agent works on the app's open document through the app's tools: no folder
|
|
4464
|
+
// to pick. The host binds it to a managed workspace when the turn opens the conversation.
|
|
4465
|
+
const targetConversationId = ensureConversationId(conversationId);
|
|
4466
|
+
updateConversation(targetConversationId, {
|
|
4467
|
+
schemaVersion: 3,
|
|
4468
|
+
workspaceMode: 'agent',
|
|
4469
|
+
rootDirectory: undefined,
|
|
4470
|
+
grantedDirectories: [],
|
|
4471
|
+
workspaceSurface: surfaceApplication.app,
|
|
4472
|
+
sessionUi: { ...resetAcpContinuationForWorkspaceChange(current?.sessionUi), machine: false },
|
|
4473
|
+
});
|
|
4474
|
+
return;
|
|
4475
|
+
}
|
|
4420
4476
|
const explicitRoot = (current?.rootDirectory || current?.grantedDirectories?.[0] || '').trim();
|
|
4421
4477
|
if (explicitRoot) {
|
|
4422
4478
|
const targetConversationId = ensureConversationId(conversationId);
|
|
@@ -4438,6 +4494,7 @@ export function AgentView(props) {
|
|
|
4438
4494
|
isBusy,
|
|
4439
4495
|
isSelectingConversationWorkspace,
|
|
4440
4496
|
props.externalInputLockReason,
|
|
4497
|
+
surfaceApplication,
|
|
4441
4498
|
updateConversation,
|
|
4442
4499
|
]);
|
|
4443
4500
|
const runtimeProviderBlockedMessage = useMemo(() => {
|
|
@@ -7526,7 +7583,15 @@ export function AgentView(props) {
|
|
|
7526
7583
|
window.open(url, '_blank');
|
|
7527
7584
|
} })), taskCounts.total > 0 && !planAwaitingApproval && (_jsx(TasksTray, { tasks: conversationTasks, open: !tasksCollapsed, onToggle: () => patchSessionUi({ tasksCollapsed: !tasksCollapsed }) })), _jsx(AgentsTray, { runs: delegatedRunViews, open: delegatedRunsOpen, onToggle: () => setDelegatedRunsOpen((value) => !value), onOpen: (childId) => { props.onNavigateConversation?.(childId); } }), _jsx(BackgroundTray, { runs: backgroundRunViews, open: backgroundRunsOpen, onToggle: () => setBackgroundRunsOpen((value) => !value), onOutput: (taskId) => { const task = backgroundTasks.find((entry) => entry.taskId === taskId); if (task)
|
|
7528
7585
|
void handleReadBackgroundTask(task); }, onStop: (taskId) => { const task = backgroundTasks.find((entry) => entry.taskId === taskId); if (task)
|
|
7529
|
-
void handleStopBackgroundTask(task); } }), _jsxs("div", { className: "xa-wsrow", children: [_jsx(ModeSegment, { mode: composerMode, onMode: (mode) => { void handleSelectWorkspaceMode(mode); }, machine: machineOffer,
|
|
7586
|
+
void handleStopBackgroundTask(task); } }), _jsxs("div", { className: "xa-wsrow", children: [_jsx(ModeSegment, { mode: composerMode, onMode: (mode) => { void handleSelectWorkspaceMode(mode); }, machine: machineOffer, ...(composerModes ? { modes: composerModes } : {}), ...(surfaceLabel ? { agentTip: `Agent — works on the open ${surfaceLabel} document with its own tools; every change can be undone` } : {}), disabled: controlsLocked || !!props.externalInputLockReason || isSelectingConversationWorkspace, choosing: isSelectingConversationWorkspace }), _jsx(CtxStrip, { children: surfaceLabel ? (
|
|
7587
|
+
/* an app's own panel: the workspace IS the open document, and the tools are the app's */
|
|
7588
|
+
_jsxs(_Fragment, { children: [_jsx(CtxSeg, { glyph: "app-window", name: true, title: surfaceToolCount?.reason || (workspaceBinding.mode === 'agent'
|
|
7589
|
+
? `The agent works on the open ${surfaceLabel} document with ${surfaceLabel}'s own tools. Every edit is one undo step; anything that cannot be undone asks first.`
|
|
7590
|
+
: `Chat can look at the open ${surfaceLabel} document but never change it. Switch to Agent to let it edit.`), children: surfaceLabel }), _jsx(CtxVr, {}), _jsx(CtxSeg, { dim: true, title: surfaceToolCount?.reason, children: surfaceToolCount === undefined || surfaceToolCount.mode !== surfaceToolMode
|
|
7591
|
+
? 'tools…'
|
|
7592
|
+
: surfaceToolCount.count > 0
|
|
7593
|
+
? `${surfaceToolCount.count} ${workspaceBinding.mode === 'agent' ? 'tools' : 'read tools'}`
|
|
7594
|
+
: 'no tools' }), _jsx(CtxGrow, {})] })) : workspaceBinding.mode === 'agent' ? (_jsxs(_Fragment, { children: [_jsx(CtxSeg, { glyph: "folder", name: true, title: workspaceBinding.rootDirectory || workspaceBinding.allowedDirectories[0], children: projectDisplayName(workspaceBinding.rootDirectory || workspaceBinding.allowedDirectories[0]) }), _jsx(CtxVr, {}), _jsx(CtxSeg, { glyph: cloudRunEnabled && isAuthenticatedForCloud ? 'box' : 'monitor', dim: true, title: !isAuthenticatedForCloud
|
|
7530
7595
|
? 'The agent works on this computer. Sign in to move it into a sandbox on XENO’s servers.'
|
|
7531
7596
|
: cloudRunEnabled
|
|
7532
7597
|
? 'The agent works inside a sandbox on XENO’s servers (billed via credits). Click to work on this computer instead.'
|