2dabf8ef03
- memory/: cross-session project memory with decisions, lessons, failures, architecture, and sessions categories. Each has format templates and lifecycle documentation. - skills/: 12 reusable specialized methodologies (tdd, systematic-debugging, architecture-design, code-review, security-review, repository-analysis, failure-analysis, refactoring, test-analysis, incident-investigation, browser-automation, research). Each has frontmatter and methodology sections. - improvements/: proposal-based improvement system requiring human approval. - scripts/memory-lifecycle.sh: deterministic memory operations (recall, store, list, search, sessions, cleanup). - scripts/test-memory-system.sh: 12 structural tests for all new systems. - orchestrator.md: added Memory Recall stage, Learning and Memory Storage stage, Improvement Proposals workflow, memory/skills rules, and 3 new actions (A23-A27) to the action catalog. Updated behavioral acceptance test and state separation model. - All 12 subagents: added Memory & Skills Awareness sections with recall and store instructions. - docs/AGENT_ARCHITECTURE.md: documented memory, skills, and improvements systems (sections 12-14). Updated action count (27), state model, and remaining weaknesses. - README.md: documented new systems, updated repository layout, added test-memory-system.sh documentation. All 39 tests pass (16 architecture + 12 memory + 11 bootstrap).
58 lines
2.2 KiB
Markdown
58 lines
2.2 KiB
Markdown
# Project Memory
|
|
|
|
This directory contains the persistent memory of the project, organized by category.
|
|
|
|
## Structure
|
|
|
|
```
|
|
memory/
|
|
├── decisions/ # Architectural and technical decisions (ADR-style)
|
|
├── lessons/ # Implementation lessons, patterns discovered
|
|
├── failures/ # Known failures, root causes, and how they were resolved
|
|
├── architecture/ # Current architectural decisions, component maps
|
|
├── sessions/ # Session state for cross-session continuity
|
|
└── MEMORY.md # This file — index and conventions
|
|
```
|
|
|
|
## Memory Lifecycle
|
|
|
|
### Before significant work (RECALL)
|
|
1. Search `memory/decisions/` for relevant architectural decisions
|
|
2. Search `memory/lessons/` for similar past situations
|
|
3. Search `memory/failures/` for related incidents or recurring problems
|
|
4. Check `memory/sessions/` for unfinished work from previous sessions
|
|
|
|
### During work (OBSERVE)
|
|
1. Record meaningful decisions as they are made
|
|
2. Track important discoveries
|
|
3. Note failures and their root causes
|
|
4. Identify assumptions that were validated or disproven
|
|
|
|
### After work (LEARN + STORE)
|
|
1. Extract reusable knowledge from what was learned
|
|
2. Classify: is this a decision, lesson, or failure record?
|
|
3. Store in the appropriate memory location
|
|
4. Update `MEMORY.md` index if new categories emerge
|
|
|
|
## Conventions
|
|
|
|
- Memory entries are **selective and useful** — not every tool call or conversation
|
|
- Each entry has: date, author (agent), context, content, relevance
|
|
- Entries use deterministic markdown format (human-readable, version-controllable)
|
|
- Entries reference source files with `file:line` when applicable
|
|
- Trivial discoveries do not belong in memory
|
|
- Entries that become stale are corrected by the owning agent, not deleted
|
|
|
|
## Memory vs Task State
|
|
|
|
| What | Where |
|
|
|------|-------|
|
|
| Architectural decisions | `memory/decisions/` |
|
|
| Implementation lessons | `memory/lessons/` |
|
|
| Known failures | `memory/failures/` |
|
|
| Current architecture | `memory/architecture/` |
|
|
| Session state | `memory/sessions/` |
|
|
| Task reports | `AgentsReport/<agent>/` (ephemeral) |
|
|
| Repository knowledge | `.opencode/skills/` (per-repo) |
|
|
| Scratch / temp | `/tmp/opencode` |
|