
一、SolonCode CLI 是什么如果你还没听说过 SolonCode先花一分钟了解一下。SolonCode 是Solon 生态的命令行 AI 编程助手基于Solon AI框架构建底层采用了 Harness 智能体架构。它不是一个 IDE 插件而是一个独立的终端工具——只要能打开终端的地方就能用。核心定位一个能真正读懂项目、执行操作、自主推进的编码智能体。它可以读取你的项目文件、执行终端命令、搜索网络资料、调度子代理并行工作像一个真正的开发搭档一样帮你干活。当前版本v2026.5.15文内功能描述基于 v2026.5.9 版本。两种交互模式CLI 模式在终端中直接对话沉浸式开发体验Web 模式浏览器界面支持 WebSocket 实时通信、语音输入、附件上传几个关键特点采用 Java 实现100% 开源MIT 协议全中文提示词驱动不绑定特定 AI 提供商按需配置模型支持 Java 8 到 Java 26 全环境运行所有数据本地处理隐私安全可控好了背景介绍完毕。接下来进入正题——心智记忆功能。二、心智记忆让 AI 真正记住你2.1 什么是心智记忆Memory心智记忆是 SolonCode 的长期认知系统。它在对话过程中自动提取关键信息并持久化存储使得 AI 在后续会话中能记住用户的偏好、项目约定和历史上下文——用得越多理解越精准。划重点自动提取跨会话持久化越用越懂你。这意味着什么意味着你不需要做任何额外操作只需要像平时一样跟 SolonCode 对话它就会在背后默默学习你的习惯、记住你的偏好、理解你的项目。它会记住什么用户偏好你喜欢用的工具、编码风格、命名习惯项目规约项目的技术栈、目录结构、构建方式架构决策为什么选 A 而不是 B重要的设计取舍技术选型ORM 用 MyBatis-Plus 还是 JPA前端用 Vue 还是 React2.2 五种认知操作模拟人类记忆过程心智记忆的核心架构借鉴了认知科学的设计理念提供五种记忆操作用户对话 │ ▼ Agent 推理LLM 自动判断是否需要记忆操作 │ ├── extract ──→ 发现新事实存入记忆key 已存在则触发认知对比 ├── recall ──→ 需要回忆某条具体记忆按 key 精确召回 ├── search ──→ 需要查找相关背景语义搜索匹配记忆 ├── consolidate ──→ 碎片太多合并多条低层记忆为一条高层认知 └── prune ──→ 记忆过时直接删除 │ ▼ MemorySolution ├── MemoryStoreProvider ──→ RogueMap 本地 KV 持久化 └── MemorySearchProvider ──→ Lucene 全文语义索引让我逐一解释提取Extract—— 模拟注意到并记住当你在对话中透露了值得保存的信息SolonCode 会自动识别并提取。比如你说我们项目用的是 Solon 框架它就会判断这是一个重要的技术选型信息值得记住。如果提取时发现 key 已经存在还会触发认知对比——新旧信息是否矛盾如果矛盾以新的为准。这就像人类在获取新知识时会自动和已有认知进行对比和修正。召回Recall—— 模拟想起来当你提到某个话题SolonCode 精确知道需要回忆哪条记忆就通过 key 直接召回。就像你说我之前说的那个 ORM 偏好来着它会精确地把 MyBatis-Plus 的记忆调出来。搜索Search—— 模拟联想当话题涉及某个领域SolonCode 会通过 Lucene 全文语义索引搜索相关的记忆碎片。这是一种模糊匹配不需要精确的 key而是通过语义关联找到相关记忆。就像你闻到某种味道突然想起小时候的事情——联想式回忆。整合Consolidate—— 模拟顿悟当记忆碎片积累到一定程度SolonCode 会自动将多条低层记忆合并为一条高层认知。这不是简单的信息堆叠而是真正的认知升维。比如它分别记住了你用的 ORM、你用的框架、你的编码风格整合之后就变成了一条高层认知团队使用 Solon MyBatis-Plus 技术栈偏好注解式开发。 一条顶多条更精准也更高效。修剪Prune—— 模拟遗忘过时的信息会被自动清理。你之前用的某个临时技术方案现在已经不用了Prune 操作会帮你把这些过时记忆清除保持记忆库的精简和准确。2.3 重要性分级不是所有记忆都平等SolonCode 的心智记忆系统引入了重要性分级机制1-10 级不同级别的信息拥有不同的生命周期和权重级别含义示例1-3 级琐碎事实临时文件名、一次性的路径信息4-6 级行为偏好常用的工具、反复提及的关注点、代码风格偏好7-9 级核心规约架构定义、长期技术选型、团队开发规范10 级重大决策足以改变后续所有对话逻辑的关键决定这个分级机制非常重要。它意味着 SolonCode 不会把你提了一嘴的临时变量名和团队正式决定的技术栈一视同仁。10 级的记忆会深刻影响后续所有的对话逻辑而 1 级的记忆可能在整合时就被清理掉了。这也是为什么心智记忆能越用越聪明——它不仅记住了信息还理解了信息的重要性。2.4 存储结构你的数据你做主记忆数据完全保存在本地~/.soloncode/memory/ ├── lucene/ # Lucene 全文索引语义搜索用 └── rogue/ # RogueMap KV 数据库精确存取用默认所有项目共享一份统一记忆跨项目积累认知也可以通过memoryIsolation配置为项目隔离模式# .soloncode/config.yml memoryIsolation: true # 长记忆是否工作区隔离配置值存储路径说明false默认~/.soloncode/memory/所有项目共享一份记忆跨项目积累认知trueworkspace/.soloncode/memory/每个工作区独立记忆项目间互不干扰我个人倾向于用默认的全局共享模式。因为很多偏好是跨项目的——你不太可能在 A 项目喜欢驼峰命名到了 B 项目就想用下划线。2.5 使用效果从陌生到默契让我们来看一个真实的使用演进过程第一次对话用户: 我这个项目用的是 MyBatis-Plus不要给我用 JPA 助手: 好的我记住了。 [自动 extract] keyuser_orm_preference, fact项目使用 MyBatis-Plus不使用 JPA, importance7第一次SolonCode 提取了你的 ORM 偏好重要性标为 7 级核心规约。第二次对话新会话用户: 帮我写一个用户查询接口 助手: [自动 search 用户ORM偏好] → 命中 项目使用 MyBatis-Plus 好的我使用 MyBatis-Plus 的 QueryWrapper 来实现...第二次你甚至没有提到 MyBatis-Plus但 SolonCode 自动联想到了你之前的偏好直接用 QueryWrapper 来写。这就是记忆的威力。第三次对话用户: 我们团队决定统一用 Solon 框架了 助手: [自动 extract] keyuser_framework, fact团队统一使用 Solon 框架, importance9 [自动 recall user_orm_preference] → 发现相关偏好 了解。后续我会基于 Solon MyBatis-Plus 的组合来给你建议。第三次SolonCode 不仅记住了新的技术选型9 级还主动召回了之前的 ORM 偏好进行了关联。多次对话后[自动 consolidate] 碎片: user_orm_preference, user_framework, user_code_style... ↓ 合并为 高层认知: user_tech_stack 团队使用 Solon MyBatis-Plus 技术栈偏好注解式开发经过多次对话SolonCode 自动将碎片化的记忆整合为高层认知。从此以后无论你问什么问题它都会基于这个高层认知来回答。整个过程完全自动化。你只需要正常对话AI 会在背后持续积累和演化对你的理解。这就是越用越懂你的真正含义。三、agent 子代理系统让专业的人做专业的事心智记忆解决的是记住你的问题而子代理系统解决的是帮你干活的问题。3.1 内置四大子代理SolonCode 预置了四个专业子代理每个都有明确的职责分工和工具权限子代理职责可用工具explore信息探索专家文件分析 全网检索list, read, grep, glob, webfetch, websearch, codesearchbash命令执行专家终端命令执行list, read, bashplan规划与计划专家任务拆解、执行步骤list, read, grep, glob, webfetch, websearch, codesearchgeneral通用全能专家所有工具*主代理ReActAgent负责接收指令、分析任务、任务分解、委派调度和结果汇总。它就像一个项目经理把不同的工作分给最合适的专家去做。工作流程用户指令 → 主代理分析 → 任务分解 → 子代理执行 → 结果汇总 → 响应用户举个例子你说帮我分析一下这个项目的架构然后运行一下测试。主代理会这样调度把分析架构分给explore子代理——它擅长读代码、搜文档把运行测试分给bash子代理——它擅长执行命令两个子代理各自执行主代理汇总结果返回给你3.2 并行任务多线程干活更厉害的是SolonCode 支持multitask 并行分发。多个子任务之间互不干扰高效执行。比如你说帮我同时做三件事——搜索一下 Solon AI 的最新文档检查一下项目里有没有安全漏洞把 README 更新一下。主代理会并行启动三个子代理┌─→ explore: 搜索 Solon AI 文档 主代理 ─┼─→ explore: 检查项目安全漏洞 └─→ general: 更新 README三个任务同时进行最后主代理汇总汇报。这种并行能力在处理复杂任务时效率极高。3.3 动态团队按需组建 Agent Team除了内置子代理SolonCode 还支持通过自然语言动态创建子代理团队。你可以这样描述帮我设计一个 agent team至少要有架构师、前端开发、后端开发、测试员四个角色。架构师先做好设计然后并行开发之后测试。SolonCode 会根据你的描述动态生成专属的子代理配置然后按照你定义的协作模式串行、并行来推进工作。这就像临时组建了一个项目团队各司其职。四、技能系统AI 的专业工具箱如果子代理是人那技能就是人手里的工具。4.1 内置专家技能SolonCode 内置了一系列专业级别的技能其中几个特别值得关注Solon 开发技能作为 Solon 生态的亲儿子SolonCode 对 Solon 框架有原生级别的深度支持。它内置了完整的 Solon 开发知识涵盖核心概念、Web 开发、数据访问、安全认证、AI 开发、云原生、测试等全部场景。你不需要给 SolonCode 解释 Solon 的注解体系它天生就懂。Spring → Solon 迁移技能这个技能专门面向想把项目从 Spring 迁移到 Solon 的开发者。它提供了完整的注解映射、依赖替换指南和迁移策略。直接告诉 SolonCode 帮我把这个 Spring Boot 项目迁移到 Solon它就能按步骤帮你完成。全栈开发技能前后端一把梭的技能包。REST API 设计、数据库操作、前端集成一站式搞定。Excel 处理技能需要处理 Excel 文件创建、读取、分析、编辑、验证统统支持。4.2 自定义技能内置技能不够用你可以通过SKILL.md文件定义自己的专家技能。技能的本质是一份 Markdown 格式的指导文档告诉 AI 在特定场景下应该怎么做。你可以把团队的最佳实践、项目特有的开发规范、常用工具的使用方法等都封装成技能。技能可以放在两个位置~/.soloncode/skills/全局技能所有项目可用.soloncode/skills/工作区技能仅当前项目可用4.3 find-skills用自然语言查找和安装技能这个功能我特别喜欢。你不需要知道技能的确切名字只需要用自然语言描述你的需求用户: 有没有处理 PDF 的技能 助手: [自动调用 find-skills] 找到了以下相关技能... 1. pdf-parser - PDF 文件解析与提取 2. pdf-generator - PDF 文档生成 要安装哪个find-skills 支持从多个技能仓库中搜索找到后可以直接安装整个过程在对话中完成不需要手动下载或配置。五、/rewind 命令后悔药写代码哪有不后悔的跟 AI 对话也一样。SolonCode 提供了/rewind命令v2026.5.9 新增支持对话回退功能。你可以回到之前的某个状态重新开始。用户: /rewind执行后SolonCode 会显示对话历史的关键节点你可以选择回退到哪一个点。回退后之前的状态会被保存为快照你可以随时通过/resume恢复。这个功能在实际使用中非常实用。比如 AI 帮你改了三处代码你发现第二处改错了就可以回退到第二处之前的状态重新指示 AI 怎么改。六、多模型切换不把鸡蛋放在一个篮子里SolonCode 不绑定特定 AI 提供商这意味着你可以自由选择和切换不同的模型。子代理可独立配置模型每个子代理可以单独指定使用哪个模型。比如主代理用最强的模型做任务分析explore 子代理用速度快的模型做文件搜索bash 子代理用便宜的小模型执行命令这样既保证了质量又控制了成本。运行时动态切换在对话过程中你可以随时切换模型。CLI 界面和 Web 界面都支持多模型选择。觉得当前模型回答不够好切一个试试。这种灵活性在 AI 模型快速迭代的今天尤其重要。模型在进步你不需要被绑定在某个模型上。七、Web 交互模式浏览器的力量虽然 CLI 模式已经很好用但有些时候浏览器界面更加直观。soloncode web启动 Web 模式后你会得到一个功能完整的浏览器交互界面。WebSocket 实时通信Web 模式基于 WebSocket 实现实时通信AI 的回答逐字流式输出体验和 CLI 一样丝滑。语音输入Web 模式支持语音输入而且交互设计是微信风格——按住说话松开结束。这个设计很自然不需要额外学习成本。在双手不方便打字的场景下比如一边看文档一边提问语音输入非常方便。附件上传附件上传功能分为两种模式普通文件上传上传代码文件、配置文件等AI 直接读取内容多模态图片上传上传截图、设计稿等AI 可以看图理解微信通道支持通过 Web 模式的微信通道命令你可以把 SolonCode 接入微信直接在微信里和 AI 对话。这对于习惯用微信沟通的团队来说非常方便。此外还支持钉钉、飞书等企业通讯工具的绑定。八、心跳机制AI 会自己找事做这是 SolonCode 的一个很有趣的功能——心跳机制。你可以通过/loop命令或干活指令触发心跳模式。在这个模式下SolonCode 会自主驱动任务执行自动找事做搜索相关技术资料补充项目文档检查代码中的潜在问题执行未完成的 TODO 任务定期运行测试确保代码健康甚至支持 cron 表达式/loop cron:0 */5 * * * ? check status这条命令会让 SolonCode 每 5 分钟自动检查一次项目状态。心跳机制把 AI 从被动等指令变成了主动干活。你开会去了AI 在帮你整理文档你下班了AI 在帮你跑测试。这种自主性是传统编程工具完全不具备的。九、实际使用体验心智记忆的累积效应说了这么多功能来分享几个我实际使用的场景展示心智记忆如何累积发挥作用。场景一从零搭建项目三个月后 AI 比新同事更懂项目我在三月份开始用 SolonCode 搭建一个新的微服务项目。第一次对话中我告诉它技术栈Solon MyBatis-Plus Redis命名规范驼峰式Service 层用接口实现数据库MySQL 8.0包结构按领域模块划分这些信息全部被提取为 7-9 级的记忆。到六月份的时候我已经和 SolonCode 进行了几十次对话。每次对话它都会在记忆库中累积新的认知——哪些表是核心表、哪些接口是高频使用的、哪些地方有性能瓶颈。有一天一个新同事问我这个用户的权限校验是在哪一层做的。我想不起来具体代码位置了就问 SolonCode。它直接给出了精确的答案甚至附带了当初为什么这样设计的理由——因为三月份某次对话中我解释过这个架构决策它记住了。这就是心智记忆的累积效应。它不像传统的上下文窗口对话结束就消失了。它是真正的长期记忆。场景二技术选型变更记忆自动更新有一次我们把项目的缓存方案从 Redis 迁移到 Solon Cloud 的 Water 方案。我在对话中提到这个变更后SolonCode 提取了新的技术选型importance9自动召回了之前关于 Redis 的记忆主动提醒我之前有几个地方用到了 Redis 的特定 API需要同步修改这种记住过去 关联现在 预判影响的能力已经不是简单的记忆了而是真正的认知。场景三多子代理协作完成复杂任务有一次我需要做一个比较复杂的任务分析一个开源项目的架构生成一份 PPT 报告同时把项目跑起来做功能验证。我对 SolonCode 说分析一下这个项目的架构生成一份架构分析 PPT然后把项目跑起来验证核心功能。SolonCode 的主代理迅速做了任务拆解┌─→ explore 子代理: 分析项目结构、核心模块、依赖关系 ├─→ plan 子代理: 规划 PPT 的大纲和内容结构 └─→ bash 子代理: 准备运行环境安装依赖explore 子代理分析完后把结果交给 plan 子代理。plan 子代理基于分析结果生成 PPT 大纲再交给 general 子代理填充内容并生成最终文件。同时 bash 子代理在另一个线程里默默地把项目跑起来了。整个过程大约 5 分钟如果手动做至少需要一个小时。而且因为心智记忆的存在SolonCode 已经知道我对 PPT 的风格偏好简洁、技术导向生成的报告格式直接就是我能用的。场景四Web 模式的语音交互有一次我在手机上通过微信通道和 SolonCode 对话。开会的时候不方便打字就直接按住语音说帮我看看今天 CI 跑失败了没有如果失败了帮我看下日志。SolonCode 收到语音后自动转文字然后调用 bash 子代理查看 CI 状态。发现确实失败了又自动分析了日志找到失败原因然后把修复建议通过微信发回来。整个过程我只需要说一句话。场景五记忆的整合与顿悟经过长时间使用我发现 SolonCode 的回答质量明显提升了。有一天我好奇地查看了记忆文件发现它已经积累了大量的高层认知用户偏好使用注解式开发避免 XML 配置项目采用分层架构Service 层负责业务逻辑团队使用 Solon MyBatis-Plus 技术栈前后端分离这些都是通过 consolidate 操作从数十次对话的碎片记忆中整合出来的。我从来没有一次性告诉过它这些总结性的结论它是自己悟出来的。这种体验很奇妙。就像一个新同事慢慢变成了老搭档不需要你反复交代他就知道怎么做。十、安装与快速开始看到这里如果你也想体验 SolonCode CLI 的心智记忆功能以下是安装步骤安装# Mac / Linux: curl -fsSL https://solon.noear.org/soloncode/setup.sh | bash # Windows (PowerShell): irm https://solon.noear.org/soloncode/setup.ps1 | iex配置安装完成后编辑配置文件~/soloncode/config.yml主要配置models部分即你要使用的 AI 模型和 API 地址。启动# 在任意目录即你的工作区下启动 CLI 模式 soloncode # 启动 Web 模式默认端口 4808 soloncode web # 启动 Web 模式指定端口 soloncode web 1212试试心智记忆启动后试试这样对话User 你好。我这个项目用的是 Solon 框架和 MyBatis-Plus数据库是 MySQL 8.0。 我们团队喜欢用驼峰命名代码要有充分的注释。 第一次对话结束输入 /exit 退出 重新启动 soloncode User 帮我写一个用户管理的增删改查接口你会发现第二次对话中SolonCode 已经自动想起了你的技术栈和编码偏好生成的代码完全符合你的风格。十一、写在最后回到文章开头那个痛点——每次对话都要重新交代背景。SolonCode 的心智记忆功能给出了一个漂亮的解决方案。它不是简单的记住你说的话而是一个完整的认知系统自动提取、分级存储、语义搜索、认知整合、主动遗忘。这些能力组合在一起让 AI 编程助手真正实现