Generates platform-specific social media copy from album themes, track concepts, and lyrics.

CC0-1.0Auto-check passed

Install Promo Writer

skills CLI
$ npx skills add bitwize-music-studio/claude-ai-music-skills --skill promo-writer -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install bitwize-music-studio/claude-ai-music-skills promo-writer --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/bitwize-music-studio/claude-ai-music-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/promo-writer .claude/skills/promo-writer && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
promo-writer
GitHub stars
544
Token cost
~3.1k tokens
SKILL.md length
1,279 words
Files
2
Skills in repo
51
Repo updated
First seen
Licence
CC0-1.0

At a glance

Generates platform-specific social media copy from album themes, track concepts, and lyrics.

  • Works in 9 steps: Album Resolution → Data Gathering → Generate Campaign Strategy (campaign.md) → …
  • Promo/ templates need to be populated before release
  • SKILL.md covers Purpose, When to Use, Position in Workflow and Supporting Files, plus 3 more sections
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

Promo Writer is an agent skill from bitwize-music-studio/claude-ai-music-skills. Generates platform-specific social media copy from album themes, track concepts, and lyrics. Use when promo/ templates need to be populated before release.

Its SKILL.md is about 3.1k tokens, which your agent loads only when the skill is triggered. The skill folder holds 1 other file (for example `copy-formulas.md`).

It works with Instagram, TikTok, X (Twitter) and YouTube. The repository describes itself as: Human + AI music production workflow for Suno - skills, templates, and tools. The licence is CC0-1.0.

When your agent uses it

  • Promo/ templates need to be populated before release

Example prompts

  • “Use the promo-writer skill to generate platform-specific social media copy from album themes, track concepts, and lyrics”
  • “/promo-writer”

Requirements

  • Pre-approved tools (allowed-tools): Read, Edit, Write, Glob, Grep, bitwize-music-mcp

Workflow steps

9 steps, taken from the step headings in SKILL.md.

  1. Album Resolution
  2. Data Gathering
  3. Generate Campaign Strategy (campaign.md)
  4. Language Selection
  5. Platform Selection
  6. Per-Platform Generation
  7. Present for Approval
  8. Write Approved Copy
  9. Summary and Next Steps

What it can do on your machine

Read from SKILL.md and the folder at commit 58f32c2. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves these tools, so the agent can use them without asking each time:

    • Read
    • Edit
    • Write
    • Glob
    • Grep
    • bitwize-music-mcp

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md (its code samples are markdown).

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Promo Writer loads about 3.1k tokens when it runs. Until then it costs about 42 tokens; SKILL.md has 1,279 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~42
When it runs · the whole SKILL.md, loaded when a task matches
~3.1k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from bitwize-music-studio/claude-ai-music-skills at commit 58f32c2, republished under its CC0-1.0 licence (© bitwize-music-studio). 1,279 words, ~3,143 tokens.

Download SKILL.mdSave it as .claude/skills/promo-writer/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.
name
promo-writer
description
Generates platform-specific social media copy from album themes, track concepts, and lyrics. Use when promo/ templates need to be populated before release.
allowed-tools
Read, Edit, Write, Glob, Grep, bitwize-music-mcp
argument-hint
<album-name> [platform]
model
sonnet
effort
high
prerequisites
lyric-writer

Promo Writer Skill

Generate social media copy for album promotion across Twitter/X, Instagram, TikTok, Facebook, and YouTube. Produces native-feeling content for each platform from album context — themes, track concepts, and streaming lyrics.

Purpose

Populate the promo/ directory with platform-specific copy ready for review. Each platform gets content shaped to its format, tone, and conventions — not the same text cross-posted everywhere.

When to Use

  • After track concepts and lyrics are written (need material to pull from)
  • Before release — generate copy to fill promo/ templates
  • User says "write promo copy", "create social media posts", or "fill in the promo templates"
  • When promo/ files exist but are still template placeholders

Position in Workflow

Lyrics Written → Promo Videos (optional) → **[Promo Writer]** → [Promo Review] → Release

Between content completion and promo-reviewer. The promo-reviewer polishes what this skill generates.

Supporting Files


Workflow

