当前位置: 首页 > 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.zskr.cn/news/1424776.html

相关文章:

  • C语言B样条曲线生成工具:支持2D/3D点列拟合、二/三次平滑插值与位图可视化
  • 【Claude战略规划文档实战指南】:用1份模板+6套Checklist,3天完成企业级AI路线图重构
  • Agent Teams 多代理协作
  • 业主做门窗定制,到底在定制什么?从安全、舒适到交付的真实需求分析
  • CRNN中文文字识别完整工程包:含360CC数据集、训练模型与PyTorch可运行源码
  • 模型幻觉频发、收敛极慢、资源耗尽——Claude优化问题全链路诊断,今天必须修复的4个致命配置
  • DOM ProcessingInst: 深入解析与高效实践
  • 选装修公司别瞎跑,靠谱张工教你几招辨好坏
  • 微信如何群发文件与PDF?2026合规批量分发完整解决方案
  • Uni-Dock批量对接实战:从SMILES到结果分析,一条龙避坑指南(附完整Python脚本)
  • Claude头脑风暴辅助实战手册(企业级思维加速器):覆盖创意发散、逻辑收敛、方案落地全链路
  • 如何用WeChatMsg打造个人专属的微信聊天记录档案馆
  • Wechatsync CSDN 草稿同步源码分析:为什么当前只能保存草稿,不能自动公开发布
  • 3分钟解锁极域电子教室控制:JiYuTrainer让课堂学习更自由
  • 2026年AI服务统一入口横评,主流平台技术硬实力究竟谁领先?
  • 【字节跳动】云南昆明高原恒温算力中枢 极致精细化逐条全拆解
  • Java后台一键生成Word报告:模板占位符替换、动态表格扩展、多格式图片嵌入
  • NoFences:免费开源的Windows桌面整理终极方案
  • 人与AI的关系——AI是工具,还是伴侣?
  • 如何快速批量下载微博相册高清图片:终极免费工具指南
  • 不止于画线:用Vectrosity插件在Unity里制作平滑的游戏技能轨迹与UI指示线
  • MongoDB备份恢复实战
  • 二手车价格预测Python实战工程:带清洗数据、多模型代码、评估报告与详细注释
  • 智能制造底层基石:现场总线扩展卡行业全景解析
  • 2026年5月工业AI智能体供应商推荐:五大企业对比评测专业选择指南
  • 工厂上AI视觉系统前,先回答这3个问题(否则20万可能白花)
  • FPGA加速基因组序列比对:GeneTEK架构解析
  • League Akari:英雄联盟玩家的终极本地化智能助手完全指南
  • labview时间格式字符串转换秒
  • 【A11】数据同步系统 - 权限与交互规范