Skip to content
Development
Skill

/architecture-builder

Use to produce the technical architecture doc and engineering principles for a mobile app. Used primarily by the CTO agent. Triggers on "design the architecture", "pick the stack", or as part of /app-plan.

From plugin
app-dev-team
432 skills30 agents27 commands2 hooks
Install
$ npx -y skills add vmobifystudio/app-dev-team --skill architecture-builder --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.
  • Slash command/architecture-builder

Context preview

The summary Claude sees to decide when to auto-load this skill.

Use to produce the technical architecture doc and engineering principles for a mobile app. Used primarily by the CTO agent. Triggers on "design the architecture", "pick the stack", or as part of /app-plan.

SKILL.md

architecture-builder.SKILL.md
name: architecture-builder
description: Use to produce the technical architecture doc and engineering principles for a mobile app. Used primarily by the CTO agent. Triggers on "design the architecture", "pick the stack", or as part of /app-plan.

Architecture builder

Produce `docs/20-architecture.md` and `docs/21-engineering-principles.md` from `docs/00-vision.md` + `docs/10-prd.md`.

docs/20-architecture.md sections

1. **Platform decision** — iOS / Android / both, with order if sequential. 2. **iOS stack** —

  • Swift version (latest stable)
  • Minimum iOS target — resolve `knowledge/stack-defaults.md`'s relative rule (flagship =

latest major minus one) to a **concrete number** here, and record how you resolved it

  • UI: SwiftUI by default; UIKit only if PRD demands something SwiftUI struggles with
  • State: `@Observable` + `@MainActor` on ViewModels only (Combine / `@Published` /

`ObservableObject` are forbidden — `knowledge/ios-conventions.md`)

  • Networking: URLSession + async/await, or a named lib
  • Persistence: SwiftData (content apps) or GRDB+SQLite/FTS5 (camera/media) — pick by PRD complexity
  • DI: lightweight — protocol + initializer injection
  • Testing: **Swift Testing** (`@Test`/`@Suite`) for unit and domain tests, not XCTest. **UI

automation stays XCUITest** — it is XCTest-based, has no Swift Testing equivalent, and `runtime-gate` runs it, so a blanket "never XCTest" would ban the suite the release gate expects. Name the snapshot lib. State the coverage floor for the pure-Swift domain engine package (`knowledge/stack-defaults.md`) 3. **Android stack** —

  • Kotlin version
  • minSdk / targetSdk (set based on PRD users)
  • UI: Jetpack Compose
  • Architecture: MVVM or MVI, picked once
  • Networking: Retrofit + OkHttp + Kotlinx Serialization (or named alternative)
  • Persistence: Room (or named alternative)
  • DI: Hilt (flagship) or Koin (utility tier)
  • Async: Coroutines + Flow
  • Testing: JUnit, Turbine, **MockK**, **Paparazzi** (screenshot), Compose UI test

4. **Shared concerns** — auth, analytics, crash reporting, feature flags, remote config, push. 5. **Backend interface** — sketch the APIs the apps need. If backend is in scope, name the service shape. 6. **Repository layout** —

   /
   ├── ios/                # Xcode project / SwiftPM workspace
   ├── android/            # Gradle multi-module
   ├── backend/            # if in scope
   ├── docs/               # all team docs
   └── specs/              # ticket-level specs if any

7. **CI / release** — branch model, build pipeline, signing, distribution channel (TestFlight, Play internal track). 8. **Non-functional budgets** — cold start, memory, payload size, accessibility floor (WCAG 2.1 AA). 9. **Risks** — top 3 with mitigations.

docs/21-engineering-principles.md

A short rulebook. Examples to include or adapt:

  • Every PR ships with tests
  • No force-unwraps (iOS) / no `!!` (Android)
  • Every screen has accessibility labels and a snapshot test
  • No new third-party dep over 200KB without written exception
  • Strings are localized from day one
  • Logs go through the named logger; no `print` / `Log.d` in shipped code
  • Public API for a module is documented in a `README.md` at the module root

Quality bar

Every decision in §2 and §3 has one paragraph of "why" tied to the PRD. If you can't write the "why", reconsider the choice.

Read more
Ships withapp-dev-team

Describe your app idea in one line. Get a shipped iOS & Android app. AI App Studio is a team of 30 AI specialists — a CEO, product manager, designers, iOS/Android engineers, a code reviewer, QA, and a release manager — that works like a real software studio.

Get the whole plugin

Other skills on app-dev-team.