AgentStack
Browse Sign in
Browse Why AgentStack Sell Docs
Sign in
MCP verified MIT Self-run

AppBootstrapAI

mcp-kelvinkosbab-appbootstrapai · by kelvinkosbab

AI agent steering for Apple (Swift 6.4 / SwiftUI / visionOS / Foundation Models) and Android (Kotlin / Compose / Gradle / Gemini Nano). Rules + skills + MCP for code, a11y, localization, TestFlight/Play. One install.sh detects your stack, installs the right per-platform rules, and keeps them current for Claude/Copilot/Cursor/Gemini/Codex/Kiro.

No reviews yet
0 installs
34 views
0.0% view→install

Install

$ agentstack add mcp-kelvinkosbab-appbootstrapai

✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.

Security review

✓ Passed

No issues found. Passed automated security review. · v0.1.0 How review works →

  • Prompt-injection patterns
  • Secret / credential exfiltration
  • Dangerous shell & filesystem operations
  • Untrusted network calls
  • Known-malicious package signatures

What it can access

  • Network access Used
  • Filesystem access No
  • Shell / process execution No
  • Environment & secrets No
  • Dynamic code execution No

From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.

View the full security report →

Verified badge

Passed review? Show it. Paste this badge into your README, it links to the public security report.

AgentStack Verified badge Links to your public security report.
[![AgentStack Verified](https://agentstack.voostack.com/badges/verified.svg)](https://agentstack.voostack.com/security/report/mcp-kelvinkosbab-appbootstrapai)

Reliability & compatibility

Security review passed
0 installs to date
no reviews yet
3mo ago

Declared compatibility

Claude CodeClaude DesktopCursorWindsurf

Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.

Preview Execution monitoring

We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.

How agent discovery & health will work →
Are you the author of AppBootstrapAI? Claim this listing to set pricing, connect Stripe payouts, and keep 70% of every sale.
Sign up to claim

About

AppBootstrapAI

A drop-in bundle of AI agent steering — rules, skills (Claude), and MCP recipes — for bootstrapping new app projects. Covers Apple platforms (iOS, macOS, tvOS, watchOS, visionOS) and Android in one bundle, so single-platform and mixed-stack teams can share one source of truth. Works with Claude Code, GitHub Copilot, Cursor, Gemini CLI, Codex CLI, and Amazon Kiro out of the box (./install.sh --agents writes the right files per agent).

One install.sh bootstraps modern review, testing, style, accessibility, and localization guidance into any new or existing app repo — and keeps it up to date with --upgrade. Day-one consistency without writing the rules yourself; day-N reproducibility without drifting from upstream.

Claude Code is the default target, but the installer can write for other agents too. Pass --agents copilot,cursor,gemini,codex,kiro (or all) and install.sh drops the right file shape per agent: .github/copilot-instructions.md, .cursor/rules/*.mdc, GEMINI.md, AGENTS.md, .kiro/steering/*.md. Skills stay Claude-only. For Cline / Goose / Roo / Windsurf etc., layer a sync tool — see [Using with non-Claude AI agents](#using-with-non-claude-ai-agents) below.

Get started in one line: ./install.sh setup runs a guided flow that detects whether you're creating, adopting, or updating — and walks you through the rest. Prefer flags? See [Getting started](#getting-started).

Contents

[What you get](#what-you-get) · [Getting started](#getting-started) · [Quick start](#quick-start) · [How it fires](#how-it-fires) · [Using AI to install](#using-ai-to-install) · [Upgrading](#upgrading-an-existing-install) · [Removing](#removing-the-install) · [Saving AI tokens](#saving-ai-tokens) · [Non-Claude agents](#using-with-non-claude-ai-agents) · [Repo layout](#repo-layout) · [Extending](#extending-for-your-project) · [Roadmap](#roadmap)

What you get

The 30-second view. Expand any section below for the full rule-by-rule detail, or run ./install.sh --list --features all for the always-current catalog.

| Area | What's inside | |------|---------------| | Apple rules | Swift 6 concurrency · SwiftUI MVVM · accessibility · testing · DocC · localization · SPM · linting · logging · Foundation Models · visionOS · TestFlight · Objective-C | | Android rules | Kotlin/Compose/MVVM/Hilt · coroutines · accessibility · testing · KDoc · localization · Gradle · linting · logging · Play beta | | Skills (Claude) | 9 Apple + 5 Android on-demand deep-review agents | | Agents | One rule source → Claude Code, Copilot, Cursor, Gemini, Codex, Kiro | | MCP recipes | XcodeBuildMCP · Xcode-native · android-mcp-server · Firebase · Sentry | | Lifecycle | guided setup · install · upgrade (3-way diff — never clobbers your edits) · uninstall |

Apple — 14 rules + 9 skills (click to expand)

  • apple-swift6-strict-concurrency.md — Swift 6.4 strict concurrency (Xcode 27 toolchain; language mode .v6), enforced on every .swift file.
  • apple-accessibility-best-practices.md — VoiceOver, Dynamic Type, Reduce Motion for SwiftUI (including streaming AI text).
  • apple-foundation-models.md — Apple Foundation Models patterns: session ownership, two-level availability gating, streaming placeholder-then-mutate, Task.isCancelled discipline, protocol + mock + simulator testability.
  • apple-swiftui-mvvm.md — SwiftUI MVVM conventions: when to extract a view model, @State vs @Bindable ownership, dependency plumbing, what stays on the View vs the view model, splitting large VMs across extension files.
  • apple-objc-best-practices.md — Modern Objective-C for legacy / mixed-language codebases: ARC discipline, nullability, lightweight generics, instancetype, designated initializers, modern literals/blocks, Swift bridging-header conventions.
  • apple-objc-accessibility-best-practices.md — UIKit accessibility in Objective-C: accessibilityLabel / accessibilityHint / accessibilityTraits discipline, accessibilityIdentifier vs accessibilityLabel, Dynamic Type via preferredFontForTextStyle:, UIAccessibilityIsReduceMotionEnabled(), VoiceOver announcements (UIAccessibilityPostNotification), modal-focus management (accessibilityViewIsModal), custom-action support.
  • apple-testing-strategy.md — what to test (and what not), Given/When/Then naming, determinism (inject clocks/UUIDs/network), Swift Testing vs XCTest split, XCUITest discipline, CI coverage gates with sensible exclusions.
  • apple-documentation-strategy.md — what to document (and what not), DocC discipline (summary line, - Parameter/- Returns/- Throws, double-backtick symbol linking, ## Topics organization), deprecation discipline with mandatory migration paths, when to write a DocC Article vs. a doc comment.
  • apple-localization-best-practices.md — String Catalogs (.xcstrings) as the modern format, type-safe Strings enum facade pattern, LocalizedStringResource over NSLocalizedString, plurals, locale-aware .formatted() for numbers/dates/currency, RTL via leading/trailing modifiers, translator-context comments.
  • apple-spm-package-conventions.mdPackage.swift authoring: swift-tools-version discipline, mandatory platforms:, flat per-module folder layout ({Module}/Sources/ + {Module}/Tests/, matching KozBon and BasicSwiftUtilities), makeTargets() helper for many similar modules with hasTests / hasResources / plugins toggles, resources (.process vs .copy), build plugins (SwiftLintPlugins, swift-docc-plugin), Package.resolved discipline (commit for apps, gitignore for libraries), local-path overrides for sibling-package development, modern features (InternalImportsByDefault, .swiftLanguageMode(.v6), public import), dependency hygiene (from: vs exact:).
  • apple-linting-strategy.md (linting) — SwiftLint as primary linter + a single formatter (SwiftFormat or Apple's swift-format, not both): .swiftlint.yml structure, the high-value opt_in_rules (force_unwrapping, empty_count, …), analyzer rules, scoped // swiftlint:disable:next hygiene, --strict in CI, build-phase vs SPM-plugin vs CI placement, incremental adoption on legacy code, version pinning, plus a triage decision-order.
  • apple-logging-strategy.md (logging)Logger / OSLog over print / NSLog, subsystem/category conventions (one Logger per category), privacy markers (.public / .private / .private(mask: .hash) — the part people get wrong), log levels (debug/info/notice/error/fault) and their persistence behavior, lazy @autoclosure interpolation, signposts for perf, what never to log (secrets/PII/bodies), retrieving logs via Console / log CLI / OSLogStore. Complements the swift-logging-pro skill.
  • apple-visionos-best-practices.md (spatial) — visionOS: scene types (Window / Volume / ImmersiveSpace), immersion styles, spatial gestures + hover affordances, head-mounted-display accessibility (Reduce Motion as vestibular safety), RealityKit / ECS conventions, 90fps performance budgets, USDZ pipeline.
  • apple-testflight-deployment.md (deployment) — shipping to TestFlight: CFBundleVersion monotonicity, App Store Connect API key (.p8) auth, xcodebuild archive-exportArchivealtool flow, ExportOptions.plist gotchas, manual signing for CI, internal vs external tester groups, dSYM upload, ranked gotchas.
  • swift-concurrency-pro skill — reviews async/await, actors, structured concurrency.
  • swift-testing-pro skill — writes and migrates tests to Swift Testing.
  • swiftui-pro skill — reviews SwiftUI for modern APIs and a11y compliance.
  • coredata-swift6-pro skill — Core Data under Swift 6 strict concurrency, viewContext/@MainActor, SPM .xcdatamodeld caveats.
  • swiftdata-pro skill — SwiftData review: core model/context rules, safe #Predicate usage, CloudKit constraints, iOS 18+ indexing, iOS 26+ class inheritance.
  • swift-docc-pro skill — DocC comment review: parameter/return/throws tags, double-backtick symbol linking, Topics organization.
  • swift-error-handling-pro skill — typed throws, Result vs throws, LocalizedError, Sendable errors, async propagation.
  • swift-logging-pro skillos.Logger review: subsystem/category conventions, privacy markers, log-level semantics.
  • swift-package-pro skill — SPM library design: public API surface, InternalImportsByDefault, resources, versioning, dependency hygiene.

Android — 12 rules + 5 skills (click to expand)

  • android-project-rules.md — Kotlin, Jetpack Compose, MVVM, Hilt, StateFlow, Retrofit/Moshi, ktlint.
  • android-coroutines-best-practices.md — structured concurrency, scope discipline (viewModelScope/lifecycleScope, no GlobalScope), dispatcher choice, Flow/StateFlow/SharedFlow exposure, cancellation safety.
  • android-compose-best-practices.md — state hoisting, side effects (LaunchedEffect/DisposableEffect/SideEffect), Modifier ordering, recomposition stability (@Stable/@Immutable), lifecycle-aware collectAsStateWithLifecycle(), LazyColumn keys.
  • android-accessibility-best-practices.md — TalkBack semantics, 48dp touch targets, dynamic text, WCAG AA contrast, reduce-motion.
  • android-testing-strategy.md — test pyramid, source-set discipline (src/test vs src/androidTest), runTest + StandardTestDispatcher patterns, Turbine for Flow, Compose UI tests via semantics (not visible text), Hilt test modules, MockK conventions, JaCoCo coverage gates with generated-code exclusions.
  • android-documentation-strategy.md — KDoc syntax (@param / @return / @throws / @property / @sample / @see), Composable docs (state hoisting, semantics, skippable vs. restartable), Hilt module docs, suspend / cancellation behavior, deprecation with ReplaceWith, Dokka conventions and external links.
  • android-localization-best-practices.mdstrings.xml discipline, stringResource / pluralStringResource in Compose, positional format args (%1$s not %s), ` with getQuantityString, locale-aware NumberFormat / DateTimeFormatter, RTL with start/end modifiers and android:supportsRtl="true"`, translator-context comment blocks.
  • android-gradle-conventions.md — Kotlin DSL only, version catalogs (gradle/libs.versions.toml) as single source of truth, AGP/Kotlin/Compose-compiler co-versioning, jvmToolchain, api vs implementation, multi-module graph patterns (:app + :feature:* + :data:* + :core:*), library publishing with consumer-rules.pro, KSP over kapt. Now includes an inline-strings → catalog migration walkthrough for legacy projects.
  • android-linting-strategy.md (linting) — three linters, three jobs: ktlint (.editorconfig, formatting), detekt (detekt.yml tuning, buildUponDefaultConfig, type resolution, baselines), and Android Lint (lint {}, lint.xml, warningsAsErrors, baselines). @Suppress / @SuppressLint hygiene, CI placement (ktlintCheck detekt lintDebug), version pinning, plus a triage decision-order.
  • android-logging-strategy.md (logging) — Timber over android.util.Log (plant a tree in Application.onCreate), log levels (V/D/I/W/E/WTF) and passing the Throwable, stripping debug logs from release (DebugTree-in-debug-only + R8 assumenosideeffects), no PII/secrets, crash-reporter integration (Crashlytics/Sentry breadcrumbs + non-fatals via a CrashReportingTree), Logcat hygiene.
  • android-ai-best-practices.md (ai) — in-app AI models on Android, the counterpart to the Apple Foundation Models rule: on-device Gemini Nano via ML Kit GenAI / AICore vs cloud Gemini via Firebase AI Logic, never ship a raw model API key (App Check / backend proxy), two-level availability gating (feature download + user preference), streaming into Compose with placeholder-then-mutate, structural cancellation, interface + fake testability, consent + Data-safety implications.
  • android-play-beta-deployment.md (deployment) — shipping to Play beta tracks: versionCode monotonicity, Play App Signing (upload key vs app signing key), AAB-not-APK, service-account JSON for CI, internal/closed/open tracks, Triple-T / fastlane upload, mapping.txt upload, ranked gotchas.
  • android-compose-pro skill — deep Compose review: recomposition stability + skippability (incl. strong-skipping-mode awareness), side-effect audit (LaunchedEffect keys, rememberUpdatedState, DisposableEffect teardown), lazy-list performance (keys, contentType, derivedStateOf for scroll), state modeling and hoisting.
  • android-coroutines-pro skill — deep coroutines/Flow review: scope-to-lifecycle mapping, cooperative cancellation (CancellationException discipline, runCatching traps), launch vs async exception propagation, supervisor boundaries, stateIn/shareIn configuration, callbackFlow teardown, coroutine testing (virtual time, Turbine).
  • android-gradle-architecture-pro skill — reviews multi-module Android builds against the Now in Android convention-plugin pattern: build-logic/convention/ factoring, version-catalog depth, AGP co-versioning, KSP-over-kapt migration.
  • xml-to-compose-migration-pro skill — reviews and assists XML/Fragment → Compose migration: incremental interop via ComposeView / AndroidView, layout translation (LinearLayout/ConstraintLayout/FrameLayout → Modifier), RecyclerView → LazyColumn with stable keys, Fragment → Composable, Navigation Component → Navigation-Compose, ViewModel bridging, themes/styles → MaterialTheme.
  • r8-shrink-pro skill — reviews R8 / ProGuard configuration: -keep rule discipline, consumer-rules.pro contract for libraries, common reflection-library rules (Moshi, Room, Retrofit, Hilt, Glide, kotlinx-serialization), mapping-file workflow, debugging release-build crashes.

Cross-platform — 2 rules (click to expand)

  • concise-comments-and-commits.md (core) — fires on all Swift/Kotlin/ObjC source: in-code comments default to none (write only what code can't express — why, traps, ticket refs; never narration, diff commentary, or commented-out code), and commit messages stay short (imperative ≤72-char subject; body only when the why isn't in the diff — never file-by-file inventories or process reports). Aimed squarely at AI-assistant verbosity.
  • project-documentation.md — README structure, Keep a Changelog format, CONTRIBUTING.md essentials, ADR conventions (docs/adr/####-title.md, immutable once accepted), inline-comment philosophy (why not what), and link-rot defenses (pinned versions, permalinked source). Scoped to README.md / CHANGELOG.md / CONTRIBUTING.md / docs/**/*.md.

Baseline & bundle files — settings, .gitignore, the full install.sh flag reference, templates (click to expand)

  • settings.json — safe defaults for xcodebuild, swift, swiftlint, ./gradlew, gradle, ktlint, adb, git, gh, plus Apple/Android docs domains for WebFetch.
  • .gitignore — recommended entries for Xcode, SPM, CocoaPods, Carthage, fastlane, plus Gradle/Android Studio/Kotlin.
  • install.sh — one-command bootstrap into any target repo.
  • Commands (verb form): install [TARGET] (default — verb optional), recommend [TARGET] (analyze a dir → suggested command, --json for agents), upgrade TARGET, uninstall TARGET, list, list-mcps, setup (guided), help. Each has a legacy --flag alias (--upgrade, --uninstall, --list, --list-mcps, -i/--interactive, -h/--help) — verbs and flags are interchangeable, so existing scripts keep working. A directory whose name collides with a verb can be targeted via an explicit path (./upgrade) or the --flag form.

Flags:

  • -i / --interactive — guided, prompt-driven setup. Detects create vs. adopt

Source & license

This open-source MCP server is cataloged on AgentStack and links to its original source — we do not rehost the code.

Install and usage instructions live in the source repository linked above.

Reviews

No reviews yet, be the first.

Versions

  • v0.1.0 Imported from the upstream source.