1. Album Resolution

Resolve the album from arguments:

Use MCP find_album with the album name from $ARGUMENTS. If no album specified, check get_session for last album context.

Verify readiness:

  • Album must have track concepts written
  • At least some tracks should have streaming lyrics (for quotable hooks)
  • If no streaming lyrics exist, warn: "No streaming lyrics found — using track concepts only. Hooks will be less specific."
2. Data Gathering

Gather album context in batch to minimize round-trips:

  1. Album data: get_album_full(album_slug, "concept,streaming,musical-direction") — album narrative + track content
  2. Track list: from album data — all track names, concepts, statuses
  3. Streaming lyrics: from album data sections — pull quotable hooks from streaming lyrics (NOT Suno lyrics, which contain phonetic spellings)
  4. User preferences: load_override("promotion-preferences.md") — tone, platform priorities, messaging themes, hashtag preferences, AI positioning

Critical: Use streaming lyrics for quotable hooks. Suno lyrics contain phonetic spellings (bit-wize, Luh-rock-uh) that must never appear in public-facing copy.

3. Generate Campaign Strategy (campaign.md)

Generate campaign.md first — it's the strategy foundation that informs all platform copy.

Content to generate:

SectionWhat to Write
Campaign OverviewAlbum name, release date (or TBD), primary platform, campaign duration
Key Messages3 core messages derived from album themes — the "why should anyone care"
Target Audience2-3 audience segments based on genre and themes
SchedulePre-release, release week, post-release calendar with specific content types
HashtagsPrimary (discovery + genre) and secondary (album-specific, AI if applicable)

Derive key messages from album data:

  • What is the album about? → Message 1 (concept hook)
  • What makes it different? → Message 2 (unique angle)
  • Why listen now? → Message 3 (urgency/relevance)

Present to user for approval before proceeding to platform copy.

4. Language Selection

Before generating any copy, determine the output language(s).

If override exists with a ## Language section in promotion-preferences.md, use that preference without asking.

Otherwise, ask:

What language(s) should the promo copy be written in?

[1] English (default)
[2] German (Deutsch)
[3] French (Français)
[4] Spanish (Español)
[5] Bilingual — two languages per post (e.g., DE + EN, FR + EN)
[6] Other — tell me which language(s)

Bilingual mode: When two languages are selected, each post gets both versions stacked in the same code block, separated by a --- divider. The primary language comes first, the secondary language second. Hashtags stay in English (international discovery).

Override file addition ({overrides}/promotion-preferences.md):

markdown
## Language
- Primary: de
- Secondary: en
- Mode: bilingual

Store the selected language(s) and apply to all generated copy in this session.

5. Platform Selection

If platform specified in arguments, generate only that platform.

If override exists, follow platform priority list and skip list from promotion-preferences.md.

Otherwise, ask:

Which platforms should I generate copy for?

[A] All platforms (Twitter, Instagram, TikTok, Facebook, YouTube)
[1] Twitter/X
[2] Instagram
[3] TikTok
[4] Facebook
[5] YouTube
6. Per-Platform Generation

For each selected platform, generate native content following the structures in copy-formulas.md and best practices from the reference guide.

Read the promo template for the platform first (templates/promo/{platform}.md or existing promo/{platform}.md) to match the expected heading structure.

Per-platform content to generate:

Twitter/X (twitter.md)
  • Release announcement tweet (1-2 tweets or thread)
  • Per-track promo tweets (one per track — hook + concept + link placeholder)
  • Behind-the-scenes tweet (process/making-of angle)
  • Engagement tweet (question or poll)
  • Each tweet: show character count, verify under 280
  • 1-2 hashtags per tweet, never starting with a hashtag
Instagram (instagram.md)
  • Release announcement caption (hook in first 125 chars)
  • 2-3 track highlight captions (story angle, personal)
  • Behind-the-scenes caption
  • Hashtag block (15-20 tags, separated from caption)
  • Show character count for each caption
TikTok (tiktok.md)
  • Release announcement caption (under 150 chars)
  • Per-track captions (short, casual, under 150 chars)
  • Behind-the-scenes caption
  • 3-5 hashtags per post
  • Note: video content does the heavy lifting — captions are secondary
