107 lines
3.2 KiB
Markdown
107 lines
3.2 KiB
Markdown
# PageAgent 🤖🪄
|
|
|
|
> Unfinished Project. See [**Roadmap**](./ROADMAP.md)
|
|
|
|

|
|
|
|
[](https://badge.fury.io/js/page-agent) [](https://opensource.org/licenses/MIT) [](http://www.typescriptlang.org/) [](https://www.npmjs.com/package/page-agent) [](https://bundlephobia.com/package/page-agent) [](https://github.com/alibaba/page-agent)
|
|
|
|
**Transform any webpage into an AI-powered application with a single script tag.**
|
|
|
|
An in-page UI agent in javascript. Control web interfaces with natural language.
|
|
|
|
🌐 **English** | [中文](./README-zh.md)
|
|
|
|
👉 [🚀 **Demo**](https://alibaba.github.io/page-agent/) | [📖 **Documentation**](https://alibaba.github.io/page-agent/#/docs/introduction/overview)
|
|
|
|
---
|
|
|
|
## ✨ Features
|
|
|
|
- **🎯 Easy Integration**
|
|
- **🔐 Client-Side Processing**
|
|
- **🧠 DOM Extraction**
|
|
- **💬 Natural Language Interface**
|
|
- **🎨 UI with Human in the loop**
|
|
|
|
## 🗺️ Roadmap
|
|
|
|
👉 [**Roadmap**](./ROADMAP.md)
|
|
|
|
## 🚀 Quick Start
|
|
|
|
### CDN Integration
|
|
|
|
> **TODO**: CDN endpoint to be determined.
|
|
|
|
```html
|
|
<!-- CDN script tag - URL to be updated -->
|
|
<script src="TODO-CDN-URL"></script>
|
|
```
|
|
|
|
### NPM Installation
|
|
|
|
```bash
|
|
npm install page-agent
|
|
```
|
|
|
|
```javascript
|
|
import { PageAgent } from 'page-agent'
|
|
|
|
const agent = new PageAgent({
|
|
modelName: 'gpt-4.1-mini',
|
|
baseURL: 'xxxx',
|
|
apiKey: 'xxxx'
|
|
})
|
|
|
|
await agent.execute("Click the login button")
|
|
```
|
|
|
|
## 🏗️ Structure
|
|
|
|
PageAgent follows a clean, modular architecture:
|
|
|
|
```
|
|
src/
|
|
├── PageAgent.ts # Agent main loop
|
|
├── dom/ # DOM processing
|
|
├── tools/ # Agent tools
|
|
├── ui/ # UI components & panels
|
|
├── llms/ # LLM integration layer
|
|
└── utils/ # Event bus & utilities
|
|
```
|
|
|
|
## 🤝 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](CODE_OF_CONDUCT.md) and [Contributing Guide](CONTRIBUTING.md) before contributing.
|
|
|
|
## 👏 Acknowledgments
|
|
|
|
This project builds upon the excellent work of:
|
|
|
|
- **[browser-use](https://github.com/browser-use/browser-use)**
|
|
- **[ai-sdk](https://ai-sdk.dev/)**
|
|
|
|
PageAgent is designed for **client-side web enhancement**, not server-side automation.
|
|
|
|
## 📄 License
|
|
|
|
MIT License - see the [LICENSE](LICENSE) file for details.
|
|
|
|
DOM processing components and prompt are derived from [browser-use](https://github.com/browser-use/browser-use) (MIT License). See [NOTICE](NOTICE) for full attribution.
|
|
|
|
---
|
|
|
|
**⭐ Star this repo if you find PageAgent helpful!**
|