@langchain/langgraph-sdk 1.9.4 → 1.9.6

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.
Files changed (110) hide show
  1. package/dist/client/base.cjs.map +1 -1
  2. package/dist/client/base.d.cts +37 -0
  3. package/dist/client/base.d.cts.map +1 -1
  4. package/dist/client/base.d.ts +37 -0
  5. package/dist/client/base.d.ts.map +1 -1
  6. package/dist/client/base.js.map +1 -1
  7. package/dist/client/index.d.cts +1 -1
  8. package/dist/client/index.d.ts +1 -1
  9. package/dist/client/stream/handles/index.d.ts +1 -1
  10. package/dist/client/stream/handles/subagents.cjs +1 -1
  11. package/dist/client/stream/handles/subagents.cjs.map +1 -1
  12. package/dist/client/stream/handles/subagents.d.cts +2 -2
  13. package/dist/client/stream/handles/subagents.d.cts.map +1 -1
  14. package/dist/client/stream/handles/subagents.d.ts +2 -2
  15. package/dist/client/stream/handles/subagents.d.ts.map +1 -1
  16. package/dist/client/stream/handles/subagents.js +2 -2
  17. package/dist/client/stream/handles/subagents.js.map +1 -1
  18. package/dist/client/stream/handles/subgraphs.cjs +1 -1
  19. package/dist/client/stream/handles/subgraphs.cjs.map +1 -1
  20. package/dist/client/stream/handles/subgraphs.d.cts +2 -2
  21. package/dist/client/stream/handles/subgraphs.d.cts.map +1 -1
  22. package/dist/client/stream/handles/subgraphs.d.ts +2 -2
  23. package/dist/client/stream/handles/subgraphs.d.ts.map +1 -1
  24. package/dist/client/stream/handles/subgraphs.js +2 -2
  25. package/dist/client/stream/handles/subgraphs.js.map +1 -1
  26. package/dist/client/stream/handles/tools.cjs +124 -52
  27. package/dist/client/stream/handles/tools.cjs.map +1 -1
  28. package/dist/client/stream/handles/tools.d.cts +59 -13
  29. package/dist/client/stream/handles/tools.d.cts.map +1 -1
  30. package/dist/client/stream/handles/tools.d.ts +59 -13
  31. package/dist/client/stream/handles/tools.d.ts.map +1 -1
  32. package/dist/client/stream/handles/tools.js +122 -53
  33. package/dist/client/stream/handles/tools.js.map +1 -1
  34. package/dist/client/stream/index.cjs +13 -5
  35. package/dist/client/stream/index.cjs.map +1 -1
  36. package/dist/client/stream/index.d.cts +3 -3
  37. package/dist/client/stream/index.d.cts.map +1 -1
  38. package/dist/client/stream/index.d.ts +3 -3
  39. package/dist/client/stream/index.d.ts.map +1 -1
  40. package/dist/client/stream/index.js +14 -6
  41. package/dist/client/stream/index.js.map +1 -1
  42. package/dist/headless-tools.cjs +131 -4
  43. package/dist/headless-tools.cjs.map +1 -1
  44. package/dist/headless-tools.d.cts +9 -1
  45. package/dist/headless-tools.d.cts.map +1 -1
  46. package/dist/headless-tools.d.ts +9 -1
  47. package/dist/headless-tools.d.ts.map +1 -1
  48. package/dist/headless-tools.js +129 -5
  49. package/dist/headless-tools.js.map +1 -1
  50. package/dist/index.cjs +1 -0
  51. package/dist/index.d.cts +3 -3
  52. package/dist/index.d.ts +3 -3
  53. package/dist/index.js +2 -2
  54. package/dist/stream/controller.cjs +77 -16
  55. package/dist/stream/controller.cjs.map +1 -1
  56. package/dist/stream/controller.d.cts +3 -1
  57. package/dist/stream/controller.d.cts.map +1 -1
  58. package/dist/stream/controller.d.ts +3 -1
  59. package/dist/stream/controller.d.ts.map +1 -1
  60. package/dist/stream/controller.js +78 -17
  61. package/dist/stream/controller.js.map +1 -1
  62. package/dist/stream/discovery/subagents.cjs +13 -0
  63. package/dist/stream/discovery/subagents.cjs.map +1 -1
  64. package/dist/stream/discovery/subagents.d.cts +5 -0
  65. package/dist/stream/discovery/subagents.d.cts.map +1 -1
  66. package/dist/stream/discovery/subagents.d.ts +5 -0
  67. package/dist/stream/discovery/subagents.d.ts.map +1 -1
  68. package/dist/stream/discovery/subagents.js +13 -0
  69. package/dist/stream/discovery/subagents.js.map +1 -1
  70. package/dist/stream/discovery/subgraphs.cjs +13 -0
  71. package/dist/stream/discovery/subgraphs.cjs.map +1 -1
  72. package/dist/stream/discovery/subgraphs.d.cts +5 -0
  73. package/dist/stream/discovery/subgraphs.d.cts.map +1 -1
  74. package/dist/stream/discovery/subgraphs.d.ts +5 -0
  75. package/dist/stream/discovery/subgraphs.d.ts.map +1 -1
  76. package/dist/stream/discovery/subgraphs.js +13 -0
  77. package/dist/stream/discovery/subgraphs.js.map +1 -1
  78. package/dist/stream/index.cjs +3 -0
  79. package/dist/stream/index.d.cts +5 -5
  80. package/dist/stream/index.d.ts +5 -5
  81. package/dist/stream/index.js +2 -1
  82. package/dist/stream/lifecycle-loading-tracker.cjs +1 -1
  83. package/dist/stream/lifecycle-loading-tracker.cjs.map +1 -1
  84. package/dist/stream/lifecycle-loading-tracker.js +1 -1
  85. package/dist/stream/lifecycle-loading-tracker.js.map +1 -1
  86. package/dist/stream/projections/tool-calls.cjs.map +1 -1
  87. package/dist/stream/projections/tool-calls.js.map +1 -1
  88. package/dist/stream/submit-coordinator.cjs +47 -16
  89. package/dist/stream/submit-coordinator.cjs.map +1 -1
  90. package/dist/stream/submit-coordinator.d.cts.map +1 -1
  91. package/dist/stream/submit-coordinator.d.ts.map +1 -1
  92. package/dist/stream/submit-coordinator.js +47 -16
  93. package/dist/stream/submit-coordinator.js.map +1 -1
  94. package/dist/stream/tool-calls.cjs +39 -2
  95. package/dist/stream/tool-calls.cjs.map +1 -1
  96. package/dist/stream/tool-calls.js +38 -3
  97. package/dist/stream/tool-calls.js.map +1 -1
  98. package/dist/stream/types-inference.d.cts +65 -7
  99. package/dist/stream/types-inference.d.cts.map +1 -1
  100. package/dist/stream/types-inference.d.ts +65 -7
  101. package/dist/stream/types-inference.d.ts.map +1 -1
  102. package/dist/stream/types.d.cts +42 -23
  103. package/dist/stream/types.d.cts.map +1 -1
  104. package/dist/stream/types.d.ts +42 -23
  105. package/dist/stream/types.d.ts.map +1 -1
  106. package/dist/types.messages.d.cts +38 -1
  107. package/dist/types.messages.d.cts.map +1 -1
  108. package/dist/types.messages.d.ts +38 -1
  109. package/dist/types.messages.d.ts.map +1 -1
  110. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.cts","names":[],"sources":["../../src/stream/types.ts"],"mappings":"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"}
