К основному содержанию
скилл CX Codex

blog-draft · luongnv89 — скилл для Claude Code: что делает и как установить

Пошагово собирает черновик статьи из заметок, ссылок и файлов с обязательными цитатами и версиями файлов в папке blog-posts/.

Установить в Claude Code · Через Skills CLI (Vercel) Все способы и платформы ↓
npx skills add luongnv89/claude-howto --skill blog-draft -a claude-code
Открыть на GitHub

Что делает blog-draft

Скилл структурирует подготовку статьи из заметок и внешних ссылок. Он создаёт директорию blog-posts/YYYY-MM-DD-slug/ и подпапку resources/, куда сохраняет выжимки источников. Дальше агент выясняет угол подачи, ключевые мысли и объём: от короткого в 500–800 слов до лонгрида от 2000 слов.

После согласования структуры в OUTLINE.md пишется первый драфт draft-v0.1.md. Каждая цифра и тезис получают строгую ссылку на источник со сноской. В git-репозитории агент создаёт коммиты с префиксом docs: и отправляет их в удалённую ветку.

Скилл ждёт подтверждения человека на каждом этапе, поэтому полностью автономно он ничего не публикует. Правки сохраняются в новых файлах вроде draft-v0.2.md, пока черновик не согласуют. Для готовых статей агент сразу переходит к правкам, пропуская сбор базы.

Какие задачи решает

  • собрать выжимки по ссылкам и локальным файлам в структурированные заметки
  • составить и согласовать разметку статьи в OUTLINE.md
  • оформить черновик с обязательными сносками на первоисточники
  • вести версионирование драфтов от draft-v0.1.md до final.md
  • зафиксировать промежуточные этапы статьи коммитами в git

Примеры запросов агенту

  • Напиши статью про переход на Go, вот ссылки на бенчмарки и архитектурные схемы
  • Собери черновик поста о миграции базы данных на 1200 слов в техническом стиле
  • Обнови существующий черновик статьи в папке blog-posts/2025-05-10-caching/ с учётом новых комментариев

Как установить blog-draft

1Через Skills CLI (Vercel)

npx skills add luongnv89/claude-howto --skill blog-draft -a claude-code

2Вручную: положить файлы

~/.claude/skills/blog-draft/SKILL.md

Папка скилла целиком; для одного проекта — .claude/skills/blog-draft/

По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов

Вопросы о blog-draft

Как установить blog-draft в Claude Code?

Выполните команду npx skills add luongnv89/claude-howto --skill blog-draft -a claude-code. Конфигурация сохранится в файле ~/.claude/skills/blog-draft/SKILL.md.

Что делает скилл blog-draft?

Он ведёт автора через сбор материалов, составление плана и пошаговое написание статьи с обязательными ссылками на источники. Все версии сохраняются в отдельных файлах, а промежуточные шаги могут фиксироваться коммитами в git.

Можно ли редактировать уже написанный пост?

Да, при запросе правок на существующую статью скилл пропускает этапы сбора и сразу переходит к чтению текущего файла и выпуску следующей версии черновика.

Исходный текст

SKILL.md · MIT
---
name: blog-draft
description: Draft a blog post from ideas and resources. Use when users want to write a blog post, create content from research, or draft articles. Guides through research, brainstorming, outlining, and iterative drafting with version control.
---

## User Input

```text
$ARGUMENTS
```

You **MUST** consider the user input before proceeding. User should provide:
- **Idea/Topic**: The main concept or theme for the blog post
- **Resources**: URLs, files, or references to research (optional but recommended)
- **Target audience**: Who the blog post is for (optional)
- **Tone/Style**: Formal, casual, technical, etc. (optional)

**IMPORTANT**: If the user is requesting updates to an **existing blog post**, skip steps 0-8 and start directly at **Step 9**. Read the existing draft file(s) first, then proceed with the iteration process.

## Execution Flow

Follow these steps sequentially. **Do not skip steps or proceed without user approval where indicated.**

### Step 0: Create Project Folder

1. Generate a folder name using format: `YYYY-MM-DD-short-topic-name`
   - Use today's date
   - Create a short, URL-friendly slug from the topic (lowercase, hyphens, max 5 words)

2. Create the folder structure:
   ```
   blog-posts/
   └── YYYY-MM-DD-short-topic-name/
       └── resources/
   ```

3. Confirm folder creation with user before proceeding.

### Step 1: Research & Resource Collection

1. Create `resources/` subfolder in the blog post directory

2. For each provided resource:
   - **URLs**: Fetch and save key information to `resources/` as markdown files
   - **Files**: Read and summarize in `resources/`
   - **Topics**: Use web search to gather up-to-date information

3. For each resource, create a summary file in `resources/`:
   - `resources/source-1-[short-name].md`
   - `resources/source-2-[short-name].md`
   - etc.

