CommunitySchreiben & Editierengithub.com

Varnan-Tech/opendirectory

Verwandelt grobe Notizen, Stichpunkte, Sprachnotizen oder Tweet-Dumps in einen polierten, veröffentlichungsreifen Blogbeitrag. Kann optional mit Tavily-Recherche angereichert werden, um Behauptungen mit unterstützenden Daten zu untermauern.

Was ist opendirectory?

Diese Fähigkeit ist ein KI-gestützter Blog-Assistent, der aus unstrukturierten Eingaben – wie Stichpunkten, Sprachnotizen, Tweet-Threads oder kurzen Rohentwürfen – einen vollständigen, veröffentlichungsreifen Blogbeitrag erstellt. Sie wurde für Entwickler-Tools wie Claude Code, Cursor und Codex entwickelt. Die Besonderheit ist die strenge Quellentreue: Keine erfundenen Behauptungen, Zahlen oder Zitate. Jede Aussage muss entweder aus der ursprünglichen Eingabe stammen oder durch eine optionale Tavily-Recherche verifiziert werden. Die Fähigkeit durchläuft einen mehrstufigen Prozess: Sie analysiert den Eingabetyp, wählt automatisch einen passenden Blog-Stil (z. B. Tutorial, Fallstudie, Meinungsbeitrag oder Erklärartikel), reichert bei Bedarf mit externen Quellen an und generiert den Text über das Gemini 2.0 Flash Modell. Ein integrierter Selbst-QA-Schritt prüft auf verbotene Wörter, zu lange Absätze, fehlende Quellenangaben und andere Stilfehler, bevor das finale Ergebnis präsentiert wird. Zusätzlich werden eine Meta-Beschreibung und ein alternativer Titel erstellt.

Funktioniert mit✓Claude Code~Codex CLI~Cursor✓Gemini CLI
npx skills add https://github.com/Varnan-Tech/opendirectory/tree/main/skills/noise2blog

Installed? Explore more Schreiben & Editieren skills: steipete/notion, langchain-ai/langchain, bytedance/podcast-generation · View all 6 →

In Ihrer bevorzugten KI fragen

Öffnet einen neuen Chat, in dem dieser Agent-Skill bereits geladen ist.

Dokumentation

Noise to Blog

Aus jeder groben Eingabe (Stichpunkte, Sprachnotizen, Tweet-Dumps oder kurze Entwürfe) wird ein polierter, veröffentlichungsreifer Blogbeitrag. Jede Behauptung geht auf das Ausgangsmaterial oder Tavily-verifizierte Recherchen zurück.


Kritische Regel: ERFINDE KEINE EINZELHEITEN. Jede Behauptung, Kennzahl und jedes Beispiel im Blogbeitrag muss aus der Roheingabe oder einem Tavily-Suchergebnis stammen. Erfinde niemals Daten, Zitate oder Ergebnisse.


Schritt 1: Setup-Prüfung

Bestätige, dass die erforderlichen Umgebungsvariablen gesetzt sind:

echo "GEMINI_API_KEY: ${GEMINI_API_KEY:+gesetzt}"
echo "TAVILY_API_KEY: ${TAVILY_API_KEY:-nicht gesetzt, Tavily-Anreicherung wird übersprungen}"

Wenn GEMINI_API_KEY fehlt: Stopp. Sag dem Benutzer: "GEMINI_API_KEY wird benötigt. Hol dir einen unter aistudio.google.com → API-Schlüssel. Füge ihn deiner .env-Datei hinzu."

Wenn TAVILY_API_KEY fehlt: Fahre fort. Beachte, dass die Tavily-Anreicherung übersprungen wird. Der Blogbeitrag basiert dann ausschließlich auf dem bereitgestellten Inhalt. Das ist in Ordnung für persönliche Geschichten, Tutorials aus eigener Erfahrung oder Meinungsbeiträge.

Bestätige, dass eine Eingabe vorliegt. Der Benutzer muss eines der folgenden Dinge bereitstellen:

  • Eingefügten Text (Stichpunkte, grobe Notizen, Transkript, Tweet-Dump, kurzer Entwurf)
  • Eine URL zum Abrufen

Liegt keine Eingabe vor, frage: "Teile deine groben Notizen, Stichpunkte oder dein Transkript. Füge sie direkt ein oder gib mir eine URL, um die Quelle abzurufen."


Schritt 2: Eingabe lesen und analysieren

Wenn die Eingabe eine URL ist: Rufe den Seiteninhalt mit WebFetch ab. Extrahiere: Titel, Autor, Veröffentlichungsdatum, gesamten Fließtext, wichtige Statistiken, nummerierte Listen, Zwischenüberschriften, Zitate.

