langchain 1.2.1 → 1.2.3-dev-1766726832377
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/CHANGELOG.md +11 -0
- package/dist/agents/middleware/contextEditing.d.cts.map +1 -1
- package/dist/agents/middleware/hitl.d.cts.map +1 -1
- package/dist/agents/middleware/todoListMiddleware.d.cts.map +1 -1
- package/dist/agents/middleware/toolCallLimit.d.cts.map +1 -1
- package/dist/agents/middleware/types.d.cts.map +1 -1
- package/dist/agents/responses.d.cts.map +1 -1
- package/dist/agents/types.d.cts.map +1 -1
- package/dist/index.cjs +11 -0
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +3 -1
- package/dist/index.d.ts +3 -1
- package/dist/index.js +5 -1
- package/dist/index.js.map +1 -1
- package/dist/tools/browser.cjs +81 -0
- package/dist/tools/browser.cjs.map +1 -0
- package/dist/tools/browser.d.cts +96 -0
- package/dist/tools/browser.d.cts.map +1 -0
- package/dist/tools/browser.d.ts +96 -0
- package/dist/tools/browser.d.ts.map +1 -0
- package/dist/tools/browser.js +80 -0
- package/dist/tools/browser.js.map +1 -0
- package/package.json +5 -5
- package/chat_models/universal.cjs +0 -1
- package/chat_models/universal.d.cts +0 -1
- package/chat_models/universal.d.ts +0 -1
- package/chat_models/universal.js +0 -1
- package/hub/node.cjs +0 -1
- package/hub/node.d.cts +0 -1
- package/hub/node.d.ts +0 -1
- package/hub/node.js +0 -1
- package/hub.cjs +0 -1
- package/hub.d.cts +0 -1
- package/hub.d.ts +0 -1
- package/hub.js +0 -1
- package/load/serializable.cjs +0 -1
- package/load/serializable.d.cts +0 -1
- package/load/serializable.d.ts +0 -1
- package/load/serializable.js +0 -1
- package/load.cjs +0 -1
- package/load.d.cts +0 -1
- package/load.d.ts +0 -1
- package/load.js +0 -1
- package/storage/encoder_backed.cjs +0 -1
- package/storage/encoder_backed.d.cts +0 -1
- package/storage/encoder_backed.d.ts +0 -1
- package/storage/encoder_backed.js +0 -1
- package/storage/file_system.cjs +0 -1
- package/storage/file_system.d.cts +0 -1
- package/storage/file_system.d.ts +0 -1
- package/storage/file_system.js +0 -1
- package/storage/in_memory.cjs +0 -1
- package/storage/in_memory.d.cts +0 -1
- package/storage/in_memory.d.ts +0 -1
- package/storage/in_memory.js +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"browser.js","names":["params: BrowserToolParams<SchemaT, OutputT>","coreTool","args: InferInteropZodOutput<SchemaT>","config?: ToolRunnableConfig"],"sources":["../../src/tools/browser.ts"],"sourcesContent":["/**\n * Browser Tools for LangChain Agents\n *\n * This module provides the `browserTool` primitive for creating tools that\n * execute in the browser while the agent runs on the server.\n *\n * @module\n */\n\nimport {\n tool as coreTool,\n DynamicStructuredTool,\n type ToolRunnableConfig,\n} from \"@langchain/core/tools\";\nimport type {\n InteropZodObject,\n InferInteropZodOutput,\n} from \"@langchain/core/utils/types\";\nimport { interrupt } from \"@langchain/langgraph\";\n\n/**\n * Check if we're running in a browser environment.\n */\nconst isBrowserEnvironment = (): boolean =>\n typeof window !== \"undefined\" &&\n typeof navigator !== \"undefined\" &&\n typeof document !== \"undefined\";\n\n/**\n * Parameters for creating a browser tool.\n */\nexport interface BrowserToolParams<\n SchemaT extends InteropZodObject,\n OutputT = unknown\n> {\n /**\n * The name of the tool. Must be unique across all tools.\n */\n name: string;\n\n /**\n * A description of what the tool does. This is shown to the LLM\n * to help it decide when to use the tool.\n */\n description: string;\n\n /**\n * The Zod schema defining the input parameters for the tool.\n */\n schema: SchemaT;\n\n /**\n * The function that executes the tool in the browser.\n * This function only runs in browser environments.\n *\n * @param args - The parsed input arguments matching the schema\n * @returns The tool output\n */\n execute: (args: InferInteropZodOutput<SchemaT>) => Promise<OutputT>;\n}\n\n/**\n * A browser tool that can be used in both server and client environments.\n *\n * On the server, it returns a Command that interrupts execution.\n * On the client, it executes the tool directly.\n */\nexport type BrowserTool<\n SchemaT extends InteropZodObject = InteropZodObject,\n OutputT = unknown\n> = DynamicStructuredTool<SchemaT> & {\n /**\n * The execute function for client-side use.\n * Called by `useStream` when the interrupt is received.\n */\n execute: (args: InferInteropZodOutput<SchemaT>) => Promise<OutputT>;\n};\n\n/**\n * Creates a browser tool that interrupts on the server and executes on the client.\n *\n * Browser tools are defined once and work in both environments:\n * - **Server**: Returns a `Command` that interrupts with the tool call details\n * - **Browser**: Executes the tool directly using browser APIs\n *\n * @example\n * ```typescript\n * import { browserTool } from \"langchain/tools/browser\";\n * import { z } from \"zod\";\n *\n * export const getLocation = browserTool({\n * name: \"get_location\",\n * description: \"Get the user's current GPS location\",\n * schema: z.object({\n * highAccuracy: z.boolean().optional().describe(\"Request high accuracy GPS\"),\n * }),\n * execute: async ({ highAccuracy }) => {\n * return new Promise((resolve, reject) => {\n * navigator.geolocation.getCurrentPosition(\n * (pos) => resolve({\n * latitude: pos.coords.latitude,\n * longitude: pos.coords.longitude,\n * }),\n * (err) => reject(new Error(err.message)),\n * { enableHighAccuracy: highAccuracy }\n * );\n * });\n * },\n * });\n *\n * // Use in createAgent (server)\n * const agent = createAgent({\n * model: \"openai:gpt-4o\",\n * tools: [getLocation],\n * });\n *\n * // Use in useStream (client)\n * const stream = useStream({\n * assistantId: \"agent\",\n * browserTools: [getLocation],\n * });\n * ```\n *\n * @param params - The browser tool configuration\n * @returns A browser tool that can be used in both environments\n */\nexport function browserTool<\n SchemaT extends InteropZodObject,\n OutputT = unknown\n>(params: BrowserToolParams<SchemaT, OutputT>): BrowserTool<SchemaT, OutputT> {\n const { execute, name, description, schema } = params;\n\n // Create the underlying tool using @langchain/core's tool function\n const wrappedTool = coreTool(\n async (\n args: InferInteropZodOutput<SchemaT>,\n config?: ToolRunnableConfig\n ) => {\n // In browser: execute the tool directly\n if (isBrowserEnvironment()) {\n return execute(args);\n }\n\n // On server: interrupt and wait for client to execute\n // The interrupt value contains the tool call details for the client\n return interrupt({\n type: \"browser_tool\",\n toolCall: {\n id: config?.toolCall?.id,\n name,\n args,\n },\n });\n },\n {\n name,\n description,\n schema,\n // Mark as browser tool in metadata for detection\n metadata: {\n browserTool: true,\n },\n }\n );\n\n // Attach the execute function for explicit client-side use (e.g., in useStream)\n return Object.assign(wrappedTool, { execute }) as BrowserTool<\n SchemaT,\n OutputT\n >;\n}\n"],"mappings":";;;;;;;AAuBA,MAAM,uBAAuB,MAC3B,OAAO,WAAW,eAClB,OAAO,cAAc,eACrB,OAAO,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAoGtB,SAAgB,YAGdA,QAA4E;CAC5E,MAAM,EAAE,SAAS,MAAM,aAAa,QAAQ,GAAG;CAG/C,MAAM,cAAcC,KAClB,OACEC,MACAC,WACG;AAEH,MAAI,sBAAsB,CACxB,QAAO,QAAQ,KAAK;AAKtB,SAAO,UAAU;GACf,MAAM;GACN,UAAU;IACR,IAAI,QAAQ,UAAU;IACtB;IACA;GACD;EACF,EAAC;CACH,GACD;EACE;EACA;EACA;EAEA,UAAU,EACR,aAAa,KACd;CACF,EACF;AAGD,QAAO,OAAO,OAAO,aAAa,EAAE,QAAS,EAAC;AAI/C"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "langchain",
|
|
3
|
-
"version": "1.2.
|
|
3
|
+
"version": "1.2.3-dev-1766726832377",
|
|
4
4
|
"description": "Typescript bindings for langchain",
|
|
5
5
|
"author": "LangChain",
|
|
6
6
|
"license": "MIT",
|
|
@@ -53,20 +53,20 @@
|
|
|
53
53
|
"typescript": "~5.8.3",
|
|
54
54
|
"vitest": "^3.2.4",
|
|
55
55
|
"yaml": "^2.8.1",
|
|
56
|
-
"@langchain/anthropic": "1.3.
|
|
56
|
+
"@langchain/anthropic": "1.3.3-dev-1766726832377",
|
|
57
57
|
"@langchain/cohere": "1.0.1",
|
|
58
|
-
"@langchain/core": "1.1.
|
|
58
|
+
"@langchain/core": "1.1.8-dev-1766726832377",
|
|
59
59
|
"@langchain/eslint": "0.1.1",
|
|
60
60
|
"@langchain/openai": "1.2.0",
|
|
61
61
|
"@langchain/tsconfig": "0.0.1"
|
|
62
62
|
},
|
|
63
63
|
"peerDependencies": {
|
|
64
|
-
"@langchain/core": "1.1.
|
|
64
|
+
"@langchain/core": "1.1.8-dev-1766726832377"
|
|
65
65
|
},
|
|
66
66
|
"dependencies": {
|
|
67
67
|
"@langchain/langgraph": "^1.0.0",
|
|
68
68
|
"@langchain/langgraph-checkpoint": "^1.0.0",
|
|
69
|
-
"langsmith": "
|
|
69
|
+
"langsmith": ">=0.4.0 <1.0.0",
|
|
70
70
|
"uuid": "^10.0.0",
|
|
71
71
|
"zod": "^3.25.76 || ^4"
|
|
72
72
|
},
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
module.exports = require("../dist/chat_models/universal.cjs");
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from "../dist/chat_models/universal.js";
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from "../dist/chat_models/universal.js";
|
package/chat_models/universal.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from "../dist/chat_models/universal.js";
|
package/hub/node.cjs
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
module.exports = require("../dist/hub/node.cjs");
|
package/hub/node.d.cts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from "../dist/hub/node.js";
|
package/hub/node.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from "../dist/hub/node.js";
|
package/hub/node.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from "../dist/hub/node.js";
|
package/hub.cjs
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
module.exports = require("./dist/hub/index.cjs");
|
package/hub.d.cts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from "./dist/hub/index.js";
|
package/hub.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from "./dist/hub/index.js";
|
package/hub.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from "./dist/hub/index.js";
|
package/load/serializable.cjs
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
module.exports = require("../dist/load/serializable.cjs");
|
package/load/serializable.d.cts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from "../dist/load/serializable.js";
|
package/load/serializable.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from "../dist/load/serializable.js";
|
package/load/serializable.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from "../dist/load/serializable.js";
|
package/load.cjs
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
module.exports = require("./dist/load/index.cjs");
|
package/load.d.cts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from "./dist/load/index.js";
|
package/load.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from "./dist/load/index.js";
|
package/load.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from "./dist/load/index.js";
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
module.exports = require("../dist/storage/encoder_backed.cjs");
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from "../dist/storage/encoder_backed.js";
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from "../dist/storage/encoder_backed.js";
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from "../dist/storage/encoder_backed.js";
|
package/storage/file_system.cjs
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
module.exports = require("../dist/storage/file_system.cjs");
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from "../dist/storage/file_system.js";
|
package/storage/file_system.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from "../dist/storage/file_system.js";
|
package/storage/file_system.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from "../dist/storage/file_system.js";
|
package/storage/in_memory.cjs
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
module.exports = require("../dist/storage/in_memory.cjs");
|
package/storage/in_memory.d.cts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from "../dist/storage/in_memory.js";
|
package/storage/in_memory.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from "../dist/storage/in_memory.js";
|
package/storage/in_memory.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from "../dist/storage/in_memory.js";
|