[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"similar-wangrongding--wechat-bot":3,"tool-wangrongding--wechat-bot":64},[4,17,25,39,48,56],{"id":5,"name":6,"github_repo":7,"description_zh":8,"stars":9,"difficulty_score":10,"last_commit_at":11,"category_tags":12,"status":16},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 真正成长为懂上",140436,2,"2026-04-05T23:32:43",[13,14,15],"开发框架","Agent","语言模型","ready",{"id":18,"name":19,"github_repo":20,"description_zh":21,"stars":22,"difficulty_score":10,"last_commit_at":23,"category_tags":24,"status":16},3704,"NextChat","ChatGPTNextWeb\u002FNextChat","NextChat 是一款轻量且极速的 AI 助手，旨在为用户提供流畅、跨平台的大模型交互体验。它完美解决了用户在多设备间切换时难以保持对话连续性，以及面对众多 AI 模型不知如何统一管理的痛点。无论是日常办公、学习辅助还是创意激发，NextChat 都能让用户随时随地通过网页、iOS、Android、Windows、MacOS 或 Linux 端无缝接入智能服务。\n\n这款工具非常适合普通用户、学生、职场人士以及需要私有化部署的企业团队使用。对于开发者而言，它也提供了便捷的自托管方案，支持一键部署到 Vercel 或 Zeabur 等平台。\n\nNextChat 的核心亮点在于其广泛的模型兼容性，原生支持 Claude、DeepSeek、GPT-4 及 Gemini Pro 等主流大模型，让用户在一个界面即可自由切换不同 AI 能力。此外，它还率先支持 MCP（Model Context Protocol）协议，增强了上下文处理能力。针对企业用户，NextChat 提供专业版解决方案，具备品牌定制、细粒度权限控制、内部知识库整合及安全审计等功能，满足公司对数据隐私和个性化管理的高标准要求。",87618,"2026-04-05T07:20:52",[13,15],{"id":26,"name":27,"github_repo":28,"description_zh":29,"stars":30,"difficulty_score":10,"last_commit_at":31,"category_tags":32,"status":16},2268,"ML-For-Beginners","microsoft\u002FML-For-Beginners","ML-For-Beginners 是由微软推出的一套系统化机器学习入门课程，旨在帮助零基础用户轻松掌握经典机器学习知识。这套课程将学习路径规划为 12 周，包含 26 节精炼课程和 52 道配套测验，内容涵盖从基础概念到实际应用的完整流程，有效解决了初学者面对庞大知识体系时无从下手、缺乏结构化指导的痛点。\n\n无论是希望转型的开发者、需要补充算法背景的研究人员，还是对人工智能充满好奇的普通爱好者，都能从中受益。课程不仅提供了清晰的理论讲解，还强调动手实践，让用户在循序渐进中建立扎实的技能基础。其独特的亮点在于强大的多语言支持，通过自动化机制提供了包括简体中文在内的 50 多种语言版本，极大地降低了全球不同背景用户的学习门槛。此外，项目采用开源协作模式，社区活跃且内容持续更新，确保学习者能获取前沿且准确的技术资讯。如果你正寻找一条清晰、友好且专业的机器学习入门之路，ML-For-Beginners 将是理想的起点。",84991,"2026-04-05T10:45:23",[33,34,35,36,14,37,15,13,38],"图像","数据工具","视频","插件","其他","音频",{"id":40,"name":41,"github_repo":42,"description_zh":43,"stars":44,"difficulty_score":45,"last_commit_at":46,"category_tags":47,"status":16},3128,"ragflow","infiniflow\u002Fragflow","RAGFlow 是一款领先的开源检索增强生成（RAG）引擎，旨在为大语言模型构建更精准、可靠的上下文层。它巧妙地将前沿的 RAG 技术与智能体（Agent）能力相结合，不仅支持从各类文档中高效提取知识，还能让模型基于这些知识进行逻辑推理和任务执行。\n\n在大模型应用中，幻觉问题和知识滞后是常见痛点。RAGFlow 通过深度解析复杂文档结构（如表格、图表及混合排版），显著提升了信息检索的准确度，从而有效减少模型“胡编乱造”的现象，确保回答既有据可依又具备时效性。其内置的智能体机制更进一步，使系统不仅能回答问题，还能自主规划步骤解决复杂问题。\n\n这款工具特别适合开发者、企业技术团队以及 AI 研究人员使用。无论是希望快速搭建私有知识库问答系统，还是致力于探索大模型在垂直领域落地的创新者，都能从中受益。RAGFlow 提供了可视化的工作流编排界面和灵活的 API 接口，既降低了非算法背景用户的上手门槛，也满足了专业开发者对系统深度定制的需求。作为基于 Apache 2.0 协议开源的项目，它正成为连接通用大模型与行业专有知识之间的重要桥梁。",77062,3,"2026-04-04T04:44:48",[14,33,13,15,37],{"id":49,"name":50,"github_repo":51,"description_zh":52,"stars":53,"difficulty_score":45,"last_commit_at":54,"category_tags":55,"status":16},519,"PaddleOCR","PaddlePaddle\u002FPaddleOCR","PaddleOCR 是一款基于百度飞桨框架开发的高性能开源光学字符识别工具包。它的核心能力是将图片、PDF 等文档中的文字提取出来，转换成计算机可读取的结构化数据，让机器真正“看懂”图文内容。\n\n面对海量纸质或电子文档，PaddleOCR 解决了人工录入效率低、数字化成本高的问题。尤其在人工智能领域，它扮演着连接图像与大型语言模型（LLM）的桥梁角色，能将视觉信息直接转化为文本输入，助力智能问答、文档分析等应用场景落地。\n\nPaddleOCR 适合开发者、算法研究人员以及有文档自动化需求的普通用户。其技术优势十分明显：不仅支持全球 100 多种语言的识别，还能在 Windows、Linux、macOS 等多个系统上运行，并灵活适配 CPU、GPU、NPU 等各类硬件。作为一个轻量级且社区活跃的开源项目，PaddleOCR 既能满足快速集成的需求，也能支撑前沿的视觉语言研究，是处理文字识别任务的理想选择。",74939,"2026-04-05T23:16:38",[15,33,13,37],{"id":57,"name":58,"github_repo":59,"description_zh":60,"stars":61,"difficulty_score":45,"last_commit_at":62,"category_tags":63,"status":16},2181,"OpenHands","OpenHands\u002FOpenHands","OpenHands 是一个专注于 AI 驱动开发的开源平台，旨在让智能体（Agent）像人类开发者一样理解、编写和调试代码。它解决了传统编程中重复性劳动多、环境配置复杂以及人机协作效率低等痛点，通过自动化流程显著提升开发速度。\n\n无论是希望提升编码效率的软件工程师、探索智能体技术的研究人员，还是需要快速原型验证的技术团队，都能从中受益。OpenHands 提供了灵活多样的使用方式：既可以通过命令行（CLI）或本地图形界面在个人电脑上轻松上手，体验类似 Devin 的流畅交互；也能利用其强大的 Python SDK 自定义智能体逻辑，甚至在云端大规模部署上千个智能体并行工作。\n\n其核心技术亮点在于模块化的软件智能体 SDK，这不仅构成了平台的引擎，还支持高度可组合的开发模式。此外，OpenHands 在 SWE-bench 基准测试中取得了 77.6% 的优异成绩，证明了其解决真实世界软件工程问题的能力。平台还具备完善的企业级功能，支持与 Slack、Jira 等工具集成，并提供细粒度的权限管理，适合从个人开发者到大型企业的各类用户场景。",70626,"2026-04-05T22:51:36",[15,14,13,36],{"id":65,"github_repo":66,"name":67,"description_en":68,"description_zh":69,"ai_summary_zh":69,"readme_en":70,"readme_zh":71,"quickstart_zh":72,"use_case_zh":73,"hero_image_url":74,"owner_login":75,"owner_name":76,"owner_avatar_url":77,"owner_bio":78,"owner_company":79,"owner_location":80,"owner_email":81,"owner_twitter":75,"owner_website":82,"owner_url":83,"languages":84,"stars":93,"forks":94,"last_commit_at":95,"license":96,"difficulty_score":10,"env_os":97,"env_gpu":98,"env_ram":98,"env_deps":99,"category_tags":104,"github_topics":105,"view_count":110,"oss_zip_url":111,"oss_zip_packed_at":111,"status":16,"created_at":112,"updated_at":113,"faqs":114,"releases":145},1160,"wangrongding\u002Fwechat-bot","wechat-bot","🤖一个基于 WeChaty 结合 ChatGPT \u002F Claude \u002F Kimi \u002F DeepSeek \u002F Ollama等Ai服务实现的微信机器人 ，可以用来帮助你自动回复微信消息，或者社群分析\u002F好友管理，检测僵尸粉等...","WeChat Bot 是一个基于 Wechaty 和多种 AI 服务（如 ChatGPT、Kimi、通义千问等）打造的微信机器人，可以自动回复消息、管理微信群和好友，还能检测僵尸粉。它操作简单，只需四个步骤就能快速上手，适合需要自动化处理微信消息的用户。无论是开发者、研究人员还是普通用户，都可以通过它提升效率。工具支持多种 AI 模型接入，具备良好的扩展性，能够灵活适配不同需求。不过需要注意的是，由于微信对协议的审查，使用时需谨慎，建议选择更稳定的连接方式。","# WeChat Bot\n\n一个 基于 `chatgpt` + `wechaty` 的微信机器人\n\n可以用来帮助你自动回复微信消息，或者管理微信群\u002F好友.\n\n`简单`，`好用`，`2分钟（4 个步骤）` 就能玩起来了。🌸 如果对您有所帮助，请点个 Star ⭐️ 支持一下。\n\n\u003Cdiv align='center'>\n  \u003Ca href=\"https:\u002F\u002Ftrendshift.io\u002Frepositories\u002F11077\" target=\"_blank\">\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fwangrongding_wechat-bot_readme_4a68feb902da.png\" alt=\"wangrongding%2Fwechat-bot | Trendshift\" style=\"width: 250px; height: 55px;\" width=\"250\" height=\"55\"\u002F>\u003C\u002Fa>\n\u003C\u002Fdiv>\n\n## 贡献者们\n\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fwangrongding\u002Fwechat-bot\u002Fgraphs\u002Fcontributors\">\n  \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fwangrongding_wechat-bot_readme_429dcc325a7d.png\" \u002F>\n\u003C\u002Fa>\n\n欢迎大家提交 PR 接入更多的 ai 服务(比如扣子等...)，积极贡献更好的功能实现，让 wechat-bot 变得更强！\n\n## 注意：最近微信对此审查变得非常严格，使用默认的协议有微信警告或者封号的风险，请大家谨慎使用，关于 padlocal ，这个协议的作者没有继续维护，大家可以自行切换更稳定的协议。  \n\n![](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fwangrongding_wechat-bot_readme_26e9b48bcc06.png)\n\n## 使用前需要配置的 AI 服务（目前支持 9 种，可任选其一）\n\n- deepseek\n\n  获取自己的 `api key`，地址戳这里 👉🏻 ：[deepseek 开放平台](https:\u002F\u002Fplatform.deepseek.com\u002Fusage)  \n  将获取到的`api key`填入 `.evn` 文件中的 `DEEPSEEK_FREE_TOKEN` 中。\n\n- ChatGPT\n\n  先获取自己的 `api key`，地址戳这里 👉🏻 ：[创建你的 api key](https:\u002F\u002Fplatform.openai.com\u002Fsettings\u002Forganization\u002Fapi-keys)\n\n  **注意：这个是需要去付费购买的，很多人过来问为什么请求不通，请确保终端走了代理，并且付费购买了它的服务**\n\n  ```sh\n  # 执行下面命令，拷贝一份 .env.example 文件为 .env\n  cp .env.example .env\n  # 填写完善 .env 文件中的内容\n  OPENAI_API_KEY='你的key'\n  ```\n\n- 豆包\n\n  豆包最新的Doubao-Seed-1.6模型，支持输入图片和深度思考，而且每个模型都有 50 万的免费tokens。在火山引擎注册登录账号，可以选择最新的Doubao-Seed-1.6-thinking模型，选择“API接入” -> “获取 API Key”。\n\n  ```sh\n  # 拷贝 .env.example 文件为 .env\n  cp .env.example .env\n  # 修改 .env 文件中的内容\n  DOUBAO_API_KEY='你的key'\n  # 简单测试API是否可用\n  node src\u002Fdoubao\u002F__test__.js\n  ```\n\n- 通义千问\n\n  通义千问是阿里云提供的 AI 服务，获取到你的 api key 之后, 填写到 .env 文件中即可\n\n  ```sh\n  # 执行下面命令，拷贝一份 .env.example 文件为 .env\n  cp .env.example .env\n  # 填写完善 .env 文件中的内容\n  # 通义千问, URL 包含 uri 路径\n  TONGYI_URL = \"https:\u002F\u002Fdashscope.aliyuncs.com\u002Fcompatible-mode\u002Fv1\"\n  # 通义千问的 API_KEY\n  TONGYI_API_KEY = ''\n  # 通义千问使用的模型\n  TONGYI_MODEL='qwen-plus'\n  ```\n\n- 科大讯飞\n\n  新增科大讯飞，去这里申请一个 key：[科大讯飞](https:\u002F\u002Fconsole.xfyun.cn\u002Fservices\u002Fbm35)，每个模型都有 200 万的免费 token ，感觉很难用完。  \n  注意： 讯飞的配置文件几个 key，别填反了，很多人找到我说为什么不回复，都是填反了。  \n  而且还有一个好处就是，接口不会像 Kimi 一样限制请求频次，相对来说稳定很多。  \n  服务出错可参考： [issues\u002F170](https:\u002F\u002Fgithub.com\u002Fwangrongding\u002Fwechat-bot\u002Fissues\u002F170), [issues\u002F180](https:\u002F\u002Fgithub.com\u002Fwangrongding\u002Fwechat-bot\u002Fissues\u002F180)\n\n- Kimi （请求限制较严重）\n\n  可以去 ： [kimi apikey](https:\u002F\u002Fplatform.moonshot.cn\u002Fconsole\u002Fapi-keys) 获取你的 key  \n  最近比较忙，大家感兴趣可以提交 PR，我会尽快合并。目前 Kimi 刚刚集成，还可以实现上传文件等功能，然后有其它较好的服务也可以提交 PR 。\n\n- dify\n\n  地址：[dify](https:\u002F\u002Fdify.ai\u002F), 创建你的应用之后, 获取到你的 api key 之后, 填写到 .env 文件中即可, 也支持私有化部署dify版本\n\n  ```sh\n  # 执行下面命令，拷贝一份 .env.example 文件为 .env\n  cp .env.example .env\n  # 填写完善 .env 文件中的内容\n  DIFY_API_KEY='你的key'\n  # 如果需要私有化部署，请修改.env中下面的配置\n  # DIFY_URL='https:\u002F\u002F[你的私有化部署地址]'\n  ```\n\n- ollama\n\n  Ollama 是一个本地化的 AI 服务，它的 API 与 OpenAI 非常接近。配置 Ollama 的过程与各种在线服务略有不同\n\n  ```sh\n  # 执行下面命令，拷贝一份 .env.example 文件为 .env\n  cp .env.example .env\n  # 填写完善 .env 文件中的内容\n  OLLAMA_URL='http:\u002F\u002F127.0.0.1:11434\u002Fapi\u002Fchat'\n  OLLAMA_MODEL='qwen2.5:7b'\n  OLLAMA_SYSTEM_MESSAGE='You are a personal assistant.'\n  ```\n\n- 302.AI\n\n  AI聚合平台，有套壳GPT的API，也有其他模型，点这里可以[添加API](https:\u002F\u002Fdash.302.ai\u002Fapis\u002Flist)，添加之后把API KEY配置到.env里，如下，MODEL可以自行选择配置\n\n  ```\n  _302AI_API_KEY = 'xxxx'\n  _302AI_MODEL= 'gpt-4o-mini'\n  ```\n\n  由于openai充值需要国外信用卡，流程比较繁琐，大多需要搞国外虚拟卡，手续费也都不少，该平台可以直接支付宝，算是比较省事的，注册填问卷可领1刀额度，后续充值也有手续费，用户可自行酌情选择。\n\n- claude\n\n  前往 [官网](https:\u002F\u002Fconsole.anthropic.com) 注册并获取API KEY后进行配置即可\n\n  ```bash\n  # 执行下面命令，拷贝一份 .env.example 文件为 .env，如果已存在则忽略此步\n  cp .env.example .env\n\n  # 编辑.env文件并添加claude相关配置\n\n  CLAUDE_API_VERSION = '2023-06-01'\n  CLAUDE_API_KEY = '你的API KEY'\n  CLAUDE_MODEL = 'claude-3-5-sonnet-latest'\n  # 系统人设\n  CLAUDE_SYSTEM = ''\n  ```\n\n- 其他  \n  （待实践）理论上使用 openAI 格式的 api，都可以使用，在 env 文件中修改对应的 api_key、model、proxy_url 即可。\n\n## API资源\u002F平台收录\n\n- [gpt4free](https:\u002F\u002Fgithub.com\u002Fxtekky\u002Fgpt4free)\n- [chatanywhere](https:\u002F\u002Fgithub.com\u002Fchatanywhere\u002FGPT_API_free)\n\n## 赞助商\n\n\u003Cdiv align=\"center\">\n  \u003Ctable>\n    \u003C!-- Header -->\n    \u003Ctr>\n      \u003Ctd align=\"center\" width=\"50%\">\n        \u003Cp align=\"center\">\n          \u003Ca href=\"https:\u002F\u002F91api.dev\u002Fregister?aff=9P6u\" target=\"_blank\">\n            \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fwangrongding_wechat-bot_readme_c7d23bf7208f.jpg\" alt=\"91Api\" width=\"300px\"\u002F>\n          \u003C\u002Fa>\n        \u003C\u002Fp>\n      \u003C\u002Ftd>\n      \u003Ctd align=\"center\" width=\"50%\">\n        \u003Cp align=\"center\">\n          \u003Ca href=\"https:\u002F\u002Fwww.compshare.cn\u002Fmodel-api?ytag=GPU_YY-gh_wechatbot\" target=\"_blank\">\n            \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fwangrongding_wechat-bot_readme_1ff59e724827.png\" alt=\"UCloud\" width=\"300px\"\u002F>\n          \u003C\u002Fa>\n        \u003C\u002Fp>\n      \u003C\u002Ftd>\n    \u003C\u002Ftr>\n    \u003C!-- Description -->\n    \u003Ctr>\n      \u003Ctd align=\"left\">\n        一站式集成 500+主流大模型中转聚合API平台，高效稳定，高并发，价格超低\n        \u003Ca href=\"https:\u002F\u002F91api.dev\u002Fregister?aff=9P6u\" target=\"_blank\">产品链接\u003C\u002Fa>\n      \u003C\u002Ftd>\n      \u003Ctd align=\"left\">\n        万卡RTX40系GPU+海内外主流模型API服务，秒级响应，按量计费，新客免费用。\n        \u003Ca href=\"https:\u002F\u002Fwww.compshare.cn\u002Fmodel-api?ytag=GPU_YY-gh_wechatbot\" target=\"_blank\">产品链接\u003C\u002Fa>\n      \u003C\u002Ftd>\n    \u003C\u002Ftr>\n  \u003C\u002Ftable>\n\u003C\u002Fdiv>\n\n目前该项目流量较大，已经上过 27 次 [Github Trending 榜](https:\u002F\u002Fgithub.com\u002Ftrending)，如果您的公司或者产品需要推广，可以在下方二维码处联系我，我会在项目中加入您的广告，帮助您的产品获得更多的曝光。\n\n## 开发\u002F使用\n\n检查好自己的开发环境，确保已经安装了 `nodejs` , 版本需要满足 Node.js >= v18.0 ，版本太低会导致运行报错,最好使用 LTS 版本。\n\n1. 安装依赖\n\n> 安装依赖时，大陆的朋友推荐切到 taobao 镜像源后再安装，命令：  \n> `npm config set registry https:\u002F\u002Fregistry.npmmirror.com`  \n> 想要灵活切换，推荐使用我的工具 👉🏻 [prm-cli](https:\u002F\u002Fgithub.com\u002Fwangrongding\u002Fprm-cli) 快速切换。\n\n```sh\n# 安装依赖\nnpm i\n# 推荐用 yarn 吧，npm 安装有时会遇到 wechaty 内部依赖安装失败的问题\nyarn\n```\n\n2. 运行服务\n\n```sh\n# 启动服务\nnpm run dev # 或者 npm run start\n# 启动服务\nyarn dev # 或者 yarn start\n```\n\n然后就可以扫码登录了，然后根据你的需求，自己修改相关逻辑文件。\n\n![](https:\u002F\u002Fassets.fedtop.com\u002Fpicbed\u002F202403261420468.png)\n\n![](https:\u002F\u002Fassets.fedtop.com\u002Fpicbed\u002F202212071315670.png)\n\n为了兼容 docker 部署，避免不必要的选择交互，新增指定服务运行\n\n```sh\n# 运行指定服务 （ 目前支持 ChatGPT | Kimi | Xunfei ）\nnpm run start -- --serve Kimi\n# 交互选择服务，仍然保持原有的逻辑\nnpm run start\n```\n\n3. 测试\n\n安装完依赖后，运行 `npm run dev` 前，可以先测试下 openai 的接口是否可用，运行 `npm run test` 即可。\n\n遇到 timeout 问题需要自行用魔法解决。（一般就是代理未成功，或者你的魔法服务限制了 openai api 的服务）\n\n## 你要修改的\n\n很多人说运行后不会自动收发信息，不是的哈，为了防止给每一条收到的消息都自动回复（太恐怖了），所以加了限制条件。\n\n你要把下面提到的地方自定义修改下。\n\n- 群聊，记得把机器人名称改成你自己微信号的名称，然后添加对应群聊的名称到白名单中，这样就可以自动回复群聊消息了。\n- 私聊，记得把需要自动回复的好友名称添加到白名单中，这样就可以自动回复私聊消息了。\n- 更深入的可以通过修改 `src\u002Fwechaty\u002FsendMessage.js` 文件来满足你自己的业务场景。（大多人反馈可能无法自动回复，也可以通过调试这个文件来排查具体原因）\n\n在.env 文件中修改你的配置即可，示例如下\n\n```sh\n# 白名单配置\n#定义机器人的名称，这里是为了防止群聊消息太多，所以只有艾特机器人才会回复，\n#这里不要把@去掉，在@后面加上你启动机器人账号的微信名称\nBOT_NAME=@可乐\n#联系人白名单\nALIAS_WHITELIST=微信名1,备注名2\n#群聊白名单\nROOM_WHITELIST=XX群1,群2\n#自动回复前缀匹配，文本消息匹配到指定前缀时，才会触发自动回复，不配或配空串情况下该配置不生效（适用于用大号，不期望每次被@或者私聊时都触发自动回复的人群）\n#匹配规则：群聊消息去掉${BOT_NAME}并trim后进行前缀匹配，私聊消息trim后直接进行前缀匹配\nAUTO_REPLY_PREFIX=''\n```\n\n可以看到，自动回复都是基于 `chatgpt` 的，记得要开代理，或者填写代理地址。\n\n![](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fwangrongding_wechat-bot_readme_26e9b48bcc06.png)\n\n## 注意项\n\n近期微信审查很严格，大量用户反映弹出外挂警告，由于项目内默认使用的是免费版的 web 协议，所以目前来说很容易会被微信检测到，建议使用 pad 协议，或者自行购买企业版协议，避免被封号。\n\n修改可参考： https:\u002F\u002Fgithub.com\u002Fwangrongding\u002Fwechat-bot\u002Fpull\u002F263\u002Ffiles  \n自行购买 pad 协议渠道（wechaty 出的，购买仍需谨慎）：http:\u002F\u002Fpad-local.com  \n由于底层依赖的 wechaty 本身不怎么维护了，听说是被腾讯告了，所以大家购买也要谨慎，群友分享目前 pad 协议可正常使用(但频繁登录登出也会收到警告)，最好别一次性买太久的。\n\n## 常见问题\n\n以下是我的微信和群二维码，添加的时候记得备注清楚来意。  \n希望可以一起交流探讨相关问题和解决方案。\n\n| \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fwangrongding_wechat-bot_readme_c3c20689df34.png\" width=\"180px\"> | \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fwangrongding_wechat-bot_readme_2384d26a7142.jpg\" width=\"180px\"> |\n| --- | --- |\n\n### 运行报错等问题\n\n首先你需要做到以下几点：\n\n- 拉取最新代码，重新安装依赖（删除 lock 文件，删除 node_modules）\n- 安装依赖时最好不要设置 npm 镜像\n- 遇到 puppeteer 安装失败设置环境变量：\n\n  ```\n  # Mac\n  export PUPPETEER_SKIP_DOWNLOAD='true'\n\n  # Windows\n  SET PUPPETEER_SKIP_DOWNLOAD='true'\n  ```\n\n- 确保你们的终端走了代理 (开全局代理，或者手动设置终端走代理)\n\n  ```sh\n  # 设置代理\n  export https_proxy=http:\u002F\u002F127.0.0.1:你的代理服务端口号;export http_proxy=http:\u002F\u002F127.0.0.1:你的代理服务端口号;export all_proxy=socks5:\u002F\u002F127.0.0.1:你的代理服务端口号\n  # 然后再执行 npm run test\n  npm run test\n  ```\n\n  ![](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fwangrongding_wechat-bot_readme_ccd418168626.png)\n\n- 确保你的 openai key 有余额\n- 配置好 .env 文件\n- 执行 npm run test 能成功拿到 openai 的回复(设置完代理后，仍然请求不通？ 可以参考： https:\u002F\u002Fmedium.com\u002F@chanter2d\u002F%E5%85%B3%E4%BA%8E%E5%A6%82%E4%BD%95%E4%BD%BF%E7%94%A8clash%E5%AE%9E%E7%8E%B0%E7%9C%9F%E6%AD%A3%E7%9A%84%E5%85%A8%E5%B1%80%E4%BB%A3%E7%90%86-385b2d745871)\n- 执行 npm run dev 愉快的玩耍吧~ 🎉\n\n也可以参考这条 [issue](https:\u002F\u002Fgithub.com\u002Fwangrongding\u002Fwechat-bot\u002Fissues\u002F54#issuecomment-1347880291)\n\n- 怎么玩？ 完成自定义修改后，群聊时，在白名单中的群，有人 @你 时会触发自动回复，私聊中，联系人白名单中的人发消息给你时会触发自动回复。\n- 运行报错？检查 node 版本是否符合，如果不符合，升级 node 版本即可，检查依赖是否安装完整，如果不完整，大陆推荐切换下 npm 镜像源，然后重新安装依赖即可。（可以用我的 [prm-cli](https:\u002F\u002Fgithub.com\u002Fwangrongding\u002Fprm-cli) 工具快速切换）\n- 调整对话模式？可以修改[openai\u002Findex.js](.\u002Fsrc\u002Fopenai\u002Findex.js) ,具体可以根据官方文档给出的示例（非常多，自己对应调整参数即可） ：https:\u002F\u002Fbeta.openai.com\u002Fexamples\n\n## 使用 Docker 部署\n\n```sh\n$ docker build . -t wechat-bot\n\n$ docker run -d --rm --name wechat-bot -v $(pwd)\u002F.env:\u002Fapp\u002F.env wechat-bot\n```\n\n- 如果docker build过程中node反复下载超时，可先下载nodejs镜像到本地镜像库，并将DockerFile中的'node:19'修改为本地nodejs镜像版本\n\n## Star History Chart\n\n该项目于 2023\u002F2\u002F13 日成为 Github Trending 榜首。\n\n[![Star History Chart](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fwangrongding_wechat-bot_readme_8889e50a421b.png)](https:\u002F\u002Fstar-history.com\u002F#wangrongding\u002Fwechat-bot&Date)\n\n## License\n\n[MIT](.\u002FLICENSE).\n","# 微信机器人\n\n一个 基于 `chatgpt` + `wechaty` 的微信机器人\n\n可以用来帮助你自动回复微信消息，或者管理微信群\u002F好友.\n\n`简单`，`好用`，`2分钟（4 个步骤）` 就能玩起来了。🌸 如果对您有所帮助，请点个 Star ⭐️ 支持一下。\n\n\u003Cdiv align='center'>\n  \u003Ca href=\"https:\u002F\u002Ftrendshift.io\u002Frepositories\u002F11077\" target=\"_blank\">\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fwangrongding_wechat-bot_readme_4a68feb902da.png\" alt=\"wangrongding%2Fwechat-bot | Trendshift\" style=\"width: 250px; height: 55px;\" width=\"250\" height=\"55\"\u002F>\u003C\u002Fa>\n\u003C\u002Fdiv>\n\n## 贡献者们\n\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fwangrongding\u002Fwechat-bot\u002Fgraphs\u002Fcontributors\">\n  \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fwangrongding_wechat-bot_readme_429dcc325a7d.png\" \u002F>\n\u003C\u002Fa>\n\n欢迎大家提交 PR 接入更多的 ai 服务(比如扣子等...)，积极贡献更好的功能实现，让 wechat-bot 变得更强！\n\n## 注意：最近微信对此审查变得非常严格，使用默认的协议有微信警告或者封号的风险，请大家谨慎使用，关于 padlocal ，这个协议的作者没有继续维护，大家可以自行切换更稳定的协议。  \n\n![](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fwangrongding_wechat-bot_readme_26e9b48bcc06.png)\n\n## 使用前需要配置的 AI 服务（目前支持 9 种，可任选其一）\n\n- deepseek\n\n  获取自己的 `api key`，地址戳这里 👉🏻 ：[deepseek 开放平台](https:\u002F\u002Fplatform.deepseek.com\u002Fusage)  \n  将获取到的`api key`填入 `.evn` 文件中的 `DEEPSEEK_FREE_TOKEN` 中。\n\n- ChatGPT\n\n  先获取自己的 `api key`，地址戳这里 👉🏻 ：[创建你的 api key](https:\u002F\u002Fplatform.openai.com\u002Fsettings\u002Forganization\u002Fapi-keys)\n\n  **注意：这个是需要去付费购买的，很多人过来问为什么请求不通，请确保终端走了代理，并且付费购买了它的服务**\n\n  ```sh\n  # 执行下面命令，拷贝一份 .env.example 文件为 .env\n  cp .env.example .env\n  # 填写完善 .env 文件中的内容\n  OPENAI_API_KEY='你的key'\n  ```\n\n- 豆包\n\n  豆包最新的Doubao-Seed-1.6模型，支持输入图片和深度思考，而且每个模型都有 50 万的免费tokens。在火山引擎注册登录账号，可以选择最新的Doubao-Seed-1.6-thinking模型，选择“API接入” -> “获取 API Key”。\n\n  ```sh\n  # 拷贝 .env.example 文件为 .env\n  cp .env.example .env\n  # 修改 .env 文件中的内容\n  DOUBAO_API_KEY='你的key'\n  # 简单测试API是否可用\n  node src\u002Fdoubao\u002F__test__.js\n  ```\n\n- 通义千问\n\n  通义千问是阿里云提供的 AI 服务，获取到你的 api key 之后, 填写到 .env 文件中即可\n\n  ```sh\n  # 执行下面命令，拷贝一份 .env.example 文件为 .env\n  cp .env.example .env\n  # 填写完善 .env 文件中的内容\n  # 通义千问, URL 包含 uri 路径\n  TONGYI_URL = \"https:\u002F\u002Fdashscope.aliyuncs.com\u002Fcompatible-mode\u002Fv1\"\n  # 通义千问的 API_KEY\n  TONGYI_API_KEY = ''\n  # 通义千问使用的模型\n  TONGYI_MODEL='qwen-plus'\n  ```\n\n- 科大讯飞\n\n  新增科大讯飞，去这里申请一个 key：[科大讯飞](https:\u002F\u002Fconsole.xfyun.cn\u002Fservices\u002Fbm35)，每个模型都有 200 万的免费 token ，感觉很难用完。  \n  注意： 讯飞的配置文件几个 key，别填反了，很多人找到我说为什么不回复，都是填反了。  \n  而且还有一个好处就是，接口不会像 Kimi 一样限制请求频次，相对来说稳定很多。  \n  服务出错可参考： [issues\u002F170](https:\u002F\u002Fgithub.com\u002Fwangrongding\u002Fwechat-bot\u002Fissues\u002F170), [issues\u002F180](https:\u002F\u002Fgithub.com\u002Fwangrongding\u002Fwechat-bot\u002Fissues\u002F180)\n\n- Kimi （请求限制较严重）\n\n  可以去 ： [kimi apikey](https:\u002F\u002Fplatform.moonshot.cn\u002Fconsole\u002Fapi-keys) 获取你的 key  \n  最近比较忙，大家感兴趣可以提交 PR，我会尽快合并。目前 Kimi 刚刚集成，还可以实现上传文件等功能，然后有其它较好的服务也可以提交 PR。\n\n- dify\n\n  地址：[dify](https:\u002F\u002Fdify.ai\u002F), 创建你的应用之后, 获取到你的 api key 之后, 填写到 .env 文件中即可, 也支持私有化部署dify版本\n\n  ```sh\n  # 执行下面命令，拷贝一份 .env.example 文件为 .env\n  cp .env.example .env\n  # 填写完善 .env 文件中的内容\n  DIFY_API_KEY='你的key'\n  # 如果需要私有化部署，请修改.env中下面的配置\n  # DIFY_URL='https:\u002F\u002F[你的私有化部署地址]'\n  ```\n\n- ollama\n\n  Ollama 是一个本地化的 AI 服务，它的 API 与 OpenAI 非常接近。配置 Ollama 的过程与各种在线服务略有不同\n\n  ```sh\n  # 执行下面命令，拷贝一份 .env.example 文件为 .env\n  cp .env.example .env\n  # 填写完善 .env 文件中的内容\n  OLLAMA_URL='http:\u002F\u002F127.0.0.1:11434\u002Fapi\u002Fchat'\n  OLLAMA_MODEL='qwen2.5:7b'\n  OLLAMA_SYSTEM_MESSAGE='You are a personal assistant.'\n  ```\n\n- 302.AI\n\n  AI聚合平台，有套壳GPT的API，也有其他模型，点这里可以[添加API](https:\u002F\u002Fdash.302.ai\u002Fapis\u002Flist)，添加之后把API KEY配置到.env里，如下，MODEL可以自行选择配置\n\n  ```\n  _302AI_API_KEY = 'xxxx'\n  _302AI_MODEL= 'gpt-4o-mini'\n  ```\n\n  由于openai充值需要国外信用卡，流程比较繁琐，大多需要搞国外虚拟卡，手续费也都不少，该平台可以直接支付宝，算是比较省事的，注册填问卷可领1刀额度，后续充值也有手续费，用户可自行酌情选择。\n\n- claude\n\n  前往 [官网](https:\u002F\u002Fconsole.anthropic.com) 注册并获取API KEY后进行配置即可\n\n  ```bash\n  # 执行下面命令，拷贝一份 .env.example 文件为 .env，如果已存在则忽略此步\n  cp .env.example .env\n\n  # 编辑.env文件并添加claude相关配置\n\n  CLAUDE_API_VERSION = '2023-06-01'\n  CLAUDE_API_KEY = '你的API KEY'\n  CLAUDE_MODEL = 'claude-3-5-sonnet-latest'\n  # 系统人设\n  CLAUDE_SYSTEM = ''\n  ```\n\n- 其他  \n  （待实践）理论上使用 openAI 格式的 api，都可以使用，在 env 文件中修改对应的 api_key、model、proxy_url 即可。\n\n## API资源\u002F平台收录\n\n- [gpt4free](https:\u002F\u002Fgithub.com\u002Fxtekky\u002Fgpt4free)\n- [chatanywhere](https:\u002F\u002Fgithub.com\u002Fchatanywhere\u002FGPT_API_free)\n\n## 赞助商\n\n\u003Cdiv align=\"center\">\n  \u003Ctable>\n    \u003C!-- Header -->\n    \u003Ctr>\n      \u003Ctd align=\"center\" width=\"50%\">\n        \u003Cp align=\"center\">\n          \u003Ca href=\"https:\u002F\u002F91api.dev\u002Fregister?aff=9P6u\" target=\"_blank\">\n            \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fwangrongding_wechat-bot_readme_c7d23bf7208f.jpg\" alt=\"91Api\" width=\"300px\"\u002F>\n          \u003C\u002Fa>\n        \u003C\u002Fp>\n      \u003C\u002Ftd>\n      \u003Ctd align=\"center\" width=\"50%\">\n        \u003Cp align=\"center\">\n          \u003Ca href=\"https:\u002F\u002Fwww.compshare.cn\u002Fmodel-api?ytag=GPU_YY-gh_wechatbot\" target=\"_blank\">\n            \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fwangrongding_wechat-bot_readme_1ff59e724827.png\" alt=\"UCloud\" width=\"300px\"\u002F>\n          \u003C\u002Fa>\n        \u003C\u002Fp>\n      \u003C\u002Ftd>\n    \u003C\u002Ftr>\n    \u003C!-- Description -->\n    \u003Ctr>\n      \u003Ctd align=\"left\">\n        一站式集成 500+主流大模型中转聚合API平台，高效稳定，高并发，价格超低\n        \u003Ca href=\"https:\u002F\u002F91api.dev\u002Fregister?aff=9P6u\" target=\"_blank\">产品链接\u003C\u002Fa>\n      \u003C\u002Ftd>\n      \u003Ctd align=\"left\">\n        万卡RTX40系GPU+海内外主流模型API服务，秒级响应，按量计费，新客免费用。\n        \u003Ca href=\"https:\u002F\u002Fwww.compshare.cn\u002Fmodel-api?ytag=GPU_YY-gh_wechatbot\" target=\"_blank\">产品链接\u003C\u002Fa>\n      \u003C\u002Ftd>\n    \u003C\u002Ftr>\n  \u003C\u002Ftable>\n\u003C\u002Fdiv>\n\n目前该项目流量较大，已经上过 27 次 [Github Trending 榜](https:\u002F\u002Fgithub.com\u002Ftrending)，如果您的公司或者产品需要推广，可以在下方二维码处联系我，我会在项目中加入您的广告，帮助您的产品获得更多的曝光。\n\n## 开发\u002F使用\n\n检查好自己的开发环境，确保已经安装了 `nodejs` , 版本需要满足 Node.js >= v18.0 ，版本太低会导致运行报错,最好使用 LTS 版本。\n\n1. 安装依赖\n\n> 安装依赖时，大陆的朋友推荐切到 taobao 镜像源后再安装，命令：  \n> `npm config set registry https:\u002F\u002Fregistry.npmmirror.com`  \n> 想要灵活切换，推荐使用我的工具 👉🏻 [prm-cli](https:\u002F\u002Fgithub.com\u002Fwangrongding\u002Fprm-cli) 快速切换。\n\n```sh\n# 安装依赖\nnpm i\n# 推荐用 yarn 吧，npm 安装有时会遇到 wechaty 内部依赖安装失败的问题\nyarn\n```\n\n2. 运行服务\n\n```sh\n# 启动服务\nnpm run dev # 或者 npm run start\n# 启动服务\nyarn dev # 或者 yarn start\n```\n\n然后就可以扫码登录了，然后根据你的需求，自己修改相关逻辑文件。\n\n![](https:\u002F\u002Fassets.fedtop.com\u002Fpicbed\u002F202403261420468.png)\n\n![](https:\u002F\u002Fassets.fedtop.com\u002Fpicbed\u002F202212071315670.png)\n\n为了兼容 docker 部署，避免不必要的选择交互，新增指定服务运行\n\n```sh\n# 运行指定服务 （ 目前支持 ChatGPT | Kimi | Xunfei ）\nnpm run start -- --serve Kimi\n# 交互选择服务，仍然保持原有的逻辑\nnpm run start\n```\n\n3. 测试\n\n安装完依赖后，运行 `npm run dev` 前，可以先测试下 openai 的接口是否可用，运行 `npm run test` 即可。\n\n遇到 timeout 问题需要自行用魔法解决。（一般就是代理未成功，或者你的魔法服务限制了 openai api 的服务）\n\n## 你要修改的\n\n很多人说运行后不会自动收发信息，不是的哈，为了防止给每一条收到的消息都自动回复（太恐怖了），所以加了限制条件。\n\n你要把下面提到的地方自定义修改下。\n\n- 群聊，记得把机器人名称改成你自己微信号的名称，然后添加对应群聊的名称到白名单中，这样就可以自动回复群聊消息了。\n- 私聊，记得把需要自动回复的好友名称添加到白名单中，这样就可以自动回复私聊消息了。\n- 更深入的可以通过修改 `src\u002Fwechaty\u002FsendMessage.js` 文件来满足你自己的业务场景。（大多人反馈可能无法自动回复，也可以通过调试这个文件来排查具体原因）\n\n在.env 文件中修改你的配置即可，示例如下\n\n```sh\n# 白名单配置\n#定义机器人的名称，这里是为了防止群聊消息太多，所以只有艾特机器人才会回复，\n#这里不要把@去掉，在@后面加上你启动机器人账号的微信名称\nBOT_NAME=@可乐\n#联系人白名单\nALIAS_WHITELIST=微信名1,备注名2\n#群聊白名单\nROOM_WHITELIST=XX群1,群2\n#自动回复前缀匹配，文本消息匹配到指定前缀时，才会触发自动回复，不配或配空串情况下该配置不生效（适用于用大号，不期望每次被@或者私聊时都触发自动回复的人群）\n#匹配规则：群聊消息去掉${BOT_NAME}并trim后进行前缀匹配，私聊消息trim后直接进行前缀匹配\nAUTO_REPLY_PREFIX=''\n```\n\n可以看到，自动回复都是基于 `chatgpt` 的，记得要开代理，或者填写代理地址。\n\n![](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fwangrongding_wechat-bot_readme_26e9b48bcc06.png)\n\n## 注意项\n\n近期微信审查很严格，大量用户反映弹出外挂警告，由于项目内默认使用的是免费版的 web 协议，所以目前来说很容易会被微信检测到，建议使用 pad 协议，或者自行购买企业版协议，避免被封号。\n\n修改可参考： https:\u002F\u002Fgithub.com\u002Fwangrongding\u002Fwechat-bot\u002Fpull\u002F263\u002Ffiles  \n自行购买 pad 协议渠道（wechaty 出的，购买仍需谨慎）：http:\u002F\u002Fpad-local.com  \n由于底层依赖的 wechaty 本身不怎么维护了，听说是被腾讯告了，所以大家购买也要谨慎，群友分享目前 pad 协议可正常使用(但频繁登录登出也会收到警告)，最好别一次性买太久的。\n\n## 常见问题\n\n以下是我的微信和群二维码，添加的时候记得备注清楚来意。  \n希望可以一起交流探讨相关问题和解决方案。\n\n| \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fwangrongding_wechat-bot_readme_c3c20689df34.png\" width=\"180px\"> | \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fwangrongding_wechat-bot_readme_2384d26a7142.jpg\" width=\"180px\"> |\n| --- | --- |\n\n### 运行报错等问题\n\n首先你需要做到以下几点：\n\n- 拉取最新代码，重新安装依赖（删除 lock 文件，删除 node_modules）\n- 安装依赖时最好不要设置 npm 镜像\n- 遇到 puppeteer 安装失败设置环境变量：\n\n  ```\n  # Mac\n  export PUPPETEER_SKIP_DOWNLOAD='true'\n\n  # Windows\n  SET PUPPETEER_SKIP_DOWNLOAD='true'\n  ```\n\n- 确保你们的终端走了代理 (开全局代理，或者手动设置终端走代理)\n\n  ```sh\n  # 设置代理\n  export https_proxy=http:\u002F\u002F127.0.0.1:你的代理服务端口号;export http_proxy=http:\u002F\u002F127.0.0.1:你的代理服务端口号;export all_proxy=socks5:\u002F\u002F127.0.0.1:你的代理服务端口号\n  # 然后再执行 npm run test\n  npm run test\n  ```\n\n  ![](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fwangrongding_wechat-bot_readme_ccd418168626.png)\n\n- 确保你的 openai key 有余额\n- 配置好 .env 文件\n- 执行 npm run test 能成功拿到 openai 的回复(设置完代理后，仍然请求不通？ 可以参考： https:\u002F\u002Fmedium.com\u002F@chanter2d\u002F%E5%85%B3%E4%BA%8E%E5%A6%82%E4%BD%95%E4%BD%BF%E7%94%A8clash%E5%AE%9E%E7%8E%B0%E7%9C%9F%E6%AD%A3%E7%9A%84%E5%85%A8%E5%B1%80%E4%BB%A3%E7%90%86-385b2d745871)\n- 执行 npm run dev 愉快的玩耍吧~ 🎉\n\n也可以参考这条 [issue](https:\u002F\u002Fgithub.com\u002Fwangrongding\u002Fwechat-bot\u002Fissues\u002F54#issuecomment-1347880291)\n\n- 怎么玩？ 完成自定义修改后，群聊时，在白名单中的群，有人 @你 时会触发自动回复，私聊中，联系人白名单中的人发消息给你时会触发自动回复。\n- 运行报错？检查 node 版本是否符合，如果不符合，升级 node 版本即可，检查依赖是否安装完整，如果不完整，大陆推荐切换下 npm 镜像源，然后重新安装依赖即可。（可以用我的 [prm-cli](https:\u002F\u002Fgithub.com\u002Fwangrongding\u002Fprm-cli) 工具快速切换）\n- 调整对话模式？可以修改[openai\u002Findex.js](.\u002Fsrc\u002Fopenai\u002Findex.js) ,具体可以根据官方文档给出的示例（非常多，自己对应调整参数即可） ：https:\u002F\u002Fbeta.openai.com\u002Fexamples\n\n## 使用 Docker 部署\n\n```sh\n$ docker build . -t wechat-bot\n\n$ docker run -d --rm --name wechat-bot -v $(pwd)\u002F.env:\u002Fapp\u002F.env wechat-bot\n```\n\n- 如果docker build过程中node反复下载超时，可先下载nodejs镜像到本地镜像库，并将DockerFile中的'node:19'修改为本地nodejs镜像版本\n\n## Star History Chart\n\n该项目于 2023\u002F2\u002F13 日成为 Github Trending 榜首。\n\n[![Star History Chart](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fwangrongding_wechat-bot_readme_8889e50a421b.png)](https:\u002F\u002Fstar-history.com\u002F#wangrongding\u002Fwechat-bot&Date)\n\n## License\n\n[MIT](.\u002FLICENSE).","# WeChat Bot 快速上手指南\n\n## 环境准备\n\n- **系统要求**：支持 Linux、macOS 或 Windows 操作系统\n- **前置依赖**：\n  - 安装 [Node.js](https:\u002F\u002Fnodejs.org\u002F)（版本需 >= v18.0，推荐使用 LTS 版本）\n  - 安装 [npm](https:\u002F\u002Fwww.npmjs.com\u002F) 或 [yarn](https:\u002F\u002Fclassic.yarnpkg.com\u002F)\n\n> 建议大陆用户在安装依赖时切换到淘宝镜像源以加快下载速度：\n```sh\nnpm config set registry https:\u002F\u002Fregistry.npmmirror.com\n```\n\n## 安装步骤\n\n1. 克隆项目\n```sh\ngit clone https:\u002F\u002Fgithub.com\u002Fwangrongding\u002Fwechat-bot.git\ncd wechat-bot\n```\n\n2. 安装依赖\n```sh\n# 推荐使用 yarn 安装\nyarn\n```\n\n3. 配置 AI 服务\n- 复制 `.env.example` 文件为 `.env`\n- 根据你选择的 AI 服务填写对应的 API Key 和配置项（例如 OpenAI、ChatGPT、Doubao 等）\n\n示例 `.env` 配置（以 ChatGPT 为例）：\n```sh\nOPENAI_API_KEY='你的OpenAI API Key'\n```\n\n## 基本使用\n\n1. 启动服务\n```sh\nnpm run dev # 或者 yarn dev\n```\n\n2. 扫码登录微信\n- 运行后会弹出二维码，请使用微信扫码登录\n\n3. 配置白名单\n- 修改 `.env` 文件中的 `BOT_NAME`、`ALIAS_WHITELIST`、`ROOM_WHITELIST` 等参数，设置自动回复的联系人和群聊白名单\n\n4. 自定义逻辑（可选）\n- 可通过修改 `src\u002Fwechaty\u002FsendMessage.js` 文件来实现更复杂的业务逻辑\n\n> 注意：由于微信对协议的审查较严格，建议使用 `padlocal` 协议或企业版协议以避免封号风险。","小明是一家电商公司的客服主管，负责管理公司微信客户群。每天需要处理大量客户咨询，包括产品问题、订单状态查询和售后反馈，同时还要定期清理僵尸粉，维护社群质量。\n\n### 没有 wechat-bot 时  \n- 客服人员需要手动逐条回复客户消息，效率低下，容易出错  \n- 难以及时发现并移除长期不活跃的僵尸粉，影响社群氛围  \n- 没有统一的回复模板，导致回复内容不一致，影响专业形象  \n- 客服工作量大，加班频繁，员工流失率高  \n\n### 使用 wechat-bot 后  \n- 通过自动回复功能，快速处理常见问题，提升响应速度和准确性  \n- 系统自动检测并标记僵尸粉，便于人工清理，优化社群环境  \n- 支持预设回复模板，确保回复内容规范统一，提升品牌形象  \n- 减轻人工负担，客服可专注于复杂问题，提高整体工作效率  \n\nwechat-bot 有效提升了客服团队的工作效率与服务质量，降低了运营成本。","https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fwangrongding_wechat-bot_26e9b48b.png","wangrongding","荣顶","https:\u002F\u002Foss.gittoolsai.com\u002Favatars\u002Fwangrongding_e9f4181d.png","在键帽上横跳，于程序中穿梭。","Follow 我，一起变强！","Beijing, China","wangrongding@qq.com","fedtop.com","https:\u002F\u002Fgithub.com\u002Fwangrongding",[85,89],{"name":86,"color":87,"percentage":88},"JavaScript","#f1e05a",96.8,{"name":90,"color":91,"percentage":92},"Dockerfile","#384d54",3.2,10097,1188,"2026-04-05T22:14:58","MIT","Linux, macOS, Windows","未说明",{"notes":100,"python":98,"dependencies":101},"需要安装 Node.js 18.0 或更高版本，推荐使用 LTS 版本。大陆用户建议切换 npm 镜像源以避免依赖安装失败。运行时需确保终端已配置代理，特别是使用 OpenAI 等服务时。微信协议存在封号风险，建议使用更稳定的协议。",[102,103],"wechaty","nodejs>=v18.0",[15],[106,107,108,109,102],"wechat","wechatbot","chatgpt","openai",7,null,"2026-03-27T02:49:30.150509","2026-04-06T08:15:56.281452",[115,120,125,130,135,140],{"id":116,"question_zh":117,"answer_zh":118,"source_url":119},5251,"为什么使用最新的 clearanceToken 和 sessionToken 还是报 403 错误？","请确认从 cookie 中正确获取 clearanceToken 和 sessionToken，并确保配置文件中的 .env 文件已正确填写。如果问题仍然存在，可能是由于认证方式发生了变化，建议参考官方文档或社区讨论。","https:\u002F\u002Fgithub.com\u002Fwangrongding\u002Fwechat-bot\u002Fissues\u002F34",{"id":121,"question_zh":122,"answer_zh":123,"source_url":124},5252,"如何解决 'Cannot read properties of undefined (reading 'choices')' 错误？","该错误通常是因为返回的数据结构不符合预期。请检查讯飞的 API 响应是否正常，并确认代码中访问 data.payload.choices 的逻辑是否正确。可以尝试在代码中添加日志输出以调试数据内容。","https:\u002F\u002Fgithub.com\u002Fwangrongding\u002Fwechat-bot\u002Fissues\u002F170",{"id":126,"question_zh":127,"answer_zh":128,"source_url":129},5253,"为什么白名单用户的消息没有自动回复？","此问题已被修复，建议更新到最新版本的代码。如果问题仍未解决，请检查消息长度是否符合自动回复条件，或查看是否有其他逻辑限制了回复行为。","https:\u002F\u002Fgithub.com\u002Fwangrongding\u002Fwechat-bot\u002Fissues\u002F130",{"id":131,"question_zh":132,"answer_zh":133,"source_url":134},5254,"如何实现连续语境对话？","接入最新版 ChatGPT 并启用 conversation 支持即可实现连续语境。可参考提交记录：https:\u002F\u002Fgithub.com\u002Fhushicai\u002Fwechat-bot\u002Fcommit\u002Fdee4761f27699f70cd33ac4ea085bacec1af83dd","https:\u002F\u002Fgithub.com\u002Fwangrongding\u002Fwechat-bot\u002Fissues\u002F10",{"id":136,"question_zh":137,"answer_zh":138,"source_url":139},5255,"为什么添加白名单后之前的消息被重发？","此问题已在 #107 中修复。若未修复，可在代码中对比 msg.timestamp 来跳过旧消息，避免重复发送。","https:\u002F\u002Fgithub.com\u002Fwangrongding\u002Fwechat-bot\u002Fissues\u002F104",{"id":141,"question_zh":142,"answer_zh":143,"source_url":144},5256,"如何解决 '无法找到 puppeteer 的执行路径' 错误？","请参考此方案：https:\u002F\u002Fgithub.com\u002Fwangrongding\u002Fwechat-bot\u002Fissues\u002F54#issuecomment-1347743629。确保 Puppeteer 配置正确，或手动指定 executablePath。","https:\u002F\u002Fgithub.com\u002Fwangrongding\u002Fwechat-bot\u002Fissues\u002F47",[146,151],{"id":147,"version":148,"summary_zh":149,"released_at":150},114488,"0.0.2","### 看到最近 Kimi 爆火，遂集成进来，正好也解决了很多国内小伙伴经常反馈 openai 的接口请求不通需要代理对新手不友好等问题。\r\n\r\n运行服务支持可选交互，欢迎感兴趣的同学PR集成其他服务进来\r\n![image](https:\u002F\u002Fgithub.com\u002Fwangrongding\u002Fwechat-bot\u002Fassets\u002F42437658\u002F7bd54c32-32f1-4945-bef2-70cf31810102)\r\n\r\n在这申请它的 apikey ：\r\nhttps:\u002F\u002Fplatform.moonshot.cn\u002Fconsole\u002Fapi-keys\r\n\r\n![image](https:\u002F\u002Fgithub.com\u002Fwangrongding\u002Fwechat-bot\u002Fassets\u002F42437658\u002F9445c68f-4396-42ea-b334-495e02f52706)\r\n","2024-03-26T06:52:45",{"id":152,"version":153,"summary_zh":154,"released_at":155},114489,"0.0.1","\r\n1. 先获取自己的 `chatgpt` token，地址戳这里 👉🏻 ：[https:\u002F\u002Fchat.openai.com\u002Fchat](https:\u002F\u002Fchat.openai.com\u002Fchat)\r\n2. 登录完了，在控制台把 `token` 复制下来，然后在项目根目录下创建一个 `.env` 文件，内容如下：\r\n\r\n```sh\r\n# 执行下面命令，拷贝一份 .env.example 文件\r\ncp .env.example .env\r\n```\r\n\r\n```sh\r\n# 完善.env 文件内容\r\nCHATGPT_SESSION_TOKEN='你的token'\r\n```\r\n\r\ntoken 在这里拿到 ↓：\r\n![](https:\u002F\u002Fassets.fedtop.com\u002Fpicbed\u002F202212071104566.png)\r\n\r\n3. 启动服务\r\n\r\n```sh\r\nnpm run dev\r\n```\r\n\r\n就可以扫码登录，然后根据你的需求，自己修改 `index.js` 文件。\r\n\r\n![](https:\u002F\u002Fassets.fedtop.com\u002Fpicbed\u002F202212071315670.png)\r\n\r\n可以看到，自动回复都是基于 `chatgpt` 的，记得要开代理。\r\n\r\n![](https:\u002F\u002Fassets.fedtop.com\u002Fpicbed\u002F202212071317377.png)\r\n","2022-12-07T07:17:33"]