@truefoundry/assistant-ui-runtime 0.1.5 → 0.1.6-rc.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/README.md +374 -190
- package/dist/index.d.ts +32 -29
- package/dist/index.js +330 -236
- package/dist/index.js.map +1 -1
- package/dist/plugins/truefoundry-agent-server-adapter/index.d.ts +30 -0
- package/dist/plugins/truefoundry-agent-server-adapter/index.js +198 -0
- package/dist/plugins/truefoundry-agent-server-adapter/index.js.map +1 -0
- package/dist/types-VUBzoJT2.d.ts +462 -0
- package/package.json +10 -2
- package/src/askUserQuestion.ts +3 -3
- package/src/buildEditedUserMessageContent.test.ts +2 -2
- package/src/collectPending.ts +1 -1
- package/src/convertTurnMessages.test.ts +141 -196
- package/src/convertTurnMessages.ts +130 -76
- package/src/createSubAgent.ts +1 -1
- package/src/draftAgentConfig.test.ts +26 -29
- package/src/extractTurnUserText.ts +1 -1
- package/src/foldPeerThreads.test.ts +1 -1
- package/src/foldPeerThreads.ts +3 -2
- package/src/index.ts +39 -4
- package/src/listPages.ts +21 -0
- package/src/loadSessionSnapshot.test.ts +9 -8
- package/src/loadSessionSnapshot.ts +9 -14
- package/src/mcpAuth.ts +6 -3
- package/src/messageCustomMetadata.ts +1 -1
- package/src/modelMessageContent.ts +1 -1
- package/src/modelMessageImageContent.test.ts +1 -1
- package/src/modelMessageImageContent.ts +7 -6
- package/src/plugins/truefoundry-agent-server-adapter/index.ts +285 -0
- package/src/private/agentSpec.ts +8 -3
- package/src/private/draftSessionBridge.ts +14 -13
- package/src/private/truefoundryDraftThreadListAdapter.test.ts +44 -49
- package/src/private/truefoundryDraftThreadListAdapter.ts +22 -16
- package/src/requiredActionInputs.ts +1 -1
- package/src/requiredActionsFromActiveUpdate.test.ts +1 -1
- package/src/server/eventUtils.ts +120 -0
- package/src/server/events.ts +246 -0
- package/src/server/index.ts +66 -0
- package/src/server/types.ts +313 -0
- package/src/sessionSnapshot.ts +1 -1
- package/src/sessions.ts +5 -21
- package/src/streamTurn.test.ts +172 -155
- package/src/streamTurn.ts +51 -48
- package/src/toolApproval.ts +4 -4
- package/src/toolResponse.ts +4 -4
- package/src/truefoundryExtras.ts +1 -1
- package/src/truefoundryOwnedSessionsThreadListAdapter.test.ts +26 -29
- package/src/truefoundryOwnedSessionsThreadListAdapter.ts +18 -23
- package/src/truefoundryThreadListAdapter.test.ts +16 -18
- package/src/truefoundryThreadListAdapter.ts +7 -7
- package/src/turnEventHelpers.ts +1 -1
- package/src/types.ts +2 -16
- package/src/useTrueFoundryAgentMessages.test.tsx +38 -70
- package/src/useTrueFoundryAgentMessages.ts +32 -44
- package/src/useTrueFoundryAgentRuntime.ts +11 -28
- package/src/private/bindDraftAgentSession.test.ts +0 -54
- package/src/private/bindDraftAgentSession.ts +0 -28
- package/src/private/getGatewayFromPrivateClient.ts +0 -13
package/dist/index.d.ts
CHANGED
|
@@ -1,15 +1,14 @@
|
|
|
1
1
|
import * as _assistant_ui_core from '@assistant-ui/core';
|
|
2
2
|
import { ExternalStoreSharedOptions, AttachmentAdapter, SpeechSynthesisAdapter, DictationAdapter, RealtimeVoiceAdapter, FeedbackAdapter, ThreadAssistantMessagePart, ThreadMessage, AppendMessage, ExportedMessageRepositoryItem, RemoteThreadListAdapter } from '@assistant-ui/core';
|
|
3
|
-
import
|
|
4
|
-
|
|
5
|
-
export { SandboxCreatedEvent } from 'truefoundry-gateway-sdk/agents';
|
|
6
|
-
import { PrivateAgentSessionClient } from 'truefoundry-gateway-sdk/agents/private';
|
|
7
|
-
export { AgentDraftSession, PrivateAgentSessionClient } from 'truefoundry-gateway-sdk/agents/private';
|
|
8
|
-
import { TruefoundryGatewayApi } from 'truefoundry-gateway-sdk';
|
|
3
|
+
import { A as AgentSpec, a as AgentChatServer, T as TurnStreamingEvent, D as DeltaEvents, b as TurnEvent, c as ThreadCreatedEvent, U as UserToolResponseEvent, M as McpAuthRequiredEvent, d as UserToolApprovalEvent, e as Turn, f as TurnInputItem, S as Session } from './types-VUBzoJT2.js';
|
|
4
|
+
export { g as AgentBuilderServer, C as CreateSessionRequest, L as ListResult, h as ListSessionsParams, i as ModelMessageEvent, P as PreviousTurnIdInput, j as SandboxCreatedEvent, k as SessionEventItem, l as ToolApprovalRequiredEvent, m as ToolCall, n as ToolResponseRequiredEvent, o as TurnState, p as TurnStateDone, q as TurnStreamData, r as UpdateSessionRequest, s as UserMessage } from './types-VUBzoJT2.js';
|
|
9
5
|
import * as _assistant_ui_core_internal from '@assistant-ui/core/internal';
|
|
10
6
|
|
|
11
|
-
|
|
12
|
-
type DraftSession =
|
|
7
|
+
/** @deprecated Use Session with isMutable: true instead. Kept for title helper. */
|
|
8
|
+
type DraftSession = {
|
|
9
|
+
title?: string | null;
|
|
10
|
+
agentSpec: AgentSpec;
|
|
11
|
+
};
|
|
13
12
|
type AgentSpecUpdate = {
|
|
14
13
|
instructions?: string;
|
|
15
14
|
model?: Partial<AgentSpec["model"]> & {
|
|
@@ -36,7 +35,7 @@ type DraftAgentConfig = {
|
|
|
36
35
|
};
|
|
37
36
|
type TrueFoundryAgentConfig = NamedAgentConfig | DraftAgentConfig;
|
|
38
37
|
type TrueFoundryAgentRuntimeBaseOptions = ExternalStoreSharedOptions & {
|
|
39
|
-
|
|
38
|
+
server: AgentChatServer;
|
|
40
39
|
initialSessionId?: string | undefined;
|
|
41
40
|
threadId?: string | undefined;
|
|
42
41
|
onThreadIdChange?: ((threadId: string | undefined) => void) | undefined;
|
|
@@ -55,15 +54,23 @@ type UseTrueFoundryAgentRuntimeOptions = TrueFoundryAgentRuntimeBaseOptions & {
|
|
|
55
54
|
agent?: TrueFoundryAgentConfig | undefined;
|
|
56
55
|
/** Legacy named-agent shorthand. Prefer `agent: { mode: "named", agentName }`. */
|
|
57
56
|
agentName?: string | undefined;
|
|
58
|
-
/**
|
|
59
|
-
* Required when `agent.mode === "draft"`. Also used for sandbox file downloads
|
|
60
|
-
* (named or draft).
|
|
61
|
-
*/
|
|
62
|
-
privateClient?: PrivateAgentSessionClient | undefined;
|
|
63
57
|
};
|
|
64
58
|
|
|
65
59
|
declare function useTrueFoundryAgentRuntime(options: UseTrueFoundryAgentRuntimeOptions): _assistant_ui_core.AssistantRuntime;
|
|
66
60
|
|
|
61
|
+
/**
|
|
62
|
+
* Local implementations of streaming delta helpers.
|
|
63
|
+
* Formerly imported from truefoundry-gateway-sdk/agents.
|
|
64
|
+
*/
|
|
65
|
+
|
|
66
|
+
/** True for `.delta` streaming events. */
|
|
67
|
+
declare function isEventDelta(event: TurnStreamingEvent): event is DeltaEvents;
|
|
68
|
+
/**
|
|
69
|
+
* Merge `delta` into `base` in place (same `id` required).
|
|
70
|
+
* Currently handles `model.message.delta` → `model.message`.
|
|
71
|
+
*/
|
|
72
|
+
declare function mergeEventDelta(base: TurnEvent, delta: DeltaEvents): void;
|
|
73
|
+
|
|
67
74
|
type AssistantContentPart = ThreadAssistantMessagePart;
|
|
68
75
|
|
|
69
76
|
/** Gateway root thread id — always the literal `"main"`. */
|
|
@@ -157,8 +164,8 @@ type ConvertTurnsResult = {
|
|
|
157
164
|
runningTurn?: Turn;
|
|
158
165
|
unstable_resume?: boolean;
|
|
159
166
|
};
|
|
160
|
-
declare function buildTurnAssistantContent(turn: Pick<Turn, "
|
|
161
|
-
declare function convertTurnsToThreadMessages(
|
|
167
|
+
declare function buildTurnAssistantContent(server: AgentChatServer, sessionId: string, turn: Pick<Turn, "id" | "state">, foldState?: PeerThreadFoldState): Promise<AssistantContentPart[]>;
|
|
168
|
+
declare function convertTurnsToThreadMessages(server: AgentChatServer, sessionId: string): Promise<ConvertTurnsResult>;
|
|
162
169
|
declare function getTurnMessageContent(message: AppendMessage): string;
|
|
163
170
|
/**
|
|
164
171
|
* Gateway `user.message` content (string for text-only, or text/file parts).
|
|
@@ -183,24 +190,24 @@ declare function buildEditedUserMessageContent(editedText: string, originalInput
|
|
|
183
190
|
declare function repositoryItemsFromMessages(messages: readonly ThreadMessage[]): ExportedMessageRepositoryItem[];
|
|
184
191
|
|
|
185
192
|
declare function createTrueFoundryDraftThreadListAdapter(options: {
|
|
186
|
-
|
|
193
|
+
server: AgentChatServer;
|
|
187
194
|
defaultAgentSpec: AgentSpec;
|
|
188
195
|
getAgentSpec?: () => AgentSpec;
|
|
189
196
|
}): RemoteThreadListAdapter;
|
|
190
197
|
|
|
191
198
|
/**
|
|
192
|
-
* Read-only thread-list adapter backed by `
|
|
193
|
-
*
|
|
199
|
+
* Read-only thread-list adapter backed by `AgentChatServer.listSessions`.
|
|
200
|
+
* Hosts that previously used listOwnedSessions should filter in their server impl.
|
|
194
201
|
*/
|
|
195
202
|
declare function createTrueFoundryOwnedSessionsThreadListAdapter(options: {
|
|
196
|
-
|
|
203
|
+
server: AgentChatServer;
|
|
197
204
|
}): RemoteThreadListAdapter;
|
|
198
205
|
|
|
199
206
|
type DraftSessionBridge = {
|
|
200
207
|
syncAgentSpec: (draftSessionId: string, agentSpec: AgentSpec) => Promise<string>;
|
|
201
208
|
getDraftAgentSpec: (draftSessionId: string) => Promise<AgentSpec>;
|
|
202
209
|
};
|
|
203
|
-
declare function createDraftSessionBridge(
|
|
210
|
+
declare function createDraftSessionBridge(server: AgentChatServer): DraftSessionBridge;
|
|
204
211
|
|
|
205
212
|
type PendingApproval = {
|
|
206
213
|
approvalId: string;
|
|
@@ -260,7 +267,7 @@ declare const useTrueFoundryToolResponses: () => {
|
|
|
260
267
|
/** Pending MCP OAuth plus a resume action. */
|
|
261
268
|
declare const useTrueFoundryMcpAuth: () => {
|
|
262
269
|
pending: {
|
|
263
|
-
mcpServers:
|
|
270
|
+
mcpServers: McpAuthRequiredEvent["mcpServers"];
|
|
264
271
|
} | null;
|
|
265
272
|
resume: () => Promise<void>;
|
|
266
273
|
};
|
|
@@ -305,16 +312,12 @@ declare function findPausedAssistantMessage(messages: readonly ThreadMessage[]):
|
|
|
305
312
|
}> | undefined;
|
|
306
313
|
|
|
307
314
|
declare function createTrueFoundryThreadListAdapter(options: {
|
|
308
|
-
|
|
315
|
+
server: AgentChatServer;
|
|
309
316
|
agentName: string;
|
|
310
317
|
}): RemoteThreadListAdapter;
|
|
311
318
|
|
|
312
|
-
type GetSessionOptions = {
|
|
313
|
-
/** When set, validates the draft and binds turns via PrivateAgentSessionClient. */
|
|
314
|
-
privateClient?: PrivateAgentSessionClient;
|
|
315
|
-
};
|
|
316
319
|
/** `sessionId` is the assistant-ui thread `remoteId` from `RemoteThreadListAdapter.initialize`. */
|
|
317
|
-
declare function getSession(
|
|
320
|
+
declare function getSession(server: AgentChatServer, sessionId: string): Promise<Session>;
|
|
318
321
|
|
|
319
322
|
/**
|
|
320
323
|
* Reads composer files into `CompleteAttachment` `file` parts for send.
|
|
@@ -322,4 +325,4 @@ declare function getSession(client: AgentSessionClient, sessionId: string, optio
|
|
|
322
325
|
*/
|
|
323
326
|
declare const trueFoundryAttachmentAdapter: AttachmentAdapter;
|
|
324
327
|
|
|
325
|
-
export {
|
|
328
|
+
export { AgentChatServer, AgentSpec, type AgentSpecUpdate, type ConvertTurnsResult, type DraftAgentConfig, type DraftSession, type DraftSessionBridge, type McpAuthMessageCustomMetadata, McpAuthRequiredEvent, type NamedAgentConfig, type PendingApproval, type PendingToolResponse, ROOT_THREAD_ID, type SandboxMessageCustomMetadata, AgentSpec as ServerAgentSpec, Session, type SubAgentArtifact, type SubAgentCustomMetadata, type SubAgentMessageCustomMetadata, TOOL_RESPONSE_THREAD_ID_CUSTOM_KEY, ThreadCreatedEvent, type ToolApprovalMessageCustomMetadata, type ToolResponseMessageCustomMetadata, type TrueFoundryAgentConfig, type TrueFoundryDraftRuntimeExtras, type TrueFoundryMessageCustomMetadata, type TrueFoundryRuntimeExtras, Turn, TurnEvent, TurnInputItem, TurnStreamingEvent, type UseTrueFoundryAgentRuntimeOptions, type UserMessageContent, UserToolApprovalEvent, UserToolResponseEvent, buildEditedUserMessageContent, buildTurnAssistantContent, buildUserMessageContent, collectApprovalInputs, collectRequiredActionInputs, collectResponseInputs, convertTurnsToThreadMessages, createDraftSessionBridge, createTrueFoundryDraftThreadListAdapter, createTrueFoundryOwnedSessionsThreadListAdapter, createTrueFoundryThreadListAdapter, draftSessionTitle, findPausedAssistantMessage, getSession, getTurnMessageContent, isEventDelta, mergeAgentSpec, mergeEventDelta, messageHasPendingApprovals, messageHasPendingRequiredActions, messageHasPendingResponses, parseTurnIdFromMessageId, repositoryItemsFromMessages, toTrueFoundryApprovalInputs, trueFoundryAttachmentAdapter, trueFoundryExtras, useTrueFoundryAgentRuntime, useTrueFoundryAgentSpec, useTrueFoundryApprovals, useTrueFoundryCancel, useTrueFoundryDownloadSandboxFile, useTrueFoundryHistoryPagination, useTrueFoundryMcpAuth, useTrueFoundryReload, useTrueFoundryResetFromTurn, useTrueFoundryRespondToToolApproval, useTrueFoundryRespondToToolResponse, useTrueFoundryResumeMcpAuth, useTrueFoundrySandboxId, useTrueFoundryToolResponses, useTrueFoundryUpdateAgentSpec };
|