Wenn die Eingabe eingefügter Text ist: Lies ihn direkt. Identifiziere den Eingabetyp:

  • Stichpunkte oder grobe Notizen: fragmentierte Ideen, unvollständige Sätze, Bewusstseinsstrom
  • Sprachnotiz: gesprächig, wiederholend, Füllwörter (ähm, hm, also, weißt du), abschweifende Sätze
  • Tweet-Thread-Dump: kurze Fragmente, @Erwähnungen, Hashtags, Nummerierung "1/8"
  • Kurzer Entwurf: strukturiert, aber dünn, braucht Erweiterung und Feinschliff

QA-Kontrollpunkt: Gib vor dem Fortfahren an:

  1. Erkannten Eingabetyp
  2. Kernthese oder Hauptargument in einem Satz
  3. Die 3-5 stärksten Erkenntnisse, Fakten oder Ideen aus dem Rohtext
  4. Behauptungen, die eine externe Überprüfung benötigen (Benchmarks, Statistiken, Produktvergleiche, Forschungsergebnisse)

Wenn du keine Kernthese identifizieren kannst, frage: "Was ist das Wichtigste, das die Leser aus diesem Beitrag mitnehmen sollen?"


Schritt 3: Blog-Stil wählen

Vier Stile. Automatische Erkennung anhand von Signalen im Inhalt. Benutzereingriff wird immer respektiert.

StilWann verwendenSignale
Technisches TutorialSchritt-für-Schritt-Anleitung, How-to, Code-WalkthroughNummerierte Schritte, Befehle, Code-Snippets, "So geht's" im Inhalt
FallstudieVorher/Nachher-Geschichte, Build-Log, Lessons LearnedKonkrete Ergebnisse, Zeitpläne, Ich-Perspektive
MeinungsbeitragMeinung, Argument, kontraintuitive Behauptung"Ich denke", "das Problem mit X", konträre Position, Debatten-Framing
ErklärartikelWas ist X, warum es wichtig ist, wie es funktioniertKonzept-lastig, vergleichsschwer, "die meisten Leute wissen nicht"

Erkennungslogik:

  • Inhalt hat nummerierte Schritte oder Befehle → Technisches Tutorial
  • Inhalt hat Vorher/Nachher, konkrete Metriken oder erzählerischen Bogen → Fallstudie
  • Inhalt argumentiert gegen Allgemeinwissen oder vertritt eine starke Meinung → Meinungsbeitrag
  • Inhalt erklärt ein Konzept, Tool oder Trend für Unkundige → Erklärartikel

Gib den gewählten Stil und die Begründung an. Bei Mehrdeutigkeit wähle einen und notiere die Entscheidung.


Schritt 4: Mit Tavily-Recherche anreichern

Diesen Schritt still überspringen, wenn TAVILY_API_KEY nicht gesetzt ist.

Suche nach unterstützenden Belegen für Behauptungen im Rohtext, die von einer Verifizierung oder Daten profitieren könnten. Gute Kandidaten:

  • Produkt-Benchmarks oder Leistungszahlen
  • Marktstatistiken oder Branchentrends
  • Technische Vergleiche ("X ist schneller als Y")
  • Zahlen, die der Benutzer aus dem Gedächtnis statt aus einer zitierten Quelle genannt hat

Führe eine Tavily-Suche pro Behauptung durch, die überprüft werden muss. Maximal 3 Suchen, um übermäßiges Quellen zu vermeiden:

curl -s -X POST "https://api.tavily.com/search" \
  -H "Content-Type: application/json" \
  -d '{
    "api_key": "'"$TAVILY_API_KEY"'",
    "query": "SPEZIFISCHE_BEHAUPTUNG_ODER_THEMA",
    "search_depth": "advanced",
    "max_results": 5,
    "include_answer": true
  }'

Behalte Ergebnisse mit score >= 0.65. Extrahiere: Titel, URL, Inhaltsausschnitt.

Regeln für die Verwendung von Tavily-Ergebnissen:

  • Verwende sie, um bereits in der Roheingabe vorhandene Behauptungen zu unterstützen oder zu überprüfen. Führe niemals neue Behauptungen aus Suchergebnissen ein.
  • Weise Quellen natürlich im Text zu: "laut [Quelle]", "Daten von [X] zeigen"
  • Wenn kein Tavily-Ergebnis eine Behauptung bestätigt, lass die Behauptung unbestätigt, anstatt ein unzusammenhängendes Ergebnis zu verwenden

Schritt 5: Blogbeitrag generieren

Lese references/blog-format.md vollständig. Wähle die passende Vorlage aus references/output-template.md. Verinnerliche alle Regeln vor der Generierung.

Schreibe die Gemini-Anfrage in eine temporäre Datei, um Sonderzeichen sicher zu behandeln:

