NeoFish
🎯人人可用的Agent,你的终极数字奴隶。让Agent帮你处理一切,提前享受纯粹的未来生活,穿越到2050年的通行证 | A conversational AI agent capable of autonomous browser automation
Install / Use
/learn @LangQi99/NeoFishREADME
🌟 什么是 NeoFish?
NeoFish 是一款旨在让人人都能轻松使用的全能 AI Agent 原型系统。它不仅是一个可以聊天的助手,更是一个能够真正操控浏览器、接管繁琐工作的数字劳动力。无需复杂的编程知识,只要用自然语言下达指令,NeoFish 就能像你最忠诚的“数字奴隶”一样,不知疲倦地在网页中为你点击、输入、提取信息、完成任务。
<p align="center"> <img src="docs/readme_img/what-can-i-do-4-u.png" alt="NeoFish 主界面" width="800"> </p>✨ 核心特性
<p align="center"> <img src="docs/readme_img/takeover.png" alt="NeoFish 接管浏览器" width="800"> </p>- 🤖 全能浏览器交互: 深度集成
Playwright引擎,支持页面导航、元素点击、键盘输入、滚动和截图分析。 - 🌐 多平台兼容接入: 当前已支持
Web、Telegram (TG)、QQ三端接入,同一套 Agent 核心可复用到不同平台。 - ⚡️ 极速实时流式响应: 基于
FastAPI和WebSocket架构,实现后台 Agent 思考过程与前端 UI 的毫秒级状态同步。 - 🎨 现代化丝滑前端 UI: 采用
Vue 3+Tailwind CSS打造的极简质感界面,内置流畅的对话滚动与状态指示。 - 🌍 原生多语言支持: 完整的中英文 (
i18n) 支持,侧边栏一键顺滑切换。 - 🧠 智能停顿与人工介入: 当 Agent 遇到阻碍(如遇到验证码、需要扫码登录时),会自动暂停并截取当前画面发送给用户,等待人类确认后继续执行。
- 🛠️ 极简配置接入: 通过标准
.env配置,轻松接入任何支持工具调用 (Tool Use) 的大模型 API(默认兼容 Anthropic/OpenAI 接口规范)。
🏗️ 架构概览
NeoFish 采用轻量级的前后端分离架构设计:
- 服务端 (Backend): Python (
FastAPI+Playwright)- 负责维护浏览器进程上下文。
- 通过 WebSocket 接受前端指令。
- 运行 Agent 核心逻辑:思考(Think) -> 调用工具(Action) -> 观察反馈(Observation)。
- 客户端 (Frontend): Web (
Vue 3+Vite+TailwindCSS)- 负责与用户的交互可视化。
- 实时渲染 Agent 的执行动作、日志和错误提示。
- 内置完整的国际化语言包。
- 平台适配层 (Platform Adapters):
Web/Telegram (TG)/QQ- 统一将不同平台消息转换为同一套 Agent 输入输出协议。
- 可按配置单独启动,也可通过
run_all.py同时运行多个平台入口。
🚀 快速开始
1. 环境准备
确保你已安装强大的 Python 依赖管理工具 uv 以及 Node.js。
2. 克隆项目
git clone https://github.com/LangQi99/NeoFish.git
cd NeoFish
3. 配置环境变量
在根目录创建或修改 .env 文件:
ANTHROPIC_API_KEY=your_api_key_here
ANTHROPIC_BASE_URL=https://api.your-proxy.com
MODEL_NAME=claude-3-7-sonnet-20250219
4. 启动后端 (Agent 服务)
后端将自动安装所需依赖并启动网页交互引擎(首次运行可能会下载浏览器内核):
uv run uvicorn main:app
服务将运行在 http://127.0.0.1:8000
说明:
- 如提示安装playwright 可以使用
uv run playwright install
5. 启动前端 (UI 界面)
打开一个新的终端窗口:
cd frontend
npm install
npm run dev
打开浏览器访问 http://localhost:5173 即可开始体验!
💡 使用场景示例
你可以对 NeoFish 说出以下指令:
-
"帮我打开掘金,搜索 'Vue3 性能优化',并把前三篇文章的标题和链接总结给我。"
-
"进入 Github,查看趋势榜单,截个图发给我。"
-
"总结oiwiki的kmp内容然后发到小红书上"
<img src="docs/readme_img/image.png" alt="NeoFish 接管浏览器" width="800"> -
"帮我填写一份调查问卷..."
<img src="docs/readme_img/image_1.png" alt="NeoFish 接管浏览器" width="800"> <img src="docs/readme_img/image_2.png" alt="NeoFish 接管浏览器" width="800"> -
"根据我的b站视频浏览记录分析我的喜好/作息/行为特点" <img src="docs/readme_img/cd2b0c7107914acea3318078c12d83a4.jpg" alt="NeoFish 接管浏览器" width="800"> <img src="docs/readme_img/52431414c1a8749059c44c68b32451a1.jpg" alt="NeoFish 接管浏览器" width="800"> <img src="docs/readme_img/image_copy.png" alt="NeoFish 接管浏览器" width="800">
🤝 参与贡献
NeoFish 欢迎任何形式的贡献!无论你是想修复 Bug、添加新功能,还是改进文档,都非常欢迎提交 Pull Request。
⭐ Star History
<div align="center"> <sub>Built with ❤️ by LangQi99 & the Open Source Community.</sub> </div>
