[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"similar-botman--botman":3,"tool-botman--botman":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 真正成长为懂上",157379,2,"2026-04-15T23:32:42",[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":67,"readme_en":68,"readme_zh":69,"quickstart_zh":70,"use_case_zh":71,"hero_image_url":72,"owner_login":64,"owner_name":73,"owner_avatar_url":74,"owner_bio":75,"owner_company":76,"owner_location":76,"owner_email":77,"owner_twitter":76,"owner_website":78,"owner_url":79,"languages":80,"stars":85,"forks":86,"last_commit_at":87,"license":88,"difficulty_score":32,"env_os":89,"env_gpu":89,"env_ram":89,"env_deps":90,"category_tags":96,"github_topics":98,"view_count":32,"oss_zip_url":76,"oss_zip_packed_at":76,"status":17,"created_at":104,"updated_at":105,"faqs":106,"releases":140},7933,"botman\u002Fbotman","botman","A framework agnostic PHP library to build chat bots","BotMan 是一个专为 PHP 开发者打造的聊天机器人开发库，旨在简化跨平台机器人的构建流程。在传统的开发模式中，为 Slack、Telegram、Facebook Messenger 或微信等不同通讯软件分别编写机器人往往需要重复劳动且代码难以复用。BotMan 通过提供一套统一的接口，完美解决了这一痛点，让开发者只需编写一次核心逻辑，即可轻松部署到多个主流消息平台上。\n\n该工具最大的技术亮点在于其“框架无关”的设计理念。它不强制依赖特定的 PHP 框架，既能独立运行，也能无缝集成到 Laravel 等流行框架中，赋予了极高的灵活性和自由度。借助简洁直观的语法，开发者可以快速定义监听规则和回复逻辑，例如仅需几行代码即可实现“当用户发送特定指令时自动回复”的功能。此外，BotMan 拥有完善的文档和活跃的社区支持，涵盖了从基础配置到高级交互的各种场景。\n\nBotMan 非常适合具有一定 PHP 基础的软件开发人员使用，无论是希望快速验证创意的独立开发者，还是需要为企业构建多通道客服系统的工程团队，都能从中获益。如果你渴望用高效的代码打造智能、跨平台的对话应用，BotMan 将是一个值","BotMan 是一个专为 PHP 开发者打造的聊天机器人开发库，旨在简化跨平台机器人的构建流程。在传统的开发模式中，为 Slack、Telegram、Facebook Messenger 或微信等不同通讯软件分别编写机器人往往需要重复劳动且代码难以复用。BotMan 通过提供一套统一的接口，完美解决了这一痛点，让开发者只需编写一次核心逻辑，即可轻松部署到多个主流消息平台上。\n\n该工具最大的技术亮点在于其“框架无关”的设计理念。它不强制依赖特定的 PHP 框架，既能独立运行，也能无缝集成到 Laravel 等流行框架中，赋予了极高的灵活性和自由度。借助简洁直观的语法，开发者可以快速定义监听规则和回复逻辑，例如仅需几行代码即可实现“当用户发送特定指令时自动回复”的功能。此外，BotMan 拥有完善的文档和活跃的社区支持，涵盖了从基础配置到高级交互的各种场景。\n\nBotMan 非常适合具有一定 PHP 基础的软件开发人员使用，无论是希望快速验证创意的独立开发者，还是需要为企业构建多通道客服系统的工程团队，都能从中获益。如果你渴望用高效的代码打造智能、跨平台的对话应用，BotMan 将是一个值得信赖的得力助手。","\u003Cp align=\"center\">\u003Cimg height=\"188\" width=\"198\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fbotman_botman_readme_31fde14f2ac0.png\">\u003C\u002Fp>\n\u003Ch1 align=\"center\">BotMan\u003C\u002Fh1>\n\n[![Latest Version on Packagist](https:\u002F\u002Fimg.shields.io\u002Fpackagist\u002Fv\u002Fbotman\u002Fbotman.svg?style=flat-square)](https:\u002F\u002Fpackagist.org\u002Fpackages\u002Fbotman\u002Fbotman)\n[![Build Status](https:\u002F\u002Ftravis-ci.org\u002Fbotman\u002Fbotman.svg?branch=2.0)](https:\u002F\u002Ftravis-ci.org\u002Fbotman\u002Fbotman)\n[![codecov](https:\u002F\u002Fcodecov.io\u002Fgh\u002Fbotman\u002Fbotman\u002Fbranch\u002Fmaster\u002Fgraph\u002Fbadge.svg)](https:\u002F\u002Fcodecov.io\u002Fgh\u002Fbotman\u002Fbotman)\n[![Scrutinizer Code Quality](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fbotman_botman_readme_f53d310bb8e0.png)](https:\u002F\u002Fscrutinizer-ci.com\u002Fg\u002Fbotman\u002Fbotman\u002F?branch=master)\n[![Packagist](https:\u002F\u002Fimg.shields.io\u002Fpackagist\u002Fl\u002Fbotman\u002Fbotman.svg)]()\n[![StyleCI](https:\u002F\u002Fstyleci.io\u002Frepos\u002F65017574\u002Fshield?branch=master)](https:\u002F\u002Fstyleci.io\u002Frepos\u002F65017574)\n[![Slack](https:\u002F\u002Fslack.botman.io\u002Fbadge.svg)](https:\u002F\u002Fslack.botman.io)\n[![Monthly Downloads](https:\u002F\u002Fimg.shields.io\u002Fpackagist\u002Fdm\u002Fbotman\u002Fbotman.svg?style=flat-square)](https:\u002F\u002Fpackagist.org\u002Fpackages\u002Fbotman\u002Fbotman)\n\n[![https:\u002F\u002Fphppackagedevelopment.com](https:\u002F\u002Fdisplay-demo.schlein.net\u002Fimages\u002Fphppd.jpg)](https:\u002F\u002Fphppackagedevelopment.com)\n\nIf you want to learn how to create reusable PHP packages yourself, take a look at my upcoming [PHP Package Development](https:\u002F\u002Fphppackagedevelopment.com) video course.\n\n## About BotMan\n\nBotMan is a framework agnostic PHP library that is designed to simplify the task of developing innovative bots for multiple messaging platforms, including [Slack](https:\u002F\u002Fslack.com), [Telegram](https:\u002F\u002Ftelegram.org), [Microsoft Bot Framework](https:\u002F\u002Fdev.botframework.com), [Nexmo](https:\u002F\u002Fwww.nexmo.com), [HipChat](https:\u002F\u002Fwww.hipchat.com), [Facebook Messenger](https:\u002F\u002Fwww.messenger.com) and [WeChat](https:\u002F\u002Fweb.wechat.com).\n\n```php\n$botman->hears('I want cross-platform bots with PHP!', function (BotMan $bot) {\n    $bot->reply('Look no further!');\n});\n```\n\n> If you want to learn how to create reusable PHP packages yourself, take a look at my upcoming [PHP Package Development](https:\u002F\u002Fphppackagedevelopment.com) video course.\n\n## Documentation\n\nYou can find the BotMan documentation at [https:\u002F\u002Fbotman.io](https:\u002F\u002Fbotman.io).\n\n## Stand Alone Configuration\n\nIf you are installing Botman in a stand alone Laravel application, you can publish the configuration file with the following command:\n\n```\nphp artisan vendor:publish --tag=config --provider=\"BotMan\\BotMan\\BotManServiceProvider\"\n```\n\n## Support the development\n**Do you like this project? Support it by donating**\n\n- PayPal: [Donate](https:\u002F\u002Fwww.paypal.com\u002Fcgi-bin\u002Fwebscr?cmd=_donations&business=m%2epociot%40googlemail%2ecom&lc=CY&item_name=BotMan&no_note=0&currency_code=EUR&bn=PP%2dDonationsBF%3abtn_donateCC_LG%2egif%3aNonHostedGuest)\n- Open Collective: [Become A Backer](https:\u002F\u002Fopencollective.com\u002Fbotman)\n- Patreon: [Become A Backer](https:\u002F\u002Fwww.patreon.com\u002Fbotman)\n\n## Contributing\n\nPlease see [CONTRIBUTING](CONTRIBUTING.md) for details.\n\n[![0](https:\u002F\u002Fsourcerer.io\u002Ffame\u002Fsergey48k\u002Fbotman\u002Fbotman\u002Fimages\u002F0)](https:\u002F\u002Fsourcerer.io\u002Ffame\u002Fsergey48k\u002Fbotman\u002Fbotman\u002Flinks\u002F0)\n[![1](https:\u002F\u002Fsourcerer.io\u002Ffame\u002Fsergey48k\u002Fbotman\u002Fbotman\u002Fimages\u002F1)](https:\u002F\u002Fsourcerer.io\u002Ffame\u002Fsergey48k\u002Fbotman\u002Fbotman\u002Flinks\u002F1)\n[![2](https:\u002F\u002Fsourcerer.io\u002Ffame\u002Fsergey48k\u002Fbotman\u002Fbotman\u002Fimages\u002F2)](https:\u002F\u002Fsourcerer.io\u002Ffame\u002Fsergey48k\u002Fbotman\u002Fbotman\u002Flinks\u002F2)\n[![3](https:\u002F\u002Fsourcerer.io\u002Ffame\u002Fsergey48k\u002Fbotman\u002Fbotman\u002Fimages\u002F3)](https:\u002F\u002Fsourcerer.io\u002Ffame\u002Fsergey48k\u002Fbotman\u002Fbotman\u002Flinks\u002F3)\n[![4](https:\u002F\u002Fsourcerer.io\u002Ffame\u002Fsergey48k\u002Fbotman\u002Fbotman\u002Fimages\u002F4)](https:\u002F\u002Fsourcerer.io\u002Ffame\u002Fsergey48k\u002Fbotman\u002Fbotman\u002Flinks\u002F4)\n[![5](https:\u002F\u002Fsourcerer.io\u002Ffame\u002Fsergey48k\u002Fbotman\u002Fbotman\u002Fimages\u002F5)](https:\u002F\u002Fsourcerer.io\u002Ffame\u002Fsergey48k\u002Fbotman\u002Fbotman\u002Flinks\u002F5)\n[![6](https:\u002F\u002Fsourcerer.io\u002Ffame\u002Fsergey48k\u002Fbotman\u002Fbotman\u002Fimages\u002F6)](https:\u002F\u002Fsourcerer.io\u002Ffame\u002Fsergey48k\u002Fbotman\u002Fbotman\u002Flinks\u002F6)\n[![7](https:\u002F\u002Fsourcerer.io\u002Ffame\u002Fsergey48k\u002Fbotman\u002Fbotman\u002Fimages\u002F7)](https:\u002F\u002Fsourcerer.io\u002Ffame\u002Fsergey48k\u002Fbotman\u002Fbotman\u002Flinks\u002F7)\n\n## Security Vulnerabilities\n\nIf you discover a security vulnerability within BotMan, please send an e-mail to Marcel Pociot at m.pociot@gmail.com. All security vulnerabilities will be promptly addressed.\n\n## License\n\nBotMan is free software distributed under the terms of the MIT license.\n \n","\u003Cp align=\"center\">\u003Cimg height=\"188\" width=\"198\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fbotman_botman_readme_31fde14f2ac0.png\">\u003C\u002Fp>\n\u003Ch1 align=\"center\">BotMan\u003C\u002Fh1>\n\n[![Packagist最新版本](https:\u002F\u002Fimg.shields.io\u002Fpackagist\u002Fv\u002Fbotman\u002Fbotman.svg?style=flat-square)](https:\u002F\u002Fpackagist.org\u002Fpackages\u002Fbotman\u002Fbotman)\n[![构建状态](https:\u002F\u002Ftravis-ci.org\u002Fbotman\u002Fbotman.svg?branch=2.0)](https:\u002F\u002Ftravis-ci.org\u002Fbotman\u002Fbotman)\n[![Codecov](https:\u002F\u002Fcodecov.io\u002Fgh\u002Fbotman\u002Fbotman\u002Fbranch\u002Fmaster\u002Fgraph\u002Fbadge.svg)](https:\u002F\u002Fcodecov.io\u002Fgh\u002Fbotman\u002Fbotman)\n[![Scrutinizer代码质量](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fbotman_botman_readme_f53d310bb8e0.png)](https:\u002F\u002Fscrutinizer-ci.com\u002Fg\u002Fbotman\u002Fbotman\u002F?branch=master)\n[![Packagist许可证](https:\u002F\u002Fimg.shields.io\u002Fpackagist\u002Fl\u002Fbotman\u002Fbotman.svg)]()\n[![StyleCI](https:\u002F\u002Fstyleci.io\u002Frepos\u002F65017574\u002Fshield?branch=master)](https:\u002F\u002Fstyleci.io\u002Frepos\u002F65017574)\n[![Slack](https:\u002F\u002Fslack.botman.io\u002Fbadge.svg)](https:\u002F\u002Fslack.botman.io)\n[![每月下载量](https:\u002F\u002Fimg.shields.io\u002Fpackagist\u002Fdm\u002Fbotman\u002Fbotman.svg?style=flat-square)](https:\u002F\u002Fpackagist.org\u002Fpackages\u002Fbotman\u002Fbotman)\n\n[![https:\u002F\u002Fphppackagedevelopment.com](https:\u002F\u002Fdisplay-demo.schlein.net\u002Fimages\u002Fphppd.jpg)](https:\u002F\u002Fphppackagedevelopment.com)\n\n如果你想学习如何自己创建可重用的PHP包，请查看我即将推出的[PHP包开发](https:\u002F\u002Fphppackagedevelopment.com)视频课程。\n\n## 关于BotMan\n\nBotMan是一个与框架无关的PHP库，旨在简化为多个消息平台开发创新机器人任务，这些平台包括[Slack](https:\u002F\u002Fslack.com)、[Telegram](https:\u002F\u002Ftelegram.org)、[Microsoft Bot Framework](https:\u002F\u002Fdev.botframework.com)、[Nexmo](https:\u002F\u002Fwww.nexmo.com)、[HipChat](https:\u002F\u002Fwww.hipchat.com)、[Facebook Messenger](https:\u002F\u002Fwww.messenger.com)以及[WeChat](https:\u002F\u002Fweb.wechat.com)。\n\n```php\n$botman->hears('我想用PHP开发跨平台机器人！', function (BotMan $bot) {\n    $bot->reply('你来对地方了！');\n});\n```\n\n> 如果你想学习如何自己创建可重用的PHP包，请查看我即将推出的[PHP包开发](https:\u002F\u002Fphppackagedevelopment.com)视频课程。\n\n## 文档\n\n你可以在[https:\u002F\u002Fbotman.io](https:\u002F\u002Fbotman.io)找到BotMan的文档。\n\n## 独立配置\n\n如果你在独立的Laravel应用中安装BotMan，可以使用以下命令发布配置文件：\n\n```\nphp artisan vendor:publish --tag=config --provider=\"BotMan\\BotMan\\BotManServiceProvider\"\n```\n\n## 支持开发\n**你喜欢这个项目吗？请通过捐赠来支持它**\n\n- PayPal: [捐赠](https:\u002F\u002Fwww.paypal.com\u002Fcgi-bin\u002Fwebscr?cmd=_donations&business=m%2epociot%40googlemail%2ecom&lc=CY&item_name=BotMan&no_note=0&currency_code=EUR&bn=PP%2dDonationsBF%3abtn_donateCC_LG%2egif%3aNonHostedGuest)\n- Open Collective: [成为赞助者](https:\u002F\u002Fopencollective.com\u002Fbotman)\n- Patreon: [成为赞助者](https:\u002F\u002Fwww.patreon.com\u002Fbotman)\n\n## 贡献\n详情请参阅[CONTRIBUTING](CONTRIBUTING.md)。\n\n[![0](https:\u002F\u002Fsourcerer.io\u002Ffame\u002Fsergey48k\u002Fbotman\u002Fbotman\u002Fimages\u002F0)](https:\u002F\u002Fsourcerer.io\u002Ffame\u002Fsergey48k\u002Fbotman\u002Fbotman\u002Flinks\u002F0)\n[![1](https:\u002F\u002Fsourcerer.io\u002Ffame\u002Fsergey48k\u002Fbotman\u002Fbotman\u002Fimages\u002F1)](https:\u002F\u002Fsourcerer.io\u002Ffame\u002Fsergey48k\u002Fbotman\u002Fbotman\u002Flinks\u002F1)\n[![2](https:\u002F\u002Fsourcerer.io\u002Ffame\u002Fsergey48k\u002Fbotman\u002Fbotman\u002Fimages\u002F2)](https:\u002F\u002Fsourcerer.io\u002Ffame\u002Fsergey48k\u002Fbotman\u002Fbotman\u002Flinks\u002F2)\n[![3](https:\u002F\u002Fsourcerer.io\u002Ffame\u002Fsergey48k\u002Fbotman\u002Fbotman\u002Fimages\u002F3)](https:\u002F\u002Fsourcerer.io\u002Ffame\u002Fsergey48k\u002Fbotman\u002Fbotman\u002Flinks\u002F3)\n[![4](https:\u002F\u002Fsourcerer.io\u002Ffame\u002Fsergey48k\u002Fbotman\u002Fbotman\u002Fimages\u002F4)](https:\u002F\u002Fsourcerer.io\u002Ffame\u002Fsergey48k\u002Fbotman\u002Fbotman\u002Flinks\u002F4)\n[![5](https:\u002F\u002Fsourcerer.io\u002Ffame\u002Fsergey48k\u002Fbotman\u002Fbotman\u002Fimages\u002F5)](https:\u002F\u002Fsourcerer.io\u002Ffame\u002Fsergey48k\u002Fbotman\u002Fbotman\u002Flinks\u002F5)\n[![6](https:\u002F\u002Fsourcerer.io\u002Ffame\u002Fsergey48k\u002Fbotman\u002Fbotman\u002Fimages\u002F6)](https:\u002F\u002Fsourcerer.io\u002Ffame\u002Fsergey48k\u002Fbotman\u002Fbotman\u002Flinks\u002F6)\n[![7](https:\u002F\u002Fsourcerer.io\u002Ffame\u002Fsergey48k\u002Fbotman\u002Fbotman\u002Fimages\u002F7)](https:\u002F\u002Fsourcerer.io\u002Ffame\u002Fsergey48k\u002Fbotman\u002Fbotman\u002Flinks\u002F7)\n\n## 安全漏洞\n如果你发现BotMan中的安全漏洞，请发送电子邮件至Marcel Pociot的邮箱m.pociot@gmail.com。所有安全漏洞都将得到及时处理。\n\n## 许可证\nBotMan是根据MIT许可证条款发布的自由软件。","# BotMan 快速上手指南\n\nBotMan 是一个与框架无关的 PHP 库，旨在简化为多个消息平台（如 Slack、Telegram、Facebook Messenger、微信等）开发聊天机器人的任务。\n\n## 环境准备\n\n在开始之前，请确保您的开发环境满足以下要求：\n\n*   **操作系统**：Linux, macOS 或 Windows (推荐 Linux\u002FmacOS 生产环境)\n*   **PHP 版本**：PHP 7.0 或更高版本\n*   **依赖管理**：已安装 [Composer](https:\u002F\u002Fgetcomposer.org\u002F)\n*   **消息平台账号**：根据目标平台（如 Telegram Bot Token, Facebook Page Access Token 等）准备好相应的凭证\n\n> **国内加速建议**：如果 Composer 下载速度慢，建议先配置国内镜像源（如阿里云或腾讯云镜像）。\n> ```bash\n> composer config -g repo.packagist composer https:\u002F\u002Fmirrors.aliyun.com\u002Fcomposer\u002F\n> ```\n\n## 安装步骤\n\n### 1. 创建项目并安装 BotMan\n\n您可以直接在现有项目中安装，或创建一个新项目。使用 Composer 安装核心包：\n\n```bash\ncomposer require botman\u002Fbotman\n```\n\n### 2. 集成到 Laravel (可选但推荐)\n\n如果您在 Laravel 项目中使用 BotMan，安装后需要发布配置文件和服务提供者。运行以下命令：\n\n```bash\nphp artisan vendor:publish --tag=config --provider=\"BotMan\\BotMan\\BotManServiceProvider\"\n```\n\n这将生成 `config\u002Fbotman.php` 配置文件，您可以在其中设置不同驱动的参数。\n\n### 3. 安装特定平台驱动\n\nBotMan 核心包不包含具体平台的驱动，您需要根据目标平台安装对应的驱动包。例如：\n\n*   **Telegram**: `composer require botman\u002Fdriver-telegram`\n*   **Facebook Messenger**: `composer require botman\u002Fdriver-facebook`\n*   **Slack**: `composer require botman\u002Fdriver-slack`\n\n安装完成后，记得在 `config\u002Fbotman.php` 中启用相应驱动并填入 API 密钥。\n\n## 基本使用\n\nBotMan 的核心逻辑非常简洁，主要通过 `hears` 方法监听用户消息并做出回复。以下是一个最基础的独立使用示例：\n\n```php\n\u003C?php\n\nrequire_once 'vendor\u002Fautoload.php';\n\nuse BotMan\\BotMan\\BotMan;\nuse BotMan\\BotMan\\BotManFactory;\n\n\u002F\u002F 创建 BotMan 实例 (需配合具体的驱动配置数组)\n$botman = BotManFactory::create([]);\n\n\u002F\u002F 定义监听规则\n$botman->hears('I want cross-platform bots with PHP!', function (BotMan $bot) {\n    $bot->reply('Look no further!');\n});\n\n\u002F\u002F 处理所有其他消息的默认规则\n$botman->fallback(function (BotMan $bot) {\n    $bot->reply('Sorry, I did not understand that.');\n});\n\n\u002F\u002F 运行机器人\n$botman->listen();\n```\n\n### 代码说明：\n1.  **初始化**：使用 `BotManFactory::create()` 创建实例，传入包含驱动配置的数组。\n2.  **监听消息**：`$botman->hears()` 第一个参数是正则表达式或关键词，第二个参数是回调函数。\n3.  **回复消息**：在回调函数中使用 `$bot->reply()` 发送响应。\n4.  **启动监听**：调用 `$botman->listen()` 开始处理传入的请求（通常由 Webhook 触发）。\n\n对于更复杂的对话流程、缓存集成或中间件使用，请参考官方文档：[https:\u002F\u002Fbotman.io](https:\u002F\u002Fbotman.io)。","一家电商初创公司希望为其 PHP 后端系统快速构建智能客服机器人，以同时覆盖微信、Facebook Messenger 和 Slack 等多个渠道的用户咨询。\n\n### 没有 botman 时\n- 开发团队必须分别研究微信、Facebook 和 Slack 各自独立的 API 文档与鉴权机制，导致前期调研耗时极长。\n- 每接入一个新平台就需要重写一套完全独立的消息接收与回复逻辑，代码重复率极高且难以维护。\n- 业务逻辑（如意图识别、订单查询）被硬编码在各个平台的回调函数中，一旦需求变更需修改多处代码，极易出错。\n- 缺乏统一的测试标准，针对不同平台的机器人行为进行回归测试需要搭建多套模拟环境，效率低下。\n\n### 使用 botman 后\n- 只需编写一次核心对话逻辑，botman 的框架无关特性让同一套代码瞬间部署到微信、Facebook 和 Slack 等所有目标平台。\n- 通过简洁的 `$botman->hears()` 语法统一处理用户输入，将复杂的平台差异屏蔽在底层驱动中，代码量减少约 70%。\n- 业务逻辑与通讯渠道彻底解耦，新增“查询物流”功能时仅需在一个位置更新代码，所有平台自动同步生效。\n- 利用内置的测试工具可轻松模拟不同平台的消息负载，无需搭建真实环境即可验证跨平台交互的稳定性。\n\nbotman 让开发者从繁琐的多平台适配工作中解放出来，专注于对话逻辑本身，实现了真正的“一次编写，处处运行”。","https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fbotman_botman_6e4f210e.png","BotMan","https:\u002F\u002Foss.gittoolsai.com\u002Favatars\u002Fbotman_39ad9b68.png","",null,"m.pociot@gmail.com","https:\u002F\u002Fbotman.io","https:\u002F\u002Fgithub.com\u002Fbotman",[81],{"name":82,"color":83,"percentage":84},"PHP","#4F5D95",100,6165,822,"2026-04-14T09:02:12","MIT","未说明",{"notes":91,"python":92,"dependencies":93},"BotMan 是一个与框架无关的 PHP 库，用于开发跨平台聊天机器人（支持 Slack, Telegram, Facebook Messenger 等）。它不是基于 Python 或 GPU 的 AI 模型，因此没有特定的 GPU、内存或 Python 版本要求。主要运行环境需要安装 PHP 和包管理器 Composer。若需在 Laravel 项目中使用，需额外配置 Laravel 环境。","不适用 (基于 PHP)",[82,94,95],"Composer","Laravel (可选，用于独立配置)",[14,97,35],"其他",[99,64,100,101,102,103],"chatbot","bot-framework","chatbot-framework","php","bot","2026-03-27T02:49:30.150509","2026-04-16T08:11:54.588604",[107,112,116,121,126,131,135],{"id":108,"question_zh":109,"answer_zh":110,"source_url":111},35519,"在 Laravel 中使用 BotMan 时，点击对话按钮没有反应怎么办？","如果在非 BotMan Studio 的 Laravel 环境中使用，默认可能未正确启用缓存，导致对话状态无法保存。解决方法是手动实例化 BotMan 并注入 LaravelCache：\n\nuse BotMan\\BotMan\\Cache\\LaravelCache;\n$botman = BotManFactory::create($config, new LaravelCache());\n\n确保在控制器中使用此方式创建 BotMan 实例，即可解决按钮点击无响应的问题。","https:\u002F\u002Fgithub.com\u002Fbotman\u002Fbotman\u002Fissues\u002F57",{"id":113,"question_zh":114,"answer_zh":115,"source_url":111},35520,"如何在 Symfony 等非 Laravel 框架中正确加载 BotMan 驱动（如图片驱动）？","在 Laravel 中驱动会自动通过服务提供者加载，但在 Symfony 等框架中需要手动加载所有需要的驱动。例如，如果用户发送图片但无响应，可能是因为只加载了 TelegramDriver 而遗漏了 TelegramPhotoDriver。请查阅文档并显式注册所有所需的驱动类，确保它们被正确加载到 BotMan 配置中。",{"id":117,"question_zh":118,"answer_zh":119,"source_url":120},35521,"如何在不依赖用户输入（hears）的情况下主动发起对话？","可以通过“发起式对话”（Originating Conversations）功能，向已知用户 ID 主动发送消息并启动对话流程。具体实现请参考官方文档：https:\u002F\u002Fbotman.io\u002F2.0\u002Fconversations#originating-conversations。这适用于定时任务或欢迎消息等场景。","https:\u002F\u002Fgithub.com\u002Fbotman\u002Fbotman\u002Fissues\u002F166",{"id":122,"question_zh":123,"answer_zh":124,"source_url":125},35522,"如何让 BotMan 监听图片、视频、音频或位置等非文本消息？","BotMan 提供了专门的监听方法来处理不同类型的附件消息。例如：\n\n\u002F\u002F 监听图片\n$botman->receivesImages(function($bot) {\n   $images = $bot->getMessage()->getImages();\n});\n\n\u002F\u002F 监听位置\n$botman->receivesLocation(function($bot) {\n   $locations = $bot->getMessage()->getLocations();\n});\n\n注意：不同驱动（如 Telegram、Facebook、Slack）对各类媒体的支持程度不同，请确认所用驱动已实现对应功能。","https:\u002F\u002Fgithub.com\u002Fbotman\u002Fbotman\u002Fissues\u002F215",{"id":127,"question_zh":128,"answer_zh":129,"source_url":130},35523,"BotMan 是否支持 WhatsApp Business API？","官方核心库暂未直接内置 WhatsApp 驱动，但社区已提供可用的第三方驱动。推荐使用 mohapinkepane 开发的 WhatsApp Cloud API 驱动：https:\u002F\u002Fgithub.com\u002Fmohapinkepane\u002Fdriver-whatsapp-cloud。该驱动已在实际项目中验证可用，支持 WhatsApp Cloud API 集成。","https:\u002F\u002Fgithub.com\u002Fbotman\u002Fbotman\u002Fissues\u002F853",{"id":132,"question_zh":133,"answer_zh":134,"source_url":125},35524,"在 Facebook Messenger 中请求用户位置后，为何 receivesLocation 回调未被触发？","确保在回复消息时正确构造了 quick_replies 并设置 content_type 为 'location'。示例代码如下：\n\n$this->bot->reply($message, [\n    'message' => [\n        'quick_replies' => json_encode([\n            [\n                'content_type' => 'location'\n            ]\n        ])\n    ]\n]);\n\n然后使用 $botman->receivesLocation(function($bot) { ... }) 监听。若仍不生效，请检查 Facebook 应用权限是否已开启位置访问，并确认 Webhook 已正确订阅 location 事件。",{"id":136,"question_zh":137,"answer_zh":138,"source_url":139},35525,"Conversation 对象中如何访问 BotMan 实例以避免序列化问题？","由于 Conversation 对象会被序列化存入缓存，而其中包含的 BotMan 实例不可序列化，可能导致循环依赖问题。建议不要在 Conversation 中直接存储 BotMan 引用。如需访问 BotMan 功能，可通过依赖注入或在回调中由外部传入当前 BotMan 实例。社区曾提议通过 __sleep 排除 BotMan 属性并在反序列化时重新注入，但尚未成为官方标准做法。","https:\u002F\u002Fgithub.com\u002Fbotman\u002Fbotman\u002Fissues\u002F195",[141,146,151,155,160,165,170,175,180,185,190,195,200,205,210,215,220,225,230,235],{"id":142,"version":143,"summary_zh":144,"released_at":145},280655,"2.6.1","## 变更\r\n\r\n* 确保与 Laravel 7 和 8 兼容。","2020-09-11T01:46:41",{"id":147,"version":148,"summary_zh":149,"released_at":150},280656,"2.6.0","## 变更\n\n- 添加缺失的命名空间 'File' (#1105)\n- 应用 StyleCI 的修复 (#1107)\n- symfony\u002Fhttp-foundation 5.0 (#1117)\n- 允许任何可调用对象作为回调函数 (#1102)\n- 为 BotMan::reply() 的 $message 参数添加 OutgoingMessage 类型 (#1104)\n- 添加针对 PHP 7.4 的测试 (#1134)\n- 更新 LaravelCache.php (#1028)\n- 在 PHPDoc 的 @return 中标明可能的空值 (#1097)\n- 更新与 tightenco\u002Fcollect 的兼容性 (#1063)\n- 修复 Wit.ai 连接问题 (#1131)\n- 为 Slack 添加 Select 操作 (#1087)\n- 允许 BotMan 听取命令数组中的指令 (#855)\n- 修复 Curl::prepareRequest() 的类型 (#1059)","2020-05-31T08:44:31",{"id":152,"version":153,"summary_zh":76,"released_at":154},280657,"2.5.0","2019-05-14T21:25:44",{"id":156,"version":157,"summary_zh":158,"released_at":159},280658,"2.4.1","已修复\n\n* 新的用户方法 `getUserWithFields` 现在也已在测试中可用","2018-08-09T13:18:55",{"id":161,"version":162,"summary_zh":163,"released_at":164},280659,"2.4.0","### 新增\n- 增加了同时监听多个事件的功能\n\n### 修复\n- 修复了 Symfony 依赖问题\n- 允许使用 opis\u002Fclosure 3.0\n- 修复了无效的会话缓存处理逻辑","2018-08-08T09:27:45",{"id":166,"version":167,"summary_zh":168,"released_at":169},280660,"2.3.3","### 修复\n- 修复了消息匹配器不会被调用的问题","2018-05-02T07:53:42",{"id":171,"version":172,"summary_zh":173,"released_at":174},280661,"2.3.2","### 修复\n- 修复了验证请求的消息会被处理的问题。","2018-04-16T09:47:20",{"id":176,"version":177,"summary_zh":178,"released_at":179},280662,"2.3.1","### 修复\n- 允许设置 Dialogflow \u002F API.ai 的语言。\n- 修复了在没有收到任何消息的情况下调用回退消息的问题。","2018-04-03T10:48:30",{"id":181,"version":182,"summary_zh":183,"released_at":184},280663,"2.3.0","### 新增\n- 在附件对象中新增了额外字段\n- 在 PSR-11 实现中增加了对 Laravel 自动依赖注入的支持\n\n### 修复\n- 修复了为特定队列任务添加自定义中间件时出现的问题","2018-02-20T22:38:02",{"id":186,"version":187,"summary_zh":188,"released_at":189},280664,"2.2.0","### 新增\n- 添加了 PSR11 兼容性","2018-02-19T20:32:46",{"id":191,"version":192,"summary_zh":193,"released_at":194},280665,"2.1.10","### 修复\n- 修复了在测试机器人消息时，最后一条入站消息未能正确重置的问题。","2018-02-07T09:29:10",{"id":196,"version":197,"summary_zh":198,"released_at":199},280666,"2.1.9","### Fixed\r\n- Fixed an issue with Outgoing Messages on PHP 7.2","2018-01-19T16:14:19",{"id":201,"version":202,"summary_zh":203,"released_at":204},280667,"2.1.8","### Added\r\n- Added `Dialogflow` middleware class, to match the new product name.","2018-01-18T10:18:53",{"id":206,"version":207,"summary_zh":208,"released_at":209},280668,"1.5.9","### Fixed\r\n- Use preg_replace instead of rtrim. This handles drivers named like TwitterDriver correctly.\r\n\r\n","2018-01-15T21:09:09",{"id":211,"version":212,"summary_zh":213,"released_at":214},280669,"2.1.7","### Fixed\r\n- Fixed an issue that occurs when trying to use matching middlewares that only implement the `Matching` interface.","2018-01-12T14:47:21",{"id":216,"version":217,"summary_zh":218,"released_at":219},280670,"2.1.6","### Added\r\n- The `say` method now accepts an array of recipients","2017-12-19T19:59:04",{"id":221,"version":222,"summary_zh":223,"released_at":224},280671,"2.1.5","### Added\r\n- Added the ability to pass arrays as command callables\r\n","2017-12-04T07:14:35",{"id":226,"version":227,"summary_zh":228,"released_at":229},280672,"2.1.4","### Misc\r\n- Update react version","2017-12-01T14:23:49",{"id":231,"version":232,"summary_zh":233,"released_at":234},280673,"2.1.3","### Fixed\r\n- Fixed an issue with the driver verification (this time for real).","2017-10-18T08:55:01",{"id":236,"version":237,"summary_zh":238,"released_at":239},280674,"2.1.2","### Fixed\r\n- Fixed an issue when trying to verify multiple HTTP based drivers","2017-10-09T18:36:36"]