Skip to content

alibaba/page-agent

PageAgent πŸ€–πŸͺ„

banner

npm version License: MIT TypeScript Downloads Bundle Size GitHub stars

The GUI Agent Living in Your Webpage. Control web interfaces with natural language.

🌐 English | δΈ­ζ–‡

πŸ‘‰ πŸš€ Demo | πŸ“– Documentation

-.-.mp4


✨ Features

  • 🎯 Easy Integration - Transform your webpage into an agent with a single script tag.
  • πŸ” Client-Side Processing
  • 🧠 DOM Extraction
  • πŸ’¬ Natural Language Interface
  • 🎨 UI with Human in the loop

πŸ—ΊοΈ Roadmap

πŸ‘‰ Roadmap

πŸš€ Quick Start

Quick Try (Demo CDN)

Fastest way to try PageAgent:

<script src="https://cdn.jsdelivr.net/npm/@page-agent/cdn/dist/page-agent.demo.js" crossorigin="true"></script>

⚠️ For technical evaluation only. Demo model has rate limits and usage restrictions. Use NPM for production.

Location URL
Global https://cdn.jsdelivr.net/npm/@page-agent/cdn/dist/page-agent.demo.js
China https://registry.npmmirror.com/@page-agent/cdn/latest/files/dist/page-agent.demo.js

NPM Installation (Recommended)

npm install page-agent
import { PageAgent } from 'page-agent'

const agent = new PageAgent({
	model: 'deepseek-chat',
	baseURL: 'https://api.deepseek.com',
	apiKey: 'YOUR_API_KEY',
	language: 'en-US',
})

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

CDN Build

For environments where NPM is not available. Usage is identical to NPM:

<script src="https://cdn.jsdelivr.net/npm/@page-agent/cdn/dist/page-agent.js" crossorigin="true"></script>
<script>
const agent = new PageAgent({
	model: 'deepseek-chat',
	baseURL: 'https://api.deepseek.com',
	apiKey: 'YOUR_API_KEY',
})
await agent.execute('Click the login button')
</script>
Location URL
Global https://cdn.jsdelivr.net/npm/@page-agent/cdn/dist/page-agent.js
China https://registry.npmmirror.com/@page-agent/cdn/latest/files/dist/page-agent.js

πŸ—οΈ Structure

PageAgent adopts a simplified monorepo structure:

packages/
β”œβ”€β”€ page-agent/          # AI agent (npm: page-agent)
β”œβ”€β”€ llms/                # LLM client (npm: @page-agent/llms)
β”œβ”€β”€ page-controller/     # DOM operations & Visual Mask (npm: @page-agent/page-controller)
β”œβ”€β”€ ui/                  # Panel & i18n (npm: @page-agent/ui)
β”œβ”€β”€ cdn/                 # CDN IIFE builds (npm: @page-agent/cdn)
└── website/             # Demo & Documentation site

🀝 Contributing

We welcome contributions from the community! Here's how to get started:

Setup

  1. Fork the repository
  2. Clone your fork: git clone https://github.com/alibaba/page-agent.git && cd page-agent
  3. Install dependencies: npm install
  4. Start development: npm start

Contributing Guidelines

Please read our Code of Conduct and Contributing Guide before contributing.

πŸ‘ Acknowledgments

This project builds upon the excellent work of:

PageAgent is designed for client-side web enhancement, not server-side automation.

πŸ“„ License

MIT License - see the LICENSE file for details.

DOM processing components and prompt are derived from browser-use:

Browser Use
Copyright (c) 2024 Gregor Zunic
Licensed under the MIT License

Original browser-use project: <https://github.com/browser-use/browser-use>

We gratefully acknowledge the browser-use project and its contributors for their
excellent work on web automation and DOM interaction patterns that helped make
this project possible.

Third-party dependencies and their licenses can be found in the package.json
file and in the node_modules directory after installation.

⭐ Star this repo if you find PageAgent helpful!

About

JavaScript in-page GUI agent. Control web interfaces with natural language.

Topics

Resources

License

Code of conduct

Contributing

Stars

Watchers

Forks

Contributors 5