Facebook (facebook.md)
  • Release announcement (longer storytelling format, 150-300 words)
  • Track highlight posts (2-3, with personal angle)
  • Behind-the-scenes story post
  • 3-5 hashtags per post, at end
YouTube (youtube.md)
  • Album/track description template (hook in first 2-3 lines)
  • Credits section
  • Social links section
  • 3-5 hashtags
7. Present for Approval

Present each platform's generated copy with metrics:

## Twitter/X — Generated Copy

### Release Announcement
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

[Generated tweet text]

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Chars: 187/280 | Hashtags: 2 | Status: Within limits
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

### Track 01: [Track Name]
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

[Generated tweet text]

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Chars: 214/280 | Hashtags: 2 | Status: Within limits
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

[... more posts ...]

Actions:
  [A] Approve all — write to promo/twitter.md
  [R] Revise specific posts — tell me which ones and what to change
  [N] Next platform — skip this platform
8. Write Approved Copy

Write approved copy to the promo/ directory in the album path:

{content_root}/artists/{artist}/albums/{genre}/{album}/promo/

Match the file structure expected by promo-reviewer:

  • Use ## and ### headings to delineate sections
  • Put post copy inside ``` code blocks
  • Include any platform-specific metadata (character counts not written to file)

If promo/ directory doesn't exist, create it. If files already exist, ask before overwriting:

promo/twitter.md already has content. Overwrite? [Y/n]
Show full SKILL.md (494 more words)Show less
9. Summary and Next Steps

After all platforms are written:

## Promo Copy Generated

| Platform | Posts | Status |
|----------|-------|--------|
| Campaign | 1 | Written |
| Twitter  | 8 | Written |
| Instagram | 5 | Written |
| TikTok | 6 | Written |
| Facebook | 4 | Written |
| YouTube | 1 | Written |

Files written to: {album_path}/promo/

Next steps:
  1. Review and polish: /bitwize-music:promo-reviewer <album-name>
  2. Replace [Streaming Link] placeholders with actual URLs when available
  3. When ready to release: /bitwize-music:release-director <album-name>

Content Rules

Streaming Lyrics Only

Pull quotable hooks from streaming lyrics sections. Never use Suno lyrics — they contain phonetic spellings meant for the AI, not human readers.

Campaign First

Always generate campaign.md before platform copy. The strategy document establishes key messages, audience, and schedule that inform every platform's content.

Native Content

Each platform gets content shaped to its conventions:

  • Twitter: punchy, under 280 chars, 1-2 hashtags
  • Instagram: visual-first, hook in first 125 chars, hashtag block
  • TikTok: ultra-casual, under 150 chars, video does the work
  • Facebook: storytelling, longer form, community-building
  • YouTube: informative, structured, SEO-aware

Never write the same text for multiple platforms.

Match Promo-Reviewer Structure

The promo-reviewer skill expects specific file structure:

  • ## headings for major sections
  • ### headings for individual posts
  • Post copy inside ``` code blocks
  • This structure enables section-by-section review
Hashtag Rules

Follow the researched best practices:

  • Twitter: 1-2 per tweet, never start with hashtag, rotate sets
  • Instagram: 15-20 per post, separate block, mix volume levels
  • TikTok: 3-5 per post, include trending if applicable
  • Facebook: 3-5, at end, for categorization
  • YouTube: 3-5, first 3 shown above title
  • Never use: #MusicPromotion, #SoundCloudPromotion, #FollowBack, #Like4Like
Language Handling
  • Write all copy in the language(s) selected in Step 4
  • Bilingual mode: Primary language first, --- divider, secondary language second — both in the same code block
  • Twitter exception: Bilingual mode uses separate tweets per language (one tweet per language, or thread), NOT stacked in one tweet — 280 chars is too tight for two languages
  • Hashtags: Always in English for international discovery, regardless of copy language
  • Quoted lyrics: Keep in original language with a brief translation in parentheses if the copy language differs
  • Platform notes (Notes section at bottom of each file): Always in English for consistency
Override Respect

