no-em-dashes

no-em-dashes is a skill for Claude Code from exmergo/skill-no-em-dashes. It costs 167 tokens per session (1,839 once invoked), scanned A, original, MIT.

A writing rule that keeps em dashes, a punctuation mark used for strong pauses, out of user-facing prose.

In plain words
What is it for?
Use it when writing or editing emails, reports, documentation, posts, summaries, or other prose where em dashes must not appear.
Why use it?
It prevents a specific punctuation style from appearing in drafts and helps produce more deliberate sentence structures.

Skill for Claude Code

Written for Claude Code: ${CLAUDE_SKILL_DIR} variable.

Part of the no-em-dashes plugin — 1 skill shipped together

Good fit Use it when writing or editing emails, reports, documentation, posts, summaries, or other prose where em dashes must not appear.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/exmergo/skill-no-em-dashes/no-em-dashes
Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

Any agent
npx skills add exmergo/skill-no-em-dashes --skill no-em-dashes
Clone the repo
git clone --depth 1 https://github.com/exmergo/skill-no-em-dashes

Made for: Claude Code.

Or install no-em-dashes, the plugin that ships this one along with the rest of its 1 skill.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for no-em-dashes

README.md
[![agentmods](https://agentmods.dev/badge/skills/exmergo/skill-no-em-dashes/no-em-dashes/github.svg)](https://agentmods.dev/skills/exmergo/skill-no-em-dashes/no-em-dashes)
Your own site
<a href="https://agentmods.dev/skills/exmergo/skill-no-em-dashes/no-em-dashes"><img src="https://agentmods.dev/badge/skills/exmergo/skill-no-em-dashes/no-em-dashes/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for no-em-dashes

Your own site · 80×15
<a href="https://agentmods.dev/skills/exmergo/skill-no-em-dashes/no-em-dashes"><img src="https://agentmods.dev/badge/skills/exmergo/skill-no-em-dashes/no-em-dashes.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 167 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,839 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00167 $0.01839
Opus 5 $0.00084 $0.00920
Sonnet 5 $0.00033 $0.00368
Haiku 4.5 $0.00017 $0.00184

Measured 10d ago against content hash 069341ca5677, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-10, from the pricing page.

Security

Grade A, and why

no-em-dashes scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 10d ago.

The scan reads SKILL.md. This mod also ships 1 executable file (scripts/check_em_dashes.py), listed below but not scanned — reading those needs a real analyzer, not pattern matching.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

skills/no-em-dashes/SKILL.md · 121 lines

How it starts

The opening of the file, as written. The whole thing — 121 lines — stays where its author put it; the contents beside it link to each section on GitHub.

No Em Dashes

What this does and why it matters

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.

Two reasons this is worth real care:

  1. Heavy em-dash use has become one of the most recognizable fingerprints of machine-written text. Many readers now read a dash-laden paragraph as "a bot wrote this." Clean punctuation keeps the writing reading as a person's.
  2. The em dash quietly encourages a particular cadence: the dramatic pause, the tacked-on reveal, the breathless aside. Removing it forces tighter, more deliberate sentences, which is usually an improvement on its own.

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.

The rule

  1. Never type an em dash in prose you write or edit. The character is U+2014. It does not appear in your output.
  2. Do not smuggle the same pause back in. These are all banned when they do an em dash's job: a double hyphen (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.
  3. Reach for these instead, roughly in this order depending on the job: comma, semicolon, colon, period, parentheses (brackets).

Do not overcorrect

The target is the em dash and its stand-ins acting as sentence punctuation. Nothing else.

  • Keep ordinary hyphens in compounds: well-known, state-of-the-art, twenty-one, a five-year-old, mother-in-law.
  • Keep hyphens and en dashes in genuine number, date, and score ranges if they appear (for example 10-20, 2019-2024, a 3-1 win), and keep hyphens in code, file paths, URLs, command flags, and math. Never "fix" a minus sign.
  • Leave Markdown structure alone. A line of three or more hyphens (a front matter delimiter or a horizontal rule) and a table separator row like | --- | --- | are formatting, not punctuation. A run of three hyphens used as a pause inside a sentence is still a stand-in, so recast that.
  • Do not become so dash-averse that you start chopping sentences into choppy fragments. Good prose still flows; you are removing a crutch, not the connective tissue.

Read the full file on GitHub · 121 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 10d ago First seen · 121 lines · 167 tokens per session scan A 069341ca5677

Subscribe to this mod's changes

no-em-dashes is a skill published in the GitHub repository exmergo/skill-no-em-dashes (8 stars, last pushed 2mo ago), licensed MIT. It adds 167 tokens to every session and 1,839 once invoked, about $0.0008 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.

Related

Other skills, from other repositories

multai

Intelligent Multi-AI Router & Orchestrator. Submits prompts to 7 AI platforms simultaneously (or sequentially in Cowork) and synthesizes results. Supports two runtimes automatically detected at startup: • Code tab (Mac): Playwright/Browser-Use engine — parallel, full-featured • Cowork tab (Linux sandbox)…

alo-exp/multai · 415 tokens

comparator

Generic Comparison Matrix Builder: creates, populates, and maintains weighted XLSX comparison matrices for ANY domain and ANY pair (or set) of solutions. Evidence comes from whatever is available — CIRs produced by MultAI's solution-researcher, documents in the working folder, LLM knowledge, or user description. A CIR…

alo-exp/multai · 214 tokens

consolidator

Generic Multi-Source Consolidator: synthesizes content from any set of input sources — documents, research notes, interview transcripts, meeting summaries, AI platform responses, or any mix — into a unified, well-structured report. When invoked with a raw AI responses archive (produced by the orchestrator or a…

alo-exp/multai · 146 tokens

landscape-researcher

Market Landscape Researcher: orchestrates a full end-to-end landscape research workflow for any software solution category. Builds a research prompt from a proven template, runs it across 7 AI platforms in parallel (via the orchestrator skill), synthesises the responses into a structured 9-section Market Landscape…

alo-exp/multai · 208 tokens

solution-researcher

Orchestrates a simultaneous 7-AI competitive intelligence research round on any software product. Builds a capability-analysis prompt from a template, invokes the orchestrator engine, then invokes the consolidator skill to produce a Consolidated Intelligence Report (CIR). USE THIS SKILL whenever the user asks to…

alo-exp/multai · 204 tokens

multai:update

Check for MultAI updates, show changelog, and install if available.

alo-exp/multai · 18 tokens