Add reusable context template
This commit is contained in:
24
context/README.template.md
Normal file
24
context/README.template.md
Normal file
@@ -0,0 +1,24 @@
|
||||
# Contexto modular de OpenCode
|
||||
|
||||
Este directorio organiza el conocimiento por dominio para evitar leer `memory.md` completo cuando la tarea afecta solo a un área específica.
|
||||
|
||||
## Estructura inicial
|
||||
- [Infraestructura y hosts](hosts.md)
|
||||
- [Traefik y frontales](traefik.md)
|
||||
- [Cron y health-checks](cron.md)
|
||||
- [Programa de formación n8n](n8n.md)
|
||||
- [Repos locales](git.md)
|
||||
- [Entornos Docker](docker.md)
|
||||
- [Scripts y plantillas](scripts.md)
|
||||
- [Sesiones de OpenCode](opencode.md)
|
||||
- [Otros contextos](otros.md) · Ajusta esta ficha para cubrir {{ADDITIONAL_CONTEXTS}} u otros dominios.
|
||||
|
||||
## Convenciones
|
||||
- Mantén cada ficha agnóstica del modelo; solo hechos verificables (IPs, puertos, rutas, comandos).
|
||||
- Cuando aparezca un dominio nuevo, crea `context/<tema>.md`, enlázalo aquí y cita la actualización en `memory.md`.
|
||||
- Usa enlaces relativos para navegar sin depender del editor.
|
||||
|
||||
## Flujo recomendado
|
||||
1. Lee `agents.md` → `memory.md` → la ficha específica antes de actuar.
|
||||
2. Actualiza fichas y memoria cuando haya cambios persistentes (nueva VM, router, cronjob, etc.).
|
||||
3. Si una ficha crece demasiado, divídela en archivos temáticos y enlázalos desde aquí.
|
||||
18
context/cron.template.md
Normal file
18
context/cron.template.md
Normal file
@@ -0,0 +1,18 @@
|
||||
# Cronjobs y health-checks
|
||||
|
||||
## Monitorización
|
||||
- Documenta aquí herramientas como Uptime Kuma, Pulse, Prometheus, etc.
|
||||
- Indica dónde residen (host, contenedor) y qué servicios vigilan.
|
||||
|
||||
## Cron por host
|
||||
| Host | Root crontab | `/etc/cron.d` | Notas |
|
||||
| --- | --- | --- | --- |
|
||||
| {{BASTION_NAME}} | (ej. sin crontab personalizado) | `e2scrub_all`, ... | Ajustar según entorno |
|
||||
| ... | ... | ... | ... |
|
||||
|
||||
## Scripts programados
|
||||
- Lista scripts propios (`network_inventory.sh`, backups, etc.), ubicación y periodicidad.
|
||||
|
||||
## Auditoría
|
||||
- Comando sugerido: `ssh host "crontab -l"` y `cat /etc/cron.d/*`.
|
||||
- Documenta nuevos hallazgos aquí y enlaza scripts relevantes en `context/scripts.md`.
|
||||
19
context/docker.template.md
Normal file
19
context/docker.template.md
Normal file
@@ -0,0 +1,19 @@
|
||||
# Entornos Docker (`{{WORKSPACE_ROOT}}/docker`)
|
||||
|
||||
## Estructura
|
||||
- `projects/`: cada carpeta contiene un stack con su `docker-compose.yml`.
|
||||
- `vscode/`: entorno remoto de VSCode (si aplica).
|
||||
|
||||
## Tabla de proyectos
|
||||
| Carpeta | Descripción |
|
||||
| --- | --- |
|
||||
| ejemplo | Plantilla multi-servicio |
|
||||
| ... | ... |
|
||||
|
||||
Completa esta lista con tus stacks reales (odoo, devshell, etc.).
|
||||
|
||||
## Procedimiento común
|
||||
1. `cd` al proyecto.
|
||||
2. Revisa `.env` + `docker-compose.yml`.
|
||||
3. `docker compose up -d` y documenta cambios relevantes aquí.
|
||||
4. Si el stack requiere Traefik/domínios, enlázalo en `context/traefik.md`.
|
||||
16
context/git.template.md
Normal file
16
context/git.template.md
Normal file
@@ -0,0 +1,16 @@
|
||||
# Repositorios locales (`{{WORKSPACE_ROOT}}/git`)
|
||||
|
||||
## Guía
|
||||
- Cada proyecto debe incluir su `README.md`/`AGENTS.md` con instrucciones específicas.
|
||||
- Antes de trabajar, ejecuta `git status` y respeta las ramas definidas por el proyecto.
|
||||
|
||||
## Inventario
|
||||
- Lista aquí tus repos clave (infraestructura, aplicaciones, plantillas) con una breve descripción.
|
||||
- Ejemplo:
|
||||
- `ai-template` · plantilla para agentes IA.
|
||||
- `wireguard-install.sh` · script para instalar WireGuard.
|
||||
|
||||
## Buenas prácticas
|
||||
1. No mezclar archivos de distintos proyectos.
|
||||
2. Documentar nuevos repos agregando su descripción aquí.
|
||||
3. Si un repo define reglas globales, anótalas también en `memory.md`.
|
||||
20
context/hosts.template.md
Normal file
20
context/hosts.template.md
Normal file
@@ -0,0 +1,20 @@
|
||||
# Infraestructura y hosts
|
||||
|
||||
## Cadena de acceso
|
||||
- Bastión obligatorio: `{{BASTION_NAME}}` (`{{BASTION_HOST}}`, usuario `{{BASTION_USER}}`, clave `{{BASTION_KEY}}`).
|
||||
- Usa `ProxyJump` para alcanzar la red interna `{{PRIMARY_NETWORK}}`.
|
||||
- Scripts recomendados: revisa `context/scripts.md` para túneles (`home_lan_tunnel.sh`, etc.).
|
||||
|
||||
## VPS / servicios públicos
|
||||
| Alias | IP/Host | Rol | Notas |
|
||||
| --- | --- | --- | --- |
|
||||
| bastion | {{BASTION_HOST}} | Proxy principal | Alojado en {{BASTION_NAME}}. |
|
||||
| ... | ... | ... | Añade según tu entorno |
|
||||
|
||||
## Red interna
|
||||
- Documenta aquí tus clusters (Kubernetes, Proxmox, Raspberry, etc.) con usuarios y puertos.
|
||||
- Ejemplo: `vm-docker` ({{VM_SUMMARY}}) para stacks Docker.
|
||||
|
||||
## Cómo extender
|
||||
- Añade filas/tablas por cada host importante.
|
||||
- Si un host expone servicios vía Traefik, enlázalo con `context/traefik.md`.
|
||||
17
context/n8n.template.md
Normal file
17
context/n8n.template.md
Normal file
@@ -0,0 +1,17 @@
|
||||
# Contexto n8n
|
||||
|
||||
## Ruta de referencia
|
||||
- Base de conocimiento: `{{N8N_KNOWLEDGE_PATH}}`.
|
||||
- Estructura recomendada: `modules/`, `labs/`, `presentations/`, `resources.md`.
|
||||
|
||||
## Niveles sugeridos
|
||||
1. Fundamentos
|
||||
2. Integraciones y datos
|
||||
3. Automatización avanzada
|
||||
4. Operaciones / DevOps
|
||||
|
||||
Adapta los nombres y rutas según tu programa interno.
|
||||
|
||||
## Uso
|
||||
- Antes de crear materiales, revisa esta carpeta para evitar duplicar contenido.
|
||||
- Agrega nuevas rutas (por ejemplo, módulos específicos de IA) y referencia aquí.
|
||||
14
context/opencode.template.md
Normal file
14
context/opencode.template.md
Normal file
@@ -0,0 +1,14 @@
|
||||
# Sesiones y configuración de OpenCode
|
||||
|
||||
## Binarios y rutas
|
||||
- CLI: `~/.opencode/bin/opencode`.
|
||||
- Config/cache: `~/.opencode/`, `~/.config/opencode/`, `~/.cache/opencode/`.
|
||||
|
||||
## Historial de sesiones
|
||||
- Comando: `/home/<usuario>/.opencode/bin/opencode session list`.
|
||||
- Usa este listado para recuperar contexto histórico antes de iniciar tareas repetidas.
|
||||
- Exporta sesiones relevantes con `opencode export <sessionID>` y archívalas si aportan aprendizaje.
|
||||
|
||||
## Buenas prácticas
|
||||
- Consulta sesiones anteriores antes de abrir un tema ya tratado.
|
||||
- Documenta aquí los IDs/títulos más útiles como referencia rápida.
|
||||
7
context/otros.template.md
Normal file
7
context/otros.template.md
Normal file
@@ -0,0 +1,7 @@
|
||||
# Otros contextos
|
||||
|
||||
Usa esta ficha para dominios adicionales (por ejemplo, `k8s`, `inventory`, `security`).
|
||||
|
||||
- Título sugerido: `context/<tema>.md`.
|
||||
- Describe ubicación, comandos recurrentes y procedimientos.
|
||||
- Enlaza cualquier nuevo archivo desde `context/README.md` y resume el cambio en `memory.md`.
|
||||
16
context/scripts.template.md
Normal file
16
context/scripts.template.md
Normal file
@@ -0,0 +1,16 @@
|
||||
# Scripts y plantillas (`{{WORKSPACE_ROOT}}/scripts`)
|
||||
|
||||
## Contenido típico
|
||||
- Plantillas de proyectos (`agents-template`, `natural`, etc.).
|
||||
- Utilidades de red (`home_lan_tunnel.sh`, `network_inventory.sh`).
|
||||
- Backups (`*.sql`, herramientas específicas).
|
||||
|
||||
## Documentación
|
||||
- Describe cada script relevante: propósito, dependencias, comandos de ejecución.
|
||||
- Ejemplo:
|
||||
- `home_lan_tunnel.sh`: crea túneles SSH hacia la LAN.
|
||||
- `network_inventory.sh`: genera reportes en `~/inventory/`.
|
||||
|
||||
## Buenas prácticas
|
||||
- Leer cada `README.md` antes de ejecutar scripts.
|
||||
- Actualizar esta ficha cuando agregues nuevos generadores/plantillas.
|
||||
26
context/traefik.template.md
Normal file
26
context/traefik.template.md
Normal file
@@ -0,0 +1,26 @@
|
||||
# Traefik y frontales
|
||||
|
||||
## Despliegue
|
||||
- Ubicación: `{{TRAEFIK_ENTRYPOINT}}` en `{{BASTION_NAME}}`.
|
||||
- EntryPoints estándar: `web` (80) redirige a `websecure` (443) con certificados de Let's Encrypt.
|
||||
- Configuración dinámica: `dynamic/routers.yml`, `dynamic/services.yml`, `dynamic/middlewares.yml`.
|
||||
|
||||
## Middlewares comunes
|
||||
- `redirect-www-to-root`
|
||||
- `authelia-forwardauth`
|
||||
- `public-chain`
|
||||
- `security-headers`
|
||||
- Ajusta esta lista según tus necesidades y documenta cualquier middleware nuevo.
|
||||
|
||||
## Routers
|
||||
Describe aquí tus dominios clave, por ejemplo:
|
||||
|
||||
| Router | Host | Backend | Middlewares |
|
||||
| --- | --- | --- | --- |
|
||||
| ejemplo | `app.example.com` | `http://192.168.0.10:8080` | `redirect-www-to-root`, `authelia-forwardauth` |
|
||||
|
||||
## Procedimiento de cambios
|
||||
1. Edita los YAML en `dynamic/`.
|
||||
2. Valida sintaxis (`yamllint` o `docker compose config`).
|
||||
3. Reinicia/recarga Traefik (`docker compose up -d traefik`).
|
||||
4. Actualiza esta ficha con el nuevo router/servicio y enlaza al host correspondiente.
|
||||
Reference in New Issue
Block a user