con un clic
ef-context
Update, expand, and organize the project memory bank
Instalar con Codex o Claude Copia este prompt, pégalo en Codex, Claude u otro asistente, y deja que revise la página de la skill y la instale por ti.
Menú
Update, expand, and organize the project memory bank
Instalar con Codex o Claude Copia este prompt, pégalo en Codex, Claude u otro asistente, y deja que revise la página de la skill y la instale por ti.
Create distinctive, production-grade frontend interfaces with high design quality. Generates creative, polished code that avoids generic AI aesthetics. Use when the user asks to build web components, pages, artifacts, posters, or applications, or when any design skill requires project context.
Explore, record, and run the local development environment setup
Break a module into features with priorities, dependencies, and acceptance direction
Basado en la clasificación ocupacional SOC
| name | ef-context |
| description | Update, expand, and organize the project memory bank |
| disable-model-invocation | true |
| argument-hint | ["trigger-reason"] |
Review the current state of the project and update the memory bank accordingly. The memory bank is a living knowledge system that grows with the project.
The memory bank starts with core files and expands as the project grows:
memory-bank/
├── index.md # ALWAYS read first — links to all other files
├── projectBrief.md # Business context (stable, rarely changes)
├── techContext.md # Tech stack, dependencies, architecture
├── systemPatterns.md # Code conventions and patterns
├── progress.md # Current status and recent progress
└── [topic].md # AI creates new files as needed
memory-bank/index.md first — it is the map of all memoryindex.md under 100 lines — it's a directory, not a documentmemory-bank/index.md (or all core files if index doesn't exist yet)git log --oneline -20 for recent changesgit diff --stat for uncommitted workBased on the trigger reason ($ARGUMENTS), identify what needs updating:
| Trigger | Files to Update |
|---|---|
after-implement | progress.md (prepend log entry), possibly systemPatterns.md if new patterns emerged |
after-review | systemPatterns.md if review revealed convention gaps |
after-plan | progress.md (add planned items to Planned section) |
tech-change | techContext.md — new dependency, architecture change |
new-pattern | systemPatterns.md — or create a dedicated patterns file |
lesson-learned | Create/update a lessons file |
full-sync | Review and update ALL memory files |
| (no argument) | Auto-detect what's stale by comparing memory to actual project state |
progress.md merge rules — To avoid git conflicts in team environments:
YYYY-MM-DDTHH:MMZ). Never edit or reorder existing entries.For each file that needs updating:
[topic]-archive.mdindex.md if any files were created, renamed, or reorganizedCreate a new memory file when:
Naming convention: memory-bank/[topic].md — lowercase, hyphenated, descriptive.
Examples:
memory-bank/auth-patterns.md — authentication/authorization patternsmemory-bank/api-conventions.md — API design conventionsmemory-bank/deployment.md — deployment and infra knowledgememory-bank/module-orders.md — knowledge specific to the orders modulememory-bank/lessons.md — lessons learned from bugs and reviewsMove content to [topic]-archive.md when:
If memory-bank/index.md does not exist, initialize the memory bank.
# Memory Bank Index
Project memory. Read this file first to find what you need.
## Core Files
- [projectBrief.md](projectBrief.md) — Business context and client info
- [techContext.md](techContext.md) — Tech stack, dependencies, architecture
- [systemPatterns.md](systemPatterns.md) — Code conventions and patterns
- [progress.md](progress.md) — Current status and development progress
## Topic Files
(none yet — will be created as the project grows)
## Last Updated
[date]
Check if the project already has code:
package.json, pom.xml, build.gradle, requirements.txt, pyproject.toml, go.mod, Cargo.toml, *.csproj, or similarsrc/, app/, lib/, or similar directories contain source filesExisting code found → go to 4.3 (Code Analysis + Supplement) No code found → go to 4.4 (Interview)
Scan the project and auto-populate what you can:
techContext.md — Analyze:
systemPatterns.md — Analyze:
progress.md — Analyze:
git log --oneline -30 → what's been built so farAfter analysis, present your findings to the developer:
"Here's what I found from your codebase:" [show key findings per file] "Please confirm, correct, or add anything I missed."
Then ask about information that cannot be inferred from code:
If Jira/Confluence is configured, use MCP tools to pull additional context:
Fill in projectBrief.md and supplement other files based on answers.
No code to analyze. Ask the developer structured questions:
For projectBrief.md:
For techContext.md:
For systemPatterns.md:
For integrations:
If Jira/Confluence is configured, use MCP tools to pull project documentation and existing tickets to enrich the memory files.
Fill in memory files based on answers. Use the skeletons below as structure reference.
After populating techContext.md (from either 4.3 or 4.4), check if test frameworks are defined. If unit/API tests or E2E tests are missing, recommend options based on the project's language and framework:
Unit / API Tests — use the language-native framework:
| Language / Framework | Recommended |
|---|---|
| TypeScript / Node | Vitest, Jest |
| Java / Spring Boot | JUnit 5 + MockMvc |
| Python / FastAPI | pytest + httpx |
| Python / Django | pytest-django |
| Go | testing + httptest |
| C# / .NET | xUnit + WebApplicationFactory |
E2E Tests — always recommend Playwright (TypeScript). Playwright tests are written in TypeScript regardless of the backend language. This keeps E2E tests in a single consistent language across all projects.
Present the recommendation to the developer:
"I noticed your project doesn't have [unit tests / E2E tests] set up. For your stack ([stack]), I'd recommend [framework]. Want me to add it to techContext.md?"
If the developer agrees:
techContext.md with the chosen test frameworkplaywright.config.ts, vitest.config.ts)If the project has multiple contributors, recommend adding a .gitattributes entry to reduce merge conflicts on frequently-updated memory files:
memory-bank/progress.md merge=union
The union merge strategy keeps all lines from both sides during a merge, which works well with the append-only log format of progress.md.
"This project has multiple contributors. Want me to add a
.gitattributesrule soprogress.mduses union merge? This avoids most merge conflicts when multiple people update progress concurrently."
Read references/skeletons.md for the template structures of each memory file (projectBrief, techContext, systemPatterns, progress). Replace all [...] placeholders with actual content from code analysis or developer answers.
After updating, show:
## Memory Update Summary
### Files Updated
- [file] — [what changed]
### Files Created
- [file] — [why]
### Files Archived
- [old] → [archive file]
### Current Memory Map
[copy of index.md contents]