Skip to main content
ClaudeWave
EN, English
Skill403 repo starsupdated 4mo ago

abstraction-power

The abstraction-power skill activates pattern recognition to identify repeated structures across concrete examples, extract essential characteristics, and generate reusable abstractions. Use this when analyzing code for duplicated logic, designing systems requiring generalized models, or solving problems by recognizing underlying patterns across specific instances. It emphasizes recognizing structural similarities to create interfaces or strategies that reduce code modification when new variants are added.

Install in Claude Code
Copy
git clone --depth 1 https://github.com/syahiidkamil/Software-Engineer-AI-Agent-Atlas /tmp/abstraction-power && cp -r /tmp/abstraction-power/.claude/skills/abstraction-power ~/.claude/skills/abstraction-power
Then start a new Claude Code session; the skill loads automatically.

SKILL.md

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
adversarial-reviewSkill

Adversarially review something just built — presume it is broken and find where. Use after implementing a feature, finishing a build, or before shipping, or whenever ATLAS or Boss wants a hostile second opinion on a diff, a running app, or a whole codebase. Spawns clean-context reviewers with opposing lenses (correctness, security, empty-world) and reproduces every finding by running the target before believing it. Distinct from /code-review, which statically reads a diff and never runs the app.

algorithmic-artSkill

Creating algorithmic art using p5.js with seeded randomness and interactive parameter exploration. Use this when users request creating art using code, generative art, algorithmic art, flow fields, or particle systems. Create original algorithmic art rather than copying existing artists' work to avoid copyright violations.

anthropic-product-knowledgeSkill

Stop and consult this skill whenever your response would include specific facts about Anthropic's products. Covers: Claude Code (how to install, Node.js requirements, platform/OS support, MCP server integration, configuration), Claude API (function calling/tool use, batch processing, SDK usage, rate limits, pricing, models, streaming), and Claude.ai (Pro vs Team vs Enterprise plans, feature limits). Trigger this even for coding tasks that use the Anthropic SDK, content creation mentioning Claude capabilities or pricing, or LLM provider comparisons. Any time you would otherwise rely on memory for Anthropic product details, verify here instead — your training data may be outdated or wrong.

canvas-designSkill

Create beautiful visual art in .png and .pdf documents using design philosophy. You should use this skill when the user asks to create a poster, piece of art, design, or other static piece. Create original visual designs, never copying existing artists' work to avoid copyright violations.

change-core-selfSlash Command

Interview Boss about the project, then reason from first principles to design the ideal ATLAS operating identity/system-prompt for it — free to drop KISS/YAGNI/DRY/clean-architecture entirely when the project (and the LLM's own distribution) calls for a different mindset

code-architectSubagent

Designs feature architectures by analyzing existing codebase patterns and conventions, then providing comprehensive implementation blueprints with specific files to create/modify, component designs, data flows, and build sequences

code-explorerSubagent

Deeply analyzes existing codebase features by tracing execution paths, mapping architecture layers, understanding patterns and abstractions, and documenting dependencies to inform new development

code-reviewSubagent

Code review a pull request