BotSharp .NET 智能体框架
面向企业系统的 .NET 多智能体、RAG 与模型集成框架。
- Star 数
- ★ 3.1k
- 最近更新
- 今天
- License
- Apache-2.0
- 主语言
- C#
- FA 评分
- 48/100 · 缺口较多
30 秒速览
- 可在哪里用
- 通用 · 跨平台ChatGPT · OpenAI API · Claude API
- 开始前需要
- 典型场景
- 使用 C# 维护企业信息系统的团队,需要把多个职责不同的智能体接入现有业务流程时。
- 主要局限
- 运行环境要求 .NET 6+;使用模型提供商时还需要在
appsettings.json中维护相应 API 密钥。
这个 Agent 能做什么,适合哪些场景?
BotSharp 是一个用 C# 和 .NET Core 构建的开源 AI Bot 应用框架,定位为将大语言模型接入既有业务应用。它以插件和管线流执行设计解耦组件,核心模块包括 Agent Profile、Conversation & State、Routing & Planning、LLM Provider、缓存、文件仓库和 Rich Content。框架可通过内置插件接入 OpenAI、Anthropic、Google、DeepSeek、Meta、HuggingFace 等模型平台,并提供知识库、Qdrant、消息渠道和处理器扩展。它支持多智能体协作、会话状态管理、RESTful Open API 与 WebSocket 实时通信;管理 UI 由独立的 BotSharp-UI SvelteKit 项目提供。适合希望在 .NET 业务系统中自行部署并组合模型、工具和消息通道的团队。
应用启动时可执行 dotnet run --project ./src/WebStarter/WebStarter.csproj -p SolutionName=BotSharp 运行后端服务。框架通过 Plugin Loader 和 Hooking 加载外部组件,并使用 Agent Profile、Conversation & State 以及 Routing & Planning 组织智能体职责、会话状态和协作路由。BotSharp.Plugin.OpenAI、BotSharp.Plugin.AnthropicAI、BotSharp.Plugin.GoogleAI 等插件向模型平台发起调用;BotSharp.Plugin.KnowledgeBase 和 BotSharp.Plugin.Qdrant 提供 RAG 相关接口与向量检索。它还能经 BotSharp.OpenAPI 和 WebSocket 对外提供通信能力,并可借助 ChatHub、TelegramBots、WeChat、Twilio 等插件连接消息渠道。MCP 集成支持对 MCP 进行可视化管理,让模型调用外部能力。
- 使用 C# 维护企业信息系统的团队,需要把多个职责不同的智能体接入现有业务流程时。
- 需要在 .NET 服务中保存会话状态,并用 Routing & Planning 协调多智能体完成较复杂任务的应用团队。
- 希望将 OpenAI、Anthropic、Gemini、DeepSeek 或 HuggingFace 等不同模型平台按插件方式接入同一应用的开发者。
- 需要用知识库和 Qdrant 向量检索构建 RAG 流程的企业内部问答或助手项目。
- 要通过 RESTful Open API、WebSocket,或 Telegram、WeChat、Twilio 等消息渠道交付聊天能力的团队。
如何安装或部署这个 Agent?
前提是安装 .NET 6+ SDK。克隆仓库后进入项目目录,并运行:
dotnet run --project ./src/WebStarter/WebStarter.csproj -p SolutionName=BotSharpWindows 可使用:
dotnet run --project .\src\WebStarter\WebStarter.csproj -p SolutionName=BotSharp如需管理 UI,需另外克隆 https://github.com/SciSharp/BotSharp-UI,进入该目录后执行 npm install 和 npm run dev。使用模型插件前,在 appsettings.json 中配置所选提供商的 API 密钥;启动异常时,先执行 dotnet restore。
如何使用这个 Agent?
启动后端后访问 http://localhost:5015/。为智能体定义 Agent Profile 及其职责,并按需要启用对应插件:例如用 BotSharp.Plugin.OpenAI 或 BotSharp.Plugin.AnthropicAI 接入模型,用 BotSharp.Plugin.KnowledgeBase 或 BotSharp.Plugin.Qdrant 构建检索流程。通过框架的 RESTful Open API 或 WebSocket 接入自有前端,也可选用 ChatHub、MetaMessenger、TelegramBots、Twilio 或 WeChat 等渠道插件。若使用独立管理 UI,在 BotSharp-UI 项目执行 npm run dev。
这个 Agent 有哪些优点和局限?
- 以 C#/.NET Core 为基础,并采用插件与管线流执行设计,适合将 AI 功能嵌入既有 .NET 业务逻辑。
- 内置 Agent Profile、会话状态、路由和规划组件,覆盖多智能体协作的核心编排环节。
- 提供多个模型平台插件,以及知识库、Qdrant、消息渠道、RESTful Open API 和 WebSocket 扩展点。
- 已提供 MCP 集成和可视化管理能力,可将模型调用接入外部能力。
- 运行环境要求 .NET 6+;使用模型提供商时还需要在
appsettings.json中维护相应 API 密钥。 - 管理 UI 不在主仓库内,需单独获取 BotSharp-UI 并运行 npm 安装与开发命令。
- 提供的生产部署说明仅提到反向代理、Nginx/IIS 和独立 UI 部署,未给出具体配置样例。
- README 列出的路线图中 A2A、Computer Use 和 Browser Use 仍未完成。
这个 Agent 与同类方案有什么区别?
与相关度最高的同类 agent 并排比较关键指标。
| Agent | 源码审查 | Star | 最近更新 | 主语言 | 完整支持的平台 |
|---|---|---|---|---|---|
| BotSharp .NET 智能体框架 当前 | 48 · 缺口较多 | ★ 3.1k | 今天 | C# | ChatGPT · OpenAI API · Claude API |
| 《LangGraph 1.0 完全指南》 | 69 · 存在缺口 | ★ 454 | 12 天前 | Jupyter Notebook | Claude Code |
| Agentica | 63 · 存在缺口 | ★ 352 | 4 天前 | Python | OpenAI API · Claude API |
| Hello-Agents 智能体教程 | 54 · 缺口较多 | ★ 81k | 1 天前 | Python | OpenAI API |
FollowAgents 如何评估这个 Agent?
查看各维度的扣分理由
证据显示:项目采用插件化架构,权限控制分散在各插件中,但未提供统一的权限管理机制,因此最低权限原则仅部分满足(1分)。用户确认机制未见明确实现,如敏感操作需用户确认的流程,故为0分。数据流透明度方面,README提及RESTful API和WebSocket,但未详细说明数据流向和存储,故为1分。敏感数据处理方面,提及API密钥配置,但未说明加密存储或脱敏措施,故为1分。依赖安全方面,有CI构建和测试,但未提及依赖漏洞扫描,故为1分。外部影响方面,插件可执行外部操作(如发送消息、调用工具),但未说明限制或审计,故为1分。回滚机制未见提及,故为0分。来源归属方面,项目属于SciSharp组织,但发布者未验证,故为1分。
证据显示:README和代码结构一致,模块划分清晰,自洽性较好(2分)。依赖可用性方面,项目依赖NuGet包,CI会还原依赖,但未提供依赖锁定或镜像,故为2分。失败消息方面,FAQ提及常见错误排查,但未提供详细的错误码或日志规范,故为1分。
证据显示:目标受众明确为.NET开发者,场景覆盖多智能体、RAG等,故为2分。能力边界方面,列出了核心模块和插件,但未明确说明不支持的功能,故为2分。触发精度方面,描述了路由和规划机制,但未提供具体配置示例,故为1分。环境适配方面,支持跨平台,有CI矩阵,故为2分。
证据显示:信息架构清晰,有架构图和模块列表,故为2分。安装说明提供了快速开始步骤,故为2分。命名稳定性方面,项目名称和模块命名一致,故为2分。示例和FAQ提供了多个示例和常见问题,故为2分。已知限制方面,未明确列出,故为1分。许可证为Apache-2.0,完整,故为3分。版本和变更日志方面,未提供CHANGELOG,故为1分。维护责任方面,有CI和社区支持,但发布者未验证,故为2分。
证据显示:输出可用性方面,提供RESTful API和WebSocket,输出格式未详细说明,故为2分。边际价值方面,提供多智能体框架,有独特价值,故为2分。成本效益方面,开源免费,但部署和配置成本未评估,故为2分。
证据显示:声明可追溯性方面,README中的功能声明未提供具体实现链接,故为1分。跨来源佐证方面,有CI和文档,但未提供独立验证,故为1分。事实与推断分离方面,README中部分内容为宣传性语言,未明确区分,故为1分。
- 源码中未见:执行前用户确认开启或自行加上执行前确认;先在沙箱或测试环境跑通,确认行为后再接入真实数据。
- 源码中未见:回滚或恢复路径运行前先备份,或在 git 分支、快照上操作,确保改动可以撤销。
- 发布者身份未验证,需谨慎评估供应链风险。
- 未提供明确的权限管理和用户确认机制,敏感操作需自行加强控制。
- 依赖安全未扫描,建议使用前进行漏洞检查。
- 回滚机制缺失,升级或变更需谨慎。
常见问题
BotSharp 可以免费用于商业项目吗?
支持哪些模型提供商?
必须使用 BotSharp UI 吗?
模型调用超时应先检查什么?
appsettings.json 中的 API 密钥、到模型提供商的网络连通性,以及模型名称是否正确。