NetcoreKevin.NET 企业级智能体管理框架1. 框架简介NetcoreKevin 是一款基于 .NET 8 的企业级智能体AI Agent管理框架为团队提供智能体 Skill 与工具的可视化编排能力并通过细粒度的角色权限体系实现智能体的安全授权与合规使用。框架完全开源采用 Apache 2.0 协议致力于降低企业构建、治理和运营 AI 智能体的复杂度。GitHubhttps://github.com/junkai-li/NetCoreKevingiteehttps://gitee.com/netkevin-li2. 核心特性智能体 Skill 可视化编排提供 Web 管理面板用拖拽方式设计 Skill 流程支持条件、循环、并行等节点。工具集市与动态注册内置 HTTP API、SQL 查询、Python 脚本、代码解释器等多种工具支持动态上传 OpenAPI 规范自动生成工具。用户-角色-权限三维授权基于 RBAC 策略授权的模型精细控制谁可以创建、编辑、调用某个智能体。多智能体协作支持智能体间的消息路由和上下文共享构建多 Agent 协作流程。企业级观测集成 OpenTelemetry提供 Skill 执行追踪、工具调用耗时、Token 用量等仪表板。插件化架构Skill、Tool、Permission Provider 均可通过 NuGet 包或本地 DLL 热插拔。多租户隔离天然支持 SaaS 场景租户间数据、智能体、工具完全隔离。3. 整体架构NetcoreKevin 采用清晰的分层架构与微内核设计核心模块如下图所示文字描述┌──────────────────────────────────────────────┐ │ NetcoreKevin.Studio │ │ (Blazor WebAssembly 管理端) │ ├──────────────────────────────────────────────┤ │ NetcoreKevin.AgentHub │ │ (智能体运行时Skill引擎工具调度器) │ ├──────────────┬───────────────┬───────────────┤ │ NetcoreKevin.│ NetcoreKevin. │ NetcoreKevin. │ │ Skills │ Tools │ Auth │ ├──────────────┴───────────────┴───────────────┤ │ 基础设施EF Core, Redis, RabbitMQ │ └──────────────────────────────────────────────┘NetcoreKevin.Studio面向管理员和开发者的可视化操作面板管理智能体、Skill、工具和权限。NetcoreKevin.AgentHub智能体运行时核心负责 Skill 流程执行、工具动态调用、上下文管理。NetcoreKevin.SkillsSkill 定义、加载、编排引擎支持 YAML/JSON 描述的 Skill 图。NetcoreKevin.Tools工具注册中心提供标准化接口对接各类外部能力。NetcoreKevin.Auth权限与授权模块提供策略评估、角色解析和令牌签发。4. 智能体 Skill 与工具可视化管理4.1 Skill 可视化设计器在 Studio 中用户可以通过拖拽节点创建智能体 Skill。Skill 节点分为入口节点接收用户输入或上游智能体消息。LLM 节点配置 Prompt 模板、绑定模型OpenAI / 本地模型。工具节点从工具集市选择工具自动映射输入输出。逻辑控制节点条件判断、循环、并行。输出节点定义最终返回的结构化数据。示例 Skill 定义YAMLname:customer_complaint_analysisentry:type:llmprompt:分析以下客户投诉的情感倾向和紧急程度{{input}}model:gpt-4output:complaint_infotools:-name:create_jira_ticketwhen:complaint_info.urgency highparameters:summary:投诉: {{complaint_info.summary}}priority:Highoutput:type:jsontemplate:|{ sentiment: {{complaint_info.sentiment}}, ticket_id: {{create_jira_ticket.id}} }通过画布编排上述 YAML 可直观拖拽生成并实时调试运行。4.2 工具集市工具集市内置了常用连接器并支持自定义工具上传OpenAPI 工具上传 Swagger JSON系统自动生成工具卡片及参数表单。数据库工具配置连接串和 SQL 模板生成参数化查询工具。代码工具在线编写 C#/Python 脚本由沙箱执行并返回结果。第三方服务工具预集成 Azure AI Services、AWS Lambda 等。所有工具均通过IToolExecutor接口接入运行时提供链路跟踪和速率限制。5. 用户角色权限与智能体授权NetcoreKevin 的权限模型基于RBAC 智能体策略实现“谁能用、能怎么用、能用哪个智能体”的精准控制。5.1 权限模型核心概念用户 (User)系统登录实体可关联多个角色。角色 (Role)权限的集合如 “AgentDeveloper”、“AgentUser”、“Admin”。智能体权限项 (AgentPermission)按智能体划分的细粒度权限包括agent.read– 查看智能体信息agent.invoke– 调用智能体agent.edit– 编辑 Skill/工具绑定agent.delete– 删除智能体agent.manage_auth– 管理智能体授权授权策略 (Policy)根据角色智能体资源标签动态评估访问请求。5.2 权限配置可视化在 Studio 的权限管理页面管理员可以为每个智能体定义所需权限级别。向角色授予指定智能体的权限支持批量操作。查看某个用户的最终权限集合角色叠加。设置临时授权如外部合作方限制调用次数和时间窗口。示例授权场景客服智能体cs_agent仅允许Support_Role的成员调用并限制每小时最大 100 次请求。智能体工厂智能体factory_analyst允许Engineering_Role编辑 Skill但仅Maintenance_Role可调用其中“传感器读取”工具。5.3 技术实现要点后端使用 .NET 的IAuthorizationHandler结合自定义AgentRequirement进行授权检查publicclassAgentAuthorizationHandler:AuthorizationHandlerAgentRequirement,Agent{protectedoverrideTaskHandleRequirementAsync(AuthorizationHandlerContextcontext,AgentRequirementrequirement,Agentresource){if(context.User.HasClaim(agent_permission,${resource.Id}:{requirement.Operation}))context.Succeed(requirement);returnTask.CompletedTask;}}所有对 Agent Hub 的 API 调用都经过 ASP.NET Core 的 Policy 中间件确保未授权用户无法访问任何智能体资源。6. 可视化界面展示部分页面描述智能体列表卡片式展示可快速看到每个智能体的状态上线/下线、拥有 Skill 版本、已授权角色数量。Skill 编辑器全功能拖拽编排器支持断点调试、上下文预览、版本管理和回滚。工具集市类“插件市场”界面工具状态、请求次数一目了然一键启用/禁用。权限管理中心左侧用户/角色树右侧智能体-权限矩阵支持 Excel 导入导出授权关系。
NetcoreKevin:.NET 企业级智能体管理框架
NetcoreKevin.NET 企业级智能体管理框架1. 框架简介NetcoreKevin 是一款基于 .NET 8 的企业级智能体AI Agent管理框架为团队提供智能体 Skill 与工具的可视化编排能力并通过细粒度的角色权限体系实现智能体的安全授权与合规使用。框架完全开源采用 Apache 2.0 协议致力于降低企业构建、治理和运营 AI 智能体的复杂度。GitHubhttps://github.com/junkai-li/NetCoreKevingiteehttps://gitee.com/netkevin-li2. 核心特性智能体 Skill 可视化编排提供 Web 管理面板用拖拽方式设计 Skill 流程支持条件、循环、并行等节点。工具集市与动态注册内置 HTTP API、SQL 查询、Python 脚本、代码解释器等多种工具支持动态上传 OpenAPI 规范自动生成工具。用户-角色-权限三维授权基于 RBAC 策略授权的模型精细控制谁可以创建、编辑、调用某个智能体。多智能体协作支持智能体间的消息路由和上下文共享构建多 Agent 协作流程。企业级观测集成 OpenTelemetry提供 Skill 执行追踪、工具调用耗时、Token 用量等仪表板。插件化架构Skill、Tool、Permission Provider 均可通过 NuGet 包或本地 DLL 热插拔。多租户隔离天然支持 SaaS 场景租户间数据、智能体、工具完全隔离。3. 整体架构NetcoreKevin 采用清晰的分层架构与微内核设计核心模块如下图所示文字描述┌──────────────────────────────────────────────┐ │ NetcoreKevin.Studio │ │ (Blazor WebAssembly 管理端) │ ├──────────────────────────────────────────────┤ │ NetcoreKevin.AgentHub │ │ (智能体运行时Skill引擎工具调度器) │ ├──────────────┬───────────────┬───────────────┤ │ NetcoreKevin.│ NetcoreKevin. │ NetcoreKevin. │ │ Skills │ Tools │ Auth │ ├──────────────┴───────────────┴───────────────┤ │ 基础设施EF Core, Redis, RabbitMQ │ └──────────────────────────────────────────────┘NetcoreKevin.Studio面向管理员和开发者的可视化操作面板管理智能体、Skill、工具和权限。NetcoreKevin.AgentHub智能体运行时核心负责 Skill 流程执行、工具动态调用、上下文管理。NetcoreKevin.SkillsSkill 定义、加载、编排引擎支持 YAML/JSON 描述的 Skill 图。NetcoreKevin.Tools工具注册中心提供标准化接口对接各类外部能力。NetcoreKevin.Auth权限与授权模块提供策略评估、角色解析和令牌签发。4. 智能体 Skill 与工具可视化管理4.1 Skill 可视化设计器在 Studio 中用户可以通过拖拽节点创建智能体 Skill。Skill 节点分为入口节点接收用户输入或上游智能体消息。LLM 节点配置 Prompt 模板、绑定模型OpenAI / 本地模型。工具节点从工具集市选择工具自动映射输入输出。逻辑控制节点条件判断、循环、并行。输出节点定义最终返回的结构化数据。示例 Skill 定义YAMLname:customer_complaint_analysisentry:type:llmprompt:分析以下客户投诉的情感倾向和紧急程度{{input}}model:gpt-4output:complaint_infotools:-name:create_jira_ticketwhen:complaint_info.urgency highparameters:summary:投诉: {{complaint_info.summary}}priority:Highoutput:type:jsontemplate:|{ sentiment: {{complaint_info.sentiment}}, ticket_id: {{create_jira_ticket.id}} }通过画布编排上述 YAML 可直观拖拽生成并实时调试运行。4.2 工具集市工具集市内置了常用连接器并支持自定义工具上传OpenAPI 工具上传 Swagger JSON系统自动生成工具卡片及参数表单。数据库工具配置连接串和 SQL 模板生成参数化查询工具。代码工具在线编写 C#/Python 脚本由沙箱执行并返回结果。第三方服务工具预集成 Azure AI Services、AWS Lambda 等。所有工具均通过IToolExecutor接口接入运行时提供链路跟踪和速率限制。5. 用户角色权限与智能体授权NetcoreKevin 的权限模型基于RBAC 智能体策略实现“谁能用、能怎么用、能用哪个智能体”的精准控制。5.1 权限模型核心概念用户 (User)系统登录实体可关联多个角色。角色 (Role)权限的集合如 “AgentDeveloper”、“AgentUser”、“Admin”。智能体权限项 (AgentPermission)按智能体划分的细粒度权限包括agent.read– 查看智能体信息agent.invoke– 调用智能体agent.edit– 编辑 Skill/工具绑定agent.delete– 删除智能体agent.manage_auth– 管理智能体授权授权策略 (Policy)根据角色智能体资源标签动态评估访问请求。5.2 权限配置可视化在 Studio 的权限管理页面管理员可以为每个智能体定义所需权限级别。向角色授予指定智能体的权限支持批量操作。查看某个用户的最终权限集合角色叠加。设置临时授权如外部合作方限制调用次数和时间窗口。示例授权场景客服智能体cs_agent仅允许Support_Role的成员调用并限制每小时最大 100 次请求。智能体工厂智能体factory_analyst允许Engineering_Role编辑 Skill但仅Maintenance_Role可调用其中“传感器读取”工具。5.3 技术实现要点后端使用 .NET 的IAuthorizationHandler结合自定义AgentRequirement进行授权检查publicclassAgentAuthorizationHandler:AuthorizationHandlerAgentRequirement,Agent{protectedoverrideTaskHandleRequirementAsync(AuthorizationHandlerContextcontext,AgentRequirementrequirement,Agentresource){if(context.User.HasClaim(agent_permission,${resource.Id}:{requirement.Operation}))context.Succeed(requirement);returnTask.CompletedTask;}}所有对 Agent Hub 的 API 调用都经过 ASP.NET Core 的 Policy 中间件确保未授权用户无法访问任何智能体资源。6. 可视化界面展示部分页面描述智能体列表卡片式展示可快速看到每个智能体的状态上线/下线、拥有 Skill 版本、已授权角色数量。Skill 编辑器全功能拖拽编排器支持断点调试、上下文预览、版本管理和回滚。工具集市类“插件市场”界面工具状态、请求次数一目了然一键启用/禁用。权限管理中心左侧用户/角色树右侧智能体-权限矩阵支持 Excel 导入导出授权关系。