1
+ {"version":3,"file":"types.d.cts","names":[],"sources":["../../src/stream/types.ts"],"mappings":"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"}
@@ -6,27 +6,40 @@ import { ThreadStreamOptions } from "../client/stream/types.js";
6
6
  import { ThreadStream } from "../client/stream/index.js";
7
7
  import { Client } from "../client/index.js";
8
8
  import { AnyHeadlessToolImplementation, OnToolCallback } from "../headless-tools.js";
9
- import { InferStateType } from "./types-inference.js";
10
9
  import { StreamStore } from "./store.js";
11
10
  import { BaseMessage as BaseMessage$1 } from "@langchain/core/messages";
12
11
  import { Channel, Event as Event$1 } from "@langchain/protocol";
13
12
 
14
13
  //#region src/stream/types.d.ts
15
- /**
16
- * Legacy alias shared by the framework bindings.
17
- * Unwraps a compiled graph or agent brand into its state shape.
18
- *
19
- * @deprecated Prefer {@link InferStateType}.
20
- */
21
- type StateOf<T> = InferStateType<T> extends Record<string, unknown> ? InferStateType<T> : Record<string, unknown>;
14
+ /** Why a run's active streaming phase ended. */
15
+ type RunExecutionReason = /** The run reached the protocol `completed` lifecycle event. */"success" /** The run reached the protocol `failed` lifecycle event. */ | "error" /** The run paused on a protocol `interrupted` lifecycle event. */ | "interrupt" /** The run was stopped by a client-side abort. */ | "stopped";
16
+ /** Payload for run-start callbacks. */
17
+ interface RunExecutionInfo {
18
+ runId: string;
19
+ }
20
+ /** Payload for run-end callbacks. */
21
+ interface RunCompletedInfo extends Omit<RunExecutionInfo, "runId"> {
22
+ /** Omitted when re-attaching to an in-flight run without local dispatch. */
23
+ runId?: string;
24
+ /** Why the active streaming phase ended. */
25
+ reason: RunExecutionReason;
26
+ }
22
27
  /** Options common to both transport branches of framework `useStream` APIs. */
