From aims-toolkit
아키텍처, 설계, 시스템 설계, 구조 설계, 레이어 설계, 블루프린트, 컴포넌트 설계 - Design systems, layer structures, module boundaries, and feature architectures. Outputs actionable blueprints with file paths. Use when planning architecture for new features or restructuring existing systems. Do NOT use for code implementation (use feature-development) or code-level refactoring (use refactor-cleaner).
npx claudepluginhub aimskr/aims-claude-toolkit --plugin aims-toolkitThis skill uses the workspace's default tool permissions.
Design the **big picture** and produce **actionable blueprints**:
Designs software architecture and selects patterns like layered, clean, and hexagonal based on project size, team, and needs. Includes checklists for decisions on monoliths vs. microservices.
Guides system design, architecture reviews, ADR creation, hexagonal compliance, Mermaid/PlantUML diagram generation, and layer dependency enforcement.
Designs software architecture from specs using 5 agents for module splits, dependencies, data flows, and interfaces. Outputs Markdown docs with diagrams and ADR. Use for spec-to-design or pattern selection.
Share bugs, ideas, or general feedback.
Design the big picture and produce actionable blueprints:
Before designing, understand what exists:
┌─────────────────────────────────────┐
│ Frameworks/UI │ ← Outermost (changeable)
├─────────────────────────────────────┤
│ Interface Adapters │ ← Controllers, Presenters
├─────────────────────────────────────┤
│ Use Cases │ ← Application Business Rules
├─────────────────────────────────────┤
│ Entities │ ← Enterprise Business Rules (core)
└─────────────────────────────────────┘
Dependency Rule: Inner layers must not know about outer layers
src/
├── domain/ # Core business logic (no dependencies)
│ ├── entities/
│ ├── value-objects/
│ └── repositories/ # Interfaces only
├── application/ # Use Cases
│ ├── commands/
│ ├── queries/
│ └── services/
├── infrastructure/ # External system integration
│ ├── database/
│ ├── api/
│ └── repositories/ # Implementations
└── presentation/ # UI, Controllers
├── api/
└── web/
Deliver a decisive, complete blueprint:
- [Pattern Name]: file:line reference
- Similar features: [list]
- Key abstractions: [list]
결정된 아키텍처에 대해 반드시 아래 3가지를 점검:
아키텍처를 뒤집는 것이 목적이 아님. 사용자가 약점을 인지한 상태에서 확정하도록 돕는 것. 사용자에게 Challenge 결과를 공유하고, "이 약점을 감수하고 진행할까요?" 확인 후 다음 단계로.
| Component | File Path | Responsibilities | Dependencies |
|---|---|---|---|
| ... | ... | ... | ... |
Files to Create:
path/to/new/file.py
- Purpose: ...
- Key functions: ...
Files to Modify:
path/to/existing/file.py:123
- Change: ...
- Reason: ...
[Entry Point] → [Service] → [Repository] → [Database]
Phase 1: Foundation → Phase 2: Core → Phase 3: Integration
블루프린트(Component Design + Implementation Map + Build Sequence)가 사용자에게 전달되고 승인되면 완료.
Design feels too abstract: Start from codebase analysis (Phase 1). Ground design in existing patterns before introducing new ones. Multiple valid approaches with no clear winner: Apply constraints — which approach requires fewer new abstractions? Which has the smallest blast radius? User wants architecture but scope is unclear: Ask for 2-3 concrete use cases. Design for those, note extensibility points for future needs.