@deepseek-ai/dsh-client-ui-subagent 0.1.0-rc.7 → 0.1.0-rc.8
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/lib/client.js +18 -45
- package/lib/types/client/index.d.ts +3 -15
- package/package.json +19 -23
package/lib/client.js
CHANGED
|
@@ -19,29 +19,29 @@ window.__ModuleLoader__.load({
|
|
|
19
19
|
document.head.appendChild(tag);
|
|
20
20
|
}
|
|
21
21
|
var SubagentCatalogAction_module_css_default = {
|
|
22
|
-
"children": "h8S2Va_children",
|
|
23
|
-
"row": "h8S2Va_row",
|
|
24
|
-
"disclosureSpace": "h8S2Va_disclosureSpace",
|
|
25
|
-
"disclosureOpen": "h8S2Va_disclosureOpen",
|
|
26
|
-
"error": "h8S2Va_error",
|
|
27
22
|
"activitySlot": "h8S2Va_activitySlot",
|
|
23
|
+
"children": "h8S2Va_children",
|
|
28
24
|
"clickarea": "h8S2Va_clickarea",
|
|
29
|
-
"
|
|
25
|
+
"content": "h8S2Va_content",
|
|
30
26
|
"count": "h8S2Va_count",
|
|
31
|
-
"trigger": "h8S2Va_trigger",
|
|
32
|
-
"metrics": "h8S2Va_metrics",
|
|
33
|
-
"metricToken": "h8S2Va_metricToken",
|
|
34
|
-
"refresh": "h8S2Va_refresh",
|
|
35
|
-
"notice": "h8S2Va_notice",
|
|
36
|
-
"disclosure": "h8S2Va_disclosure",
|
|
37
|
-
"node": "h8S2Va_node",
|
|
38
27
|
"disabled": "h8S2Va_disabled",
|
|
39
|
-
"
|
|
40
|
-
"
|
|
28
|
+
"disclosure": "h8S2Va_disclosure",
|
|
29
|
+
"disclosureOpen": "h8S2Va_disclosureOpen",
|
|
30
|
+
"disclosureSpace": "h8S2Va_disclosureSpace",
|
|
31
|
+
"error": "h8S2Va_error",
|
|
41
32
|
"label": "h8S2Va_label",
|
|
42
|
-
"
|
|
33
|
+
"loadingRow": "h8S2Va_loadingRow",
|
|
34
|
+
"menu": "h8S2Va_menu",
|
|
43
35
|
"metricDuration": "h8S2Va_metricDuration",
|
|
36
|
+
"metricToken": "h8S2Va_metricToken",
|
|
37
|
+
"metrics": "h8S2Va_metrics",
|
|
38
|
+
"node": "h8S2Va_node",
|
|
39
|
+
"notice": "h8S2Va_notice",
|
|
40
|
+
"refresh": "h8S2Va_refresh",
|
|
44
41
|
"root": "h8S2Va_root",
|
|
42
|
+
"row": "h8S2Va_row",
|
|
43
|
+
"summary": "h8S2Va_summary",
|
|
44
|
+
"trigger": "h8S2Va_trigger",
|
|
45
45
|
"triggerOpen": "h8S2Va_triggerOpen"
|
|
46
46
|
};
|
|
47
47
|
//#endregion
|
|
@@ -624,9 +624,8 @@ window.__ModuleLoader__.load({
|
|
|
624
624
|
};
|
|
625
625
|
//#endregion
|
|
626
626
|
//#region lib/types/client/index.js
|
|
627
|
-
/** Required services for
|
|
627
|
+
/** Required services for conversation slots and session navigation. */
|
|
628
628
|
const inject = [
|
|
629
|
-
"inputTriggers",
|
|
630
629
|
"sessions",
|
|
631
630
|
"slots",
|
|
632
631
|
"locale"
|
|
@@ -640,7 +639,7 @@ window.__ModuleLoader__.load({
|
|
|
640
639
|
return owner.session?.running === true ? null : { reason: "parent-unavailable" };
|
|
641
640
|
}
|
|
642
641
|
/**
|
|
643
|
-
* Client plugin body: register the
|
|
642
|
+
* Client plugin body: register the subagent catalog and read-only composer seats.
|
|
644
643
|
* @param ctx - client root context.
|
|
645
644
|
*/
|
|
646
645
|
function apply(ctx) {
|
|
@@ -649,32 +648,6 @@ window.__ModuleLoader__.load({
|
|
|
649
648
|
en
|
|
650
649
|
}), "ui-subagent: dictionaries");
|
|
651
650
|
const sessions = ctx.sessions;
|
|
652
|
-
const childLabels = (session, query) => {
|
|
653
|
-
const { byId } = sessions.list.getSnapshot();
|
|
654
|
-
return Object.values(byId).filter((child) => child.parentId === session.sessionId && child.running && child.displayTitle.includes(query)).map((child) => child.displayTitle);
|
|
655
|
-
};
|
|
656
|
-
const source = {
|
|
657
|
-
trigger: "@",
|
|
658
|
-
name: "subagent",
|
|
659
|
-
candidates(session, { query }) {
|
|
660
|
-
return Promise.resolve(childLabels(session, query).map((name) => ({ name })));
|
|
661
|
-
},
|
|
662
|
-
lexicon(session) {
|
|
663
|
-
return childLabels(session, "");
|
|
664
|
-
},
|
|
665
|
-
subscribeLexicon(_session, listener) {
|
|
666
|
-
return sessions.list.subscribe(listener);
|
|
667
|
-
},
|
|
668
|
-
onPick({ candidate }) {
|
|
669
|
-
return { text: `@${candidate.name} ` };
|
|
670
|
-
},
|
|
671
|
-
codec: {
|
|
672
|
-
clipboardText: (ref) => `@${ref}`,
|
|
673
|
-
serialize: (ref) => Promise.resolve(`@${ref}`)
|
|
674
|
-
}
|
|
675
|
-
};
|
|
676
|
-
const inputTriggers = ctx.get("inputTriggers");
|
|
677
|
-
ctx.effect(() => inputTriggers.registerSource(source), "ui-subagent: @ source");
|
|
678
651
|
const catalogActions = (_parentSessionId) => ({
|
|
679
652
|
openChild(address) {
|
|
680
653
|
sessions.openSubagent(address);
|
|
@@ -1,16 +1,4 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Subagent reference plugin, browser half: registers the '@' source —
|
|
3
|
-
* candidates filtered from the session list snapshot's running children
|
|
4
|
-
* (zero RPC; the list rides the plugin's root-context sessions service, the
|
|
5
|
-
* scoped session comes from the per-call projection), pick inserts the
|
|
6
|
-
* literal `@label ` text (plain-text-reference decision, see
|
|
7
|
-
* .agents/notes/implemented/architecture/2026-07-25-web-input-machine-and-slash-pipeline.md:
|
|
8
|
-
* the draft carries plain text, chip
|
|
9
|
-
* visuals are derived by scanning against the source lexicon, and the
|
|
10
|
-
* prompt ships the same literal). Consumption semantics stay with future
|
|
11
|
-
* business work. No adjudication hooks: subagent
|
|
12
|
-
* references never enter command adjudication.
|
|
13
|
-
*/
|
|
1
|
+
/** Web subagent catalog, navigation, and addressed-session composer owner. */
|
|
14
2
|
import type { ClientContext } from '@deepseek-ai/dsh-client-runtime/client';
|
|
15
3
|
import { type SubagentKey } from './locales.ts';
|
|
16
4
|
declare module '@deepseek-ai/dsh-client-ui-slots' {
|
|
@@ -21,10 +9,10 @@ declare module '@deepseek-ai/dsh-client-ui-slots' {
|
|
|
21
9
|
}
|
|
22
10
|
export type { SubagentCatalogActionProps, SubagentCatalogInjected, } from './SubagentCatalogAction.tsx';
|
|
23
11
|
export type { SubagentReadOnlyComposerProps, SubagentReadOnlyMatch, } from './SubagentReadOnlyComposer.tsx';
|
|
24
|
-
/** Required services for
|
|
12
|
+
/** Required services for conversation slots and session navigation. */
|
|
25
13
|
export declare const inject: string[];
|
|
26
14
|
/**
|
|
27
|
-
* Client plugin body: register the
|
|
15
|
+
* Client plugin body: register the subagent catalog and read-only composer seats.
|
|
28
16
|
* @param ctx - client root context.
|
|
29
17
|
*/
|
|
30
18
|
export declare function apply(ctx: ClientContext): void;
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@deepseek-ai/dsh-client-ui-subagent",
|
|
3
3
|
"description": "Subagent conversation catalog, continuation routing UI, and '@' reference source",
|
|
4
|
-
"version": "0.1.0-rc.
|
|
4
|
+
"version": "0.1.0-rc.8",
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"access": "public"
|
|
7
7
|
},
|
|
@@ -42,34 +42,30 @@
|
|
|
42
42
|
}
|
|
43
43
|
},
|
|
44
44
|
"license": "MIT",
|
|
45
|
-
"dependencies": {
|
|
46
|
-
"react": "^18.2.0"
|
|
47
|
-
},
|
|
48
45
|
"peerDependencies": {
|
|
49
|
-
"@deepseek-ai/dsh-client-
|
|
50
|
-
"@deepseek-ai/dsh-client-
|
|
51
|
-
"@deepseek-ai/dsh-client-ui-
|
|
52
|
-
"@deepseek-ai/dsh-client-ui-input-trigger": "^0.1.0-rc.
|
|
53
|
-
"@deepseek-ai/dsh-
|
|
54
|
-
"@deepseek-ai/dsh-invariants": "^0.1.0-rc.7",
|
|
55
|
-
"@deepseek-ai/dsh-subagent": "^0.1.0-rc.7",
|
|
56
|
-
"@deepseek-ai/dsh-token-meter": "^0.1.0-rc.7",
|
|
46
|
+
"@deepseek-ai/dsh-client-locale": "^0.1.0-rc.8",
|
|
47
|
+
"@deepseek-ai/dsh-client-runtime": "^0.1.0-rc.8",
|
|
48
|
+
"@deepseek-ai/dsh-client-ui-conversation": "^0.1.0-rc.8",
|
|
49
|
+
"@deepseek-ai/dsh-client-ui-input-trigger": "^0.1.0-rc.8",
|
|
50
|
+
"@deepseek-ai/dsh-invariants": "^0.1.0-rc.8",
|
|
57
51
|
"@deepseek-ai/cordis": "^4.0.1",
|
|
58
|
-
"@deepseek-ai/dsh-
|
|
52
|
+
"@deepseek-ai/dsh-subagent": "^0.1.0-rc.8",
|
|
53
|
+
"@deepseek-ai/dsh-token-meter": "^0.1.0-rc.8"
|
|
59
54
|
},
|
|
60
55
|
"devDependencies": {
|
|
61
56
|
"@types/react": "~18.3.1",
|
|
62
|
-
"
|
|
63
|
-
"@deepseek-ai/dsh-client-
|
|
64
|
-
"@deepseek-ai/dsh-client-locale": "^0.1.0-rc.
|
|
65
|
-
"@deepseek-ai/dsh-client-
|
|
66
|
-
"@deepseek-ai/dsh-client-ui-
|
|
67
|
-
"@deepseek-ai/dsh-client-ui-
|
|
68
|
-
"@deepseek-ai/dsh-client-ui-
|
|
69
|
-
"@deepseek-ai/dsh-
|
|
57
|
+
"react": "^18.2.0",
|
|
58
|
+
"@deepseek-ai/dsh-client-runtime": "^0.1.0-rc.8",
|
|
59
|
+
"@deepseek-ai/dsh-client-locale": "^0.1.0-rc.8",
|
|
60
|
+
"@deepseek-ai/dsh-client-test-runtime": "^0.1.0-rc.8",
|
|
61
|
+
"@deepseek-ai/dsh-client-ui-conversation": "^0.1.0-rc.8",
|
|
62
|
+
"@deepseek-ai/dsh-client-ui-input-trigger": "^0.1.0-rc.8",
|
|
63
|
+
"@deepseek-ai/dsh-client-ui-primitives": "^0.1.0-rc.8",
|
|
64
|
+
"@deepseek-ai/dsh-invariants": "^0.1.0-rc.8",
|
|
65
|
+
"@deepseek-ai/dsh-subagent": "^0.1.0-rc.8",
|
|
66
|
+
"@deepseek-ai/dsh-token-meter": "^0.1.0-rc.8",
|
|
70
67
|
"@deepseek-ai/cordis": "^4.0.1",
|
|
71
|
-
"@deepseek-ai/dsh-
|
|
72
|
-
"@deepseek-ai/dsh-token-meter": "^0.1.0-rc.7"
|
|
68
|
+
"@deepseek-ai/dsh-client-ui-slots": "^0.1.0-rc.8"
|
|
73
69
|
},
|
|
74
70
|
"files": [
|
|
75
71
|
"lib/index.js",
|