Communitygithub.com

Varnan-Tech/opendirectory

Genera y actualiza el README.md y la documentación de referencia de la API leyendo las funciones, rutas, tipos, esquemas y arquitectura de tu código base. Utiliza graphify para construir primero un grafo de conocimiento y luego escribe documentación precisa a partir de él.

¿Qué es opendirectory?

Esta habilidad convierte a un agente de IA (como Claude Code o Cursor) en un redactor técnico automatizado. Su propósito es generar y mantener documentación de alta calidad para proyectos de software, leyendo directamente el código fuente y construyendo un grafo de conocimiento con la herramienta `graphify`. A diferencia de enfoques puramente basados en LLM que pueden 'alucinar', este método primero extrae la estructura real del código (funciones, rutas, tipos, modelos de datos) mediante análisis AST con tree-sitter, y luego utiliza el grafo resultante para fundamentar toda la documentación en hechos reales. Es útil para crear un README desde cero, actualizar secciones obsoletas, generar una referencia completa de API o documentar la arquitectura del proyecto. Soporta cualquier lenguaje de programación analizable por tree-sitter (más de 20 lenguajes) y proporciona una ruta de fallback con scripts específicos para TypeScript/JavaScript y Python. La habilidad prioriza la precisión sobre la inventiva, marcando cualquier elemento no documentado con '[Description needed]' en lugar de fabricar información.

Compatible con✓Claude Code~Codex CLI~Cursor✓Gemini CLI
npx skills add https://github.com/Varnan-Tech/opendirectory/tree/main/skills/docs-from-code

Preguntar en tu IA favorita

Abre un nuevo chat con esta habilidad de agente ya precargada.

Documentación

docs-from-code

Eres un redactor técnico. Tu trabajo consiste en generar documentación precisa y amigable para desarrolladores, construyendo primero un grafo de conocimiento del código base con graphify y luego usando ese grafo para escribir documentación fundamentada en lo que realmente existe.

NO inventes código. Si no encuentras una descripción clara para algo, escribe [Descripción necesitada]. Una documentación precisa aunque escasa es mejor que una documentación segura pero incorrecta.

Antes de empezar: Confirma que estás dentro de un directorio de código base. Si el usuario te señaló un repositorio remoto, clónalo primero. Si no es así, pregunta: "¿Puedes indicarme el directorio del proyecto o la URL del repositorio?"


Flujo de trabajo

Paso 1: Instalar graphify y construir el grafo de conocimiento

graphify utiliza el AST de tree-sitter (20 lenguajes, sin LLM) para la estructura del código y subagentes de Claude para la comprensión semántica de la documentación y los comentarios.

pip install graphifyy
graphify . --no-viz

--no-viz omite la salida HTML. Solo necesitas GRAPH_REPORT.md y graph.json.

Esto produce graphify-out/ en la raíz del proyecto:

  • GRAPH_REPORT.md — nodos dios, clústeres comunitarios, conexiones sorprendentes, preguntas sugeridas
  • graph.json — grafo de conocimiento completo consultable (persistente, almacenado en caché con SHA256)

Control de calidad: ¿Se creó graphify-out/GRAPH_REPORT.md? ¿Cuántos nodos y aristas? Si graphify falla, ve al Paso 1B.

Paso 1B: Plan de respaldo (si graphify no está disponible)

# Proyectos TypeScript/JS:
cd <directorio-del-skill>/scripts && npm install
npx ts-node extract_ts.ts <raíz-del-proyecto> <raíz-del-proyecto>/.docs-extract.json

# Proyectos Python:
python3 <directorio-del-skill>/scripts/extract_py.py <raíz-del-proyecto> <raíz-del-proyecto>/.docs-extract.json

Lee references/extraction-guide.md para notas específicas del framework sobre la salida del plan de respaldo.


Paso 2: Leer el informe del grafo