If promotion-preferences.md override exists:

  • Follow tone and voice preferences
  • Respect platform skip list
  • Apply messaging theme preferences (always/never mention)
  • Use hashtag preferences (always include, avoid list)
  • Follow AI positioning guidance
  • Follow language preferences (primary, secondary, mode)

Remember

  1. Read copy-formulas.md at invocation — it has the hook formulas and post structures
  2. Streaming lyrics only — never Suno phonetic lyrics in public copy
  3. Campaign.md first — strategy before platform copy
  4. Language before platforms — determine output language(s) before generating any copy
  5. Present before writing — show generated copy with metrics for approval
  6. Native per platform — different tone, length, structure for each
  7. Match promo-reviewer format — headings + code blocks for section-by-section review
  8. Check override — load promotion-preferences.md for tone, platforms, messaging, language
  9. Suggest promo-reviewer next — always end with the recommendation to review
  10. Placeholder links — use [Streaming Link] where real URLs will go
  11. Preserve album voice — the copy should feel consistent with the album's themes and tone
  12. Hashtags in English — always English hashtags for discovery, even when copy is in another language

Your deliverable: Populated promo/ directory with platform-specific copy ready for review.

Workflow integration: You fill the gap between content completion and promo-reviewer — generating what was previously a manual creative step.

© bitwize-music-studio, CC0-1.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 1 other file in skills/promo-writer of bitwize-music-studio/claude-ai-music-skills.

  • SKILL.md
  • copy-formulas.md

Open the folder on GitHubat commit 58f32c2

Compare with similar skills

Promo Writer next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Promo Writer compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Promo Writer this skillbitwize-music-studio/claude-ai-music-skills544—~3.1kAutomated safety check: PassCC0-1.0
Influencer Discoverytigerless-labs/influencer-discovery212—~2.5kAutomated safety check: NotesNone
Business Contact and Social Links Finderbrowser-act/skills6.1k1 repos~1.6kAutomated safety check: PassMIT
Video Downloaderisjiamu/jiamu-skills139—~1.2kAutomated safety check: PassMIT
Outlier Post FinderScrapeCreators/social-media-research-skills3.4k—~1.5kAutomated safety check: NotesMIT
Global AI News Briefredfox-data/redfox-community426—~2.1kAutomated safety check: PassNone

Similar skills

  • Influencer Discovery

    tigerless-labs/influencer-discovery

    Find the bloggers/creators who can help promote your work, capture their contact info, and append them to the target sheet in Google Sheets.

    212 GitHub stars~2.5k tokensUpdated 18 days ago
    Marketing & SEOAuto-check: notes
  • Finds a company's official website and social profiles from its name, or collects social links from a website URL, using BrowserAct templates run by a Python script.

    6.1k GitHub starsUsed in 1 repo~1.6k tokens
    Marketing & SEOAuto-check passed
  • Video Downloader

    isjiamu/jiamu-skills

    Download videos from 1000+ websites (YouTube, Bilibili, Twitter/X, TikTok, etc.) using yt-dlp.

    139 GitHub stars~1.2k tokensUpdated 2 mo ago
    Media & CreativeAuto-check passed
  • Outlier Post Finder

    ScrapeCreators/social-media-research-skills

    A skill your agent uses when the user wants to find posts, videos, reels, shorts, tweets, or social content that overperformed versus a creator, brand, or competitor baseline.

    3.4k GitHub stars~1.5k tokensUpdated 1 mo ago
    Writing & ContentAuto-check: notes
  • Global AI News Brief

    redfox-data/redfox-community

    全球AI新闻简报 — 一个关键词同时搜索抖音、小红书、公众号、B站、快手、视频号、今日头条、TikTok、Instagram、X(Twitter)、YouTube 共 11 大平台,跨平台聚合后由 AI 生成智能摘要、热点聚类、舆情分析和深度解读报告,输出终端表格 + 交互式 HTML 报告。包含详细信息源列表,适用于各种AI…

    426 GitHub stars~2.1k tokensUpdated yesterday
    Auto-check passed
  • Watch

    mathiaschu/watch

    Watch a video from YouTube, Instagram, X/Twitter, Vimeo, TikTok or any of ~1800 yt-dlp sites (or a local path).

    142 GitHub stars~4k tokensUpdated 4 mo ago
    Media & CreativeAuto-check: warnings

