Rédiger des publications sociales pour articles de blog

VérifiéSûr

Lire un article de blog, rédiger ou réviser les publications sociales (X, LinkedIn, Bluesky) dans ses métadonnées, et s'auto-critiquer jusqu'à validation.

Spar Skills Guide Bot
ContenuIntermédiaire
01/08/2026
Claude Code
#social-media#copywriting#blog#frontmatter#self-critique

Recommandé pour

Synthèse automatique

Rédige ou corrige les textes sociaux (X, LinkedIn, Bluesky) dans le bloc `social:` du frontmatter d'un article de blog, avec une boucle d'autocritique jusqu'à validation.

Points forts

  • Distingue trois cas par plateforme : rédaction complète, réparation minimale d'une règle enfreinte, ou conservation d'un texte déjà bon
  • Vérifie chaque chiffre, nom et attribution dans le corps de l'article plutôt que dans le titre, le slug ou le meta_desc
  • Contrôle réellement les limites de caractères (X 255, LinkedIn 2950, Bluesky 300) via un comptage Python avant la critique
  • Boucle de critique plafonnée à 3 tours avec sous-agent dédié, plus une passe consultative séparée sur les textes conservés

Limites

  • Dépend de fichiers de référence externes (writing-guide.md, critique-rubric.md, suggestions-rubric.md) non fournis avec le skill
  • Ne couvre que X, LinkedIn et Bluesky, et s'appuie sur les sous-agents et les chemins `.claude/commands/` propres à Claude Code
  • La résolution automatique du fichier via `git status` échoue dès qu'il y a zéro ou plusieurs articles modifiés, et demande alors une intervention
Quand l'utiliser

À utiliser quand un article de blog est prêt et qu'il faut produire ou nettoyer rapidement les textes sociaux de son frontmatter sans réécrire ce qui fonctionne déjà.

Quand l'éviter

À éviter si les fichiers de référence de critique ne sont pas présents dans le dépôt ou si vous ciblez des plateformes autres que X, LinkedIn et Bluesky.

Analyse de sécurité

Sûr
Score qualité88/100

The skill only reads a blog post, performs local git status and character counting via python3, spawns internal sub-agents for critique, and edits frontmatter in the repo. It does not execute destructive commands, exfiltrate data, or disable safety features. The use of python3 and git is for legitimate local file inspection and validation.

Aucun point d'attention détecté

Comment cette analyse est faite

Exemples

Draft from a file path
Draft the social copy for content/blog/why-we-moved-off-kubernetes/index.md — fill in the social block for X, LinkedIn and Bluesky.
Fix the post I just edited
Write the social copy for the blog post I just changed (pick it from git status).
Repair only what's broken
Review the social copy in content/blog/observability-costs/index.md and repair anything that breaks the rules — don't rewrite what already reads well.

user-invocable: true description: Draft (or revise) the X / LinkedIn / Bluesky social copy in a blog post's frontmatter, looping with self-critique until it would pass review. argument: optional file path to a blog post (e.g., content/blog/my-post/index.md). If omitted, picks the blog file currently changed in git status.

Draft social post

Read a blog post, write or revise social copy into its frontmatter social: block, and loop with self-critique until each platform passes review. Preserve existing copy that already works — only repair or draft fresh when there's a real problem.

