intermediate⏱45 minLección 5 de 6
Gestión de Memoria y Contexto
Gestiona la memoria y el contexto en sesiones de OpenCode. Aprende cómo mantener estado entre conversaciones, usar archivos de memoria y optimizar el contexto para mejores resultados.
Gestión de Memoria y Contexto
Entendiendo el Contexto
El contexto es la información que la IA recuerda durante una sesión:
| Tipo de Contexto | Descripción | Persistencia |
|---|---|---|
| Conversación | Historial de chat | Solo sesión |
| Contenido de Archivo | Archivos leídos | Hasta que se limpie |
| Proyecto | Estructura del proyecto | Solo sesión |
| Archivos de Memoria | Almacenamiento persistente | Entre sesiones |
Memoria de Conversación
Ver Historial
> /history
Guardar Sesión
> /save project-setup
Cargar Sesión
> /load project-setup
Limpiar Contexto
> /clear
Archivos de Memoria
Los archivos de memoria persisten información entre sesiones.
Memoria del Proyecto
Crea .opencode/memory/project.md:
markdown
# Project Memory
## Architecture
- Frontend: React with TypeScript
- Backend: Node.js with Express
- Database: PostgreSQL
## Conventions
- Use camelCase for variables
- Use PascalCase for components
- All API endpoints prefixed with /api/
## Decisions
- 2024-01-15: Chose PostgreSQL over MongoDB for ACID complianceMemoria Personal
Crea ~/.config/opencode/memory/personal.md:
markdown
# Personal Memory
## Preferences
- Preferred model: gpt-4o
- Coding style: Functional programming
- Testing: Jest with 80% coverage minimum
## Shortcuts
- Use /clear between topics
- Always review AI suggestions before applyingCargando Memoria
Carga Automática
Configura la carga automática en opencode.json:
json
{
"memory": {
"autoLoad": [
".opencode/memory/project.md",
".opencode/memory/conventions.md"
]
}
}Carga Manual
> Load the project memory file at .opencode/memory/project.md
Optimización del Contexto
Cuando el Contexto Se Vuelve Demasiado Grande
Síntomas:
- Respuestas lentas
- La IA olvida instrucciones tempranas
- Advertencias de límite de tokens
Soluciones:
- Limpiar y recargar elementos esenciales:
> /clear
> Load .opencode/memory/project.md
> We're working on the authentication module
- Usar subagentes para tareas aisladas:
> Have the test-agent write tests for the login function
- Resumir conversaciones largas:
> Summarize what we've discussed so far into a memory file
Gestión de la Ventana de Contexto
> /verbose
Context: 15234 tokens (47% of 32k limit)
Mejores Prácticas:
| Situación | Acción |
|---|---|
| Contexto > 70% | Limpiar y recargar esenciales |
| Cambiar de tema | Limpiar conversación |
| Proyecto complejo | Usar archivos de memoria |
| Múltiples tareas | Usar subagentes |
Estructura de Archivos de Memoria
Formato Recomendado
markdown
# [Memory Type] Memory
## [Section]
- Key point
- Key point
## [Section]
- Key pointConvenciones de Nomenclatura
| Archivo | Propósito |
|---|---|
project.md | Arquitectura y decisiones del proyecto |
conventions.md | Estándares y patrones de codificación |
decisions.md | Registros de decisiones arquitectónicas |
todo.md | Tareas actuales y prioridades |
learned.md | Cosas aprendidas durante sesiones |
Usando Memoria en Prompts
Referenciar Memoria
> According to our project memory, what database are we using?
Actualizar Memoria
> Update the project memory to note we've switched from MongoDB to PostgreSQL
Crear desde Sesión
> Save our conversation about the API design to .opencode/memory/api-design.md
Mejores Prácticas
Higiene de Memoria
| Práctica | Beneficio |
|---|---|
| Actualizaciones regulares | Mantiene la memoria precisa |
| Secciones claras | Fácil de encontrar información |
| Fechas en decisiones | Rastrear evolución |
| Eliminar obsoleto | Previene confusión |
Gestión del Contexto
| Práctica | Beneficio |
|---|---|
| Limpiar entre temas | Previene contaminación cruzada |
| Cargar solo esenciales | Reduce uso de tokens |
| Usar subagentes | Aísla tareas complejas |
| Monitorear tamaño del contexto | Evita límites |
Practice Questions
Practice Question
Where should you store project-specific memory files?
Practice Question
What is the benefit of memory files over conversation history?
Practice Question
When should you clear the conversation context?
Practice Question
What should you do when context exceeds 70% of the limit?
Practice Question
How do you update memory files during a session?
Success
Key Takeaways
- Los archivos de memoria persisten información entre sesiones, a diferencia del historial de conversación
- Almacena la memoria del proyecto en
.opencode/memory/dentro del proyecto - Limpia la conversación al cambiar de tema para prevenir contaminación cruzada
- Monitorea el tamaño del contexto y recarga esenciales cuando excede el 70%
- Usa secciones descriptivas en los archivos de memoria para fácil recuperación
- Los archivos de memoria deben tener fechas y actualizarse regularmente
- Los subagentes ayudan a aislar tareas complejas del contexto principal
Progreso83%