一个使用WebLLM在设备上完全运行AI驱动的网页自动化的Chrome扩展。无需云API,无需API密钥,完全私密。
https://github.com/user-attachments/assets/898cc5c2-db77-4067-96e6-233c5da2bae5
克隆并安装依赖:
cd local-browser
npm install
构建扩展:
npm run build
在Chrome中加载:
chrome://extensionsdist 文件夹首次运行:
npm run dev
这会监听更改并自动重新构建。
local-browser/
├── manifest.json # Chrome扩展清单(MV3)
├── src/
│ ├── background/ # Service Worker
│ │ ├── index.ts # 入口点与消息处理
│ │ ├── llm-engine.ts # WebLLM封装
│ │ └── agents/ # AI智能体系统
│ │ ├── base-agent.ts
│ │ ├── planner-agent.ts
│ │ ├── navigator-agent.ts
│ │ └── executor.ts
│ ├── content/ # 内容脚本
│ │ ├── dom-observer.ts # 页面状态提取
│ │ └── action-executor.ts
│ ├── popup/ # React弹出UI
│ │ ├── App.tsx
│ │ └── components/
│ └── shared/ # 共享类型与常量
└── dist/ # 构建输出
该扩展采用灵感来自Nanobrowser的双智能体架构:
两个智能体都输出结构化的JSON,供解析和执行。
默认模型:Qwen2.5-1.5B-Instruct-q4f16_1-MLC(约1GB)
替代模型(在 src/shared/constants.ts 中配置):
Phi-3.5-mini-instruct-q4f16_1-MLC(约2GB,推理能力更强)Llama-3.2-1B-Instruct-q4f16_1-MLC(约0.7GB,更小)chrome://gpu 以验证WebGPU状态chrome://、扩展页面)chrome://extensions本项目灵感来源于:
| 包 | 许可证 |
|---|---|
| @mlc-ai/web-llm | Apache-2.0 |
| React | MIT |
| Vite | MIT |
| @crxjs/vite-plugin | MIT |
| TypeScript |
MIT许可证 - 详情请见LICENSE文件。
| Apache-2.0 |