Phase 1-3: Add memory, skills, and improvement systems

- 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).
This commit is contained in:
Your Name
2026-09-08 04:31:40 -04:00
parent fb9d91e510
commit 2dabf8ef03
38 changed files with 2247 additions and 22 deletions
+78
View File
@@ -0,0 +1,78 @@
---
name: architecture-design
description: Architecture decision process — structured approach to system design decisions
version: "1.0"
owner: Architect
prerequisites: requirements understood, constraints identified
---
# Architecture Design
## When to use this skill
- Deciding system boundaries, interfaces, or component ownership
- Evaluating architectural alternatives
- Establishing new patterns or constraints
## Core methodology
```text
UNDERSTAND → IDENTIFY DECISION → GENERATE OPTIONS → EVALUATE → DECIDE → RECORD
```
## Step-by-step procedure
### 1. Understand the context
- What problem are we solving?
- What are the constraints (technical, organizational, time)?
- What existing architecture does this interact with?
### 2. Identify the decision
- What exactly needs to be decided?
- What are the boundaries of this decision?
- Who are the stakeholders?
### 3. Generate options
- Aim for 2-4 concrete options
- Each option should be distinct (not variations of the same idea)
- For each: what does it optimize for? What does it sacrifice?
### 4. Evaluate options
For each option, assess:
- **Fit**: does it solve the stated problem?
- **Complexity**: how much does it add?
- **Reversibility**: how hard is it to change later?
- **Risk**: what could go wrong?
- **Evidence**: what supports this choice?
### 5. Decide
- Choose one option with clear rationale
- State what is explicitly out of scope
- Identify what would make you revisit this decision
### 6. Record
- Write an ADR in `memory/decisions/`
- Update `memory/architecture/` if boundaries change
- Link to related decisions
## Common pitfalls
- Deciding without evidence (opinion-driven design)
- Over-architecting for imagined future needs
- Not recording the decision (lost institutional knowledge)
- Ignoring existing patterns (inconsistency)
- Making reversible decisions with irreversible processes
## Evidence requirements
- Problem statement with constraints
- Options considered with trade-offs
- Decision rationale
- Recording in ADR format
## Exit criteria
- Decision made and recorded
- Alternatives documented with rationale
- Impact on existing architecture assessed
- Stakeholders can find the decision