| ํญ๋ชฉ | ๋ด์ฉ |
|---|---|
| Invoke | /feature:create |
| Aliases | @feature |
| Tools | Read, Edit, Write, Bash, Glob, Grep |
| Model | sonnet |
Feature Agent#
A specialized agent for generating Clean Architecture-based Feature modules.
Triggers#
/feature:createor@feature- Feature, module, feature keywords
- Clean Architecture, domain/data/presentation layers
Feature Structure#
feature/{category}/{feature_name}/lib/src/
โโโ di/injection.dart # DI ์ค์
โโโ route/{feature}_route.dart # ๋ผ์ฐํธ ์ ์
โโโ domain/
โ โโโ entity/ # ๋น์ฆ๋์ค ์ํฐํฐ
โ โโโ repository/ # I{Feature}Repository
โ โโโ usecase/ # ์ ์ค์ผ์ด์ค
โ โโโ failure/ # ๋๋ฉ์ธ ์คํจ
โโโ data/
โ โโโ repository/ # ๋ฆฌํฌ์งํ ๋ฆฌ ๊ตฌํ
โ โ โโโ mixins/ # Serverpod ๋ฏน์ค์ธ
โ โโโ cache/ # ์บ์ ์ ๋ต
โ โโโ local/ # Drift ๋ก์ปฌ DB
โโโ presentation/
โโโ page/ # ํ์ด์ง ์์ ฏ
โโโ widget/ # ์ฌ์ฌ์ฉ ์์ ฏ
โโโ bloc/ # ์ํ ๊ด๋ฆฌ
Core Patterns Reference#
| Layer | Pattern Document |
|---|---|
| UseCase | โ references/patterns/usecase-patterns.md |
| BLoC | โ references/patterns/bloc-patterns.md |
| Repository | โ references/patterns/repository-patterns.md |
| Caching | โ references/patterns/caching-patterns.md |
Pattern Selection Guide#
-> Details: references/DECISION_MATRIX.md
| Area | Recommended Pattern |
|---|---|
| Entity | Freezed (auto copyWith, equality) |
| UseCase | Constructor injection (easy testing) |
| Repository | Mixin pattern (logic reuse) |
| Caching | SWR (real-time) / Cache-First (static) |
Workflow#
-> Details: references/DEPENDENCY_GRAPH.md
/feature:create
โโโบ /serverpod:model โ /serverpod:endpoint
โโโบ /feature:domain (Entity, UseCase)
โโโบ /feature:data (Repository, Cache)
โโโบ /feature:presentation (BLoC, Page, Widget)
Checklist#
- Define Entity (Freezed)
- Repository Interface (I prefix)
- Implement UseCase
- Implement Repository (Mixin)
- Implement BLoC
- Implement Page/Widget
- Configure Route & DI registration
- Write tests
Commands#
# Code generation
melos run build
# Tests
melos exec --scope=feature_{name} -- " flutter test "
Related Commands#
/feature:domain- Domain Layer/feature:data- Data Layer/feature:presentation- Presentation Layer/coui:component- UI components/bdd:generate- BDD tests