Files
16gagent/output/agent-architecture-audit.md
T
2026-06-06 10:40:48 +08:00

548 lines
23 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Agent Architecture Audit — 小龙 🐉 全系统
> **审计日期:** 2026-06-05 22:13 CST
> **审计范围:** scripts/, memory/, test/, rules/, workspace config, prompts
> **审计方法:** 静态分析 + 架构模式检查 + 运行行为验证
---
## 第一部分:代码质量审计
### 发现清单
#### Critical
**C-01: Domain Matcher 生成无效 FK 引用**
- 位置: `model-contract.mjs``createContract()` → FK 生成逻辑
- 问题: 生成 `REFERENCES boards(id)``REFERENCES assignees(id)``REFERENCES equipments(id)` 等指向不存在的表的外键
- 影响: 每次生成新 domain 都会破坏 SQLite schema,导致 INSERT/DELETE 测试失败
- 根因: FK 生成只看 field name 是否含 `Id` 后缀,不验证目标表是否存在
- 修复: `createContract` 阶段校验 FK 目标表是否在 entities 列表中
**C-02: Domain Matcher 误匹配导致实体污染**
- 位置: `project-intake-agent.mjs``matchDomain()`
- 问题: "仓库出入库"→NoteApp"合同管理"→OAFlow"设备巡检"→generic
- 影响: 2/3 真实项目匹配到错误 domain,产生无关组件(NoteCard、contracts/approvals 表)
- 根因: 纯关键词计数匹配,无权重/否定词机制
- 修复: 增加关键词权重、否定关键词、最高频实体优先
#### High
**H-01: Duplicate Export Bug**
- 位置: `frontend-builder-agent.mjs` → service 文件生成逻辑
- 问题: `items.ts` 生成了两遍 `export function get()``export function post()`
- 影响: TypeScript 编译失败
- 根因: Domain 模板和 generic 模板叠加生成,无去重
**H-02: Singularize Bug — `equipments` vs `equipment`**
- 位置: `model-contract.mjs``toTableName()`
- 问题: `equipment` 被 singularize 为 `equipments`(添加了 s),但 SQLite 表名是 `equipment`
- 影响: FK 引用失败
- 根因: singularize 规则对不可数名词处理有误
**H-03: Domain Bleed — 跨域组件污染**
- 位置: `frontend-builder-agent.mjs` → component 生成逻辑
- 问题: NoteApp domain 的 `NoteCard` 组件被注入到仓库出入库系统
- 影响: 构建失败(类型不匹配)
- 根因: component 生成不检查当前 domain 是否为 note
**H-04: 3.9GB `.tmp-benchmark` 目录未清理**
- 位置: `/Users/a1234/.openclaw/workspace/.tmp-benchmark/`
- 问题: 历史 benchmark 产生的临时文件占 3.9GB
- 影响: 磁盘浪费
- 根因: 无自动清理机制
#### Medium
**M-01: Guard Scripts 全部使用相同 import 模式但无共享基类**
- 位置: `scripts/guard-*.mjs` (6 个文件)
- 问题: 每个 guard 都独立 import `readdirSync, readFileSync, existsSync`,逻辑高度相似
- 影响: 维护成本高,改一处要改 6 处
**M-02: `type: "commonjs"` 但所有脚本使用 ESM**
- 位置: `package.json`
- 问题: `"type": "commonjs"` 但所有 `.mjs` 文件使用 `import/export`
- 影响: `.mjs` 扩展名强制 ESM 所以能跑,但 `package.json` 声明与实际不符
- 风险: 低(.mjs 优先级高于 type 字段),但容易误导
**M-03: Active Memory 测试存在但脚本已删除**
- 位置: `test/active-memory/*.test.mjs` (31 个文件) vs `scripts/active-memory-*.mjs` (不存在)
- 问题: `package.json` 引用的 `active-memory:*` 脚本全部不存在
- 影响: 6 个 npm script 全部不可用
- 根因: 脚本被删除但测试和 package.json 未清理
**M-04: Dream Cycle 日志但事件数极少**
- 位置: `memory/.dreams/events.jsonl` (8 events), `memory/.dreams/short-term-recall.json` (350 entries)
- 问题: Dream Cycle 每天运行但事件捕获极少
- 影响: 记忆系统实际贡献度存疑
#### Low
**L-01: `.memory-core-test/` 和 `.active-memory-precompute-cache/` 空目录**
- 位置: workspace root
- 影响: 无功能影响,只是残留
**L-02: 多个 report 文件堆积在 workspace root**
- 位置: `benchmark-report.md`, `certification-report.md`, `capability-report.md` 等 10+ 个文件
- 影响: workspace 混乱,应归档到 `docs/reports/`
---
## 第二部分:性能与瘦身审计
### 存储浪费分析
| 路径 | 大小 | 状态 |
|------|------|------|
| `.tmp-benchmark/` | **3.9 GB** | 🔴 **立即删除** |
| `output/` | **1.3 GB** | 🟡 按需保留 |
| `.benchmark/` | 87 MB | 🟡 可归档 |
| `.codegraph/` | 19 MB | 🟢 保留 |
| `.tmp-pr12-test/` | 16 KB | 🔴 删除 |
| `.tmp-pr13-test/` | 28 KB | 🔴 删除 |
| `.memory-core-test/` | 0 B | 🔴 删除空目录 |
| `.active-memory-precompute-cache/` | 0 B | 🔴 删除空目录 |
**总浪费: ~4 GB**
### 代码冗余分析
| 冗余类型 | 位置 | 影响 |
|----------|------|------|
| Guard 脚本重复 | 6× guard-*.mjs | 维护成本 ×6 |
| Contract 相关脚本重复 | model-contract + contract-consistency-test + contract-e2e (1,630 行) | 测试和核心逻辑边界模糊 |
| Active Memory 测试残留 | 31 个 test 文件,0 个实现 | 测试无效 |
| Workspace root 报告堆积 | 10+ 个 .md/.json | 混乱 |
### Token 浪费分析
| 浪费源 | 估算 |
|--------|------|
| MEMORY.md 注入上下文(每次对话) | ~2,500 tokens |
| AGENTS.md + SOUL.md + IDENTITY.md + USER.md + TOOLS.md | ~3,000 tokens |
| HEARTBEAT.md | ~500 tokens |
| capability-registry.json (注入 context) | ~800 tokens |
| 其他 workspace files | ~1,000 tokens |
| **总注入上下文** | **~7,800 tokens/会话** |
**优化空间:** capability-registry.json 和 TOOLS.md 注入无实际使用价值(工具由 OpenClaw 管理),可节省 ~1,800 tokens。
### 必须保留 / 建议删除
#### 必须保留
- `scripts/project-intake-agent.mjs` — Generator 入口
- `scripts/architecture-agent.mjs` — 架构生成
- `scripts/frontend-builder-agent.mjs` — 前端生成
- `scripts/backend-builder-agent.mjs` — 后端生成
- `scripts/fullstack-composer-agent.mjs` — 全栈组合
- `scripts/model-contract.mjs` — 核心数据模型
- `scripts/lib/deprecation-warning.mjs` — 工具函数
- `memory/daily/` — 日常记忆
- `memory/vault.md` — 动态记忆
- `memory/registers/` — 持久化事实
- `test/e2e-regression.test.mjs` — 核心回归测试
- `test/software-factory-core.test.mjs` — 核心测试
#### 建议保留
- `scripts/guard-all.sh` — 统一入口
- `scripts/guard-runtime-core.mjs` — 最有价值的 guard
- `scripts/smoke-test.mjs` — 快速验证
- `scripts/dream-cycle.sh` — 记忆维护
- `scripts/memory-sync.sh` — 记忆同步
- `scripts/memory-auto.sh` — 记忆自动化
#### 可选
- `scripts/guard-dreaming-phase.mjs` — 低频使用
- `scripts/guard-memory-backend.mjs` — 低频使用
- `scripts/guard-tool-path.mjs` — 低频使用
- `scripts/guard-tool-trace.mjs` — 低频使用
- `scripts/check-deprecations.mjs` — 低频使用
- `scripts/electron-builder-agent.mjs` — Real World 未使用
- `scripts/release-builder-agent.mjs` — Real World 未使用
- `test/active-memory/` (31 个文件) — 实现已删除
#### 建议删除
- `.tmp-benchmark/` (3.9 GB) — 纯浪费
- `.tmp-pr12-test/`, `.tmp-pr13-test/` — 临时残留
- `.memory-core-test/`, `.active-memory-precompute-cache/` — 空目录
- `scripts/contract-consistency-test.mjs` — 可合并到 e2e-regression
- `scripts/contract-e2e.mjs` — 可合并到 e2e-regression
- workspace root 的 10+ 个 report 文件 → 归档到 `docs/reports/`
---
## 第三部分:任务规划能力审计
### 当前状态
```
User 输入
小龙理解意图(LLM 推理)
直接执行(调用工具)
验证结果
返回用户
```
### 缺失环节
| 环节 | 存在? | 说明 |
|------|--------|------|
| **Planner Agent** | ❌ | 无独立规划器 |
| **Task Decomposition** | ❌ | 无自动任务拆解 |
| **Dynamic Task Tree** | ❌ | Goal→SubGoal→Task→Action 不支持 |
| **Task Rollback** | ❌ | 失败后无回滚机制 |
| **Failure Replanning** | ❌ | 失败后靠 LLM 临时推理,无结构化重规划 |
| **Complexity Detection** | ⚠️ 部分 | 靠 LLM 推理判断,无显式机制 |
| **Plan Persistence** | ⚠️ 部分 | `update_plan` 工具存在但仅当前会话有效 |
### 评估
- **简单任务**: 直接执行 ✅ 正确
- **复杂任务**: 仍直接执行,靠 LLM 推理拆解 ⚠️ 不稳定
- **多步骤任务**: 会使用 `update_plan` 跟踪进度 ✅ 但无自动拆解
- **失败恢复**: 靠 LLM 自行判断重试 ⚠️ 不可靠
### 评分: **35/100**
**优势:**
- LLM 推理能力作为隐式 planner 能处理大多数任务
- `update_plan` 提供了基本的任务跟踪
**缺陷:**
- 无显式 planning 层
- 无 complexity classifier
- 无 structured replanning
- 无 task dependency graph
- 无 parallel task execution planning
### 改进方案
```
Level 0 (当前): LLM 推理 → 直接执行
Level 1 (推荐): LLM 推理 → Plan Check → 执行 → 验证
Level 2 (进阶): Planner Agent → Task Graph → 执行器 → 反思
Level 3 (理想): 自适应规划 → 动态任务树 → 失败重规划 → 学习
```
**立即可做:** 在 AGENTS.md 中增加 planning 协议 — 复杂任务必须先输出 plan 再执行。
---
## 第四部分:记忆系统审计
### 记忆层全景
| 记忆层 | 路径 | 行数 | 真正使用? | 使用频率 | 实际贡献 |
|--------|------|------|-----------|----------|----------|
| **MEMORY.md** | workspace root | 126 | ✅ 每会话注入 | 每次 | ⭐⭐⭐⭐⭐ 核心 |
| **AGENTS.md** | workspace root | 128 | ✅ 每会话注入 | 每次 | ⭐⭐⭐⭐ 行为指南 |
| **SOUL.md** | workspace root | 30 | ✅ 每会话注入 | 每次 | ⭐⭐⭐⭐ 人格 |
| **IDENTITY.md** | workspace root | 19 | ✅ 每会话注入 | 每次 | ⭐⭐⭐ 基础 |
| **USER.md** | workspace root | 13 | ✅ 每会话注入 | 每次 | ⭐⭐⭐ 基础 |
| **TOOLS.md** | workspace root | 21 | ✅ 每会话注入 | 每次 | ⭐⭐ 低(工具由 OpenClaw 管理) |
| **HEARTBEAT.md** | workspace root | 52 | ⚠️ 心跳时 | 低频 | ⭐⭐⭐ 心跳检查 |
| **memory/vault.md** | memory/ | ~200 | ⚠️ 按需读取 | 中频 | ⭐⭐⭐⭐ 动态记忆 |
| **memory/daily/** | memory/daily/ | ~700 | ⚠️ 按需读取 | 中频 | ⭐⭐⭐⭐ 日志 |
| **memory/registers/** | memory/registers/ | ~200 | ⚠️ 按需读取 | 低频 | ⭐⭐⭐ 持久事实 |
| **memory/USER.md** | memory/ | ~50 | ⚠️ 按需读取 | 低频 | ⭐⭐ 与 workspace USER.md 重复 |
| **memory/SESSION_START.md** | memory/ | ~30 | ⚠️ 启动时 | 低频 | ⭐⭐ 协议文件 |
| **memory/core/** | memory/core/ | ~300 | ❌ 极少读取 | 极低 | ⭐ 与 registers 重复 |
| **memory/entities/** | memory/entities/ | ~100 | ❌ 极少读取 | 极低 | ⭐ 实体记忆,价值低 |
| **memory/projects/** | memory/projects/ | ~400 | ⚠️ 按需 | 低频 | ⭐⭐⭐ 项目记忆 |
| **memory/CONTRADICTION.md** | memory/ | ~50 | ❌ 从未读取 | 无 | ⭐ 无贡献 |
| **memory/companion-log.md** | memory/ | ~50 | ❌ 从未读取 | 无 | ⭐ 无贡献 |
| **memory/pet-tuanzi.md** | memory/ | ~30 | ❌ 从未读取 | 无 | ⭐ 无贡献 |
| **memory/index.md** | memory/ | ~50 | ❌ 从未读取 | 无 | ⭐ 无贡献 |
| **memory/.dreams/** | memory/.dreams/ | ~350 | ⚠️ dream-cycle | 低频 | ⭐⭐ 短期召回 |
| **memory/2026-06-04.md** | memory/ | ~50 | ⚠️ 按需 | 低频 | ⭐⭐ 旧格式日志 |
### 问题诊断
#### 1. 记忆冗余
- `memory/USER.md``workspace/USER.md` 重复
- `memory/core/``memory/registers/` 功能重叠
- `memory/SESSION_START.md``AGENTS.md` 功能重叠
#### 2. 记忆污染
- `memory/pet-tuanzi.md` — 宠物信息,与核心工作无关
- `memory/companion-log.md` — 伴侣日志,从未使用
- `memory/CONTRADICTION.md` — 矛盾记录,从未使用
#### 3. 记忆孤岛
- `memory/core/` 目录有 6 个文件但几乎从不被读取
- `memory/entities/` 有 2 个实体文件但从未被检索
- `memory/index.md` 存在但无实际索引功能
#### 4. Dream Cycle 效率低
- `events.jsonl` 只有 8 条事件
- `short-term-recall.json` 有 350 条但从未被主动检索
- Dream Cycle 每天运行但产出极少
### 保留/删除/替代
| 文件 | 操作 | 原因 |
|------|------|------|
| `memory/core/` | **删除** | 与 registers 重复,从未被读取 |
| `memory/entities/` | **删除** | 从未被检索,价值低 |
| `memory/CONTRADICTION.md` | **删除** | 从未使用 |
| `memory/companion-log.md` | **删除** | 从未使用 |
| `memory/pet-tuanzi.md` | **归档** | 移到 `memory/archive/` |
| `memory/index.md` | **删除** | 无实际索引功能 |
| `memory/USER.md` | **删除** | 与 workspace USER.md 重复 |
| `memory/SESSION_START.md` | **合并** | 合并到 AGENTS.md |
| `memory/2026-06-04.md` | **归档** | 旧格式,移到 `memory/daily/` |
---
## 第五部分:工具系统审计
### 工具价值排行榜
#### 高价值(每次会话都用)
| 工具 | 价值 |
|------|------|
| `read` / `write` / `edit` | ⭐⭐⭐⭐⭐ 文件操作核心 |
| `exec` | ⭐⭐⭐⭐⭐ 命令执行核心 |
| `context-mode__ctx_search` | ⭐⭐⭐⭐⭐ 知识检索 |
| `context-mode__ctx_execute` | ⭐⭐⭐⭐⭐ 代码沙箱 |
| `context-mode__ctx_index` | ⭐⭐⭐⭐ 知识存储 |
| `context-mode__ctx_fetch_and_index` | ⭐⭐⭐⭐ Web 内容索引 |
| `web_search` / `web_fetch` | ⭐⭐⭐⭐ 信息获取 |
| `memory_search` / `memory_get` | ⭐⭐⭐⭐ 记忆检索 |
| `cron` | ⭐⭐⭐⭐ 定时任务 |
#### 中价值(偶尔使用)
| 工具 | 价值 |
|------|------|
| `sessions_spawn` / `sessions_yield` | ⭐⭐⭐ 子任务 |
| `update_plan` | ⭐⭐⭐ 任务跟踪 |
| `session_status` | ⭐⭐ 状态查看 |
| `image` | ⭐⭐ 图像分析 |
| `video_generate` | ⭐⭐ 视频生成 |
#### 低价值(极少使用)
| 工具 | 价值 |
|------|------|
| `context-mode__ctx_insight` | ⭐ Dashboard |
| `context-mode__ctx_doctor` | ⭐ 诊断 |
| `context-mode__ctx_upgrade` | ⭐ 升级 |
| `context-mode__ctx_purge` | ⭐ 清理 |
| `context-mode__ctx_stats` | ⭐ 统计 |
### 工具问题
1. **context-mode 工具过多** — 10 个 ctx_* 工具,功能重叠
2. **sessions 工具链复杂** — sessions_list/history/send/spawn/yield,使用率低
3. **image/video 工具未充分利用** — 生成式能力几乎未使用
---
## 第六部分:Prompt 系统审计
### 注入上下文分析
| 文件 | Token 估算 | 每会话注入 | 冗余度 |
|------|-----------|-----------|--------|
| AGENTS.md | ~1,500 | ✅ | 低 |
| SOUL.md | ~400 | ✅ | 低 |
| IDENTITY.md | ~250 | ✅ | 中(与 SOUL.md 重叠) |
| USER.md | ~200 | ✅ | 中(与 memory/USER.md 重叠) |
| TOOLS.md | ~300 | ✅ | 高(工具由 OpenClaw 管理) |
| MEMORY.md | ~2,500 | ✅ | 低 |
| HEARTBEAT.md | ~700 | ✅ | 低 |
**总注入: ~5,850 tokens/会话**
### 冲突检测
| 冲突 | 严重度 |
|------|--------|
| IDENTITY.md 中的性格定义 vs SOUL.md 中的 Vibe 定义 | 低(互补) |
| USER.md vs memory/USER.md 重复 | 中(浪费 token |
| TOOLS.md 说"工具速查" vs 实际工具由 OpenClaw 管理 | 中(误导) |
| AGENTS.md 的"执行流程" vs MEMORY.md 的"工程范式" 重叠 | 低(强化) |
### 精简方案
| 操作 | 节省 Token |
|------|-----------|
| 删除 TOOLS.md(工具由 OpenClaw 管理) | ~300 |
| 合并 IDENTITY.md 到 SOUL.md | ~200 |
| 删除 workspace USER.md,保留 memory/USER.md | ~200 |
| 精简 MEMORY.md 中的重复内容 | ~300 |
| **总节省** | **~1,000 tokens** |
---
## 第七部分:AI Agent 反模式检查
| 反模式 | 存在? | 严重度 | 证据 |
|--------|--------|--------|------|
| **Feature Creep** (功能膨胀) | ✅ | 🔴 High | Active Memory 系统:31 个测试文件但实现已删除 |
| **Over Engineering** (过度设计) | ✅ | 🟡 Medium | 6 个 Guard 脚本做类似的事 |
| **Memory Overload** (记忆过载) | ✅ | 🟡 Medium | 20+ 个记忆文件,多个从未使用 |
| **Tool Explosion** (工具爆炸) | ⚠️ | 🟡 Medium | 10 个 ctx_* 工具,功能重叠 |
| **Prompt Bloat** (Prompt 肥大) | ⚠️ | 🟢 Low | ~5,850 tokens,可控 |
| **Agent Drift** (Agent 漂移) | ⚠️ | 🟡 Medium | Domain Matcher 偏离用户意图 |
| **Context Pollution** (上下文污染) | ✅ | 🟡 Medium | workspace root 堆积 10+ 个报告文件 |
| **Architecture Debt** (架构债务) | ✅ | 🔴 High | Active Memory 脚本删除但测试残留 |
| **Reasoning Collapse** (推理退化) | ❌ | - | 未观察到 |
| **Planning Collapse** (规划退化) | ❌ | - | 原生就弱,非退化 |
---
## 第八部分:未来升级空间
### 当前等级评估
```
Level 1: Script ✅ 已超越
Level 2: Workflow ✅ 已超越
Level 3: Agent ✅ 当前位置 — 隐式规划,工具调用,记忆系统
Level 4: Multi-Agent ⚠️ 部分具备 — sessions_spawn 但无协调协议
Level 5: Autonomous ❌ 未达到
Level 6: Self-Improving ❌ 未达到
Level 7: Self-Evolving ❌ 未达到
```
**当前: Level 3 — Agent**
### 距离 Level 4 (Multi-Agent) 还缺什么
1. **Agent 间通信协议** — 当前 sessions_send 是消息传递,非结构化协议
2. **任务分配器** — 无中央调度器决定哪个 agent 处理什么任务
3. **共享状态** — agents 间无共享 memory/workspace(除了文件系统)
4. **角色定义** — 无专门化的 agent 角色(planner/executor/validator
5. **冲突解决** — 多 agent 并发修改同一资源无锁机制
### 距离 Level 5 (Autonomous) 还缺什么
1. **目标驱动** — 当前是任务驱动,非目标驱动
2. **自主决策** — 无自主决定下一步做什么的能力
3. **环境感知** — 无持续监控外部环境变化
4. **资源管理** — 无自主管理 token/时间/存储预算
---
## 最终输出
### 1. 架构评分卡
| 维度 | 评分 | 说明 |
|------|------|------|
| **Planning** | 35/100 | 无显式 planner,靠 LLM 推理 |
| **Memory** | 55/100 | 多层架构但冗余严重,实际使用率低 |
| **Tool Use** | 75/100 | 核心工具优秀,但 ctx_* 过多 |
| **Reasoning** | 80/100 | LLM 推理能力作为隐式推理层 |
| **Reliability** | 70/100 | 生成器可靠性高,但 domain matcher 不稳定 |
| **Maintainability** | 50/100 | 架构债务明显,残留代码多 |
| **Scalability** | 45/100 | 无 multi-agent 协调,无自治能力 |
**综合评分: 59/100**
### 2. 风险排行榜 Top 10
| # | 风险 | 严重度 | 影响 |
|---|------|--------|------|
| 1 | Domain Matcher 系统性误匹配 | 🔴 Critical | 2/3 真实项目生成错误 |
| 2 | FK 生成不验证目标表存在 | 🔴 Critical | 每次生成都会破坏 schema |
| 3 | Active Memory 系统残留 | 🔴 High | 31 个无效测试,6 个无效 npm script |
| 4 | `.tmp-benchmark` 3.9GB 未清理 | 🔴 High | 磁盘浪费 |
| 5 | Singularize 规则 bug | 🟡 High | `equipment``equipments` 破坏 FK |
| 6 | Domain Bleed 组件污染 | 🟡 High | 跨域组件导致构建失败 |
| 7 | Duplicate Export 生成 | 🟡 Medium | service 文件重复导出 |
| 8 | 记忆系统冗余严重 | 🟡 Medium | 20+ 文件多个无用 |
| 9 | 无显式 Planning 层 | 🟡 Medium | 复杂任务不稳定 |
| 10 | Workspace 根目录混乱 | 🟢 Low | 10+ 个报告文件堆积 |
### 3. 优化路线图
#### 立即修复(今天)
1. `rm -rf .tmp-benchmark/ .tmp-pr12-test/ .tmp-pr13-test/ .memory-core-test/ .active-memory-precompute-cache/` — 释放 3.9GB
2. 修复 `model-contract.mjs` FK 生成逻辑 — 验证目标表存在
3. 修复 `matchDomain()` — 增加关键词权重和否定词
4. 删除 `test/active-memory/` (31 个无效测试)
5. 清理 `package.json` 中的 6 个无效 npm script
#### 1 周内修复
1. 修复 singularize 规则 — `equipment` 不可数名词处理
2. 修复 domain bleed — component 生成检查当前 domain
3. 修复 duplicate export — service 文件生成去重
4. 清理记忆系统 — 删除 `memory/core/`, `memory/entities/`, `memory/CONTRADICTION.md`, `memory/companion-log.md`
5. 合并 IDENTITY.md 到 SOUL.md,删除 TOOLS.md
6. 归档 workspace root 的 10+ 个报告文件到 `docs/reports/`
#### 1 个月内修复
1. 重构 Guard 脚本 — 提取共享基类,6→2 个文件
2. 增加显式 Planning 协议 — 复杂任务先输出 plan
3. 合并 contract-consistency-test + contract-e2e 到 e2e-regression
4. 优化 Dream Cycle — 增加事件捕获频率
5. 减少注入上下文 — 目标从 ~5,850 降到 ~4,000 tokens
#### 长期规划
1. 设计 Multi-Agent 协调协议
2. 实现显式 Planner Agent
3. 实现 Complexity Classifier
4. 实现 Task Dependency Graph
5. 实现 Failure Replanning
### 4. 删除清单
> **删掉后系统会更强的东西**
| 删除项 | 大小/行数 | 理由 |
|--------|----------|------|
| `.tmp-benchmark/` | 3.9 GB | 纯浪费 |
| `test/active-memory/` (31 files) | ~15,000 行 | 实现已删除,测试无效 |
| `memory/core/` (6 files) | ~300 行 | 与 registers 重复,从未读取 |
| `memory/entities/` (2 files) | ~100 行 | 从未被检索 |
| `memory/CONTRADICTION.md` | ~50 行 | 从未使用 |
| `memory/companion-log.md` | ~50 行 | 从未使用 |
| `memory/index.md` | ~50 行 | 无实际索引功能 |
| `scripts/contract-consistency-test.mjs` | 776 行 | 可合并到 e2e-regression |
| `scripts/contract-e2e.mjs` | 206 行 | 可合并到 e2e-regression |
| `TOOLS.md` | 21 行 | 工具由 OpenClaw 管理,注入浪费 |
| workspace root 10+ report files | ~50,000 行 | 归档到 docs/reports/ |
**预计释放: 3.9GB 磁盘 + ~16,500 行代码 + ~500 tokens/会话**
### 5. 最终结论
> **如果我是这个项目的 CTO**
#### 会保留
- **Generator 核心** (7 个 agent scripts + model-contract) — 这是真正的价值
- **记忆系统核心** (MEMORY.md + daily/ + vault.md + registers/) — 经过验证有效
- **E2E 测试** (e2e-regression + smoke-test + guard-all) — 质量保障
- **OpenClaw 基础设施** — 工具系统、会话管理、cron
#### 会删除
- **Active Memory 全系统** — 脚本已删,测试残留,package.json 引用无效
- **3.9GB 临时文件** — 无理由保留
- **6 个 Guard 脚本中的 4 个** — 合并到 guard-all.sh 一个脚本
- **记忆系统中的孤岛文件** — core/, entities/, CONTRADICTION.md, companion-log.md, index.md
- **workspace root 的报告堆积** — 归档到 docs/
#### 会重构
1. **Domain Matcher** — 从纯关键词计数改为加权匹配 + 否定词 + 实体优先级
2. **FK 生成逻辑** — 增加目标表存在性验证
3. **Guard 脚本** — 从 6 个独立脚本重构为 1 个可配置的 guard 框架
4. **记忆系统** — 从"写入优先"重构为"读取优先",删除从未被读取的文件
#### 为什么
> 这个项目的核心问题不是功能不够,而是**功能膨胀后的维护成本**。
>
> Generator 本身是优秀的(Real World Qualification 证明了这一点),但围绕它生长了大量从未使用的基础设施(Active Memory 测试、Guard 脚本、记忆孤岛)。
>
> **下一步应该做的不是加功能,而是减功能。** 删掉 3.9GB 的临时文件、16,500 行无效测试、6 个重复的 Guard 脚本、10 个从未读取的记忆文件。
>
> 系统会因此变得更强。
---
*审计完成 — 小龙 🐉 Agent Architecture Audit*