cat > /tmp/noise2blog-request.json << 'ENDJSON'
{
  "system_instruction": {
    "parts": [{
      "text": "Du bist ein Tech-Autor, der wie ein echter Mensch klingt. Regeln: Nur aktive Stimme. Kurze Absätze, maximal 1-3 Zeilen, dann eine Leerzeile. Verwende natürlich Zusammenziehungen (kein, wird nicht, ist, kann nicht, du bist, sie sind). Keine Gedankenstriche – stattdessen ein Komma oder einen Punkt verwenden. Keine Semikolons. Jeder Satz braucht ein konkretes Detail: eine Zahl, einen Toolnamen, einen Dateinamen, einen Befehl, ein Ergebnis. Keine Füllphrasen: kein 'in der sich schnell verändernden Welt von heute', kein 'lasst uns eintauchen', kein 'es ist erwähnenswert', kein 'abschließend', kein 'ich hoffe, das war hilfreich'. Keine verbotenen Wörter: unglaublich, erstaunlich, nutzen, hebeln, Game-Changer, bahnbrechend, revolutionär, Paradigma, hochmodern, nahtlos, robust, beispiellos, eintauchen, nutzbar machen, verwenden, transformativ, disruptiv, freischalten, umfassend, umsetzbar, entscheidend, zentral. Titel darf nicht mit Ich, Mein oder Wir beginnen. Beginne mit einem einleitenden Absatz, der das Thema nicht ankündigt. Schließe mit etwas Handlungsaufforderndem. Erfinde keine Behauptungen, Kennzahlen oder Ergebnisse, die nicht im Quellmaterial vorhanden sind."
    }]
  },
  "contents": [{
    "parts": [{
      "text": "ROHTEXT_UND_ANWEISUNGEN_HIER"
    }]
  }],
  "generationConfig": {
    "temperature": 0.7,
    "maxOutputTokens": 4096
  }
}
ENDJSON

Ersetze ROHTEXT_UND_ANWEISUNGEN_HIER durch:

  • Den Rohtext
  • Die Anweisungen zum Blog-Stil und zur Struktur (aus der ausgewählten Vorlage)
  • Alle in Schritt 4 gesammelten Tavily-Rechercheergebnisse
  • Wortziel: 800-1.800 Wörter

Sende die Anfrage:

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/noise2blog-request.json \
  | python3 -c "import sys,json; d=json.load(sys.stdin); print(d['candidates'][0]['content']['parts'][0]['text'])"

Erstelle außerdem:

  • (B) Eine 1-2-sätzige Meta-Beschreibung für die SEO-Vorschau
  • (C) Einen alternativen Titel mit einem anderen Einstiegswinkel

Schritt 6: Selbst-QA

Führe jede Prüfung durch und behebe Verstöße, bevor du das Ergebnis präsentierst:

  • Titel beginnt nicht mit "Ich", "Mein" oder "Wir"
  • Titel ist spezifisch und gesprächig (nicht "Ein umfassender Leitfaden zu X" oder "Der ultimative Leitfaden zu Y")
  • Einleitender Absatz fesselt, ohne das Thema anzukündigen ("In diesem Beitrag werde ich...")
  • Keine Gedankenstriche in irgendeiner Zeile
  • Keine Semikolons
  • Kein Absatz länger als 3 Zeilen vor einer Leerzeile
  • Keine verbotenen Wörter: unglaublich, erstaunlich, nutzen, hebeln, Game-Changer, eintauchen, nutzbar machen, freischalten, bahnbrechend, hochmodern, bemerkenswert, Paradigma, revolutionieren, nahtlos, robust, verwenden, beispiellos, umfassend, umsetzbar, entscheidend, zentral
  • Keine erfundenen Daten: jede Behauptung geht auf die Roheingabe oder ein Tavily-Ergebnis zurück
  • Beitrag endet nicht mit "Abschließend", "Zusammenfassend" oder "Ich hoffe, das hat geholfen"
  • 800-1.800 Wörter (gib die Wortanzahl an)
  • Logischer Ablauf: Einleitung → Problem/Kontext → Hauptteile → handlungsauffordernder Abschluss

Behebe jeden Verstoß, bevor du das Ergebnis präsentierst. Gib die endgültige Wortanzahl an.


Schritt 7: Ausgabe

Präsentiere den vollständigen Blogbeitrag in einem Code-Block.

Präsentiere die Meta-Beschreibung und den alternativen Titel unterhalb des Hauptbeitrags.

Frage: "Bereit, dies in deinen Editor zu kopieren? Wenn du auf einer bestimmten Plattform veröffentlichst, lass es mich wissen, und ich kann das Frontmatter formatieren."

Auf plattformspezifische Anfrage:

Ghost:

---
title: "BEITRAGSTITEL"
date: YYYY-MM-DD
tags: [tag1, tag2]
status: draft
---

dev.to:

---
title: BEITRAGSTITEL
description: META_BESCHREIBUNG
tags: [tag1, tag2, tag3]
published: false
---

Substack: Als einfaches Markdown präsentieren. Substacks Editor importiert Markdown direkt.

Hashnode:

---
title: BEITRAGSTITEL
subtitle: META_BESCHREIBUNG
tags: [tag1, tag2]
---

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.

Verwandte Skills