From majestic-engineer
Captures patterns, gotchas, and anti-patterns from code modifications during build workflows, formats them into AGENTS.md files, dedupes, and merges with existing sections.
npx claudepluginhub majesticlabs-dev/majestic-marketplace --plugin majestic-engineerReference for Step 10 of build-task-workflow-manager. Defines what to capture and how to format it for AGENTS.md. Conventions that emerged consistently across 2+ modified files: - Import organization (grouping, ordering) - Naming conventions (methods, variables, files) - File structure patterns (where things go) - Code organization (module boundaries, layering) Non-obvious requirements discover...
Aggregates learnings from attempt-ledger.yml in relay epics, normalizes and groups patterns by semantic similarity and frequency, promotes high-confidence ones to AGENTS.md, .agents.yml, or .agents/lessons/.
Captures institutional knowledge post-feature completion or complex bug fixes: analyzes git history/files, classifies gotchas/patterns/decisions/edge cases, proposes persistence (memory/CLAUDE.md/comments/ADR) for approval.
Extracts reusable patterns and anti-patterns from completed work by documenting outcomes, analyzing successes/failures, and codifying transferable principles into structured pattern documents.
Share bugs, ideas, or general feedback.
Reference for Step 10 of build-task-workflow-manager. Defines what to capture and how to format it for AGENTS.md.
Conventions that emerged consistently across 2+ modified files:
Non-obvious requirements discovered during build or fix loop:
Approaches that failed during the fix loop (only when ATTEMPTS > 1):
Append to the nearest AGENTS.md, organized by type:
## Patterns
| Pattern | Location |
|---------|----------|
| Consistent import grouping: stdlib, gems, app | `app/services/` |
| Form objects inherit from ApplicationForm | `app/forms/` |
## Gotchas
- ActiveJob must be configured before Turbo broadcasts work — missing config causes silent failures
- Stimulus controller names must match filename exactly — no aliases
## Anti-Patterns
| Don't | Why | Do Instead |
|-------|-----|------------|
| Inline SQL in controllers | Breaks when schema changes | Use scope methods on model |
| Skip N+1 checks in dev | Explodes in production | Use strict_loading or bullet gem |