Solon AISolon AI 是一款面向 Java 开发者 的全栈智能体Agent应用开发框架。它秉承 Solon 家族一贯的“克制、高效、开放”理念向上抽象统一接口屏蔽模型差异向下深度集成向量库、MCP 协议与复杂流控制。核心理念一份代码跨模型运行极致轻量从 Java 8 纵跳至 Java 26。核心架构图谱维度核心能力支持生态接入层统一 Chat / Generate / Embedding 模型接口OpenAI, Claude, Gemini, DeepSeek, QWen, Ollama, 豆包等…感知层全链路 RAG、多格式文档加载、多向量库适配Chroma, Milvus, ES, Redis, Qdrant…执行层MCP 协议、ACP协议、Function Call、Skills 技能包实时天气、数据库操作、本地 CLI、自定义 Skill大脑层ReAct 自省推理、多智能体Team协作、AI-Flow自动任务拆解、层级式协作、YAML 工作流能用来开发什么应用通用自主智能体应用比如Manus、OpenOperator、Claude Code、OpenClaw智能助理与 RAG 知识库应用比如Dify、Coze多 Agent 协作的任务编排应用比如AutoGPT、MetaGPT业务驱动的受控流程审批应用比如智能版钉钉审批流、SAP 智能模块结构化数据处理与 ETL 应用比如Instabase、Unstructured.io实时数据智能看板应用比如Text-to-SQL 类应用自动化测试与质量保障应用比如GitHub Copilot Workspace低代码/可视化 AI 工作流平台比如LangFlow、Flowise等等…智能体综合示例项目可直接用于生产或定制SolonCode基于 Java8 实现的 “Claude Code” 或 “OpenCode”https://gitee.com/opensolon/soloncodehttps://gitcode.com/opensolon/soloncodehttps://github.com/opensolon/soloncodeSolonClaw基于 Java8 实现的 “OpenClaw” 或 “Moltbot”https://gitee.com/opensolon/solonclawhttps://gitcode.com/opensolon/solonclawhttps://github.com/opensolon/solonclaw最近更新新增 solon-ai-repo-dashvector-official 插件添加 solon-ai-core ChatModel.getModel 方法添加 solon-ai-core ChatModel.getProvider 方法添加 solon-ai-core ChatOptions.name 方便 agent 传递 name打印日志添加 solon-ai-core 基于语义的分割器 SemanticSplitter添加 solon-ai-core AiConfig.name, description 配置属性用于管理显示添加 solon-ai-agent AgentRequest.callAsync 异步调用方法添加 solon-ai-agent AgentResponse.getTrace 方法添加 solon-ai-agent SummarizationInterceptor.copyWith 方法方便复制实例并调整限制添加 solon-ai-harness HarnessProperties.models 配置属性替代 chatModel添加 solon-ai-harness 子代理切换模型的能力添加 solon-ai-harness HarnessProperties.removeModel 方法优化 solon-ai-core RepositoryTool 增加重排支持优化 solon-ai-core OllamaEmbeddingDialect.matched 添加 endsWith 匹配优化 solon-ai-core MethodToolProvider 允许是否使用自身的 ToolProvider 内容同时优化 AbsSkillAbsToolProvider优化 solon-ai-agent ReActAgent 流块输出优化 solon-ai-cli TodoSkill 提示词调整 solon-ai-cli 取消 TerminalSkill.undo 工具几乎用不到由 git 控制调整 solon-ai-harness 取消 SESSION_DEFAULT由应用侧处理调整 solon-ai-harness 去除 getVersion 方法由应用侧定义调整 solon-ai-harness CLAUDE.md 更名为 CODE.md内部自动生成修复 solon-ai-core MethodExecuteHandler 当 llm.args 嵌套非规范 json 时出错的问题比如非规范控制符修复 solon-ai-core ChatResponseDefault.isEmpty 可能识别失败的问题不同 llm 情况较多调整 solon-ai-harness HarnessProperties.restApis 更名为 apiServers取消 chatModel由 models 替代修复 solon-ai-agent FileAgentSession.getSessionId 可能为空的问题修复 solon-ai-skill-web CodeSearchTool 失效的问题mcp.exa.ai 变了地址修复 solon-ai-harness TaskOp jsonSchema 问题可能造成 multitask 调度失败核心模块体验ChatModel通用大语言模型 LLM 调用接口支持同步、流式Reactive调用内置方言适配工具Tool技能Skill会话记忆ChatSession等能力。ChatModelchatModelChatModel.of(http://127.0.0.1:11434/api/chat).provider(ollama)//需要指定供应商用于识别接口风格也称为方言.model(qwen2.5:1.5b).defaultSkillAdd(newToolGatewaySkill()).build();//同步调用并打印响应消息AssistantMessageresultChatchatModel.prompt(今天杭州的天气情况).options(op-op.toolAdd(newWeatherTools()))//添加工具.call().getMessage();System.out.println(result);//响应式调用chatModel.prompt(hello).stream();//PublisherChatResponseSkillsSolon AI Skills 技能SkillskillnewSkillDesc(order_expert).description(订单助手)// 动态准入只有提到“订单”时才激活.isSupported(prompt-prompt.getUserMessageContent().contains(订单))// 动态指令根据用户是否是 VIP 注入不同 SOP.instruction(prompt-{if(VIP.equals(prompt.getMeta(user_level))){return这是尊贵的 VIP 客户请优先调用 fast_track_tool。;}return按常规流程处理订单查询。;}).toolAdd(newOrderTools());chatModel.prompt(我昨天的订单到哪了).options(o-o.skillAdd(skill)).call();RAG知识库提供从加载DocumentLoader、切分DocumentSplitter、向量化EmbeddingModel到检索重排RerankingModel的全链路支持。//构建知识库EmbeddingModelembeddingModelEmbeddingModel.of(apiUrl).apiKey(apiKey).provider(provider).model(model).batchSize(10).build();RerankingModelrerankingModelRerankingModel.of(apiUrl).apiKey(apiKey).provider(provider).model(model).build();InMemoryRepositoryrepositorynewInMemoryRepository(TestUtils.getEmbeddingModel());//3.初始化知识库repository.insert(newPdfLoader(pdfUri).load());//检索ListDocumentdocsrepository.search(query);//如果有需要可以重排一下docsrerankingModel.rerank(query,docs);//提示语增强是ChatMessagemessageChatMessage.ofUserAugment(query,docs);//调用大模型chatModel.prompt(message).call();MCP (Model Context Protocol)深度集成 MCP 协议MCP_2025_06_18支持跨平台的工具、资源与提示语共享。//服务端McpServerEndpoint(channelMcpChannel.STREAMABLE,mcpEndpoint/mcp)publicclassMyMcpServer{ToolMapping(description查询天气)publicStringgetWeather(Param(description城市)Stringlocation){return晴25度;}}//客户端McpClientProviderclientProviderMcpClientProvider.builder().channel(McpChannel.STREAMABLE).url(http://localhost:8080/mcp).build();Agent (基于计算流图的智能体体验)Solon AI Agent 将推理逻辑转化为图驱动的协作流支持 ReAct 自省推理和多智能体 Team 协作。//自省智能体ReActAgentagentReActAgent.of(chatModel)// 或者用 SimpleAgent.of(chatModel).name(weather_expert).description(查询天气并提供建议).defaultToolAdd(weatherTool)// 注入 MCP 或本地工具.build();agent.prompt(今天北京适合穿什么).call();// 自动完成思考 - 调用工具 - 观察 - 总结// 组建团队智能体通过协议Protocol自动编排成员角色TeamAgentteamTeamAgent.of(chatModel).name(marketing_team).protocol(TeamProtocols.HIERARCHICAL)// 层级式协作6种预置协议.agentAdd(copywriterAgent)// 文案专家.agentAdd(illustratorAgent)// 视觉专家.build();team.prompt(策划一个深海矿泉水的推广方案).call();// Supervisor 自动拆解任务并分发给对应专家 .defaultToolAdd(weatherTool) // 注入 MCP 或本地工具Agent HarnessSolon AI Harness 是一个高性能的智能体“马具Harness”框架。作为底层核心它已在 SolonCode CLI 项目中经过了三个月的深度打磨与实战验证。HarnessPropertiesharnessPropsnewHarnessProperties(.tmp/);harnessProps.addTools(ToolPermission.TOOL_PI);//设定工具权限harnessProps.addModel(null);//设定大模型配置ChatModelchatModelChatModel.of(harnessProps.getChatModel()).build();AgentSessionProvidersessionProvidernewAgentSessionProvider(){privateMapString,AgentSessionsessionMapnewConcurrentHashMap();OverridepublicAgentSessiongetSession(StringinstanceId){returnsessionMap.computeIfAbsent(instanceId,k-InMemoryAgentSession.of(k));}};HarnessEngineengineHarnessEngine.builder().properties(harnessProps).chatModel(chatModel).sessionProvider(sessionProvider).build();AgentSessionsessionengine.getSession(HarnessEngine.SESSION_DEFAULT);//--- 用主代理模式engine.getMainAgent().prompt(prompt).session(session)//没有则为临时会话.options(o-{//按需动态指定工作区没有则为默认工作区o.toolContextPut(HarnessEngine.ATTR_CWD,xxx);}).call();Ai Flow流程编排体验模拟 Dify 的低代码流式应用将 RAG、提示词增强、模型调用等环节 YAML 化编排。id:demo1layout:-type:start-task:VarInputmeta:message:Solon 是谁开发的-task:EmbeddingModelmeta:embeddingConfig:# type: org.noear.solon.ai.embedding.EmbeddingConfigprovider:ollamamodel:bge-m3apiUrl:http://127.0.0.1:11434/api/embed-task:InMemoryRepositorymeta:documentSources:-https://solon.noear.org/article/about?formatmdsplitPipeline:-org.noear.solon.ai.rag.splitter.RegexTextSplitter-org.noear.solon.ai.rag.splitter.TokenSizeTextSplitter-task:ChatModelmeta:systemPrompt:你是个知识库stream:falsechatConfig:# type: org.noear.solon.ai.chat.ChatConfigprovider:ollamamodel:qwen2.5:1.5bapiUrl:http://127.0.0.1:11434/api/chat-task:ConsoleOutput# FlowEngine flowEngine FlowEngine.newInstance();# ...# flowEngine.eval(demo1);项目仓库地址giteehttps://gitee.com/opensolon/solon-aigitcode: https://gitcode.com/opensolon/solon-aigithubhttps://github.com/opensolon/solon-ai官网https://solon.noear.org/article/learn-solon-ai