一、产品总览
Surging AI Agent(取名:AgentForge,自研开发助手智能体 DevAgent),是深度原生集成 Surging 微服务引擎 的.NET 专属本地 AI 智能体,依托engine-cli命令行终端交互,一站式实现框架答疑、配置生成、微服务模块创建、代码编译、集群部署全自动化研发流程。
下方为本地engine-cli真实运行交互截图,直观展示对话问答、工程流水线、轻量化离线运行效果:
核心场景解读
1、自然语言对话问答
终端直接提问,Agent 输出结构化说明 + 可直接复制的 JSON 配置:Surging 框架介绍、服务 IP 部署、OAuth2 网关鉴权、IP 黑白名单生产级配置;支持标准工具函数调度(时间查询GetCurrentTime标准化 JSON 调用结构)。
2、全自动微服务工程流水线
输入需求生成订单中心模块代码,输出WebApi,目标框架.NET8.0,自动串行执行:GenerateModule → Compile → Deploy,无需人工分步操作。
3、低资源离线本地推理
右侧任务管理器可见engine-cli进程内存占用仅 5.5G,基于 C# 原生 LLamaSharp 推理,相比其它语言 Agent 硬件门槛大幅降低,适配政务、金融内网信创离线场景。
二、智能体组件注册入口:DevAgentSupportProvider
该类是 Surging 标准组件扩展,引擎启动自动加载 DevAgent 智能体,统一完成智能体基础信息、工具插件挂载、分层 RAG 知识库、多智能体编排提示词注册。
public class DevAgentSupportProvider : ComponentSupportProvider
{
public override IObservable<IComponentSupport> Create(ComponentContext context)
{
// 初始化智能体实例,并发权重2
var support = new AgentSupport(2);
support.Id = "DevAgent";
support.Name = "开发助手智能体";
support.Author = "fanly";
// 挂载内置工具插件
support.AddAgentPluginSupport("Time", typeof(TimePlugin));
support.AddAgentPluginSupport("CodeGenerator", typeof(CodeGeneratorPlugin));
support.AddAgentPluginSupport("CodeCompile", typeof(CodeGeneratorPlugin));
support.AddAgentPluginSupport("Deploy", typeof(DeployPlugin));
// 可选:支持远程surging服务、MCP (GRPC/HTTP)插件接入
//support.AddAgentPluginSupport("CodeGenerator", new ServiceDescriptor { RoutePath = "/plugin/codeGenerator/generatemodule" });
//support.AddAgentPluginSupport("CodeGenerator","grpc://127.0.0.1/plugin/codeGenerator/generatemodule");
//support.AddAgentPluginSupport("CodeGenerator", "http://127.0.0.1/plugin/codeGenerator/generatemodule");
// 1. 静态框架知识库(Knowledge类型,问答检索核心数据源)
support.AddRAGDocument("Knowledges/surging-knowledge.txt", context.ComponentLocation, "surging_doc", tags: new Dictionary<string, List<string?>>
{
{ "tags", new List<string?> { "surging", "microservice","微服务引擎"} },
}).AddDocType(RAGDocumentType.Knowledge);
support.AddRAGDocument("Knowledges/surging-setting.txt", context.ComponentLocation, "surging_setting_doc", tags: new Dictionary<string, List<string?>>
{
{ "tags", new List<string?> { "surging", "microservice","设置","微服务引擎"} },
}).AddDocType(RAGDocumentType.Knowledge);
support.AddRAGDocument("Knowledges/engine-cli-knowledge.txt", context.ComponentLocation, "engine-cli_doc", tags: new Dictionary<string, List<string?>>
{
{ "tags", new List<string?> { "engine-cli", "cli tool","ai tool","ai助手"} },
}).AddDocType(RAGDocumentType.Knowledge);
support.AddRAGDocument("Knowledges/xiaotao-knowledge.txt", context.ComponentLocation, "engine-cli_doc", tags: new Dictionary<string, List<string?>>
{
{ "tags", new List<string?> { "小滔", "ai助手","xiaotao"} },
}).AddDocType(RAGDocumentType.Knowledge);
// 2. 单智能体角色提示词(Agent类型,定义DevAgent基础行为规范)
support.AddRAGDocument("Prompts/agent-prompt.json", context.ComponentLocation, "agent-engine-cli_doc", tags: new Dictionary<string, List<string?>>
{
{ "tags", new List<string?> { "engine-cli", "cli tool","agent","ai tool","ai助手"} },
}).AddDocType(RAGDocumentType.Agent);
// 3. 多智能体串行编排提示词(Sequential类型,支撑大型项目分工协同)
support.AddRAGDocument("Prompts/agentgroup-prompt.json", context.ComponentLocation, "agentgroup-engine-cli_doc", tags: new Dictionary<string, List<string?>>
{
{ "tags", new List<string?> { "engine-cli", "cli tool","agentgroup","ai tool","ai助手"} },
}).AddAdditionalDescPath("Prompts/agentgroup-desc.md", context.ComponentLocation)
.AddDocType(RAGDocumentType.Sequential);
return Observable.Return(support);
}
}
三、全套核心 Kernel 插件完整源码
流水线前两步核心能力,负责创建微服务模块、数据库表结构与代码编译校验
/// <summary>
/// 代码生成&编译核心插件,提供模块创建、项目编译两大AI可调用函数
/// </summary>
sealed class CodeGeneratorPlugin
{
/// <summary>
/// AI调用:根据项目信息、数据表结构生成完整WebApi微服务模块、分层代码、建表SQL
/// </summary>
[KernelFunction]
[Description("生成完整模块代码、数据库表结构时调用")]
public Task GenerateModule(
[Description("""
入参格式:{"Project":{"Name":"","Desc":""},"Tables":[{"Name":"","Desc":"",Columns:[{"Name":"","Datatype":"","Desc":""}]}]}
""")] CodeProject project,
List<CodeTable> tables)
{
Console.WriteLine($"调用了GenerateModule,project.Name:{project.Name},project.Desc:{project.Desc}");
// 底层实现:自动生成分层架构、CRUD逻辑、数据库SQL、Surging服务配置、Swagger文档
return Task.CompletedTask;
}
/// <summary>
/// AI调用:对生成完成的模块代码执行编译校验,同步执行数据库建表脚本
/// </summary>
[KernelFunction]
[Description("编译模块代码、运行数据库表结构时调用")]
public Task Compile(
[Description("""
入参格式:{"Project":{"Name":"","Desc":""}}
""")] CodeProject project)
{
Console.WriteLine($"调用了Compile,project.Name:{project.Name},project.Desc:{project.Desc}");
// 底层实现:.NET项目编译、语法校验、框架适配修复、执行DDL建表语句
return Task.CompletedTask;
}
}
- 部署插件 DeployPlugin
流水线收尾能力,编译完成后一键部署服务与库表至集群
/// <summary>
/// 项目部署插件,负责编译后服务打包、镜像构建、集群发布、数据库脚本上线
/// </summary>
sealed class DeployPlugin
{
[KernelFunction]
[Description("部署模块代码、部署数据库表结构时调用")]
public Task Deploy(
[Description("""
入参格式:{"Project":{"Name":"","Desc":""}}
""")] CodeProject project)
{
Console.WriteLine("调用了Deploy");
// 底层实现:生成Docker镜像、推送仓库、Surging服务注册、K8s/本地集群发布、执行上线SQL
return Task.CompletedTask;
}
}
- 配套入参实体(统一结构化入参规范)
/// <summary>
/// 项目基础信息实体,所有工程插件统一入参标准
/// </summary>
public class CodeProject
{
public string Name { get; set; }
public string Desc { get; set; }
}
/// <summary>
/// 数据库表定义实体
/// </summary>
public class CodeTable
{
public string Name { get; set; }
public string Desc { get; set; }
public List<CodeColumn> Columns { get; set; }
}
/// <summary>
/// 数据表字段定义实体
/// </summary>
public class CodeColumn
{
public string Name { get; set; }
public string Datatype { get; set; }
public string Desc { get; set; }
}
四、核心亮点
1、标准 SemanticKernel 规范开发
全部工具基于[KernelFunction]官方注解实现,强类型结构化入参,AI 自动识别函数、自动组装参数,不会出现通用 Agent 参数错乱、无法落地的问题;同时支持本地 C# 插件 、Surging微服务插件、MCP( GRPC/HTTP) 插件扩展。
2、Surging 原生内置,无额外中间件依赖
通过ComponentSupportProvider作为标准组件注册进微服务引擎,引擎启动自动加载 AI 智能体,深度打通 RPC、服务注册、集群发布底层能力,生成代码开箱即用。
3、精细化分层 RAG 知识库
区分框架文档、单智能体提示词、多智能体串行编排文档,标签向量检索相似度稳定≥95%,精准解答 Surging 各类配置、运维、部署问题。
4、轻量化离线私有化运行
依托 LLamaSharp C# 原生推理,截图可见仅 5.5G 内存即可运行llama3.1 8B_4Q 大模型、BGE向量模型,无外网数据上传,完美适配金融、政务、国企信创内网隔离场景。
5、CLI 终端深度融合
开发者无需切换 IDE、网页、客户端,日常使用engine-cli时直接对话 AI,把 AI 能力嵌入原有开发工作流,学习成本极低。
五、适用场景
1、Surging 新手快速开发:一句话生成标准微服务模块,搭配知识库答疑快速上手框架;
2、内网离线信创研发:本地私有化大模型,数据不出内网,满足安全合规要求;
3、大型分布式系统协同开发:多智能体 Sequential、Concurrent、Handoff、GroupChat、Magentic五种模式拆分复杂任务编排协同;
总结
市面上的AI Agent 和微服务架构完全割裂;而 Surging的 AgentForge从底层组件注册、标准化 Kernel 插件、分层 RAG 知识库、CLI 终端离线推理全链路深度绑定.NET 微服务生态,拥有完整可落地的自动化交付能力,让.NET有一战之力。