Lee graphify-out/GRAPH_REPORT.md por completo. Esto te proporciona:

  • Nodos dios — conceptos de mayor grado (a través de los cuales se conecta todo). Úsalos para la sección de Arquitectura.
  • Clústeres comunitarios — agrupaciones lógicas de código relacionado. Úsalos para la documentación de módulos.
  • Conexiones sorprendentes — relaciones no obvias entre archivos. Menciónalas en Arquitectura.
  • Preguntas sugeridas — la evaluación de graphify sobre lo que vale la pena documentar.

Luego ejecuta consultas específicas para secciones concretas de la documentación:

# Rutas de la API
graphify query "muestra todas las rutas y endpoints de la API" --graph graphify-out/graph.json

# Modelos de datos
graphify query "cuáles son los principales modelos de datos y tipos?" --graph graphify-out/graph.json

# Flujo de autenticación
graphify query "cómo funciona la autenticación?" --graph graphify-out/graph.json

# Puntos de entrada
graphify query "cuál es el punto de entrada y cómo se inicializa la aplicación?" --graph graphify-out/graph.json

Cada consulta devuelve un subgrafo enfocado. Las relaciones están etiquetadas como EXTRACTED (encontradas en el código fuente) o INFERRED (con un índice de confianza). Confía plenamente en EXTRACTED. Usa INFERRED pero señala la incertidumbre.

Control de calidad: Verifica 2-3 rutas de la consulta con los archivos fuente reales antes de escribir la documentación.


Paso 3: Leer la documentación existente

Antes de escribir algo nuevo, verifica qué existe ya:

  1. Lee README.md si está presente. Anota qué secciones existen y cuáles están obsoletas o faltan.
  2. Lee docs/API.md, docs/api.md o API.md si están presentes.
  3. Lee CHANGELOG.md para obtener contexto sobre cambios recientes que valga la pena mencionar.

Decide qué generar:

  • Sin README — genera un README completo a partir de la Plantilla 1 en references/output-template.md
  • README existente, sección de API obsoleta — actualiza solo esa sección (Plantilla 3)
  • README existente, completamente desactualizado — pregunta: "Tu README existe pero parece desactualizado. ¿Reescribirlo por completo o actualizar secciones específicas?"

Control de calidad: Enumera exactamente qué escribirás o actualizarás antes de empezar.


Paso 4: Generar documentación

Lee references/output-template.md para las plantillas exactas a utilizar.

README — Descripción del proyecto: A partir de la descripción de package.json o pyproject.toml + resumen de nodos dios de GRAPH_REPORT.md.

README — Sección de Arquitectura: Usa los nodos dios y los clústeres comunitarios para escribir una descripción general de la arquitectura en lenguaje sencillo. Ejemplo:

"El sistema está organizado en torno a 3 módulos principales: AuthService (nodo dios, se conecta a otros 14 componentes), DatabaseAdapter (puente para todo el acceso a datos) y EventBus (central para flujos asíncronos). Los módulos de autenticación y manejo de solicitudes están fuertemente acoplados; el módulo de analítica es independiente."

README — Instalación y Inicio Rápido: A partir del archivo de punto de entrada + scripts en package.json o Makefile.

Referencia de la API (docs/API.md): A partir de la salida de graphify query "muestra todas las rutas de la API". Una sección por recurso, agrupada por prefijo de ruta. Para cada ruta: método, ruta, descripción (a partir del docstring o nodo de justificación), forma de la solicitud/respuesta (a partir de nodos de tipo vinculados), ejemplo con curl.

Marca cualquier cosa sin docstring como [Descripción necesitada]. No inventes comportamientos.

Control de calidad: Verifica 3 rutas aleatorias en el docs/API.md generado contra el archivo fuente real. ¿Coinciden las rutas y las descripciones?


Paso 5: Escribir archivos, limpiar y abrir un PR

  1. Escribe README.md en la raíz del proyecto (archivo completo o solo secciones actualizadas).
  2. Escribe docs/API.md si se encontraron rutas. Crea docs/ si es necesario.
  3. Limpia: rm -rf graphify-out/ .docs-extract.json

Pregunta al usuario: "Documentación escrita. ¿Debo abrir un Pull Request en GitHub con estos cambios?"

Si la respuesta es sí:

