$ man how-to/build-sqlite-content-index

Herramientas CLIadvanced

Cómo Construir un Índice de Contenido SQLite para Tu Repo

Convierte tu sistema de archivos en una base de datos consultable con cero dependencias externas

by Shawn Tenam


Por Qué un Índice SQLite para Contenido

Un repo con más de 100 archivos de contenido a través de 6 plataformas se vuelve opaco. El sistema de archivos organiza archivos por ruta pero no puede responder preguntas como: cuántos posts se finalizaron esta semana, qué contenido tiene hermanos cross-platform, o cuál es el conteo total de palabras de febrero. Una base de datos SQLite ubicada junto al repo te da consultas SQL sobre tu contenido sin cambiar la fuente de verdad. El índice es dato derivado - reconstruido de archivos rastreados por git en cada ejecución. Elimina la base de datos, ejecuta el script, obtén el mismo resultado. Cero dependencias externas. Solo la librería estándar de Python: json, sqlite3, pathlib, re.
CODE

Diseño del Schema - Nueve Tablas

El schema cubre cada tipo de contenido en el repo. La tabla content contiene cada borrador y final a través de todas las plataformas con campos para platform, stage, title, slug, date, pillar, arc, series y word count. daily_logs rastrea métricas de rendimiento. sessions es solo-append y sobrevive reconstrucciones del índice - registros históricos, no datos derivados. skills indexa el registro de skills de Claude y Cursor. content_links almacena el grafo de relaciones con dos tipos de enlace: series_sibling (auto-detectado) y cross_platform_note (parseado del contenido). assets cataloga assets visuales con metadatos estructurados parseados de nombres de archivos. videos y thumbnails rastrean el pipeline de video. El principio de diseño del schema: cada tabla mapea a un tipo de contenido, cada fila se deriva de un archivo, cada reconstrucción es idempotente.
PATTERN

Parsing de Metadatos - Dos Formatos

Los archivos de contenido usan dos formatos de metadatos. La mayoría de las plataformas usan sintaxis de blockquote: > **Key**: Value en la parte superior del archivo. Los posts del sitio web usan frontmatter YAML entre delimitadores ---. El parser detecta el formato automáticamente y extrae campos estructurados. El título se extrae de los metadatos o recurre al primer encabezado #. El conteo de palabras elimina el frontmatter antes de contar. El parser de formato dual significa que no necesitas estandarizar todo tu repo de contenido a un solo formato. Encuentra el contenido donde está.
PATTERN

Detección de Enlaces Cross-Platform

El índice descubre relaciones entre archivos de contenido automáticamente. La detección implícita de hermanos coincide archivos con (date, slug) idénticos a través de plataformas y crea enlaces series_sibling. Si tienes linkedin/final/2026-02-17_build-your-own-os.md y substack/final/2026-02-17_build-your-own-os.md, el índice los enlaza sin anotación manual. La detección explícita de referencias cruzadas parsea secciones de Cross-Platform Notes, busca palabras clave de plataforma con alias, y coincide con contenido existente por fecha y plataforma. Esto crea un grafo de contenido consultable que muestra cómo las piezas se relacionan a través de tu pipeline de publicación.
CODE

Inventario de Assets y Videos

Los patrones de nombres de archivo codifican metadatos estructurados. El parser de assets extrae type, tier, class, variant y size de nombres de archivo como tier-3-idle-256.gif o class-alchemist-static.png. El parser de video extrae brand, aspect ratio y format de nombres de archivo como contentos-landscape o gtmos-linkedin-4x5. Los alias de marca manejan variaciones - lead-magnet mapea a shawnos, por ejemplo. El resultado es un inventario consultable de cada asset visual en el repo sin catalogación manual. Ejecuta una consulta para encontrar todas las animaciones idle de tier-3 para shawnos. Ejecuta otra para encontrar videos desplegados que faltan en un sitio específico.
PRO TIP

Detección de Páginas Muertas y Brechas de Contenido

Consulta la tabla content por archivos con cero enlaces entrantes desde content_links - esos son huérfanos, contenido que existe pero nada apunta hacia él. Consulta por archivos con cero enlaces salientes - esos son callejones sin salida que no conectan hacia adelante. El uso más poderoso es la detección de brechas: consulta por temas esperados que tienen cero cobertura. Así es como el índice reveló su propia brecha. Tres sistemas principales se lanzaron sin cobertura de blog. La herramienta que encuentra brechas de contenido encontró brechas de contenido sobre la herramienta. Usa el índice como un instrumento de auditoría de contenido, no solo un catálogo. Ejecútalo semanalmente. Deja que las consultas te digan qué escribir a continuación.

guías relacionadas
Cómo Construir Tu Propio Sistema de Ingeniería de ContenidoCómo Construir un Sistema de Renderizado de Video con React y RemotionCómo Diseñar una Estrategia de Content Cluster a Través de Múltiples Sitios
wiki de tutorialesguía de conocimiento
ShawnOS.ai|theGTMOS.ai|theContentOS.ai
built with Next.js · Tailwind · Claude · Remotion