Communitygithub.com

Varnan-Tech/opendirectory

Toma una señal de compra y genera una secuencia de outreach multicanal personalizada a través de email, LinkedIn y teléfono. Produce de 4 a 6 puntos de contacto listos para enviar en 10-14 días. Opcionalmente redacta borradores de email vía Composio Gmail.

¿Qué es opendirectory?

Este skill permite a un agente de IA (como Claude Code, Cursor o Codex) construir automáticamente secuencias de ventas multicanal a partir de una señal de compra. Está diseñado para vendedores B2B que necesitan personalizar el outreach al instante, sin placeholders genéricos ni jerga corporativa. Soporta la creación de mensajes para email, LinkedIn y llamadas telefónicas, con un enfoque en que cada mensaje esté completamente rellenado con contexto real. Si se configuran las claves de Composio, puede incluso crear borradores de email directamente en Gmail. El skill sigue un proceso estructurado de 9 pasos: verifica variables de entorno, carga el perfil del cliente ideal (ICP) y archivos de cuentas, identifica la señal de compra entre 7 tipos (post-financiación, contratación, desplazamiento de competidor, etc.), desarrolla un ángulo de venta, planifica la secuencia de canales, genera los mensajes con IA (Gemini), mapea objeciones comunes, realiza una auto-verificación de calidad y finalmente guarda la secuencia. Es útil cuando un usuario pide 'crea una secuencia de outreach para', 'escribe una cadencia de ventas' o 'genera un outreach personalizado basado en esta señal'.

Compatible con✓Claude Code~Codex CLI~Cursor✓Gemini CLI
npx skills add https://github.com/Varnan-Tech/opendirectory/tree/HEAD/skills/outreach-sequence-builder

Preguntar en tu IA favorita

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

Documentación

Constructor de Secuencias de Outreach

Toma una señal de compra. Genera una secuencia de outreach multicanal personalizada. Produce mensajes listos para enviar a través de email, LinkedIn y teléfono.


Regla crítica: Cada mensaje debe estar completamente rellenado con el contexto que cargues. Solo se permite {{first_name}} como variable. Sin corchetes [Nombre de Empresa], sin placeholders [INSERTA PUNTO DE DOLOR]. Si no tienes la información para rellenar algo, pregunta antes de escribir. Nunca envíes un mensaje con un placeholder sin rellenar.


Paso 1: Verificación de Configuración

Confirma las variables de entorno requeridas:

echo "GEMINI_API_KEY: ${GEMINI_API_KEY:+set}"
echo "COMPOSIO_API_KEY: ${COMPOSIO_API_KEY:-no configurada, se omitirá la redacción de Gmail}"

Si falta GEMINI_API_KEY: Detente. Dile al usuario: "GEMINI_API_KEY es obligatoria. Consíguela en aistudio.google.com. Añádela a tu archivo .env."

Si falta COMPOSIO_API_KEY: Continúa. Las secuencias se mostrarán como texto formateado para copiar y pegar. La creación de borradores de Gmail se omite.


Paso 2: Cargar Contexto

Verifica si existe un archivo ICP y archivos de cuentas:

ls docs/icp.md 2>/dev/null && echo "icp encontrado" || echo "icp faltante"
ls docs/accounts/ 2>/dev/null && echo "cuentas encontradas" || echo "cuentas faltantes"

Si existe docs/icp.md: Léelo. Extrae:

  • Personas objetivo (cargos, nivel jerárquico, departamento)
  • Perfil de empresa (tamaño, industria, etapa de financiación)
  • Puntos de dolor clave (usa el lenguaje exacto del comprador)
  • Diferenciadores clave (por qué tu producto frente a alternativas)

Si existe docs/accounts/{empresa}.md: Lee el archivo relevante. Extrae:

  • Nombre de la empresa, tamaño, contexto reciente
  • Stack tecnológico o puntos de dolor conocidos
  • Cualquier relación existente o contacto previo

Si no existe ninguno: Pregunta al usuario estas 4 preguntas. No continúes hasta que todas estén respondidas:

  1. ¿Qué hace tu producto? (una o dos frases)
  2. ¿A quién te diriges? (cargo, tamaño de empresa, industria)
  3. ¿Cuál es el principal problema que resuelves? (desde la perspectiva del comprador, no la tuya)
  4. ¿Cuál es tu diferenciador clave? (por qué tú sobre la alternativa que usan hoy)

Paso 3: Identificar la Señal

Determina cuál de los 7 tipos de señal aplica. Lee references/signal-playbook.md para obtener el Insight, Puente, Apertura y Pregunta completa para cada tipo de señal.

7 tipos de señal:

