Imported from pabpereza/pabpereza (
AGENTS.md). Install upstream withnpx skills add pabpereza/pabpereza. Copyright stays with the author.
GitHub Copilot Instructions
Esta guía proporciona directrices para que los agentes de IA que trabajen en este repositorio de contenido educativo de DevSecOps.
Arquitectura del Proyecto
Este es un sitio Docusaurus v3 con:
- Build automatizado:
npm run prebuildgenera el grafo de contenido antes de cada build - Búsqueda: Utiliza
docusaurus-lunr-searchpara indexación - Mermaid:
@docusaurus/theme-mermaidsigue instalado solo por los artículos antiguos; no se usa en contenido nuevo (se sustituye por GIFs de animaciones) - Grafo de contenido: React Force Graph 2D para visualización de relaciones
Estructura de Contenido
Blog Posts (/blog/)
- IMPORTANTE: Añadr nuevos artículos de blog a la carpeta
blog/.ideascomo borradores iniciales` - Usar archivo
.mdcon nombre del artículo (NOindex.md) - Incluir metadatos con
slug,authors: pabpereza,tags,keywords - Imágenes en la misma carpeta que el artículo
- Añadir
draft: truepor defecto hasta revisión final - Evita usar
:dentro del metadatado de markdown ( title, description, slug, tags... etc) - Ejemplo de frontmatter:
---
slug: ruta_devsecops_recomendaciones_2025
title: Ruta DevSecOps, recomendaciones para empezar en 2025
tags: [devsecops, seguridad, devops]
keywords: [devsecops, seguridad, devops, recomendaciones, 2025]
authors: pabpereza
date: 2025-06-05
---
- Añade la instrucción
<!-- truncate -->después de la introducción del artículo (después del primer párrafo del artículo, obviando los checklist técnicos) para que Docusaurus genere un resumen automático en la página principal del blog. - Si te piden publicar el artículo, mueve la carpeta del artíuclo a la carpeta del año correspondiente, por ejemplo
blog/2025/mi_articulo/y cambia el frontmatter para quitardraft: true
Documentación de Cursos (/docs/cursos/)
Sistema de numeración específico: 101.Introduccion.md, 102.Instalacion.md, 201.Limites_recursos.md
- Series 100: Contenido básico
- Series 200+: Contenido avanzado
- Incluir
README.mdcomo índice principal de cada curso
Frontmatter de un capítulo — 7 campos exactos:
---
title: <título largo SEO, con acentos, separador " - " o coma. NUNCA ":">
description: >-
<bloque folded, 2-3 líneas, sin ":">
keywords:
- <9-16 keywords: término español, término inglés, comando literal,
- long-tail conversacional, comparativa "X vs Y", y cierre con
- "tutorial" / "paso a paso" / "buenas practicas">
sidebar_label: <N>. <2-4 palabras>
tags:
- <1-5, kebab-case si son compuestos>
image: 'https://pabpereza.dev/img/banner_<curso>.png'
slug: <snake_case, sin acentos ni ñ, frase SEO de 7-11 palabras>
---
- NUNCA
authorsnidateen cursos. Son exclusivos de/blog/. - El
README.mddel curso lleva los mismos campos menosslug, y susidebar_labelempieza con emoji (es lo que da nombre a la categoría del sidebar, porque no hay ningún_category_.json). - La URL publicada es
pabpereza.dev/docs/cursos/<curso>/<slug>(los slugs de raíz son solo del blog). - Longitud objetivo: 90-250 líneas por capítulo. Si te pasas de ahí, probablemente el capítulo debería partirse o el contenido pertenece a otro curso.
- Tras cambiar cualquier
slug, limpiar la caché o el build fallará con enlaces rotos falsos:rm -rf .docusaurus node_modules/.cache && npm run build
Canal de YouTube (/.channel/)
Los proyectos de video del canal (research, guiones, miniaturas, assets, SEO, posts de RRSS, sponsors) viven en .channel/<slug>/ de este repositorio. No buscar en ~/youtube/ ni fuera de este repo.
- Estructura por video:
.channel/<slug>/{research.md, script.md, assets.md, seo.md, social.md, thumbnails/, diagrams/} - Las skills
/research,/guion,/assets,/revision,/social,/sponsorsoperan sobre esta carpeta - Edición de vídeo: el agente Gimli y los comandos
/cortary/montareditan el vídeo largo desde el crudo (y Bilbo con/shorts, los verticales). El corte, montaje y render se hacen en DaVinci Resolve Studio a través de su servidor MCP oficial (DaVinci_Resolve, toolsmcp__DaVinci_Resolve__*); el análisis (transcripción/EDL) y los gráficos alfa (Remotion) viven en el submódulo.video-editor/, cuyos pipelines Python de Resolve son módulos importables desde el MCP (nuncapython3 pipelines/*.py). Los masters finales se escriben en.channel/<slug>/assets/. Ver.video-editor/CLAUDE.md. - Para videos ya publicados puede no quedar material provisional; en ese caso partir de la URL de YouTube (transcripción, metadatos) y reconstruir lo que se pida
- Slug del proyecto = slug del video en YouTube (kebab-case)
Skills por Curso
Cuando trabajes en contenido de un curso específico, utiliza la skill correspondiente para obtener contexto experto en la materia:
| Curso | Ruta | Skill |
|---|---|---|
| Ansible | /docs/cursos/ansible/ |
ansible-expert |
| DevOps | /docs/cursos/devops/ |
devops-engineer |
| DevSecOps | /docs/cursos/devsecops/ |
devops-engineer + docker-expert |
| Docker | /docs/cursos/docker/ |
docker-expert |
| Kubernetes | /docs/cursos/kubernetes/ |
kubernetes-specialist |
| MySQL | /docs/cursos/mysql/ |
mysql |
| Vim | /docs/cursos/vim/ |
neovim |
Estilo de Redacción
Principios de Escritura
- Usa un tono conversacional pero profesional con un ligero toque humorístico
- Explica acrónimos y términos técnicos en su primera aparición
- Incluye analogías para conceptos complejos
- Estructura el contenido con subtítulos claros
- Usa listas y bullets para información concisa
- Evita párrafos largos; máximo 4-5 líneas
- No uses Mermaid en artículos nuevos. Para ilustrar conceptos técnicos usa el GIF web de las animaciones del vídeo asociado (las genera Merry en
.channel/<slug>/assets/,*-web.gif), en la misma carpeta que el artículo o endocs/cursos/<curso>/img/ - Usa ejemplos de código cuando sea relevante
- Utiliza analogías y metáforas para facilitar la comprensión
- El contenido debe estar enfocado al SEO pero sin ser 'clickbait'
Progresión Pedagógica
- Comienza con conceptos básicos antes de avanzar
- Incluye ejemplos prácticos después de cada concepto
- Proporciona ejercicios o retos cuando sea apropiado
- Resume puntos clave al final de cada sección
Formato Markdown
Estructura de Documentos
# Título Principal
## Introducción
Breve descripción del tema y objetivos de aprendizaje.
## Conceptos Fundamentales
### Subtema 1
Explicación clara con ejemplos.
### Subtema 2
Continuación lógica del tema anterior.
## Ejemplos Prácticos
Casos de uso reales y código cuando sea aplicable.
## Conclusiones
Resumen de puntos clave y próximos pasos.
## Recursos Adicionales
Enlaces y referencias para profundizar.
Uso de Elementos Markdown
- Énfasis: Usa
**negrita**para conceptos importantes - Código: Usa
código inlinepara comandos ybloques de códigopara ejemplos - Citas: Usa
>para destacar definiciones o puntos importantes - Listas: Prefiere listas numeradas para pasos secuenciales
- Enlaces: Usa texto descriptivo para enlaces, evita "clic aquí"
Convenciones para Imágenes
Nomenclatura
- Usa nombres descriptivos:
docker-architecture-diagram.png - Incluye alt text descriptivo para accesibilidad
- Organiza en carpetas por tema dentro de
assets/
Formato y Calidad
- Prefiere formato PNG para diagramas y capturas
- Usa JPG para fotografías
- Optimiza el tamaño sin perder calidad
- Incluye imágenes en alta resolución cuando sea necesario
Contexto DevSecOps
Enfoque de Contenido
- Contenido educativo: Cursos progresivos desde nivel básico a avanzado
- Público objetivo: Desarrolladores, administradores de sistemas, y profesionales DevOps
- Metodología: Learning by doing con ejemplos prácticos y casos reales
- Temas principales: Docker, Kubernetes, Seguridad, DevOps, CI/CD
Terminología Específica
- DevSecOps: Integración de seguridad en el ciclo DevOps
- Contenedores: Docker, Podman, seguridad de contenedores
- Orquestación: Kubernetes, Docker Swarm
- CI/CD: Integración y despliegue continuo
- Monitorización: Observabilidad y logging
Ejemplos de Contenido de Calidad
Curso Técnico (Estructura Real)
---
title: Curso de Docker desde cero
sidebar_label: Introducción
slug: curso_de_docker_desde_cero
tags: [docker, devops, contenedores]
---
# Introducción a Docker
Bienvenido al curso de Docker donde aprenderás desde la instalación hasta la implementación en producción.
## ¿Qué aprenderás?
- Conceptos fundamentales de contenedores
- Gestión de imágenes y contenedores
- Docker Compose para aplicaciones multi-contenedor
- Mejores prácticas de seguridad
## Tu primer contenedor
```bash
docker run hello-world
Este comando descarga y ejecuta tu primer contenedor...
## Recursos Adicionales
- [Conventional Commits](https://www.conventionalcommits.org/)
- [Clean Code Principles](https://github.com/ryanmcdermott/clean-code-javascript)
- [Web Accessibility Guidelines](https://www.w3.org/WAI/WCAG21/quickref/)
---
> **Nota**: Estas instrucciones deben evolucionar con el proyecto. Actualiza este archivo según las necesidades del equipo y las lecciones aprendidas.
