@webless/agent 0.11.0 → 0.12.0
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/{chunk-NW37MHU7.js → chunk-EVWZF34F.js} +1103 -477
- package/dist/chunk-EVWZF34F.js.map +1 -0
- package/dist/embed.cjs +1132 -506
- package/dist/embed.cjs.map +1 -1
- package/dist/embed.css +64 -0
- package/dist/embed.css.map +1 -1
- package/dist/embed.d.cts +3 -2
- package/dist/embed.d.ts +3 -2
- package/dist/embed.js +1 -1
- package/dist/index.cjs +283 -12
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +3 -2
- package/dist/index.d.ts +3 -2
- package/dist/index.js +277 -6
- package/dist/index.js.map +1 -1
- package/dist/{panel-controller-rxR75tRa.d.cts → panel-controller-CYoivbYB.d.cts} +173 -1
- package/dist/{panel-controller-rxR75tRa.d.ts → panel-controller-CYoivbYB.d.ts} +173 -1
- package/dist/presentation.d.cts +2 -1
- package/dist/presentation.d.ts +2 -1
- package/dist/react.cjs +1131 -505
- package/dist/react.cjs.map +1 -1
- package/dist/react.css +64 -0
- package/dist/react.css.map +1 -1
- package/dist/react.d.cts +126 -4
- package/dist/react.d.ts +126 -4
- package/dist/react.js +1 -1
- package/dist/{types-B2j6hbI5.d.cts → types-4lTJW5mp.d.cts} +133 -1
- package/dist/{types-B2j6hbI5.d.ts → types-4lTJW5mp.d.ts} +133 -1
- package/package.json +3 -2
- package/scripts/sync-handoff-contract.mjs +18 -0
- package/dist/chunk-NW37MHU7.js.map +0 -1
package/dist/react.d.cts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import * as react from 'react';
|
|
2
|
-
import {
|
|
3
|
-
export { A as AGENT_STRUCTURED_TOOL_INPUT_HEADER, a as AGENT_STRUCTURED_TOOL_INPUT_SCHEMA_VERSION,
|
|
2
|
+
import { f as AgentIndexVersion, m as AgentPlacementConfig, e as AgentColorScheme, c as AgentBrandingConfig, b as AgentAnalyticsConfig, _ as VisitorToolResultRegistry, d as AgentClient, q as AgentRuntimeHandoffEvent, j as AgentMessageFeedback, T as ToolStep, o as AgentRailState, p as AgentRailTheme, K as ConversationMessage, l as AgentPanelSubmitOptions, i as AgentInputResponse, F as AgentToolUiSurface, y as AgentToolResultJsonValue, M as FollowUpSuggestion, n as AgentRailPhase, V as VisitorBooking, R as ResolvedVisitorToolResultPresentation } from './panel-controller-CYoivbYB.cjs';
|
|
3
|
+
export { A as AGENT_STRUCTURED_TOOL_INPUT_HEADER, a as AGENT_STRUCTURED_TOOL_INPUT_SCHEMA_VERSION, g as AgentInputOption, h as AgentInputRequest, r as AgentSearchReferences, s as AgentSearchSource, t as AgentStructuredToolInput, x as AgentToolResult, z as AgentToolUiAction, B as AgentToolUiField, C as AgentToolUiFieldKind, D as AgentToolUiOption, E as AgentToolUiStep, G as AssistEdgeTab, H as AssistTabSide, I as AssistTabVariant, J as Citation, L as DEFAULT_AGENT_PLACEMENT, N as JourneyContext, P as ToolStepState, Q as VisitorBookingResultPresentation, S as VisitorSearchResultPresentation, U as VisitorToolInputResultPresentation, W as VisitorToolResultLink, X as VisitorToolResultPresentation, Y as VisitorToolResultPresenter, Z as VisitorToolResultPresenterOutput, $ as builtInVisitorToolResultRegistry, a0 as defaultAgentRailTheme, a1 as defaultDarkAgentRailTheme, a2 as formatAgentStructuredToolInput, a3 as normalizeAgentPlacement, a5 as presentVisitorToolResult } from './panel-controller-CYoivbYB.cjs';
|
|
4
|
+
import 'zod';
|
|
4
5
|
|
|
5
6
|
type AgentWidgetProps = {
|
|
6
7
|
indexId: string;
|
|
@@ -20,6 +21,69 @@ type AgentWidgetProps = {
|
|
|
20
21
|
};
|
|
21
22
|
declare function AgentWidget({ indexId, customerId, getUnpublishedPreviewGrant, previewBuildId, version, runtimeOrigin, placement: placementInput, defaultCollapsed, pageShift, registerPanelController, colorScheme, branding, analytics, toolResultRegistry, }: AgentWidgetProps): react.JSX.Element;
|
|
22
23
|
|
|
24
|
+
declare function useAgentHandoff(options: {
|
|
25
|
+
enabled: boolean;
|
|
26
|
+
client: AgentClient;
|
|
27
|
+
sessionId: string | undefined;
|
|
28
|
+
onEvents: (events: AgentRuntimeHandoffEvent[]) => void;
|
|
29
|
+
onOwnership: () => void;
|
|
30
|
+
}): {
|
|
31
|
+
page: {
|
|
32
|
+
apiVersion: "webless.ai/agent-runtime-handoff/v1";
|
|
33
|
+
sessionId: string;
|
|
34
|
+
enabled: boolean;
|
|
35
|
+
status: "ai" | "requesting" | "queued" | "human" | "resolved" | "failed";
|
|
36
|
+
handoffId: string | null;
|
|
37
|
+
epoch: number;
|
|
38
|
+
after: number;
|
|
39
|
+
cursor: number;
|
|
40
|
+
hasMore: boolean;
|
|
41
|
+
events: ({
|
|
42
|
+
type: "status";
|
|
43
|
+
status: "ai" | "requesting" | "queued" | "human" | "resolved" | "failed";
|
|
44
|
+
actor: {
|
|
45
|
+
id: string;
|
|
46
|
+
name: string;
|
|
47
|
+
} | null;
|
|
48
|
+
id: string;
|
|
49
|
+
sequence: number;
|
|
50
|
+
handoffId: string;
|
|
51
|
+
epoch: number;
|
|
52
|
+
createdAt: string;
|
|
53
|
+
} | {
|
|
54
|
+
type: "visitor.message";
|
|
55
|
+
message: string;
|
|
56
|
+
operationId: string;
|
|
57
|
+
id: string;
|
|
58
|
+
sequence: number;
|
|
59
|
+
handoffId: string;
|
|
60
|
+
epoch: number;
|
|
61
|
+
createdAt: string;
|
|
62
|
+
} | {
|
|
63
|
+
type: "human.message";
|
|
64
|
+
message: string;
|
|
65
|
+
actor: {
|
|
66
|
+
id: string;
|
|
67
|
+
name: string;
|
|
68
|
+
};
|
|
69
|
+
id: string;
|
|
70
|
+
sequence: number;
|
|
71
|
+
handoffId: string;
|
|
72
|
+
epoch: number;
|
|
73
|
+
createdAt: string;
|
|
74
|
+
})[];
|
|
75
|
+
} | null;
|
|
76
|
+
busy: boolean;
|
|
77
|
+
error: string | null;
|
|
78
|
+
hasPending: boolean;
|
|
79
|
+
canReset: boolean;
|
|
80
|
+
blocksAI: boolean;
|
|
81
|
+
start: () => Promise<void>;
|
|
82
|
+
send: (message: string) => Promise<void>;
|
|
83
|
+
returnToAI: () => Promise<void>;
|
|
84
|
+
retry: () => Promise<void>;
|
|
85
|
+
};
|
|
86
|
+
|
|
23
87
|
declare function MessageActions({ answeredAt, copyText, disabled, onOpenReceipt, onRegenerate, onFeedback, readAloud, receiptSteps, speechText, }: {
|
|
24
88
|
answeredAt?: number;
|
|
25
89
|
copyText: string;
|
|
@@ -35,6 +99,7 @@ declare function MessageActions({ answeredAt, copyText, disabled, onOpenReceipt,
|
|
|
35
99
|
|
|
36
100
|
type AgentRailProps = {
|
|
37
101
|
state: AgentRailState;
|
|
102
|
+
handoff?: ReturnType<typeof useAgentHandoff>;
|
|
38
103
|
theme?: Partial<AgentRailTheme>;
|
|
39
104
|
colorScheme?: AgentColorScheme;
|
|
40
105
|
brandLabel?: string;
|
|
@@ -63,9 +128,10 @@ type AgentRailProps = {
|
|
|
63
128
|
onInputResponse?: (response: AgentInputResponse) => void;
|
|
64
129
|
onToolInput?: (surface: AgentToolUiSurface, values: Record<string, AgentToolResultJsonValue>) => void;
|
|
65
130
|
};
|
|
66
|
-
declare function AgentRail({ state, theme, colorScheme, brandLabel, brandLogoUrl, poweredByLabel, disclaimerLabel, disclaimerLink, answerReceipt, readAloud, composerPlaceholder, mobileFullscreen, expanded, onCollapse, onClose, onExpandToggle, onReset, onRetry, onRegenerate, onFeedback, onSubmit, onFollowUpSelect, onBook, onInputResponse, onToolInput, }: AgentRailProps): react.JSX.Element;
|
|
131
|
+
declare function AgentRail({ state, handoff, theme, colorScheme, brandLabel, brandLogoUrl, poweredByLabel, disclaimerLabel, disclaimerLink, answerReceipt, readAloud, composerPlaceholder, mobileFullscreen, expanded, onCollapse, onClose, onExpandToggle, onReset, onRetry, onRegenerate, onFeedback, onSubmit, onFollowUpSelect, onBook, onInputResponse, onToolInput, }: AgentRailProps): react.JSX.Element;
|
|
67
132
|
|
|
68
133
|
type UseAgentChatOptions = {
|
|
134
|
+
handoffEnabled?: boolean;
|
|
69
135
|
customerId?: string;
|
|
70
136
|
getUnpublishedPreviewGrant?: () => Promise<string>;
|
|
71
137
|
indexId: string;
|
|
@@ -82,7 +148,63 @@ type AgentChatSubmitOptions = {
|
|
|
82
148
|
runtimeText?: string;
|
|
83
149
|
declinedComposerFormId?: string;
|
|
84
150
|
};
|
|
85
|
-
declare function useAgentChat({ customerId, getUnpublishedPreviewGrant, indexId, previewBuildId, version, runtimeOrigin, visitorSessionId, storageKeyPrefix, greeting, toolResultRegistry, }: UseAgentChatOptions): {
|
|
151
|
+
declare function useAgentChat({ handoffEnabled, customerId, getUnpublishedPreviewGrant, indexId, previewBuildId, version, runtimeOrigin, visitorSessionId, storageKeyPrefix, greeting, toolResultRegistry, }: UseAgentChatOptions): {
|
|
152
|
+
handoff: {
|
|
153
|
+
page: {
|
|
154
|
+
apiVersion: "webless.ai/agent-runtime-handoff/v1";
|
|
155
|
+
sessionId: string;
|
|
156
|
+
enabled: boolean;
|
|
157
|
+
status: "ai" | "requesting" | "queued" | "human" | "resolved" | "failed";
|
|
158
|
+
handoffId: string | null;
|
|
159
|
+
epoch: number;
|
|
160
|
+
after: number;
|
|
161
|
+
cursor: number;
|
|
162
|
+
hasMore: boolean;
|
|
163
|
+
events: ({
|
|
164
|
+
type: "status";
|
|
165
|
+
status: "ai" | "requesting" | "queued" | "human" | "resolved" | "failed";
|
|
166
|
+
actor: {
|
|
167
|
+
id: string;
|
|
168
|
+
name: string;
|
|
169
|
+
} | null;
|
|
170
|
+
id: string;
|
|
171
|
+
sequence: number;
|
|
172
|
+
handoffId: string;
|
|
173
|
+
epoch: number;
|
|
174
|
+
createdAt: string;
|
|
175
|
+
} | {
|
|
176
|
+
type: "visitor.message";
|
|
177
|
+
message: string;
|
|
178
|
+
operationId: string;
|
|
179
|
+
id: string;
|
|
180
|
+
sequence: number;
|
|
181
|
+
handoffId: string;
|
|
182
|
+
epoch: number;
|
|
183
|
+
createdAt: string;
|
|
184
|
+
} | {
|
|
185
|
+
type: "human.message";
|
|
186
|
+
message: string;
|
|
187
|
+
actor: {
|
|
188
|
+
id: string;
|
|
189
|
+
name: string;
|
|
190
|
+
};
|
|
191
|
+
id: string;
|
|
192
|
+
sequence: number;
|
|
193
|
+
handoffId: string;
|
|
194
|
+
epoch: number;
|
|
195
|
+
createdAt: string;
|
|
196
|
+
})[];
|
|
197
|
+
} | null;
|
|
198
|
+
busy: boolean;
|
|
199
|
+
error: string | null;
|
|
200
|
+
hasPending: boolean;
|
|
201
|
+
canReset: boolean;
|
|
202
|
+
blocksAI: boolean;
|
|
203
|
+
start: () => Promise<void>;
|
|
204
|
+
send: (message: string) => Promise<void>;
|
|
205
|
+
returnToAI: () => Promise<void>;
|
|
206
|
+
retry: () => Promise<void>;
|
|
207
|
+
};
|
|
86
208
|
state: AgentRailState;
|
|
87
209
|
reset: () => void;
|
|
88
210
|
retry: () => Promise<void>;
|
package/dist/react.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import * as react from 'react';
|
|
2
|
-
import {
|
|
3
|
-
export { A as AGENT_STRUCTURED_TOOL_INPUT_HEADER, a as AGENT_STRUCTURED_TOOL_INPUT_SCHEMA_VERSION,
|
|
2
|
+
import { f as AgentIndexVersion, m as AgentPlacementConfig, e as AgentColorScheme, c as AgentBrandingConfig, b as AgentAnalyticsConfig, _ as VisitorToolResultRegistry, d as AgentClient, q as AgentRuntimeHandoffEvent, j as AgentMessageFeedback, T as ToolStep, o as AgentRailState, p as AgentRailTheme, K as ConversationMessage, l as AgentPanelSubmitOptions, i as AgentInputResponse, F as AgentToolUiSurface, y as AgentToolResultJsonValue, M as FollowUpSuggestion, n as AgentRailPhase, V as VisitorBooking, R as ResolvedVisitorToolResultPresentation } from './panel-controller-CYoivbYB.js';
|
|
3
|
+
export { A as AGENT_STRUCTURED_TOOL_INPUT_HEADER, a as AGENT_STRUCTURED_TOOL_INPUT_SCHEMA_VERSION, g as AgentInputOption, h as AgentInputRequest, r as AgentSearchReferences, s as AgentSearchSource, t as AgentStructuredToolInput, x as AgentToolResult, z as AgentToolUiAction, B as AgentToolUiField, C as AgentToolUiFieldKind, D as AgentToolUiOption, E as AgentToolUiStep, G as AssistEdgeTab, H as AssistTabSide, I as AssistTabVariant, J as Citation, L as DEFAULT_AGENT_PLACEMENT, N as JourneyContext, P as ToolStepState, Q as VisitorBookingResultPresentation, S as VisitorSearchResultPresentation, U as VisitorToolInputResultPresentation, W as VisitorToolResultLink, X as VisitorToolResultPresentation, Y as VisitorToolResultPresenter, Z as VisitorToolResultPresenterOutput, $ as builtInVisitorToolResultRegistry, a0 as defaultAgentRailTheme, a1 as defaultDarkAgentRailTheme, a2 as formatAgentStructuredToolInput, a3 as normalizeAgentPlacement, a5 as presentVisitorToolResult } from './panel-controller-CYoivbYB.js';
|
|
4
|
+
import 'zod';
|
|
4
5
|
|
|
5
6
|
type AgentWidgetProps = {
|
|
6
7
|
indexId: string;
|
|
@@ -20,6 +21,69 @@ type AgentWidgetProps = {
|
|
|
20
21
|
};
|
|
21
22
|
declare function AgentWidget({ indexId, customerId, getUnpublishedPreviewGrant, previewBuildId, version, runtimeOrigin, placement: placementInput, defaultCollapsed, pageShift, registerPanelController, colorScheme, branding, analytics, toolResultRegistry, }: AgentWidgetProps): react.JSX.Element;
|
|
22
23
|
|
|
24
|
+
declare function useAgentHandoff(options: {
|
|
25
|
+
enabled: boolean;
|
|
26
|
+
client: AgentClient;
|
|
27
|
+
sessionId: string | undefined;
|
|
28
|
+
onEvents: (events: AgentRuntimeHandoffEvent[]) => void;
|
|
29
|
+
onOwnership: () => void;
|
|
30
|
+
}): {
|
|
31
|
+
page: {
|
|
32
|
+
apiVersion: "webless.ai/agent-runtime-handoff/v1";
|
|
33
|
+
sessionId: string;
|
|
34
|
+
enabled: boolean;
|
|
35
|
+
status: "ai" | "requesting" | "queued" | "human" | "resolved" | "failed";
|
|
36
|
+
handoffId: string | null;
|
|
37
|
+
epoch: number;
|
|
38
|
+
after: number;
|
|
39
|
+
cursor: number;
|
|
40
|
+
hasMore: boolean;
|
|
41
|
+
events: ({
|
|
42
|
+
type: "status";
|
|
43
|
+
status: "ai" | "requesting" | "queued" | "human" | "resolved" | "failed";
|
|
44
|
+
actor: {
|
|
45
|
+
id: string;
|
|
46
|
+
name: string;
|
|
47
|
+
} | null;
|
|
48
|
+
id: string;
|
|
49
|
+
sequence: number;
|
|
50
|
+
handoffId: string;
|
|
51
|
+
epoch: number;
|
|
52
|
+
createdAt: string;
|
|
53
|
+
} | {
|
|
54
|
+
type: "visitor.message";
|
|
55
|
+
message: string;
|
|
56
|
+
operationId: string;
|
|
57
|
+
id: string;
|
|
58
|
+
sequence: number;
|
|
59
|
+
handoffId: string;
|
|
60
|
+
epoch: number;
|
|
61
|
+
createdAt: string;
|
|
62
|
+
} | {
|
|
63
|
+
type: "human.message";
|
|
64
|
+
message: string;
|
|
65
|
+
actor: {
|
|
66
|
+
id: string;
|
|
67
|
+
name: string;
|
|
68
|
+
};
|
|
69
|
+
id: string;
|
|
70
|
+
sequence: number;
|
|
71
|
+
handoffId: string;
|
|
72
|
+
epoch: number;
|
|
73
|
+
createdAt: string;
|
|
74
|
+
})[];
|
|
75
|
+
} | null;
|
|
76
|
+
busy: boolean;
|
|
77
|
+
error: string | null;
|
|
78
|
+
hasPending: boolean;
|
|
79
|
+
canReset: boolean;
|
|
80
|
+
blocksAI: boolean;
|
|
81
|
+
start: () => Promise<void>;
|
|
82
|
+
send: (message: string) => Promise<void>;
|
|
83
|
+
returnToAI: () => Promise<void>;
|
|
84
|
+
retry: () => Promise<void>;
|
|
85
|
+
};
|
|
86
|
+
|
|
23
87
|
declare function MessageActions({ answeredAt, copyText, disabled, onOpenReceipt, onRegenerate, onFeedback, readAloud, receiptSteps, speechText, }: {
|
|
24
88
|
answeredAt?: number;
|
|
25
89
|
copyText: string;
|
|
@@ -35,6 +99,7 @@ declare function MessageActions({ answeredAt, copyText, disabled, onOpenReceipt,
|
|
|
35
99
|
|
|
36
100
|
type AgentRailProps = {
|
|
37
101
|
state: AgentRailState;
|
|
102
|
+
handoff?: ReturnType<typeof useAgentHandoff>;
|
|
38
103
|
theme?: Partial<AgentRailTheme>;
|
|
39
104
|
colorScheme?: AgentColorScheme;
|
|
40
105
|
brandLabel?: string;
|
|
@@ -63,9 +128,10 @@ type AgentRailProps = {
|
|
|
63
128
|
onInputResponse?: (response: AgentInputResponse) => void;
|
|
64
129
|
onToolInput?: (surface: AgentToolUiSurface, values: Record<string, AgentToolResultJsonValue>) => void;
|
|
65
130
|
};
|
|
66
|
-
declare function AgentRail({ state, theme, colorScheme, brandLabel, brandLogoUrl, poweredByLabel, disclaimerLabel, disclaimerLink, answerReceipt, readAloud, composerPlaceholder, mobileFullscreen, expanded, onCollapse, onClose, onExpandToggle, onReset, onRetry, onRegenerate, onFeedback, onSubmit, onFollowUpSelect, onBook, onInputResponse, onToolInput, }: AgentRailProps): react.JSX.Element;
|
|
131
|
+
declare function AgentRail({ state, handoff, theme, colorScheme, brandLabel, brandLogoUrl, poweredByLabel, disclaimerLabel, disclaimerLink, answerReceipt, readAloud, composerPlaceholder, mobileFullscreen, expanded, onCollapse, onClose, onExpandToggle, onReset, onRetry, onRegenerate, onFeedback, onSubmit, onFollowUpSelect, onBook, onInputResponse, onToolInput, }: AgentRailProps): react.JSX.Element;
|
|
67
132
|
|
|
68
133
|
type UseAgentChatOptions = {
|
|
134
|
+
handoffEnabled?: boolean;
|
|
69
135
|
customerId?: string;
|
|
70
136
|
getUnpublishedPreviewGrant?: () => Promise<string>;
|
|
71
137
|
indexId: string;
|
|
@@ -82,7 +148,63 @@ type AgentChatSubmitOptions = {
|
|
|
82
148
|
runtimeText?: string;
|
|
83
149
|
declinedComposerFormId?: string;
|
|
84
150
|
};
|
|
85
|
-
declare function useAgentChat({ customerId, getUnpublishedPreviewGrant, indexId, previewBuildId, version, runtimeOrigin, visitorSessionId, storageKeyPrefix, greeting, toolResultRegistry, }: UseAgentChatOptions): {
|
|
151
|
+
declare function useAgentChat({ handoffEnabled, customerId, getUnpublishedPreviewGrant, indexId, previewBuildId, version, runtimeOrigin, visitorSessionId, storageKeyPrefix, greeting, toolResultRegistry, }: UseAgentChatOptions): {
|
|
152
|
+
handoff: {
|
|
153
|
+
page: {
|
|
154
|
+
apiVersion: "webless.ai/agent-runtime-handoff/v1";
|
|
155
|
+
sessionId: string;
|
|
156
|
+
enabled: boolean;
|
|
157
|
+
status: "ai" | "requesting" | "queued" | "human" | "resolved" | "failed";
|
|
158
|
+
handoffId: string | null;
|
|
159
|
+
epoch: number;
|
|
160
|
+
after: number;
|
|
161
|
+
cursor: number;
|
|
162
|
+
hasMore: boolean;
|
|
163
|
+
events: ({
|
|
164
|
+
type: "status";
|
|
165
|
+
status: "ai" | "requesting" | "queued" | "human" | "resolved" | "failed";
|
|
166
|
+
actor: {
|
|
167
|
+
id: string;
|
|
168
|
+
name: string;
|
|
169
|
+
} | null;
|
|
170
|
+
id: string;
|
|
171
|
+
sequence: number;
|
|
172
|
+
handoffId: string;
|
|
173
|
+
epoch: number;
|
|
174
|
+
createdAt: string;
|
|
175
|
+
} | {
|
|
176
|
+
type: "visitor.message";
|
|
177
|
+
message: string;
|
|
178
|
+
operationId: string;
|
|
179
|
+
id: string;
|
|
180
|
+
sequence: number;
|
|
181
|
+
handoffId: string;
|
|
182
|
+
epoch: number;
|
|
183
|
+
createdAt: string;
|
|
184
|
+
} | {
|
|
185
|
+
type: "human.message";
|
|
186
|
+
message: string;
|
|
187
|
+
actor: {
|
|
188
|
+
id: string;
|
|
189
|
+
name: string;
|
|
190
|
+
};
|
|
191
|
+
id: string;
|
|
192
|
+
sequence: number;
|
|
193
|
+
handoffId: string;
|
|
194
|
+
epoch: number;
|
|
195
|
+
createdAt: string;
|
|
196
|
+
})[];
|
|
197
|
+
} | null;
|
|
198
|
+
busy: boolean;
|
|
199
|
+
error: string | null;
|
|
200
|
+
hasPending: boolean;
|
|
201
|
+
canReset: boolean;
|
|
202
|
+
blocksAI: boolean;
|
|
203
|
+
start: () => Promise<void>;
|
|
204
|
+
send: (message: string) => Promise<void>;
|
|
205
|
+
returnToAI: () => Promise<void>;
|
|
206
|
+
retry: () => Promise<void>;
|
|
207
|
+
};
|
|
86
208
|
state: AgentRailState;
|
|
87
209
|
reset: () => void;
|
|
88
210
|
retry: () => Promise<void>;
|
package/dist/react.js
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
|
|
1
3
|
declare const AGENT_TOOL_UI_SCHEMA_VERSION: "webless.tool-ui.v1";
|
|
2
4
|
declare const AGENT_STRUCTURED_TOOL_INPUT_SCHEMA_VERSION: "webless.structured-tool-input.v1";
|
|
3
5
|
declare const AGENT_STRUCTURED_TOOL_INPUT_HEADER: "Webless-Structured-Tool-Input-JSON:";
|
|
@@ -66,6 +68,135 @@ type AgentToolResultEnvelope = {
|
|
|
66
68
|
};
|
|
67
69
|
declare function parseAgentToolResultEnvelope(value: unknown): AgentToolResultEnvelope | null;
|
|
68
70
|
|
|
71
|
+
declare const agentRuntimeHandoffStatusSchema: z.ZodEnum<{
|
|
72
|
+
ai: "ai";
|
|
73
|
+
requesting: "requesting";
|
|
74
|
+
queued: "queued";
|
|
75
|
+
human: "human";
|
|
76
|
+
resolved: "resolved";
|
|
77
|
+
failed: "failed";
|
|
78
|
+
}>;
|
|
79
|
+
declare const agentRuntimeHandoffEventSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
80
|
+
type: z.ZodLiteral<"status">;
|
|
81
|
+
status: z.ZodEnum<{
|
|
82
|
+
ai: "ai";
|
|
83
|
+
requesting: "requesting";
|
|
84
|
+
queued: "queued";
|
|
85
|
+
human: "human";
|
|
86
|
+
resolved: "resolved";
|
|
87
|
+
failed: "failed";
|
|
88
|
+
}>;
|
|
89
|
+
actor: z.ZodNullable<z.ZodObject<{
|
|
90
|
+
id: z.ZodString;
|
|
91
|
+
name: z.ZodString;
|
|
92
|
+
}, z.core.$strict>>;
|
|
93
|
+
id: z.ZodString;
|
|
94
|
+
sequence: z.ZodNumber;
|
|
95
|
+
handoffId: z.ZodString;
|
|
96
|
+
epoch: z.ZodNumber;
|
|
97
|
+
createdAt: z.ZodISODateTime;
|
|
98
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
99
|
+
type: z.ZodLiteral<"visitor.message">;
|
|
100
|
+
message: z.ZodString;
|
|
101
|
+
operationId: z.ZodString;
|
|
102
|
+
id: z.ZodString;
|
|
103
|
+
sequence: z.ZodNumber;
|
|
104
|
+
handoffId: z.ZodString;
|
|
105
|
+
epoch: z.ZodNumber;
|
|
106
|
+
createdAt: z.ZodISODateTime;
|
|
107
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
108
|
+
type: z.ZodLiteral<"human.message">;
|
|
109
|
+
message: z.ZodString;
|
|
110
|
+
actor: z.ZodObject<{
|
|
111
|
+
id: z.ZodString;
|
|
112
|
+
name: z.ZodString;
|
|
113
|
+
}, z.core.$strict>;
|
|
114
|
+
id: z.ZodString;
|
|
115
|
+
sequence: z.ZodNumber;
|
|
116
|
+
handoffId: z.ZodString;
|
|
117
|
+
epoch: z.ZodNumber;
|
|
118
|
+
createdAt: z.ZodISODateTime;
|
|
119
|
+
}, z.core.$strict>], "type">;
|
|
120
|
+
declare const agentRuntimeHandoffPageSchema: z.ZodObject<{
|
|
121
|
+
apiVersion: z.ZodLiteral<"webless.ai/agent-runtime-handoff/v1">;
|
|
122
|
+
sessionId: z.ZodString;
|
|
123
|
+
enabled: z.ZodBoolean;
|
|
124
|
+
status: z.ZodEnum<{
|
|
125
|
+
ai: "ai";
|
|
126
|
+
requesting: "requesting";
|
|
127
|
+
queued: "queued";
|
|
128
|
+
human: "human";
|
|
129
|
+
resolved: "resolved";
|
|
130
|
+
failed: "failed";
|
|
131
|
+
}>;
|
|
132
|
+
handoffId: z.ZodNullable<z.ZodString>;
|
|
133
|
+
epoch: z.ZodNumber;
|
|
134
|
+
after: z.ZodNumber;
|
|
135
|
+
cursor: z.ZodNumber;
|
|
136
|
+
hasMore: z.ZodBoolean;
|
|
137
|
+
events: z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
138
|
+
type: z.ZodLiteral<"status">;
|
|
139
|
+
status: z.ZodEnum<{
|
|
140
|
+
ai: "ai";
|
|
141
|
+
requesting: "requesting";
|
|
142
|
+
queued: "queued";
|
|
143
|
+
human: "human";
|
|
144
|
+
resolved: "resolved";
|
|
145
|
+
failed: "failed";
|
|
146
|
+
}>;
|
|
147
|
+
actor: z.ZodNullable<z.ZodObject<{
|
|
148
|
+
id: z.ZodString;
|
|
149
|
+
name: z.ZodString;
|
|
150
|
+
}, z.core.$strict>>;
|
|
151
|
+
id: z.ZodString;
|
|
152
|
+
sequence: z.ZodNumber;
|
|
153
|
+
handoffId: z.ZodString;
|
|
154
|
+
epoch: z.ZodNumber;
|
|
155
|
+
createdAt: z.ZodISODateTime;
|
|
156
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
157
|
+
type: z.ZodLiteral<"visitor.message">;
|
|
158
|
+
message: z.ZodString;
|
|
159
|
+
operationId: z.ZodString;
|
|
160
|
+
id: z.ZodString;
|
|
161
|
+
sequence: z.ZodNumber;
|
|
162
|
+
handoffId: z.ZodString;
|
|
163
|
+
epoch: z.ZodNumber;
|
|
164
|
+
createdAt: z.ZodISODateTime;
|
|
165
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
166
|
+
type: z.ZodLiteral<"human.message">;
|
|
167
|
+
message: z.ZodString;
|
|
168
|
+
actor: z.ZodObject<{
|
|
169
|
+
id: z.ZodString;
|
|
170
|
+
name: z.ZodString;
|
|
171
|
+
}, z.core.$strict>;
|
|
172
|
+
id: z.ZodString;
|
|
173
|
+
sequence: z.ZodNumber;
|
|
174
|
+
handoffId: z.ZodString;
|
|
175
|
+
epoch: z.ZodNumber;
|
|
176
|
+
createdAt: z.ZodISODateTime;
|
|
177
|
+
}, z.core.$strict>], "type">>;
|
|
178
|
+
}, z.core.$strict>;
|
|
179
|
+
type AgentRuntimeHandoffStatus = z.infer<typeof agentRuntimeHandoffStatusSchema>;
|
|
180
|
+
type AgentRuntimeHandoffEvent = z.infer<typeof agentRuntimeHandoffEventSchema>;
|
|
181
|
+
type AgentRuntimeHandoffPage = z.infer<typeof agentRuntimeHandoffPageSchema>;
|
|
182
|
+
|
|
183
|
+
type AgentHandoffCommand = {
|
|
184
|
+
operationId: string;
|
|
185
|
+
handoffId: string;
|
|
186
|
+
epoch: number;
|
|
187
|
+
};
|
|
188
|
+
type AgentHandoffClient = {
|
|
189
|
+
read(options?: {
|
|
190
|
+
after?: number;
|
|
191
|
+
signal?: AbortSignal;
|
|
192
|
+
}): Promise<AgentRuntimeHandoffPage>;
|
|
193
|
+
start(operationId: string, signal?: AbortSignal): Promise<void>;
|
|
194
|
+
send(command: AgentHandoffCommand & {
|
|
195
|
+
message: string;
|
|
196
|
+
}, signal?: AbortSignal): Promise<void>;
|
|
197
|
+
returnToAI(command: AgentHandoffCommand, signal?: AbortSignal): Promise<void>;
|
|
198
|
+
};
|
|
199
|
+
|
|
69
200
|
type AgentIndexVersion = "published" | "unpublished";
|
|
70
201
|
type AgentRuntimeConfig = {
|
|
71
202
|
origin: string;
|
|
@@ -163,6 +294,7 @@ type AgentClientOptions = {
|
|
|
163
294
|
storageKeyPrefix?: string;
|
|
164
295
|
};
|
|
165
296
|
type AgentClient = {
|
|
297
|
+
readonly handoff: AgentHandoffClient;
|
|
166
298
|
readonly indexId: string;
|
|
167
299
|
readonly version: AgentIndexVersion;
|
|
168
300
|
readonly runtimeOrigin: string;
|
|
@@ -180,4 +312,4 @@ type AgentHealthResult = {
|
|
|
180
312
|
detail: string;
|
|
181
313
|
};
|
|
182
314
|
|
|
183
|
-
export { AGENT_STRUCTURED_TOOL_INPUT_HEADER as A,
|
|
315
|
+
export { AGENT_STRUCTURED_TOOL_INPUT_HEADER as A, type AgentToolUiOption as B, type AgentToolUiStep as C, type AgentToolUiSurface as D, type AgentWorkItem as E, formatAgentStructuredToolInput as F, parseAgentToolResultEnvelope as G, parseAgentToolUiSurface as H, type PersistedAgentSession as P, AGENT_STRUCTURED_TOOL_INPUT_SCHEMA_VERSION as a, AGENT_TOOL_UI_SCHEMA_VERSION as b, type AgentClient as c, type AgentClientOptions as d, type AgentHandoffClient as e, type AgentHandoffCommand as f, type AgentHealthResult as g, type AgentIndexVersion as h, type AgentInputOption as i, type AgentInputRequest as j, type AgentInputResponse as k, type AgentRespondTurnOptions as l, type AgentResumeTurnOptions as m, type AgentRuntimeConfig as n, type AgentRuntimeHandoffEvent as o, type AgentRuntimeHandoffPage as p, type AgentRuntimeHandoffStatus as q, type AgentSendTurnOptions as r, type AgentStreamHandlers as s, type AgentStructuredToolInput as t, type AgentToolResult as u, type AgentToolResultEnvelope as v, type AgentToolResultJsonValue as w, type AgentToolUiAction as x, type AgentToolUiField as y, type AgentToolUiFieldKind as z };
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
|
|
1
3
|
declare const AGENT_TOOL_UI_SCHEMA_VERSION: "webless.tool-ui.v1";
|
|
2
4
|
declare const AGENT_STRUCTURED_TOOL_INPUT_SCHEMA_VERSION: "webless.structured-tool-input.v1";
|
|
3
5
|
declare const AGENT_STRUCTURED_TOOL_INPUT_HEADER: "Webless-Structured-Tool-Input-JSON:";
|
|
@@ -66,6 +68,135 @@ type AgentToolResultEnvelope = {
|
|
|
66
68
|
};
|
|
67
69
|
declare function parseAgentToolResultEnvelope(value: unknown): AgentToolResultEnvelope | null;
|
|
68
70
|
|
|
71
|
+
declare const agentRuntimeHandoffStatusSchema: z.ZodEnum<{
|
|
72
|
+
ai: "ai";
|
|
73
|
+
requesting: "requesting";
|
|
74
|
+
queued: "queued";
|
|
75
|
+
human: "human";
|
|
76
|
+
resolved: "resolved";
|
|
77
|
+
failed: "failed";
|
|
78
|
+
}>;
|
|
79
|
+
declare const agentRuntimeHandoffEventSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
80
|
+
type: z.ZodLiteral<"status">;
|
|
81
|
+
status: z.ZodEnum<{
|
|
82
|
+
ai: "ai";
|
|
83
|
+
requesting: "requesting";
|
|
84
|
+
queued: "queued";
|
|
85
|
+
human: "human";
|
|
86
|
+
resolved: "resolved";
|
|
87
|
+
failed: "failed";
|
|
88
|
+
}>;
|
|
89
|
+
actor: z.ZodNullable<z.ZodObject<{
|
|
90
|
+
id: z.ZodString;
|
|
91
|
+
name: z.ZodString;
|
|
92
|
+
}, z.core.$strict>>;
|
|
93
|
+
id: z.ZodString;
|
|
94
|
+
sequence: z.ZodNumber;
|
|
95
|
+
handoffId: z.ZodString;
|
|
96
|
+
epoch: z.ZodNumber;
|
|
97
|
+
createdAt: z.ZodISODateTime;
|
|
98
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
99
|
+
type: z.ZodLiteral<"visitor.message">;
|
|
100
|
+
message: z.ZodString;
|
|
101
|
+
operationId: z.ZodString;
|
|
102
|
+
id: z.ZodString;
|
|
103
|
+
sequence: z.ZodNumber;
|
|
104
|
+
handoffId: z.ZodString;
|
|
105
|
+
epoch: z.ZodNumber;
|
|
106
|
+
createdAt: z.ZodISODateTime;
|
|
107
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
108
|
+
type: z.ZodLiteral<"human.message">;
|
|
109
|
+
message: z.ZodString;
|
|
110
|
+
actor: z.ZodObject<{
|
|
111
|
+
id: z.ZodString;
|
|
112
|
+
name: z.ZodString;
|
|
113
|
+
}, z.core.$strict>;
|
|
114
|
+
id: z.ZodString;
|
|
115
|
+
sequence: z.ZodNumber;
|
|
116
|
+
handoffId: z.ZodString;
|
|
117
|
+
epoch: z.ZodNumber;
|
|
118
|
+
createdAt: z.ZodISODateTime;
|
|
119
|
+
}, z.core.$strict>], "type">;
|
|
120
|
+
declare const agentRuntimeHandoffPageSchema: z.ZodObject<{
|
|
121
|
+
apiVersion: z.ZodLiteral<"webless.ai/agent-runtime-handoff/v1">;
|
|
122
|
+
sessionId: z.ZodString;
|
|
123
|
+
enabled: z.ZodBoolean;
|
|
124
|
+
status: z.ZodEnum<{
|
|
125
|
+
ai: "ai";
|
|
126
|
+
requesting: "requesting";
|
|
127
|
+
queued: "queued";
|
|
128
|
+
human: "human";
|
|
129
|
+
resolved: "resolved";
|
|
130
|
+
failed: "failed";
|
|
131
|
+
}>;
|
|
132
|
+
handoffId: z.ZodNullable<z.ZodString>;
|
|
133
|
+
epoch: z.ZodNumber;
|
|
134
|
+
after: z.ZodNumber;
|
|
135
|
+
cursor: z.ZodNumber;
|
|
136
|
+
hasMore: z.ZodBoolean;
|
|
137
|
+
events: z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
138
|
+
type: z.ZodLiteral<"status">;
|
|
139
|
+
status: z.ZodEnum<{
|
|
140
|
+
ai: "ai";
|
|
141
|
+
requesting: "requesting";
|
|
142
|
+
queued: "queued";
|
|
143
|
+
human: "human";
|
|
144
|
+
resolved: "resolved";
|
|
145
|
+
failed: "failed";
|
|
146
|
+
}>;
|
|
147
|
+
actor: z.ZodNullable<z.ZodObject<{
|
|
148
|
+
id: z.ZodString;
|
|
149
|
+
name: z.ZodString;
|
|
150
|
+
}, z.core.$strict>>;
|
|
151
|
+
id: z.ZodString;
|
|
152
|
+
sequence: z.ZodNumber;
|
|
153
|
+
handoffId: z.ZodString;
|
|
154
|
+
epoch: z.ZodNumber;
|
|
155
|
+
createdAt: z.ZodISODateTime;
|
|
156
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
157
|
+
type: z.ZodLiteral<"visitor.message">;
|
|
158
|
+
message: z.ZodString;
|
|
159
|
+
operationId: z.ZodString;
|
|
160
|
+
id: z.ZodString;
|
|
161
|
+
sequence: z.ZodNumber;
|
|
162
|
+
handoffId: z.ZodString;
|
|
163
|
+
epoch: z.ZodNumber;
|
|
164
|
+
createdAt: z.ZodISODateTime;
|
|
165
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
166
|
+
type: z.ZodLiteral<"human.message">;
|
|
167
|
+
message: z.ZodString;
|
|
168
|
+
actor: z.ZodObject<{
|
|
169
|
+
id: z.ZodString;
|
|
170
|
+
name: z.ZodString;
|
|
171
|
+
}, z.core.$strict>;
|
|
172
|
+
id: z.ZodString;
|
|
173
|
+
sequence: z.ZodNumber;
|
|
174
|
+
handoffId: z.ZodString;
|
|
175
|
+
epoch: z.ZodNumber;
|
|
176
|
+
createdAt: z.ZodISODateTime;
|
|
177
|
+
}, z.core.$strict>], "type">>;
|
|
178
|
+
}, z.core.$strict>;
|
|
179
|
+
type AgentRuntimeHandoffStatus = z.infer<typeof agentRuntimeHandoffStatusSchema>;
|
|
180
|
+
type AgentRuntimeHandoffEvent = z.infer<typeof agentRuntimeHandoffEventSchema>;
|
|
181
|
+
type AgentRuntimeHandoffPage = z.infer<typeof agentRuntimeHandoffPageSchema>;
|
|
182
|
+
|
|
183
|
+
type AgentHandoffCommand = {
|
|
184
|
+
operationId: string;
|
|
185
|
+
handoffId: string;
|
|
186
|
+
epoch: number;
|
|
187
|
+
};
|
|
188
|
+
type AgentHandoffClient = {
|
|
189
|
+
read(options?: {
|
|
190
|
+
after?: number;
|
|
191
|
+
signal?: AbortSignal;
|
|
192
|
+
}): Promise<AgentRuntimeHandoffPage>;
|
|
193
|
+
start(operationId: string, signal?: AbortSignal): Promise<void>;
|
|
194
|
+
send(command: AgentHandoffCommand & {
|
|
195
|
+
message: string;
|
|
196
|
+
}, signal?: AbortSignal): Promise<void>;
|
|
197
|
+
returnToAI(command: AgentHandoffCommand, signal?: AbortSignal): Promise<void>;
|
|
198
|
+
};
|
|
199
|
+
|
|
69
200
|
type AgentIndexVersion = "published" | "unpublished";
|
|
70
201
|
type AgentRuntimeConfig = {
|
|
71
202
|
origin: string;
|
|
@@ -163,6 +294,7 @@ type AgentClientOptions = {
|
|
|
163
294
|
storageKeyPrefix?: string;
|
|
164
295
|
};
|
|
165
296
|
type AgentClient = {
|
|
297
|
+
readonly handoff: AgentHandoffClient;
|
|
166
298
|
readonly indexId: string;
|
|
167
299
|
readonly version: AgentIndexVersion;
|
|
168
300
|
readonly runtimeOrigin: string;
|
|
@@ -180,4 +312,4 @@ type AgentHealthResult = {
|
|
|
180
312
|
detail: string;
|
|
181
313
|
};
|
|
182
314
|
|
|
183
|
-
export { AGENT_STRUCTURED_TOOL_INPUT_HEADER as A,
|
|
315
|
+
export { AGENT_STRUCTURED_TOOL_INPUT_HEADER as A, type AgentToolUiOption as B, type AgentToolUiStep as C, type AgentToolUiSurface as D, type AgentWorkItem as E, formatAgentStructuredToolInput as F, parseAgentToolResultEnvelope as G, parseAgentToolUiSurface as H, type PersistedAgentSession as P, AGENT_STRUCTURED_TOOL_INPUT_SCHEMA_VERSION as a, AGENT_TOOL_UI_SCHEMA_VERSION as b, type AgentClient as c, type AgentClientOptions as d, type AgentHandoffClient as e, type AgentHandoffCommand as f, type AgentHealthResult as g, type AgentIndexVersion as h, type AgentInputOption as i, type AgentInputRequest as j, type AgentInputResponse as k, type AgentRespondTurnOptions as l, type AgentResumeTurnOptions as m, type AgentRuntimeConfig as n, type AgentRuntimeHandoffEvent as o, type AgentRuntimeHandoffPage as p, type AgentRuntimeHandoffStatus as q, type AgentSendTurnOptions as r, type AgentStreamHandlers as s, type AgentStructuredToolInput as t, type AgentToolResult as u, type AgentToolResultEnvelope as v, type AgentToolResultJsonValue as w, type AgentToolUiAction as x, type AgentToolUiField as y, type AgentToolUiFieldKind as z };
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@webless/agent",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.12.0",
|
|
4
4
|
"description": "Webless Agent SDK — Eve runtime client, React UI, and embed bundle.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "MIT",
|
|
@@ -52,7 +52,8 @@
|
|
|
52
52
|
"dependencies": {
|
|
53
53
|
"esbuild": "^0.28.1",
|
|
54
54
|
"eve": "0.40.0",
|
|
55
|
-
"streamdown": "^2.6.0"
|
|
55
|
+
"streamdown": "^2.6.0",
|
|
56
|
+
"zod": "^4.6.2"
|
|
56
57
|
},
|
|
57
58
|
"peerDependencies": {
|
|
58
59
|
"react": ">=18",
|