SeñalDefinición
Post-FinanciaciónLa empresa recaudó una ronda de financiación en los últimos 30 días
Señal de ContrataciónLa empresa publicó 5 o más puestos en una función a la que sirves
Desplazamiento de CompetidorEl contacto usa un competidor y muestra frustración
Lanzamiento de ProductoLa empresa lanzó un nuevo producto o funcionalidad importante
Compromiso con ContenidoEl contacto dio like, comentó o compartió tu contenido
Seguimiento de EventoTe encontraste o estuviste en la misma sesión en una conferencia o webinar
Cambio de EmpleoEl contacto se mudó a una nueva empresa en los últimos 60 días

Si el usuario proporcionó una señal en su prompt: Confirma el tipo y extrae los detalles específicos (tamaño de la ronda, títulos de roles, nombre del producto, nombre del evento, etc.).

Si no hay una señal clara: Pregunta: "¿Qué desencadenó este outreach? (ej. recaudaron una ronda, están contratando ingenieros, te encontraste en un evento)"

Indica el tipo de señal detectada y el detalle específico antes de continuar.


Paso 4: Desarrollar el Ángulo

Usando el tipo de señal y el contexto cargado en los Pasos 2-3, define los cuatro elementos del ángulo. Lee references/signal-playbook.md para la fórmula de este tipo de señal.

Escribe explícitamente antes de generar cualquier mensaje:

Señal: [señal específica + detalle concreto]
Insight: [lo que esta señal revela sobre su situación]
Puente: [cómo tu producto se conecta con lo que la señal revela]
Apertura: [una oración que hace referencia al detalle específico de la señal]
Pregunta: [CTA mínimo viable, menos de 10 palabras]

La apertura debe nombrar el desencadenante específico. Las aperturas vagas se rechazan.

Correcto: "Felicitaciones por la Serie B de $18M — escalar el equipo de ventas rápido normalmente crea una brecha de incorporación." Incorrecto: "Vi que tu empresa recaudó financiación recientemente."


Paso 5: Planificar la Secuencia de Canales

Diseña de 4 a 6 puntos de contacto a través de email, LinkedIn y teléfono. Reglas:

  • Duración total: 10-14 días
  • Intervalo mínimo: 2 días entre dos contactos cualesquiera
  • Nunca uses el mismo canal dos veces seguidas
  • Cada seguimiento debe añadir nuevo valor (nuevo recurso, nuevo ángulo, nuevo punto de prueba). Nunca "solo dando seguimiento".
  • El punto de contacto final es un mensaje corto de cierre

Cadencia predeterminada para la mayoría de las señales:

Día 1:  Email (primer contacto, apertura basada en señal)
Día 3:  LinkedIn (nota de conexión o DM corto)
Día 7:  Email (nuevo ángulo o caso de estudio)
Día 9:  Teléfono (guión de conversación + mensaje de voz)
Día 12: Email (enfoque diferente u objeción abordada)
Día 14: Email (mensaje corto de cierre)

Ajusta según el tipo de señal:

  • Post-Financiación: ve más rápido (Día 1, 2, 4, 7, 10). Actúa dentro de las 48 horas del anuncio.
  • Seguimiento de Evento: empieza con LinkedIn, no con email (canal más cálido primero)
  • Compromiso con Contenido: empieza con una respuesta o comentario en LinkedIn antes del email

Indica el día y canal planificados para cada punto de contacto antes de escribir los mensajes.


Paso 6: Generar la Secuencia

Lee references/sequence-format.md completamente. Lee references/output-template.md y selecciona la plantilla para este tipo de señal.

Escribe la solicitud de Gemini en un archivo temporal:

cat > /tmp/outreach-sequence-request.json << 'ENDJSON'
{
  "system_instruction": {
    "parts": [{
      "text": "Eres un redactor de ventas B2B que escribe outreach en frío que obtiene respuestas. Reglas: La primera oración de cada mensaje es sobre ELLOS, no sobre tu empresa. Menciona la señal de compra específica por nombre y detalle en el mensaje de apertura. Usa contracciones de forma natural. Oraciones cortas. Sin jerga corporativa. Sin palabras prohibidas: sinergia, apalancamiento, tomar contacto, hacer seguimiento, ping, incluir en el loop, alineamiento, innovador, de vanguardia, mejor de su clase, de clase mundial, revolucionario, disruptivo, ancho de banda, inmersión profunda, fruta madura, mover la aguja. Sin cortesías: sin 'Espero que este email te encuentre bien', sin 'Feliz lunes', sin 'Solo quería'. Cada seguimiento añade nuevo valor — nunca 'solo dando seguimiento'. Límites estrictos: cuerpo del email menos de 100 palabras, nota de LinkedIn menos de 300 caracteres, apertura telefónica menos de 20 palabras. Solo se permite {{first_name}} como variable — completa todos los demás detalles del contexto proporcionado. El mensaje de cierre es corto (3-4 oraciones), amigable y deja la puerta abierta."
    }]
  },
  "contents": [{
    "parts": [{
      "text": "CONTEXTO_INSTRUCCIONES_AQUÍ"
    }]
  }],
  "generationConfig": {
    "temperature": 0.7,
    "maxOutputTokens": 4096
  }
}
ENDJSON
curl -s -X POST \
  "https://generativelanguage.googleapis.com/v1beta/models/gemini-2.0-flash:generateContent?key=$GEMINI_API_KEY" \
  -H "Content-Type: application/json" \
  -d @/tmp/outreach-sequence-request.json \
  | python3 -c "import sys,json; d=json.load(sys.stdin); print(d['candidates'][0]['content']['parts'][0]['text'])"

