Page Agent

Embed a natural-language GUI agent that operates your web interface in place.

Stars
★ 30k
Last updated
2mo ago
License
MIT
Primary language
TypeScript

At a glance

How it runs
Library / SDKBrowser extensionMCP server
Works with
Portable with changes
Cost
Free software; you pay for model usage
Setup effort
Low · running in minutes
You'll need
npmNetwork accessMCP Server
Typical use
A SaaS product team embedding a natural-language copilot in an existing web application without rewriting its backend.
Not a fit if
  • Teams needing server-side or unattended batch automation
  • Teams needing stable production cross-tab control (MCP is still beta)

What does this agent do, and when should you use it?

Page Agent is a JavaScript GUI-agent library that can be embedded in a web page. Developers can add PageAgent through a script or npm package and drive page interactions with natural-language instructions. It processes the DOM as text and does not require screenshots, multimodal models, or special permissions. Its stated boundary is client-side web enhancement rather than server-side automation; an optional Chrome extension supports cross-tab work, and a beta MCP Server enables external MCP clients to control the browser. The project supports bring-your-own models, including mainstream and locally deployed models according to the README.

After Page Agent is loaded, an application can create new PageAgent(...) with model, baseURL, apiKey, and an optional language. It then calls await agent.execute('Click the login button'), allowing the agent to carry out the requested interface action through a text representation of the page DOM. The quickest trial path loads page-agent.demo.js, which automatically creates a demo agent; adding ?autoInit=false disables that behavior so you can instantiate window.PageAgent yourself. The optional Chrome extension handles multi-tab browser tasks, while the beta MCP Server allows external MCP clients to control the browser.

  1. A SaaS product team embedding a natural-language copilot in an existing web application without rewriting its backend.
  2. An ERP, CRM, or admin-system user completing a form workflow that would otherwise take many clicks.
  3. A user relying on voice commands or screen-reader-oriented access to operate a web application through natural language.
  4. A browser user who needs a task to span multiple tabs and can use the optional Chrome extension.
  5. A team using an MCP client to control a browser through the beta MCP Server.

How do you install or deploy this agent?

Install the package with npm install page-agent. In browser-side code, import PageAgent and provide access to a model service, including its model name, baseURL, and apiKey. Alternatively, load the demo script directly: <script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/iife/page-agent.demo.js" crossorigin="anonymous"></script>; its free testing LLM API is for technical evaluation only and is subject to its terms.

How do you use this agent?

Import PageAgent from the package, then create an agent with the model name, compatible model-service baseURL, API key, and optional language used by your page. The example below uses qwen3.5-plus, an en-US language value, and a compatible-mode API endpoint. After initialization, pass the natural-language instruction Click the login button to agent.execute(...); the agent performs the requested interface action through its text representation of the page DOM.

import { PageAgent } from 'page-agent'

const agent = new PageAgent({
  model: 'qwen3.5-plus',
  baseURL: 'https://dashscope.aliyuncs.com/compatible-mode/v1',
  apiKey: 'YOUR_API_KEY',
  language: 'en-US',
})

await agent.execute('Click the login button')

What are this agent's strengths and limitations?

Pros
  • Runs directly in the page, with no browser extension, Python, or headless browser required for basic integration.
  • Uses text-based DOM manipulation rather than screenshots, multimodal LLMs, or special permissions.
  • Offers both an npm API and an immediately embeddable IIFE demo script.
  • Can extend to multi-tab tasks through a Chrome extension and exposes a beta MCP Server for external clients.
Limitations
  • It is explicitly designed for client-side web enhancement, not server-side automation.
  • Bring-your-own-model usage requires configuring a model service endpoint, model name, and API key.
  • The demo CDN's free testing LLM API is limited to technical evaluation and subject to terms.
  • Cross-page work depends on the optional Chrome extension, and the MCP Server for external browser control is still beta.

How does this agent compare with similar options?

The README states that its DOM-processing components and prompts are derived from browser-use, and credits that project for its web-automation and DOM-interaction patterns.

Key facts side by side with the most closely related agents.

Agent Source review Form / cost Stars Updated Language Full support on
Page Agent This agent 48 · Major gaps Library / SDKFree + model costs ★ 30k 2mo ago TypeScript —
OpenTabs 49 · Major gaps CLIFree + model costs ★ 1k 3mo ago TypeScript Claude Code
Interceptor 57 · Major gaps CLIFree ★ 603 1d ago TypeScript Codex · Claude Code · Claude.ai
byob (Bring Your Own Browser) 48 · Major gaps MCP serverFree ★ 145 1mo ago JavaScript Codex · Claude Code

How does FollowAgents rate this agent?

FollowAgents source review · FARS-2.1
Major gaps
48/ 100 5-point scale 2.4 / 5
This review covers the source as of Aug 09, 2026. The project has shipped 2 stable release(s) since, which have not been re-reviewed. The score and verdict describe the reviewed version only. Recent releases ↓
Trust 8/29
Reliability 8/14
Adaptability 10/18
Convention 10/18
Effectiveness 9/13
Verifiability 3/8
Why each dimension lost points
Trust8 / 29 · 1.4/5

