rebrand-sweep — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited rebrand-sweep (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
A blanket find/replace on a brand token is the move that corrupted ~12 notes on 2026-05-26 (memory feedback-verify-brand-architecture-before-sweep). This skill makes that mistake structurally hard. Engine: ~/Desktop/GLOBAL/AllSkills/rebrand-sweep/rebrand_sweep.py (dry-run by default, line-level protect guard).
Never replace a bare brand token blanket. A token can mean two things. Classify before you touch anything, dry-run, show Will, then apply.
Find and read the brand's rules before scanning:
find ~/Obsidian -iname "brand-architecture*.md"Extract: which form of the token is the old store name (→ replace), which is a protected meaning that must stay (e.g. the resold "ExampleBrand" watch brand — near "watch/timepiece/movement/Signature/resold/real third-party" + model names like chrona/tempo/equinox), and which are code identifiers (lowercase-hyphen ExampleBrand-* = CSS class/id, never touched). If no brand-architecture note exists, ask Will what the protected meanings are — do not guess.
Translate the protected meanings into --protect regexes:
python3 ~/Desktop/GLOBAL/AllSkills/rebrand-sweep/rebrand_sweep.py ExampleBrand ExampleBrand \
--paths ~/notes/Brands/<brand> ~/notes/<brand> \
--protect "ExampleBrand (watch|timepiece|movement|Signature)" "resold|resell|real third-party" \
"chrona|tempo|equinox|genomex|horolis|lume|vernox|anthropica|calibre" \
--wordCase-sensitive exact-token match means lowercase ExampleBrand-* code ids are left alone automatically. Output lists every → REPLACE line and every · PROTECTED — kept line per file.
Surface the replace/protect counts and any ambiguous lines. The brand-architecture rule is explicit: when in doubt on a customer-facing brand call, show Will the exact lines and ask. Get his OK before applying.
Re-run the exact same command with --apply. It only rewrites REPLACE lines; protected lines and code ids are untouched.
A rename also breaks references that point at the old name/path. Sweep these too:
Brands/<old> → Brands/<new>, ECOMMERCE/<old> → ECOMMERCE/<new> (these are paths, safe to replace literally — distinct from the brand token).mv), and if it's a project working dir: the IDE symlink, both .code-workspace files, hardcoded skill paths (grep -rl "<old path>" ~/.claude/skills), the Obsidian obsidian-autobackup.sh, and the Claude memory-folder slug (~/.claude/projects/<slug>/memory must move to the new path-slug or memories vanish). You cannot cleanly rename the session's own cwd from inside it — build a migration script and have Will run it from a fresh terminal (memory: this is the part that's bitten us; flag it, don't bulldoze).Grep for leftover corruption patterns and for broken <old>/ link paths. If a sweep went wrong, recover by replaying the file's transcript Write/Edit history — a sed/blanket edit leaves no transcript trace, so the replay reconstructs the true pre-sweep state; validate by length-ratio before overwriting (memory feedback-recover-prior-work-via-transcript-grep).
sed s/X/Y/g.feedback-verify-brand-architecture-before-sweep).~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.