Skip to content
Agentmart
Submit a tool

change-name

Change a name, email address, phone number, handle, or any identifying string across the artifacts where it lives — starting with surgical…

Skill by SimHacker

IndexedMIT★ 60
Write a review

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/simhacker-change-name

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.

We use your email only for this newsletter. Privacy

About

Change a name, email address, phone number, handle, or any identifying string across the artifacts where it lives — starting with surgical, provenance-disciplined PDF editing: scan the file, describe what's found, discuss the changes, perform and verify them. Originals preserved, every change disclosed, institutional corrections pursued in parallel.

Use cases: documents, writing, productivity

No 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. Checked Oct 25, 2026.

Tools
No tools found
Secrets
None asked for
Install scripts
None found
Runs as
Python package

Network hosts it talks to 1

  • codeload.github.com · found in install command

Files it touches

  • ~/.claude/skills/change-name

What's inside

Skill name
change-name
Description
Change a name, email address, phone number, handle, or any identifying string across the artifacts where it lives — starting with surgical, provenance-disciplined PDF editing: scan the file, describe what's found, discuss the changes, perform and verify them. Originals preserved, every change disclosed, institutional corrections pursued in parallel.
License
MIT
Instructions
182 lines in SKILL.md · view on GitHub

Before installing

  • Ships executable scripts

Agent Skills spec issues

  • allowed-tools: must be a space-separated string

Files (9)

  • CARD.yml
  • GLANCE.yml
  • README.md
  • SKILL.md
  • notice-config.example.yml · examples/
  • prestored-change-list.example.txt · examples/
  • pdf-prestoration.md · playbooks/
  • pdf_add_correction_notice.py · scripts/
  • pdf_name_scan.py · scripts/

SKILL.md (first lines)

# CHANGE-NAME 🦋

> *Say my name right — everywhere it's written.*

People change names — transition, marriage, divorce, faith, stage names, safety,
transliteration across scripts. The record does not follow by itself. Names live in
version-of-record PDFs, citation databases, git histories, link annotations, metadata,
and archives engineered never to change. This skill changes them — carefully, honestly,
and with receipts.

**One concrete task ships today:** ninja-editing PDF files. **The context is a socket:**
each venue (git, ACM, ORCID, registries, archives, life admin) plugs in as a playbook in
`playbooks/`. This SKILL.md is self-contained for the PDF task; playbooks extend it.

## The Ethics Gate (read first, always)

A correction is legitimate when **all five** hold. Any four out of five is a forgery
with good manners:

1. **Documented wish or clear standing** — the subject asked (best: find it in their own
   words), or those closest to them act on documented evidence of their identity.
   Standing order: self > subject's recorded request > family/co-authors > community.
