Abstraction Power
Przekształca powtarzający się kod w jedną abstrakcję: stały potok, wtykowe warianty, schemat blokowy Mermaid
Testowano · Działa
Co robi ten skill
Umiejętność promptowania z pojedynczego pliku, która sprawia, że Claude analizuje kilka konkretnych przykładów, oddziela niezmienne części od zmiennych i emituje uogólniony model w stałym formacie Input / Abstraction Process / Abstract Model ze schematem blokowym Mermaid. Uruchamia się, gdy poprosisz o znalezienie wspólnego wzorca w powtarzających się funkcjach, wyodrębnienie interfejsu wielokrotnego użytku lub wyjaśnienie, dlaczego każdy nowy wariant zmusza do edycji tego samego pliku. Nieprzydatne do refaktoryzacji lub zmian nazw pojedynczych instancji, gdzie dodaje ceremonii bez wglądu.
Raport z testu
Sklonowano do tymczasowego HOME (export HOME=$(mktemp -d)) i potwierdzono, że SKILL.md ląduje w ~/.claude/skills/abstraction-power/SKILL.md; frontmatter zawiera name+description, treść nie odwołuje się do żadnych zewnętrznych plików ani skryptów, a grep dla curl|sh, base64, wycieku kluczy/tokenów i fraz wstrzykujących nie zwrócił żadnych trafień. Ocenione frazy wyzwalające — POWINNO uruchomić: "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"; NIE POWINNO uruchomić: "Rename the variable usr to user across this file", "This one 300-line function is too long, split it into helpers" (pojedyncza instancja, brak powtarzających się przykładów) — 5/5 poprawnie. Test wyjścia: trzy niemal identyczne funkcje eksportujące S3 (CSV/XLSX/JSON) w pliku input.js; baseline.md (49 linii) wygenerował jedną sparametryzowaną funkcję pomocniczą, której SQL interpoluje `FROM ${table}`, z zastrzeżeniem, aby ją umieścić na białej liście, i zachował trzy ręcznie napisane opakowania, podczas gdy skill.md (112 linii, zgodnie z wymaganymi sekcjami Input/Abstraction Process/Output) podzielił "essential characteristics" na stały potok plus samoopisujący się wariant `{kind, source, ext, mime, serialize}` — każdy format posiada własne sparametryzowane zapytanie, więc interpolowana nazwa tabeli całkowicie znika — dodał rejestr, dzięki czemu czwarty format to rejestracja, a nie edycja kodu, i zawierał schemat blokowy `graph TD` Mermaid, którego wymaga treść (baseline go nie miał). Koszt: 2,3x dłuższy, sekcja "Key Benefits" to boilerplate, a w przypadku naprawdę małych zadań deduplikacji, ramowanie rejestru prowadzi do nadmiernej abstrakcji, so 7 not 9.
Testowano: 2026-07-31 · Claude Code 2.x (agent harness)
Instalacja
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.
Komendy i przykładowe prompty
/abstraction-powerPrzekształca powtarzający się kod w jedną abstrakcję: stały potok, wtykowe warianty, schemat blokowy Mermaid
Skille uruchamiają się na zwykłe polecenia — bez komend do zapamiętania. Po instalacji aktywują go prompty takie jak te (po angielsku):
Find repeated patterns in this codebaseExtract a reusable abstraction from these examplesSimplify this duplicated logic into one function