@xenosystem/agent-interface-ui 0.1.28 → 0.1.29

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.
Files changed (30) hide show
  1. package/dist/adapters/agentHostPlatformBridge.js +14 -14
  2. package/dist/adapters/agentHostPlatformBridge.js.map +1 -1
  3. package/dist/agent.css +4 -0
  4. package/dist/components/agent/AgentInterface.js +8 -8
  5. package/dist/components/agent/AgentInterface.js.map +1 -1
  6. package/dist/components/agent/AgentView.d.ts +14 -1
  7. package/dist/components/agent/AgentView.d.ts.map +1 -1
  8. package/dist/components/agent/AgentView.js +12 -12
  9. package/dist/components/agent/AgentView.js.map +1 -1
  10. package/dist/components/agent/personalConversationScope.d.ts +31 -2
  11. package/dist/components/agent/personalConversationScope.d.ts.map +1 -1
  12. package/dist/components/agent/personalConversationScope.js +38 -5
  13. package/dist/components/agent/personalConversationScope.js.map +1 -1
  14. package/dist/components/agent/subagentConversationProjection.js +1 -1
  15. package/dist/components/agent/subagentConversationProjection.js.map +1 -1
  16. package/dist/components/agent/terminalSurfaceAvailability.d.ts +1 -1
  17. package/dist/components/agent/terminalSurfaceAvailability.d.ts.map +1 -1
  18. package/dist/components/agent/terminalSurfaceAvailability.js +1 -1
  19. package/dist/components/agent/terminalSurfaceAvailability.js.map +1 -1
  20. package/dist/index.d.ts +38 -0
  21. package/dist/index.d.ts.map +1 -1
  22. package/dist/index.js +37 -0
  23. package/dist/index.js.map +1 -1
  24. package/dist/platformApiTypes.d.ts +2 -2
  25. package/dist/platformApiTypes.d.ts.map +1 -1
  26. package/dist/stores/agentChatStore.d.ts +16 -1
  27. package/dist/stores/agentChatStore.d.ts.map +1 -1
  28. package/dist/stores/agentChatStore.js +13 -13
  29. package/dist/stores/agentChatStore.js.map +1 -1
  30. package/package.json +5 -5
@@ -3,7 +3,23 @@ export interface ConversationScope {
3
3
  agentId?: string;
4
4
  workspaceId?: string;
5
5
  teamId?: string;
6
- workspaceMode?: 'unselected' | 'workspace' | 'chat-only';
6
+ /**
7
+ * Which of the two capability profiles this conversation is, or that nothing is chosen yet.
8
+ *
9
+ * 🔴 The values are the SAME WORDS as `launchMode`, deliberately. They were once
10
+ * `'workspace' | 'chat-only'` against a launch mode of `'chat' | 'agent'`, and one concept in two
11
+ * vocabularies cost a real defect: the scoped-backup projection writes an untyped record and set
12
+ * `workspaceMode: 'chat'` — in NEITHER union — so a RESTORED chat conversation failed
13
+ * `assertResumeLaunchScope`, which compared it against `'chat-only'`, and refused to resume with
14
+ * "Resume mode conflicts with the saved conversation."
15
+ *
16
+ * With one vocabulary the guard is `scope.workspaceMode !== launchMode` and that mistake is
17
+ * unrepresentable.
18
+ *
19
+ * - `chat` — a private managed workspace, no local tool calls (the claude.ai / ChatGPT shape)
20
+ * - `agent` — an explicit local folder and the full development harness (the Claude Code shape)
21
+ */
22
+ workspaceMode?: 'unselected' | 'chat' | 'agent';
7
23
  rootDirectory?: string;
8
24
  grantedDirectories?: string[];
9
25
  }
