aminet-browser
Aminet search and browse: full-text search, category tree navigation, architecture filtering, package detail, and curated collections. Use when searching,…
Cascade the same edit pattern across N files safely. Use when applying the same refactor to multiple files (e.g. swap import paths across 11 scripts, rename a symbol, migrate a call signature). Detects the common-shape-across-files situation and turns an N-file cascade into a
$ npx -y skills add Tibsfox/gsd-skill-creator --skill batch-rewrite-pattern --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/batch-rewrite-patternContext preview
The summary Claude sees to decide when to auto-load this skill.
Cascade the same edit pattern across N files safely. Use when applying the same refactor to multiple files (e.g. swap import paths across 11 scripts, rename a symbol, migrate a call signature). Detects the common-shape-across-files situation and turns an N-file cascade into a
name: batch-rewrite-pattern description: "Cascade the same edit pattern across N files safely. Use when applying the same refactor to multiple files (e.g. swap import paths across 11 scripts, rename a symbol, migrate a call signature). Detects the common-shape-across-files situation and turns an N-file cascade into a planned audit → apply → verify workflow instead of N sequential manual edits." format: 2025-10-02 version: 1.0.0 status: ACTIVE updated: 2026-04-17 triggers: - apply the same refactor across multiple files
When the same edit needs to land in N files, the worst shape is N sequential manual passes. Each pass collects its own errors; the hook system retriggers; context fills with repetitive diffs. This skill captures the better shape.
Activate when any of these apply:
matching pattern X, replace Y with Z"
Typical count trigger: **≥ 4 files** warrant the batch shape.
1. **Characterize the transformation** in one paragraph:
2. **Enumerate candidates** with Grep/Glob:
Grep pattern=BEFORE output=files_with_matches
3. **Dry-run the rewrite** against 1-2 candidates first. Verify:
4. **Apply in a batch** — prefer a single Bash `sed`/`perl` invocation or a small rewrite script over N sequential Edit calls:
for f in $(grep -l 'BEFORE' src/**/*.ts); do
sed -i -e 's/BEFORE/AFTER/g' "$f"
doneOr write a one-shot node script that reads each file, applies the transformation, writes back.
5. **Verify with the test suite** if one exists, or with a grep that the after-pattern is uniformly present and the before-pattern is gone.
6. **Single commit** covering the whole cascade, scope line listing files.
Each Edit triggers hook re-reads and bloats context.
interrupted halfway. Either all or none; use `git stash` to revert if the cascade was wrong.
pattern but a few need a variant, enumerate the variants first and handle each as its own batch.
Situation: 11 scripts in `tools/release-history/` each had a direct `pg.Client` instantiation and hardcoded paths. Needed to convert all 11 to use `loadConfig()` + `openDb(cfg)`.
Right shape: 1. Wrote the adapter (`db.mjs`) once 2. Characterized the transform: replace `new pg.Client({...})` block with `await openDb(cfg)`; replace hardcoded paths with `cfg.*_abs` 3. Applied to each file in one Bash loop or parallel sed invocation 4. One commit
Wrong shape (what actually happened): 11 sequential Read-plus-Edit cycles, 35+ read-before-edit hook fires, recursive pattern-matching at each step.
The lesson: when you feel yourself about to do the same edit for the fourth time, stop and batch the rest.
uniformly present
An adaptive learning and coprocessor architecture for Claude Code, built as an extension to GSD (open-gsd)
Repo: Tibsfox/gsd-skill-creator
Aminet search and browse: full-text search, category tree navigation, architecture filtering, package detail, and curated collections. Use when searching,…
FS-UAE emulator configuration and launch: hardware profiles, ROM management, WHDLoad integration, config generation, and state snapshots. Use when configuring…
Manages Aminet INDEX infrastructure: fetch, parse, cache, and incremental update of ~84,000-entry package database. Use when managing INDEX data, checking…
Aminet package installation: LhA/LZX extraction, Amiga filesystem mapping, dependency detection, install tracking, and scan gate enforcement. Use when…
Selective Aminet package mirroring: single-package fetch, integrity verification, mirror state tracking, bulk download, and sync detection. Use when…
Multi-layer virus scanning for Aminet packages. Signature-based detection, heuristic hunk analysis, boot block scanning, quarantine management, and scan…