Reemplaza CONTEXTO_INSTRUCCIONES_AQUÍ con:

  • La descripción del producto, persona objetivo, puntos de dolor y diferenciadores del Paso 2
  • El tipo de señal, detalle específico y los cuatro elementos del ángulo del Paso 4
  • El plan de canales del Paso 5
  • Instrucciones para escribir cada punto de contacto con su asunto (email), número de caracteres (LinkedIn) y guión de conversación (teléfono)

Para cada punto de contacto de email, requiere dos variantes de asunto (prueba A/B).


Paso 7: Mapear Objeciones

Después de generar la secuencia, identifica las 2-4 objeciones más probables para este tipo de señal. Anticípate a cada una de forma natural dentro de un punto de contacto existente. No agregues mensajes separados para manejar objeciones. Integra la anticipación en la secuencia.

Lee el manual de objeciones en references/sequence-format.md. Mapea qué punto de contacto maneja cada objeción.

4 objeciones estándar a anticipar:

ObjeciónEnfoque de anticipación
"Ya tenemos una solución"Reconoce su herramienta actual, posiciona la tuya como complementaria o siguiente paso
"No es el momento adecuado"Vincula la señal directamente con por qué ahora es el momento adecuado
"Demasiado caro"Enmarca el ROI, ancla a un número que les importe
"Necesito involucrar a más personas"Ofrece un recurso compartible (resumen de una página, walkthrough grabado)

Indica qué punto de contacto maneja cada objeción antes de presentar la secuencia final.


Paso 8: Autoverificación de Calidad

Ejecuta cada verificación y corrige las infracciones antes de presentar:

  • Cada mensaje comienza con una oración sobre ELLOS
  • El detalle específico de la señal se menciona al menos en el primer punto de contacto
  • Sin placeholders sin rellenar excepto {{first_name}}
  • Los cuerpos de email tienen menos de 100 palabras (cuenta y declara el recuento de palabras para cada uno)
  • Las notas de LinkedIn tienen menos de 300 caracteres (cuenta y declara para cada una)
  • La apertura telefónica tiene menos de 20 palabras
  • Sin palabras prohibidas en ningún mensaje
  • Sin "solo dando seguimiento" en ningún seguimiento
  • Cada seguimiento añade un nuevo ángulo o valor
  • No se usa el mismo canal dos veces seguidas
  • Al menos 2 objeciones anticipadas en toda la secuencia
  • El mensaje de cierre tiene 3-4 oraciones, es amigable, sin culpa

Corrige cualquier infracción antes de presentar.


Paso 9: Salida y Guardado

Presenta la secuencia completa en un bloque de código.

Guardar en archivo:

mkdir -p docs/sequences
cat > docs/sequences/TIPO-DE-SEÑAL.md << 'EOF'
CONTENIDO_SECUENCIA_AQUÍ
EOF
echo "Secuencia guardada en docs/sequences/TIPO-DE-SEÑAL.md"

Si COMPOSIO_API_KEY está configurada: Pregunta: "¿Redactar los puntos de contacto de email en Gmail vía Composio?"

Tras la confirmación, para cada punto de contacto de email:

# El agente llama a la acción GMAIL_CREATE_EMAIL_DRAFT de Composio
# con asunto = [línea de asunto], cuerpo = [cuerpo del email], destinatario = [email de contacto si se conoce]

Después de redactar: "Borradores de email creados en Gmail. Revisa tu carpeta de Borradores."

Notas de LinkedIn: Preséntalas como bloques separados para copiar y pegar con una etiqueta clara por punto de contacto. LinkedIn no admite mensajes programáticos.

Guiones telefónicos: Preséntalos como un guión de conversación formateado con viñetas, no un guión rígido.

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

Generates and updates README.md and API reference docs by reading your codebase's functions, routes, types, schemas, and architecture. Uses graphify to build a knowledge graph first, then writes accurate docs from it. Use when asked to write docs, generate a README, document an API, update stale docs, create an API reference from code, add an architecture section, or document a project in any language. Trigger when a user says their docs are missing, outdated, or wants to document their codebase without writing it manually.

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

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