YouTube Community Post Writer

Write YouTube community-tab posts: text updates, polls, image-caption posts, and questions that drive comments and bring subscribers back between video uploads.

How to use it

  1. Hit Copy the whole skill.
  2. Claude: ⋯ → Download .md, then Customize → Skills → Add → Upload skill.
    ChatGPT: make a Project and paste it into Instructions.
    Neither? Paste it at the top of a new chat — it works for that chat.
  3. Describe your job in plain words. The AI follows the skill from there.
Claude Code — installs the whole folder, not just SKILL.md
npx degit sergebulaev/youtube-skills/.codex-marketplace/youtube-skills/skills/yt-community-post-writer#main ~/.claude/skills/yt-community-post-writer

For one project only, change the path to .claude/skills/yt-community-post-writer.

Not working?
  • Check which app you pasted it into — the steps above name the right one.
  • Some skills need the paid tier of Claude or ChatGPT.
Step-by-step guide with screenshots · Ask in the forum

Paste into Claude, ChatGPT or Cursor.

Show the full text107 lines
yt-community-post-writer/SKILL.md107 lines5.8 KBpushed 13d agoRawView on GitHub

YouTube Community Post Writer

The community tab is the channel's between-uploads touchpoint. A good post keeps subscribers engaged, seeds comments, and warms the audience for the next video. This skill writes those posts and polls.

When to use

  • User says "write a community post" or "make a poll for my channel"
  • User wants to tease, build hype for, or follow up on a video
  • User wants to keep the channel active between uploads
  • User wants a poll to source ideas or settle a debate with the audience

Why this is always copy-paste

YouTube community posts and polls have no Publora endpoint and no public publishing API. So this skill always returns a finished post as a copy-paste block for you to publish in the Community tab yourself. That is by design, not a limitation of the draft tier. (Videos and Shorts do auto-upload through Publora.)

Post types this skill writes

Type Best for
Text update a quick thought, a tease, a behind-the-scenes note
Poll sourcing ideas, settling a debate, low-effort engagement
Image + caption a teaser frame, a before/after, a result screenshot
Question prompt a direct ask that fills the comments

Steps

  1. Gather inputs, goal first. Ask (or infer) what the post should earn before picking a format, then map goal to format: tease a video -> image or text teaser with a curiosity gap; source ideas / decide content -> poll; follow up on a video -> text post replying to top comments; keep warm between uploads -> behind-the-scenes image or quiz. Then gather the topic, the channel's voice, and confirm the post type fits the goal. If the post relates to a specific video, take the URL and parse it with lib/url_parser.py.
  2. Pick the type. A poll for input or low-effort engagement; a text update for a tease or note; an image caption for a visual teaser; a question to drive comments.
  3. Write the post.
    • Lead with the hook; the first line carries it (the community feed truncates).
    • One clear ask: vote, comment a specific thing, or watch the linked video.
    • For a poll: a clear question plus 2 to 4 tight options. No false dilemmas.
    • Keep it short. The community tab rewards low-friction, not essays.
  4. Humanizer pass. Scrub 2026 AI vocabulary by density (one marker such as "leverage" or "significant" is fine; three in one post means rewrite the post), cap em dashes (a community post is short, so at most one, never swapped for a period), break stacked or hollow rule-of-three, strip reveal bridges ("The result?", "Here's what") and sincerity openers ("not gonna lie", "let me be honest"). Never add a hedge or a confession the creator did not write. Sound like the creator, not a brand account.
  5. Approval card. Show the post (and poll options) and the target Community tab URL.
  6. On approval. Call lib.publish(kind="community", draft_text=<post>, target_url=<community tab url>). The wrapper returns the copy-paste block; the user posts it in the Community tab.

Hard rules

Global voice rules: see root SKILL.md Voice rules. Additional skill-specific rules:

  • The first line carries the hook (the community feed truncates long posts).
  • One clear ask per post. Two asks split the response.
  • Polls: 2 to 4 options, mutually exclusive, no loaded framing.
  • Keep it short. A community post is a touchpoint, not a blog.
  • No engagement bait ("comment 1 for yes"); ask a real question.

Anti-patterns (skill will refuse)

  • A wall of text where the community tab wants one or two lines.
  • Two competing asks in one post.
  • A poll with a false dilemma or 6+ options.
  • Engagement bait ("like if you agree, comment if you don't").
  • More than one em dash in a post, or an em dash swapped for a period.
  • Announced candor ("let me be honest", "not gonna lie") with no dated fact behind it.
  • "Don't forget to smash subscribe" dead phrasing.

Resources

  • ../../references/voice-rules.md - the canonical voice rules
  • ../../references/algorithm-heuristics.md - comments and session signals
  • references/post-types.md - templates for each community post type

Voice profile mode (--mode profile)

yt-community-post-writer --mode profile builds or updates the user's Voice & Brand Profile at ../../references/voice-profile.md from 3-6 of their real YouTube posts pasted in (portable, no token) or, if a read token is set, from pulled activity. Once filled, every writing skill in this bundle drafts in the user's voice automatically. See sub-skills/voice-profile.md. Triggers: "build my voice profile", "learn my voice".

Optional illustration

Offer a generated image when a visual would lift reach. Draft a prompt and call lib.illustrate(prompt, kind="thumbnail"), pulling brand handle/color from Voice & Brand Profile section 6 for a pixel-exact overlay. Show the returned url + cost, the community tab has no media API, so upload the approved image yourself with the post (it cannot be auto-attached). Full workflow (incl. quote-cards): sub-skills/illustration.md. No Pixfaro key -> it drafts the prompt for you to generate manually.

Related skills

  • yt-content-planner - schedule community posts between uploads
  • yt-title-optimizer - when the post is teasing a specific video
