一键导入
wisdom-accumulation
Extract learnings between implementation waves. Use to share conventions and gotchas across phases.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Extract learnings between implementation waves. Use to share conventions and gotchas across phases.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Tool-agnostic search — query construction, tool selection, source trust hierarchy.
Auto-continue through todos with idle detection and safety gates. Use for multi-step orchestration.
Level 2 — Pantheon-native context compression with priority scoring, semantic summarization, downstream-aware compression, budget allocation, and cross-references
Automated visual review pipeline — Playwright screenshots, self-analysis, fix loop, escalation. Used by Aphrodite for UI verification.
Multi-agent orchestration with model routing, category delegation, and sprint management. Use for coordinating Pantheon agents.
MCP security hardening — credential leakage prevention, input sanitization, and tool access control. Use for reviewing agent MCP configurations.
| name | wisdom-accumulation |
| description | Extract learnings between implementation waves. Use to share conventions and gotchas across phases. |
| context | fork |
| globs | [] |
| alwaysApply | false |
Use this skill to extract learnings after each implementation wave and pass them to the next wave. Prevents repeating mistakes and ensures consistent patterns across backend, frontend, and database layers.
Learn once, apply everywhere.
When Hermes discovers a pattern, Aphrodite should know about it. When Demeter finds a gotcha, Hermes should avoid it. Wisdom Accumulation makes this happen automatically.
After each wave completes, extract learnings into 5 categories:
Patterns and standards discovered during implementation:
- Use async/await em todos os I/O
- Validação com Pydantic v2
- Repository pattern com SQLAlchemy 2.0
- API retorna snake_case, frontend converte para camelCase
What worked well and should be repeated:
- Factory pattern para testes de usuário funcionou bem
- Dependency injection via FastAPI Depends() é limpo
- Cursor-based pagination é mais eficiente que offset
What didn't work and should be avoided:
- Não usar session.commit() em async — usar await session.flush()
- Não importar models diretamente nos routers — usar schemas
- Evitar nested queries — usar joinedload para N+1
Surprises and edge cases discovered:
- O endpoint /users tem rate limit de 100 req/min
- Redis cache TTL deve ser < session timeout
- Arquivos >10MB precisam de multipart upload
Useful commands discovered during implementation:
- Test runner: `pytest tests/ -v --cov=src`
- DB migration: `alembic upgrade head`
- Lint: `ruff check src/ --fix`
Learnings are stored in:
.pantheon/learnings/<feature>/learnings.md
Lifecycle:
# Learnings: <Feature Name>
## Conventions
- <pattern 1>
- <pattern 2>
## Successes
- <what worked 1>
- <what worked 2>
## Failures
- <what failed 1>
- <what failed 2>
## Gotchas
- <gotcha 1>
- <gotcha 2>
## Commands
- <command 1>
- <command 2>
When dispatching the next wave, Zeus injects learnings into the agent's prompt:
## Previous Wave Learnings
<contents of learnings.md>
Apply these learnings to your implementation. Avoid the failures and gotchas.
Follow the conventions and replicate the successes.
When a wave completes, the agent should:
Example extraction:
Wave 2 complete. Extracting learnings:
Conventions:
- NEW: Use Pydantic v2 field() for default values
Successes:
- NEW: Service layer isolation works well with dependency injection
Failures:
- NEW: Don't use eager loading for large collections — use selectinload
Gotchas:
- (none new)
Commands:
- NEW: `alembic revision --autogenerate -m "add reviews table"`
| System | Scope | Duration | Purpose |
|---|---|---|---|
/memories/repo/ | Permanent | Forever | Atomic facts (stack, commands, conventions) |
docs/memory-bank/ | Project | Sprint | Decisions, context, progress |
| Wisdom (this) | Feature | Until merge | Wave-to-wave learnings |
Wisdom is temporary — it exists only for the duration of the feature implementation. It does NOT pollute permanent memory with feature-specific details.
Don't extract:
/memories/repo/ (check first)Wave 1 (Demeter — Schema):
→ Creates reviews table
→ Learns: "Use UUID for public IDs, not integers"
→ learnings.md created with this convention
Wave 2 (Hermes — Backend + Aphrodite — Frontend):
→ Zeus injects learnings.md
→ Hermes sees: "Use UUID for public IDs"
→ Hermes uses UUID in API responses
→ Hermes adds new learning: "API returns snake_case"
→ learnings.md updated
Wave 3 (Integration):
→ Zeus injects updated learnings.md
→ Both agents know: UUID + snake_case
→ Consistent implementation across layers