Skip to content
Ali Sadeghi edited this page Jan 28, 2026 · 11 revisions

Agents

Specialized sub-agents invoked by skills or commands to handle focused tasks.

New to agents? See Getting Started for an introduction to how agents work.

Quick Reference

Agent Purpose Invoked By
data-layer-agent Data layer (models, DataSource, Repository) creating-kmp-feature
ui-layer-agent UI layer (UiModel, ViewModel, Screens) creating-kmp-feature
integration-agent 4 integration points + spec generation creating-kmp-feature
test-orchestrator Coordinates test generation /feature-test
test-fixtures Generates domain + UI fixtures test-orchestrator
test-datasource MockEngine DataSource tests test-orchestrator
test-repository Mokkery Repository tests test-orchestrator
test-viewmodel Turbine ViewModel tests test-orchestrator
test-ui Compose UI tests (ScreenRoot) test-orchestrator
test-integration E2E integration tests test-orchestrator
code-reviewer Architecture compliance review /feature-review

Feature Development Agents

data-layer-agent

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

See: data-layer-agent


ui-layer-agent

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

See: ui-layer-agent


integration-agent

Completes the 4 integration points and generates living specification.

Invoked by: creating-kmp-feature skill (Phase 3, after data + ui)

Completes 4 Integration Points:

  1. settings.gradle.kts - Include module
  2. composeApp/build.gradle.kts - Add dependency
  3. initKoin.kt - Register DI module
  4. BaseAppNavHost.kt - Wire navigation

See: integration-agent


Testing Agents

test-orchestrator

Coordinates test generation across all layers.

Invoked via: /feature-test {featurename} command

What it does:

  1. Analyzes feature implementation
  2. Extracts models, DataSource, Repository, ViewModel, Screens
  3. Spawns 6 specialized test agents in parallel
  4. Runs tests and generates coverage report

Spawns:

  • test-fixtures - Generate model fixtures
  • test-datasource - Generate DataSource tests
  • test-repository - Generate Repository tests
  • test-viewmodel - Generate ViewModel tests
  • test-ui - Generate UI tests
  • test-integration - Generate E2E tests

See: test-orchestrator | /feature-test command


Code Quality Agents

code-reviewer

Reviews feature implementations against architecture rules.

Invoked via: /feature-review {featurename} command

What it validates:

10 Critical Rules:

  1. Interface + Impl pairs for DataSource/Repository
  2. Either for all fallible operations
  3. setState { } for state updates (never direct assignment)
  4. 4-state UI: Uninitialized/Loading/Success/Failed
  5. X-components only (no Material3)
  6. ImmutableList for collections
  7. Callback parameters for navigation
  8. Lowercase packages (no hyphens/underscores)
  9. @Serializable on all models
  10. Type-safe navigation routes

4 Integration Points:

  1. settings.gradle.kts includes module
  2. composeApp/build.gradle.kts has dependency
  3. initKoin.kt registers DI module
  4. BaseAppNavHost.kt wires navigation

See: code-reviewer | /feature-review command


Back to Home | HOME

Clone this wiki locally