Communitygithub.com

Varnan-Tech/opendirectory

Rédige et conçoit une newsletter HTML complète à partir d'un sujet ou d'un brief. Produit un code prêt à être collé dans Loops, Mailchimp, Beehiiv, Resend ou toute plateforme email standard.

Qu'est-ce que opendirectory ?

Cette compétence permet à un agent IA de créer intégralement une newsletter HTML stylée, adaptée à une plateforme d'emailing, à partir d'un simple sujet ou d'un brief. Elle guide l'utilisateur pas à pas : recueil du sujet, de l'audience et du CTA, puis questions détaillées sur le contenu, la marque, le design et la plateforme cible. Le point fort est la génération d'un HTML contraint : tableaux, styles inline, pas de classes CSS, compatible avec les clients email les plus stricts. L'agent choisit ou génère un template (sombre ou clair), applique les couleurs de marque, la police, et adapte les variables de personnalisation (prénom, entreprise) selon la plateforme (Loops, Mailchimp, Beehiiv, Resend). Il propose également des lignes d'objet, des sections secondaires, et une version texte brut. Un système d'auto-vérification garantit la qualité du rendu. L'utilisateur n'a qu'à fournir les informations, l'agent s'occupe de tout le design et du code.

Compatible avec✓Claude Code~Codex CLI~Cursor✓Gemini CLI
npx skills add https://github.com/Varnan-Tech/opendirectory/tree/main/skills/email-newsletter

Demander à votre IA préférée

Ouvre une nouvelle conversation avec cette compétence d'agent déjà préchargée.

Documentation

Newsletter Email

Rédige et conçoit une newsletter HTML complète à partir d'un sujet ou d'un brief. Le résultat est prêt à être collé dans Loops, Mailchimp, Beehiiv, Resend ou toute plateforme email standard.


Règle impérative : HTML basé sur des tableaux avec styles inline uniquement. Pas de classes CSS, pas de flexbox, pas de grid, pas de blocs <style>. Chaque élément reçoit style="" directement. Ce n'est pas optionnel : les clients email suppriment tout le reste.


Étape 1 : Recueil du brief

J'ai besoin de trois éléments pour commencer. Si les trois sont présents dans le message, passez à l'étape 2.

Si un élément manque, demandez exactement :

