For Claude · Cursor · any agent host
After Claude writes UI copy, run this
The missing step after AI writes your words — catch racist, sexist, and ableist defaults before you ship. Local rules. No account. No model required for matching.
What it catches
Racist framing, sexist digs, ableist metaphors — same local rules that run after init. No account, no model call. Sample agent-written copy, analyzed in your browser.
14 findings · showing 3
- “primitive”Racist framing
Positions non-Western or Indigenous societies as less advanced.
Try: early
- “Third World”Racist framing
Cold War hierarchy that ranks countries as behind a Western “first.”
Try: countries subjected to colonial extraction (when that relationship is the point)
- “pow-wow”Racist framing
A powwow is a specific Indigenous gathering; using it for any meeting is appropriation.
Try: meeting
Open full demo review · shareable as ?demo=1
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. npm package name: anti-default (product is Un-Default).
npx -y anti-default initThat writes Cursor + Claude Code skills, project MCP, CLAUDE.md, Claude/Cursor after-edit hooks, ignore file, sample copy at examples/un-default-demo.md, inclusive-check / inclusive-fix scripts, and a GitHub Action workflow. Existing files are never overwritten. Init ends with a sample scan so you see a finding immediately.
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/un-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