rl-writing-craft
Self-contained writing-quality skill with four functions: structure (architecture, flow, openings, closes), edit (line-level cutting, grounding, rhythm…
Skill by reventurelabs
Chalk Labs
Need help deploying rl-writing-craft?
Chalk Labs sets up agents like this inside real teams: connected to your tools, tested on your data, with a human in the loop where it matters.
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/reventurelabs-rl-writing-craft
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: security, writing
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md and code. Checked Oct 26, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/rl-writing-craft
What's inside
- Skill name
rl-writing-craft- Description
- Self-contained writing-quality skill with four functions: structure (architecture, flow, openings, closes), edit (line-level cutting, grounding, rhythm, anti-AI removal woven in), audit (dedicated anti-AI pattern sweep), and copyedit (grammar, punctuation, usage, consistency, proofreading). Use whenever writing or editing prose — articles, posts, essays, emails, reports, any written content. Invoked generically ('edit this,' 'tighten this,' 'make this better,' 'run the writing skill') it runs the full sequence: structure, edit, audit, copyedit. Single functions run by name: 'structure pass,' 'line edit,' 'anti-AI pass,' 'copyedit,' 'proofread,' 'check grammar.' General craft for any writer; layers under an author-voice skill which wins on register and rhythm. Copyedit corrects errors in service of voice, never imposing style rules a voice deliberately breaks. Does not set voice itself.
- License
- MIT
- Instructions
- 197 lines in SKILL.md · view on GitHub
Files (6)
- SKILL.md
- VENDORING.md
- audit.md
- copyedit.md
- edit.md
- structure.md
SKILL.md (first lines)
# Writing Craft — Structure, Edit, Audit, Copyedit A general writing-quality skill. Four functions, each independently callable, defaulting to a full sequence when invoked generically. This skill does **not** set voice. Register, rhythm, and the things that make writing sound like a specific person belong to the author-voice skill layered on top. This skill shapes the architecture, tightens the lines, and removes machine-writing patterns. The author-voice skill always wins where they touch the same sentence. --- ## The Four Functions **1. `structure`** — Architectural editing. The bones. Where the piece opens, how it moves, what each section does, how it closes. Run when a draft's argument is sound but its shape is wrong, or before drafting to plan the build. **2. `edit`** — Line-level editing. Readability, cutting, grounding, sentence rhythm. Anti-AI pattern removal is woven through this pass — tells are cheapest to fix while editing the line they live on. Run when a piece is structurally sound and needs tightening. **3. `audit`** — Dedicated anti-AI sweep. Mechanical pattern detection run clean against finished copy. Catches what survived the edit pass, including tells the editing itself introduced. **4. `copyedit`** — Grammar, punctuation, usage, consistency, and proofreading. The mechanical-correctness layer a copyeditor and proofreader provide. Runs last, against near-final copy. Corrects unambiguous errors only — it never imposes style rules the author's voice deliberately breaks (fragments, sentence-initial conjunctions, etc.). **Default: full sequence.** When invoked generically, run all four in order — structure, edit, audit, copyedit. Name a single function to run it alone. Each function's full rules live in its own file next to this one — see [Function Reference](#function-reference) below. Load the file for the function you're running. --- ## Sequencing With an Author-Voice Skill The full pipeline, when a voice layer is present. The voice layer is your content-generation skill (venture/brand lane) or your author-voice skill (personal lane) — two distinct optional roles; the sequence is the same for both: 1. **Draft** — content produced 2. **Voice layer** — sets register and rhythm (your content-generation skill or your author-voice skill) 3. **`structure`** — shapes the architecture 4. **`edit`** — tightens lines, removes tells, applies grounding rules 5. **`audit`** — final mechanical sweep 6. **`copyedit`** — grammar, punctuation, usage, consistency, proofreading (errors only) The voice layer runs first because voice decisions shape what the structure should be. The audit runs last because it catches tells introduced by every prior pass. If no author-voice skill is present, check for `VOICE-PROFILE.md` at the repo root (produced by `rl-voice-discovery`) before concluding there's no voice reference at all — treat it the same as an author-voice skill would be treated in step 2. Only with neither present does this skill run with no imposed register. (The step-by-step mechanics of the four-function run live in "Running the Full Sequence" near the bottom of this file.) **Carve-out:** Intentional structural techniques are not AI tells. Section breaks (`* * *`), one-sentence paragraphs for percussion, sentence fragments for rhythm, em-dashes as breath marks, a cold open that drops the reader into the middle of something — these are craft, not machine patterns. Do not flag them. Flag only *overuse* (e.g. em-dashes above ~1 per 1,000 words in body prose), never the technique itself. --- ## Logical Consistency — Grave Errors Separate from structure and line quality: does the argument actually hold together? Treat every item below as a blocking error, not a style preference — smooth prose can still be logically broken, and that's a worse failure than awkward prose, because it survives every pass that only reads for tone. - **A label must match what it does.** If a passage is called a "test," it has to function as one — a procedure the reader could run. If it's actually a description, an account, or a framework, name it that instead. (Example: "the cleanest test I know" introduced two conditions to weigh, not a procedure — fixed to "the clearest account I've found.") - **A recap must cover what it claims to recap.** When a section establishes multiple failure modes, causes, or conditions, any later diagnostic or summary invoking that same framework must include all of them — especially the one the piece's own central example demonstrates. Silently dropping one is a logical gap, not a trim. (Example: Hogarth's framework named feedback that's late, missing, *or drowned in too much of it* — but the diagnostic recap later listed only the first two, omitting the exact failure mode the piece's opening story was about.) - **Pronouns need an antecedent before they're used, not after.** "Arguing opposite sides of it" when "it" is named as "intuition" only in the following clause leaves the reader with nothing to attach the pronoun to in the moment they read it. This is a comprehension gap, not just a style nit. The same applies to **definite references** — "the structure," "this approach," "that problem" — which assert the noun was already introduced. A section *heading* does not count as that introduction: "Structure is what does the work" reads fine as a fresh claim under a heading, but "*The* structure is what does the work" points back at a body sentence that never ran. Drop the article, or introduce the noun in prose first. - **Claims of personal knowledge vs. sourced knowledge must be accurate.** "The cleanest test I know" claims lived, personal ownership of something that was actually learned from research. That's a misattribution of where the claim's authority comes from, not a tone issue. - **A causal or comparative chain can't quietly swap its terms.** If two distinct conditions are introduced (e.g., "the right training" vs. "the right environment"), later sections can't conflate them or leave it ambiguous which one a diagnosis is actually about. Run this check on every pass, not just `copyedit` — a logical inconsistency can be introduced during `structure` (a recap that outlives the framework it referenced) or `edit` (a fix to one sentence that breaks a pronoun's antecedent two sentences later). Surface it explicitly even when the surrounding prose reads cleanly. --- ## Function Reference Each function's full rules live in its own file. Load the one you need; the whole set does not have to be in context at once. | Function | File | What it covers | |---|---|---|
From reventurelabs/rl-content-os, MIT.
More from reventurelabs/rl-content-os
- 0.604score
rl-review-panel
reventurelabs
Blind review panel for finished content drafts — articles, posts, newsletters, emails, case studies, web and landing copy, decks, scripts, announcements.
SkillAFreshness: A★ 3Claude Code +9 - 0.604score
rl-voice-discovery
reventurelabs
Use when someone has no author-voice skill set up yet, asks "help me find my voice," "build a voice profile," "what does my writing actually sound like," or…
SkillAFreshness: A★ 3Claude Code +9 - 0.604score
rl-content-pipeline
reventurelabs
Structured 10-step writing process for long-form content (blog posts, whitepapers, essays, case studies, past ~800 words) OR high-stakes content regardless of…
SkillAFreshness: A★ 3Claude Code +9 - 0.596score
panel
reventurelabs
Run the blind review panel on a content draft — structure and stakes, claims, the reader's access, honest persuasion, and story for narrative pieces — and get…
SkillAFreshness: A★ 3Claude Code +9 - 0.564score
rl-context-discovery
reventurelabs
Use when `AUTHOR-CONTEXT.md` is still the unfilled template, someone asks "help me figure out who I'm writing for," "why do I even write," "what should I…
SkillBFreshness: B★ 3Claude Code +9 - 0.564score
rl-topic-scout
reventurelabs
Scans a repo's git history, README/CLAUDE.md, and recent structural changes — and, where connected, Slack threads, meeting transcripts, and sent email — to…
SkillBFreshness: B★ 3Claude Code +9 - 0.556score
pipeline
reventurelabs
Run the structured content pipeline on a long-form or high-stakes piece — define, interview, brief, outline, draft, critique, revise, writing suite, refine…
SkillBFreshness: B★ 3Claude Code +9 - 0.556score
voice
reventurelabs
Build VOICE-PROFILE.md from real writing samples (or a structured interview if none exist), validated against a test passage.
SkillBFreshness: B★ 3Claude Code +9 - 0.556score
context
reventurelabs
Build or refresh AUTHOR-CONTEXT.md through a guided interview — who you write for, why you write, and what's worth publishing.
SkillBFreshness: B★ 3Claude Code +9 - 0.556score
scout
reventurelabs
Scan this repo's git history for evidence-grounded content topics, present a ranked shortlist, and hand the chosen one into the content pipeline.
SkillBFreshness: B★ 3Claude Code +9
Signals
- Stars
- 3
- Forks
- 0
- Open issues
- 0
- Last commit (this folder)
- Sep 28, 2026 (1 month ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/reventurelabs/rl-content-os
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from reventurelabs
- 0.604score
rl-review-panel
reventurelabs
Blind review panel for finished content drafts — articles, posts, newsletters, emails, case studies, web and landing copy, decks, scripts, announcements.
SkillAFreshness: A★ 3Claude Code +9 - 0.604score
rl-voice-discovery
reventurelabs
Use when someone has no author-voice skill set up yet, asks "help me find my voice," "build a voice profile," "what does my writing actually sound like," or…
SkillAFreshness: A★ 3Claude Code +9 - 0.604score
rl-content-pipeline
reventurelabs
Structured 10-step writing process for long-form content (blog posts, whitepapers, essays, case studies, past ~800 words) OR high-stakes content regardless of…
SkillAFreshness: A★ 3Claude Code +9 - 0.596score
panel
reventurelabs
Run the blind review panel on a content draft — structure and stakes, claims, the reader's access, honest persuasion, and story for narrative pieces — and get…
SkillAFreshness: A★ 3Claude Code +9 - 0.564score
rl-context-discovery
reventurelabs
Use when `AUTHOR-CONTEXT.md` is still the unfilled template, someone asks "help me figure out who I'm writing for," "why do I even write," "what should I…
SkillBFreshness: B★ 3Claude Code +9 - 0.564score
rl-topic-scout
reventurelabs
Scans a repo's git history, README/CLAUDE.md, and recent structural changes — and, where connected, Slack threads, meeting transcripts, and sent email — to…
SkillBFreshness: B★ 3Claude Code +9
Done for you
Rather not set it up yourself?
Chalk Labs scopes, builds and runs agents for your team: the task audit, the eval harness, the integrations and the weekly ops report. Fixed scope, priced before we start.
See how we build AI agents →Read the case studies
Chalk Labs is a two-founder AI and growth studio. We build AI agents, CRMs and MVPs for Web3 and AI companies, and have shipped 50+ product and token launches.
- launches shipped
- 50+
- launches shipped
- media placements
- 500+
- media placements
- founders on every account
- 2
- founders on every account
Press we've placed: Forbes · CoinDesk · Decrypt · Cointelegraph · The Block
Rahil Jain, Co-founder, Chalk Labs. Ex-Goldman Sachs engineer. You talk to the person who builds it.
Get rl-writing-craft running in your business
Tell us what you want to automate. A founder replies within one working day with a plan, not a pitch deck.
Cite this page
rl-writing-craft skill. Agent Mart. https://agentmart.dev/skills/reventurelabs-rl-writing-craft (last updated 2026-10-24)