preset-setuplisted
Install: claude install-skill MichaelYcJo/SpecSeal
# /specseal:preset-setup — reviewed CLAUDE.md merge
Merge the preset's CLAUDE.md block into the user's global `~/.claude/CLAUDE.md`
(or the target the user names). Unlike `install.sh`, which only inserts the
marker block mechanically, this command deduplicates — and every deletion goes
through the user first.
## Procedure
0. **Ask the scope first** (unless the user already said): global
(`~/.claude/CLAUDE.md` — every project on this machine) or this project
(`./CLAUDE.md` — committed, so teammates receive it via git). Recommend
project scope for team repos, global for personal machines. Warn if the
preset block already exists in the *other* scope — both files load, so the
block should live in exactly one.
1. **Back up.** Copy the target file to `CLAUDE.md.bak` before touching anything.
If the target does not exist, just write the preset block and stop.
2. **Read both.** The preset block is the content between
`<!-- specseal:start -->` and `<!-- specseal:end -->` in this
plugin's CLAUDE.md. Read the user's file in full.
3. **Classify each overlap** between the user's existing content (outside any
preset markers) and the preset block:
| Finding | Proposal |
|---|---|
| Exact duplicate — same rule, same meaning | Propose removing the user's copy (the block now owns it) |
| Partial overlap — user's rule is more specific | Propose **keeping the user's rule** and note it overrides the block's general form |
| Conflict — different val