Abstraction Power

Zet herhaalde code om in één abstractie: vaste pipeline, pluggable varianten, Mermaid flowchart

Door syahiidkamil · syahiidkamil/Software-Engineer-AI-Agent-Atlas

Getest · Werkt ★ 8.0/10

Abstraction Power — Zet herhaalde code om in één abstractie: vaste pipeline, pluggable varianten, Mermaid flowchart

Wat het doet

Een single-file prompt skill die Claude verschillende concrete voorbeelden laat analyseren, het invariante van de variërende delen scheidt, en een gegeneraliseerd model genereert in een vast Input / Abstraction Process / Abstract Model formaat met een Mermaid flowchart. Activeert wanneer je vraagt om het gemeenschappelijke patroon te vinden in herhaalde functies, een herbruikbare interface te extraheren, of uit te leggen waarom elke nieuwe variant je dwingt hetzelfde bestand te bewerken. Niet nuttig voor single-instance refactors of renames, waar het ceremonie toevoegt zonder inzicht.

Testrapport

Gekloond naar een tijdelijke HOME (export HOME=$(mktemp -d)) en bevestigd dat SKILL.md landt op ~/.claude/skills/abstraction-power/SKILL.md; frontmatter heeft name+description, body verwijst naar nul externe bestanden of scripts, en een grep naar curl|sh, base64, key/token exfil en injectieformulering retourneerde geen hits. Trigger formuleringen die ik beoordeelde — MOET activeren: "These four API clients all do the same connect/format/send dance, pull out the common abstraction", "I keep editing the same switch every time we add a payment provider — what's the general pattern?", "Extract what's essential vs incidental across these three React hooks so I can write one generic hook"; MOET NIET activeren: "Rename the variable usr to user across this file", "This one 300-line function is too long, split it into helpers" (enkele instantie, geen herhaalde voorbeelden) — 5/5 correct. Uitvoertest: drie bijna identieke S3 exporter functies (CSV/XLSX/JSON) in een input.js; baseline.md (49 regels) produceerde één geparameteriseerde helper waarvan de SQL `FROM ${table}` interpoleert, met een waarschuwing om het te whitelisten, en behield drie handgeschreven wrappers, terwijl skill.md (112 regels, volgens de verplichte Input/Abstraction Process/Output secties) "essential characteristics" opsplitste in een vaste pipeline plus een zelfbeschrijvende variant `{kind, source, ext, mime, serialize}` — elk formaat bezit zijn eigen geparameteriseerde query, zodat de geïnterpoleerde tabelnaam volledig verdwijnt — voegde een register toe zodat een vierde formaat een registratie is in plaats van een codebewerking, en bevatte de `graph TD` Mermaid flowchart die de body vereist (baseline had er geen). Kosten: 2.3x langer, de sectie "Key Benefits" is boilerplate, en on genuinely small dedup jobs the registry framing pushes toward over-abstraction, so 7 not 9.

Getest op: 2026-07-31 · Claude Code 2.x (agent harness)

Installatie

git clone --depth 1 https://github.com/syahiidkamil/Software-Engineer-AI-Agent-Atlas.git /tmp/abstraction-power-src
mkdir -p ~/.claude/skills
cp -R /tmp/abstraction-power-src/.claude/skills/abstraction-power ~/.claude/skills/abstraction-power
# Single SKILL.md, 87 lines, no scripts, no assets, no dependencies, no API keys.
# The parent repo (ATLAS) ships ~20 other skills under .claude/skills/ — this copies only this one.
# "ATLAS" in the description is repo jargon; the skill is fully standalone and needs none of the ATLAS scaffolding.
# Usage: ask for the common pattern across several similar functions, or invoke /abstraction-power.

Commando's en voorbeeldprompts

  • /abstraction-powerZet herhaalde code om in één abstractie: vaste pipeline, pluggable varianten, Mermaid flowchart

Skills reageren op gewone verzoeken — geen commando's om te onthouden. Na installatie activeren prompts zoals deze de skill (in het Engels):

  • Find repeated patterns in this codebase
  • Extract a reusable abstraction from these examples
  • Simplify this duplicated logic into one function