1---
2name: yt-community-post-writer
3description: "Write YouTube community-tab posts: text updates, polls, image-caption posts, and questions that drive comments and bring subscribers back between video uploads. Tuned to the community tab's role as a low-friction touchpoint that keeps a channel warm and feeds session signals. Returns a copy-paste block (community posts have no publishing API, so this is always manual by design). Use to write a community post or poll. Not for video titles or descriptions (use yt-title-optimizer and yt-description-writer)."
4---
5 
6# YouTube Community Post Writer
7 
8The community tab is the channel's between-uploads touchpoint. A good post keeps
9subscribers engaged, seeds comments, and warms the audience for the next video.
10This skill writes those posts and polls.
11 
12## When to use
13 
14- User says "write a community post" or "make a poll for my channel"
15- User wants to tease, build hype for, or follow up on a video
16- User wants to keep the channel active between uploads
17- User wants a poll to source ideas or settle a debate with the audience
18 
19## Why this is always copy-paste
20 
21YouTube community posts and polls have **no Publora endpoint and no public
22publishing API**. So this skill always returns a finished post as a copy-paste
23block for you to publish in the Community tab yourself. That is by design, not a
24limitation of the draft tier. (Videos and Shorts do auto-upload through Publora.)
25 
26## Post types this skill writes
27 
28| Type | Best for |
29|---|---|
30| **Text update** | a quick thought, a tease, a behind-the-scenes note |
31| **Poll** | sourcing ideas, settling a debate, low-effort engagement |
32| **Image + caption** | a teaser frame, a before/after, a result screenshot |
33| **Question prompt** | a direct ask that fills the comments |
34 
35## Steps
36 
371. **Gather inputs, goal first.** Ask (or infer) what the post should earn
38 before picking a format, then map goal to format: tease a video -> image or
39 text teaser with a curiosity gap; source ideas / decide content -> poll;
40 follow up on a video -> text post replying to top comments; keep warm
41 between uploads -> behind-the-scenes image or quiz. Then gather the topic,
42 the channel's voice, and confirm the post type fits the goal. If the post relates
43 to a specific video, take the URL and parse it with `lib/url_parser.py`.
442. **Pick the type.** A poll for input or low-effort engagement; a text update
45 for a tease or note; an image caption for a visual teaser; a question to drive
46 comments.
473. **Write the post.**
48 - Lead with the hook; the first line carries it (the community feed truncates).
49 - One clear ask: vote, comment a specific thing, or watch the linked video.
50 - For a poll: a clear question plus 2 to 4 tight options. No false dilemmas.
51 - Keep it short. The community tab rewards low-friction, not essays.
524. **Humanizer pass.** Scrub 2026 AI vocabulary by density (one marker such as
53 "leverage" or "significant" is fine; three in one post means rewrite the
54 post), cap em dashes (a community post is short, so at most one, never
55 swapped for a period), break stacked or hollow rule-of-three, strip reveal
56 bridges ("The result?", "Here's what") and sincerity openers ("not gonna
57 lie", "let me be honest"). Never add a hedge or a confession the creator did
58 not write. Sound like the creator, not a brand account.
595. **Approval card.** Show the post (and poll options) and the target Community
60 tab URL.
616. **On approval.** Call `lib.publish(kind="community", draft_text=<post>,
62 target_url=<community tab url>)`. The wrapper returns the copy-paste block;
63 the user posts it in the Community tab.
64 
65## Hard rules
66 
67Global voice rules: see root `SKILL.md` Voice rules. Additional skill-specific
68rules:
69 
70- The first line carries the hook (the community feed truncates long posts).
71- One clear ask per post. Two asks split the response.
72- Polls: 2 to 4 options, mutually exclusive, no loaded framing.
73- Keep it short. A community post is a touchpoint, not a blog.
74- No engagement bait ("comment 1 for yes"); ask a real question.
75 
76## Anti-patterns (skill will refuse)
77 
78- A wall of text where the community tab wants one or two lines.
79- Two competing asks in one post.
80- A poll with a false dilemma or 6+ options.
81- Engagement bait ("like if you agree, comment if you don't").
82- More than one em dash in a post, or an em dash swapped for a period.
83- Announced candor ("let me be honest", "not gonna lie") with no dated fact behind it.
84- "Don't forget to smash subscribe" dead phrasing.
85 
86## Resources
87 
88- `../../references/voice-rules.md` - the canonical voice rules
89- `../../references/algorithm-heuristics.md` - comments and session signals
90- `references/post-types.md` - templates for each community post type
91 
92## Voice profile mode (`--mode profile`)
93 
94`yt-community-post-writer --mode profile` builds or updates the user's Voice & Brand Profile at `../../references/voice-profile.md` from 3-6 of their real YouTube posts pasted in (portable, no token) or, if a read token is set, from pulled activity. Once filled, every writing skill in this bundle drafts in the user's voice automatically. See `sub-skills/voice-profile.md`. Triggers: "build my voice profile", "learn my voice".
95 
96## Optional illustration
97 
98Offer a generated image when a visual would lift reach. Draft a prompt and call
99`lib.illustrate(prompt, kind="thumbnail")`, pulling brand handle/color from Voice &
100Brand Profile section 6 for a pixel-exact overlay. Show the returned `url` + `cost`,
101the community tab has no media API, so upload the approved image yourself with the post (it cannot be auto-attached). Full workflow (incl. quote-cards):
102`sub-skills/illustration.md`. No Pixfaro key -> it drafts the prompt for you to generate manually.
103## Related skills
104 
105- `yt-content-planner` - schedule community posts between uploads
106- `yt-title-optimizer` - when the post is teasing a specific video
107 

Discussion

Alternatives

Also in Community & events