MCPInstall

dedash

Remove em-dashes and the dashes standing in for them from a user-owned scope, reading each occurrence in context and choosing the punctuation or wording that fits.

Installs
1.5K
Last 24h
+10
Trending rank
#8806
Security
Not audited

Install

Works with every agent the skills CLI supports.

npx skills add https://github.com/lilmgenius/paperthin --skill dedash
  1. 01

    Install

    Run the command in your project. The CLI asks which agents to install for.

  2. 02

    Describe the task

    Ask your agent for something this skill covers. It loads dedash automatically when relevant.

  3. 03

    Review the result

    The agent follows the SKILL.md steps, scripts and references bundled with the skill.

SKILL.md

The instructions your agent reads when the skill is triggered.

Remove em-dashes and the dashes standing in for them from the scope the user names, one occurrence at a time, while leaving hyphens, ranges, and deliberate marks alone.

Goal

Replace each em-dash that should not remain with the mark or wording its clause actually needs. Target any dash doing an em-dash's job, whatever its exact character: U+2014 and its longer or repurposed look-alikes all read the same on the page. The user owns the scope: a passage, field, file, selection, or tree. Do not widen it without asking.

Workflow

  1. FIND: Take the exact scope from the user and locate every dash doing an em-dash's job in it, judged by the role it plays in the sentence, not its codepoint: any mark that sets off an aside, an appositive, an abrupt turn, or a missing conjunction. The em-dash (U+2014) is the common one; the horizontal bar (U+2015) and the two- and three-em dashes (U+2E3A, U+2E3B) read the same and count. The en-dash (U+2013) is the boundary case: it counts when it joins clauses where an em-dash would fit, but stays when it spans a range's endpoints, numeric or not (1990–2020, the London–Paris route). A dash doing a non-em job (a hyphen, a minus, a range) stays. Surface anything genuinely ambiguous as a judgment call rather than changing it blindly.
  2. REPLACE per role: Choose per occurrence by grammatical role:
    • Parenthetical aside: commas or parentheses when the dashed material can be lifted out of the sentence.
    • Appositive: a colon or comma when the dashed material renames, defines, or expands the noun before it.
    • Abrupt turn: a full stop, semicolon, or comma when the dash marks a pivot, interruption, or restart.
    • False-conjunction break: rewrite the sentence when the dash stands in for a missing "and", "but", "because", "so", or another real connective.
  3. LEAVE-ALONE: Unless the user explicitly includes them and the context proves them wrong, leave untouched:
    • hyphenated compounds, minus signs, and negative numbers
    • ranges such as 1-10, 1–10, or London–Paris; a range dash is not an em-dash
    • code, diffs, command output, identifiers, serialized data, URLs, paths, anchors, and query strings
    • quoted or clearly deliberate em-dashes in stylized prose; these surface as judgment calls, never as blind mutations
  4. RE-READ: Read every changed sentence in place. Fix awkward rhythm, dangling punctuation, doubled spaces, and connector loss introduced by the replacement. If the sentence now needs wording instead of punctuation, rewrite the smallest clause that solves it.
  5. REPORT: State the scope checked, how many dashes were found and changed, which replacements were used by role, and anything left alone or surfaced as a judgment call.

Rules

  • Never do blanket replacement. The same glyph can require different punctuation in different clauses.
  • Never replace an em-dash with a hyphen as the cleanup.
  • Mutate with edit-safety: edit unicode-safe (PYTHONUTF8=1) and replace each dash per occurrence, never a blanket sweep; if the scope contains no such dash, report a MISS rather than changing nearby punctuation.
  • Preserve the user's voice. This skill removes a mark where requested; it does not flatten style outside the user-owned scope.

Verification

Before finishing, confirm:

  1. The scope stayed exactly user-owned.
  2. Every replacement was selected per occurrence by grammatical role.
  3. Leave-alone cases stayed untouched or were reported as judgment calls.
  4. The report includes counts and any judgment calls.

FAQ

What does the dedash skill do?

Remove em-dashes and the dashes standing in for them from a user-owned scope, reading each occurrence in context and choosing the punctuation or wording that fits.

How do I install dedash?

