@xenosystem/agent-interface-panel 0.1.29 → 0.1.31

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/index.d.ts CHANGED
@@ -40,6 +40,7 @@
40
40
  */
41
41
  import type { PanelModule } from '@xenosystem/panel-sdk';
42
42
  import type { AgentHostClient } from '@xenosystem/agent-interface-client';
43
+ import { type XenoAgentConversationProps } from '@xenosystem/agent-conversation';
43
44
  /**
44
45
  * The platform bridge, structurally. Deliberately not `XenoAPI`: a panel host implements the
45
46
  * capabilities the interface reaches and refuses the rest by name, so demanding the full type
@@ -69,6 +70,18 @@ export type AgentPlatformBridgeLike = object;
69
70
  * The client is the embed lifecycle; the component reads the bridge.
70
71
  */
71
72
  export interface CreateXenoAgentInterfacePanelOptions {
73
+ /**
74
+ * Which conversation this panel opens, and how it behaves.
75
+ *
76
+ * Omitted, it opens the same personal assistant the full interface shows — from the same
77
+ * constants, so the panel and the desktop app open the SAME conversation rather than two that
78
+ * merely look alike.
79
+ *
80
+ * ⚠️ Merged OVER the defaults, so a host overrides one field without restating the rest. A host
81
+ * that wants a specific conversation passes `conversationId`; one embedding a project agent
82
+ * passes `agentId`/`agentName`/`model`.
83
+ */
84
+ conversation?: Partial<XenoAgentConversationProps>;
72
85
  /**
73
86
  * Build the client this panel mounts against — the EMBED path.
74
87
  *
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuCG;AAKH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAA;AAExD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAA;AAOzE;;;;GAIG;AACH,MAAM,MAAM,uBAAuB,GAAG,MAAM,CAAA;AAc5C;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,WAAW,oCAAoC;IACnD;;;;;;;;OAQG;IACH,YAAY,CAAC,EAAE,MAAM,eAAe,GAAG,OAAO,CAAC,eAAe,CAAC,CAAA;IAC/D;;;;;;;OAOG;IACH,YAAY,CAAC,EAAE,MAAM,uBAAuB,GAAG,IAAI,GAAG,OAAO,CAAC,uBAAuB,GAAG,IAAI,CAAC,CAAA;IAC7F,6FAA6F;IAC7F,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAA;CACnC;AAED,6CAA6C;AAC7C,eAAO,MAAM,mBAAmB,EAAG,aAAsB,CAAA;AAEzD;;;;;GAKG;AACH,wBAAgB,6BAA6B,CAC3C,OAAO,EAAE,oCAAoC,GAC5C,WAAW,CAiFb"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuCG;AAKH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAA;AAExD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAA;AASzE,OAAO,EAML,KAAK,0BAA0B,EAChC,MAAM,gCAAgC,CAAA;AAEvC;;;;GAIG;AACH,MAAM,MAAM,uBAAuB,GAAG,MAAM,CAAA;AAmC5C;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,WAAW,oCAAoC;IACnD;;;;;;;;;;OAUG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC,0BAA0B,CAAC,CAAA;IAClD;;;;;;;;OAQG;IACH,YAAY,CAAC,EAAE,MAAM,eAAe,GAAG,OAAO,CAAC,eAAe,CAAC,CAAA;IAC/D;;;;;;;OAOG;IACH,YAAY,CAAC,EAAE,MAAM,uBAAuB,GAAG,IAAI,GAAG,OAAO,CAAC,uBAAuB,GAAG,IAAI,CAAC,CAAA;IAC7F,6FAA6F;IAC7F,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAA;CACnC;AAED,6CAA6C;AAC7C,eAAO,MAAM,mBAAmB,EAAG,aAAsB,CAAA;AAEzD;;;;;GAKG;AACH,wBAAgB,6BAA6B,CAC3C,OAAO,EAAE,oCAAoC,GAC5C,WAAW,CAuFb"}
package/dist/index.js CHANGED
@@ -42,18 +42,46 @@ import { createElement } from 'react';
42
42
  import { createRoot } from 'react-dom/client';
43
43
  import { createAgentPanel } from '@xenosystem/panel-agent';
44
44
  import { mountXenoAgentInterface } from '@xenosystem/agent-interface-embed';
45
- import { XenoAgentInterface, configureAgentPlatformBridge, } from '@xenosystem/agent-interface-ui';
46
45
  /*
47
- * ⚠️ The cast is not laziness. `AgentInterface` declares its props parameter as OPTIONAL —
48
- * `(props?: AgentInterfaceProps)` — and `createElement` narrows such a component to `{}`, so
49
- * passing `surface` is rejected as an unknown attribute even though the built `.d.ts` types it
50
- * correctly. Naming the props type restores it.
46
+ * 🔴 The conversation comes from its OWN package, not through the shell.
51
47
  *
52
- * Deliberately NOT solved by omitting the prop. `surface` defaults to `'embedded'` today, and
53
- * relying on that default would make this panel's chrome depend on a value it never states
54
- * silently wrong the day the default changes.
48
+ * That is the inversion this panel exists for. While the conversation lived inside
49
+ * `agent-interface-ui`, the shell was the canonical thing and this was a wrapper around it —
50
+ * improving the panel reached nobody, because nothing downstream depended on it. Now the shell and
51
+ * this panel are peers that render the same conversation.
55
52
  */
56
- const AgentInterfaceComponent = XenoAgentInterface;
53
+ import { MAIN_ASSISTANT_ID, MAIN_ASSISTANT_MODEL, MAIN_ASSISTANT_NAME, XenoAgentConversation, configureAgentPlatformBridge, } from '@xenosystem/agent-conversation';
54
+ /**
55
+ * What this panel actually renders: the CONVERSATION, not the shell around it.
56
+ *
57
+ * 🔴 Until now both mount paths rendered `XenoAgentInterface` — the whole desktop shell, with its
58
+ * session sidebar, its tab header and its editor/browser split. Dropped into a host that owns its
59
+ * own window that is an application inside a panel: a second sidebar beside the host's, a second
60
+ * tab strip, and two things competing to decide what "the current session" means.
61
+ *
62
+ * The panel is the conversation — the transcript and the composer and the logic behind them — and
63
+ * nothing else. The host supplies the surrounding chrome, because the host already has some.
64
+ */
65
+ const AgentConversationComponent = XenoAgentConversation;
66
+ /**
67
+ * The conversation this panel opens when the host does not name one.
68
+ *
69
+ * Identical to what the full interface shows for the personal inbox, from the same constants —
70
+ * so a panel and the desktop app open the SAME conversation rather than two that merely look
71
+ * alike. Inventing an agent id here is how those quietly diverge.
72
+ */
73
+ function defaultConversationProps() {
74
+ return {
75
+ agentId: MAIN_ASSISTANT_ID,
76
+ agentName: MAIN_ASSISTANT_NAME,
77
+ model: MAIN_ASSISTANT_MODEL,
78
+ isMainAssistant: true,
79
+ capabilities: { terminal: true, fileRead: true, fileWrite: true, appLaunch: true },
80
+ permissionProfile: 'standard',
81
+ // A host chrome draws its own workbench; the conversation must not draw a second one.
82
+ renderWorkbenchPanel: false,
83
+ };
84
+ }
57
85
  /** The surface kind this panel mounts as. */
58
86
  export const AGENT_PANEL_SURFACE = 'panel-embed';
59
87
  /**
@@ -95,7 +123,10 @@ export function createXenoAgentInterfacePanel(options) {
95
123
  }
96
124
  restoreBridge = configureAgentPlatformBridge(bridge);
97
125
  root = createRoot(el);
98
- root.render(createElement(AgentInterfaceComponent, { surface: 'embedded' }));
126
+ root.render(createElement(AgentConversationComponent, {
127
+ ...defaultConversationProps(),
128
+ ...options.conversation,
129
+ }));
99
130
  return;
100
131
  }
101
132
  if (!options.createClient) {
@@ -113,7 +144,10 @@ export function createXenoAgentInterfacePanel(options) {
113
144
  * boundary can end up with two Reacts, and every hook throws "Invalid hook call".
114
145
  */
115
146
  root = createRoot(container);
116
- root.render(createElement(AgentInterfaceComponent, { surface: 'embedded' }));
147
+ root.render(createElement(AgentConversationComponent, {
148
+ ...defaultConversationProps(),
149
+ ...options.conversation,
150
+ }));
117
151
  },