Evidence shows: runs in-browser without special permissions, but least privilege not explicitly stated; user confirmation mechanisms exist but not detailed; data flow transparency insufficient; sensitive data handling not explicit; dependency security not audited; external effects (DOM manipulation) described but not deep; rollback not mentioned; source attribution via MIT license and acknowledgments, but publisher unverified. Deductions: lack of implementation details and evidence.

Reliability8 / 14 · 2.9/5

Evidence shows: clear project structure, docs consistent with code; dependencies via npm with CI; error messages not detailed. Deductions: insufficient error handling details.

Adaptability10 / 18 · 2.8/5

Evidence shows: targets multiple scenarios (SaaS, form filling, accessibility), capability boundaries stated (client-side only), trigger method clear (natural language), environment fit good (supports multiple models). Deductions: trigger precision not detailed.

Convention10 / 18 · 2.8/5

Evidence shows: clear information architecture, detailed install notes, stable naming, examples and FAQ present, known limitations partially mentioned, license clear, version exists but no changelog, maintenance responsibility stated. Deductions: missing changelog and detailed known limitations.

Effectiveness9 / 13 · 3.5/5

Evidence shows: high output usability (natural language commands), clear marginal value (simplifies interaction), reasonable cost-benefit (no backend needed). Deductions: lack of actual run verification.

Verifiability3 / 8 · 1.9/5

Evidence shows: some claims supported by docs, but lack independent verification; facts and inferences not clearly separated. Deductions: lack of traceability and cross-validation.

Risks and how to mitigate them
  • Not found in source: rollback or recovery pathBack up first, or work on a git branch or snapshot, so its changes can be undone.
  • Publisher identity unverified, handle with caution.
  • Dependency security not audited, recommend checking for vulnerabilities.
  • Data flow and sensitive data handling details insufficient, further review needed.
  • Rollback mechanism not mentioned, operations may be irreversible.
Evidence confidence: Low Reviewed Aug 09, 2026 Reviewed revision 632424befdf0 New commits since this review; the score may not cover them
See the full review method →

Recent releases

Latest entries from the project's GitHub Releases. Notes are quoted from upstream as written, not rewritten or tested by FollowAgents.

  1. v1.12.4 🌟v1.12.4
    Release notes excerpt
    What's Changed * feat: update models by @gaomeng1900 in https://github.com/alibaba/page-agent/pull/713 * chore: fix size badge by @gaomeng1900 in https://github.com/alibaba/page-agent/pull/714 Full Changelog: https://github.com/alibaba/page-agent/compare/v1.12.3...v1.12.4
    View on GitHub ↗
  2. v1.12.3 🌟v1.12.3
    Release notes excerpt
    What's Changed * chore: add a skill to auto maintain the model list by @gaomeng1900 in https://github.com/alibaba/page-agent/pull/624 * feat(llms): add Kimi K3 support by @gaomeng1900 in https://github.com/alibaba/page-agent/pull/625 * chore(deps): bump actions/setup-node from 6 to 7 in the github-actions group by @dependabot[bot] in https://github.com/alibaba/page-agent/pull/627 * chore(deps): bump ws from 8.21.0 to 8.21.1 in the production-dependencies group by @dependabot[bot] in https://github.com/alibaba/page-agent/pull/628 …
    View on GitHub ↗
  3. v1.12.2 🌟v1.12.2
    Release notes excerpt
    What's Changed * chore(deps): bump root, website, and extension dependencies by @gaomeng1900 in https://github.com/alibaba/page-agent/pull/612 * chore(deps-dev): bump the development-dependencies group with 4 updates by @dependabot[bot] in https://github.com/alibaba/page-agent/pull/615 * docs: CDN quick start in README and website by @gaomeng1900 in https://github.com/alibaba/page-agent/pull/617 * feat(extension): honor AbortSignal in tab tools and tab-load wait by @Mordris in https://github.com/alibaba/page-agent/pull/590 New Contributors …
    View on GitHub ↗

FAQ

Does Page Agent run on a server?
No. The README positions it as client-side web enhancement rather than server-side automation.
Am I locked to one model provider?
The README says you can bring your own model and supports mainstream and locally deployed models; the example uses qwen3.5-plus with a compatible-mode API endpoint.
What is needed to try the demo script?
Loading the specified CDN script automatically initializes a demo agent, but its free testing LLM API is only for technical evaluation and subject to terms.
Can it work across browser tabs?
Yes, multi-page or cross-tab tasks are supported through the optional Chrome extension.
Does it rely on screenshots to understand the page?
The README says it uses text-based DOM manipulation and does not use screenshots or multimodal LLMs.
View on GitHub ↗ Install ↓

Compare agents like this one

The same FARS review applied across the shortlist this agent qualifies for.

Related agents