Run npx skills add https://github.com/lilmgenius/paperthin --skill dedash in your project. The skills CLI detects the agents you use and copies the skill into the right folder. For Claude Code you can also place the skill folder at ~/.claude/skills/dedash/ (personal) or .claude/skills/dedash/ (project).

Which AI agents can use dedash?

Any agent that supports the open Agent Skills format (a folder with a SKILL.md file), including Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, Windsurf, Cline, OpenCode and more.

Is dedash safe to install?

No partner security audit is available yet. Skills can run commands and scripts, so read the SKILL.md and any bundled files before installing.

Who maintains dedash?

It is published by lilmgenius in lilmgenius/paperthin. It has 1,495 recorded installs.

More from lilmgenius/paperthin

View all →

ssotize

lilmgenius/paperthin

Audit and consolidate a fact that's scattered across places into one canonical source, after approval, and replace the rest with references. Use when asked to find duplication, check consistency, locate the source of truth, deduplicate, consolidate, unify, or establish SSOT across artifacts or platforms. Starts read-only, reports the map and plan, then mutates only after explicit approval.

Backend & APIs1.3K installs

shower

lilmgenius/paperthin

Cold-read the artifact you're focused on from a fresh, zero-context sub-session to confirm it stands on its own — a shower-thought reset for accumulated session bias. Use when a long session has worn away your fresh eyes and you can no longer tell whether the artifact in focus is clear to someone with no prior context; before a handoff, publish, or merge; or when you want a clean-room comprehension smoke test. Spawns a separate context-free reviewer; it diagnoses, it does not fix.

Testing & QA1.3K installs

hate

lilmgenius/paperthin

Attack a plan, design, or argument like you want it to fail before you commit real effort — return the single load-bearing objection and the cheapest experiment that would prove it matters, not a checklist. User-invoked on purpose: a hate-it reflex always in the agent's reach would bias it toward demolition. Weighs many failure axes but owns the synthesis to one root.

factchk

lilmgenius/paperthin

Verify reality-grounded claims against external sources in both directions before they ship — could the 'absurd' be real, could the 'obvious' be false or long-established? Use whenever an artifact, or the sentence you are about to write, asserts something as plausible, realistic, absurd, novel, or impossible from intuition rather than a checked source; before relying on a factual claim in prose, a design rationale, a research claim, or a plan. Fires on metacognitive doubt — when you can't actually know, verify instead of trusting the feeling. Scans read-only, then fixes the clear errors or flags the judgment calls; leaves deliberate fiction alone.

re0

lilmgenius/paperthin

Refresh an existing artifact into the current best v0. Use when the user asks to clean up, sync up, dedupe, de-noise, smooth, rewrite, or update an artifact after iteration; when nearby artifacts may have drifted; or when changes in one place should be reflected across related artifacts while keeping the result minimal.

1.3K installs

mandela

lilmgenius/paperthin

Audit any eval, metric, experiment, or benchmark for leakage — does external ground-truth enter independently, or are the model, scorer, and designer just confirming a result no outside truth ever produced? Use before trusting any 'how we'll know it worked' — an A/B, a holdout, a score, a validation — and whenever a result feels too clean or self-confirming. Walks an 8-pattern leakage taxonomy and returns only the patterns that fire, each with an independence fix. Read-only.

Frontend & Design1.3K installs

Popular other skills

View category →

hyperframes-cli

heygen-com/hyperframes

The HyperFrames CLI by job - scaffold, check, look at frames, edit the timeline, preview, render locally or in the cloud, publish, project history - plus reading its JSON and recovering from build or render failures.

1.3M installs

triage

mattpocock/skills

Move issues and external PRs through a state machine of triage roles, categorise, verify, grill if needed, and write agent-ready briefs.

1M installs

ask-matt

mattpocock/skills

Ask which skill or flow fits your situation. A router over the skills in this repo.

778.4K installs

to-questionnaire

mattpocock/skills

Turn a decision you can't fully answer into a questionnaire for someone else to fill in.

508.9K installs

wait-what

mattpocock/skills

Stop. That last message did not land: re-pitch it.

459.7K installs

loop-me

mattpocock/skills

Grill me about specs for the workflows I want to build, within this workspace.

447.9K installs