118
152
  unmount() {
119
153
  root?.unmount();
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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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@xenosystem/agent-interface-panel",
3
- "version": "0.1.29",
3
+ "version": "0.1.31",
4
4
  "license": "UNLICENSED",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -22,12 +22,15 @@
22
22
  "publishConfig": {
23
23
  "access": "public"
24
24
  },
25
+ "scripts": {
26
+ "build": "tsc -p tsconfig.json"
27
+ },
25
28
  "dependencies": {
26
- "@xenosystem/panel-agent": "^0.1.0",
27
- "@xenosystem/agent-interface-client": "0.1.29",
28
- "@xenosystem/agent-interface-embed": "0.1.29",
29
- "@xenosystem/agent-interface-contract": "0.1.29",
30
- "@xenosystem/agent-interface-ui": "0.1.29"
29
+ "@xenosystem/agent-conversation": "workspace:*",
30
+ "@xenosystem/agent-interface-client": "workspace:*",
31
+ "@xenosystem/agent-interface-contract": "workspace:*",
32
+ "@xenosystem/agent-interface-embed": "workspace:*",
33
+ "@xenosystem/panel-agent": "^0.1.0"
31
34
  },
32
35
  "peerDependencies": {
33
36
  "@xenosystem/panel-sdk": "^1.1.0",
@@ -42,8 +45,5 @@
42
45
  "@xenosystem/workbench": "^1.0.0",
43
46
  "react": "^19.0.0",
44
47
  "react-dom": "^19.0.0"
45
- },
46
- "scripts": {
47
- "build": "tsc -p tsconfig.json"
48
48
  }
49
- }
49
+ }
package/LICENSE DELETED
@@ -1,67 +0,0 @@
1
- XENO Agent — Proprietary Software License
2
- Copyright © 2026 XENO Corporation. All rights reserved.
3
-
4
- This software, including its source code, compiled binaries, published packages,
5
- assets, and accompanying documentation (collectively, the "Software"), is the
6
- proprietary and confidential property of XENO Corporation ("XENO"). The Software
7
- is licensed for use, not sold, and no title to or ownership of the Software is
8
- transferred to any user.
9
-
10
- 1. GRANT OF USE
11
- Subject to a separate written agreement and/or the terms of service published
12
- at https://xenostudio.ai, XENO grants the end user a limited, non-exclusive,
13
- non-transferable, revocable license to install and use the Software for its
14
- intended purpose. The standalone desktop application ("the Agent") may be used
15
- locally at no charge; connected platform features — hosted agent runs, model
16
- inference, credits, and account services — are governed by the applicable
17
- subscription and the XENO terms of service.
18
-
19
- 2. PACKAGE DISTRIBUTION
20
- The `@xeno-corporation/xeno-agent-interface-*` and
21
- `@xeno-corporation/xeno-agents-client` packages are published to a PRIVATE
22
- registry and are licensed for use solely by XENO products and by parties
23
- holding a separate written agreement with XENO. Access credentials to that
24
- registry do not grant redistribution rights. Publication of any package in
25
- this repository to a public registry is prohibited without written
26
- authorization from XENO.
27
-
28
- 3. RESTRICTIONS
29
- Except to the extent expressly permitted by applicable law or by a separate
30
- written agreement with XENO, you may NOT: (a) copy, redistribute, sell, rent,
31
- lease, sublicense, or otherwise transfer the Software; (b) modify, adapt,
32
- translate, or create derivative works of the Software; (c) reverse-engineer,
33
- decompile, or disassemble the Software, or attempt to derive its source code;
34
- (d) remove, obscure, or alter any proprietary notices; or (e) use the Software
35
- to build a competing product.
36
-
37
- 4. RESERVATION OF RIGHTS
38
- All rights not expressly granted are reserved by XENO Corporation. The Software
39
- is protected by copyright and other intellectual-property laws and treaties.
40
-
41
- 5. DISCLAIMER OF WARRANTY
42
- THE SOFTWARE IS PROVIDED "AS IS" AND "AS AVAILABLE", WITHOUT WARRANTY OF ANY
43
- KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
44
- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND NON-INFRINGEMENT. THE
45
- SOFTWARE EXECUTES AGENT-DIRECTED OPERATIONS AGAINST A USER-SELECTED WORKSPACE,
46
- INCLUDING FILE AND PROCESS ACTIONS; THE USER IS RESPONSIBLE FOR THE WORKSPACES
47
- AND PERMISSIONS THEY GRANT IT.
48
-
49
- 6. LIMITATION OF LIABILITY
50
- TO THE MAXIMUM EXTENT PERMITTED BY LAW, IN NO EVENT SHALL XENO CORPORATION BE
51
- LIABLE FOR ANY INDIRECT, INCIDENTAL, SPECIAL, CONSEQUENTIAL, OR PUNITIVE
52
- DAMAGES, OR ANY LOSS OF PROFITS OR DATA, ARISING FROM OR RELATED TO THE USE OF
53
- OR INABILITY TO USE THE SOFTWARE.
54
-
55
- 7. THIRD-PARTY COMPONENTS
56
- The Software includes third-party open-source components, each licensed under
57
- its own terms; those terms govern those components and are not superseded by
58
- this license. It also composes third-party agent providers over the Agent
59
- Client Protocol and hosted APIs; use of those providers is governed by their
60
- own terms.
61
-
62
- For licensing inquiries, contact: legal@xenostudio.ai
63
-
64
- NOTE TO OPERATOR: confirm the exact legal entity name and notice/contact details
65
- with counsel before public distribution and code-signing (the code-signing
66
- publisher name must match the registered entity). No public distribution of this
67
- product is authorized by this file — see docs/PRODUCT_STATUS.md.