@@ -11,7 +27,7 @@ export interface ConversationScope {
11
27
  export declare function isPersonalInboxConversation(value: ConversationScope | undefined, inboxAgentId: string): boolean;
12
28
  export declare function personalConversationDefaults(): {
13
29
  schemaVersion: 3;
14
- workspaceMode: "chat-only";
30
+ workspaceMode: "chat";
15
31
  workspaceId: undefined;
16
32
  teamId: undefined;
17
33
  rootDirectory: undefined;
@@ -19,6 +35,19 @@ export declare function personalConversationDefaults(): {
19
35
  };
20
36
  /** Existing durable scope wins. Launch flags are equality preconditions on a
21
37
  * resume, not a request to silently move/reconfigure that conversation. */
38
+ /**
39
+ * Read a `workspaceMode` that may have been persisted under the old vocabulary.
40
+ *
41
+ * ⚠️ Conversations saved before 2026-09-07 carry `'workspace'` and `'chat-only'`, and a stored
42
+ * record is not something a rename can reach. Normalising on READ is what makes the rename safe:
43
+ * old records keep working, new ones are written in the single vocabulary, and nothing has to
44
+ * migrate a database to change two words.
45
+ *
46
+ * `'chat'` is deliberately the fallback for an unrecognised value. The two profiles are not
47
+ * symmetric — chat cannot touch the local filesystem and agent can — so an unreadable mode must
48
+ * degrade to the one that grants nothing.
49
+ */
50
+ export declare function normalizeWorkspaceMode(value: unknown): 'unselected' | 'chat' | 'agent' | undefined;
22
51
  export declare function assertResumeLaunchScope(scope: ConversationScope, launchMode?: 'chat' | 'agent', launchRoot?: string): void;
23
52
  /** Only explicit canonical session mode can classify an SDK-only projection.
24
53
  * workingDirectory alone may be Chat scratch storage, so it is not a mode. */
@@ -1 +1 @@
1
- {"version":3,"file":"personalConversationScope.d.ts","sourceRoot":"","sources":["../../../src/components/agent/personalConversationScope.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,iBAAiB;IAChC,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,aAAa,CAAC,EAAE,YAAY,GAAG,WAAW,GAAG,WAAW,CAAA;IACxD,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAA;CAC9B;AAED,4EAA4E;AAC5E,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,iBAAiB,GAAG,SAAS,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAE/G;AAED,wBAAgB,4BAA4B;;;;;;wBAEY,MAAM,EAAE;EAC/D;AAOD;2EAC2E;AAC3E,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,iBAAiB,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,OAAO,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAO1H;AAED;8EAC8E;AAC9E,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,OAAO,GAAG,iBAAiB,CAY7E"}
1
+ {"version":3,"file":"personalConversationScope.d.ts","sourceRoot":"","sources":["../../../src/components/agent/personalConversationScope.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,iBAAiB;IAChC,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf;;;;;;;;;;;;;;;OAeG;IACH,aAAa,CAAC,EAAE,YAAY,GAAG,MAAM,GAAG,OAAO,CAAA;IAC/C,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAA;CAC9B;AAED,4EAA4E;AAC5E,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,iBAAiB,GAAG,SAAS,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAE/G;AAED,wBAAgB,4BAA4B;;;;;;wBAEY,MAAM,EAAE;EAC/D;AAOD;2EAC2E;AAC3E;;;;;;;;;;;GAWG;AACH,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,OAAO,GACb,YAAY,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,CAiB7C;AAED,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,iBAAiB,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,OAAO,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAO1H;AAED;8EAC8E;AAC9E,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,OAAO,GAAG,iBAAiB,CAY7E"}
@@ -3,7 +3,7 @@ export function isPersonalInboxConversation(value, inboxAgentId) {
3
3
  return !!value && value.agentId === inboxAgentId && !value.workspaceId && !value.teamId;
4
4
  }
5
5
  export function personalConversationDefaults() {
6
- return { schemaVersion: 3, workspaceMode: 'chat-only', workspaceId: undefined, teamId: undefined,
6
+ return { schemaVersion: 3, workspaceMode: 'chat', workspaceId: undefined, teamId: undefined,
7
7
  rootDirectory: undefined, grantedDirectories: [] };
8
8
  }
9
9
  const pathIdentity = (value) => {
@@ -12,8 +12,41 @@ const pathIdentity = (value) => {
12
12
  };
13
13
  /** Existing durable scope wins. Launch flags are equality preconditions on a
14
14
  * resume, not a request to silently move/reconfigure that conversation. */
15
+ /**
16
+ * Read a `workspaceMode` that may have been persisted under the old vocabulary.
17
+ *
18
+ * ⚠️ Conversations saved before 2026-09-07 carry `'workspace'` and `'chat-only'`, and a stored
19
+ * record is not something a rename can reach. Normalising on READ is what makes the rename safe:
20
+ * old records keep working, new ones are written in the single vocabulary, and nothing has to
21
+ * migrate a database to change two words.
22
+ *
23
+ * `'chat'` is deliberately the fallback for an unrecognised value. The two profiles are not
24
+ * symmetric — chat cannot touch the local filesystem and agent can — so an unreadable mode must
25
+ * degrade to the one that grants nothing.
26
+ */
27
+ export function normalizeWorkspaceMode(value) {
28
+ /*
29
+ * 🔴 ABSENT is not CHAT, and collapsing them is a real defect rather than a tidy default.
30
+ * `scopeFromSdkSessionMetadata` REFUSES a record with no mode — "never infer SDK Chat/Agent mode
31
+ * from cwd alone" — because guessing a mode from a working directory is how a conversation gets
32
+ * the wrong authority. An earlier version of this function returned 'chat' for undefined and
33
+ * silently turned that refusal into a successful chat scope. Absent in, absent out.
34
+ */
35
+ if (value === undefined || value === null)
36
+ return undefined;
37
+ if (value === 'agent' || value === 'workspace')
38
+ return 'agent';
39
+ if (value === 'unselected')
40
+ return 'unselected';
41
+ /*
42
+ * Any other value degrades to chat, and the direction is load-bearing: the two profiles are not
43
+ * symmetric — chat cannot touch the local filesystem and agent can — so an unreadable mode must
44
+ * land on the one that grants nothing.
45
+ */
46
+ return 'chat';
47
+ }
15
48
  export function assertResumeLaunchScope(scope, launchMode, launchRoot) {
16
- if (launchMode && scope.workspaceMode !== (launchMode === 'agent' ? 'workspace' : 'chat-only')) {
49
+ if (launchMode && scope.workspaceMode !== launchMode) {
17
50
  throw new Error('Resume mode conflicts with the saved conversation. Open it without conflicting launch options.');
18
51
  }
19
52
  if (launchRoot?.trim() && (!scope.rootDirectory || pathIdentity(scope.rootDirectory) !== pathIdentity(launchRoot))) {
@@ -26,9 +59,9 @@ export function scopeFromSdkSessionMetadata(value) {
26
59
  if (!value || typeof value !== 'object' || Array.isArray(value))
27
60
  throw new Error('SDK session metadata is unavailable. Resume needs verified session mode and workspace metadata.');
28
61
  const meta = value;
29
- if (meta.workspaceMode === 'chat-only')
62
+ if (normalizeWorkspaceMode(meta.workspaceMode) === 'chat')
30
63
  return personalConversationDefaults();
31
- if (meta.workspaceMode !== 'workspace')
64
+ if (normalizeWorkspaceMode(meta.workspaceMode) !== 'agent')
32
65
  throw new Error('SDK session mode is unavailable. Recovery requires canonical mode metadata; no folder was guessed.');
33
66
  const root = typeof meta.rootDirectory === 'string' ? meta.rootDirectory.trim() : typeof meta.workingDirectory === 'string' ? meta.workingDirectory.trim() : '';
34
67
  if (!root || !/^(?:[A-Za-z]:[\\/]|\/|\\\\)/.test(root) || root.includes('\0'))
@@ -38,6 +71,6 @@ export function scopeFromSdkSessionMetadata(value) {
38
71
  if (!Array.isArray(meta.grantedDirectories) || meta.grantedDirectories.length > 128 || meta.grantedDirectories.some(v => typeof v !== 'string' || !v.trim() || v.includes('\0'))
39
72
  || !meta.grantedDirectories.some(v => pathIdentity(v) === pathIdentity(root)))
40
73
  throw new Error('SDK Agent session workspace grants are unavailable. Reauthorize its root before resuming.');
41
- return { schemaVersion: 3, workspaceMode: 'workspace', rootDirectory: root, grantedDirectories: [...meta.grantedDirectories] };
74
+ return { schemaVersion: 3, workspaceMode: 'agent', rootDirectory: root, grantedDirectories: [...meta.grantedDirectories] };
42
75
  }
43
76
  //# sourceMappingURL=personalConversationScope.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"personalConversationScope.js","sourceRoot":"","sources":["../../../src/components/agent/personalConversationScope.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"personalConversationScope.js","sourceRoot":"","sources":["../../../src/components/agent/personalConversationScope.ts"],"names":[],"mappings":"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"}
@@ -40,7 +40,7 @@ export function buildSubagentConversationProjection(run, runtimeEvents, agentId,
40
40
  agentId,
41
41
  workspaceId: run.workspaceId,
42
42
  teamId: run.teamId,
43
- workspaceMode: rootDirectory ? 'workspace' : 'chat-only',
43
+ workspaceMode: rootDirectory ? 'agent' : 'chat',
44
44
  ...(rootDirectory ? { rootDirectory, grantedDirectories } : {}),
45
45
  messages,
46
46
  title: run.childAgentName || run.childAgentId,
@@ -1 +1 @@
1
- {"version":3,"file":"subagentConversationProjection.js","sourceRoot":"","sources":["../../../src/components/agent/subagentConversationProjection.ts"],"names":[],"mappings":"AAUA,MAAM,UAAU,mCAAmC,CACjD,GAAyB,EACzB,aAA8C,EAC9C,OAAe,EACf,oBAAoB,GAAG,GAAG,CAAC,oBAAoB;IAE/C,MAAM,SAAS,GAAG,GAAG,CAAC,SAAS,IAAI,IAAI,CAAC,GAAG,EAAE,CAAA;IAC7C,MAAM,WAAW,GAAG,GAAG,CAAC,OAAO,IAAI,GAAG,CAAC,SAAS,IAAI,SAAS,CAAA;IAC7D,MAAM,iBAAiB,GAAG,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,GAAG,CAAC,WAAW,CAAC,UAAU,CAAC,GAAG,CAAC,CAAA;IACpG,MAAM,aAAa,GAAG,GAAG,CAAC,UAAU,CAAC,kBAAkB,CAAC,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,CAAA;IAC/G,MAAM,kBAAkB,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC;QAC5C,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACzC,GAAG,GAAG,CAAC,UAAU,CAAC,kBAAkB;KACrC,CAAC,CAAC,CAAA;IACH,MAAM,MAAM,GAAG,GAAG,CAAC,OAAO,IAAI,GAAG,CAAC,KAAK,IAAI,oBAAoB,GAAG,CAAC,MAAM,EAAE,CAAA;IAC3E,MAAM,QAAQ,GAAkB;QAC9B;YACE,EAAE,EAAE,GAAG,GAAG,CAAC,EAAE,YAAY;YACzB,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,GAAG,CAAC,SAAS;YACtB,SAAS,EAAE,SAAS;YACpB,WAAW,EAAE,OAAO;SACrB;QACD;YACE,EAAE,EAAE,GAAG,GAAG,CAAC,EAAE,SAAS;YACtB,IAAI,EAAE,WAAW;YACjB,OAAO,EAAE,MAAM;YACf,SAAS,EAAE,WAAW;YACtB,WAAW,EAAE,OAAO;YACpB,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC3C;KACF,CAAA;IACD,MAAM,sBAAsB,GAAwB,aAAa,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QAChF,EAAE,EAAE,KAAK,CAAC,EAAE;QACZ,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,cAAc,EAAE,GAAG,CAAC,mBAAmB;QACvC,MAAM,EAAE,KAAK,CAAC,MAAM;QACpB,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,SAAS,EAAE,KAAK,CAAC,SAAS;QAC1B,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACrD,CAAC,CAAC,CAAA;IACH,MAAM,kBAAkB,GAAG,sBAAsB,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;IAExD,OAAO;QACL,aAAa,EAAE,CAAC;QAChB,OAAO;QACP,WAAW,EAAE,GAAG,CAAC,WAAW;QAC5B,MAAM,EAAE,GAAG,CAAC,MAAM;QAClB,aAAa,EAAE,aAAa,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,WAAW;QACxD,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/D,QAAQ;QACR,KAAK,EAAE,GAAG,CAAC,cAAc,IAAI,GAAG,CAAC,YAAY;QAC7C,SAAS;QACT,aAAa,EAAE,WAAW;QAC1B,YAAY,EAAE,EAAE;QAChB,WAAW,EAAE,EAAE;QACf,KAAK,EAAE,EAAE;QACT,SAAS,EAAE;YACT,qBAAqB,EAAE,GAAG,CAAC,mBAAmB;YAC9C,aAAa,EAAE,GAAG,CAAC,EAAE;YACrB,oBAAoB;YACpB,aAAa,EAAE,GAAG,CAAC,aAAa;YAChC,YAAY,EAAE,GAAG,CAAC,YAAY;YAC9B,SAAS,EAAE,IAAI;YACf,QAAQ,EAAE,OAAO;YACjB,aAAa,EAAE,sBAAsB;YACrC,GAAG,CAAC,kBAAkB,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,oBAAoB,EAAE,kBAAkB,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACtF,GAAG,CAAC,kBAAkB,EAAE,SAAS;gBAC/B,CAAC,CAAC,EAAE,kBAAkB,EAAE,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,SAAS,CAAC,IAAI,WAAW,EAAE;gBACjF,CAAC,CAAC,EAAE,CAAC;YACP,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,EAAE,GAAG,GAAG,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACvE,UAAU,EAAE;gBACV,aAAa,EAAE,CAAC;gBAChB,IAAI,EAAE,IAAI;gBACV,KAAK,EAAE,CAAC;gBACR,YAAY,EAAE,IAAI,CAAC,GAAG,EAAE;gBACxB,YAAY,EAAE,IAAI,CAAC,GAAG,EAAE;aACzB;SACF;KACF,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"subagentConversationProjection.js","sourceRoot":"","sources":["../../../src/components/agent/subagentConversationProjection.ts"],"names":[],"mappings":"AAUA,MAAM,UAAU,mCAAmC,CACjD,GAAyB,EACzB,aAA8C,EAC9C,OAAe,EACf,oBAAoB,GAAG,GAAG,CAAC,oBAAoB;IAE/C,MAAM,SAAS,GAAG,GAAG,CAAC,SAAS,IAAI,IAAI,CAAC,GAAG,EAAE,CAAA;IAC7C,MAAM,WAAW,GAAG,GAAG,CAAC,OAAO,IAAI,GAAG,CAAC,SAAS,IAAI,SAAS,CAAA;IAC7D,MAAM,iBAAiB,GAAG,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,GAAG,CAAC,WAAW,CAAC,UAAU,CAAC,GAAG,CAAC,CAAA;IACpG,MAAM,aAAa,GAAG,GAAG,CAAC,UAAU,CAAC,kBAAkB,CAAC,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,CAAA;IAC/G,MAAM,kBAAkB,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC;QAC5C,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACzC,GAAG,GAAG,CAAC,UAAU,CAAC,kBAAkB;KACrC,CAAC,CAAC,CAAA;IACH,MAAM,MAAM,GAAG,GAAG,CAAC,OAAO,IAAI,GAAG,CAAC,KAAK,IAAI,oBAAoB,GAAG,CAAC,MAAM,EAAE,CAAA;IAC3E,MAAM,QAAQ,GAAkB;QAC9B;YACE,EAAE,EAAE,GAAG,GAAG,CAAC,EAAE,YAAY;YACzB,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,GAAG,CAAC,SAAS;YACtB,SAAS,EAAE,SAAS;YACpB,WAAW,EAAE,OAAO;SACrB;QACD;YACE,EAAE,EAAE,GAAG,GAAG,CAAC,EAAE,SAAS;YACtB,IAAI,EAAE,WAAW;YACjB,OAAO,EAAE,MAAM;YACf,SAAS,EAAE,WAAW;YACtB,WAAW,EAAE,OAAO;YACpB,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC3C;KACF,CAAA;IACD,MAAM,sBAAsB,GAAwB,aAAa,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QAChF,EAAE,EAAE,KAAK,CAAC,EAAE;QACZ,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,cAAc,EAAE,GAAG,CAAC,mBAAmB;QACvC,MAAM,EAAE,KAAK,CAAC,MAAM;QACpB,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,SAAS,EAAE,KAAK,CAAC,SAAS;QAC1B,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACrD,CAAC,CAAC,CAAA;IACH,MAAM,kBAAkB,GAAG,sBAAsB,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;IAExD,OAAO;QACL,aAAa,EAAE,CAAC;QAChB,OAAO;QACP,WAAW,EAAE,GAAG,CAAC,WAAW;QAC5B,MAAM,EAAE,GAAG,CAAC,MAAM;QAClB,aAAa,EAAE,aAAa,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM;QAC/C,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/D,QAAQ;QACR,KAAK,EAAE,GAAG,CAAC,cAAc,IAAI,GAAG,CAAC,YAAY;QAC7C,SAAS;QACT,aAAa,EAAE,WAAW;QAC1B,YAAY,EAAE,EAAE;QAChB,WAAW,EAAE,EAAE;QACf,KAAK,EAAE,EAAE;QACT,SAAS,EAAE;YACT,qBAAqB,EAAE,GAAG,CAAC,mBAAmB;YAC9C,aAAa,EAAE,GAAG,CAAC,EAAE;YACrB,oBAAoB;YACpB,aAAa,EAAE,GAAG,CAAC,aAAa;YAChC,YAAY,EAAE,GAAG,CAAC,YAAY;YAC9B,SAAS,EAAE,IAAI;YACf,QAAQ,EAAE,OAAO;YACjB,aAAa,EAAE,sBAAsB;YACrC,GAAG,CAAC,kBAAkB,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,oBAAoB,EAAE,kBAAkB,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACtF,GAAG,CAAC,kBAAkB,EAAE,SAAS;gBAC/B,CAAC,CAAC,EAAE,kBAAkB,EAAE,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,SAAS,CAAC,IAAI,WAAW,EAAE;gBACjF,CAAC,CAAC,EAAE,CAAC;YACP,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,EAAE,GAAG,GAAG,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACvE,UAAU,EAAE;gBACV,aAAa,EAAE,CAAC;gBAChB,IAAI,EAAE,IAAI;gBACV,KAAK,EAAE,CAAC;gBACR,YAAY,EAAE,IAAI,CAAC,GAAG,EAAE;gBACxB,YAAY,EAAE,IAAI,CAAC,GAAG,EAAE;aACzB;SACF;KACF,CAAA;AACH,CAAC"}
@@ -6,7 +6,7 @@ export interface TerminalSurfaceAvailability {
6
6
  }
7
7
  export declare function xenoTuiAvailability(input: {
8
8
  conversationId?: string | null;
9
- workspaceMode: 'workspace' | 'chat-only';
9
+ workspaceMode: 'agent' | 'chat';
10
10
  cwd?: string | null;
11
11
  providerKind?: HubAgentRuntimeProviderKind;
12
12
  hostAttachAvailable: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"terminalSurfaceAvailability.d.ts","sourceRoot":"","sources":["../../../src/components/agent/terminalSurfaceAvailability.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,sCAAsC,CAAA;AACpF,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAA;AAEnF,MAAM,WAAW,2BAA2B;IAC1C,KAAK,EAAE,OAAO,CAAA;IACd,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE;IACzC,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC9B,aAAa,EAAE,WAAW,GAAG,WAAW,CAAA;IACxC,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACnB,YAAY,CAAC,EAAE,2BAA2B,CAAA;IAC1C,mBAAmB,EAAE,OAAO,CAAA;IAC5B,aAAa,EAAE,OAAO,CAAA;CACvB,GAAG,2BAA2B,CAW9B;AAED,wBAAgB,6BAA6B,CAAC,KAAK,EAAE;IACnD,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC9B,IAAI,CAAC,EAAE,wBAAwB,CAAA;IAC/B,mBAAmB,EAAE,OAAO,CAAA;IAC5B,aAAa,EAAE,OAAO,CAAA;IACtB,mBAAmB,EAAE,OAAO,CAAA;CAC7B,GAAG,2BAA2B,CAgB9B"}
1
+ {"version":3,"file":"terminalSurfaceAvailability.d.ts","sourceRoot":"","sources":["../../../src/components/agent/terminalSurfaceAvailability.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,sCAAsC,CAAA;AACpF,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAA;AAEnF,MAAM,WAAW,2BAA2B;IAC1C,KAAK,EAAE,OAAO,CAAA;IACd,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE;IACzC,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC9B,aAAa,EAAE,OAAO,GAAG,MAAM,CAAA;IAC/B,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACnB,YAAY,CAAC,EAAE,2BAA2B,CAAA;IAC1C,mBAAmB,EAAE,OAAO,CAAA;IAC5B,aAAa,EAAE,OAAO,CAAA;CACvB,GAAG,2BAA2B,CAW9B;AAED,wBAAgB,6BAA6B,CAAC,KAAK,EAAE;IACnD,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC9B,IAAI,CAAC,EAAE,wBAAwB,CAAA;IAC/B,mBAAmB,EAAE,OAAO,CAAA;IAC5B,aAAa,EAAE,OAAO,CAAA;IACtB,mBAAmB,EAAE,OAAO,CAAA;CAC7B,GAAG,2BAA2B,CAgB9B"}
@@ -5,7 +5,7 @@ export function xenoTuiAvailability(input) {
5
5
  return unavailable('This host does not support XENO TUI attachment.');
6
6
  if (input.guiTurnActive)
7
7
  return unavailable('Wait for the current Agent turn to finish.');
8
- if (input.workspaceMode === 'workspace' && !input.cwd?.trim()) {
8
+ if (input.workspaceMode === 'agent' && !input.cwd?.trim()) {
9
9
  return unavailable('Agent mode requires a selected local folder.');
10
10
  }
11
11
  if (input.providerKind === 'cli-app-server' || input.providerKind === 'cli-remote') {
@@ -1 +1 @@
1
- {"version":3,"file":"terminalSurfaceAvailability.js","sourceRoot":"","sources":["../../../src/components/agent/terminalSurfaceAvailability.ts"],"names":[],"mappings":"AAQA,MAAM,UAAU,mBAAmB,CAAC,KAOnC;IACC,IAAI,CAAC,KAAK,CAAC,cAAc;QAAE,OAAO,WAAW,CAAC,uCAAuC,CAAC,CAAA;IACtF,IAAI,CAAC,KAAK,CAAC,mBAAmB;QAAE,OAAO,WAAW,CAAC,iDAAiD,CAAC,CAAA;IACrG,IAAI,KAAK,CAAC,aAAa;QAAE,OAAO,WAAW,CAAC,4CAA4C,CAAC,CAAA;IACzF,IAAI,KAAK,CAAC,aAAa,KAAK,WAAW,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC;QAC9D,OAAO,WAAW,CAAC,8CAA8C,CAAC,CAAA;IACpE,CAAC;IACD,IAAI,KAAK,CAAC,YAAY,KAAK,gBAAgB,IAAI,KAAK,CAAC,YAAY,KAAK,YAAY,EAAE,CAAC;QACnF,OAAO,WAAW,CAAC,qEAAqE,CAAC,CAAA;IAC3F,CAAC;IACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAA;AACxB,CAAC;AAED,MAAM,UAAU,6BAA6B,CAAC,KAM7C;IACC,IAAI,CAAC,KAAK,CAAC,cAAc;QAAE,OAAO,WAAW,CAAC,uCAAuC,CAAC,CAAA;IACtF,IAAI,CAAC,KAAK,CAAC,mBAAmB;QAAE,OAAO,WAAW,CAAC,yDAAyD,CAAC,CAAA;IAC7G,IAAI,KAAK,CAAC,aAAa;QAAE,OAAO,WAAW,CAAC,4CAA4C,CAAC,CAAA;IACzF,IAAI,CAAC,KAAK,CAAC,IAAI;QAAE,OAAO,WAAW,CAAC,mEAAmE,CAAC,CAAA;IACxG,MAAM,gBAAgB,GAAG,KAAK,CAAC,IAAI,CAAC,YAAY,EAAE,eAAe,CAAA;IACjE,IAAI,CAAC,gBAAgB,IAAI,CAAC,gBAAgB,CAAC,MAAM,KAAK,WAAW,IAAI,gBAAgB,CAAC,MAAM,KAAK,UAAU,CAAC,EAAE,CAAC;QAC7G,OAAO,WAAW,CAAC,gBAAgB,EAAE,MAAM,IAAI,iEAAiE,CAAC,CAAA;IACnH,CAAC;IACD,IAAI,KAAK,CAAC,mBAAmB;QAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAA;IACrD,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,KAAK,KAAK,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,KAAK,OAAO;QAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAA;IACxF,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,KAAK,eAAe;QAAE,OAAO,WAAW,CAAC,+CAA+C,CAAC,CAAA;IAC9G,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,KAAK,qBAAqB,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,KAAK,sBAAsB,EAAE,CAAC;QAChG,OAAO,WAAW,CAAC,4DAA4D,CAAC,CAAA;IAClF,CAAC;IACD,OAAO,WAAW,CAAC,oBAAoB,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC,CAAA;AACnF,CAAC;AAED,SAAS,WAAW,CAAC,MAAc;IACjC,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,CAAA;AACjC,CAAC"}
1
+ {"version":3,"file":"terminalSurfaceAvailability.js","sourceRoot":"","sources":["../../../src/components/agent/terminalSurfaceAvailability.ts"],"names":[],"mappings":"AAQA,MAAM,UAAU,mBAAmB,CAAC,KAOnC;IACC,IAAI,CAAC,KAAK,CAAC,cAAc;QAAE,OAAO,WAAW,CAAC,uCAAuC,CAAC,CAAA;IACtF,IAAI,CAAC,KAAK,CAAC,mBAAmB;QAAE,OAAO,WAAW,CAAC,iDAAiD,CAAC,CAAA;IACrG,IAAI,KAAK,CAAC,aAAa;QAAE,OAAO,WAAW,CAAC,4CAA4C,CAAC,CAAA;IACzF,IAAI,KAAK,CAAC,aAAa,KAAK,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC;QAC1D,OAAO,WAAW,CAAC,8CAA8C,CAAC,CAAA;IACpE,CAAC;IACD,IAAI,KAAK,CAAC,YAAY,KAAK,gBAAgB,IAAI,KAAK,CAAC,YAAY,KAAK,YAAY,EAAE,CAAC;QACnF,OAAO,WAAW,CAAC,qEAAqE,CAAC,CAAA;IAC3F,CAAC;IACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAA;AACxB,CAAC;AAED,MAAM,UAAU,6BAA6B,CAAC,KAM7C;IACC,IAAI,CAAC,KAAK,CAAC,cAAc;QAAE,OAAO,WAAW,CAAC,uCAAuC,CAAC,CAAA;IACtF,IAAI,CAAC,KAAK,CAAC,mBAAmB;QAAE,OAAO,WAAW,CAAC,yDAAyD,CAAC,CAAA;IAC7G,IAAI,KAAK,CAAC,aAAa;QAAE,OAAO,WAAW,CAAC,4CAA4C,CAAC,CAAA;IACzF,IAAI,CAAC,KAAK,CAAC,IAAI;QAAE,OAAO,WAAW,CAAC,mEAAmE,CAAC,CAAA;IACxG,MAAM,gBAAgB,GAAG,KAAK,CAAC,IAAI,CAAC,YAAY,EAAE,eAAe,CAAA;IACjE,IAAI,CAAC,gBAAgB,IAAI,CAAC,gBAAgB,CAAC,MAAM,KAAK,WAAW,IAAI,gBAAgB,CAAC,MAAM,KAAK,UAAU,CAAC,EAAE,CAAC;QAC7G,OAAO,WAAW,CAAC,gBAAgB,EAAE,MAAM,IAAI,iEAAiE,CAAC,CAAA;IACnH,CAAC;IACD,IAAI,KAAK,CAAC,mBAAmB;QAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAA;IACrD,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,KAAK,KAAK,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,KAAK,OAAO;QAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAA;IACxF,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,KAAK,eAAe;QAAE,OAAO,WAAW,CAAC,+CAA+C,CAAC,CAAA;IAC9G,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,KAAK,qBAAqB,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,KAAK,sBAAsB,EAAE,CAAC;QAChG,OAAO,WAAW,CAAC,4DAA4D,CAAC,CAAA;IAClF,CAAC;IACD,OAAO,WAAW,CAAC,oBAAoB,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC,CAAA;AACnF,CAAC;AAED,SAAS,WAAW,CAAC,MAAc;IACjC,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,CAAA;AACjC,CAAC"}
package/dist/index.d.ts CHANGED
@@ -39,6 +39,44 @@ export * from './adapters/xenoAgentCompatibilityBridge.js';
39
39
  export * from './adapters/xenoAgentHostCatalog.js';
40
40
  export type { XenoAPI } from './platformApiTypes.js';
41
41
  export { default as XenoAgentInterface } from './components/agent/AgentInterface.js';
42
+ /**
43
+ * THE XENO AGENT CONVERSATION — the one component every XENO agent surface plugs in.
44
+ *
45
+ * The transcript, the composer, and the logic behind them. Nothing else: the sidebar, the session
46
+ * list, the header tabs and the window chrome live in `XenoAgentInterface`, which renders THIS
47
+ * inside itself. So this is not a second implementation — it is the same component the shipping app
48
+ * draws, made reachable to any host that owns its own window.
49
+ *
50
+ * 🔴 **Deliberately NOT named "chat".** Chat is one of its two modes, and naming the component
51
+ * after one mode is how a product ends up with two implementations. Per this repo's own framing:
52
+ * *Chat and Agent are capability profiles of ONE canonical surface, not separate UIs.*
53
+ *
54
+ * | mode | scope | what it can do |
55
+ * |---|---|---|
56
+ * | **chat** | `workspaceMode: 'chat'`, a private managed workspace | no local tool calls — the shape of claude.ai or ChatGPT |
57
+ * | **agent** | `workspaceMode: 'agent'`, an explicit local folder | the full development harness — the shape of Claude Code or a coworker |
58
+ *
59
+ * The mode is not a flag on this component: it is carried by the conversation's SCOPE and expressed
60
+ * through `allowedDirectories`, `capabilities` and `permissionProfile`. A host selects a mode by
61
+ * opening the right kind of conversation, which is why the two cannot silently blur — see
62
+ * `assertResumeLaunchScope`, which refuses a resume whose scope disagrees with its launch mode.
63
+ *
64
+ * ## Where it plugs in
65
+ *
66
+ * ```
67
+ * ┌──────────┬──────────────────────────┬──────────────────┐
68
+ * │ sessions │ XenoAgentConversation │ editor / browser │
69
+ * │ sidebar │ (this component) │ terminal / diff │
70
+ * └──────────┴──────────────────────────┴──────────────────┘
71
+ * ```
72
+ *
73
+ * That is `XenoAgentInterface`'s layout, and it is also a XENO Panel host's: the conversation is one
74
+ * tile among others the host arranges. A website, an app, a panel host and the Agent desktop app all
75
+ * mount the same component, so improving the conversation improves every one of them at once —
76
+ * which is the entire reason this export exists.
77
+ */
78
+ export { AgentView as XenoAgentConversation } from './components/agent/AgentView.js';
79
+ export type { AgentViewProps as XenoAgentConversationProps } from './components/agent/AgentView.js';
42
80
  export type { Agent, AgentApprovalRule, AgentCapabilities, AgentInterfaceProps, AgentPermissionProfileName, Conversation, Team, Workspace, WorkspaceApp, } from './components/agent/AgentInterface.js';
43
81
  export type AgentInterfaceSurfacePhase = 'idle' | 'connecting' | 'ready' | 'error' | 'stopped';
44
82
  export interface AgentInterfaceSurfaceSnapshot {
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,kBAAkB,EAClB,8BAA8B,EAC9B,gBAAgB,EACjB,MAAM,sCAAsC,CAAA;AAE7C,OAAO,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAA;AAEpE;;;;;;;;;;;;GAYG;AACH,cAAc,yCAAyC,CAAA;AACvD,cAAc,wCAAwC,CAAA;AACtD,cAAc,2CAA2C,CAAA;AACzD,cAAc,+CAA+C,CAAA;AAC7D,cAAc,uBAAuB,CAAA;AACrC,cAAc,yBAAyB,CAAA;AACvC,cAAc,kBAAkB,CAAA;AAChC,cAAc,uCAAuC,CAAA;AACrD,cAAc,sCAAsC,CAAA;AACpD,cAAc,kCAAkC,CAAA;AAChD,cAAc,qCAAqC,CAAA;AACnD,cAAc,mCAAmC,CAAA;AACjD,cAAc,sCAAsC,CAAA;AACpD,cAAc,uCAAuC,CAAA;AACrD,cAAc,gDAAgD,CAAA;AAC9D,cAAc,8CAA8C,CAAA;AAC5D,cAAc,oDAAoD,CAAA;AAClE,cAAc,mDAAmD,CAAA;AACjE,cAAc,6BAA6B,CAAA;AAC3C,cAAc,qBAAqB,CAAA;AACnC,cAAc,uCAAuC,CAAA;AACrD,cAAc,sCAAsC,CAAA;AACpD,cAAc,4CAA4C,CAAA;AAC1D,cAAc,oCAAoC,CAAA;AAClD,YAAY,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAA;AACpD,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,sCAAsC,CAAA;AACpF,YAAY,EACV,KAAK,EACL,iBAAiB,EACjB,iBAAiB,EACjB,mBAAmB,EACnB,0BAA0B,EAC1B,YAAY,EACZ,IAAI,EACJ,SAAS,EACT,YAAY,GACb,MAAM,sCAAsC,CAAA;AAE7C,MAAM,MAAM,0BAA0B,GAAG,MAAM,GAAG,YAAY,GAAG,OAAO,GAAG,OAAO,GAAG,SAAS,CAAA;AAE9F,MAAM,WAAW,6BAA6B;IAC5C,KAAK,EAAE,0BAA0B,CAAA;IACjC,OAAO,EAAE,gBAAgB,CAAA;IACzB,SAAS,EAAE,kBAAkB,GAAG,IAAI,CAAA;IACpC,SAAS,EAAE,8BAA8B,EAAE,CAAA;IAC3C,sBAAsB,EAAE,MAAM,EAAE,CAAA;IAChC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;CACzB;AAED,MAAM,MAAM,6BAA6B,GAAG,CAAC,QAAQ,EAAE,6BAA6B,KAAK,IAAI,CAAA;AAE7F,qBAAa,+BAA+B;IAC1C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAiB;IACxC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA2C;IACrE,OAAO,CAAC,eAAe,CAA4B;IACnD,OAAO,CAAC,YAAY,CAAsD;IAC1E,OAAO,CAAC,aAAa,CAA+B;gBAExC,MAAM,EAAE,eAAe;IAYnC,IAAI,QAAQ,IAAI,6BAA6B,CAE5C;IAED,SAAS,CAAC,QAAQ,EAAE,6BAA6B,GAAG,MAAM,IAAI;IAQ9D,KAAK,IAAI,OAAO,CAAC,6BAA6B,CAAC;IAM/C,IAAI,IAAI,IAAI;YAeE,aAAa;YAyBb,gBAAgB;IAU9B,OAAO,CAAC,QAAQ;IAWhB,OAAO,CAAC,WAAW;CAIpB;AAMD,OAAO,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,kBAAkB,EAClB,8BAA8B,EAC9B,gBAAgB,EACjB,MAAM,sCAAsC,CAAA;AAE7C,OAAO,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAA;AAEpE;;;;;;;;;;;;GAYG;AACH,cAAc,yCAAyC,CAAA;AACvD,cAAc,wCAAwC,CAAA;AACtD,cAAc,2CAA2C,CAAA;AACzD,cAAc,+CAA+C,CAAA;AAC7D,cAAc,uBAAuB,CAAA;AACrC,cAAc,yBAAyB,CAAA;AACvC,cAAc,kBAAkB,CAAA;AAChC,cAAc,uCAAuC,CAAA;AACrD,cAAc,sCAAsC,CAAA;AACpD,cAAc,kCAAkC,CAAA;AAChD,cAAc,qCAAqC,CAAA;AACnD,cAAc,mCAAmC,CAAA;AACjD,cAAc,sCAAsC,CAAA;AACpD,cAAc,uCAAuC,CAAA;AACrD,cAAc,gDAAgD,CAAA;AAC9D,cAAc,8CAA8C,CAAA;AAC5D,cAAc,oDAAoD,CAAA;AAClE,cAAc,mDAAmD,CAAA;AACjE,cAAc,6BAA6B,CAAA;AAC3C,cAAc,qBAAqB,CAAA;AACnC,cAAc,uCAAuC,CAAA;AACrD,cAAc,sCAAsC,CAAA;AACpD,cAAc,4CAA4C,CAAA;AAC1D,cAAc,oCAAoC,CAAA;AAClD,YAAY,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAA;AACpD,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,sCAAsC,CAAA;AAEpF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,OAAO,EAAE,SAAS,IAAI,qBAAqB,EAAE,MAAM,iCAAiC,CAAA;AACpF,YAAY,EAAE,cAAc,IAAI,0BAA0B,EAAE,MAAM,iCAAiC,CAAA;AACnG,YAAY,EACV,KAAK,EACL,iBAAiB,EACjB,iBAAiB,EACjB,mBAAmB,EACnB,0BAA0B,EAC1B,YAAY,EACZ,IAAI,EACJ,SAAS,EACT,YAAY,GACb,MAAM,sCAAsC,CAAA;AAE7C,MAAM,MAAM,0BAA0B,GAAG,MAAM,GAAG,YAAY,GAAG,OAAO,GAAG,OAAO,GAAG,SAAS,CAAA;AAE9F,MAAM,WAAW,6BAA6B;IAC5C,KAAK,EAAE,0BAA0B,CAAA;IACjC,OAAO,EAAE,gBAAgB,CAAA;IACzB,SAAS,EAAE,kBAAkB,GAAG,IAAI,CAAA;IACpC,SAAS,EAAE,8BAA8B,EAAE,CAAA;IAC3C,sBAAsB,EAAE,MAAM,EAAE,CAAA;IAChC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;CACzB;AAED,MAAM,MAAM,6BAA6B,GAAG,CAAC,QAAQ,EAAE,6BAA6B,KAAK,IAAI,CAAA;AAE7F,qBAAa,+BAA+B;IAC1C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAiB;IACxC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA2C;IACrE,OAAO,CAAC,eAAe,CAA4B;IACnD,OAAO,CAAC,YAAY,CAAsD;IAC1E,OAAO,CAAC,aAAa,CAA+B;gBAExC,MAAM,EAAE,eAAe;IAYnC,IAAI,QAAQ,IAAI,6BAA6B,CAE5C;IAED,SAAS,CAAC,QAAQ,EAAE,6BAA6B,GAAG,MAAM,IAAI;IAQ9D,KAAK,IAAI,OAAO,CAAC,6BAA6B,CAAC;IAM/C,IAAI,IAAI,IAAI;YAeE,aAAa;YAyBb,gBAAgB;IAU9B,OAAO,CAAC,QAAQ;IAWhB,OAAO,CAAC,WAAW;CAIpB;AAMD,OAAO,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAA"}
package/dist/index.js CHANGED
@@ -38,6 +38,43 @@ export * from './adapters/hubAgentPlatformBridge.js';
38
38
  export * from './adapters/xenoAgentCompatibilityBridge.js';
39
39
  export * from './adapters/xenoAgentHostCatalog.js';
40
40
  export { default as XenoAgentInterface } from './components/agent/AgentInterface.js';
41
+ /**
42
+ * THE XENO AGENT CONVERSATION — the one component every XENO agent surface plugs in.
43
+ *
44
+ * The transcript, the composer, and the logic behind them. Nothing else: the sidebar, the session
45
+ * list, the header tabs and the window chrome live in `XenoAgentInterface`, which renders THIS
46
+ * inside itself. So this is not a second implementation — it is the same component the shipping app
47
+ * draws, made reachable to any host that owns its own window.
48
+ *
49
+ * 🔴 **Deliberately NOT named "chat".** Chat is one of its two modes, and naming the component
50
+ * after one mode is how a product ends up with two implementations. Per this repo's own framing:
51
+ * *Chat and Agent are capability profiles of ONE canonical surface, not separate UIs.*
52
+ *
53
+ * | mode | scope | what it can do |
54
+ * |---|---|---|
55
+ * | **chat** | `workspaceMode: 'chat'`, a private managed workspace | no local tool calls — the shape of claude.ai or ChatGPT |
56
+ * | **agent** | `workspaceMode: 'agent'`, an explicit local folder | the full development harness — the shape of Claude Code or a coworker |
57
+ *
58
+ * The mode is not a flag on this component: it is carried by the conversation's SCOPE and expressed
59
+ * through `allowedDirectories`, `capabilities` and `permissionProfile`. A host selects a mode by
60
+ * opening the right kind of conversation, which is why the two cannot silently blur — see
61
+ * `assertResumeLaunchScope`, which refuses a resume whose scope disagrees with its launch mode.
62
+ *
63
+ * ## Where it plugs in
64
+ *
65
+ * ```
66
+ * ┌──────────┬──────────────────────────┬──────────────────┐
67
+ * │ sessions │ XenoAgentConversation │ editor / browser │
68
+ * │ sidebar │ (this component) │ terminal / diff │
69
+ * └──────────┴──────────────────────────┴──────────────────┘
70
+ * ```
71
+ *
72
+ * That is `XenoAgentInterface`'s layout, and it is also a XENO Panel host's: the conversation is one
73
+ * tile among others the host arranges. A website, an app, a panel host and the Agent desktop app all
74
+ * mount the same component, so improving the conversation improves every one of them at once —
75
+ * which is the entire reason this export exists.
76
+ */
77
+ export { AgentView as XenoAgentConversation } from './components/agent/AgentView.js';
41
78
  export class AgentInterfaceSurfaceController {
42
79
  client;
43
80
  listeners = new Set();
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -1429,7 +1429,7 @@ export interface XenoAPI {
1429
1429
  }>;
1430
1430
  xenoTuiAttach?: (params: {
1431
1431
  conversationId: string;
1432
- workspaceMode: 'workspace' | 'chat-only';
1432
+ workspaceMode: 'agent' | 'chat';
1433
1433
  workingDirectory?: string;
1434
1434
  workspaceId?: string;
1435
1435
  providerKind: 'sdk-native' | 'xeno-cloud' | 'acp-provider';
@@ -1443,7 +1443,7 @@ export interface XenoAPI {
1443
1443
  }>;
1444
1444
  providerLaneSelect?: (params: {
1445
1445
  conversationId: string;
1446
- workspaceMode: 'workspace' | 'chat-only';
1446
+ workspaceMode: 'agent' | 'chat';
1447
1447
  workingDirectory?: string;
1448
1448
  workspaceId?: string;
1449
1449
  providerKind: 'sdk-native' | 'xeno-cloud' | 'acp-provider';