« Pour commencer, j'ai besoin de trois choses :

  1. Sujet – de quoi parle cette newsletter ?
  2. Audience – qui la lit ? (rôle, taille de l'entreprise, comment ils vous connaissent)
  3. CTA principal – quelle est l'action unique que vous voulez que les lecteurs fassent ? »

Attendez les trois réponses avant de continuer.


Étape 2 : Recueil complet

Posez toutes les questions en un seul message, regroupées par catégorie. L'utilisateur peut passer certaines questions, des valeurs par défaut s'appliquent.

« Quelques questions avant que je rédige – répondez à ce que vous savez, ignorez le reste :

Contenu

  1. Longueur – brève (300 mots, percutante) / standard (500-700) / approfondie (800+ mots) ?
  2. Format – article éditorial / décompte numéroté / histoire personnelle / rapport de données ?
  3. Contexte du numéro – envoi unique / partie d'une série hebdomadaire / digest mensuel ?
  4. URL du CTA – quel est le lien réel ? (ou j'utiliserai un espace réservé)

Marque 5. Nom de l'entreprise / de la marque – pour l'en-tête et le pied de page 6. Slogan – description en une ligne (optionnel, pour le pied de page) 7. Ville et pays – pour le pied de page (ex : « Paris, France ») 8. Couleur principale de la marque – hexadécimal ? (ex : #856FE6) 9. Accent secondaire – garder le jaune-vert par défaut (#D8F90A) / utiliser la couleur de la marque / autre ?

Design 10. Arrière-plan – sombre (éditorial/SaaS) / clair (propre/corporate) / hexadécimal personnalisé ? 11. Police d'affichage – sérif éditoriale (Instrument Serif) / sans moderne et épurée / polices système uniquement ? 12. Style du bouton – pilule (très arrondi) / légèrement arrondi / coins droits ? 13. Style visuel – éditorial / technique+données / chaleureux+fondateur / audacieux+campagne ?

Plateforme et technique 14. Plateforme – Loops / Mailchimp / Beehiiv / Resend / autre ? 15. Ton – éducatif / conversationnel / audacieux+direct / formel / ludique ? 16. Personnalisation – aucune / prénom / prénom + entreprise ? 17. Ligne d’objet – vous en avez une / vous voulez 3 options ? 18. Sections secondaires – bloc sponsor / appel produit / événement / liens rapides / aucune ? 19. Version texte brut – oui (recommandé) / non ? »

Valeurs par défaut si ignoré :

QuestionValeur par défaut
Longueurstandard (500-700 mots)
Formatarticle éditorial
Contexte du numéroenvoi unique
URL du CTAespace réservé [CTA_URL]
Nom de l'entrepriseespace réservé [YOUR BRAND]
Sloganaucun
Ville et paysespace réservé [CITY, COUNTRY]
Couleur de la marqueaucun (utilise #D8F90A pour tous les accents)
Accent secondaire#D8F90A (jaune-vert par défaut)
Arrière-plansombre
Police d'affichageInstrument Serif (sérif éditoriale)
Style du boutonpilule
Style visueléditorial
Plateformegénérique
Tonconversationnel
Personnalisationaucune
Ligne d’objetgénérer 3 options
Sections secondairesaucune
Texte brutoui

Étape 2.5 : Direction du design (interne – ne pas montrer à l'utilisateur)

À partir des réponses de l'étape 2, déterminez :

  • Le caractère visuel (questions 13, ou déduit du ton et du format si ignoré)
  • UN élément incontournable – identifiez-le avant l'étape 3
  • Le chemin du template (voir étape 5)

Valeurs par défaut du caractère si la question 13 est ignorée :

  • Ton éducatif / formel : Éditorial
  • Contenu axé sur les métriques (stats, benchmarks, rapports) : Technique/données
  • Lancements de produits, événements, campagnes : Audacieux/campagne

Ne demandez jamais à l'utilisateur une direction de design séparément – déduisez-la de ses réponses.


Étape 3 : Conception de la structure

Lisez references/html-email-guide.md pour les règles de mise en page avant de choisir les sections.

En fonction du sujet + de l'audience + du CTA + des sections secondaires demandées, sélectionnez des sections parmi cette bibliothèque :

SectionInclure quand
headerToujours – espace réservé du logo + numéro de numéro ou date
heroToujours – grand titre + accroche de 1 à 2 phrases
introTon conversationnel ou éducatif – courte note personnelle
main-contentArticle ou insight principal (texte long)
stat-calloutIl y a une statistique, citation ou donnée convaincante
secondary-sectionUn deuxième CTA a été demandé
product-ctaContexte de marque présent et un placement produit subtil fonctionne
sponsor-blockUne section sponsor a été demandée
quick-linksUne section de liens organisés a été demandée
footerToujours – lien de désabonnement + nom de l'entreprise

Affichez la structure choisie sous forme de liste numérotée avec un objectif par ligne :

Structure proposée :
1. En-tête – logo + Numéro #1 / [date]
2. Hero – titre + paragraphe d'accroche
3. Intro – courte mise en contexte personnelle
4. Contenu principal – analyse du [sujet]
5. Mise en avant statistique – donnée clé de l'histoire
6. CTA – [texte du CTA]
7. Pied de page – désabonnement + entreprise

Cette structure vous convient-elle, ou dois-je ajuster certaines sections ?

Attendez la confirmation avant l'étape 4.


Étape 4 : Rédaction du contenu

Rédigez le texte pour chaque section dans l'ordre. Pas encore d'HTML – uniquement de la prose propre.

Règles par section :

  • En-tête : Numéro du numéro + date. Pas de texte nécessaire.
  • Titre Hero : 8 mots max, axé sur le résultat, ne commence pas par « Je/Nous/Nos »
  • Accroche Hero : 1 à 2 phrases, problème ou curiosité, attire le lecteur
  • Intro : 2 à 3 phrases, personnelle ou contextuelle, pas de langage corporate, les contractions sont autorisées
  • Contenu principal : 250 à 400 mots, facile à parcourir – utilisez des phrases en gras pour les points clés, paragraphes courts (1 à 3 lignes), pas de murs de texte, pas de surcharge de listes
  • Mise en avant statistique : Une statistique ou citation, 20 mots max, percutante
  • CTA produit : 2 à 3 phrases, axé sur la valeur, pas « Découvrez notre produit » – dites-leur ce qui change pour eux
  • Texte du bouton CTA : 3 à 5 mots, verbe d'action + bénéfice (« Lire l'analyse complète », « Réserver ma place », « Télécharger le guide »)
  • Pied de page : Espace réservé du lien de désabonnement + nom de l'entreprise

Lisez references/subject-line-formulas.md puis rédigez 3 options de ligne d'objet (si la ligne d'objet n'est pas fournie par l'utilisateur) :

  • Option A : Formule de la curiosité
  • Option B : Formule du bénéfice direct
  • Option C : Formule du nombre/liste

N'utilisez pas de tirets cadratins. N'utilisez pas : « puissant », « transparent », « révolutionnaire », « optimiser », « innovant », « libérer », « transformer », « améliorer », « de pointe », « robuste ».


Étape 5 : Génération HTML

Lisez references/design-system.md et references/html-email-guide.md avant de générer l'HTML.

Template ou personnalisé – décidez en fonction des réponses de l'étape 2 :

Utilisez templates/dark-newsletter.html comme base quand TOUS les critères sont réunis :

  • arrière-plan = sombre (ou non spécifié)
  • police d'affichage = Instrument Serif (ou non spécifié)
  • aucun hexadécimal d'arrière-plan personnalisé fourni

Utilisez templates/light-newsletter.html comme base quand TOUS les critères sont réunis :

  • arrière-plan = clair OU le ton = formel
  • police d'affichage = Instrument Serif (ou non spécifié)
  • aucun hexadécimal d'arrière-plan personnalisé fourni

Générez un HTML personnalisé à partir de zéro quand UN des critères est rempli :

  • hexadécimal d'arrière-plan personnalisé fourni (ni sombre, ni blanc)
  • police d'affichage = sans moderne ou polices système uniquement
  • la combinaison des réponses produit un design qu'aucun template ne couvre

Pour la génération personnalisée : utilisez references/design-system.md Guide de génération personnalisée comme spécification de token complète. Appliquez les choix de l'utilisateur pour l'arrière-plan, la police, le bouton et l'accent.

Ensuite (pour le chemin du template) :

  1. Sélectionnez uniquement les sections nécessaires du template (basées sur la structure de l'étape 3)
  2. Remplacez toutes les valeurs [PLACEHOLDER] par le contenu de l'étape 4
  3. Appliquez la substitution de la couleur de marque (voir ci-dessous)
  4. Vérifiez que tous les espaces réservés [UNSUBSCRIBE_URL] sont toujours présents (l'ajustement à la plateforme a lieu à l'étape 6)

Règles de substitution de la couleur de marque :

Si brand_color est fournie :

  • Remplacez le bgcolor de la bande de marque (#D8F90A dans la ligne height:2px) par la couleur de marque
  • Remplacez la couleur de la bordure gauche de la mise en avant statistique par la couleur de marque
  • Remplacez la couleur du libellé de catégorie par la couleur de marque
  • Si la luminance de la couleur de marque est élevée (jaunes, verts, oranges – la plupart des néons) : remplacez également le #D8F90A du badge d'étape par la couleur de marque
  • Si la luminance de la couleur de marque est faible (bleu marine foncé, vert forêt, charbon) : conservez les badges d'étape et le bouton CTA en #D8F90A, utilisez la couleur de marque uniquement pour la bande et la bordure de la mise en avant statistique

Si brand_color n'est PAS fournie : conservez toutes les valeurs #D8F90A telles quelles.

Règles de substitution du contenu (réponses de l'étape 2) :

  • Si company_name est fourni : remplacez tous les espaces réservés [YOUR BRAND] et [COMPANY NAME]
  • Si city_country est fourni : remplacez l'espace réservé [CITY, COUNTRY]
  • Si tagline est fourni : ajoutez comme sous-titre dans le pied de page après le nom de l'entreprise
  • Si cta_url est fourni : remplacez tous les espaces réservés [CTA_URL] par l'URL réelle
  • Si personalization = first_name : ajoutez une variable de prénom adaptée à la plateforme dans le message d'accueil du Hero – ex : Hey %%first_name%%, sur Beehiiv, Hey {{first_name}}, sur Loops, Hey *|FNAME|*, sur Mailchimp
  • Si personalization = first_name + company : ajoutez les deux variables là où c'est contextuellement approprié

Vérification de tension visuelle de la couleur de marque (sur email sombre) :

La couleur de marque ressort-elle visuellement sur #111111 ? Testez mentalement : serait-elle visible en tant que bande de 2px ?

  • Couleurs à saturation élevée (violets, bleus, sarcelles, roses, jaunes, oranges, verts) : OUI – utilisez pour la bande + bordure de la mise en avant statistique + libellé de catégorie
  • Faible saturation / quasi neutre (gris chauds, beige, blanc cassé) : bande uniquement ; le libellé de catégorie revient à #555555
  • Presque noir (bleu marine très foncé, vert forêt, charbon en dessous d'environ #2A2A2A) : ignorez la couleur de marque pour TOUS les usages d'accent, revenez à #D8F90A pour chaque élément

Règle de discipline des accents : la couleur de marque apparaît au MAXIMUM à 3 endroits : bande de marque, bordure de mise en avant statistique, libellé de catégorie. Jamais dans le corps du texte, les titres, les arrière-plans des boutons ou les arrière-plans des sections. Le sur-marquage tue la sensation premium.

Couleur du texte du bouton CTA :

  • Sur fond de bouton #D8F90A : utilisez toujours du texte #0A0A0A (c'est une couleur claire)
  • Sur fond de bouton #111111 (dans la carte d'appel jaune) : utilisez toujours du texte #F2F2F2
  • Sur bouton de couleur de marque : utilisez #0A0A0A si la marque est claire, #FFFFFF si la marque est foncée

Requis sur chaque <td> avec une couleur de fond : À la fois l'attribut HTML bgcolor= ET le style inline background-color:. Exemple :

<td bgcolor="#D8F90A" style="background-color:#D8F90A;">

L'attribut gère Outlook. Le style gère tout le reste. N'utilisez jamais un seul des deux.

Excellence du design (principes de design frontend, adaptés à l'email) :

Les contraintes des tableaux dans les emails ne limitent pas l'ambition du design. Repoussez-les :

  • La typographie à son extrême : titres de 4 à 5 mots = 60px, tracking -0.04em. Titres de 6 à 7 mots = 56px, tracking -0.03em. 8 mots = 48px. Ne réduisez jamais par sécurité – le titre est une affiche, pas une étiquette. L'Italic d'Instrument Serif sur les citations ajoute un poids littéraire qu'aucun autre élément ne peut égaler.

  • Le contraste de densité comme marque de fabrique : Hero = espace ouvert maximum (64px en haut). Paragraphes du corps = serrés et denses. Carte d'appel CTA = espace ouvert maximum à nouveau (64px). Ouvert → serré → ouvert est le rythme qui se lit comme un design intentionnel, pas comme un résultat de template.

  • Profondeur de fond via l'alternance des sections (tous compatibles email) :

    • En-tête : #0A0A0A
    • Hero : #111111
    • Mise en avant statistique externe : #111111, carte interne surélevée : #1A1A1A
    • Paragraphes du corps : #161616 (une légère élévation crée de la profondeur sans couleur)
    • Cartes d'étape : #111111 (contraste avec le corps)
    • Carte d'appel CTA : #D8F90A (le SEUL élément lumineux – ne diluez jamais)
    • Pied de page : #080808
  • Rareté des accents = luxe : Une carte d'appel jaune dans une mer sombre donne une impression premium. Du jaune apparaissant à six endroits donne une impression bon marché. La puissance de la carte CTA vient entièrement du fait qu'elle est l'élément lumineux unique dans un email sombre.

  • Test inoubliable : Avant d'enregistrer, dites en une phrase ce qu'un lecteur décrirait à un collègue 3 heures plus tard. Si c'est vague (« c'était sombre et propre ») – l'ancre visuelle n'est pas assez forte. Rendez-la spécifique (« la carte jaune avec le grand titre sérif »).

  • Mise en avant statistique comme citation magazine : Bordure gauche de 4px (pas 3px). 26px italic Instrument Serif sur le texte de la citation. Padding intérieur de 32px. C'est ce que l'email fait de plus proche d'une citation de magazine. Traitez-la comme telle.


Étape 6 : Ajustement à la plateforme

Lisez references/platform-compat.md et appliquez les ajustements spécifiques à la plateforme :

PlateformeAction
LoopsRemplacez [UNSUBSCRIBE_URL] par {{unsubscribe_url}}. Remplacez les références [FIRST_NAME] par {{first_name}}
MailchimpRemplacez [UNSUBSCRIBE_URL] par *|UNSUB|*. Ajoutez mc:edit="[section-name]" aux blocs <td> modifiables
BeehiivRemplacez [UNSUBSCRIBE_URL] par %%unsubscribe_url%%. Remplacez [FIRST_NAME] par %%first_name%%
ResendRemplacez [UNSUBSCRIBE_URL] par {unsubscribeUrl}. Note : la sortie React Email .tsx est disponible sur demande
Générique/AutreConservez [UNSUBSCRIBE_URL] comme espace réservé avec le commentaire : <!-- Remplacez par votre lien de désabonnement -->

Étape 7 : Auto-vérification

Vérifiez l'HTML généré avant de le fournir. Corrigez chaque problème trouvé – ne sautez aucune vérification.

Vérifications de rendu :

  • Tous les styles sont inline – aucun bloc <style>, aucun attribut class= nulle part
  • Tous les <table> ont cellpadding="0" cellspacing="0" border="0"
  • Les images (le cas échéant) ont alt="", border="0", display:block dans le style
  • Largeur maximale de 600px appliquée au tableau conteneur
  • Le bouton CTA utilise une structure <table> + <td> avec l'attribut bgcolor=, pas seulement un <a> avec display:block
  • Pas de flexbox, grid, position:, float:, variables CSS (--var), min-height, max-height dans aucun style inline
  • border-radius sur <td> uniquement – pas sur <table> ou <a> (Outlook rend le rayon du <td>)
  • Le pied de page a un lien de désabonnement avec la variable correcte pour la plateforme

Vérifications de contenu :

  • Le titre Hero fait 8 mots ou moins
  • Le texte du bouton CTA fait 3 à 5 mots
  • Pas de tirets cadratins (les doubles tirets -- sont corrects, pas les cadratins —)
  • Pas de mots interdits : « puissant », « transparent », « révolutionnaire », « optimiser », « innovant », « libérer », « transformer », « améliorer », « de pointe », « robuste »
  • Les lignes d'objet utilisent trois formules différentes (curiosité, bénéfice, nombre/liste) – la même formule répétée est interdite
  • La couleur de marque apparaît à 3 endroits maximum
  • Aucun fond de section n'utilise la couleur de marque (sauf la bande)
  • #D8F90A n'est remplacé par la couleur de marque que si la luminance est élevée (selon la règle de substitution)
  • Les espaceurs de contenu utilisent uniquement des img transparents de 1x1px (pas de width:/height: sur les <td>, pas de cellules &nbsp;)
  • Texte brut demandé : extrait et formaté dans le bloc <pre> après l'HTML (ou envoyé comme second message)

Vérifications de la carte d'appel :

  • La carte d'appel CTA est le seul élément #D8F90A (ou couleur de marque à luminance élevée)
  • Le fond du bouton CTA à l'intérieur de la carte d'appel est #111111, le texte est #F2F2F2

Vérifications de la mise en avant statistique :

  • Bordure gauche de 4px (pas 3px)
  • Citation en italic Instrument Serif de 26px
  • Padding intérieur de 32px
  • Couleur de la bordure : couleur de marque (si fournie et adaptée) ou #D8F90A (par défaut)

Étape 8 : Code final

  1. Copiez l'HTML vérifié dans un bloc de code marqué comme html
  2. Si plain_text = "oui" : extrayez le contenu du corps, convertissez les lignes en texte brut (lignes vides entre les paragraphes, liens entre crochets [titre du lien](url), en-têtes # supprimés)
  3. Envoyez l'HTML + le texte brut comme sortie finale

Exemple de sortie :

Voici votre newsletter :

[HTML complet ici]

Version texte brut :

[texte brut ici]

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

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 associés