From rz-skills
Use this skill whenever Riché invokes /rz-draft-content, shares a source (article URL, Daily Context Briefing, thought) and asks for it to be turned into a content draft, or says "draft a post from this" or similar. This is the orchestrating skill that runs the full content pipeline: source retrieval, research, past-work check, grounding in brand documents, format decision, drafting all assets, SEO/AIO optimization, and graphic generation. Produces a completed Content Topic page in the Notion Content Topics database with long-form article (when warranted), short-form LinkedIn and X articles, promo posts, optimization recommendations, and a PNG + SVG graphic.
How this skill is triggered — by the user, by Claude, or both
Slash command
/rz-skills:rz-draft-contentThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
You orchestrate the end-to-end content drafting workflow for Riché Zamor. Given a source (article URL, Daily Context Briefing, or raw thought), you produce a fully populated Content Topic page in the Notion Content Topics database with all derivative assets, optimization recommendations, and a brand-consistent graphic.
You orchestrate the end-to-end content drafting workflow for Riché Zamor. Given a source (article URL, Daily Context Briefing, or raw thought), you produce a fully populated Content Topic page in the Notion Content Topics database with all derivative assets, optimization recommendations, and a brand-consistent graphic.
Triggered by /rz-draft-content, by Riché sharing a source and asking for a draft, or semantically when the conversation is clearly asking for the full pipeline.
Fully autonomous. Run all eight steps and present the finished deliverables at the end. Do not checkpoint between steps unless you hit a blocking ambiguity (e.g., the source can't be located, multiple plausible topics are conflated, or a required Notion document is unreachable). When you must ask, ask once, concisely, and continue.
These five documents ground every draft. Read all of them fresh at the start of every run — Riché updates them monthly.
337ac0ea-4f65-819d-bfac-e40a99b83543 (thesis, terminology, argument structure, communication framework)337ac0ea-4f65-8189-abd9-e2248e5e8f18 (intellectual foundation, cognitive science grounding)333ac0ea-4f65-8151-8651-d730d706e017 (editorial calendar, format templates, domain split)337ac0ea-4f65-8103-91cd-db7ab5319ab7 (voice, AI tells, prohibited phrasing)331ac0ea-4f65-81fe-af8f-e37afebaeaf5 (channel-level positioning, audience targeting)Content Topics database: 0fcb9c17-695f-4c04-a72b-6b03fe074f8b
Identify what the source is and retrieve it.
web_fetch first. If blocked (Forbes, WSJ, paywalled sites), fall back to web_search for the article title + author to find an accessible version or a detailed summary.Notion:notion-fetch. The briefing will contain the relevant link and the synthesized take.Tavily:tavily_research or Tavily:tavily_extract when web_fetch fails and web_search snippets aren't rich enough. Tavily is the escalation path for difficult sources.Capture: the source URL, author, publication date, and the full body text.
Widen the lens. Run 2-3 targeted searches to surface related recent content. Purpose: ground the piece in the current conversation, not just the single source.
web_search with keywords from the source (the primary concept, the specific claim, named entities)This research goes into the Content Topic page under "Research Notes" and informs the drafting phase. Don't dump every link — synthesize what's relevant.
Two sources to check, both required:
A. Content Topics database (0fcb9c17-695f-4c04-a72b-6b03fe074f8b)
Notion:notion-search with keywords from the source topicB. Historical LinkedIn archive (project files)
Shares.csv for past shares and commentary on the topicComments.csv for engagement context on past postsReport back two things in the final output:
If there's a strong past piece that already covers the angle, flag that explicitly — it may mean the new piece needs a different angle or should be scrapped.
Fetch all five reference documents fresh. Extract:
Hold this context while drafting. Every voice decision in the draft must pass the Content Style Guide. Every terminology decision must pass the Platform Document.
Default: follow the Content Strategy calendar slot for today.
Override rule: if the topic pulls hard toward a different format, make a hard suggestion with one-sentence rationale. Override triggers:
State the format decision at the top of the final output with the override rationale (if any).
Based on the format decision, produce the full asset set.
If the format warrants a long-form article (Deep Dive, Framework, or Story with substantial content):
Long-form article (website version) — canonical piece for richezamor.com. Full length, full argument structure, full examples. This is the anchor piece everything else links to.
Short-form article (LinkedIn + X) — single shortened version (~500-700 words) used on both platforms. Condenses the long-form piece while preserving the core argument. Ends with a link to the website piece.
LinkedIn promo post — short post (150-250 words) promoting the LinkedIn short-form article. Written to earn the click.
X promo tweet — single tweet (~250 char) promoting the X short-form article.
If the format doesn't warrant a long-form article (Hot Take, Signal, short Story):
No article, no derivative short-forms, no promo posts in this case.
Drafting rules for all assets:
If and only if a long-form article was drafted, invoke rz-content-optimize on the article body. The optimize skill produces the full 13-section SEO & AIO block.
Append the block to the Content Topic page under a section titled "SEO & AIO Optimization".
If no long-form article exists (Hot Take / Signal format), skip this step entirely. Do not produce SEO recommendations for LinkedIn-only or X-only posts.
Default to the diagram templates documented in rz-graphic-design:
Select the template that best fits the piece's core argument. Generate the graphic in SVG, respecting the full brand visual identity from rz-graphic-design (dark #0a0a0a background, teal #00d4a3 accent, JetBrains Mono labels, Inter body, monospace section labels in uppercase with letter-spacing, dashed outlines for containers where appropriate).
Dimensions: 1200x630 for a single LinkedIn/X compatible version. If the piece specifically needs a platform-tuned pair, also produce 1080x1080 (LinkedIn square) and 1600x900 (X optimized) — but the default is one graphic at 1200x630.
Output both formats:
Save both to /mnt/user-data/outputs/ and present them.
If the topic doesn't clearly map to any existing template, propose a new template design inline, generate it, and flag it for addition to the rz-graphic-design template library.
Create the page in the Content Topics database (0fcb9c17-695f-4c04-a72b-6b03fe074f8b). Properties to populate:
DraftingHigh for news reactions in a hot news cycle, Medium otherwisePage body structure:
# Article — Website (Long Form)
[long-form article, if created]
---
# Short Article — LinkedIn & X
[shortened version, if long-form was created]
---
# LinkedIn Promo Post
[promo post, if article exists; else this is the LinkedIn post]
---
# X Promo Tweet (or # X Post)
[promo tweet or X post]
---
# SEO & AIO Optimization
[from rz-content-optimize, if article exists]
---
# Research Notes
[adjacent content from step 2 + past work from step 3]
---
# Publishing Notes
- Source article and URL
- Calendar slot and any override rationale
- Suzy language check reminder (if referenced)
- Image filenames (SVG + PNG)
- Internal link candidates from past Content Topics
After the page is created, present to Riché:
Keep the summary under 10 lines. The page is the deliverable; chat is the summary.
web_fetch, web_search, and Tavily all fail, stop and ask Riché for the article text or a different source.rz-content-optimize will fall back to web_search-based SERP analysis and flag that keyword volumes are estimates. Proceed.rz-copywriting — voice calibration for every draftrz-content-optimize — invoked in step 7 when a long-form article existsrz-graphic-design — invoked in step 8 for template selection and visual systemrz-growth-marketing — consult when Linked Briefing data suggests a growth-specific angleProvides UI/UX resources: 50+ styles, color palettes, font pairings, guidelines, charts for web/mobile across React, Next.js, Vue, Svelte, Tailwind, React Native, Flutter. Aids planning, building, reviewing interfaces.
Fetches up-to-date documentation from Context7 for libraries and frameworks like React, Next.js, Prisma. Use for setup questions, API references, and code examples.
npx claudepluginhub rczamor/rz-claude-skills --plugin rz-skills