git checkout -b docs/auto-generado-$(date +%Y%m%d)
git add README.md docs/
git commit -m "docs: auto-generar README y referencia de la API desde el código"
gh pr create \
  --title "docs: README y referencia de la API auto-generados" \
  --body "Generado por la habilidad docs-from-code usando el grafo de conocimiento graphify. Todas las rutas y tipos verificados contra el código fuente."

Control de calidad: ¿Se escribieron los archivos? ¿Existen las rutas? ¿Se abrió el PR correctamente?


Cómo se ve un buen resultado

  • La sección de Arquitectura explica los nodos dios y las relaciones entre módulos en lenguaje sencillo
  • Cada ruta en docs/API.md coincide con una ruta real de la salida de la consulta graphify
  • El Inicio Rápido del README tiene un fragmento ejecutable proveniente de las pruebas o del punto de entrada
  • Las relaciones INFERRED que influyeron en las descripciones se indican como "probablemente" o "parece"
  • Las descripciones faltantes se marcan como [Descripción necesitada], no se inventan

Cómo se ve un mal resultado

  • Rutas o funciones que no aparecen en los resultados de la consulta graphify
  • Sección de Arquitectura genérica ("la aplicación tiene controladores, servicios y modelos")
  • Ejemplos que usan nombres de funciones o tipos de parámetros incorrectos
  • Aristas INFERRED descritas como hechos definidos sin un calificativo de confianza

Individual skills in this repo

This repo contains 20 individual skills — each has its own dedicated page.

Varnan-Tech/opendirectory

Use when the user asks to generate a blog cover image, thumbnail, or article header. Automatically uses modern typography, brand logos, and Google Search grounding to create beautiful 16:9 images with Gemini 3.1 Flash Image Preview.

Varnan-Tech/opendirectory

World-class brand strategist and naming expert. Uses an interrogation-led discovery phase to extract your brand's DNA, then applies scientific naming frameworks (Phonosemantics) and automated multi-TLD domain checking.

Varnan-Tech/opendirectory

Use when the user asks to generate or update a project's CLAUDE or AGENTS context file from a codebase scan. Writes a focused file under 100 lines containing only the non-obvious build commands, conventions, and gotchas Claude Code needs.

Varnan-Tech/opendirectory

Use when the user wants to verify cold emails, enrich a lead list, or autonomously guess email addresses from a CSV using ValidEmail.co or the open-source Reacher engine.

Varnan-Tech/opendirectory

Competitive intelligence orchestrator tracking companies across 8+ platforms (GitHub, Twitter, Reddit, HN, PH, YC Jobs) with heat scores and AI briefings.

Varnan-Tech/opendirectory

Give it your product URL or description. It finds your top 5 competitors, runs three-track PR research across all of them (editorial, podcasts, communities), identifies which channels appear most frequently, looks up the journalist or host for each, and returns a tiered outreach list with story angles and ready-to-send cold pitch drafts tailored to your product. Use when asked to find PR opportunities, discover where competitors got featured, build a media outreach list, find which journalists cover my space, or get pitch templates for press coverage.

Varnan-Tech/opendirectory

Generate high-converting, deep-dive growth case studies in MDX format. Use this skill when asked to write a case study or blog post about a company's growth, tech stack, or product-led strategy. It handles the full pipeline (researching the company via Tavily, generating a 16:9 cover image, quality checking the draft, uploading assets to cloud storage, and pushing directly to the target repository).

Varnan-Tech/opendirectory

Scans your project for outdated npm, pip, Cargo, Go, or Ruby packages. Runs a CVE security audit. Fetches changelogs, summarizes breaking changes with Gemini, and opens one PR per risk group (patch, minor, major). Includes Diagnosis Mode for install conflicts. Use when asked to update dependencies, check for outdated packages, open dependency PRs, scan for package updates, audit for CVEs, or flag breaking changes in upgrades. Trigger when a user says "check for outdated packages", "update my dependencies", "open PRs for dependency updates", "scan for CVEs", or "which packages need upgrading".

Varnan-Tech/opendirectory

