[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"similar-shfshanyue--wechat-chatgpt":3,"tool-shfshanyue--wechat-chatgpt":62},[4,18,26,36,46,54],{"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 真正成长为懂上",160411,2,"2026-04-18T23:33:24",[14,13,35],"语言模型",{"id":37,"name":38,"github_repo":39,"description_zh":40,"stars":41,"difficulty_score":42,"last_commit_at":43,"category_tags":44,"status":17},8272,"opencode","anomalyco\u002Fopencode","OpenCode 是一款开源的 AI 编程助手（Coding Agent），旨在像一位智能搭档一样融入您的开发流程。它不仅仅是一个代码补全插件，而是一个能够理解项目上下文、自主规划任务并执行复杂编码操作的智能体。无论是生成全新功能、重构现有代码，还是排查难以定位的 Bug，OpenCode 都能通过自然语言交互高效完成，显著减少开发者在重复性劳动和上下文切换上的时间消耗。\n\n这款工具专为软件开发者、工程师及技术研究人员设计，特别适合希望利用大模型能力来提升编码效率、加速原型开发或处理遗留代码维护的专业人群。其核心亮点在于完全开源的架构，这意味着用户可以审查代码逻辑、自定义行为策略，甚至私有化部署以保障数据安全，彻底打破了传统闭源 AI 助手的“黑盒”限制。\n\n在技术体验上，OpenCode 提供了灵活的终端界面（Terminal UI）和正在测试中的桌面应用程序，支持 macOS、Windows 及 Linux 全平台。它兼容多种包管理工具，安装便捷，并能无缝集成到现有的开发环境中。无论您是追求极致控制权的资深极客，还是渴望提升产出的独立开发者，OpenCode 都提供了一个透明、可信",144296,1,"2026-04-16T14:50:03",[13,45],"插件",{"id":47,"name":48,"github_repo":49,"description_zh":50,"stars":51,"difficulty_score":32,"last_commit_at":52,"category_tags":53,"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 都能提供强大的支持。其独特的模块化架构允许社区不断扩展新功能，使其成为当前最灵活、生态最丰富的开源扩散模型工具之一，帮助用户将创意高效转化为现实。",109154,"2026-04-18T11:18:24",[14,15,13],{"id":55,"name":56,"github_repo":57,"description_zh":58,"stars":59,"difficulty_score":32,"last_commit_at":60,"category_tags":61,"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",[45,13,15,14],{"id":63,"github_repo":64,"name":65,"description_en":66,"description_zh":67,"ai_summary_zh":67,"readme_en":68,"readme_zh":69,"quickstart_zh":70,"use_case_zh":71,"hero_image_url":72,"owner_login":73,"owner_name":74,"owner_avatar_url":75,"owner_bio":76,"owner_company":77,"owner_location":78,"owner_email":79,"owner_twitter":79,"owner_website":80,"owner_url":81,"languages":82,"stars":91,"forks":92,"last_commit_at":93,"license":79,"difficulty_score":94,"env_os":95,"env_gpu":96,"env_ram":97,"env_deps":98,"category_tags":107,"github_topics":79,"view_count":32,"oss_zip_url":79,"oss_zip_packed_at":79,"status":17,"created_at":108,"updated_at":109,"faqs":110,"releases":136},9409,"shfshanyue\u002Fwechat-chatgpt","wechat-chatgpt","@deprecated 已不维护","wechat-chatgpt 是一款旨在将 ChatGPT 和 Midjourney 能力接入微信及企业微信的开源机器人项目。它帮助用户在熟悉的社交软件中直接体验 AI 对话、专业角色扮演（如翻译、面试官）以及 AI 绘画功能，解决了用户无需切换应用即可享受前沿 AI 服务的痛点。\n\n该项目特别适合具备一定技术基础的开发者或运维人员使用，因为部署需要配置 Node.js 环境、服务器及 OpenAI API 密钥。其技术亮点在于提供了丰富的企业级控制功能：支持多 Token 负载均衡以提升稳定性，可精细管控群聊与私聊的开启范围，具备关键词触发机制，并内置了每日用量限制与自动重试策略。此外，它还支持通过反向代理优化国内网络访问速度，以及利用文档库构建客服模式。\n\n需要注意的是，官方已标记该项目为“不再维护”，且部分功能（如 Midjourney 绘图）依赖于模拟请求，可能存在因平台反爬策略而失效的风险。尽管如此，对于希望研究微信机器人架构或搭建内部 AI 助手的团队而言，wechat-chatgpt 仍提供了一个功能详尽的参考范本。","# ChatGPT\u002FMidjourney 微信机器人\n\n三分钟，创建一个 ChatGPT\u002FMidjourney AI 微信（企业微信）小助手。\n\n+ [x] 负载均衡：多个 OpenAI Token 增强其稳定性\n+ [x] 场景模式：可通过 PROMPT 配置机器人为专业的翻译、面试官、医生等\n+ [x] 群聊控制：可控制在那些群开启群聊，或关闭群聊\n+ [x] 私聊控制：可控制在那些好友开启私聊，或关闭私聊\n+ [x] 词语触发：支持通过关键字触发私聊、群聊的 AI 机器人\n+ [x] 支持日志：可查看每天多少条记录\n+ [x] 反向代理：为不同地区提供更快的 OpenAI 的代理 API 地址\n+ [x] 企业微信：支持企业微信登录\n+ [x] 自动重启：当发生异常，机器人自动退出后，支持自动重启\n+ [x] 错误重试：当 chatgpt 未回复时，尝试三次，减少 chatgpt 罢工几率\n+ [x] 命名模式：支持为你的机器人命名\n+ [x] 连续对话：支持上下文消息\n+ [x] MidJourney：支持 MidJourney 绘制\n+ [x] 次数限制：支持每天限制 N 条消息，超出次数通过红包解锁\n+ [x] 自动通过：配置关键词可自动通过好友\n+ [x] 客服模式：配置文档作为文档库，作为客户消息来源\n+ [ ] 邀请入群：将机器人邀请入群则可以获得更多免费消息\n+ [ ] 管理后台：可通过管理后台自动配置机器人\n+ [ ] 管理模式：内置管理员模式，可查看每个用户的对话次数\n+ [ ] 查看余额：可查看该 key 还有多少余额，仅供管理员查看\n+ [ ] PDF阅读：可阅读 PDF 等文件，并根据 PDF 内容进行回答\n+ [ ] URL阅读：可阅读 URL 等内容，并根据 URL 内容进行回答\n+ [ ] 自动总结：转发公众号文章链接至机器人，自动总结内容\n\n如果需要搭建基于 ChatGPT 的飞书、钉钉、企微内部应用、公众号机器人，可参考个人的另一项目 [feishu-chatgpt](https:\u002F\u002Fgithub.com\u002Fshfshanyue\u002Ffeishu-chatgpt)。\n\n## 环境要求\n\n1. `node.js >= 18`\n2. 服务器非 arm 架构\n\n## 注意事项\n\n1. midjourney 基于模拟请求方式进行调用绘画等，midjourney 会持续进行反爬，因此有时无法正常返回图片，甚至会被封禁。\n2. midjourney 基于 [midjourney-api](https:\u002F\u002Fgithub.com\u002Ferictik\u002Fmidjourney-api) 进行开发，请实时保持在最新或者次新版本，避免反爬策略\n3. 在国内网络无法访问 ChatGPT 服务及 Midjourney 服务\n4. ChatGPT 的 token 有基于每分钟 3 次请求的限流策略，如果访问人数过大，请配置多个 token，并限制使用人数（比如逐步放开使用微信机器人，不要同一时间涌入大量请求）。否则 ChatGPT 及 Midjourney (依赖 ChatGPT 进行翻译) 将不会正常工作\n\n## 配置与环境变量\n\n编辑 `.\u002Fconfig.ts` 配置文件。\n\n``` ts\nexport default {\n  \u002F\u002F 自动同意添加好友的口令\n  acceptText: \u002FChatGPT\u002F,\n\n  \u002F\u002F 如果微信机器人跑在国内，必须配置该项，其为官方 API 在国内的代理\n  baseURL: process.env.BASE_URL || 'https:\u002F\u002Fapi.openai.com\u002Fv1',\n  apiKey: process.env.OPEN_API_KEY.split(','),\n  model: process.env.GPT_MODEL || 'gpt-3.5-turbo',\n  \u002F\u002F 通过 prompt 可以配置为各种各样的机器人，如翻译、面试、SQL 生成器等。\n  prompt: process.env.PROMPT || '',\n\n  \u002F\u002F 判断在哪里开启机器人，默认是私聊以及艾特机器人的群聊\n  \u002F\u002F 是否开启群聊模式，可使用正则以及 boolen，如果是正则用以决定在那些群开启群聊\n  enableGroup: \u002F^(技术交流群|面试直通车|学习)$\u002F,\n  \u002F\u002F enableGroup: true,\n\n  \u002F\u002F 是否开启私聊模式，可使用正则以及 boolen，如果是正则用以决定与谁私聊\n  \u002F\u002F enablePrivate: true,\n  enablePrivate: \u002F(山月)\u002F,\n\n  \u002F\u002F 私聊模式时，配置关键词触发\n  groupPrefix: '',\n\n  \u002F\u002F 私聊模式时，配置关键词触发\n  privatePrefix: '山月',\n\n  \u002F\u002F 开启异常报错上传 sentry\n  sentryDsn: process.env.SENTRY_DSN || ''\n}\n```\n\n对于 OpenAI 的 `key` 及国内代理 BaseURL 等敏感数据，可以置于环境变量中，编辑 `.env` 配置文件。\n\n``` .env\nOPEN_API_KEY=\"sk-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxybnC\"\n```\n\n其中，`OPEN_API_KEY` 支持多个 `key` 负载均衡，在环境变量中使用 `,` 隔开\n\n``` .env\nOPEN_API_KEY=\"sk-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxybnC,k-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxybnC,k-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxybnC\"\n```\n\n| Name                | Description | Default                |\n|---------------------|-------------|------------------------|\n| OPEN_API_KEY        |             | gpt-3.5-turbo          |\n| BASE_URL            |             | null                   |\n| PROMPT              |             | null                   |\n| WECHATY_PUPPET      |             | wechaty-puppet-wechat  |\n| MJ_SALAI_TOKEN      | Midjorney 的 User Token，如何获取见 [如何获取 Midjourney 的 token](https:\u002F\u002Fwww.androidauthority.com\u002Fget-discord-token-3149920\u002F)             |                        |\n| MJ_SERVER_ID       | Midjorney 的 ServerID |                        |\n| MJ_CHANNEL_ID      | Midjorney 的 ChannelID |                        |\n| DEFAULT_FREE_CREDIT | 默认每天的免费使用次数，ChatGPT 算一次，MidJourney 算五次 | 30                       |\n| OSS_REGION= | OSS 配置，存储 MidJourney 图片，选填 | |\n| OSS_ACCESS_KEY_ID= | OSS 配置，存储 MidJourney 图片 | |\n| OSS_ACCESS_KEY_SECRET= | OSS 配置，存储 MidJourney 图片 | |\n| OSS_BUCKET= | OSS 配置，存储 MidJourney 图片 | |\n\n## 每天次数限制配置\n\n为了避免 MidJourney 及 ChatGPT 每天耗费额度过大，可通过环境变量 `DEFAULT_FREE_CREDIT` 可配置每用户每天限制使用次数，默认为 30 次点数。\n\n默认消耗次数规则为：\n\n1. ChatGPT 提问消耗一次点数\n1. Midjourney 画图消耗五次点数\n1. Midjourney 图生图消耗五次点数\n\n## 企业微信\n\n如果需要企业微信作为机器人，请编辑环境变量，更换 PUPPET\n\n``` bash\n# 如果是企业微信的话，使用以下两行代码\nWECHATY_PUPPET_SERVICE_TOKEN=\"puppet_workpro_xxxxxxxxx\"\nWECHATY_PUPPET=\"wechaty-puppet-service\"\n```\n\n## 启动步骤\n\n1. 编辑环境变量\n\n``` bash\n$ cp .example.env .env\n```\n\n并编辑以下环境变量。\n\n``` bash\n# 如果部署在 vercel 等境外服务器，则不需要此项配置\nOPEN_API_KEY=\"sk-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\"\nWECHATY_PUPPET=\"wechaty-puppet-wechat\"\nPROMPT=\"你是一个基于 GPT-3.5 的友好型的微信聊天机器人，是山月的 AI 小助手，使用了来自 WeChaty（源代码可在 https:\u002F\u002Fgithub.com\u002Fshfshanyue\u002Fwechat-chatgpt 找到）的底层技术。你具有以下独特功能：\\n\\n1. 绘画：在消息开头使用 \"画\" (Draw) 命令，你可以创建高清的 MidJourney 图片。\\n2. 知识渊博：我掌握了各种领域和行业的广泛知识。\\n3. 富有同理心：你会耐心回答用户的任何问题。当用户感到沮丧或挫败时，你会提供安慰和理解。\"\nMJ_SALAI_TOKEN=xxx\nMJ_SERVER_ID=xxx\nMJ_CHANNEL_ID=xxx\n```\n\n2. 编辑是否允许群聊以及私聊\n\n编辑 `.\u002Fconfig.ts`，配置是否开启群聊以及私聊模式。\n\n``` js\n{\n  \u002F\u002F 判断在哪里开启机器人，默认是私聊以及艾特机器人的群聊\n  \u002F\u002F 是否开启群聊模式，可使用正则以及 boolen，如果是正则用以决定在那些群开启群聊\n  enableGroup: true,\n\n  \u002F\u002F 或者只允许在特定的群开启群聊\n  enableGroup: \u002F^(技术交流群|面试直通车|学习)$\u002F,\n\n  \u002F\u002F 是否开启私聊模式，可使用正则以及 boolen，如果是正则用以决定与谁私聊\n  enablePrivate: true,\n\n  \u002F\u002F 或者只允许对特定的人开启私聊\n  enablePrivate: \u002F(山月)\u002F,\n\n  \u002F\u002F 私聊模式时，配置关键词触发\n  groupPrefix: '',\n\n  \u002F\u002F 私聊模式时，配置关键词触发\n  privatePrefix: '山月',\n}\n```\n\n3. 配置 redis\n\n``` bash\n$ apt install redis\n# 启动 redis\n$ redis-server\n\n# 修改 \u002Fetc\u002Fhosts，如无法修改可配置 lib\u002Fredis.ts 中的 host 参数\n$ echo \"127.0.0.1 redis\" >> \u002Fetc\u002Fhosts\n```\n\n4. 开启一个微信机器人，使用将要作为机器人的微信扫码进行登录\n\n``` bash\n$ apt install ca-certificates fonts-liberation libasound2 libatk-bridge2.0-0 libatk1.0-0 libc6 libcairo2 libcups2 libdbus-1-3 libexpat1 libfontconfig1 libgbm1 libgcc1 libglib2.0-0 libgtk-3-0 libnspr4 libnss3 libpango-1.0-0 libpangocairo-1.0-0 libstdc++6 libx11-6 libx11-xcb1 libxcb1 libxcomposite1 libxcursor1 libxdamage1 libxext6 libxfixes3 libxi6 libxrandr2 libxrender1 libxss1 libxtst6 lsb-release wget xdg-utils\n\n$ pnpm i\n$ npx prisma generate\n\n$ pnpm start\n```\n\n此时会出现二维码链接，通过链接链接打开二维码，扫码登录。待出现登录成功字样时，则机器人成功开启。\n\n5. 健康检查\n\n向机器人发送 `\u002Fping` 指定，它会默认回复 `pong`。以确保机器人已经正常工作。\n\n\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fshfshanyue_wechat-chatgpt_readme_e9d538c53b24.webp\" width=\"400\">\n\n6. 与机器人对话\n\n\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fshfshanyue_wechat-chatgpt_readme_dcb8b8aa0bc0.webp\" width=\"400\">\n\n## 部署方式\n\n**注意事项**：\n\n1. 推荐在 Ubuntu 2204 系统中进行部署\n1. 推荐使用 Docker 方式部署\n1. 在 ARM 架构上部署可能失败，不推荐此方式\n1. 该项目依赖 redis，需要启动 redis 服务，并修改 \u002Fetc\u002Fhosts。如无法修改，可搜索代码，修改 redis 中的 host 配置\n\n### Docker\n\n``` bash\n# 启动服务，并在后台启动\n$ docker compose up -d --build\n\n# 查看日志，并扫码登录\n$ docker compose logs --tail 100 --follow\n```\n\n### 本地\u002F服务器部署\n\n按照以上启动步骤进行本地\u002F服务器部署。\n\n### 私有化部署\n\n**非常不推荐该部署方式**\n\n在本地操作：\n\n``` bash\n$ npm run build\n$ rsync -lahvz --exclude .\u002Flib --exclude .\u002Fmessage --exclude logs --exclude node_modules --exclude .env --exclude .git . shanyue:\u002Fhome\u002Fshanyue\u002FDocuments\u002Fwechat-chatgpt-prod\n```\n\n在目标服务器：\n\n``` bash\n# 同时启动 redis 以及修改 \u002Fetc\u002Fhosts\n$ apt install redis\n$ apt install ca-certificates fonts-liberation libasound2 libatk-bridge2.0-0 libatk1.0-0 libc6 libcairo2 libcups2 libdbus-1-3 libexpat1 libfontconfig1 libgbm1 libgcc1 libglib2.0-0 libgtk-3-0 libnspr4 libnss3 libpango-1.0-0 libpangocairo-1.0-0 libstdc++6 libx11-6 libx11-xcb1 libxcb1 libxcomposite1 libxcursor1 libxdamage1 libxext6 libxfixes3 libxi6 libxrandr2 libxrender1 libxss1 libxtst6 lsb-release wget xdg-utils\n\n$ pnpm i\n$ npx prisma generate\n$ pnpm start:prod\n```\n","# ChatGPT\u002FMidjourney 微信机器人\n\n三分钟，创建一个 ChatGPT\u002FMidjourney AI 微信（企业微信）小助手。\n\n+ [x] 负载均衡：多个 OpenAI Token 增强其稳定性\n+ [x] 场景模式：可通过 PROMPT 配置机器人为专业的翻译、面试官、医生等\n+ [x] 群聊控制：可控制在那些群开启群聊，或关闭群聊\n+ [x] 私聊控制：可控制在那些好友开启私聊，或关闭私聊\n+ [x] 词语触发：支持通过关键字触发私聊、群聊的 AI 机器人\n+ [x] 支持日志：可查看每天多少条记录\n+ [x] 反向代理：为不同地区提供更快的 OpenAI 的代理 API 地址\n+ [x] 企业微信：支持企业微信登录\n+ [x] 自动重启：当发生异常，机器人自动退出后，支持自动重启\n+ [x] 错误重试：当 chatgpt 未回复时，尝试三次，减少 chatgpt 罢工几率\n+ [x] 命名模式：支持为你的机器人命名\n+ [x] 连续对话：支持上下文消息\n+ [x] MidJourney：支持 MidJourney 绘制\n+ [x] 次数限制：支持每天限制 N 条消息，超出次数通过红包解锁\n+ [x] 自动通过：配置关键词可自动通过好友\n+ [x] 客服模式：配置文档作为文档库，作为客户消息来源\n+ [ ] 邀请入群：将机器人邀请入群则可以获得更多免费消息\n+ [ ] 管理后台：可通过管理后台自动配置机器人\n+ [ ] 管理模式：内置管理员模式，可查看每个用户的对话次数\n+ [ ] 查看余额：可查看该 key 还有多少余额，仅供管理员查看\n+ [ ] PDF阅读：可阅读 PDF 等文件，并根据 PDF 内容进行回答\n+ [ ] URL阅读：可阅读 URL 等内容，并根据 URL 内容进行回答\n+ [ ] 自动总结：转发公众号文章链接至机器人，自动总结内容\n\n如果需要搭建基于 ChatGPT 的飞书、钉钉、企微内部应用、公众号机器人，可参考个人的另一项目 [feishu-chatgpt](https:\u002F\u002Fgithub.com\u002Fshfshanyue\u002Ffeishu-chatgpt)。\n\n## 环境要求\n\n1. `node.js >= 18`\n2. 服务器非 arm 架构\n\n## 注意事项\n\n1. midjourney 基于模拟请求方式进行调用绘画等，midjourney 会持续进行反爬，因此有时无法正常返回图片，甚至会被封禁。\n2. midjourney 基于 [midjourney-api](https:\u002F\u002Fgithub.com\u002Ferictik\u002Fmidjourney-api) 进行开发，请实时保持在最新或者次新版本，避免反爬策略\n3. 在国内网络无法访问 ChatGPT 服务及 Midjourney 服务\n4. ChatGPT 的 token 有基于每分钟 3 次请求的限流策略，如果访问人数过大，请配置多个 token，并限制使用人数（比如逐步放开使用微信机器人，不要同一时间涌入大量请求）。否则 ChatGPT 及 Midjourney (依赖 ChatGPT 进行翻译) 将不会正常工作\n\n## 配置与环境变量\n\n编辑 `.\u002Fconfig.ts` 配置文件。\n\n``` ts\nexport default {\n  \u002F\u002F 自动同意添加好友的口令\n  acceptText: \u002FChatGPT\u002F,\n\n  \u002F\u002F 如果微信机器人跑在国内，必须配置该项，其为官方 API 在国内的代理\n  baseURL: process.env.BASE_URL || 'https:\u002F\u002Fapi.openai.com\u002Fv1',\n  apiKey: process.env.OPEN_API_KEY.split(','),\n  model: process.env.GPT_MODEL || 'gpt-3.5-turbo',\n  \u002F\u002F 通过 prompt 可以配置为各种各样的机器人，如翻译、面试、SQL 生成器等。\n  prompt: process.env.PROMPT || '',\n\n  \u002F\u002F 判断在哪里开启机器人，默认是私聊以及艾特机器人的群聊\n  \u002F\u002F 是否开启群聊模式，可使用正则以及 boolen，如果是正则用以决定在那些群开启群聊\n  enableGroup: \u002F^(技术交流群|面试直通车|学习)$\u002F,\n  \u002F\u002F enableGroup: true,\n\n  \u002F\u002F 是否开启私聊模式，可使用正则以及 boolen，如果是正则用以决定与谁私聊\n  \u002F\u002F enablePrivate: true,\n  enablePrivate: \u002F(山月)\u002F,\n\n  \u002F\u002F 私聊模式时，配置关键词触发\n  groupPrefix: '',\n\n  \u002F\u002F 私聊模式时，配置关键词触发\n  privatePrefix: '山月',\n\n  \u002F\u002F 开启异常报错上传 sentry\n  sentryDsn: process.env.SENTRY_DSN || ''\n}\n```\n\n对于 OpenAI 的 `key` 及国内代理 BaseURL 等敏感数据，可以置于环境变量中，编辑 `.env` 配置文件。\n\n``` .env\nOPEN_API_KEY=\"sk-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxybnC\"\n```\n\n其中，`OPEN_API_KEY` 支持多个 `key` 负载均衡，在环境变量中使用 `,` 隔开\n\n``` .env\nOPEN_API_KEY=\"sk-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxybnC,k-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxybnC,k-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxybnC\"\n```\n\n| Name                | Description | Default                |\n|---------------------|-------------|------------------------|\n| OPEN_API_KEY        |             | gpt-3.5-turbo          |\n| BASE_URL            |             | null                   |\n| PROMPT              |             | null                   |\n| WECHATY_PUPPET      |             | wechaty-puppet-wechat  |\n| MJ_SALAI_TOKEN      | Midjorney 的 User Token，如何获取见 [如何获取 Midjourney 的 token](https:\u002F\u002Fwww.androidauthority.com\u002Fget-discord-token-3149920\u002F)             |                        |\n| MJ_SERVER_ID       | Midjorney 的 ServerID |                        |\n| MJ_CHANNEL_ID      | Midjorney 的 ChannelID |                        |\n| DEFAULT_FREE_CREDIT | 默认每天的免费使用次数，ChatGPT 算一次，MidJourney 算五次 | 30                       |\n| OSS_REGION= | OSS 配置，存储 MidJourney 图片，选填 | |\n| OSS_ACCESS_KEY_ID= | OSS 配置，存储 MidJourney 图片 | |\n| OSS_ACCESS_KEY_SECRET= | OSS 配置，存储 MidJourney 图片 | |\n| OSS_BUCKET= | OSS 配置，存储 MidJourney 图片 | |\n\n## 每天次数限制配置\n\n为了避免 MidJourney 及 ChatGPT 每天耗费额度过大，可通过环境变量 `DEFAULT_FREE_CREDIT` 可配置每用户每天限制使用次数，默认为 30 次点数。\n\n默认消耗次数规则为：\n\n1. ChatGPT 提问消耗一次点数\n1. Midjourney 画图消耗五次点数\n1. Midjourney 图生图消耗五次点数\n\n## 企业微信\n\n如果需要企业微信作为机器人，请编辑环境变量，更换 PUPPET\n\n``` bash\n# 如果是企业微信的话，使用以下两行代码\nWECHATY_PUPPET_SERVICE_TOKEN=\"puppet_workpro_xxxxxxxxx\"\nWECHATY_PUPPET=\"wechaty-puppet-service\"\n```\n\n## 启动步骤\n\n1. 编辑环境变量\n\n``` bash\n$ cp .example.env .env\n```\n\n并编辑以下环境变量。\n\n``` bash\n# 如果部署在 vercel 等境外服务器，则不需要此项配置\nOPEN_API_KEY=\"sk-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\"\nWECHATY_PUPPET=\"wechaty-puppet-wechat\"\nPROMPT=\"你是一个基于 GPT-3.5 的友好型的微信聊天机器人，是山月的 AI 小助手，使用了来自 WeChaty（源代码可在 https:\u002F\u002Fgithub.com\u002Fshfshanyue\u002Fwechat-chatgpt 找到）的底层技术。你具有以下独特功能：\\n\\n1. 绘画：在消息开头使用 \"画\" (Draw) 命令，你可以创建高清的 MidJourney 图片。\\n2. 知识渊博：我掌握了各种领域和行业的广泛知识。\\n3. 富有同理心：你会耐心回答用户的任何问题。当用户感到沮丧或挫败时，你会提供安慰和理解。\"\nMJ_SALAI_TOKEN=xxx\nMJ_SERVER_ID=xxx\nMJ_CHANNEL_ID=xxx\n```\n\n2. 编辑是否允许群聊以及私聊\n\n编辑 `.\u002Fconfig.ts`，配置是否开启群聊以及私聊模式。\n\n``` js\n{\n  \u002F\u002F 判断在哪里开启机器人，默认是私聊以及艾特机器人的群聊\n  \u002F\u002F 是否开启群聊模式，可使用正则以及 boolen，如果是正则用以决定在那些群开启群聊\n  enableGroup: true,\n\n  \u002F\u002F 或者只允许在特定的群开启群聊\n  enableGroup: \u002F^(技术交流群|面试直通车|学习)$\u002F,\n\n  \u002F\u002F 是否开启私聊模式，可使用正则以及 boolen，如果是正则用以决定与谁私聊\n  enablePrivate: true,\n\n  \u002F\u002F 或者只允许对特定的人开启私聊\n  enablePrivate: \u002F(山月)\u002F,\n\n  \u002F\u002F 私聊模式时，配置关键词触发\n  groupPrefix: '',\n\n  \u002F\u002F 私聊模式时，配置关键词触发\n  privatePrefix: '山月',\n}\n```\n\n3. 配置 redis\n\n``` bash\n$ apt install redis\n# 启动 redis\n$ redis-server\n\n# 修改 \u002Fetc\u002Fhosts，如无法修改可配置 lib\u002Fredis.ts 中的 host 参数\n$ echo \"127.0.0.1 redis\" >> \u002Fetc\u002Fhosts\n```\n\n4. 开启一个微信机器人，使用将要作为机器人的微信扫码进行登录\n\n``` bash\n$ apt install ca-certificates fonts-liberation libasound2 libatk-bridge2.0-0 libatk1.0-0 libc6 libcairo2 libcups2 libdbus-1-3 libexpat1 libfontconfig1 libgbm1 libgcc1 libglib2.0-0 libgtk-3-0 libnspr4 libnss3 libpango-1.0-0 libpangocairo-1.0-0 libstdc++6 libx11-6 libx11-xcb1 libxcb1 libxcomposite1 libxcursor1 libxdamage1 libxext6 libxfixes3 libxi6 libxrandr2 libxrender1 libxss1 libxtst6 lsb-release wget xdg-utils\n\n$ pnpm i\n$ npx prisma generate\n\n$ pnpm start\n```\n\n此时会出现二维码链接，通过链接链接打开二维码，扫码登录。待出现登录成功字样时，则机器人成功开启。\n\n5. 健康检查\n\n向机器人发送 `\u002Fping` 指定，它会默认回复 `pong`。以确保机器人已经正常工作。\n\n\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fshfshanyue_wechat-chatgpt_readme_e9d538c53b24.webp\" width=\"400\">\n\n6. 与机器人对话\n\n\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fshfshanyue_wechat-chatgpt_readme_dcb8b8aa0bc0.webp\" width=\"400\">\n\n## 部署方式\n\n**注意事项**：\n\n1. 推荐在 Ubuntu 2204 系统中进行部署\n1. 推荐使用 Docker 方式部署\n1. 在 ARM 架构上部署可能失败，不推荐此方式\n1. 该项目依赖 redis，需要启动 redis 服务，并修改 \u002Fetc\u002Fhosts。如无法修改，可搜索代码，修改 redis 中的 host 配置\n\n### Docker\n\n``` bash\n# 启动服务，并在后台启动\n$ docker compose up -d --build\n\n# 查看日志，并扫码登录\n$ docker compose logs --tail 100 --follow\n```\n\n### 本地\u002F服务器部署\n\n按照以上启动步骤进行本地\u002F服务器部署。\n\n### 私有化部署\n\n**非常不推荐该部署方式**\n\n在本地操作：\n\n``` bash\n$ npm run build\n$ rsync -lahvz --exclude .\u002Flib --exclude .\u002Fmessage --exclude logs --exclude node_modules --exclude .env --exclude .git . shanyue:\u002Fhome\u002Fshanyue\u002FDocuments\u002Fwechat-chatgpt-prod\n```\n\n在目标服务器：\n\n``` bash\n# 同时启动 redis 以及修改 \u002Fetc\u002Fhosts\n$ apt install redis\n$ apt install ca-certificates fonts-liberation libasound2 libatk-bridge2.0-0 libatk1.0-0 libc6 libcairo2 libcups2 libdbus-1-3 libexpat1 libfontconfig1 libgbm1 libgcc1 libglib2.0-0 libgtk-3-0 libnspr4 libnss3 libpango-1.0-0 libpangocairo-1.0-0 libstdc++6 libx11-6 libx11-xcb1 libxcb1 libxcomposite1 libxcursor1 libxdamage1 libxext6 libxfixes3 libxi6 libxrandr2 libxrender1 libxss1 libxtst6 lsb-release wget xdg-utils\n\n$ pnpm i\n$ npx prisma generate\n$ pnpm start:prod\n```","# wechat-chatgpt 快速上手指南\n\n三分钟创建一个支持 ChatGPT 对话与 Midjourney 绘图的微信（含企业微信）机器人。\n\n## 1. 环境准备\n\n在开始之前，请确保你的服务器满足以下要求：\n\n*   **操作系统**：推荐 Ubuntu 22.04（**不支持 ARM 架构**，如树莓派或 Apple Silicon 服务器）。\n*   **Node.js**：版本需 >= 18。\n*   **依赖服务**：必须安装并运行 **Redis**。\n*   **网络环境**：由于国内无法直接访问 OpenAI 和 Midjourney，需配置代理地址或反向代理。\n*   **账号资源**：\n    *   OpenAI API Key (`OPEN_API_KEY`)\n    *   Midjourney Token (`MJ_SALAI_TOKEN`, `MJ_SERVER_ID`, `MJ_CHANNEL_ID`)\n\n### 安装系统依赖\n若使用本地或服务器部署，需先安装浏览器运行库：\n```bash\napt install ca-certificates fonts-liberation libasound2 libatk-bridge2.0-0 libatk1.0-0 libc6 libcairo2 libcups2 libdbus-1-3 libexpat1 libfontconfig1 libgbm1 libgcc1 libglib2.0-0 libgtk-3-0 libnspr4 libnss3 libpango-1.0-0 libpangocairo-1.0-0 libstdc++6 libx11-6 libx11-xcb1 libxcb1 libxcomposite1 libxcursor1 libxdamage1 libxext6 libxfixes3 libxi6 libxrandr2 libxrender1 libxss1 libxtst6 lsb-release wget xdg-utils\n```\n\n### 安装 Redis\n```bash\napt install redis\nredis-server\n# 修改 hosts 映射（若无法修改，需在代码 lib\u002Fredis.ts 中调整 host 参数）\necho \"127.0.0.1 redis\" >> \u002Fetc\u002Fhosts\n```\n\n## 2. 安装与配置\n\n### 方式一：Docker 部署（推荐）\n最简便的部署方式，自动处理依赖。\n\n1.  **启动服务**\n    ```bash\n    docker compose up -d --build\n    ```\n\n2.  **查看日志并扫码**\n    ```bash\n    docker compose logs --tail 100 --follow\n    ```\n    日志中出现二维码链接后，复制链接在浏览器打开，使用作为机器人的微信扫码登录。\n\n### 方式二：本地\u002F源码部署\n\n1.  **克隆项目并安装依赖**\n    ```bash\n    pnpm i\n    npx prisma generate\n    ```\n\n2.  **配置环境变量**\n    复制示例文件并编辑 `.env`：\n    ```bash\n    cp .example.env .env\n    ```\n    编辑 `.env` 填入关键信息（支持多个 Key 负载均衡，用逗号分隔）：\n    ```bash\n    # OpenAI 配置 (国内部署必须配置 BASE_URL 代理)\n    OPEN_API_KEY=\"sk-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxybnC\"\n    BASE_URL=\"https:\u002F\u002Fyour-proxy-url.com\u002Fv1\" \n    \n    # 角色设定\n    PROMPT=\"你是一个友好的微信 AI 助手...\"\n\n    # Midjourney 配置\n    MJ_SALAI_TOKEN=xxx\n    MJ_SERVER_ID=xxx\n    MJ_CHANNEL_ID=xxx\n\n    # 微信协议选择 (个人微信默认，企微需修改)\n    WECHATY_PUPPET=\"wechaty-puppet-wechat\"\n    ```\n\n3.  **精细化控制 (可选)**\n    编辑 `.\u002Fconfig.ts` 可配置群聊\u002F私聊开关、关键词触发及正则匹配：\n    ```ts\n    export default {\n      \u002F\u002F 开启群聊 (true 或 正则匹配群名)\n      enableGroup: \u002F^(技术交流群|面试直通车)$\u002F,\n      \n      \u002F\u002F 开启私聊 (true 或 正则匹配好友名)\n      enablePrivate: \u002F(山月)\u002F,\n      \n      \u002F\u002F 私聊触发前缀\n      privatePrefix: '山月',\n      \n      \u002F\u002F 自动通过好友关键词\n      acceptText: \u002FChatGPT\u002F,\n    }\n    ```\n\n4.  **启动机器人**\n    ```bash\n    pnpm start\n    ```\n    终端输出二维码链接，扫码登录即可。\n\n## 3. 基本使用\n\n机器人启动并登录成功后，即可在微信中进行交互。\n\n### 功能测试\n*   **健康检查**：发送 `\u002Fping`，机器人应回复 `pong`。\n*   **日常对话**：直接发送消息，机器人将根据 `PROMPT` 设定进行上下文连续对话。\n*   **Midjourney 绘图**：在消息开头使用“画”或\"Draw\"命令。\n    *   示例：`画一只在太空猫`\n    *   消耗规则：绘图默认消耗 5 次点数，普通对话消耗 1 次。\n\n### 企业微信支持\n若需部署在企业微信，请在 `.env` 中修改以下配置：\n```bash\nWECHATY_PUPPET_SERVICE_TOKEN=\"puppet_workpro_xxxxxxxxx\"\nWECHATY_PUPPET=\"wechaty-puppet-service\"\n```\n\n### 次数限制管理\n可通过环境变量 `DEFAULT_FREE_CREDIT` 设置用户每日免费额度（默认 30 点），超出后可通过红包解锁（需额外配置）。","某初创科技公司的技术团队希望将 AI 能力无缝融入日常沟通，让 50 人的研发群能随时获取代码辅助、技术翻译及自动答疑，同时避免频繁切换应用。\n\n### 没有 wechat-chatgpt 时\n- **响应滞后且割裂**：开发者需复制问题跳转到网页版 ChatGPT，再手动将答案贴回微信群，打断心流且效率低下。\n- **服务极不稳定**：单一大模型 Token 在高并发下极易触发限流（每分钟仅 3 次），导致关键时刻机器人“罢工”无响应。\n- **管理失控**：无法区分私聊与群聊权限，敏感技术讨论可能被无关人员触发，且缺乏每日用量监控，容易超额消耗预算。\n- **角色单一**：机器人只能进行通用对话，无法针对“代码审查”或“英文文档翻译”等特定场景预设专业指令（Prompt）。\n\n### 使用 wechat-chatgpt 后\n- **沉浸式交互**：直接在微信通过\"@机器人”或关键词触发，支持上下文连续对话，实现“提问即得答案”的流畅体验。\n- **高可用架构**：配置多个 OpenAI Token 实现负载均衡，配合自动重试机制，即使面对群内高频请求也能稳定输出。\n- **精细化管控**：利用正则表达式精准控制仅在“技术交流群”开启群聊模式，并设置每日免费次数上限，超出需红包解锁，有效降低成本。\n- **场景化定制**：通过配置文件将机器人设定为\"SQL 生成专家”或“技术翻译官”，使其在特定群组中自动提供专业化服务。\n\nwechat-chatgpt 将分散的 AI 能力转化为团队触手可及的即时生产力，以极低门槛实现了企业级智能助手的私有化部署与精细化管理。","https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fshfshanyue_wechat-chatgpt_dcb8b8aa.webp","shfshanyue","shanyue","https:\u002F\u002Foss.gittoolsai.com\u002Favatars\u002Fshfshanyue_5c0c306c.jpg","暮从碧山下，山月随人归。\r\n\r\n却顾所来径，苍苍横翠微。","山岳科技","成都",null,"https:\u002F\u002Fshanyue.tech","https:\u002F\u002Fgithub.com\u002Fshfshanyue",[83,87],{"name":84,"color":85,"percentage":86},"TypeScript","#3178c6",98.9,{"name":88,"color":89,"percentage":90},"Dockerfile","#384d54",1.1,525,109,"2026-04-16T02:04:14",4,"Linux","不需要 GPU","未说明",{"notes":99,"python":100,"dependencies":101},"1. 服务器必须是非 ARM 架构（推荐 Ubuntu 22.04）。2. 必须安装并运行 Redis 服务，且需配置 \u002Fetc\u002Fhosts 将 redis 指向 127.0.0.1。3. 需要安装大量系统级依赖库以支持微信客户端运行（如 libgtk-3-0, libasound2 等）。4. 国内网络环境无法直接访问 ChatGPT 及 Midjourney 服务，需配置反向代理或部署在境外服务器。5. 推荐使用 Docker 方式部署。","不需要 Python (基于 Node.js)",[102,103,104,105,106],"node.js >= 18","redis","wechaty-puppet-wechat","wechaty-puppet-service","prisma",[35,15,13],"2026-03-27T02:49:30.150509","2026-04-19T09:37:51.400913",[111,116,121,126,131],{"id":112,"question_zh":113,"answer_zh":114,"source_url":115},42241,"Docker build 执行到 pnpm i 步骤时报错权限不足（EACCES: permission denied）怎么办？","首先请确保代码是最新的（master 分支）。虽然可以在 Dockerfile 中使用 `USER 0` 以 root 用户构建来解决权限问题，但为了安全起见，最终构建的镜像最好不要以 root 用户运行。如果去掉 `USER 1000` 保留 `USER 0` 后构建成功，说明是用户权限配置问题，建议检查基础镜像或文件所有权设置，而不是简单添加 `privileged: true`。","https:\u002F\u002Fgithub.com\u002Fshfshanyue\u002Fwechat-chatgpt\u002Fissues\u002F4",{"id":117,"question_zh":118,"answer_zh":119,"source_url":120},42242,"机器人登录正常但聊天时报错\"Number of attempts exceeded\"或回复\"发生了一点小意外\"如何解决？","请按以下步骤排查：1. 确认 API Key 是否还有余额；2. 检查发送请求的地址是否正确。如果使用的是默认配置仅修改了 `.env` 中的 `api_key`，可能需要通过断点调试来确认实际下发请求的接口地址是否符合预期，特别是网络环境（如 AWS 海外节点）可能导致连接超时或重试次数耗尽。","https:\u002F\u002Fgithub.com\u002Fshfshanyue\u002Fwechat-chatgpt\u002Fissues\u002F5",{"id":122,"question_zh":123,"answer_zh":124,"source_url":125},42243,"部署过程中提示端口 6379 被占用导致失败，需要处理吗？","不需要额外处理。端口 6379 被占用通常说明本地已经安装并运行了 Redis 服务。此时不需要再在 Docker Compose 中启动 Redis 容器，也不需要重复配置 Redis，直接使用现有的 Redis 服务即可。","https:\u002F\u002Fgithub.com\u002Fshfshanyue\u002Fwechat-chatgpt\u002Fissues\u002F8",{"id":127,"question_zh":128,"answer_zh":129,"source_url":130},42244,"如何获取企业微信所需的 WECHATY_PUPPET_SERVICE_TOKEN 和 WECHATY_PUPPET 参数？","这两个参数用于接入企业微信，需要向 Wechaty 官方购买相应的 Puppet Service 服务来获取 Token。获取后，需在配置文件中取消对应行的注释并填入购买的 Token 值：\n# WECHATY_PUPPET_SERVICE_TOKEN=\"puppet_workpro_xxxxxxxxx\"\n# WECHATY_PUPPET=\"wechaty-puppet-service\"","https:\u002F\u002Fgithub.com\u002Fshfshanyue\u002Fwechat-chatgpt\u002Fissues\u002F10",{"id":132,"question_zh":133,"answer_zh":134,"source_url":135},42245,"按照教程搭建时遇到 pnpm i 命令无法识别或报错，是否应该改为 npm i？","不需要改为 `npm i`。该项目依赖 `pnpm` 包管理器，请确保您的环境中已正确安装 pnpm。如果未安装，请先安装 pnpm（例如使用 `curl -fsSL https:\u002F\u002Fget.pnpm.io\u002Finstall.sh | sh -` 或通过 npm 安装：`npm install -g pnpm`），然后继续执行 `pnpm i` 命令。","https:\u002F\u002Fgithub.com\u002Fshfshanyue\u002Fwechat-chatgpt\u002Fissues\u002F9",[137],{"id":138,"version":139,"summary_zh":140,"released_at":141},334376,"1.1.0","支持 MidJourney API、支持每用户每天次数限制、支持 Docker、支持多微信机器人同时启动\n\n* chore: release-it 配置 (ef78cad)\n* chore: 更新 README (870dc72)\n* chore: 拆分图像处理逻辑 (6869cfc)\n* chore: 更新 MidJourney API (aea3640)\n* chore: WebSocket 相关 (ccd6b91)\n* chore: 更新 README (6237dd2)\n* chore: 升级 MidJourney 相关内容 (4cf01ce)\n* chore: 更新 Dockerfile (c6c6600)\n* chore: 更新 README (2ed56a9)\n* chore: 更新 midjoury-api (dee351f)\n* chore: 更新环境变量配置 (4f573b1)\n* chore: 构建相关 (aad0b69)\n* chore: 更新 midjourney-api 版本 (28707d7)\n* chore: 限制每天使用次数 (85b02f6)\n* chore: 修复一些小问题 (309acc5)\n* chore: 文案调整 (e8395f6)\n* chore: 增加参数支持及 up 命令支持 (80747a9)\n* chore: 图片放大\u002F变体功能 (4944128)\n* chore: .gitignore 文件 (30cfe0f)\n* chore: 将 BOT_NAME 作为环境变量，以便支持多个机器人同时启动 (cdf8d31)\n* chore: 将重试次数设置为 1 次 (391c139)\n* chore: 更改日志 (6a80c90)","2023-06-23T07:39:29"]