@ag-ui/langgraph 0.0.24 → 0.0.25
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.mts +165 -149
- package/dist/index.d.mts.map +1 -0
- package/dist/index.d.ts +165 -149
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +4 -5
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +4 -5
- package/dist/index.mjs.map +1 -1
- package/dist/middlewares/index.d.mts +30 -0
- package/dist/middlewares/index.d.mts.map +1 -0
- package/dist/middlewares/index.d.ts +30 -0
- package/dist/middlewares/index.d.ts.map +1 -0
- package/dist/middlewares/index.js +2 -0
- package/dist/middlewares/index.js.map +1 -0
- package/dist/middlewares/index.mjs +2 -0
- package/dist/middlewares/index.mjs.map +1 -0
- package/package.json +27 -11
package/dist/index.d.mts
CHANGED
|
@@ -1,187 +1,203 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import
|
|
3
|
-
import * as
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import
|
|
7
|
-
import { RunAgentInput } from
|
|
8
|
-
import { RunsStreamPayload } from
|
|
1
|
+
import { AbstractAgent, AgentConfig, CustomEvent, HttpAgent, MessagesSnapshotEvent, RawEvent, ReasoningEncryptedValueEvent, ReasoningEndEvent, ReasoningMessageContentEvent, ReasoningMessageEndEvent, ReasoningMessageStartEvent, ReasoningStartEvent, RunAgentInput, RunErrorEvent, RunFinishedEvent, RunStartedEvent, StateDeltaEvent, StateSnapshotEvent, StepFinishedEvent, StepStartedEvent, TextMessageContentEvent, TextMessageEndEvent, TextMessageStartEvent, ToolCallArgsEvent, ToolCallEndEvent, ToolCallResultEvent, ToolCallStartEvent } from "@ag-ui/client";
|
|
2
|
+
import { Observable, Subscriber } from "rxjs";
|
|
3
|
+
import * as _langchain_langgraph_sdk0 from "@langchain/langgraph-sdk";
|
|
4
|
+
import { Assistant, AssistantGraph, Client, Config, Message, StreamMode, Thread, ThreadState } from "@langchain/langgraph-sdk";
|
|
5
|
+
import { MessageType } from "@langchain/core/messages";
|
|
6
|
+
import * as _langchain_langgraph_sdk_dist_types_stream0 from "@langchain/langgraph-sdk/dist/types.stream";
|
|
7
|
+
import { RunAgentInput as RunAgentInput$1 } from "@ag-ui/core";
|
|
8
|
+
import { RunsStreamPayload } from "@langchain/langgraph-sdk/dist/types";
|
|
9
9
|
|
|
10
|
+
//#region src/types.d.ts
|
|
10
11
|
declare enum LangGraphEventTypes {
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
12
|
+
OnChainStart = "on_chain_start",
|
|
13
|
+
OnChainStream = "on_chain_stream",
|
|
14
|
+
OnChainEnd = "on_chain_end",
|
|
15
|
+
OnChatModelStart = "on_chat_model_start",
|
|
16
|
+
OnChatModelStream = "on_chat_model_stream",
|
|
17
|
+
OnChatModelEnd = "on_chat_model_end",
|
|
18
|
+
OnToolStart = "on_tool_start",
|
|
19
|
+
OnToolEnd = "on_tool_end",
|
|
20
|
+
OnCustomEvent = "on_custom_event",
|
|
21
|
+
OnInterrupt = "on_interrupt"
|
|
21
22
|
}
|
|
22
23
|
type LangGraphToolWithName = {
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
24
|
+
type: "function";
|
|
25
|
+
name?: string;
|
|
26
|
+
function: {
|
|
27
|
+
name: string;
|
|
28
|
+
description: string;
|
|
29
|
+
parameters: any;
|
|
30
|
+
};
|
|
30
31
|
};
|
|
31
|
-
type State<TDefinedState = Record<string, any>> = {
|
|
32
|
-
[k in keyof TDefinedState]: TDefinedState[k] | null;
|
|
33
|
-
} & Record<string, any>;
|
|
32
|
+
type State<TDefinedState = Record<string, any>> = { [k in keyof TDefinedState]: TDefinedState[k] | null } & Record<string, any>;
|
|
34
33
|
interface StateEnrichment {
|
|
35
|
-
|
|
34
|
+
messages: Message[];
|
|
35
|
+
tools: LangGraphToolWithName[];
|
|
36
|
+
'ag-ui': {
|
|
36
37
|
tools: LangGraphToolWithName[];
|
|
37
|
-
'
|
|
38
|
-
|
|
39
|
-
context: RunAgentInput['context'];
|
|
40
|
-
};
|
|
38
|
+
context: RunAgentInput$1['context'];
|
|
39
|
+
};
|
|
41
40
|
}
|
|
42
41
|
type SchemaKeys = {
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
42
|
+
input: string[] | null;
|
|
43
|
+
output: string[] | null;
|
|
44
|
+
context: string[] | null;
|
|
45
|
+
config: string[] | null;
|
|
47
46
|
} | null;
|
|
48
47
|
type MessageInProgress = {
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
48
|
+
id: string;
|
|
49
|
+
toolCallId?: string | null;
|
|
50
|
+
toolCallName?: string | null;
|
|
52
51
|
};
|
|
53
|
-
type
|
|
54
|
-
|
|
55
|
-
|
|
52
|
+
type ReasoningInProgress = {
|
|
53
|
+
index: number;
|
|
54
|
+
type?: LangGraphReasoning['type'];
|
|
55
|
+
messageId: string;
|
|
56
|
+
signature?: string;
|
|
56
57
|
};
|
|
57
58
|
interface RunMetadata {
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
59
|
+
id: string;
|
|
60
|
+
schemaKeys?: SchemaKeys;
|
|
61
|
+
nodeName?: string;
|
|
62
|
+
prevNodeName?: string | null;
|
|
63
|
+
exitingNode?: boolean;
|
|
64
|
+
manuallyEmittedState?: State | null;
|
|
65
|
+
threadId?: string;
|
|
66
|
+
graphInfo?: AssistantGraph;
|
|
67
|
+
hasFunctionStreaming?: boolean;
|
|
68
|
+
serverRunIdKnown?: boolean;
|
|
69
|
+
hasPredictState?: boolean;
|
|
68
70
|
}
|
|
69
71
|
type MessagesInProgressRecord = Record<string, MessageInProgress | null>;
|
|
70
72
|
interface ToolCall {
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
73
|
+
id: string;
|
|
74
|
+
name: string;
|
|
75
|
+
args: Record<string, unknown>;
|
|
74
76
|
}
|
|
75
77
|
type BaseLangGraphPlatformMessage = Omit<Message, "isResultMessage" | "isTextMessage" | "isImageMessage" | "isActionExecutionMessage" | "isAgentStateMessage" | "type" | "createdAt"> & {
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
78
|
+
content: string;
|
|
79
|
+
role: string;
|
|
80
|
+
additional_kwargs?: Record<string, unknown>;
|
|
81
|
+
type: MessageType;
|
|
80
82
|
};
|
|
81
83
|
interface LangGraphPlatformResultMessage extends BaseLangGraphPlatformMessage {
|
|
82
|
-
|
|
83
|
-
|
|
84
|
+
tool_call_id: string;
|
|
85
|
+
name: string;
|
|
84
86
|
}
|
|
85
87
|
interface LangGraphPlatformActionExecutionMessage extends BaseLangGraphPlatformMessage {
|
|
86
|
-
|
|
88
|
+
tool_calls: ToolCall[];
|
|
87
89
|
}
|
|
88
90
|
type LangGraphPlatformMessage = LangGraphPlatformActionExecutionMessage | LangGraphPlatformResultMessage | BaseLangGraphPlatformMessage;
|
|
89
91
|
declare enum CustomEventNames {
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
92
|
+
ManuallyEmitMessage = "manually_emit_message",
|
|
93
|
+
ManuallyEmitToolCall = "manually_emit_tool_call",
|
|
94
|
+
ManuallyEmitState = "manually_emit_state",
|
|
95
|
+
Exit = "exit"
|
|
94
96
|
}
|
|
95
97
|
interface PredictStateTool {
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
98
|
+
tool: string;
|
|
99
|
+
state_key: string;
|
|
100
|
+
tool_argument: string;
|
|
99
101
|
}
|
|
100
102
|
interface LangGraphReasoning {
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
103
|
+
type: 'text';
|
|
104
|
+
text: string;
|
|
105
|
+
index: number;
|
|
106
|
+
signature?: string;
|
|
104
107
|
}
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
type
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
108
|
+
//#endregion
|
|
109
|
+
//#region src/agent.d.ts
|
|
110
|
+
type ProcessedEvents = TextMessageStartEvent | TextMessageContentEvent | TextMessageEndEvent | ReasoningStartEvent | ReasoningMessageStartEvent | ReasoningMessageContentEvent | ReasoningMessageEndEvent | ReasoningEndEvent | ReasoningEncryptedValueEvent | ToolCallStartEvent | ToolCallArgsEvent | ToolCallEndEvent | ToolCallResultEvent | StateSnapshotEvent | StateDeltaEvent | MessagesSnapshotEvent | RawEvent | CustomEvent | RunStartedEvent | RunFinishedEvent | RunErrorEvent | StepStartedEvent | StepFinishedEvent;
|
|
111
|
+
type RunAgentExtendedInput<TStreamMode extends StreamMode | StreamMode[] = StreamMode, TSubgraphs extends boolean = false> = Omit<RunAgentInput, "forwardedProps"> & {
|
|
112
|
+
forwardedProps?: Omit<RunsStreamPayload<TStreamMode, TSubgraphs>, "input"> & {
|
|
113
|
+
nodeName?: string;
|
|
114
|
+
threadMetadata?: Record<string, any>;
|
|
115
|
+
};
|
|
112
116
|
};
|
|
113
117
|
interface RegenerateInput extends RunAgentExtendedInput {
|
|
114
|
-
|
|
118
|
+
messageCheckpoint: Message;
|
|
115
119
|
}
|
|
116
120
|
interface LangGraphAgentConfig extends AgentConfig {
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
121
|
+
client?: Client;
|
|
122
|
+
deploymentUrl: string;
|
|
123
|
+
langsmithApiKey?: string;
|
|
124
|
+
propertyHeaders?: Record<string, string>;
|
|
125
|
+
assistantConfig?: Config;
|
|
126
|
+
agentName?: string;
|
|
127
|
+
graphId: string;
|
|
124
128
|
}
|
|
125
129
|
declare class LangGraphAgent extends AbstractAgent {
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
130
|
+
client: Client;
|
|
131
|
+
assistantConfig?: Config;
|
|
132
|
+
agentName?: string;
|
|
133
|
+
graphId: string;
|
|
134
|
+
assistant?: Assistant;
|
|
135
|
+
messagesInProcess: MessagesInProgressRecord;
|
|
136
|
+
reasoningProcess: null | ReasoningInProgress;
|
|
137
|
+
activeRun?: RunMetadata;
|
|
138
|
+
private cancelRequested;
|
|
139
|
+
private cancelSent;
|
|
140
|
+
private eventsStreamActive;
|
|
141
|
+
subscriber: Subscriber<ProcessedEvents>;
|
|
142
|
+
constantSchemaKeys: string[];
|
|
143
|
+
config: LangGraphAgentConfig;
|
|
144
|
+
constructor(config: LangGraphAgentConfig);
|
|
145
|
+
clone(): any;
|
|
146
|
+
dispatchEvent(event: ProcessedEvents): boolean;
|
|
147
|
+
run(input: RunAgentInput): Observable<ProcessedEvents>;
|
|
148
|
+
runAgentStream(input: RunAgentExtendedInput, subscriber: Subscriber<ProcessedEvents>): Promise<void>;
|
|
149
|
+
prepareRegenerateStream(input: RegenerateInput, streamMode: StreamMode | StreamMode[]): Promise<void | {
|
|
150
|
+
streamResponse: _langchain_langgraph_sdk_dist_types_stream0.TypedAsyncGenerator<"messages" | "values" | "custom" | "updates" | "events" | "debug" | "tasks" | "checkpoints" | "messages-tuple" | StreamMode[], false, _langchain_langgraph_sdk0.DefaultValues, _langchain_langgraph_sdk0.DefaultValues, unknown>;
|
|
151
|
+
state: ThreadState<State>;
|
|
152
|
+
streamMode: StreamMode | StreamMode[];
|
|
153
|
+
}>;
|
|
154
|
+
prepareStream(input: RunAgentExtendedInput, streamMode: StreamMode | StreamMode[]): Promise<void | {
|
|
155
|
+
streamResponse: _langchain_langgraph_sdk_dist_types_stream0.TypedAsyncGenerator<"messages" | "values" | "custom" | "updates" | "events" | "debug" | "tasks" | "checkpoints" | "messages-tuple" | StreamMode[], false, _langchain_langgraph_sdk0.DefaultValues, _langchain_langgraph_sdk0.DefaultValues, unknown>;
|
|
156
|
+
state: ThreadState<State>;
|
|
157
|
+
streamMode: StreamMode | StreamMode[];
|
|
158
|
+
} | {
|
|
159
|
+
streamResponse: _langchain_langgraph_sdk_dist_types_stream0.TypedAsyncGenerator<"messages" | "values" | "custom" | "updates" | "events" | "debug" | "tasks" | "checkpoints" | "messages-tuple" | StreamMode[], false, _langchain_langgraph_sdk0.DefaultValues, _langchain_langgraph_sdk0.DefaultValues, unknown>;
|
|
160
|
+
state: ThreadState<State>;
|
|
161
|
+
}>;
|
|
162
|
+
handleStreamEvents(stream: Awaited<ReturnType<typeof this.prepareStream> | ReturnType<typeof this.prepareRegenerateStream>>, threadId: string, subscriber: Subscriber<ProcessedEvents>, input: RunAgentExtendedInput, streamModes: StreamMode | StreamMode[]): Promise<void>;
|
|
163
|
+
handleSingleEvent(event: any): void;
|
|
164
|
+
/**
|
|
165
|
+
* Process [AIMessageChunk, metadata] tuples from messages-tuple stream mode
|
|
166
|
+
* and convert them into AG-UI text message and tool call events.
|
|
167
|
+
* Uses the same messagesInProcess tracking as events-mode streaming.
|
|
168
|
+
*/
|
|
169
|
+
private handleMessagesTupleEvent;
|
|
170
|
+
abortRun(): void;
|
|
171
|
+
handleReasoningEvent(reasoningData: LangGraphReasoning): void;
|
|
172
|
+
getStateSnapshot(threadState: ThreadState<State>): State;
|
|
173
|
+
getOrCreateThread(threadId: string, threadMetadata?: Record<string, any>): Promise<Thread>;
|
|
174
|
+
getThread(threadId: string): Promise<Thread<_langchain_langgraph_sdk0.DefaultValues>>;
|
|
175
|
+
createThread(payload?: Parameters<typeof this.client.threads.create>[0]): Promise<Thread<_langchain_langgraph_sdk0.DefaultValues>>;
|
|
176
|
+
mergeConfigs({
|
|
177
|
+
configs,
|
|
178
|
+
assistant,
|
|
179
|
+
schemaKeys
|
|
180
|
+
}: {
|
|
181
|
+
configs: Config[];
|
|
182
|
+
assistant: Assistant;
|
|
183
|
+
schemaKeys: SchemaKeys;
|
|
184
|
+
}): Promise<Config>;
|
|
185
|
+
getMessageInProgress(runId: string): MessageInProgress | null;
|
|
186
|
+
setMessageInProgress(runId: string, data: MessageInProgress): void;
|
|
187
|
+
getAssistant(): Promise<Assistant>;
|
|
188
|
+
getSchemaKeys(): Promise<SchemaKeys>;
|
|
189
|
+
langGraphDefaultMergeState(state: State, messages: Message[], input: RunAgentExtendedInput): State<StateEnrichment>;
|
|
190
|
+
handleNodeChange(nodeName: string | undefined): void;
|
|
191
|
+
startStep(nodeName: string): void;
|
|
192
|
+
endStep(): void;
|
|
193
|
+
getCheckpointByMessage(messageId: string, threadId: string, checkpoint?: null | {
|
|
194
|
+
checkpoint_id?: null | string;
|
|
195
|
+
checkpoint_ns: string;
|
|
196
|
+
}): Promise<ThreadState>;
|
|
185
197
|
}
|
|
186
|
-
|
|
187
|
-
|
|
198
|
+
//#endregion
|
|
199
|
+
//#region src/index.d.ts
|
|
200
|
+
declare class LangGraphHttpAgent extends HttpAgent {}
|
|
201
|
+
//#endregion
|
|
202
|
+
export { CustomEventNames, LangGraphAgent, LangGraphAgentConfig, LangGraphEventTypes, LangGraphHttpAgent, LangGraphPlatformMessage, LangGraphReasoning, LangGraphToolWithName, MessageInProgress, MessagesInProgressRecord, PredictStateTool, ProcessedEvents, ReasoningInProgress, RunMetadata, SchemaKeys, State, StateEnrichment, ToolCall };
|
|
203
|
+
//# sourceMappingURL=index.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.mts","names":[],"sources":["../src/types.ts","../src/agent.ts","../src/index.ts"],"mappings":"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"}
|