plugins/abstraction-architect/skills/abstraction-architect/SKILL.md
Knowledge base for pure-architecture decisions on when to unify duplicated logic into a shared abstraction versus leave it duplicated. Covers the canonical theory (Rule of Three, DRY/WET/AHA, Wrong Abstraction, Locality of Behaviour, Bounded Contexts, Tidy First options framing, CUPID vs SOLID), 12 essential-duplication patterns that justify unification, 12 wrong-abstraction patterns that justify inlining or decomposition, an operational decision frame, and a verified reading list. TRIGGER WHEN: the user is making an architectural decision about whether to centralize, extract, or remove a layer; reviewing an abstraction for premature generality; auditing scattered cross-cutting concerns; spawned by the abstraction-architect agent during /abstraction-architect:audit or as the Abstraction dimension of /senior-review:team-review or /senior-review:code-review; the user asks "should I extract this into a service" / "is this DRY enough" / "is this wrong abstraction". DO NOT TRIGGER WHEN: the task is code formatting and readability cleanup (use clean-code:clean-code), Python-specific refactoring with metrics (use python-development:python-refactor), generic dead-code removal (use senior-review:cleanup-dead-code), security review (use senior-review:security-auditor), or pure pattern-consistency review without an architecture lens (use senior-review:code-auditor).
npx skillsauth add acaprino/alfio-claude-plugins abstraction-architectInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
This skill gives Claude the conceptual frame for the pure-architecture question: when does duplicated logic want to be unified into a layer, and when does an existing layer want to be inlined or decomposed?
Two opposite failure modes coexist in real codebases. Both have well-documented theory:
The skill exists because both failures look superficially like "the right thing": missed unification is hidden under "we already have similar code elsewhere", and wrong abstraction is defended by "but we DRY'd this last quarter".
Load this skill when:
/abstraction-architect:audit spawns the auditor agent which loads this skill)Do not load this skill for:
clean-code:clean-code)python-development:python-refactor)senior-review:cleanup-dead-code)senior-review:security-auditor)senior-review:code-auditor)Load references on demand, not all up front. Each file is focused on one dimension of the problem.
references/theory.md — the principles: Rule of Three, DRY/WET/AHA, Wrong Abstraction, Locality of Behaviour, Bounded Contexts, Tidy First options framing, CUPID vs SOLID. Read this first when the user asks "why does this matter".references/unification-patterns.md — 12 canonical essential duplication cases. Read when scanning a codebase for missed unification or when the user asks "should this be a service".references/anti-patterns.md — 12 canonical wrong abstraction cases. Read when reviewing an existing shared layer or when the user asks "is this a god service".references/decision-frame.md — the operational classifier with pre-flight questions and severity calibration. Read when promoting a candidate to a finding or deciding whether the gate has been cleared.references/further-reading.md — verified URL list (Metz, Beck, Dodds, Abramov, Gross, North, Acton, Italian-language DDD canon). Read when the user asks for resources or when citing a position in a report.When the concern changes, where do you have to touch?
This question subsumes most of the principles in theory.md and is the load-bearing classifier the auditor agent applies.
development
Quality gates for multi-reviewer code review pipelines: adversarial verification panel, completeness critic, reviewer pipeline conventions, and the context sharing pattern for parallel reviewers. TRIGGER WHEN: running /senior-review:team-review quality gates; running /senior-review:code-review Steps 4b/4c (adversarial verification and completeness check); consolidating or deduplicating findings from multiple parallel reviewers. DO NOT TRIGGER WHEN: single-reviewer style review without a consolidation phase, or generic team coordination (the upstream agent-teams skills cover that).
development
Unified web frontend knowledge base covering CSS architecture, UX psychology, UI components, distinctive aesthetics, and interface design generation. TRIGGER WHEN: working on web styling, design systems, component decisions, responsive strategy, distinctive frontend aesthetics, or exploring multiple interface designs. DO NOT TRIGGER WHEN: the task is purely backend or unrelated to web frontend.
development
Stripe payments knowledge base - API patterns, checkout optimization, subscription lifecycle, pricing strategies, webhook reliability, Firebase integration, cost analysis, and revenue modeling. Loaded by stripe-integrator and revenue-optimizer agents; also consumable directly when the user asks for Stripe-specific patterns without needing an agent. TRIGGER WHEN: working with Stripe API (Payment Intents, Customers, Subscriptions, Checkout Sessions, Connect, webhooks, tax, usage-based billing), pricing strategy, or revenue modeling. DO NOT TRIGGER WHEN: payment work is non-Stripe (PayPal, Square, crypto) or the task is generic e-commerce unrelated to payments.
development
Knowledge base for implementing Google Analytics 4 (GA4) and Google Tag Manager (GTM) on websites, with deep coverage of EU/GDPR Consent Mode v2 compliance, CMP selection (iubenda, Orestbida CookieConsent), event taxonomy, conversion (Key Event) configuration, remarketing audiences, framework-specific integration (vanilla HTML, Next.js, React, WordPress), Microsoft Clarity and Search Console integration, and diagnostic patterns for low-traffic sites. TRIGGER WHEN: implementing or auditing GA4, GTM, gtag, dataLayer, Consent Mode v2, cookie banner, conversion tracking, Key Events, remarketing audiences, Google Ads conversion import, Enhanced Conversions, or diagnosing why a site has traffic but no conversions. DO NOT TRIGGER WHEN: the task involves non-Google analytics (Matomo, Plausible, Fathom), server-side analytics infrastructure unrelated to GA4/GTM, BigQuery export pipelines, or pure SEO work without a measurement layer.