4. Each summary should include:
   ```markdown
   # Source: [Title/URL]

   ## Key Points
   - Point 1
   - Point 2

   ## Relevant Quotes/Data
   - Quote or statistic 1
   - Quote or statistic 2

   ## How This Relates to Topic
   Brief explanation of relevance
   ```

5. Present research summary to user.

### Step 2: Brainstorm & Clarify

1. Based on the idea and researched resources, present:
   - **Main themes** identified from research
   - **Potential angles** for the blog post
   - **Key points** that should be covered
   - **Gaps** in information that need clarification

2. Ask clarifying questions:
   - What is the main takeaway you want readers to have?
   - Are there specific points from the research you want to emphasize?
   - What's the target length? (short: 500-800 words, medium: 1000-1500, long: 2000+)
   - Any points you want to exclude?

3. **Wait for user responses before proceeding.**

### Step 3: Propose Outline

1. Create a structured outline including:

   ```markdown
   # Blog Post Outline: [Title]

   ## Meta Information
   - **Target Audience**: [who]
   - **Tone**: [style]
   - **Target Length**: [word count]
   - **Main Takeaway**: [key message]

   ## Proposed Structure

   ### Hook/Introduction
   - Opening hook idea
   - Context setting
   - Thesis statement

   ### Section 1: [Title]
   - Key point A
   - Key point B
   - Supporting evidence from [source]

   ### Section 2: [Title]
   - Key point A
   - Key point B

   [Continue for all sections...]

   ### Conclusion
   - Summary of key points
   - Call to action or final thought

   ## Sources to Cite
   - Source 1
   - Source 2
   ```

2. Present outline to user and **ask for approval or modifications**.

### Step 4: Save Approved Outline

1. Once user approves the outline, save it to `OUTLINE.md` in the blog post folder.

2. Confirm the outline has been saved.

### Step 5: Commit Outline (if in git repo)

1. Check if current directory is a git repository.

2. If yes:
   - Stage the new files: blog post folder, resources, and OUTLINE.md
   - Create commit with message: `docs: Add outline for blog post - [topic-name]`
   - Push to remote

3. If not a git repo, skip this step and inform user.

### Step 6: Write Draft

1. Based on the approved outline, write the full blog post draft.

2. Follow the structure from OUTLINE.md exactly.

3. Include:
   - Engaging introduction with hook
   - Clear section headers
   - Supporting evidence and examples from research
   - Smooth transitions between sections
   - Strong conclusion with takeaway
   - **Citations**: All comparisons, statistics, data points, and factual claims MUST cite the original source

4. Save the draft as `draft-v0.1.md` in the blog post folder.

5. Format:
   ```markdown
   # [Blog Post Title]

   *[Optional: subtitle or tagline]*

   [Full content with inline citations...]

   ---

   ## References
   - [1] Source 1 Title - URL or Citation
   - [2] Source 2 Title - URL or Citation
   - [3] Source 3 Title - URL or Citation
   ```

6. **Citation Requirements**:
   - Every data point, statistic, or comparison MUST have an inline citation
   - Use numbered references [1], [2], etc., or named citations [Source Name]
   - Link citations to the References section at the end
   - Example: "Studies show that 65% of developers prefer TypeScript [1]"
   - Example: "React outperforms Vue in rendering speed by 20% [React Benchmarks 2024]"

### Step 7: Commit Draft (if in git repo)

1. Check if in git repository.

2. If yes:
   - Stage the draft file
   - Create commit with message: `docs: Add draft v0.1 for blog post - [topic-name]`
   - Push to remote

3. If not a git repo, skip and inform user.

### Step 8: Present Draft for Review

1. Present the draft content to user.

2. Ask for feedback:
   - Overall impression?
   - Sections that need expansion or reduction?
   - Tone adjustments needed?
   - Missing information?
   - Specific edits or rewrites?

3. **Wait for user response.**

### Step 9: Iterate or Finalize

**If user requests changes:**
1. Note all requested modifications
2. Return to Step 6 with the following adjustments:
   - Increment version number (v0.2, v0.3, etc.)
   - Incorporate all feedback
   - Save as `draft-v[X.Y].md`
   - Repeat Steps 7-8

**If user approves:**
1. Confirm the final draft version
2. Optionally rename to `final.md` if user requests
3. Summarize the blog post creation process:
   - Total versions created
   - Key changes between versions
   - Final word count
   - Files created

## Version Tracking

All drafts are preserved with incremental versioning:
- `draft-v0.1.md` - Initial draft
- `draft-v0.2.md` - After first round of feedback
- `draft-v0.3.md` - After second round of feedback
- etc.

This allows tracking the evolution of the blog post and reverting if needed.

## Output Files Structure

```
blog-posts/
└── YYYY-MM-DD-topic-name/
    ├── resources/
    │   ├── source-1-name.md
    │   ├── source-2-name.md
    │   └── ...
    ├── OUTLINE.md
    ├── draft-v0.1.md
    ├── draft-v0.2.md (if iterations)
    └── draft-v0.3.md (if more iterations)
```

