-
Notifications
You must be signed in to change notification settings - Fork 0
Agents
Specialized agents invoked by skills or manually.
Implements the data layer for KMP features.
Invoked by: creating-kmp-feature skill (Phase 3)
Generates:
- Domain models with @Serializable
- Ktor Resources (type-safe API routes)
- RemoteDataSource (interface + implementation)
- Repository (interface + implementation)
- Either error handling
Validates:
- Build passes: ./gradlew :feature:productcatalog:assembleAndroidMain
- Ktlint formatting applied
Implements the UI layer for KMP features.
Invoked by: creating-kmp-feature skill (Phase 3)
Generates:
- UiModel (presentation models)
- ViewModel with 4-state pattern
- Composable Screens with X-components
- Navigation with type-safe routes
- setState { } for state updates
Validates:
- Build passes
- All 4 UI states handled
- X-components used (no Material3)
- setState { } used (no direct assignment)
Completes the 4 integration points and generates living specification.
Invoked by: creating-kmp-feature skill (Phase 3, after data + ui)
Completes 4 Integration Points:
- settings.gradle.kts - Include module
- composeApp/build.gradle.kts - Add dependency
- initKoin.kt - Register DI module
- BaseAppNavHost.kt - Wire navigation
Generates Living Specification:
- .claude/docs/productcatalog/spec/productcatalog.md
Validates:
- Full build passes: ./gradlew assembleDebug
- All integration points complete
- Spec generated successfully
Coordinates test generation across all layers.
Manual Invocation: > Use test-orchestrator agent to generate complete test suite for the login feature
What it does:
- Analyzes feature implementation
- Extracts models, DataSource, Repository, ViewModel, Screens
- Spawns 6 specialized test agents in parallel
- Ensures test consistency
Spawns: test-fixtures, test-datasource, test-repository, test-viewmodel, test-ui, test-integration
Generates test fixtures for domain models.
Generates DataSource tests using MockEngine.
Generates Repository tests using Mokkery.
Generates ViewModel tests using Turbine for Flow testing.
Generates Compose UI tests.
Generates E2E integration tests (MockEngine → ViewModel).
Reviews feature implementations against architecture rules.
Manual Invocation: > Use code-reviewer agent to review the login feature
What it validates:
-
10 Critical Rules:
- Interface + Impl pairs for DataSource/Repository
- Either for all fallible operations
- setState { } for state updates (never direct assignment)
- 4-state UI: Uninitialized/Loading/Success/Failed
- X-components only (no Material3)
- ImmutableList for collections
- Callback parameters for navigation
- Lowercase packages (no hyphens/underscores)
- @Serializable on all models
- Type-safe navigation routes
-
4 Integration Points:
- settings.gradle.kts includes module
- composeApp/build.gradle.kts has dependency
- initKoin.kt registers DI module
- BaseAppNavHost.kt wires navigation