当前位置: 首页 > news >正文

NetcoreKevin:.NET 企业级智能体管理框架

NetcoreKevin:.NET 企业级智能体管理框架

1. 框架简介

NetcoreKevin 是一款基于 .NET 8 的企业级智能体(AI Agent)管理框架,为团队提供智能体 Skill 与工具的可视化编排能力,并通过细粒度的角色权限体系实现智能体的安全授权与合规使用。框架完全开源,采用 Apache 2.0 协议,致力于降低企业构建、治理和运营 AI 智能体的复杂度。

GitHub:https://github.com/junkai-li/NetCoreKevin
gitee:https://gitee.com/netkevin-li

2. 核心特性

  • 智能体 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.Skills:Skill 定义、加载、编排引擎,支持 YAML/JSON 描述的 Skill 图。
  • NetcoreKevin.Tools:工具注册中心,提供标准化接口对接各类外部能力。
  • NetcoreKevin.Auth:权限与授权模块,提供策略评估、角色解析和令牌签发。

4. 智能体 Skill 与工具可视化管理

4.1 Skill 可视化设计器

在 Studio 中,用户可以通过拖拽节点创建智能体 Skill。Skill 节点分为:

  • 入口节点:接收用户输入或上游智能体消息。
  • LLM 节点:配置 Prompt 模板、绑定模型(OpenAI / 本地模型)。
  • 工具节点:从工具集市选择工具,自动映射输入输出。
  • 逻辑控制节点:条件判断、循环、并行。
  • 输出节点:定义最终返回的结构化数据。

示例 Skill 定义(YAML):

name:customer_complaint_analysisentry:type:llmprompt:"分析以下客户投诉的情感倾向和紧急程度:{{input}}"model:gpt-4output:complaint_infotools:-name:create_jira_ticketwhen:complaint_info.urgency == 'high'parameters:summary:"投诉: {{complaint_info.summary}}"priority:"High"output: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 的权限管理页面,管理员可以:

  1. 为每个智能体定义所需权限级别。
  2. 向角色授予指定智能体的权限(支持批量操作)。
  3. 查看某个用户的最终权限集合(角色叠加)。
  4. 设置临时授权(如外部合作方限制调用次数和时间窗口)。

示例授权场景:

  • 客服智能体cs_agent仅允许Support_Role的成员调用,并限制每小时最大 100 次请求。
  • 智能体工厂智能体factory_analyst允许Engineering_Role编辑 Skill,但仅Maintenance_Role可调用其中“传感器读取”工具。

5.3 技术实现要点

后端使用 .NET 的IAuthorizationHandler结合自定义AgentRequirement进行授权检查:

publicclassAgentAuthorizationHandler:AuthorizationHandler<AgentRequirement,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 导入导出授权关系。
http://www.jsqmd.com/news/913467/

相关文章:

  • 如何快速掌握开源质谱数据分析工具MZmine 3的完整工作流程
  • MiniMax联手支付宝打通AI商业闭环:M3系列提速在即
  • ncmdump终极指南:3分钟快速解密网易云音乐NCM文件
  • 终极指南:如何将Rhino 3D模型完美导入Blender
  • 定了!创想三维明日上市,12周年新品齐发
  • MATLAB多目标航迹起始仿真工具|5个动态目标同步建模+噪声与检测概率可调
  • STM32F10x平台RC663 NFC全协议读卡工程:支持Mifare/ISO14443A-B/ISO15693,含驱动、示例与一键清理脚本
  • C语言B样条曲线生成工具:支持2D/3D点列拟合、二/三次平滑插值与位图可视化
  • 第15章:AI辅助安全监控与应急响应——链上异常实时告警
  • 【Claude战略规划文档实战指南】:用1份模板+6套Checklist,3天完成企业级AI路线图重构
  • 【LangGraph】LangGraph 协调者-工作者模式完全解析:从零构建一个智能报告生成系统
  • BeeWorks:以安全专属与AI原生,重新定义企业即时通讯的智能入口
  • 杆塔型太阳能供电系统亲测分享:哪家公司最靠谱?
  • Agent Teams 多代理协作
  • CRNN中文文字识别完整工程包:含360CC数据集、训练模型与PyTorch可运行源码
  • LIO-SAM 优化方向综述:从因子图到多模态SLAM
  • 模型幻觉频发、收敛极慢、资源耗尽——Claude优化问题全链路诊断,今天必须修复的4个致命配置
  • 用 AI 写自媒体文案,再也不用熬夜
  • 业主做门窗定制,到底在定制什么?从安全、舒适到交付的真实需求分析
  • DOM ProcessingInst: 深入解析与高效实践
  • 选装修公司别瞎跑,靠谱张工教你几招辨好坏
  • vue3 + ts reactive方式清空表单对象
  • Unity里用WebView插件播放WebRTC视频流,我踩过的坑和完整配置流程
  • 微信如何群发文件与PDF?2026合规批量分发完整解决方案
  • Uni-Dock批量对接实战:从SMILES到结果分析,一条龙避坑指南(附完整Python脚本)
  • 从“增程之王”到“纯电标杆”,理想汽车击碎偏见
  • Claude头脑风暴辅助实战手册(企业级思维加速器):覆盖创意发散、逻辑收敛、方案落地全链路
  • LSD-SLAM 完整安装教程(Ubuntu 20.04 + ROS Noetic + OpenCV)
  • 网络工程- 如何组件一个小型办公室网络
  • macOS微信防撤回终极指南:3分钟搞定WeChatIntercept完整安装教程