23
28
  interface UseStreamCommonOptions<StateType extends object, ThreadIdType = string | null> {
24
29
  threadId?: ThreadIdType;
25
30
  onThreadId?: (threadId: string) => void;
26
- onCreated?: (meta: {
27
- run_id: string;
28
- thread_id: string;
29
- }) => void;
31
+ /**
32
+ * Convenience callback fired when this hook instance's run is accepted
33
+ * by the server. Prefer `stream.isLoading` for UI; use this for
34
+ * imperative run-execution side effects.
35
+ */
36
+ onCreated?: (info: RunExecutionInfo) => void;
37
+ /**
38
+ * Convenience callback fired when a run's active streaming phase ends.
39
+ * `runId` may be omitted for re-attached in-flight runs because no local
40
+ * dispatch response was observed.
41
+ */
42
+ onCompleted?: (info: RunCompletedInfo) => void;
30
43
  initialValues?: StateType;
31
44
  /** State key holding the message array. Defaults to `"messages"`. */
32
45
  messagesKey?: string;
@@ -138,9 +151,8 @@ interface StreamControllerOptions<StateType extends object = Record<string, unkn
138
151
  /**
139
152
  * How the controller talks to the agent server. Accepts either a
140
153
  * built-in transport string (`"sse"` / `"websocket"`) or a custom
141
- * {@link import("../client/stream/transport.js").AgentServerAdapter}
142
- * that bypasses the built-in factories entirely. Forwarded to
143
- * `client.threads.stream({ transport })`.
154
+ * {@link AgentServerAdapter} that bypasses the built-in factories
155
+ * entirely. Forwarded to `client.threads.stream({ transport })`.
144
156
  */
145
157
  transport?: ThreadStreamOptions["transport"];
146
158
  /** Optional `fetch` override forwarded to the built-in SSE transport. */
@@ -149,11 +161,18 @@ interface StreamControllerOptions<StateType extends object = Record<string, unkn
149
161
  webSocketFactory?: (url: string) => WebSocket;
150
162
  /** Called when a thread id is first produced (new-thread submits). */
151
163
  onThreadId?: (threadId: string) => void;
152
- /** Called when a run starts (mirrors v1 `onCreated`). */
153
- onCreated?: (meta: {
154
- run_id: string;
155
- thread_id: string;
156
- }) => void;
164
+ /**
165
+ * Convenience callback fired when this hook instance's run is accepted
166
+ * by the server. Prefer `root.isLoading` for UI; use this for
167
+ * imperative run-execution side effects.
168
+ */
169
+ onCreated?: (info: RunExecutionInfo) => void;
170
+ /**
171
+ * Convenience callback fired when a run's active streaming phase ends.
172
+ * `runId` may be omitted for re-attached in-flight runs because no local
173
+ * dispatch response was observed.
174
+ */
175
+ onCompleted?: (info: RunCompletedInfo) => void;
157
176
  /** Initial state for `root.values` before hydration lands. */
158
177
  initialValues?: StateType;
159
178
  /** Key inside `values` that holds the message array. Defaults to `"messages"`. */
@@ -170,8 +189,8 @@ interface StreamSubmitOptions<StateType extends object = Record<string, unknown>
170
189
  /**
171
190
  * Command shape widened to the v1 surface + protocol-v2 additions.
172
191
  *
173
- * - `resume` — dispatches to `thread.input.respond` targeting the most
174
- * recent root-namespace interrupt (honoured today).
192
+ * - `resume` — dispatches to `thread.submitRun` with interrupt-id keyed
193
+ * `input` (single or batched `Command({ resume })`).
175
194
  * - `goto` — routes execution to a specific node (planned, forwarded
176
195
  * via `/run.start` metadata).
177
196
  * - `update` — merges a partial state update into the thread's
@@ -350,5 +369,5 @@ interface AcquiredProjection<T> {
350
369
  release(): void;
351
370
  }
352
371
  //#endregion
353
- export { AcquiredProjection, AgentServerOptions, CustomAdapterOptions, ProjectionRuntime, ProjectionSpec, RootEventBus, RootSnapshot, StateOf, StreamControllerOptions, StreamSubmitOptions, SubagentDiscoverySnapshot, SubgraphDiscoverySnapshot, Target, UseStreamCommonOptions, UseStreamOptions };
372
+ export { AcquiredProjection, AgentServerOptions, CustomAdapterOptions, ProjectionRuntime, ProjectionSpec, RootEventBus, RootSnapshot, RunCompletedInfo, RunExecutionInfo, RunExecutionReason, StreamControllerOptions, StreamSubmitOptions, SubagentDiscoverySnapshot, SubgraphDiscoverySnapshot, Target, UseStreamCommonOptions, UseStreamOptions };
354
373
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","names":[],"sources":["../../src/stream/types.ts"],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","names":[],"sources":["../../src/stream/types.ts"],"mappings":"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"}
@@ -146,12 +146,40 @@ type InferSchemaInput<S> = S extends {
146
146
  * Helper type to extract the input type from a DynamicStructuredTool's _call method.
147
147
  * This is more reliable than trying to infer from the schema directly because
148
148
  * DynamicStructuredTool has the input type baked into its _call signature.
149
+ *
150
+ * Headless tools returned by `tool({ ... }).implement(...)` expose `execute`
151
+ * instead and nest the registered name under `tool.name`.
149
152
  */
150
153
  type InferToolInput<T> = T extends {
154
+ tool: {
155
+ name: string;
156
+ };
157
+ execute: (args: infer Args) => any;
158
+ } ? Args : T extends {
151
159
  _call: (arg: infer Args, ...rest: any[]) => any;
152
160
  } ? Args : T extends {
153
161
  schema: infer S;
154
162
  } ? InferSchemaInput<S> : never;
163
+ type UnwrapToolFuncOutput<R> = R extends Promise<infer Out> ? Out : R extends AsyncGenerator<unknown, infer Out, unknown> ? Out : R;
164
+ /**
165
+ * Infer the successful return type of a LangChain tool.
166
+ *
167
+ * Resolution order mirrors {@link InferToolInput}: `func`, then
168
+ * `invoke`, then `_call`, so inference survives cross-package
169
+ * boundaries where `_call` is `protected`.
170
+ */
171
+ type InferToolOutput<T> = T extends {
172
+ tool: {
173
+ name: string;
174
+ };
175
+ execute: (...args: any[]) => Promise<infer Out>;
176
+ } ? Out : T extends {
177
+ func: (...args: any[]) => infer R;
178
+ } ? UnwrapToolFuncOutput<R> : T extends {
179
+ invoke: (...args: any[]) => Promise<infer Out>;
180
+ } ? Out : T extends {
181
+ _call: (...args: any[]) => infer R;
182
+ } ? UnwrapToolFuncOutput<R> : unknown;
155
183
  /**
156
184
  * Infer a tool call type from a single tool.
157
185
  * Works with tools created via `tool()` from `@langchain/core/tools`.
@@ -176,6 +204,15 @@ type InferToolInput<T> = T extends {
176
204
  * ```
177
205
  */
178
206
  type ToolCallFromTool<T> = T extends {
207
+ tool: {
208
+ name: infer N extends string;
209
+ };
210
+ } ? InferToolInput<T> extends infer Args ? Args extends never ? never : Args extends Record<string, any> ? {
211
+ name: N;
212
+ args: Args;
213
+ id?: string;
214
+ type?: "tool_call";
215
+ } : never : never : T extends {
179
216
  name: infer N;
180
217
  } ? InferToolInput<T> extends infer Args ? Args extends never ? never : Args extends Record<string, any> ? {
181
218
  name: N;
@@ -262,5 +299,5 @@ type ToolCallWithResult<ToolCall = DefaultToolCall, TToolMessage = ToolMessage,
262
299
  state: ToolCallState;
263
300
  };
264
301
  //#endregion
265
- export { AIMessage, DefaultToolCall, FunctionMessage, HumanMessage, Message, RemoveMessage, SystemMessage, ToolCallFromTool, ToolCallState, ToolCallWithResult, ToolCallsFromTools, ToolMessage };
302
+ export { AIMessage, DefaultToolCall, FunctionMessage, HumanMessage, InferToolOutput, Message, RemoveMessage, SystemMessage, ToolCallFromTool, ToolCallState, ToolCallWithResult, ToolCallsFromTools, ToolMessage };
266
303
  //# sourceMappingURL=types.messages.d.cts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.messages.d.cts","names":[],"sources":["../src/types.messages.ts"],"mappings":";KAAK,WAAA;AAAA,KACA,sBAAA;EACH,IAAA;EACA,SAAA;IAAsB,GAAA;IAAa,MAAA,GAAS,WAAA;EAAA;AAAA;AAAA,KAGzC,kBAAA;EAAuB,IAAA;EAAc,IAAA;AAAA;AAAA,KACrC,qBAAA,GAAwB,kBAAA,GAAqB,sBAAA;AAAA,KAC7C,cAAA,YAA0B,qBAAA;;;;KAK1B,uBAAA,GAA0B,MAAA;AAAA,KAE1B,WAAA;EACH,iBAAA,GAAoB,uBAAA;EACpB,OAAA,EAAS,cAAA;EACT,EAAA;EACA,IAAA;EACA,iBAAA,GAAoB,MAAA;AAAA;AAAA,KAGV,YAAA,GAAe,WAAA;EACzB,IAAA;EACA,OAAA;AAAA;;;;KAMU,eAAA;EACV,IAAA;EAEA,IAAA;IAAA,CAAS,CAAA;EAAA;EACT,EAAA;EACA,IAAA;AAAA;;;;KAMU,eAAA;EACV,IAAA;EACA,IAAA;EACA,EAAA;EACA,KAAA;EACA,IAAA;AAAA;;;;KAMU,aAAA;EACV,YAAA;EACA,aAAA;EACA,YAAA;EACA,mBAAA;IAEM,KAAA;IACA,UAAA;IACA,cAAA;EAAA;EAGN,oBAAA;IACM,KAAA;IAA4B,SAAA;EAAA;AAAA;;;;;;;;;AAvBpC;;;;;;;;;;;AAWA;;;;;;;;KA2CY,SAAA,YAAqB,eAAA,IAAmB,WAAA;EAClD,IAAA;EACA,OAAA;EACA,UAAA,GAAa,QAAA;EACb,kBAAA,GAAqB,eAAA;EACrB,cAAA,GAAiB,aAAA;AAAA;AAAA,KAGP,WAAA,GAAc,WAAA;EACxB,IAAA;EACA,MAAA;EACA,YAAA;EAX+B;;;;;;;EAoB/B,QAAA;AAAA;AAAA,KAGU,aAAA,GAAgB,WAAA;EAC1B,IAAA;AAAA;AAAA,KAGU,eAAA,GAAkB,WAAA;EAC5B,IAAA;AAAA;AAAA,KAGU,aAAA,GAAgB,WAAA;EAC1B,IAAA;AAAA;;;AAxBF;;;KAgCY,OAAA,YAAmB,eAAA,IAC3B,YAAA,GACA,SAAA,CAAU,QAAA,IACV,WAAA,GACA,aAAA,GACA,eAAA,GACA,aAAA;;;;;;;;KAUC,gBAAA,MAAsB,CAAA;EAAY,IAAA;IAAQ,KAAA;EAAA;AAAA,IAC3C,IAAA,GACA,CAAA;EAAY,MAAA;AAAA,IACV,IAAA;;;;AA5BN;;KAoCK,cAAA,MAAoB,CAAA;EAEvB,KAAA,GAAQ,GAAA,iBAAoB,IAAA;AAAA,IAE1B,IAAA,GACA,CAAA;EAAY,MAAA;AAAA,IACV,gBAAA,CAAiB,CAAA;;;;;;;;;;;;;;;;;;;;;;;AA3BL;KAsDN,gBAAA,MAAsB,CAAA;EAAY,IAAA;AAAA,IAC1C,cAAA,CAAe,CAAA,uBACb,IAAA,yBAGE,IAAA,SAAa,MAAA;EACT,IAAA,EAAM,CAAA;EAAG,IAAA,EAAM,IAAA;EAAM,EAAA;EAAa,IAAA;AAAA;;;;;;;;AA/CpC;;;;;;;;;;;;;;;;;;;;;;KAiFE,kBAAA,iCACV,CAAA,iDACI,gBAAA,CAAiB,KAAA,IAAS,kBAAA,CAAmB,IAAA;AA1CnD;;;;;;;AAAA,KAoDY,aAAA;;;;;;;;;KAUA,kBAAA,YACC,eAAA,iBACI,WAAA,eACF,SAAA,CAAU,QAAA;EAhEW;;;;EAsElC,EAAA;EAjEgB;;;EAsEhB,IAAA,EAAM,QAAA;EAtEsC;;;AAkC9C;EA0CE,MAAA,EAAQ,YAAA;EA1CoB;;;EA+C5B,SAAA,EAAW,UAAA;EA7CsC;;;EAkDjD,KAAA;EApD6B;;;;;;;EA6D7B,KAAA,EAAO,aAAA;AAAA"}
1
+ {"version":3,"file":"types.messages.d.cts","names":[],"sources":["../src/types.messages.ts"],"mappings":"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"}
@@ -146,12 +146,40 @@ type InferSchemaInput<S> = S extends {
146
146
  * Helper type to extract the input type from a DynamicStructuredTool's _call method.
147
147
  * This is more reliable than trying to infer from the schema directly because
148
148
  * DynamicStructuredTool has the input type baked into its _call signature.
149
+ *
150
+ * Headless tools returned by `tool({ ... }).implement(...)` expose `execute`
151
+ * instead and nest the registered name under `tool.name`.
149
152
  */
150
153
  type InferToolInput<T> = T extends {
154
+ tool: {
155
+ name: string;
156
+ };
157
+ execute: (args: infer Args) => any;
158
+ } ? Args : T extends {
151
159
  _call: (arg: infer Args, ...rest: any[]) => any;
152
160
  } ? Args : T extends {
153
161
  schema: infer S;
154
162
  } ? InferSchemaInput<S> : never;
163
+ type UnwrapToolFuncOutput<R> = R extends Promise<infer Out> ? Out : R extends AsyncGenerator<unknown, infer Out, unknown> ? Out : R;
164
+ /**
165
+ * Infer the successful return type of a LangChain tool.
166
+ *
167
+ * Resolution order mirrors {@link InferToolInput}: `func`, then
168
+ * `invoke`, then `_call`, so inference survives cross-package
169
+ * boundaries where `_call` is `protected`.
170
+ */
171
+ type InferToolOutput<T> = T extends {
172
+ tool: {
173
+ name: string;
174
+ };
175
+ execute: (...args: any[]) => Promise<infer Out>;
176
+ } ? Out : T extends {
177
+ func: (...args: any[]) => infer R;
178
+ } ? UnwrapToolFuncOutput<R> : T extends {
179
+ invoke: (...args: any[]) => Promise<infer Out>;
180
+ } ? Out : T extends {
181
+ _call: (...args: any[]) => infer R;
182
+ } ? UnwrapToolFuncOutput<R> : unknown;
155
183
  /**
156
184
  * Infer a tool call type from a single tool.
157
185
  * Works with tools created via `tool()` from `@langchain/core/tools`.
@@ -176,6 +204,15 @@ type InferToolInput<T> = T extends {
176
204
  * ```
177
205
  */
178
206
  type ToolCallFromTool<T> = T extends {
207
+ tool: {
208
+ name: infer N extends string;
209
+ };
210
+ } ? InferToolInput<T> extends infer Args ? Args extends never ? never : Args extends Record<string, any> ? {
211
+ name: N;
212
+ args: Args;
213
+ id?: string;
214
+ type?: "tool_call";
215
+ } : never : never : T extends {
179
216
  name: infer N;
180
217
  } ? InferToolInput<T> extends infer Args ? Args extends never ? never : Args extends Record<string, any> ? {
181
218
  name: N;
@@ -262,5 +299,5 @@ type ToolCallWithResult<ToolCall = DefaultToolCall, TToolMessage = ToolMessage,
262
299
  state: ToolCallState;
263
300
  };
264
301
  //#endregion
265
- export { AIMessage, DefaultToolCall, FunctionMessage, HumanMessage, Message, RemoveMessage, SystemMessage, ToolCallFromTool, ToolCallState, ToolCallWithResult, ToolCallsFromTools, ToolMessage };
302
+ export { AIMessage, DefaultToolCall, FunctionMessage, HumanMessage, InferToolOutput, Message, RemoveMessage, SystemMessage, ToolCallFromTool, ToolCallState, ToolCallWithResult, ToolCallsFromTools, ToolMessage };
266
303
  //# sourceMappingURL=types.messages.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.messages.d.ts","names":[],"sources":["../src/types.messages.ts"],"mappings":";KAAK,WAAA;AAAA,KACA,sBAAA;EACH,IAAA;EACA,SAAA;IAAsB,GAAA;IAAa,MAAA,GAAS,WAAA;EAAA;AAAA;AAAA,KAGzC,kBAAA;EAAuB,IAAA;EAAc,IAAA;AAAA;AAAA,KACrC,qBAAA,GAAwB,kBAAA,GAAqB,sBAAA;AAAA,KAC7C,cAAA,YAA0B,qBAAA;;;;KAK1B,uBAAA,GAA0B,MAAA;AAAA,KAE1B,WAAA;EACH,iBAAA,GAAoB,uBAAA;EACpB,OAAA,EAAS,cAAA;EACT,EAAA;EACA,IAAA;EACA,iBAAA,GAAoB,MAAA;AAAA;AAAA,KAGV,YAAA,GAAe,WAAA;EACzB,IAAA;EACA,OAAA;AAAA;;;;KAMU,eAAA;EACV,IAAA;EAEA,IAAA;IAAA,CAAS,CAAA;EAAA;EACT,EAAA;EACA,IAAA;AAAA;;;;KAMU,eAAA;EACV,IAAA;EACA,IAAA;EACA,EAAA;EACA,KAAA;EACA,IAAA;AAAA;;;;KAMU,aAAA;EACV,YAAA;EACA,aAAA;EACA,YAAA;EACA,mBAAA;IAEM,KAAA;IACA,UAAA;IACA,cAAA;EAAA;EAGN,oBAAA;IACM,KAAA;IAA4B,SAAA;EAAA;AAAA;;;;;;;;;AAvBpC;;;;;;;;;;;AAWA;;;;;;;;KA2CY,SAAA,YAAqB,eAAA,IAAmB,WAAA;EAClD,IAAA;EACA,OAAA;EACA,UAAA,GAAa,QAAA;EACb,kBAAA,GAAqB,eAAA;EACrB,cAAA,GAAiB,aAAA;AAAA;AAAA,KAGP,WAAA,GAAc,WAAA;EACxB,IAAA;EACA,MAAA;EACA,YAAA;EAX+B;;;;;;;EAoB/B,QAAA;AAAA;AAAA,KAGU,aAAA,GAAgB,WAAA;EAC1B,IAAA;AAAA;AAAA,KAGU,eAAA,GAAkB,WAAA;EAC5B,IAAA;AAAA;AAAA,KAGU,aAAA,GAAgB,WAAA;EAC1B,IAAA;AAAA;;;AAxBF;;;KAgCY,OAAA,YAAmB,eAAA,IAC3B,YAAA,GACA,SAAA,CAAU,QAAA,IACV,WAAA,GACA,aAAA,GACA,eAAA,GACA,aAAA;;;;;;;;KAUC,gBAAA,MAAsB,CAAA;EAAY,IAAA;IAAQ,KAAA;EAAA;AAAA,IAC3C,IAAA,GACA,CAAA;EAAY,MAAA;AAAA,IACV,IAAA;;;;AA5BN;;KAoCK,cAAA,MAAoB,CAAA;EAEvB,KAAA,GAAQ,GAAA,iBAAoB,IAAA;AAAA,IAE1B,IAAA,GACA,CAAA;EAAY,MAAA;AAAA,IACV,gBAAA,CAAiB,CAAA;;;;;;;;;;;;;;;;;;;;;;;AA3BL;KAsDN,gBAAA,MAAsB,CAAA;EAAY,IAAA;AAAA,IAC1C,cAAA,CAAe,CAAA,uBACb,IAAA,yBAGE,IAAA,SAAa,MAAA;EACT,IAAA,EAAM,CAAA;EAAG,IAAA,EAAM,IAAA;EAAM,EAAA;EAAa,IAAA;AAAA;;;;;;;;AA/CpC;;;;;;;;;;;;;;;;;;;;;;KAiFE,kBAAA,iCACV,CAAA,iDACI,gBAAA,CAAiB,KAAA,IAAS,kBAAA,CAAmB,IAAA;AA1CnD;;;;;;;AAAA,KAoDY,aAAA;;;;;;;;;KAUA,kBAAA,YACC,eAAA,iBACI,WAAA,eACF,SAAA,CAAU,QAAA;EAhEW;;;;EAsElC,EAAA;EAjEgB;;;EAsEhB,IAAA,EAAM,QAAA;EAtEsC;;;AAkC9C;EA0CE,MAAA,EAAQ,YAAA;EA1CoB;;;EA+C5B,SAAA,EAAW,UAAA;EA7CsC;;;EAkDjD,KAAA;EApD6B;;;;;;;EA6D7B,KAAA,EAAO,aAAA;AAAA"}
1
+ {"version":3,"file":"types.messages.d.ts","names":[],"sources":["../src/types.messages.ts"],"mappings":";KAAK,WAAA;AAAA,KACA,sBAAA;EACH,IAAA;EACA,SAAA;IAAsB,GAAA;IAAa,MAAA,GAAS,WAAA;EAAA;AAAA;AAAA,KAGzC,kBAAA;EAAuB,IAAA;EAAc,IAAA;AAAA;AAAA,KACrC,qBAAA,GAAwB,kBAAA,GAAqB,sBAAA;AAAA,KAC7C,cAAA,YAA0B,qBAAA;;;;KAK1B,uBAAA,GAA0B,MAAA;AAAA,KAE1B,WAAA;EACH,iBAAA,GAAoB,uBAAA;EACpB,OAAA,EAAS,cAAA;EACT,EAAA;EACA,IAAA;EACA,iBAAA,GAAoB,MAAA;AAAA;AAAA,KAGV,YAAA,GAAe,WAAA;EACzB,IAAA;EACA,OAAA;AAAA;;;;KAMU,eAAA;EACV,IAAA;EAEA,IAAA;IAAA,CAAS,CAAA;EAAA;EACT,EAAA;EACA,IAAA;AAAA;;;;KAMU,eAAA;EACV,IAAA;EACA,IAAA;EACA,EAAA;EACA,KAAA;EACA,IAAA;AAAA;;;;KAMU,aAAA;EACV,YAAA;EACA,aAAA;EACA,YAAA;EACA,mBAAA;IAEM,KAAA;IACA,UAAA;IACA,cAAA;EAAA;EAGN,oBAAA;IACM,KAAA;IAA4B,SAAA;EAAA;AAAA;;;;;;;;;AAvBpC;;;;;;;;;;;AAWA;;;;;;;;KA2CY,SAAA,YAAqB,eAAA,IAAmB,WAAA;EAClD,IAAA;EACA,OAAA;EACA,UAAA,GAAa,QAAA;EACb,kBAAA,GAAqB,eAAA;EACrB,cAAA,GAAiB,aAAA;AAAA;AAAA,KAGP,WAAA,GAAc,WAAA;EACxB,IAAA;EACA,MAAA;EACA,YAAA;EAX+B;;;;;;;EAoB/B,QAAA;AAAA;AAAA,KAGU,aAAA,GAAgB,WAAA;EAC1B,IAAA;AAAA;AAAA,KAGU,eAAA,GAAkB,WAAA;EAC5B,IAAA;AAAA;AAAA,KAGU,aAAA,GAAgB,WAAA;EAC1B,IAAA;AAAA;;;AAxBF;;;KAgCY,OAAA,YAAmB,eAAA,IAC3B,YAAA,GACA,SAAA,CAAU,QAAA,IACV,WAAA,GACA,aAAA,GACA,eAAA,GACA,aAAA;;;;;;;;KAUC,gBAAA,MAAsB,CAAA;EAAY,IAAA;IAAQ,KAAA;EAAA;AAAA,IAC3C,IAAA,GACA,CAAA;EAAY,MAAA;AAAA,IACV,IAAA;;;;AA5BN;;;;;KAuCK,cAAA,MAAoB,CAAA;EACvB,IAAA;IAAQ,IAAA;EAAA;EAER,OAAA,GAAU,IAAA;AAAA,IAER,IAAA,GACA,CAAA;EAEI,KAAA,GAAQ,GAAA,iBAAoB,IAAA;AAAA,IAE9B,IAAA,GACA,CAAA;EAAY,MAAA;AAAA,IACV,gBAAA,CAAiB,CAAA;AAAA,KAGpB,oBAAA,MACH,CAAA,SAAU,OAAA,cACN,GAAA,GACA,CAAA,SAAU,cAAA,gCACR,GAAA,GACA,CAAA;;;;;;;;KASI,eAAA,MAAqB,CAAA;EAC/B,IAAA;IAAQ,IAAA;EAAA;EAER,OAAA,MAAa,IAAA,YAAgB,OAAA;AAAA,IAE3B,GAAA,GACA,CAAA;EAEI,IAAA,MAAU,IAAA;AAAA,IAEZ,oBAAA,CAAqB,CAAA,IACrB,CAAA;EAEI,MAAA,MAAY,IAAA,YAAgB,OAAA;AAAA,IAE9B,GAAA,GACA,CAAA;EAEI,KAAA,MAAW,IAAA;AAAA,IAEb,oBAAA,CAAqB,CAAA;;;;;;;;;;;AA5DrB;;;;;;;;;;;;;KAuFE,gBAAA,MAAsB,CAAA;EAChC,IAAA;IAAQ,IAAA;EAAA;AAAA,IAEN,cAAA,CAAe,CAAA,uBACb,IAAA,yBAEE,IAAA,SAAa,MAAA;EACT,IAAA,EAAM,CAAA;EAAG,IAAA,EAAM,IAAA;EAAM,EAAA;EAAa,IAAA;AAAA,oBAG1C,CAAA;EAAY,IAAA;AAAA,IACV,cAAA,CAAe,CAAA,uBACb,IAAA,yBAGE,IAAA,SAAa,MAAA;EACT,IAAA,EAAM,CAAA;EAAG,IAAA,EAAM,IAAA;EAAM,EAAA;EAAa,IAAA;AAAA;;AAhFtB;;;;;;;;;;;;;;;;;;;;;;AAiB1B;;;;;;KAiGY,kBAAA,iCACV,CAAA,iDACI,gBAAA,CAAiB,KAAA,IAAS,kBAAA,CAAmB,IAAA;;;;;;;;KAUvC,aAAA;;;;;;;;;KAUA,kBAAA,YACC,eAAA,iBACI,WAAA,eACF,SAAA,CAAU,QAAA;EApHrB;;;;EA0HF,EAAA;EAtHyB;;;EA2HzB,IAAA,EAAM,QAAA;EAxH8B;;;;EA8HpC,MAAA,EAAQ,YAAA;EAzHa;;;EA8HrB,SAAA,EAAW,UAAA;EA5HmB;;AA2BhC;EAsGE,KAAA;EAtG0B;;;;;;;EA+G1B,KAAA,EAAO,aAAA;AAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@langchain/langgraph-sdk",
3
- "version": "1.9.4",
3
+ "version": "1.9.6",
4
4
  "description": "Client library for interacting with the LangGraph API",
5
5
  "type": "module",
6
6
  "repository": {