
Security News
Attackers Are Hunting High-Impact Node.js Maintainers in a Coordinated Social Engineering Campaign
Multiple high-impact npm maintainers confirm they have been targeted in the same social engineering campaign that compromised Axios.
langchainjs-browsing
Advanced tools
LangChain library that provides browser automation tools for AI agents
A LangChain library that provides browser automation tools for AI agents. This package allows AI agents to interact with web pages through a set of browser automation tools.
npm install langchainjs-browsing langchain puppeteer
# or
bun install langchainjs-browsing langchain puppeteer
import { createAgent } from "langchain";
import { launch } from "puppeteer";
import { ChatGoogleGenerativeAI } from "@langchain/google-genai";
import { createBrowsingMiddleware } from "langchainjs-browsing";
// Launch a Puppeteer browser
const browser = await launch({ headless: false });
const page = await browser.newPage();
// Create your LLM
const model = new ChatGoogleGenerativeAI({
model: "gemini-2.5-flash",
apiKey: process.env.GOOGLE_API_KEY,
});
// Create an agent with the browsing library
const agent = createAgent({
model,
middleware: [createBrowsingMiddleware({ page })],
});
// Use the agent to browse and interact with web pages
const response = await agent.invoke({
messages: ["Navigate to https://example.com and tell me what you see."],
});
console.log(response.messages.at(-1)?.text);
You can choose which tools to make available to the agent:
const agent = createAgent({
model,
middleware: [
createBrowsingMiddleware({
page,
includeTools: {
goto: true,
click: true,
type: true,
viewPage: true,
getScreenshot: false, // Exclude screenshot tool
inspectNetwork: false, // Exclude network inspector
},
}),
],
});
The library provides the following tools:
goto - Navigate to a URL in the current browsing sessionclick - Click an element using a CSS selectortype - Type text into an input element using a CSS selectorevaluate - Execute JavaScript code in the browsing session contextviewPage - View the current browsing session in a simplified form containing only 'interesting' elementsinspectHTML - Inspect the outer HTML of a specific element or the entire pageinspectConsole - Retrieve console logs from the current browsing sessioninspectNetwork - Inspect network logs of the current sessiongetCookies - Return cookies for the current session as a JSON stringgetScreenshot - Take a screenshot of the current browsing sessioncreateBrowsingMiddleware(options)Creates browsing tools for LangChain agents.
page (required): A Puppeteer Page instanceincludeTools (optional): An object to selectively enable/disable tools
Partial<Record<ToolName, boolean>>type ToolName =
| "goto"
| "click"
| "type"
| "evaluate"
| "getCookies"
| "viewPage"
| "getScreenshot"
| "inspectHTML"
| "inspectConsole"
| "inspectNetwork";
bun install
bun start
bun run build
bun test
bun run format
MIT
FAQs
LangChain library that provides browser automation tools for AI agents
We found that langchainjs-browsing demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Security News
Multiple high-impact npm maintainers confirm they have been targeted in the same social engineering campaign that compromised Axios.

Security News
Axios compromise traced to social engineering, showing how attacks on maintainers can bypass controls and expose the broader software supply chain.

Security News
Node.js has paused its bug bounty program after funding ended, removing payouts for vulnerability reports but keeping its security process unchanged.