[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"similar-Usagi-org--ai-goofish-monitor":3,"tool-Usagi-org--ai-goofish-monitor":61},[4,18,26,36,44,53],{"id":5,"name":6,"github_repo":7,"description_zh":8,"stars":9,"difficulty_score":10,"last_commit_at":11,"category_tags":12,"status":17},4358,"openclaw","openclaw\u002Fopenclaw","OpenClaw 是一款专为个人打造的本地化 AI 助手，旨在让你在自己的设备上拥有完全可控的智能伙伴。它打破了传统 AI 助手局限于特定网页或应用的束缚，能够直接接入你日常使用的各类通讯渠道，包括微信、WhatsApp、Telegram、Discord、iMessage 等数十种平台。无论你在哪个聊天软件中发送消息，OpenClaw 都能即时响应，甚至支持在 macOS、iOS 和 Android 设备上进行语音交互，并提供实时的画布渲染功能供你操控。\n\n这款工具主要解决了用户对数据隐私、响应速度以及“始终在线”体验的需求。通过将 AI 部署在本地，用户无需依赖云端服务即可享受快速、私密的智能辅助，真正实现了“你的数据，你做主”。其独特的技术亮点在于强大的网关架构，将控制平面与核心助手分离，确保跨平台通信的流畅性与扩展性。\n\nOpenClaw 非常适合希望构建个性化工作流的技术爱好者、开发者，以及注重隐私保护且不愿被单一生态绑定的普通用户。只要具备基础的终端操作能力（支持 macOS、Linux 及 Windows WSL2），即可通过简单的命令行引导完成部署。如果你渴望拥有一个懂你",349277,3,"2026-04-06T06:32:30",[13,14,15,16],"Agent","开发框架","图像","数据工具","ready",{"id":19,"name":20,"github_repo":21,"description_zh":22,"stars":23,"difficulty_score":10,"last_commit_at":24,"category_tags":25,"status":17},3808,"stable-diffusion-webui","AUTOMATIC1111\u002Fstable-diffusion-webui","stable-diffusion-webui 是一个基于 Gradio 构建的网页版操作界面，旨在让用户能够轻松地在本地运行和使用强大的 Stable Diffusion 图像生成模型。它解决了原始模型依赖命令行、操作门槛高且功能分散的痛点，将复杂的 AI 绘图流程整合进一个直观易用的图形化平台。\n\n无论是希望快速上手的普通创作者、需要精细控制画面细节的设计师，还是想要深入探索模型潜力的开发者与研究人员，都能从中获益。其核心亮点在于极高的功能丰富度：不仅支持文生图、图生图、局部重绘（Inpainting）和外绘（Outpainting）等基础模式，还独创了注意力机制调整、提示词矩阵、负向提示词以及“高清修复”等高级功能。此外，它内置了 GFPGAN 和 CodeFormer 等人脸修复工具，支持多种神经网络放大算法，并允许用户通过插件系统无限扩展能力。即使是显存有限的设备，stable-diffusion-webui 也提供了相应的优化选项，让高质量的 AI 艺术创作变得触手可及。",162132,"2026-04-05T11:01:52",[14,15,13],{"id":27,"name":28,"github_repo":29,"description_zh":30,"stars":31,"difficulty_score":32,"last_commit_at":33,"category_tags":34,"status":17},1381,"everything-claude-code","affaan-m\u002Feverything-claude-code","everything-claude-code 是一套专为 AI 编程助手（如 Claude Code、Codex、Cursor 等）打造的高性能优化系统。它不仅仅是一组配置文件，而是一个经过长期实战打磨的完整框架，旨在解决 AI 代理在实际开发中面临的效率低下、记忆丢失、安全隐患及缺乏持续学习能力等核心痛点。\n\n通过引入技能模块化、直觉增强、记忆持久化机制以及内置的安全扫描功能，everything-claude-code 能显著提升 AI 在复杂任务中的表现，帮助开发者构建更稳定、更智能的生产级 AI 代理。其独特的“研究优先”开发理念和针对 Token 消耗的优化策略，使得模型响应更快、成本更低，同时有效防御潜在的攻击向量。\n\n这套工具特别适合软件开发者、AI 研究人员以及希望深度定制 AI 工作流的技术团队使用。无论您是在构建大型代码库，还是需要 AI 协助进行安全审计与自动化测试，everything-claude-code 都能提供强大的底层支持。作为一个曾荣获 Anthropic 黑客大奖的开源项目，它融合了多语言支持与丰富的实战钩子（hooks），让 AI 真正成长为懂上",151918,2,"2026-04-12T11:33:05",[14,13,35],"语言模型",{"id":37,"name":38,"github_repo":39,"description_zh":40,"stars":41,"difficulty_score":32,"last_commit_at":42,"category_tags":43,"status":17},2271,"ComfyUI","Comfy-Org\u002FComfyUI","ComfyUI 是一款功能强大且高度模块化的视觉 AI 引擎，专为设计和执行复杂的 Stable Diffusion 图像生成流程而打造。它摒弃了传统的代码编写模式，采用直观的节点式流程图界面，让用户通过连接不同的功能模块即可构建个性化的生成管线。\n\n这一设计巧妙解决了高级 AI 绘图工作流配置复杂、灵活性不足的痛点。用户无需具备编程背景，也能自由组合模型、调整参数并实时预览效果，轻松实现从基础文生图到多步骤高清修复等各类复杂任务。ComfyUI 拥有极佳的兼容性，不仅支持 Windows、macOS 和 Linux 全平台，还广泛适配 NVIDIA、AMD、Intel 及苹果 Silicon 等多种硬件架构，并率先支持 SDXL、Flux、SD3 等前沿模型。\n\n无论是希望深入探索算法潜力的研究人员和开发者，还是追求极致创作自由度的设计师与资深 AI 绘画爱好者，ComfyUI 都能提供强大的支持。其独特的模块化架构允许社区不断扩展新功能，使其成为当前最灵活、生态最丰富的开源扩散模型工具之一，帮助用户将创意高效转化为现实。",108322,"2026-04-10T11:39:34",[14,15,13],{"id":45,"name":46,"github_repo":47,"description_zh":48,"stars":49,"difficulty_score":32,"last_commit_at":50,"category_tags":51,"status":17},6121,"gemini-cli","google-gemini\u002Fgemini-cli","gemini-cli 是一款由谷歌推出的开源 AI 命令行工具，它将强大的 Gemini 大模型能力直接集成到用户的终端环境中。对于习惯在命令行工作的开发者而言，它提供了一条从输入提示词到获取模型响应的最短路径，无需切换窗口即可享受智能辅助。\n\n这款工具主要解决了开发过程中频繁上下文切换的痛点，让用户能在熟悉的终端界面内直接完成代码理解、生成、调试以及自动化运维任务。无论是查询大型代码库、根据草图生成应用，还是执行复杂的 Git 操作，gemini-cli 都能通过自然语言指令高效处理。\n\n它特别适合广大软件工程师、DevOps 人员及技术研究人员使用。其核心亮点包括支持高达 100 万 token 的超长上下文窗口，具备出色的逻辑推理能力；内置 Google 搜索、文件操作及 Shell 命令执行等实用工具；更独特的是，它支持 MCP（模型上下文协议），允许用户灵活扩展自定义集成，连接如图像生成等外部能力。此外，个人谷歌账号即可享受免费的额度支持，且项目基于 Apache 2.0 协议完全开源，是提升终端工作效率的理想助手。",100752,"2026-04-10T01:20:03",[52,13,15,14],"插件",{"id":54,"name":55,"github_repo":56,"description_zh":57,"stars":58,"difficulty_score":32,"last_commit_at":59,"category_tags":60,"status":17},4721,"markitdown","microsoft\u002Fmarkitdown","MarkItDown 是一款由微软 AutoGen 团队打造的轻量级 Python 工具，专为将各类文件高效转换为 Markdown 格式而设计。它支持 PDF、Word、Excel、PPT、图片（含 OCR）、音频（含语音转录）、HTML 乃至 YouTube 链接等多种格式的解析，能够精准提取文档中的标题、列表、表格和链接等关键结构信息。\n\n在人工智能应用日益普及的今天，大语言模型（LLM）虽擅长处理文本，却难以直接读取复杂的二进制办公文档。MarkItDown 恰好解决了这一痛点，它将非结构化或半结构化的文件转化为模型“原生理解”且 Token 效率极高的 Markdown 格式，成为连接本地文件与 AI 分析 pipeline 的理想桥梁。此外，它还提供了 MCP（模型上下文协议）服务器，可无缝集成到 Claude Desktop 等 LLM 应用中。\n\n这款工具特别适合开发者、数据科学家及 AI 研究人员使用，尤其是那些需要构建文档检索增强生成（RAG）系统、进行批量文本分析或希望让 AI 助手直接“阅读”本地文件的用户。虽然生成的内容也具备一定可读性，但其核心优势在于为机器",93400,"2026-04-06T19:52:38",[52,14],{"id":62,"github_repo":63,"name":64,"description_en":65,"description_zh":66,"ai_summary_zh":66,"readme_en":67,"readme_zh":68,"quickstart_zh":69,"use_case_zh":70,"hero_image_url":71,"owner_login":72,"owner_name":72,"owner_avatar_url":73,"owner_bio":74,"owner_company":75,"owner_location":75,"owner_email":76,"owner_twitter":75,"owner_website":75,"owner_url":77,"languages":78,"stars":109,"forks":110,"last_commit_at":111,"license":112,"difficulty_score":10,"env_os":113,"env_gpu":114,"env_ram":114,"env_deps":115,"category_tags":125,"github_topics":126,"view_count":32,"oss_zip_url":75,"oss_zip_packed_at":75,"status":17,"created_at":140,"updated_at":141,"faqs":142,"releases":183},6916,"Usagi-org\u002Fai-goofish-monitor","ai-goofish-monitor","基于 Playwright 和AI实现的闲鱼多任务实时\u002F定时监控与智能分析系统，配备了功能完善的后台管理UI。帮助用户从闲鱼海量商品中，找到心仪产品。","ai-goofish-monitor 是一款专为闲鱼平台打造的智能监控助手，旨在帮助用户从海量商品中高效锁定心仪好物。它解决了传统手动刷新效率低下、关键词匹配不够精准以及难以实时捕捉新上架优质商品的痛点。\n\n该工具基于 Playwright 浏览器自动化技术与多模态 AI 模型构建，不仅支持通过自然语言描述需求来自动创建监控任务，还能深度分析商品图片与文本信息，实现比传统关键词更聪明的筛选。系统提供完善的 Web 可视化管理界面，用户可轻松配置多任务并发、设定价格与区域范围、管理多个账号及代理池，并支持通过微信、Telegram 等多种渠道接收即时通知。此外，它还具备定时调度与数据持久化功能，确保监控稳定运行。\n\nai-goofish-monitor 特别适合希望在闲鱼“捡漏”的普通买家、需要批量追踪市场行情的二手商家，以及希望研究电商数据采集与 AI 应用结合的开发者。其独特的\"AI 驱动任务创建”与“多模态商品分析”能力，让监控过程更加智能化与人性化。项目支持 Docker 一键部署，降低了使用门槛，让用户能快速搭建属于自己的私人监控机器人。","# 闲鱼智能监控机器人\n\n[English README](README_EN.md)\n\n基于 Playwright 和 AI 的闲鱼多任务实时监控工具，提供完整的 Web 管理界面。\n\n\n## 核心特性\n\n- **Web 可视化管理**: 任务管理、账号管理、AI 标准编辑、运行日志、结果浏览\n- **AI 驱动**: 自然语言创建任务，多模态模型深度分析商品\n- **多任务并发**: 独立配置关键词、价格、筛选条件和 AI Prompt\n- **高级筛选**: 包邮、新发布时间范围、省\u002F市\u002F区三级区域筛选\n- **即时通知**: 支持 ntfy.sh、企业微信、Bark、Telegram、Webhook\n- **定时调度**: Cron 表达式配置周期性任务\n- **账号与代理轮换**: 多账号管理、任务绑定账号、代理池轮换与失败重试\n- **Docker 部署**: 一键容器化部署\n\n## 截图\n\n![监控概览](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FUsagi-org_ai-goofish-monitor_readme_3a0a3b8d7604.png)\n![任务管理](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FUsagi-org_ai-goofish-monitor_readme_b2cc6cd9847d.png)\n![结果查看](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FUsagi-org_ai-goofish-monitor_readme_e1da8e413e71.png)\n![通知推送](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FUsagi-org_ai-goofish-monitor_readme_184a77bc2f0b.png)\n\n## 🐳 Docker 部署（推荐）\n\n```bash\ngit clone https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor && cd ai-goofish-monitor\ncp .env.example .env\nvim .env # 填写相关配置项\ndocker compose up -d\ndocker compose logs -f app\ndocker compose down\n```\n\n如果镜像无法访问或下载速度慢，可尝试使用加速：\n```bash\n\ndocker pull ghcr.nju.edu.cn\u002Fusagi-org\u002Fai-goofish:latest\ndocker tag ghcr.nju.edu.cn\u002Fusagi-org\u002Fai-goofish:latest ghcr.io\u002Fusagi-org\u002Fai-goofish:latest\ndocker compose up -d\n\n```\n\n- 默认 Web UI 地址：`http:\u002F\u002F127.0.0.1:8000`\n- Docker 镜像已内置 Chromium，无需宿主机额外安装浏览器。\n- 官方镜像地址：`ghcr.io\u002Fusagi-org\u002Fai-goofish:latest`\n- 更新镜像：`docker compose pull && docker compose up -d`\n- 如果你修改了 `.env` 中的 `SERVER_PORT`，请同步更新 `docker-compose.yaml` 里的端口映射。\n- `docker-compose.yaml` 默认会把 SQLite 主库挂载到 `.\u002Fdata:\u002Fapp\u002Fdata`，数据库文件默认为 `data\u002Fapp.sqlite3`\n- 目前默认持久化这些目录：\n    - `data\u002F`  SQLite 主存储（任务、结果、价格历史）\n    - `state\u002F`  登录状态 cookie 文件\n    - `prompts\u002F`  任务提示词\n    - `logs\u002F`  运行日志\n    - `images\u002F`  商品图片与任务临时图片目录\n    - `config.json`、`jsonl\u002F`、`price_history\u002F`  首次升级到 SQLite 时用于兼容导入的旧数据源\n\n### 数据存储与迁移\n\n- 当前在线主存储为 SQLite，默认路径 `data\u002Fapp.sqlite3`\n- 可通过环境变量 `APP_DATABASE_FILE` 自定义数据库路径；Docker 默认设置为 `\u002Fapp\u002Fdata\u002Fapp.sqlite3`\n- 应用启动时会自动建库建表，并尝试从旧的 `config.json`、`jsonl\u002F`、`price_history\u002F` 导入一次历史数据\n- `state\u002F`、`prompts\u002F`、`logs\u002F`、`images\u002F` 仍然是文件系统目录，不在 SQLite 中\n- 商品图片会临时落到 `images\u002Ftask_images_\u003Ctask_name>\u002F`，任务结束后默认会清理\n- 首次升级完成并确认 `data\u002Fapp.sqlite3` 中数据正确后，可视部署方式决定是否继续保留旧的 `config.json`、`jsonl\u002F`、`price_history\u002F` 挂载\n\n### 最少配置\n\n| 变量 | 说明 | 必填 |\n|------|------|------|\n| `OPENAI_API_KEY` | AI 模型 API Key | 是 |\n| `OPENAI_BASE_URL` | OpenAI 兼容接口地址 | 是 |\n| `OPENAI_MODEL_NAME` | 支持图片输入的模型名称 | 是 |\n| `WEB_USERNAME` \u002F `WEB_PASSWORD` | Web UI 登录账号密码，默认 `admin\u002Fadmin123` | 否 |\n\n其余配置见下方“配置说明”。\n\n\n### 第一次使用\n\n1. 打开默认 Web UI `http:\u002F\u002F127.0.0.1:8000` 并登录。\n2. 进入“闲鱼账号管理”，使用 [Chrome 扩展](https:\u002F\u002Fchromewebstore.google.com\u002Fdetail\u002Fxianyu-login-state-extrac\u002Feidlpfjiodpigmfcahkmlenhppfklcoa) 导出并粘贴闲鱼登录态 JSON。\n3. 登录态文件会保存到 `state\u002F` 目录，例如 `state\u002Facc_1.json`。\n4. 回到“任务管理”，创建任务并绑定账号后即可运行。\n\n### 创建第一个任务\n\n- `AI判断`：填写“详细需求”，提交后会弹出独立进度弹窗，后台异步生成分析标准。\n- `关键词判断`：填写关键词规则，任务会直接创建，不经过 AI 生成流程。\n- `区域筛选`：已改为省 \u002F 市 \u002F 区三级选择器，数据基于闲鱼页面抓取快照内置。\n\n\n\n## 用户使用说明\n\n\u003Cdetails>\n\u003Csummary>点击展开 Web UI 功能说明\u003C\u002Fsummary>\n\n### 任务管理\n\n- 支持 AI 创建、关键词规则、价格范围、新发布范围、区域筛选、账号绑定、定时规则。\n- AI 任务创建是后台 job 流程，提交后会打开单独的进度弹窗。\n- 区域筛选会显著缩小结果集，默认留空。\n\n### 账号管理\n\n- 支持导入、更新、删除闲鱼账号登录态。\n- 每个任务可指定账号，也可不绑定并交给系统自动选择。\n\n### 结果查看与运行日志\n\n- 结果页和导出功能现在从 SQLite 查询，不再直接扫描 `jsonl` 文件。\n- 日志页按任务展示运行过程，便于排查登录态失效、风控和 AI 调用问题。\n\n### 系统设置\n\n- 可查看系统状态、编辑 Prompt、调整代理与轮换相关配置。\n\n\u003C\u002Fdetails>\n\n\n\n## 开发者开发\n\n### 环境要求\n\n- Python 3.10+\n- Node.js + npm（本地验证 `Node v20.18.3` 可完成前端构建）\n- Playwright CLI 与 Chromium，首次运行前建议执行 `python3 -m pip install playwright && python3 -m playwright install chromium`\n- Chrome \u002F Edge 浏览器（Linux 环境也可使用 Chromium；`start.sh` 会先检查浏览器是否存在）\n\n```bash\ngit clone https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\ncd ai-goofish-monitor\ncp .env.example .env\n```\n\n### 一键启动\n\n```bash\nchmod +x start.sh\n.\u002Fstart.sh\n```\n\n`start.sh` 会先检查 Playwright CLI 和浏览器前置条件；在前置条件满足后自动安装项目依赖、构建前端、复制构建产物并启动后端。\n\n### 手动启动\n\n```bash\n# 后端\npython -m src.app\n# 或\nuvicorn src.app:app --host 0.0.0.0 --port 8000 --reload\n\n# 前端\ncd web-ui\nnpm install\nnpm run dev\n```\n\n- FastAPI 启动时会自动初始化 SQLite，并在首次启动时尝试导入旧的 `config.json\u002Fjsonl\u002Fprice_history`\n- `spider_v2.py` 默认从 SQLite 读取任务；只有显式传入 `--config \u003Cpath>` 时才会走 JSON 配置兼容模式\n- 默认数据库路径为 `data\u002Fapp.sqlite3`\n- Vite 开发服务器会将 `\u002Fapi`、`\u002Fauth`、`\u002Fws` 代理到 `http:\u002F\u002F127.0.0.1:8000`。\n- `npm run build` 先生成 `web-ui\u002Fdist\u002F`，`start.sh` 再复制到仓库根目录 `dist\u002F`。\n- FastAPI 负责提供根目录 `dist\u002Findex.html` 和 `dist\u002Fassets\u002F`。\n- `.\u002Fstart.sh` 默认输出访问地址 `http:\u002F\u002Flocalhost:8000` 和 API 文档 `http:\u002F\u002Flocalhost:8000\u002Fdocs`。\n\n### 测试与校验\n\n```bash\nPYTEST_DISABLE_PLUGIN_AUTOLOAD=1 pytest\ncd web-ui && npm run build\n```\n\n### 任务创建 API\n\n\u003Cdetails>\n\u003Csummary>点击展开 API 行为说明\u003C\u002Fsummary>\n\n- `POST \u002Fapi\u002Ftasks\u002Fgenerate`\n  - `decision_mode=ai`：返回 `202` 和 `job`，需要继续轮询进度。\n  - `decision_mode=keyword`：直接返回已创建任务。\n- `GET \u002Fapi\u002Ftasks\u002Fgenerate-jobs\u002F{job_id}`：查询 AI 任务生成进度。\n- `POST \u002Fauth\u002Fstatus`：校验 Web UI 登录凭据。\n\n\u003C\u002Fdetails>\n\n## 配置说明\n\n\u003Cdetails>\n\u003Csummary>点击展开常用配置项\u003C\u002Fsummary>\n\n### AI 与运行时\n\n- `OPENAI_API_KEY` \u002F `OPENAI_BASE_URL` \u002F `OPENAI_MODEL_NAME`：AI 模型接入必填项。\n- `PROXY_URL`：为 AI 请求单独指定 HTTP\u002FSOCKS5 代理。\n- `RUN_HEADLESS`：是否以无头模式运行爬虫；Docker 中应保持 `true`。\n- `SERVER_PORT`：后端监听端口，默认 `8000`。\n- `LOGIN_IS_EDGE`：本地环境可切换为 Edge 内核；Docker 镜像未内置 Edge，容器内会固定使用 Chromium。\n- `PCURL_TO_MOBILE`：是否将 PC 商品链接转换为移动端链接。\n\n### 通知\n\n- `NTFY_TOPIC_URL`\n- `GOTIFY_URL` \u002F `GOTIFY_TOKEN`\n- `BARK_URL`\n- `WX_BOT_URL`\n- `TELEGRAM_BOT_TOKEN` \u002F `TELEGRAM_CHAT_ID` \u002F `TELEGRAM_API_BASE_URL`\n- `WEBHOOK_*`\n\n### 代理轮换与失败保护\n\n- `PROXY_ROTATION_ENABLED`\n- `PROXY_ROTATION_MODE`\n- `PROXY_POOL`\n- `PROXY_ROTATION_RETRY_LIMIT`\n- `PROXY_BLACKLIST_TTL`\n- `TASK_FAILURE_THRESHOLD`\n- `TASK_FAILURE_PAUSE_SECONDS`\n- `TASK_FAILURE_GUARD_PATH`\n\n完整示例见 `.env.example`。\n\n\u003C\u002Fdetails>\n\n## Web 界面认证\n\n\u003Cdetails>\n\u003Csummary>点击展开认证说明\u003C\u002Fsummary>\n\n- Web UI 当前使用登录页收集账号密码，并通过 `POST \u002Fauth\u002Fstatus` 校验。\n- 登录成功后，前端会在浏览器本地保存登录状态，用于路由守卫和 WebSocket 初始化。\n- 默认账号密码为 `admin\u002Fadmin123`，生产环境请务必修改。\n\n\u003C\u002Fdetails>\n\n## 🚀 工作流程\n\n下图描述了单个监控任务从启动到完成的核心处理逻辑。主服务运行于 `src.app`，按用户操作或定时调度启动一个或多个任务进程。\n\n```mermaid\ngraph TD\n    A[启动监控任务] --> B[选择账号\u002F代理配置];\n    B --> C[任务: 搜索商品];\n    C --> D{发现新商品?};\n    D -- 是 --> E[抓取商品详情 & 卖家信息];\n    E --> F[下载商品图片];\n    F --> G[调用AI进行分析];\n    G --> H{AI是否推荐?};\n    H -- 是 --> I[发送通知];\n    H -- 否 --> J[保存记录到 SQLite];\n    I --> J;\n    D -- 否 --> K[翻页\u002F等待];\n    K --> C;\n    J --> C;\n    C --> L{触发风控\u002F异常?};\n    L -- 是 --> M[账号\u002F代理轮换并重试];\n    M --> C;\n```\n\n## 常见问题\n\n\u003Cdetails>\n\u003Csummary>点击展开常见问题\u003C\u002Fsummary>\n\n### AI 任务创建为什么不是立即完成？\n\nAI 模式会先生成分析标准，再创建任务。现在该流程已改为后台 job，提交后会显示独立进度弹窗，避免表单长时间卡住。\n\n### 区域筛选为什么默认建议留空？\n\n区域筛选会显著减少搜索结果，适合明确只看某个区域的场景。若你先验证整体市场，建议先不填。\n\n### 本地页面打开后提示前端构建产物不存在？\n\n说明根目录 `dist\u002F` 缺失。可直接执行 `.\u002Fstart.sh`，或先在 `web-ui\u002F` 里执行 `npm run build`，再确认构建产物已复制到仓库根目录。\n\n### `.\u002Fstart.sh` 为什么提示缺少 Playwright 或浏览器？\n\n这是脚本的前置检查。请先安装 Playwright CLI 与 Chromium，并确保系统中可用 Chrome \u002F Edge（Linux 环境也可用 Chromium），然后重新执行 `.\u002Fstart.sh`。\n\n\u003C\u002Fdetails>\n\n\n\n## 致谢\n\n\u003Cdetails>\n\u003Csummary>点击展开致谢内容\u003C\u002Fsummary>\n\n本项目在开发过程中参考了以下优秀项目，特此感谢：\n\n- [superboyyy\u002Fxianyu_spider](https:\u002F\u002Fgithub.com\u002Fsuperboyyy\u002Fxianyu_spider)\n\n以及感谢LinuxDo相关人员的脚本贡献\n\n- [@jooooody](https:\u002F\u002Flinux.do\u002Fu\u002Fjooooody\u002Fsummary)\n\n以及感谢 [LinuxDo](https:\u002F\u002Flinux.do\u002F) 社区。\n\n以及感谢 ClaudeCode\u002FGemini\u002FCodex 等模型工具，解放双手 体验Vibe Coding的快乐。\n\n\u003C\u002Fdetails>\n\n\n## 注意事项\n\n\u003Cdetails>\n\u003Csummary>点击展开注意事项详情\u003C\u002Fsummary>\n\n- 请遵守闲鱼的用户协议和robots.txt规则，不要进行过于频繁的请求，以免对服务器造成负担或导致账号被限制。\n- 本项目仅供学习和技术研究使用，请勿用于非法用途。\n- 本项目采用 [MIT 许可证](LICENSE) 发布，按\"现状\"提供，不提供任何形式的担保。\n- 项目作者及贡献者不对因使用本软件而导致的任何直接、间接、附带或特殊的损害或损失承担责任。\n- 如需了解更多详细信息，请查看 [免责声明](DISCLAIMER.md) 文件。\n\n\u003C\u002Fdetails>\n\n## Star History\n\n[![Star History Chart](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FUsagi-org_ai-goofish-monitor_readme_f5f3b1cd9097.png)](https:\u002F\u002Fwww.star-history.com\u002F#Usagi-org\u002Fai-goofish-monitor&Date)\n\n![Alt](https:\u002F\u002Frepobeats.axiom.co\u002Fapi\u002Fembed\u002Fb40d8a112271b4bddabadd8fe2635be3c1aa28a3.svg \"Repobeats analytics image\")\n","# 闲鱼智能监控机器人\n\n[英文 README](README_EN.md)\n\n基于 Playwright 和 AI 的闲鱼多任务实时监控工具，提供完整的 Web 管理界面。\n\n\n## 核心特性\n\n- **Web 可视化管理**: 任务管理、账号管理、AI 标准编辑、运行日志、结果浏览\n- **AI 驱动**: 自然语言创建任务，多模态模型深度分析商品\n- **多任务并发**: 独立配置关键词、价格、筛选条件和 AI Prompt\n- **高级筛选**: 包邮、新发布时间范围、省\u002F市\u002F区三级区域筛选\n- **即时通知**: 支持 ntfy.sh、企业微信、Bark、Telegram、Webhook\n- **定时调度**: Cron 表达式配置周期性任务\n- **账号与代理轮换**: 多账号管理、任务绑定账号、代理池轮换与失败重试\n- **Docker 部署**: 一键容器化部署\n\n## 截图\n\n![监控概览](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FUsagi-org_ai-goofish-monitor_readme_3a0a3b8d7604.png)\n![任务管理](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FUsagi-org_ai-goofish-monitor_readme_b2cc6cd9847d.png)\n![结果查看](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FUsagi-org_ai-goofish-monitor_readme_e1da8e413e71.png)\n![通知推送](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FUsagi-org_ai-goofish-monitor_readme_184a77bc2f0b.png)\n\n## 🐳 Docker 部署（推荐）\n\n```bash\ngit clone https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor && cd ai-goofish-monitor\ncp .env.example .env\nvim .env # 填写相关配置项\ndocker compose up -d\ndocker compose logs -f app\ndocker compose down\n```\n\n如果镜像无法访问或下载速度慢，可尝试使用加速：\n```bash\n\ndocker pull ghcr.nju.edu.cn\u002Fusagi-org\u002Fai-goofish:latest\ndocker tag ghcr.nju.edu.cn\u002Fusagi-org\u002Fai-goofish:latest ghcr.io\u002Fusagi-org\u002Fai-goofish:latest\ndocker compose up -d\n\n```\n\n- 默认 Web UI 地址：`http:\u002F\u002F127.0.0.1:8000`\n- Docker 镜像已内置 Chromium，无需宿主机额外安装浏览器。\n- 官方镜像地址：`ghcr.io\u002Fusagi-org\u002Fai-goofish:latest`\n- 更新镜像：`docker compose pull && docker compose up -d`\n- 如果你修改了 `.env` 中的 `SERVER_PORT`，请同步更新 `docker-compose.yaml` 里的端口映射。\n- `docker-compose.yaml` 默认会把 SQLite 主库挂载到 `.\u002Fdata:\u002Fapp\u002Fdata`，数据库文件默认为 `data\u002Fapp.sqlite3`\n- 目前默认持久化这些目录：\n    - `data\u002F`  SQLite 主存储（任务、结果、价格历史）\n    - `state\u002F`  登录状态 cookie 文件\n    - `prompts\u002F`  任务提示词\n    - `logs\u002F`  运行日志\n    - `images\u002F`  商品图片与任务临时图片目录\n    - `config.json`、`jsonl\u002F`、`price_history\u002F`  首次升级到 SQLite 时用于兼容导入的旧数据源\n\n### 数据存储与迁移\n\n- 当前在线主存储为 SQLite，默认路径 `data\u002Fapp.sqlite3`\n- 可通过环境变量 `APP_DATABASE_FILE` 自定义数据库路径；Docker 默认设置为 `\u002Fapp\u002Fdata\u002Fapp.sqlite3`\n- 应用启动时会自动建库建表，并尝试从旧的 `config.json`、`jsonl\u002F`、`price_history\u002F` 导入一次历史数据\n- `state\u002F`、`prompts\u002F`、`logs\u002F`、`images\u002F` 仍然是文件系统目录，不在 SQLite 中\n- 商品图片会临时落到 `images\u002Ftask_images_\u003Ctask_name>\u002F`，任务结束后默认会清理\n- 首次升级完成并确认 `data\u002Fapp.sqlite3` 中数据正确后，可视部署方式决定是否继续保留旧的 `config.json`、`jsonl\u002F`、`price_history\u002F` 挂载\n\n### 最少配置\n\n| 变量 | 说明 | 必填 |\n|------|------|------|\n| `OPENAI_API_KEY` | AI 模型 API Key | 是 |\n| `OPENAI_BASE_URL` | OpenAI 兼容接口地址 | 是 |\n| `OPENAI_MODEL_NAME` | 支持图片输入的模型名称 | 是 |\n| `WEB_USERNAME` \u002F `WEB_PASSWORD` | Web UI 登login账号密码，默认 `admin\u002Fadmin123` | 否 |\n\n其余配置见下方“配置说明”。\n\n\n### 第一次使用\n\n1. 打开默认 Web UI `http:\u002F\u002F127.0.0.1:8000` 并登录。\n2. 进入“闲鱼账号管理”，使用 [Chrome 扩展](https:\u002F\u002Fchromewebstore.google.com\u002Fdetail\u002Fxianyu-login-state-extrac\u002Feidlpfjiodpigmfcahkmlenhppfklcoa) 导出并粘贴闲鱼登录态 JSON。\n3. 登录态文件会保存到 `state\u002F` 目录，例如 `state\u002Facc_1.json`。\n4. 回到“任务管理”，创建任务并绑定账号后即可运行。\n\n### 创建第一个任务\n\n- `AI判断`：填写“详细需求”，提交后会弹出独立进度弹窗，后台异步生成分析标准。\n- `关键词判断`：填写关键词规则，任务会直接创建，不经过 AI 生成流程。\n- `区域筛选`：已改为省 \u002F 市 \u002F 区三级选择器，数据基于闲鱼页面抓取快照内置。\n\n\n\n## 用户使用说明\n\n\u003Cdetails>\n\u003Csummary>点击展开 Web UI 功能说明\u003C\u002Fsummary>\n\n### 任务管理\n\n- 支持 AI 创建、关键词规则、价格范围、新发布范围、区域筛选、账号绑定、定时规则。\n- AI 任务创建是后台 job 流程，提交后会打开单独的进度弹窗。\n- 区域筛选会显著缩小结果集，默认留空。\n\n### 账号管理\n\n- 支持导入、更新、删除闲鱼账号登录态。\n- 每个任务可指定账号，也可不绑定并交给系统自动选择。\n\n### 结果查看与运行日志\n\n- 结果页和导出功能现在从 SQLite 查询，不再直接扫描 `jsonl` 文件。\n- 日志页按任务展示运行过程，便于排查登录态失效、风控和 AI 调用问题。\n\n### 系统设置\n\n- 可查看系统状态、编辑 Prompt、调整代理与轮换相关配置。\n\n\u003C\u002Fdetails>\n\n\n\n## 开发者开发\n\n### 环境要求\n\n- Python 3.10+\n- Node.js + npm（本地验证 `Node v20.18.3` 可完成前端构建）\n- Playwright CLI 与 Chromium，首次运行前建议执行 `python3 -m pip install playwright && python3 -m playwright install chromium`\n- Chrome \u002F Edge 浏览器（Linux 环境也可使用 Chromium；`start.sh` 会先检查浏览器是否存在）\n\n```bash\ngit clone https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\ncd ai-goofish-monitor\ncp .env.example .env\n```\n\n### 一键启动\n\n```bash\nchmod +x start.sh\n.\u002Fstart.sh\n```\n\n`start.sh` 会先检查 Playwright CLI 和浏览器前置条件；在前置条件满足后自动安装项目依赖、构建前端、复制构建产物并启动后端。\n\n### 手动启动\n\n```bash\n# 后端\npython -m src.app\n# 或\nuvicorn src.app:app --host 0.0.0.0 --port 8000 --reload\n\n# 前端\ncd web-ui\nnpm install\nnpm run dev\n```\n\n- FastAPI 启动时会自动初始化 SQLite，并在首次启动时尝试导入旧的 `config.json\u002Fjsonl\u002Fprice_history`\n- `spider_v2.py` 默认从 SQLite 读取任务；只有显式传入 `--config \u003Cpath>` 时才会走 JSON 配置兼容模式\n- 默认数据库路径为 `data\u002Fapp.sqlite3`\n- Vite 开发服务器会将 `\u002Fapi`、`\u002Fauth`、`\u002Fws` 代理到 `http:\u002F\u002F127.0.0.1:8000`。\n- `npm run build` 先生成 `web-ui\u002Fdist\u002F`，`start.sh` 再复制到仓库根目录 `dist\u002F`。\n- FastAPI 负责提供根目录 `dist\u002Findex.html` 和 `dist\u002Fassets\u002F`。\n- `.\u002Fstart.sh` 默认输出访问地址 `http:\u002F\u002Flocalhost:8000` 和 API 文档 `http:\u002F\u002Flocalhost:8000\u002Fdocs`。\n\n### 测试与校验\n\n```bash\nPYTEST_DISABLE_PLUGIN_AUTOLOAD=1 pytest\ncd web-ui && npm run build\n```\n\n### 任务创建 API\n\n\u003Cdetails>\n\u003Csummary>点击展开 API 行为说明\u003C\u002Fsummary>\n\n- `POST \u002Fapi\u002Ftasks\u002Fgenerate`\n  - `decision_mode=ai`：返回 `202` 和 `job`，需要继续轮询进度。\n  - `decision_mode=keyword`：直接返回已创建任务。\n- `GET \u002Fapi\u002Ftasks\u002Fgenerate-jobs\u002F{job_id}`：查询 AI 任务生成进度。\n- `POST \u002Fauth\u002Fstatus`：校验 Web UI 登录凭据。\n\n\u003C\u002Fdetails>\n\n## 配置说明\n\n\u003Cdetails>\n\u003Csummary>点击展开常用配置项\u003C\u002Fsummary>\n\n### AI 与运行时\n\n- `OPENAI_API_KEY` \u002F `OPENAI_BASE_URL` \u002F `OPENAI_MODEL_NAME`：AI 模型接入必填项。\n- `PROXY_URL`：为 AI 请求单独指定 HTTP\u002FSOCKS5 代理。\n- `RUN_HEADLESS`：是否以无头模式运行爬虫；Docker 中应保持 `true`。\n- `SERVER_PORT`：后端监听端口，默认 `8000`。\n- `LOGIN_IS_EDGE`：本地环境可切换为 Edge 内核；Docker 镜像未内置 Edge，容器内会固定使用 Chromium。\n- `PCURL_TO_MOBILE`：是否将 PC 商品链接转换为移动端链接。\n\n### 通知\n\n- `NTFY_TOPIC_URL`\n- `GOTIFY_URL` \u002F `GOTIFY_TOKEN`\n- `BARK_URL`\n- `WX_BOT_URL`\n- `TELEGRAM_BOT_TOKEN` \u002F `TELEGRAM_CHAT_ID` \u002F `TELEGRAM_API_BASE_URL`\n- `WEBHOOK_*`\n\n### 代理轮换与失败保护\n\n- `PROXY_ROTATION_ENABLED`\n- `PROXY_ROTATION_MODE`\n- `PROXY_POOL`\n- `PROXY_ROTATION_RETRY_LIMIT`\n- `PROXY_BLACKLIST_TTL`\n- `TASK_FAILURE_THRESHOLD`\n- `TASK_FAILURE_PAUSE_SECONDS`\n- `TASK_FAILURE_GUARD_PATH`\n\n完整示例见 `.env.example`。\n\n\u003C\u002Fdetails>\n\n## Web 界面认证\n\n\u003Cdetails>\n\u003Csummary>点击展开认证说明\u003C\u002Fsummary>\n\n- Web UI 当前使用登录页收集账号密码，并通过 `POST \u002Fauth\u002Fstatus` 校验。\n- 登录成功后，前端会在浏览器本地保存登录状态，用于路由守卫和 WebSocket 初始化。\n- 默认账号密码为 `admin\u002Fadmin123`，生产环境请务必修改。\n\n\u003C\u002Fdetails>\n\n## 🚀 工作流程\n\n下图描述了单个监控任务从启动到完成的核心处理逻辑。主服务运行于 `src.app`，按用户操作或定时调度启动一个或多个任务进程。\n\n```mermaid\ngraph TD\n    A[启动监控任务] --> B[选择账号\u002F代理配置];\n    B --> C[任务: 搜索商品];\n    C --> D{发现新商品?};\n    D -- 是 --> E[抓取商品详情 & 卖家信息];\n    E --> F[下载商品图片];\n    F --> G[调用AI进行分析];\n    G --> H{AI是否推荐?};\n    H -- 是 --> I[发送通知];\n    H -- 否 --> J[保存记录到 SQLite];\n    I --> J;\n    D -- 否 --> K[翻页\u002F等待];\n    K --> C;\n    J --> C;\n    C --> L{触发风控\u002F异常?};\n    L -- 是 --> M[账号\u002F代理轮换并重试];\n    M --> C;\n```\n\n## 常见问题\n\n\u003Cdetails>\n\u003Csummary>点击展开常见问题\u003C\u002Fsummary>\n\n### AI 任务创建为什么不是立即完成？\n\nAI 模式会先生成分析标准，再创建任务。现在该流程已改为后台 job，提交后会显示独立进度弹窗，避免表单长时间卡住。\n\n### 区域筛选为什么默认建议留空？\n\n区域筛选会显著减少搜索结果，适合明确只看某个区域的场景。若你先验证整体市场，建议先不填。\n\n### 本地页面打开后提示前端构建产物不存在？\n\n说明根目录 `dist\u002F` 缺失。可直接执行 `.\u002Fstart.sh`，或先在 `web-ui\u002F` 里执行 `npm run build`，再确认构建产物已复制到仓库根目录。\n\n### `.\u002Fstart.sh` 为什么提示缺少 Playwright 或浏览器？\n\n这是脚本的前置检查。请先安装 Playwright CLI 与 Chromium，并确保系统中可用 Chrome \u002F Edge（Linux 环境也可用 Chromium），然后重新执行 `.\u002Fstart.sh`。\n\n\u003C\u002Fdetails>\n\n\n\n## 致谢\n\n\u003Cdetails>\n\u003Csummary>点击展开致谢内容\u003C\u002Fsummary>\n\n本项目在开发过程中参考了以下优秀项目，特此感谢：\n\n- [superboyyy\u002Fxianyu_spider](https:\u002F\u002Fgithub.com\u002Fsuperboyyy\u002Fxianyu_spider)\n\n以及感谢LinuxDo相关人员的脚本贡献\n\n- [@jooooody](https:\u002F\u002Flinux.do\u002Fu\u002Fjooooody\u002Fsummary)\n\n以及感谢 [LinuxDo](https:\u002F\u002Flinux.do\u002F) 社区。\n\n以及感谢 ClaudeCode\u002FGemini\u002FCodex 等模型工具，解放双手 体验Vibe Coding的快乐。\n\n\u003C\u002Fdetails>\n\n## 注意事项\n\n\u003Cdetails>\n\u003Csummary>点击展开注意事项详情\u003C\u002Fsummary>\n\n- 请遵守闲鱼的用户协议和robots.txt规则，不要进行过于频繁的请求，以免对服务器造成负担或导致账号被限制。\n- 本项目仅供学习和技术研究使用，请勿用于非法用途。\n- 本项目采用 [MIT 许可证](LICENSE) 发布，按\"现状\"提供，不提供任何形式的担保。\n- 项目作者及贡献者不对因使用本软件而导致的任何直接、间接、附带或特殊的损害或损失承担责任。\n- 如需了解更多详细信息，请查看 [免责声明](DISCLAIMER.md) 文件。\n\n\u003C\u002Fdetails>\n\n## 星标历史\n\n[![星标历史图表](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FUsagi-org_ai-goofish-monitor_readme_f5f3b1cd9097.png)](https:\u002F\u002Fwww.star-history.com\u002F#Usagi-org\u002Fai-goofish-monitor&Date)\n\n![Alt](https:\u002F\u002Frepobeats.axiom.co\u002Fapi\u002Fembed\u002Fb40d8a112271b4bddabadd8fe2635be3c1aa28a3.svg \"Repobeats analytics image\")","# ai-goofish-monitor 快速上手指南\n\n闲鱼智能监控机器人，基于 Playwright 和 AI 的多任务实时监控工具，提供完整的 Web 管理界面。\n\n## 环境准备\n\n### 系统要求\n- **操作系统**: Linux \u002F macOS \u002F Windows (推荐 Linux 或 Docker 环境)\n- **Docker 部署 (推荐)**: 需安装 Docker 和 Docker Compose\n- **本地开发部署**:\n  - Python 3.10+\n  - Node.js + npm (推荐 v20+)\n  - 浏览器内核：Chrome \u002F Edge 或 Chromium\n\n### 前置依赖\n若选择本地部署，需预先安装 Playwright 及浏览器内核：\n```bash\npython3 -m pip install playwright\npython3 -m playwright install chromium\n```\n\n## 安装步骤\n\n### 方案一：Docker 部署（推荐）\n\n此方案已内置 Chromium 浏览器，无需额外配置环境。\n\n1. **克隆项目并配置环境变量**\n   ```bash\n   git clone https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor && cd ai-goofish-monitor\n   cp .env.example .env\n   vim .env\n   ```\n   *请在 `.env` 文件中填写必要的 AI 配置（见下方“基本使用”）。*\n\n2. **启动服务**\n   ```bash\n   docker compose up -d\n   ```\n\n   > **国内加速方案**：若拉取镜像缓慢，可使用南京大学镜像源：\n   > ```bash\n   > docker pull ghcr.nju.edu.cn\u002Fusagi-org\u002Fai-goofish:latest\n   > docker tag ghcr.nju.edu.cn\u002Fusagi-org\u002Fai-goofish:latest ghcr.io\u002Fusagi-org\u002Fai-goofish:latest\n   > docker compose up -d\n   > ```\n\n3. **查看日志**\n   ```bash\n   docker compose logs -f app\n   ```\n\n### 方案二：本地源码部署\n\n1. **克隆项目并安装依赖**\n   ```bash\n   git clone https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\n   cd ai-goofish-monitor\n   cp .env.example .env\n   ```\n\n2. **一键启动**\n   ```bash\n   chmod +x start.sh\n   .\u002Fstart.sh\n   ```\n   *脚本会自动检查环境、安装依赖、构建前端并启动后端。*\n\n## 基本使用\n\n### 1. 配置核心参数\n编辑 `.env` 文件，必须配置以下 AI 相关变量才能运行：\n\n| 变量 | 说明 | 示例 |\n|------|------|------|\n| `OPENAI_API_KEY` | AI 模型 API Key | `sk-...` |\n| `OPENAI_BASE_URL` | OpenAI 兼容接口地址 | `https:\u002F\u002Fapi.openai.com\u002Fv1` |\n| `OPENAI_MODEL_NAME` | 支持图片输入的模型名称 | `gpt-4o` |\n| `WEB_USERNAME` | Web UI 登录账号 (可选) | `admin` |\n| `WEB_PASSWORD` | Web UI 登录密码 (可选) | `admin123` |\n\n修改配置后，Docker 用户需重启容器：`docker compose restart`\n\n### 2. 访问管理界面\n打开浏览器访问：\n```text\nhttp:\u002F\u002F127.0.0.1:8000\n```\n使用配置的账号密码登录（默认 `admin` \u002F `admin123`）。\n\n### 3. 导入闲鱼账号\n1. 安装 [Chrome 扩展](https:\u002F\u002Fchromewebstore.google.com\u002Fdetail\u002Fxianyu-login-state-extrac\u002Feidlpfjiodpigmfcahkmlenhppfklcoa) 用于提取登录态。\n2. 在闲鱼网页版登录后，使用扩展导出 JSON 格式的登录状态。\n3. 在 Web 界面进入 **“闲鱼账号管理”**，粘贴 JSON 内容并保存。\n   *状态文件将自动保存至 `state\u002F` 目录。*\n\n### 4. 创建监控任务\n进入 **“任务管理”** 页面：\n- **AI 判断模式**：输入自然语言需求（如“寻找成色好的 iPhone 15，价格低于 4000\"），系统将异步生成分析标准并创建任务。\n- **关键词判断模式**：直接设置关键词、价格区间和筛选条件，即时创建任务。\n- **区域筛选**：可选择省\u002F市\u002F区三级区域（留空则不限制）。\n\n任务启动后，系统会自动搜索、分析商品，符合条件的结果将通过配置的通知渠道（如企业微信、Telegram 等）推送，并在 **“结果查看”** 页面展示。","资深数码玩家老张急需在闲鱼蹲守一款刚发布且价格低于官网 8 折的限量版机械键盘，但面对海量杂乱的个人卖家信息，他必须时刻刷新页面才能不错过“漏网之鱼”。\n\n### 没有 ai-goofish-monitor 时\n- **人工盯屏效率极低**：需要每隔几分钟手动刷新搜索页，耗费大量工作时间，且极易因网络延迟或手速慢而错失秒删好物。\n- **筛选规则僵化死板**：仅能依靠简单的关键词匹配，无法识别商品描述中的隐含信息（如“仅拆封”、“箱说全”），常把二手翻新货误当新品。\n- **多账号切换繁琐**：为了规避平台风控或扩大搜索范围，手动切换多个闲鱼账号操作复杂，容易触发验证码导致监控中断。\n- **错过最佳入手时机**：由于无法做到 7x24 小时实时监控，往往在发现心仪商品时，卖家早已下架或被其他买家拍走。\n\n### 使用 ai-goofish-monitor 后\n- **AI 驱动智能研判**：利用多模态模型深度分析商品图片与描述，精准识别“全新未拆”、“个人自用”等细微特征，自动过滤商家与翻新货。\n- **自然语言定义任务**：老张只需用大白话输入“找 8 折以下带原盒的限量版键盘”，系统即可自动生成复杂的筛选策略与 Prompt，无需编写代码。\n- **多任务并发与自动轮换**：后台同时运行多个监控任务，自动调度不同账号与代理 IP 进行抓取，确保持续稳定运行且不触发风控。\n- **毫秒级即时通知**：一旦匹配到目标商品，系统立即通过企业微信或 Telegram 推送链接，让老张能在第一时间完成下单锁定。\n\nai-goofish-monitor 将原本耗时耗力的“人肉蹲守”转变为智能化的自动猎取，让用户从海量噪音中精准捕获高价值目标。","https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FUsagi-org_ai-goofish-monitor_3a0a3b8d.png","Usagi-org","https:\u002F\u002Foss.gittoolsai.com\u002Favatars\u002FUsagi-org_34ae6a03.jpg","usagi~wow! make the world intelligence !",null,"usagi.org.suppport@gmail.com","https:\u002F\u002Fgithub.com\u002FUsagi-org",[79,83,87,91,94,98,102,106],{"name":80,"color":81,"percentage":82},"Python","#3572A5",55.7,{"name":84,"color":85,"percentage":86},"Vue","#41b883",26.6,{"name":88,"color":89,"percentage":90},"TypeScript","#3178c6",13.1,{"name":92,"color":93,"percentage":32},"Shell","#89e051",{"name":95,"color":96,"percentage":97},"JavaScript","#f1e05a",1.5,{"name":99,"color":100,"percentage":101},"HTML","#e34c26",0.6,{"name":103,"color":104,"percentage":105},"CSS","#663399",0.3,{"name":107,"color":108,"percentage":105},"Dockerfile","#384d54",10873,1545,"2026-04-12T10:32:35","MIT","Linux, macOS, Windows","未说明",{"notes":116,"python":117,"dependencies":118},"Docker 部署推荐，镜像已内置 Chromium 无需宿主机安装浏览器；本地开发需手动安装 Playwright 及 Chromium 驱动；需配置 OpenAI 兼容的 API Key 及多模态模型；Web UI 默认端口 8000；支持通过 Chrome 扩展导出闲鱼登录态。","3.10+",[119,120,121,122,123,124],"Playwright","Chromium","FastAPI","Uvicorn","Node.js (v20.18.3+)","npm",[13,15,14],[127,128,129,130,131,132,133,134,135,136,137,138,139],"ai","playwright","automation","gemini","goofish","tool","xianyu","xian-yu","ai-assistant","ai-tools","open-source","xianyu-bot","openai","2026-03-27T02:49:30.150509","2026-04-13T00:29:28.751054",[143,148,153,158,163,168,173,178],{"id":144,"question_zh":145,"answer_zh":146,"source_url":147},31165,"如何在不开启 AI 功能的情况下仅通过关键字进行商品监控和推送？","项目已支持无 AI 版本的功能。配置方法是在 .env 文件中设置相关参数禁用 AI 分析。在创建任务时，直接输入关键字进行筛选，当商品命中关键字后系统会直接推送，不再经过 AI 过滤环节。注意：无 AI 模式下可能无法使用地区选择等依赖 AI 分析的高级功能。","https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fissues\u002F187",{"id":149,"question_zh":150,"answer_zh":151,"source_url":152},31162,"如何在 Docker 或群晖部署中解决浏览器抓取异常或任务终止的问题？","在本地运行时，可以在 .env 文件中设置 RUN_HEADLESS=false 来调试浏览器抓取是否正常。但在群晖等 Docker 环境中，严禁设置 RUN_HEADLESS=false，否则会导致任务直接异常终止。Docker 部署必须保持默认的无头模式（Headless）运行。如果遇到相关报错，请检查 .env 配置并确保未错误开启非无头模式。","https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fissues\u002F99",{"id":154,"question_zh":155,"answer_zh":156,"source_url":157},31163,"如何配置使用非 OpenAI 模型（如 Ollama、Gemini 或阿里模型）？","支持使用本地 Ollama 或其他兼容 OpenAI 格式的模型。配置方法如下：\n1. 修改 .env 文件中的 OPENAI_BASE_URL 为对应地址（例如 Ollama 通常为 http:\u002F\u002Flocalhost:11434\u002Fv1，Gemini 为 https:\u002F\u002Fgenerativelanguage.googleapis.com\u002Fv1beta\u002F）。\n2. .env 中的环境变量名称（如 OPENAI_API_KEY）保持不变，填入对应模型的密钥即可。\n3. 确保所选模型支持图片分析（多模态），否则 AI 分析可能失败或返回空结果。","https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fissues\u002F3",{"id":159,"question_zh":160,"answer_zh":161,"source_url":162},31164,"遇到'Connection error'或后端 AI 模型连接测试失败如何解决？","如果出现'后端 AI 模型连接测试失败：Connection error'或创建任务时报错，通常是因为使用了旧版本的镜像或代码存在临时 Bug。解决方案是拉取最新镜像并重启容器：\ndocker pull ghcr.io\u002Fdingyufei615\u002Fai-goofish:latest\n然后重新运行容器。维护者确认最新代码已修复此类网络连接和 API 调用问题。","https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fissues\u002F227",{"id":164,"question_zh":165,"answer_zh":166,"source_url":167},31166,"为什么使用支持图片的本地模型（如 llava, qwen-vl）时，AI 分析结果为'None'或失败？","即使命令行测试 curl 有返回且 GPU 占用正常，如果返回'推荐状态：None'，可能是模型输出格式不符合程序预期或模型能力不足。建议：\n1. 尝试添加 --build 参数强制重新构建镜像：docker-compose up --build。\n2. 删除本地旧镜像并重新拉取最新镜像，确保代码逻辑是最新的。\n3. 目前测试验证阿里的 Qwen-VL-Plus 模型表现稳定，若本地模型持续失败，可考虑切换至云端多模态模型。","https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fissues\u002F64",{"id":169,"question_zh":170,"answer_zh":171,"source_url":172},31167,"在 OpenWrt 环境下部署时遇到'ERR_CONNECTION_REFUSED'网络错误怎么办？","在 OpenWrt 等特殊网络环境下使用 Docker Compose 部署时，容器可能无法正确访问外部网站（如 goofish.com），导致爬取时出现'net::ERR_CONNECTION_REFUSED'错误。这是因为容器的网络配置与宿主机网络环境不兼容。需要在 README 提示的特殊网络配置中对容器网络进行特殊处理（例如使用 host 网络模式或配置特定的 DNS\u002F路由规则），以确保容器内能正常访问目标网站。","https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fissues\u002F121",{"id":174,"question_zh":175,"answer_zh":176,"source_url":177},31168,"如何在 Web 界面管理通知配置和删除历史运行结果？","最新版本已支持在 Web 界面直接配置通知渠道（如 Bark, Gotify 等），无需手动修改配置文件。同时，在结果查看页面增加了手动删除功能，用户可以删除整条物品的运行结果，方便清理测试数据。请确保更新至最新版本的镜像以使用这些功能。","https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fissues\u002F74",{"id":179,"question_zh":180,"answer_zh":181,"source_url":182},31169,"设置了地区筛选（如'河北\u002F全石家庄'）为什么仍然收到全国各地的商品推送？","地区筛选功能目前依赖于 AI 对商品信息的分析。如果使用的是'无 AI 版本'或者配置的 AI 模型不支持\u002F未能正确解析地区信息，该功能将无法生效，导致推送全国范围的商品。请确保：\n1. 已启用 AI 分析功能。\n2. 使用的 AI 模型具备足够的文本理解能力来识别地区字段。\n3. 检查日志确认 AI 是否正确提取了地区信息。","https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fissues\u002F376",[184,189,194,199,204,209,214,219],{"id":185,"version":186,"summary_zh":187,"released_at":188},223074,"v1.3","## 变更内容\n* 修复：@dingyufei615 在 https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fpull\u002F367 中添加了翻页超时的重试机制。\n* 修复：@dingyufei615 在 https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fpull\u002F368 中修复了 Telegram 通知配置 API 保存后集成页面及未配置状态显示的问题。\n* 修复（Docker）：@dingyufei615 在 https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fpull\u002F373 中修复了容器中 Playwright 浏览器路径与权限不一致导致启动失败的问题。\n* 修复（Docker）：@dingyufei615 在 https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fpull\u002F375 中保留 root 运行时，以避免 bind-mount 权限被拒绝。\n* 新增功能：区域筛选优化，由 @dingyufei615 在 https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fpull\u002F378 中实现。\n* 任务生成服务支持异步 AI 任务创建，由 @dingyufei615 在 https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fpull\u002F379 中实现。\n* 新增功能（AI）：添加 AI 消息构建辅助功能，并支持图片分析开关，由 @dingyufei615 在 https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fpull\u002F380 中实现。\n* 新增功能（任务）：添加任务生命周期钩子并改进进程管理，由 @dingyufei615 在 https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fpull\u002F382 中实现。\n\n\n**完整变更日志**：https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fcompare\u002Fv.1.2...v1.3","2026-03-09T10:29:07",{"id":190,"version":191,"summary_zh":192,"released_at":193},223075,"v.1.2","## 变更内容\n* 修复：容器以非root用户运行 by @dingyufei615 在 https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fpull\u002F365\n* 修复：任务在多次失败后暂停（每日提醒 + 自动恢复）by @Microck 在 https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fpull\u002F363\n* 开发：@dingyufei615 在 https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fpull\u002F366\n\n## 新贡献者\n* @Microck 在 https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fpull\u002F363 中完成了首次贡献\n\n**完整变更日志**：https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fcompare\u002Fv1.1...v.1.2","2026-03-04T06:47:08",{"id":195,"version":196,"summary_zh":197,"released_at":198},223076,"v1.1","## 变更内容\n* feat(build): 添加桌面应用构建工作流和打包功能，作者：@dingyufei615，在 https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fpull\u002F329 中\n* style(tasks): 调整任务对话框样式，作者：@dingyufei615，在 https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fpull\u002F330 中\n* chrome进程管理优化，作者：@dingyufei615，在 https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fpull\u002F332 中\n* 修复推荐筛选器组件的双向绑定问题，作者：@dingyufei615，在 https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fpull\u002F334 中\n* 更新环境变量配置文件，作者：@dingyufei615，在 https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fpull\u002F335 中\n* fix(settings): 修复微信机器人通知功能bug，作者：@dingyufei615，在 https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fpull\u002F338 中\n* 修复UI的一些问题，作者：@dingyufei615，在 https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fpull\u002F341 中\n* 闲鱼cookie插件支持环境快照提取，作者：@dingyufei615，在 https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fpull\u002F342 中\n* 增加动态加载定时任务机制并修复bug。Added a dynamic loading mechanism for scheduled tasks. 作者：@ijodion 在 https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fpull\u002F346 中\n* docs: 添加英文README，作者：@dingyufei615 在 https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fpull\u002F359 中\n* 修复Windows本地启动登录及创建任务时的bug，作者：@kinghy949 在 https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fpull\u002F354 中\n* Dev关键词v2.0—扩展关键词筛选功能，即使没有AI API也能使用，作者：@kinghy949 在 https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fpull\u002F356 中\n\n## 新贡献者\n* @ijodion 在 https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fpull\u002F346 中完成了首次贡献\n* @kinghy949 在 https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fpull\u002F354 中完成了首次贡献\n\n**完整变更日志**: https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fcompare\u002Fv1.0.0...v1.1","2026-03-03T06:33:26",{"id":200,"version":201,"summary_zh":202,"released_at":203},223077,"v1.0.0","## 变更内容\n* 新增微信通知、Edge浏览器登录 by @lengsukq 在 https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fpull\u002F2 中\n* 功能：优化商品详情跳转体验并调整UI by @dingyufei615 在 https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fpull\u002F5 中\n* 功能：支持配置无头模式并增强反爬检测 by @dingyufei615 在 https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fpull\u002F6 中\n* 修复：使用 wait 替代 is_visible，避免 Playwright 新版的兼容问题 by @dingyufei615 在 https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fpull\u002F8 中\n* 文档：优化 README.md 配置说明 by @dingyufei615 在 https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fpull\u002F16 中\n* 完善 README by @dingyufei615 在 https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fpull\u002F17 中\n* 修正 README.md by @dingyufei615 在 https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fpull\u002F18 中\n* 功能：支持 Docker 部署 by @dingyufei615 在 https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fpull\u002F26 中\n* 结果查看页面支持排序 && 引入 Docker Compose 支持 by @dingyufei615 在 https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fpull\u002F34 中\n* 支持自定义端口 by @hurleychin 在 https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fpull\u002F33 中\n* 更新：完善 FAQ by @dingyufei615 在 https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fpull\u002F35 中\n* 功能（日志）：实现日志增量加载与自动刷新 by @dingyufei615 在 https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fpull\u002F39 中\n* 功能：优化文件管理并增强任务清理功能 by @dingyufei615 在 https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fpull\u002F41 中\n* 功能（UI）：记住上次选择的结果文件 by @dingyufei615 在 https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fpull\u002F42 中\n* 功能：改进卡片 AI 摘要显示及底部布局 by @dingyufei615 在 https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fpull\u002F45 中\n* 功能（日志管理）：添加清空日志功能 by @dingyufei615 在 https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fpull\u002F46 中\n* 添加：Actions 自动构建 Docker 镜像 by @e5sub 在 https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fpull\u002F51 中\n* 更新：Docker 镜像更新为 Action 发布的镜像 by @dingyufei615 在 https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fpull\u002F53 中\n* 修复 spider_v2 json.loads by @wangjh9712 在 https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fpull\u002F56 中\n* 优化爬虫进程管理，确保完整终止 by @dingyufei615 在 https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fpull\u002F63 中\n* 更新：支持设置 PROXY_URL 代理 by @dingyufei615 在 https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fpull\u002F67 中\n* 功能：引入 AI 调试模式并提升爬取鲁棒性 by @dingyufei615 在 https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fpull\u002F68 中\n* 功能：区分 Docker 与本地环境的浏览器启动 by @dingyufei615 在 https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fpull\u002F70 中\n* 修复 ntfy 通知失效的问题 by @dingyufei615 在 https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fpull\u002F71 中\n* 修复（闲鱼）：对分享链接 bfp 参数进行 URL 编码 by @dingyufei615 在 https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fpull\u002F73 中\n* 修复：删除爬取过程中下载的临时图片文件以节省空间 by @Frank-whw 在 https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fpull\u002F79 中\n* 文档（README）：更新快速开始和 Docker 部署说明 by @MoLing-Dong 在 https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fpull\u002F80 中\n* 修复 bug 并支持任务定时功能，优化排版 by @dingyufei615 在 https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fpull\u002F84 中\n* 重构对 spider_v2 脚本进行功能拆分 by @dingyufei615 在 https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fpull\u002F85 中\n* 添加依赖 httpx[socks] by @dingyufei615 在 https:\u002F\u002F","2026-01-12T12:01:19",{"id":205,"version":206,"summary_zh":207,"released_at":208},223070,"2.3","## 变更内容\n* 修复(ai)：优化 Responses API 不支持错误的检测逻辑，由 @dingyufei615 在 https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fpull\u002F402 中完成\n* 修复(keyword)：解决纯英数字关键词部分匹配问题，由 @dingyufei615 在 https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fpull\u002F403 中完成\n* 开发(by @dingyufei615)：在 https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fpull\u002F405 中完成\n* 新增功能(config)：环境变量管理器支持运行时环境变量回退，由 @dingyufei615 在 https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fpull\u002F406 中完成\n* 新增功能(deploy)：支持多容器镜像仓库部署，由 @dingyufei615 在 https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fpull\u002F408 中完成\n* 开发(by @dingyufei615)：在 https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fpull\u002F409 中完成\n* 重构(workflow)：重构 Docker 镜像构建流程中的标签准备逻辑，由 @dingyufei615 在 https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fpull\u002F410 中完成\n* 重构(Dockerfile.release)：调整 ARG 指令位置，由 @dingyufei615 在 https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fpull\u002F411 中完成\n* 文档(config)：添加 Docker 镜像加速配置说明，由 @dingyufei615 在 https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fpull\u002F412 中完成\n* 新增功能(notification)：添加 Telegram API 反向代理支持，由 @dingyufei615 在 https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fpull\u002F415 中完成\n* 新增功能(ai)：将默认 AI API 模式切换为 Chat Completions，并增强错误回退机制，由 @dingyufei615 在 https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fpull\u002F417 中完成\n* 开发(by @dingyufei615)：在 https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fpull\u002F423 中完成\n\n\n**完整变更日志**：https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fcompare\u002F2.2...2.3","2026-03-18T10:44:40",{"id":210,"version":211,"summary_zh":212,"released_at":213},223071,"2.2","## 变更内容\n* docs(config): 更新 LOGIN_IS_EDGE 配置说明，由 @dingyufei615 在 https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fpull\u002F393 中完成\n* fix(ai): 当网关不支持 `temperature` 参数时进行回退处理，由 @dingyufei615 在 https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fpull\u002F395 中完成\n* feat(ai): 增强AI客户端对多种API模式的支持，并改进调试功能，由 @dingyufei615 在 https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fpull\u002F401 中完成\n\n\n**完整变更日志**: https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fcompare\u002Fv2.1...2.2","2026-03-16T03:10:56",{"id":215,"version":216,"summary_zh":217,"released_at":218},223072,"v2.1","## 变更内容\n* 由 @dingyufei615 在 https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fpull\u002F384 中更新了 README 文件\n* 重构（构建）：将前端构建产物路径统一为根目录下的 `dist` 目录，由 @dingyufei615 在 https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fpull\u002F385 中完成\n* 重构（爬虫）：将搜索页面翻页逻辑提取到独立服务中，由 @dingyufei615 在 https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fpull\u002F386 中完成\n* 新功能（UI）：添加了 Cron 定时规则预设选择器，由 @lianxin255 在 https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fpull\u002F387 中实现\n* 新功能（任务）：优化了任务表单中的账号策略配置功能，由 @dingyufei615 在 https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fpull\u002F388 中完成\n* 重构（AI）：将 AI 客户端从 Chat Completions API 迁移到 Responses API，由 @dingyufei615 在 https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fpull\u002F390 中完成\n* 重构（Docker）：优化了 Docker 构建配置和依赖管理，由 @dingyufei615 在 https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fpull\u002F392 中完成\n\n## 新贡献者\n* @lianxin255 在 https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fpull\u002F387 中完成了首次贡献\n\n**完整变更日志**：https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fcompare\u002Fv2.0...v2.1","2026-03-13T05:11:43",{"id":220,"version":221,"summary_zh":222,"released_at":223},223073,"v2.0","商品价值评估和价格洞察：新增了商品价值评估和价格洞察功能，帮助用户更有效地评估商品价值。  \nAI 响应解析重构：重构了 AI 响应解析逻辑，提升了系统的稳定性和可维护性。  \n数据存储迁移到 SQLite：将数据存储迁移至 SQLite，并优化了 AI 调用的兼容性，从而提高了数据存储效率和系统性能。  \n仪表板功能添加和 UI 组件重构：新增了仪表板功能，并对 UI 组件进行了重构，进一步优化了用户体验。  \n\n## 变更内容  \n* 重构 —— 由 @dingyufei615 在 https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fpull\u002F383 中完成  \n\n**完整变更日志**：https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fcompare\u002Fv1.3...v2.0  \n\n## 变更内容  \n* 重构 —— 由 @dingyufei615 在 https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fpull\u002F383 中完成  \n\n**完整变更日志**：https:\u002F\u002Fgithub.com\u002FUsagi-org\u002Fai-goofish-monitor\u002Fcompare\u002Fv1.3...v2.0","2026-03-11T06:58:38"]