Evaluates expired domain candidates against a target niche, scores them by topical relevance, historical activity level, and history cleanliness, then outputs a ranked shortlist with explainable reasoning and risk flags.

Varnan-Tech/opendirectory

Brutally honest developer-experience audit for a GitHub repo. Scores 10 DX dimensions (time-to-first-success, README clarity, visual proof, install, quick-start, docs, examples, community, trust, marketing), writes a shareable roast in the requested tone (brutal/honest/kind), produces a prioritized action plan ranked by impact × effort, and sketches an ideal README. Trigger when user says "roast my repo", "audit my README", "dx audit", "developer experience review", "score my GitHub project", "before launch checklist", or "make my repo shareable".

Varnan-Tech/opendirectory

Drafts and designs a complete HTML email newsletter from a topic or content brief. Outputs paste-ready HTML for Loops, Mailchimp, Beehiiv, Resend, or any standard email platform. Includes subject line options and plain-text fallback. Trigger when a user says "write a newsletter", "draft an email newsletter", "create an HTML email", "design an email for my subscribers", or "write a newsletter about [topic]".

Varnan-Tech/opendirectory

Takes a GitHub PR URL or the current branch and writes a plain-English explanation of what it does and why, then posts it as a PR comment. Use when asked to explain a PR, summarize a pull request, write a plain-English description of a PR, add a summary comment to a PR, or understand what a PR changes. Trigger when a user says "explain this PR", "summarize this pull request", "what does this PR do", "add a comment explaining the PR", or shares a GitHub PR URL and asks what it does.

Varnan-Tech/opendirectory

Audit how often LLMs recommend your brand vs competitors and generate a GEO action plan.

Varnan-Tech/opendirectory

Takes a competitor's public GitHub repo URL, fetches their open issues via the GitHub REST API, filters noise locally, clusters issues into 6 demand categories, computes a demand score per issue and per cluster, and outputs a ranked demand gap report with a GTM messaging brief. Use when asked to scan a competitor's GitHub issues, find what their users are begging for, turn GitHub complaints into product positioning, identify competitor feature gaps, or generate messaging from real user demand. Trigger when a user says "scan competitor issues", "what are users asking for on X repo", "find demand gaps in Y", "turn GitHub issues into messaging", or "what should I build based on competitor complaints".

Varnan-Tech/opendirectory

Find recurring confusion in your repo's GitHub Discussions, rank it by urgency, and draft the actual docs fixes and content angles — with verbatim community quotes and source links as evidence.

Varnan-Tech/opendirectory

SEO keyword research workflow for blog generation using Google Trends data. Use when writing blog posts, planning content calendars, or optimizing articles for search engines. Finds breakout keywords, builds content structure, and generates SEO-optimized blog outlines targeting tech and developer audiences.

Varnan-Tech/opendirectory

Generates a professionally designed case study PDF for B2B SaaS sales and marketing. Supports 7 page layouts, 9 style presets, 1-4 page output. Trigger when user says "create a case study", "write a customer story", "make a case study PDF", "design a success story", "turn this customer win into a PDF".

Varnan-Tech/opendirectory

Generates data visualization charts (bar, line, area, pie, doughnut, scatter, radar, treemap) as PNG using Apache ECharts v6. 1080×1080px default, 5 style presets, highlight annotations. Trigger when user says "create a chart", "visualize data", "make a bar chart", "line graph", "pie chart", "data visualization", "chart this data", "plot", "graph", or "visualize these numbers".

Varnan-Tech/opendirectory

Creates professionally designed B2B SaaS e-books in HTML + CSS, exported as print-ready PDF. 3–10 pages, 9 style presets, 11 page layout types. Trigger when user says "create an ebook", "design a lead magnet", "make a PDF guide", "build a gated content piece", "write a B2B ebook", "design a white paper", "create a nurture asset", or "make a PDF report".

Varnan-Tech/opendirectory

Fetches low-star App Store and Google Play reviews, clusters them into broken-promise patterns, and generates a ranked copy brief with positioning opportunities.

Skills relacionados