Agent Skills: Book Publisher

Publishes and promotes a finished intelligent textbook - GitHub README with badges and site statistics, LinkedIn announcement posts, LinkedIn carousel document posts (PPTX/PDF slideshows), and AP-style press releases. Use when announcing a book milestone or updating repository documentation. Routes to the appropriate guide.

UncategorizedID: dmccreary/claude-skills/book-publisher

Install this agent skill to your local

pnpm dlx add-skill https://github.com/dmccreary/claude-skills/tree/HEAD/skills/book-publisher

Skill Files

Browse the full folder contents for book-publisher.

Download Skill

Loading file tree…

skills/book-publisher/SKILL.md

Skill Metadata

Name
book-publisher
Description
Publishes and promotes a finished intelligent textbook - GitHub README with badges and site statistics, LinkedIn announcement posts, LinkedIn carousel document posts (PPTX/PDF slideshows), and AP-style press releases. Use when announcing a book milestone or updating repository documentation. Routes to the appropriate guide.

Book Publisher

Overview

This meta-skill handles publishing and promotion tasks for finished (or milestone-ready) intelligent textbooks. It consolidates four skills into a single entry point with on-demand loading of specific guides.

All four routes draw their numbers from the same canonical metrics hub — docs/learning-graph/book-metrics.json, produced by bk-generate-book-metrics (book-installer feature #40) — so the README, posts, carousel, and press release always cite identical statistics. Never recount content by hand or parse the human-readable book-metrics.md table.

When to Use This Skill

Use this skill when users request:

  • Creating or updating the GitHub README (badges, overview, site metrics, getting started)
  • Announcing a textbook milestone on LinkedIn (post text)
  • Building a LinkedIn carousel / document post (13-slide PPTX/PDF with screenshots)
  • Writing an AP-style press release for journalists or education trade press

Step 1: Identify Publishing Task

Routing Table

| Trigger Keywords | Guide File | Purpose | |------------------|------------|---------| | readme, github readme, update the readme, badges, repo documentation | references/readme-guide.md | Create/update README.md with badges, overview, metrics table, getting-started | | linkedin post, linkedin announcement, announce the book, milestone post, social media announcement | references/linkedin-post-guide.md | Generate LinkedIn post text with metrics, hashtags, and link strategy | | linkedin carousel, document post, carousel post, slideshow post, pptx for linkedin | references/linkedin-carousel-guide.md | Generate a 13-slide PPTX/PDF carousel with real screenshots and metrics | | press release, media pitch, journalists, news release, AP style, education press | references/press-release-guide.md | Write an AP-style press release with headline, lead, quotes, boilerplate |

Decision Tree

GitHub repository documentation (README, badges)?
  → YES: readme-guide.md

Social announcement as TEXT (a LinkedIn post)?
  → YES: linkedin-post-guide.md

Social announcement as a SLIDESHOW (LinkedIn document post, PPTX/PDF)?
  → YES: linkedin-carousel-guide.md
  (Post caption text for it → linkedin-post-guide.md; the two are often paired)

Formal news announcement for journalists / trade press?
  → YES: press-release-guide.md

Step 2: Ensure the Metrics Hub Is Fresh

Before any route, verify the canonical metrics file exists and is current:

bk-generate-book-metrics 2>/dev/null \
  || python3 "$BK_HOME/src/book-metrics/book-metrics.py" docs

Then read docs/learning-graph/book-metrics.json (the metrics object). If the script is unavailable, load $HOME/.claude/skills/book-installer/references/book-metrics.md (feature #40) for the full setup.

Step 3: Load the Matched Guide

Read the corresponding guide file from references/ and follow its workflow.

Supporting Files

  • references/badges.md — shields.io badge catalog for the README
  • references/carousel-slide-patterns.md — nine reusable pptxgenjs slide patterns
  • references/carousel-content-sourcing.md — which project field feeds which carousel slide
  • scripts/collect-site-metrics.py — fallback scanner for counts the metrics hub does not provide (image assets, code blocks)
  • scripts/validate-readme.py — README structure validator
  • scripts/crop-screenshot.py — crop screenshots to carousel aspect ratio

Examples

Example 1: README

User: "Update the README for this book" Routing: Keyword "README" → references/readme-guide.md Action: Refresh book-metrics.json, read readme-guide.md, generate README.md with badges and metrics table

Example 2: LinkedIn Post

User: "Write a LinkedIn announcement — we just published chapter 12" Routing: Keywords "LinkedIn announcement" → references/linkedin-post-guide.md Action: Read linkedin-post-guide.md; pull metrics from book-metrics.json; produce post text + hashtags

Example 3: Carousel

User: "Make a LinkedIn carousel showing off the book's features" Routing: Keyword "carousel" → references/linkedin-carousel-guide.md Action: Read linkedin-carousel-guide.md; capture/crop screenshots; build the 13-slide PPTX

Example 4: Press Release

User: "Write a press release for the course launch" Routing: Keywords "press release" → references/press-release-guide.md Action: Read press-release-guide.md; verify 2-3 figures from book-metrics.json; write AP-style release