Solon v3.10.0

四个记忆文件及工作区结构

</> markdown
2026年3月30日 上午10:53:02

SolonCode CLI 使用四个核心文件管理智能体属性、行为和状态。

文件描述备注
config.yml智能体的属性配置用户定义
AGNETS.md智能体的画像定义(会成为系统提示词的一部分)用户定义
CLAUDE.md工作区编码状态文件(兼容 claude code 规范)动态生成与维护
TODO.md工作区会话任务清单文件动态生成与维护

具体文件分布:

文件说明
~/.soloncode/bin/config.yml全局默认
~/.soloncode/bin/AGNETS.md全局默认
.soloncode/config.md工作区配置,可选(如果有,则替代默认)
.soloncode/AGNETS.md工作区配置,可选(如果有,则替代默认)
.soloncode/sessions/*/TODO.md工作区“会话”任务清单文件,一个工作区也能启动多个会话(动态生成与维护)
CLAUDE.md工作区编码状态文件,编码项目才会自动出现(动态生成与维护)

config.yml 配置参考上面的:《config.yml 配置详解》

1、AGENTS.md — 智能体定义

位置: ~/.soloncode/bin/AGENTS.md(默认),或者 .soloncode/AGENTS.md(工作区)

作用: 定义 AI 的身份、性格、行为规则。会成为系统提示词的一部分。

首次安装默认内容:

# AI 管家工作规范

## 身份设定

- **名字**:小花
- **角色**:一个可爱的小甜甜。


## 核心规则 (Action Logic)

1. **先思后行**:你采用"先思后行"的决策机制。
2. **严禁伪造**:禁止在回复中模拟或伪造工具的执行过程。
3. **自然回复**:任务完成后,请以自然语言直接回复(不要有表情符),无需输出 `Final Answer:` 等标签。

自定义建议:

  • 控制在 200 行以内(减少上下文占用)
  • 定义清晰的角色和职责
  • 添加领域相关的知识和规则
  • 设置任务执行的工作流程

示例:专业 Java 开发助手

# Java 开发专家

## 身份设定

- **名字**:JavaMaster
- **角色**:资深的 Java 架构师和开发者

## 技术栈

- 框架:Solon、Spring Boot
- 数据库:MySQL、PostgreSQL
- 缓存:Redis
- 消息队列:RocketMQ、Kafka

## 工作规范

1. 编写代码前先分析需求
2. 遵循阿里巴巴 Java 开发规范
3. 关键代码添加单元测试
4. 提交前进行代码审查

2、CLAUDE.md — 工作区状态(兼容 Claude Code 规范)

位置: 项目根目录 ./CLAUDE.md

作用: 记录项目的构建、测试、运行指令。兼容 Claude Code 规范。

内容示例:

# CLAUDE.md

## Build and Test Commands

### Root Project (Maven)
- Build: `mvn clean compile`
- Test all: `mvn test`
- Test single: `mvn test -Dtest=ClassName` (Replace with actual class)

### Sub-modules / Sub-projects
- soloncode-cli: Maven module. Controlled by root project commands.
- solonclaw: Maven module. Controlled by root project commands.
- soloncode-web: Maven module. Controlled by root project commands.
### Module: soloncode-desktop (Node)
- Install: `cd soloncode-desktop && npm install`
- Build: `cd soloncode-desktop && npm run build`
- Test: `cd soloncode-desktop && npm test`

- soloncode-core: Maven module. Controlled by root project commands.
- soloncode-parent: Maven module. Controlled by root project commands.

## Guidelines

- **Read-Before-Edit**: Always read the full file content before applying any changes.
- **Atomic Work**: Implement one feature/fix at a time.
- **Verification**: Run tests before considering a task complete.
- **Path Usage**: Use relative paths only (e.g., `src/main.java`, NOT `./src/main.java`).
- **Style**: Follow existing patterns in the codebase.

特点:

  • 由 AI 动态生成和维护
  • 随项目变化自动更新
  • 确保 AI 更好的理解项目上下文

3、TODO.md — 任务清单

位置: .soloncode/sessions/{session-id}/TODO.md

作用: 跟踪当前会话的任务进度。每个子代理会话,也可能会有自己的 TODO.md

内容示例:

# 任务清单

## 进行中

- [/] 实现用户登录功能

## 待办

- [ ] 添加登录表单验证
- [ ] 实现 JWT Token 生成
- [ ] 编写登录单元测试

## 已完成

- [x] 创建用户实体类
- [x] 配置数据库连接

状态标记:

标记含义
[ ]待办
[/]进行中(全局唯一)
[x]已完成

特点:

  • 由 AI 自动维护
  • 支持任务分解和状态追踪
  • 复杂任务时自动启用

4、工作区目录结构

project-root/
+-- CLAUDE.md                    # 工作区状态文件
+-- .soloncode/
|   +-- config.yml               # 智能体的属性配置
|   +-- AGENTS.md                # 智能体的画像定义
|   +-- sessions/                # 会话记录目录
|   |   +-- default/             # 默认会话
|   |   |   +-- TODO.md          # 任务清单
|   |   |   +-- default.messages.ndjson  # 会话消息记录
|   |   |   +-- default.snapshot.json    # 工作区快照
|   |   +-- feature-x/           # 其他会话
|   +-- agents/                  # 子代理配置
|   |   +-- bash.md              # Bash 代理
|   |   +-- explore.md           # 探索代理
|   +-- skills/                  # 工作区技能
|       +-- my-custom-skill/
|           +-- SKILL.md
+-- skills/                      # 第三方技能(可选)
+-- .claude/                     # Claude Code 目录(兼容)
|   +-- skills/
+-- .opencode/                   # OpenCode 目录(兼容)
    +-- skills/

5、会话管理

每个会话独立存储:

  • 消息记录:完整的对话历史
  • 快照:当前工作区状态
  • 任务清单:待办和已完成事项

可以切换不同会话,实现任务隔离:

# 会话由启动目录自动识别
cd project-a && soloncode   # 会话 A
cd project-b && soloncode   # 会话 B