## Tips for Quality

- **Hook**: Start with a question, surprising fact, or relatable scenario
- **Flow**: Each paragraph should connect to the next
- **Evidence**: Support claims with data from research
- **Citations**: ALWAYS cite sources for:
  - All statistics and data points (e.g., "According to [Source], 75% of...")
  - Comparisons between products, services, or approaches (e.g., "X performs 2x faster than Y [Source]")
  - Factual claims about market trends, research findings, or benchmarks
  - Use inline citations with format: [Source Name] or [Author, Year]
- **Voice**: Maintain consistent tone throughout
- **Length**: Respect the target word count
- **Readability**: Use short paragraphs, bullet points where appropriate
- **CTA**: End with a clear call-to-action or thought-provoking question

## Notes

- Always wait for user approval at outlined checkpoints
- Preserve all draft versions for history
- Use web search for up-to-date information when URLs are provided
- If resources are insufficient, ask user for more or suggest additional research
- Adapt tone based on target audience (technical, general, business, etc.)

---

**Last Updated**: August 4, 2026
**Claude Code Version**: 2.1.220
**Sources**:
- https://code.claude.com/docs/en/skills
**Compatible Models**: Claude Fable 5, Claude Opus 5, Claude Sonnet 5, Claude Sonnet 4.6, Claude Opus 4.8, Claude Haiku 4.5

© luongnv89 · MIT · luongnv89/claude-howto

Похожие скиллы

Все скиллы по теме «Тексты и документация» →

Сначала — blog-draft от других авторов.

blog-draft luongnv89 Пошагово превращает заметки и ссылки в структурированный черновик статьи с цитированием источников и версиями в Git. CX Codex +1 ★ 45 376звёзд репо grill-with-docs Matt Pocock Скилл проводит жёсткое интервью по плану или дизайну и по ходу создаёт ADR и глоссарий. Подойдёт перед началом сложной разработки. 1 219 756установок skill-creator официальный anthropics Помогает создать новый скилл, доработать существующий и проверить результат через тестовые промпты и оценки. 414 180установок setup-matt-pocock-skills Matt Pocock Скилл настраивает репозиторий для инженерных скиллов Matt Pocock: задаёт трекер задач, метки триажа и расположение доменной документации. Запустите его перед первым использованием остальных скиллов. 1 052 851установок handoff Matt Pocock Собирает текущий диалог в документ передачи, чтобы другой агент продолжил работу с нужным контекстом. Нужен при смене сессии или исполнителя. 1 038 491установок triage Matt Pocock Скилл проводит issue и внешние PR через роли триажа, проверку и подготовку брифа для агента. Подойдёт мейнтейнеру, который разбирает очередь задач. 990 453установок domain-modeling Matt Pocock Скилл помогает уточнять термины проекта, вести GLOSSARY.md и фиксировать архитектурные решения в ADR. Нужен, когда модель предметной области меняется. 876 391установок

Из того же набора13

code-review-specialist Проверяет pull request или фрагмент кода на уязвимости, проблемы производительности и читаемость. Выдаёт общую оценку от 1 до 5 и примеры правок. CX Codex +1 ★ 45 376звёзд репо claude-md Создаёт, обновляет или проверяет CLAUDE.md по практикам онбординга ИИ-агента. Полезен, когда файл инструкций разросся и агент перестал его слушать. CX Codex +1 ★ 45 376звёзд репо blog-draft Пошагово превращает заметки и ссылки в структурированный черновик статьи с цитированием источников и версиями в Git. CX Codex +1 ★ 45 376звёзд репо refactor Ведёт агента через шесть фаз рефакторинга: разбор кода, проверка тестов, поиск code smells, план, пошаговая правка и ревью. CX Codex +1 ★ 45 376звёзд репо doc-generator Скилл читает исходники и собирает документацию по эндпоинтам: OpenAPI-спеки, примеры вызовов, коды ошибок. Пригодится, когда API обросло роутами, а README отстал. CX Codex +1 ★ 45 376звёзд репо code-review-specialist Проверяет код на уязвимости, падение производительности и нарушения архитектуры. Пригодится при разборе пулреквестов и подготовке к рефакторингу. CX Codex +1 ★ 45 376звёзд репо claude-md Создаёт, обновляет и проверяет файл CLAUDE.md по правилам, которые помогают агенту быстрее разобраться в проекте. Пригодится, когда инструкции для ИИ разрослись или их ещё нет. CX Codex +1 ★ 45 376звёзд репо brand-voice Скилл держит тексты в одном тоне: маркетинг, письма клиентам, публичные страницы. Полезен, когда над контентом работает несколько человек. CX Codex +1 ★ 45 376звёзд репо

Спонсоры проекта

Компании, которые помогают держать аналитику открытой