Flow

  1. Resolve the target file.

    • If the user passed a path, use it.
    • Otherwise: run git status --porcelain and pick the single modified content/blog/*/index.md. If zero or more than one match, ask the user which file.
  2. Read the blog post in full and any existing social: block. The blog body is the source of truth for every specific you'll use — read it before drafting, not after. Title, URL slug, meta_desc, and tags are not authoritative; the body is.

  3. Per-platform: classify and act. For each of X, LinkedIn, Bluesky:

    • Empty (""), missing key, or LLM-fill junk — draft fresh from the blog body using .claude/commands/social-media-review/references/writing-guide.md (see "Drafting from a blank social: block" — it includes the verify-specifics-against-body checklist). Honor platform structure: X = 2 paragraphs, LinkedIn = multiple short paragraphs, Bluesky = 2 paragraphs. Voice: if a single named author wrote a personal-experience post, name them in third person; otherwise corporate "we".

    • Existing copy that breaks a hard rule (banned phrases, "I" voice, URL in body, hashtags, markdown, paragraph structure, char limits — see .claude/commands/social-media-review/references/critique-rubric.md) — minimum-change repair. Drop the hashtag, swap the "I" to "we", trim the over-limit tail. Don't recast paragraphs or "improve" the voice. The original specifics and structure stay.

    • Existing copy that passes hard rules and reads naturally — leave it. Do not rewrite for taste.

    For LLM-fill recognition (staccato fragments as drama, em-dash chains, generic openers like "In today's cloud landscape…", buzzword stacks), see .claude/commands/social-media-review/references/writing-guide.md "Spotting and replacing LLM-fill copy". Don't try to patch around LLM patterns; throw them out and draft fresh from the article.

    For any platform you draft fresh, verify each specific against the blog body before moving on. Every number, name, and attribution must appear in the body — not the title, slug, or meta_desc. If a claim doesn't trace, drop it or replace it.

  4. Verify character counts before critique. Pipe each draft into python3 -c "import sys; print(len(sys.stdin.read().rstrip('\n')))" (avoids quoting/escaping problems with apostrophes or triple quotes in copy). Body limits: X = 255, LinkedIn = 2950, Bluesky = 300. Revise any over-limit copy here.

  5. Critique loop. Spawn a sub-agent (Agent tool, general-purpose subagent_type) with a clean slate. Brief: read .claude/commands/social-media-review/references/critique-rubric.md, evaluate the copy only (not the blog post), return PASS or FAIL per platform. Default verdict is PASS — only FAIL on hard-rule breaks.

    • All three PASS → go to step 6.
    • Any FAIL → repair based on the cited reasons (minimum-change semantics from step 3), repeat from step 4.
    • Cap at 3 critique rounds. If still failing, keep the most recent draft and note the open issues in the report.
  6. Advisory pass — only on kept platforms. For each platform whose existing copy passed hard rules and you left untouched, spawn a sub-agent against .claude/commands/social-media-review/references/suggestions-rubric.md to surface stylistic notes (weak opener, summarizes article, missing pointer, etc.). Do NOT modify the kept copy — surface the notes in step 8's report so the user can decide whether to apply them. PASS stays PASS. Skip this pass on platforms you repaired or drafted — the new copy is the actionable feedback already; layering advisory notes on top is noise.

  7. Write the final copy into the frontmatter. Use the Edit tool to replace (or insert) the social: block. Use 4-space indent and | block-literal style for multi-line copy — see content/blog/neo-integration-catalog/index.md for a well-formatted example. Only touch platforms whose copy actually changed.

  8. Report. Show the path written to and per-platform status using paired verdict + action tokens (verdict from the critic, action you took):

    • PASS, kept — critic passed the original; preserved as-is
    • FAIL, repaired (N chars changed) — critic failed the original; minimum-change fix
    • missing, drafted — no original (or unsalvageable LLM-fill); wrote fresh
    • Final character counts for each platform
    • Iteration count ("converged in N rounds" or "stopped at 3, X open issue")
    • For each PASS, kept platform with advisory notes, list them under "Suggestions for kept platforms (advisory — not applied)" so the user can decide whether to address them in a follow-up. Omit the section if all kept platforms returned "no suggestions".

Edge cases

  • If the blog post has no body content yet (only frontmatter), tell the user — drafting against an empty post produces generic copy.
  • If the user wants the existing copy preserved verbatim regardless of issues, they should say so in the invocation; otherwise this skill applies the classification above.
  • If all three platforms classify as kept, report that and exit without writing — no edit is needed.

Du fichier au premier essai

Le téléchargement contient exactement le contenu affiché sur cette fiche. Cette copie peut différer de la dernière version du dépôt source.

Consulter la source et ses fichiers annexes

Ce téléchargement contient uniquement SKILL.md. Les scripts, références, modèles et dépendances éventuels ne sont pas inclus. Récupérez les fichiers nécessaires depuis la source en conservant leur arborescence avant de poursuivre.

1. Télécharger le fichier

Télécharger SKILL.md

Depuis la racine d’un projet de test, enregistrez le fichier sous .skill-downloads/draft-social-posts-for-blog-posts-ms9wnyrw/SKILL.md, ou utilisez la commande suivante. Ce dossier sert à examiner la skill avant son installation.

Commande pour macOS/Linux ou WSL : un shell POSIX et curl sont nécessaires. Sous Windows sans WSL, utilisez le bouton de téléchargement et créez le dossier manuellement.

mkdir -p '.skill-downloads/draft-social-posts-for-blog-posts-ms9wnyrw' && curl --fail --show-error --location 'https://skills-guides.com/api/skills/draft-social-posts-for-blog-posts-ms9wnyrw/download' --output '.skill-downloads/draft-social-posts-for-blog-posts-ms9wnyrw/SKILL.md.part' && mv '.skill-downloads/draft-social-posts-for-blog-posts-ms9wnyrw/SKILL.md.part' '.skill-downloads/draft-social-posts-for-blog-posts-ms9wnyrw/SKILL.md'

2. Vérifier les prérequis

Lisez SKILL.md avant de l’utiliser. Si le fichier cite des scripts ou services externes, examinez-les et préparez les accès nécessaires dans votre environnement de test.

Aucune section de prérequis reconnue dans ce fichier. Cela ne signifie pas qu’il est autonome : les bibliothèques, outils et accès peuvent être cités ailleurs dans le contenu ou dans le dépôt source.

Les plateformes de la fiche sont des indications du catalogue. Les chemins ci-dessous suivent la documentation des outils ; ils ne prouvent pas que cette skill y a été exécutée. Aucune version minimale de ces outils n’est attestée pour cette fiche.

3. Charger la skill

Le fichier ne fournit pas un en-tête name/description exploitable pour cette procédure native. Le téléchargement reste disponible pour lecture ; utilisez le mode manuel ci-dessous.

Mode manuel ou autre outil : joignez SKILL.md à une conversation, ou ouvrez-le dans un agent capable de lire les fichiers. Ajoutez les ressources annexes nécessaires. Il n’existe pas de dossier universel reconnu par tous les outils.

4. Faire un premier essai

Utilisez une entrée courte et fictive : un endpoint d’API, un petit document ou un brief d’interface. Dans une nouvelle conversation, joignez le fichier ou donnez son chemin à l’agent, puis adaptez cette demande :

Lis .skill-downloads/draft-social-posts-for-blog-posts-ms9wnyrw/SKILL.md et applique ses instructions à cet exemple : [décrire une entrée de test]. Indique les fichiers, dépendances ou accès qui manquent. Produis le résultat demandé par la skill sans inventer de données ni exécuter de script non examiné.

Résultat attendu : une sortie correspondant aux instructions de la skill, ou une liste précise des prérequis manquants. Une simple confirmation de lecture ne valide pas le premier usage. Si une ressource externe est indisponible, ce parcours reste à tester.

Skills similaires