From no-em-dashes
Enforces em-dash-free prose by rewriting sentences that use dashes into cleaner alternatives like commas, semicolons, or periods. Useful for writing that reads more naturally and avoids machine-generated patterns.
How this skill is triggered — by the user, by Claude, or both
Slash command
/no-em-dashes:no-em-dashesThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Guarantee that writing produced for the user contains no em dashes, and, just as important, that it is built out of sentences that never reach for one in the first place.
evals/evals.jsonevals/results/README.mdevals/results/benchmark.mdevals/results/em_dash_counts.csvevals/results/examples/breakroom-dialogue.baseline.txtevals/results/examples/breakroom-dialogue.with-skill.txtevals/results/examples/release-delay-email.baseline.txtevals/results/examples/release-delay-email.with-skill.txtscripts/check_em_dashes.pyGuarantee that writing produced for the user contains no em dashes, and, just as important, that it is built out of sentences that never reach for one in the first place.
Two reasons this is worth real care:
The wrong way to satisfy this skill is to swap one em dash for a lookalike (a spaced hyphen, a double hyphen, a stray en dash). That is the same move wearing a disguise. The right way is to recognize the sentence shape that wanted the dash and rewrite so it is no longer needed.
word--word or --), a hyphen padded with spaces (-), a stray en dash (U+2013) used between words, and the horizontal bar (U+2015). Replace the construction with real punctuation, not with another dash.The target is the em dash and its stand-ins acting as sentence punctuation. Nothing else.
| --- | --- | are formatting, not punctuation. A run of three hyphens used as a pause inside a sentence is still a stand-in, so recast that.An em dash is almost always doing one of a small number of rhetorical jobs. Identify the job, then use the matching replacement. If you only swap the character you sometimes create a comma splice or a limp sentence, so when in doubt, recast.
The construction reached for most often. Some setup, then a dash, then a payoff.
This is the one job with no clean comma or semicolon swap, so handle it honestly rather than forcing a bad substitute.
If you are quoting a source word for word and the original contains an em dash, you may keep it inside the direct quotation, because silently altering a quote misrepresents the source. Prefer to paraphrase so the question does not arise. Never introduce an em dash in your own voice, and never add one to a quote that did not have it.
Scan the finished text for the em dash and its stand-ins, then fix any that punctuate a sentence.
If code execution is available, run the bundled checker on a draft file or via stdin:
python "${CLAUDE_SKILL_DIR}/scripts/check_em_dashes.py" path/to/draft.txt
echo "Your text here" | python "${CLAUDE_SKILL_DIR}/scripts/check_em_dashes.py"
${CLAUDE_SKILL_DIR} resolves to this skill's folder however it was installed (personal, project, or plugin). If it is not set, point at scripts/check_em_dashes.py inside this skill directory. It prints every hit with its location and a suggested fix, and exits nonzero if anything is found. If you cannot run code, do the scan by eye: search the text for the em dash character, for a double hyphen, and for a hyphen with a space on each side, and rewrite each one using the playbook above.
In each "Before" line below, [em dash] marks where the original used the em dash character. The "After" line shows the clean rewrite.
Example 1 (reveal): Before: The data was clear [em dash] engagement had collapsed. After: The data was clear: engagement had collapsed.
Example 2 (pivot): Before: We don't sell software [em dash] we sell outcomes. After: We sell outcomes, not software.
Example 3 (aside): Before: Our flagship store [em dash] the one downtown [em dash] closes in May. After: Our flagship store (the one downtown) closes in May.
Example 4 (two clauses): Before: The fix shipped on Friday [em dash] nobody noticed until Monday. After: The fix shipped on Friday; nobody noticed until Monday.
Example 5 (summary): Before: Lower cost, faster turnaround, fewer defects [em dash] that's the pitch. After: The pitch is lower cost, faster turnaround, and fewer defects.
npx claudepluginhub exmergo/exmergo-agent-plugins --plugin no-em-dashesGuides collaborative design exploration before implementation: explores context, asks clarifying questions, proposes approaches, and writes a design doc for user approval.
Creates structured, bite-sized implementation plans from specs or requirements before writing code. Useful for breaking down multi-step tasks into testable steps with file structure and task boundaries.
Reference for writing and editing skills with predictable behavior, covering invocation models, description writing, and information hierarchy.