More from bitwize-music-studio/claude-ai-music-skills

All 51 skills in this repo
  • Album Conceptualizer

    bitwize-music-studio/claude-ai-music-skills

    Designs album concepts, tracklist architecture, and thematic planning through 7 structured phases.

    544 GitHub stars~3.6k tokensUpdated 3 days ago
    Auto-check passed
  • Album Dashboard

    bitwize-music-studio/claude-ai-music-skills

    Shows a structured progress dashboard for an album with percentage complete per phase, blocking items, and status breakdown.

    544 GitHub stars~1.1k tokensUpdated 3 days ago
    Auto-check passed
  • Album Ideas

    bitwize-music-studio/claude-ai-music-skills

    Tracks and manages album ideas including brainstorming, planning, and status updates.

    544 GitHub stars~2.2k tokensUpdated 3 days ago
    Auto-check passed
  • Clipboard

    bitwize-music-studio/claude-ai-music-skills

    Copies track content (lyrics, style prompts, streaming lyrics) to the system clipboard.

    544 GitHub stars~1.4k tokensUpdated 3 days ago
    Auto-check: notes
  • Cloud Uploader

    bitwize-music-studio/claude-ai-music-skills

    Uploads promo videos and content to Cloudflare R2 or AWS S3.

    544 GitHub stars~2.1k tokensUpdated 3 days ago
    Auto-check: notes
  • Configure

    bitwize-music-studio/claude-ai-music-skills

    Sets up or edits the plugin configuration file interactively.

    544 GitHub stars~2.2k tokensUpdated 3 days ago
    Auto-check: notes

Questions about Promo Writer

What does Promo Writer do?

Generates platform-specific social media copy from album themes, track concepts, and lyrics. Promo Writer is an agent skill from bitwize-music-studio/claude-ai-music-skills. Generates platform-specific social media copy from album themes, track concepts, and lyrics.

When should I use Promo Writer?

Promo Writer fits situations like: promo/ templates need to be populated before release.

How do I install Promo Writer in Claude Code?

Run `npx skills add bitwize-music-studio/claude-ai-music-skills --skill promo-writer -a claude-code`. Or copy the skill folder (skills/promo-writer in bitwize-music-studio/claude-ai-music-skills) into .claude/skills/promo-writer in your project. Claude Code loads it when a task matches its description.

How do I install Promo Writer in Codex?

Run `npx skills add bitwize-music-studio/claude-ai-music-skills --skill promo-writer -a codex`. Or copy the skill folder (skills/promo-writer in bitwize-music-studio/claude-ai-music-skills) into .agents/skills/promo-writer in your project. Codex loads it when a task matches its description.

Can I use Promo Writer in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add bitwize-music-studio/claude-ai-music-skills --skill promo-writer -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/promo-writer, .gemini/skills/promo-writer, .github/skills/promo-writer and .opencode/skills/promo-writer in your project.

What does Promo Writer need to run?

SKILL.md names no scripts, command-line tools or credentials: Promo Writer is instructions for the agent only. Its frontmatter pre-approves these tools: Read, Edit, Write, Glob, Grep, bitwize-music-mcp.

Does Promo Writer access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Promo Writer safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Promo Writer use?

Promo Writer is published under the CC0-1.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Promo Writer use?

About 3.1k tokens (SKILL.md is roughly 13k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Promo Writer?

Skills that share tags, products or a category with Promo Writer: Influencer Discovery (tigerless-labs/influencer-discovery, 212 stars), Business Contact and Social Links Finder (browser-act/skills, 6.1k stars), Video Downloader (isjiamu/jiamu-skills, 139 stars) and Outlier Post Finder (ScrapeCreators/social-media-research-skills, 3.4k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Promo Writer?

bitwize-music-studio (a GitHub organization) maintains it in bitwize-music-studio/claude-ai-music-skills, which has 544 GitHub stars. The repository holds 51 skills in this directory. The repository was last updated on October 7, 2026.

Source: bitwize-music-studio/claude-ai-music-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.