2. **Original preserved** — bit-for-bit, sha256-pinned, adjacent to the edition.
3. **Total disclosure** — every change enumerated, **visible on page 1** (see
   [Visible correction notice](#visible-correction-notice-required)), in PDF metadata
   and attachments, and beside the file (README). Metadata-only disclosure fails: a
   renamed or printed copy loses the filename, README, and sibling original.
4. **Honest labeling** — the filename says what the file is (`-memorial-edition`,
   `-corrected`, never a silent replacement).
5. **Canonical fix pursued** — the edited derivative is a bridge to the institutional
   correction (publisher petition, registry update), never a substitute for it.

**Never out anyone.** A scan that finds every occurrence of an old name is also a map of
someone's exposure. Treat SCAN reports as sensitive; publish only what the subject or
their standing-holders approve.

## Protocol: SCAN → DISCUSS → EDIT → VERIFY → PUBLISH

### 1. SCAN — look at the PDF and describe what you find

Run the sister script (degrades gracefully without pikepdf):

```bash
python3 scripts/pdf_name_scan.py TARGET.pdf --find "Old Name" [--replacement "New Name"]
```

It reports, without changing anything:

- **Document metadata** — `/Author`, `/Title`, docinfo, XMP
- **Content-stream text** — including **kern-split occurrences**: TeX-produced PDFs
  store names like `(Freudenber)18(g)`, invisible to naive grep. The scanner inflates
  streams and matches across TJ kern numbers.
- **Link annotations** — URIs containing the old name (profile links, repo links)
- **Font subsets** — per font: BaseFont, CharSet/FirstChar/LastChar, and **whether the
  embedded glyphs can spell the replacement**. (Founding case: the email font subset
  ended at glyph 117 — one code point short of the letter `v`. It could not spell
  "vanessa". Know this *before* you promise an in-font edit.)

Describe findings to the human in plain language: where the name appears, what fonts
carry it, what can be edited in-font and what needs a fallback face.

### 2. DISCUSS — agree the plan

Present the evidence, then agree, explicitly:

- **Which occurrences** change (byline yes; historical citations in *other* people's
  references may be out of scope), and which stay.
- **Replacement strings** — name, email, URLs (beware redirect masking: an old-handle
  URL that redirects still *displays* the old handle; update visible text).
- **Typography** — in-font where the subset allows (recompute kerning), matched fallback
  face where it doesn't (base-14 Helvetica for sans, Times for serif).
- **Labeling** — the edition's filename, the visible page-1 notice (wording and
  placement), and the embedded provenance note / attachment text.
- **The gate** — confirm all five conditions; record the wish/standing evidence in the
  ledger.

## Visible correction notice (required)

Every prestored PDF must carry a **visible correction notice on page 1**. Outside-the-page
disclosure (filename, README, sibling original, PDF `/Note` metadata) is necessary but not
sufficient — those signals vanish when someone renames, re-hosts, or prints the file.

The notice must be **explicit and machine-parseable** — clear enough that a human skimming
page 1 and plain text extraction (`pdftotext`, Ghostscript `txtwrite`) both recover: this is
not the version of record; what changed; where the unaltered original lives; that a canonical
fix is being pursued.

**Required content** (condense for page 1; full list may live in a PDF attachment):

- Honest label (`CORRECTED MEMORIAL EDITION`, `CORRECTED EDITION`, etc.) and date
- **Not the version of record** — cite DOI or publisher identifier when one exists
- What was updated (byline, email, footnote URLs, metadata) and the new identity used
- Standing / wish — link the subject's own words when they exist
- Unaltered original preserved — repository path and **SHA-256** (full hash, or labeled
  prefix with ellipsis)
- Pointer to full change list (embedded attachment or README)
- Canonical correction in progress (publisher petition, registry update, etc.)

**Placement recommendations** (least disruptive first):

| Placement | When to use |
|-----------|-------------|
| **Footer band above the publisher reference / copyright block** | Default. Page 1 already has small legal text there; the notice reads as metadata, not content. Room for 3–4 lines. |
| **Top margin above the title** | When the footer is crowded. One or two lines; keep the full notice in the attachment. |
| **Avoid** | Between author block and abstract; inside the abstract; rotated side-margin text — all read as content tampering or archival stickers. |

**Typography recommendations:**

- **7–7.5 pt** minimum (7 pt floor; do not go to 6 pt)
- Match the document's house style — sans used for affiliations, or base-14 Helvetica
- Full text-block width (~468 pt on US Letter) — wrap across the whole page, not a
  narrow column; fewer lines means less vertical stack and no collision with existing
  header text like "Accepted for DLS"
- **Small caps** on the label line (`CORRECTED MEMORIAL EDITION`)
- Thin rule (0.25 pt) above the notice to separate it from body content
- Monospace or distinct treatment for hashes and URLs aids both reading and extraction

**Example** (4-line footer; adapt labels to the case):

From SimHacker/moollm, MIT.

More from SimHacker/moollm

Signals

Stars
60
Forks
5
Open issues
1
Last commit (this folder)
Oct 20, 2026 (7 days ago)

From GitHub (fetched Oct 24, 2026).

Details

License
MIT
First seen
Oct 24, 2026
Last checked
Oct 24, 2026

More from SimHacker

Cite this page

change-name skill. Agent Mart. https://agentmart.dev/skills/simhacker-change-name (last updated 2026-10-24)