dedash

dedash is a skill for Claude Code, Codex from LilMGenius/paperthin. It costs 35 tokens per session (887 once invoked), scanned A, original, MIT.

A text-editing tool that removes em dashes and other dashes used in their place, while keeping hyphens, minus signs, and range markers when they have those roles.

In plain words
What is it for?
Use it to revise a passage, field, file, selection, or other user-specified scope by reviewing each dash in context.
Why use it?
It helps make punctuation fit the meaning of each sentence instead of leaving every dash unchanged or replacing valid ones.

Skill for Claude CodeCodex

Part of the paperthin plugin — 28 skills shipped together

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.

agentmods
npx agentmods add skills/lilmgenius/paperthin/dedash
Any agent
npx skills add LilMGenius/paperthin --skill dedash
Clone the repo
git clone --depth 1 https://github.com/LilMGenius/paperthin

Made for: Claude Code, Codex.

Or install paperthin, the plugin that ships this one along with the rest of its 28 skills.

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 dedash

README.md
[![agentmods](https://agentmods.dev/badge/skills/lilmgenius/paperthin/dedash.svg)](https://agentmods.dev/skills/lilmgenius/paperthin/dedash)
Your own site
<a href="https://agentmods.dev/skills/lilmgenius/paperthin/dedash"><img src="https://agentmods.dev/badge/skills/lilmgenius/paperthin/dedash.svg" alt="Measured on agentmods" height="20"></a>
Per session 35 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 887 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
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 $0.00035 $0.00887
Opus 5 $0.00017 $0.00443
Sonnet 5 $0.00007 $0.00177
Haiku 4.5 $0.00003 $0.00089

Measured 4d ago against content hash 32b534fc55be, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

dedash 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 4d ago.

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/depth/dedash/SKILL.md · 44 lines

How it starts

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

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.

Read the full file on GitHub · 44 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. 4d ago First seen · 44 lines · 35 tokens per session scan A 32b534fc55be

Subscribe to this mod's changes

dedash is a skill published in the GitHub repository LilMGenius/paperthin (999 stars, last pushed 15d ago), licensed MIT. It adds 35 tokens to every session and 887 once invoked, about $0.0002 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-30.

Related

Other skills, from other repositories

mm-init-project

Инициализирует или обновляет проект для mm-системы — создаёт passport.md в корне, копию в Obsidian, dashboard.md, handoff.md (скелет), project-instructions.md для claude.ai. Use when user says "оформи проект", "сделай паспорт", "init project", "/mm-init", "/mm-init-project", "обнови паспорт", "регистрирую проект".…

mworldorg/markdown-memory · 200 tokens

mm-setup

Онбординг/персонализация mm-системы под конкретного пользователя — спрашивает имя, чем занимается, стек, язык, путь к Obsidian vault, и записывает это в личный gitignored-оверлей config/mm-config.local.json + генерирует персональную копию claude.ai-скилла mm-web-bridge. Use when user says "/mm setup", "/mm onboard"…

mworldorg/markdown-memory · 152 tokens

mm-update

Самообновление mm-системы из удалённого репозитория. mm раздаётся через git clone + register-skills (не npm), поэтому update = git pull свежего mm из origin/main + повторный register-skills + notice о перезапуске Claude Code. Use when user says "обнови mm", "обнови систему", "/mm update", "update mm", "подтяни свежий…

mworldorg/markdown-memory · 102 tokens

mm

Диспетчер mm-системы — короткая команда вместо длинных. /mm без аргументов = список всех команд. /mm new = init project, /mm save = save session, /mm next = handoff, /mm prompt = bridge, /mm rules = instructions, /mm check = doctor. Use when user types "/mm" anything OR says "что есть в mm", "какие mm команды"…

mworldorg/markdown-memory · 103 tokens

content-editor

Writes and edits the portfolio's pages. Reads a brief, follows the style guide, and emits the HTML into public/.

crystian/skill-map · 28 tokens

notion-publish

Mirrors the portfolio's pages into Notion after publishing, creating one Notion page per site page via the Notion MCP. Use it from /publish, or when the user asks to sync the site to Notion.

crystian/skill-map · 52 tokens