abstraction-power

GitHub

激活抽象思维模式,从具体实例中识别重复模式并提取核心特征,构建可复用的通用模型。用于代码分析、系统设计及问题解决,旨在通过抽象简化复杂性。

.claude/skills/abstraction-power/SKILL.md syahiidkamil/Software-Engineer-AI-Agent-Atlas

Trigger Scenarios

需要识别代码中的重复逻辑 设计系统时寻找共同行为 解决复杂问题时发现底层模式

Install

npx skills add syahiidkamil/Software-Engineer-AI-Agent-Atlas --skill abstraction-power -g -y
More Options

Non-standard path

npx skills add https://github.com/syahiidkamil/Software-Engineer-AI-Agent-Atlas/tree/main/.claude/skills/abstraction-power -g -y

Use without installing

npx skills use syahiidkamil/Software-Engineer-AI-Agent-Atlas@abstraction-power

指定 Agent (Claude Code)

npx skills add syahiidkamil/Software-Engineer-AI-Agent-Atlas --skill abstraction-power -a claude-code -g -y

安装 repo 全部 skill

npx skills add syahiidkamil/Software-Engineer-AI-Agent-Atlas --all -g -y

预览 repo 内 skill

npx skills add syahiidkamil/Software-Engineer-AI-Agent-Atlas --list

SKILL.md

Frontmatter
{
    "name": "abstraction-power",
    "description": "Activate ATLAS pattern recognition mode. Identify repeated patterns, extract essential characteristics, and create reusable abstractions from concrete examples."
}

Activate ATLAS abstraction thinking mode.

What is Abstraction?

Abstraction is the process of identifying essential features while hiding unnecessary details. It involves moving from specific, concrete examples to general, conceptual models.

The Abstraction Process

  1. Identify multiple concrete examples
  2. Analyze common patterns and features
  3. Remove specific details
  4. Extract essential characteristics
  5. Create a generalized model

Abstraction Example

Concrete instances:

  • sendEmail(to, subject, body) → connects to SMTP, formats message, delivers
  • sendSMS(phone, message) → connects to Twilio API, formats payload, delivers
  • sendPush(deviceId, title, body) → connects to FCM, formats notification, delivers

Pattern recognized: All three connect to a service, format a message, and deliver it.

Abstraction:

NotificationChannel {
  connect()
  format(content) → payload
  deliver(payload)
}

Three specific implementations collapsed into one interface. New channels (Slack, WhatsApp) plug in without changing the system.

Generalization Example

Concrete observations:

  • "Every time we add a new payment method, we modify the checkout function"
  • "Every time we add a new report type, we modify the export function"
  • "Every time we add a new auth provider, we modify the login function"

Generalized insight: The system violates the Open/Closed Principle. Adding a new variant forces modification of existing code.

Generalized solution: Use a registry/strategy pattern. New variants register themselves; the core function iterates over registered strategies without knowing their specifics.

The generalization isn't about one specific fix. It's recognizing the shape of the problem so you see it everywhere it appears.

When Invoked

Apply this abstraction lens to the current context:

  1. If analyzing code: Look for repeated patterns, similar structures, or duplicated logic that can be abstracted into reusable components
  2. If designing systems: Identify common behaviors and create generalized models
  3. If solving problems: Find the underlying pattern across specific examples

Visualization

Prefer flowcharts over sequence diagrams when visualizing abstractions. Flowcharts show the structure and relationships between abstracted components. Sequence diagrams show temporal interactions, which is useful but secondary to understanding the shape of the abstraction.

Use Mermaid diagrams. Default to graph TD (top-down flow) or graph LR (left-right flow). Only use sequenceDiagram when the insight is specifically about message ordering between actors.

Output Format

When applying abstraction power, provide:

Input (Concrete Examples)

List the specific instances being analyzed

Abstraction Process

  • Common features identified
  • Differences to ignore
  • Essential characteristics extracted

Output (Abstract Model)

The generalized model, class, pattern, or solution — with a Mermaid flowchart when the relationships benefit from visualization.

Key Benefits to Communicate

  • Reusability: Abstract models can be applied to many specific cases
  • Simplification: Complex systems become easier to understand
  • Maintenance: Changes to the abstract model propagate to all implementations
  • Scalability: New concrete instances can be created from the abstract template

Version History

  • fc0bf11 Current 2026-08-19 11:33

Same Skill Collection

.claude/skills/adversarial-review/SKILL.md
.claude/skills/algorithmic-art/SKILL.md
.claude/skills/frontend-design/SKILL.md
.claude/skills/human-writing/SKILL.md
.claude/skills/learning-from-mistakes/SKILL.md
.claude/skills/mcp-builder/SKILL.md
.claude/skills/pdf/SKILL.md
.claude/skills/playwright-cli/SKILL.md
.claude/skills/postgresql-code-review/SKILL.md
.claude/skills/postgresql-optimization/SKILL.md
.claude/skills/shadcn/SKILL.md
.claude/skills/skill-creator/SKILL.md
.claude/skills/supabase-postgres-best-practices/SKILL.md
.claude/skills/theme-factory/SKILL.md
.claude/skills/anthropic-product-knowledge/SKILL.md
.claude/skills/find-skills/SKILL.md
.claude/skills/free-will/SKILL.md
.claude/skills/super-product-owner/SKILL.md
.claude/skills/super-ui-ux-design/SKILL.md

Metadata

Files
0
Version
fc0bf11
Hash
8e9f4b47
Indexed
2026-08-19 11:33

Главная - Вики-сайт
Copyright © 2011-2026 iteam. Current version is 2.155.2. UTC+08:00, 2026-08-20 06:03
浙ICP备14020137号-1 $Гость$