For Claude · Cursor · any agent host
After Claude writes UI copy, run this
The missing step after AI writes your words — local inclusive-language check as definition of done. No account. No model required for matching.
Stars don’t change shipped language. One init does — skill, MCP, after-edit hooks, and a PR check so Claude keeps checking even when nobody is watching.
npx -y anti-default initThat writes Cursor + Claude Code skills, project MCP, CLAUDE.md, Claude/Cursor after-edit hooks, ignore file, inclusive-check / inclusive-fix scripts, and a GitHub Action workflow. Existing files are never overwritten.
Claude Code plugin
Prefer plugins? Add the marketplace, then install — skill, MCP, and after-edit hooks without running init first (still useful for CI + ignore file).
claude plugin marketplace add NomadBuilder/anti-defaultclaude plugin install un-default@un-defaultClaude does it without asking
After init or the Claude plugin, Claude Code and Cursor hooks scan copy right after file edits. Hard findings are pushed back into the agent loop — users don’t have to remember a command.
What “done” means
- Safe autofix:
npx -y anti-default fix .(or MCPun_default_fix) - Scan:
npx -y anti-default .(orun_default_scan) - Rewrite clear hits; ask before touching identity, quotes, legal, or community self-description
- Intentional language →
un_default_feedback - Re-scan until hard findings are gone or marked fine
Paste MCP config
Same JSON for Cursor project MCP, Claude Desktop, and Claude Code project scope. Merge under mcpServers if the file already has other servers.
{
"mcpServers": {
"un-default": {
"command": "npx",
"args": [
"-y",
"anti-default",
"mcp"
]
}
}
}Cursor: project file .cursor/mcp.json (created by init), or Cursor Settings → MCP. Reload the window after adding.
Claude Desktop: Settings → Developer → Edit Config → merge into claude_desktop_config.json, then fully quit and relaunch. Tools: un_default_scan, un_default_fix, un_default_feedback.
Claude Code: init writes .mcp.json at the repo root (project scope). Approve when prompted, or claude mcp add --scope project -- npx -y anti-default mcp. Or install the plugin from the marketplace above.
Claude Project instructions
Paste into Project → Custom instructions so Claude won’t mark UI copy done until Un-Default is clean.
You are not done with user-facing copy (UI strings, docs, READMEs, marketing, onboarding, job posts) until Un-Default is clean of hard findings — or remaining hits are intentional and recorded.
This repo may include Claude/Cursor hooks that scan after file edits. Treat hook findings as blockers for finishing copy work.
Workflow (every time you write or edit public language):
1. Prefer MCP tools if available: un_default_fix (safe 1:1 only), then un_default_scan.
2. Or run in the project shell:
npx -y anti-default fix .
npx -y anti-default . --format json --fail-on never
3. Rewrite clear hits using suggestions. Ask before changing identity, quotes, legal, historical, illness-story, or community self-description.
4. Intentional language → record with un_default_feedback (or npx -y anti-default feedback …) — do not silently ignore forever.
5. Re-scan until hard findings are gone or marked fine in context. Report what you fixed, asked about, and left.
Setup once in this repo: npx -y anti-default init
Docs: https://darkai.ca/un-default/for-agentsCanonical URL for this page: https://darkai.ca/un-default/for-agents
Also useful
- Tune rules in the Review UI before you bake habits into agents
- Team handbook from tuned prefs → Style guide
- Marketplace / directory listing checklist in the repo:
docs/PUBLISH-DIRECTORIES.md - Anonymous usage totals: Usage · api/stats