SolonCode CLI:全中文终端编码智能体,新增多项功能并具备心智记忆能力
1、关于 SolonCode CLI(终端编码智能体)
SolonCode CLI 是由杭州无耳科技有限公司构建的企业级“终端编码智能体”,基于“全中文”提示词构建。
常见问题:它和 Claude Code 有什么不同?
功能上二者很相似,关键差异如下:采用 Java 实现,提供基于 Java 的扩展能力,100% 开源;使用“全中文”提示词构建(若不会中文,不建议使用);不绑定特定提供商,需要配置模型。因模型迭代会缩小差异、降低成本,所以保持自由配置很重要;聚焦终端命令行界面 (CLI)、浏览器界面(WEB),通过系统命令运行;支持 MCP,OpenApi,LSP,ACP 等协议进行通讯。
开源项目地址:https://gitee.com/opensolon/soloncode;https://github.com/opensolon/soloncode
2、快速安装与开始
系统要求:Java 8+(支持 Java 8 到 Java 26 环境);支持 macOS、Linux、Windows。
安装或更新命令(安装包自动下载约 32MB):
# Mac / Linux:
curl -fsSL https://solon.noear.org/soloncode/setup.sh * bash
# Windows (PowerShell):
irm https://solon.noear.org/soloncode/setup.ps1 * iex
快速安装与更新演示:
3、最近更新说明
新增 soloncode 心智成长功能(越用越聪明);新增 soloncode `/loop` 循环命讼(可起到任务守护作用);新增 soloncode web 附件上传功能和语音输入功能;新增 soloncode web 交互界面多模型选择功能;新增 soloncode cli 交互界面多模型选择功能;新增 soloncode java 扩展机制(支持手动配置,与自动装配);添加 soloncode openai baseUrl 配置支持(其它的仍要配置全地址);添加 soloncode commands 命令支持;添加 soloncode web 会话缩进支持;添加 soloncode userAgent 缺省配置(不需要每个 llm 都配置了);优化 soloncode `code` skill (增加更多编程语言支持);优化 soloncode 可能意外退出的提示输出;优化 soloncode web tool - call 打印;优化 soloncode cli 安全引导词;优化 soloncode deepseek - v4 适配;修复 soloncode 多模态格式拼接错误问题。
4、新特性:心智记忆(心智成长)
Memory(心智记忆)是 SolonCode 的长期认知系统。它在对话过程中自动提取关键信息并持久化存储,让 AI 在后续会话中能“记住”用户的偏好、项目约定和历史上下文,用得越多,理解越精准。
4.1、核心架构
用户对话
│
▼
Agent 推理(LLM 自动判断是否需要记忆操作)
│
├── extract ──-> 发现新事实?存入记忆(key 已存在则触发认知对比)
├── recall ──-> 需要“回忆”某条具体记忆?按 key 精确召回
├── search ──-> 需要查找相关背景?语义搜索匹配记忆
├── consolidate ──-> 碎片太多?合并多条低层记忆为一条高层认知
└── prune ──-> 记忆过时?直接删除
│
▼
MemorySolution
├── MemoryStoreProvider ──-> RogueMap 本地 KV 持久化
└── MemorySearchProvider ──-> Lucene 全文语义索引
整个记忆系统作为 Agent 的“内置技能(Skill)”运行,LLM 在推理过程中自主决定何时读取或写入记忆,无需用户手动操作。
4.2、存储结构
记忆数据保存在本地,默认所有项目共享一份统一记忆:
~/.soloncode/memory/
├── lucene/ # Lucene 全文索引(语义搜索用)
│ ├── _0.cfe
│ ├── _0.cfs
│ └── ...
└── rogue/ # RogueMap KV 数据库(精确存取用)
└── ...
隔离模式
通过配置 `memoryIsolation` 控制记忆是全局共享还是项目隔离:
| 配置值 | 存储路径 | 说明 |
|---|---|---|
| `false`(默认) | `~/.soloncode/memory/` | 所有项目共享一份记忆,跨项目积累认知 |
| `true` | ` /.soloncode/memory/` | 每个工作区独立记忆,项目间互不干扰 |
配置位置:`.soloncode/config.yml`
memoryIsolation: false # 长记忆是否工作区隔离
4.3、使用效果示例
# 第一次对话
用户: 我这个项目用的是 MyBatis - Plus,不要给我用 JPA
助手: 好的,我记住了。
[自动 extract] key = user_orm_preference, fact = "项目使用 MyBatis - Plus,不使用 JPA", importance = 7
# 第二次对话(新会话)
用户: 帮我写一个用户查询接口
助手: [自动 search "用户ORM偏好"] -> 命中 "项目使用 MyBatis - Plus"
好的,我使用 MyBatis - Plus 的 QueryWrapper 来实现...
# 第三次对话
用户: 我们团队决定统一用 Solon 框架了
助手: [自动 extract] key = user_framework, fact = "团队统一使用 Solon 框架", importance = 9
[自动 recall user_orm_preference] -> 发现相关偏好
了解。后续我会基于 Solon + MyBatis - Plus 的组合来给你建议。
# 多次对话后...
[自动 consolidate]
碎片: user_orm_preference, user_framework, user_code_style...
↓ 合并为
高层认知: user_tech_stack = "团队使用 Solon + MyBatis - Plus 技术栈,偏好注解式开发"
4.4、设计哲学
Memory 的核心设计理念来自认知科学:提取(Extract):模拟“注意到并记住”——从对话中识别值得保存的信息;召回(Recall):模拟“想起来”——精确回忆已知事实;搜索(Search):模拟“联想”——通过语义关联找到相关记忆;整合(Consolidate):模拟“顿悟”——将零散知识点升维为高层认知;修剪(Prune):模拟“遗忘”——清理过时信息,保持记忆库精简。
这个过程完全自动化。用户只需正常对话,AI 会在背后持续积累和演化对用户的理解,越用越聪明。
