Create a new Flutter mobile app with up-to-date defaults for iOS and Android. Use when the user asks to create, scaffold, or initialize a new Flutter project.
Create a new Flutter mobile app named $ARGUMENTS using the following conventions and version defaults. Follow every step in order.
| Tool | Version |
|---|---|
| Flutter stable | latest (flutter upgrade to ensure) |
| Dart SDK constraint | >=3.5.0 <4.0.0 |
| iOS deployment target | 16.0 |
| Android Kotlin | 2.2.20 (via settings.gradle.kts) |
| Android Gradle Plugin | 8.11.1 |
| Java compatibility | 17 |
| Android SDK | Flutter-managed (flutter.minSdkVersion, flutter.targetSdkVersion, flutter.compileSdkVersion) |
flutter --version 2>/dev/null || echo "FLUTTER_NOT_INSTALLED"
If the output above shows FLUTTER_NOT_INSTALLED, stop and tell the user to install Flutter first (https://docs.flutter.dev/get-started/install).
Ask the user where to create the project if not specified. Default to the current working directory.
Run:
flutter create --platforms=ios,android <project_name>
Do NOT include web, macOS, linux, or windows platforms unless explicitly requested.
Flutter 3.38+ generates lib/main.dart using Dart's experimental "dot-shorthands" syntax (e.g., .fromSeed(...) instead of ColorScheme.fromSeed(...), .center instead of MainAxisAlignment.center). This syntax requires an experimental flag and won't compile by default.
Read lib/main.dart and replace all dot-shorthand usages with their fully-qualified forms:
.fromSeed( → ColorScheme.fromSeed(mainAxisAlignment: .center → mainAxisAlignment: MainAxisAlignment.center.shorthand patterns where the type is omittedAlso scan test/widget_test.dart for the same issue and fix if needed.
In ios/Runner.xcodeproj/project.pbxproj, use the Edit tool to update all occurrences of IPHONEOS_DEPLOYMENT_TARGET to 16.0.
Note: The new Flutter template does NOT generate a Podfile by default (uses Swift Package Manager). Do not create one unless a CocoaPods dependency requires it.
Replace the generated pubspec.yaml using the template at
templates/pubspec.yaml. Substitute <project_name>
and <short description> with actual values.
sdk: '>=3.5.0 <4.0.0'cupertino_icons, flutter_lints, flutter_testuses-material-design: trueThe new Flutter template uses .gradle.kts files. Check android/settings.gradle.kts for the Kotlin version. If it differs from 2.2.20, update it. The android/app/build.gradle.kts should use Flutter-managed SDK versions — do NOT hardcode minSdk, targetSdk, or compileSdk.
Create a CLAUDE.md in the project root using the template at
templates/CLAUDE.md.
git init
git add .
git commit -m "Initial Flutter project setup for <project_name>
Blank Flutter app targeting iOS and Android only.
Configuration:
- iOS deployment target: 16.0
- Android: Kotlin 2.2.20, Gradle 8.11.1, Flutter-managed SDK versions
- Dart SDK: >=3.5.0 <4.0.0
- flutter_lints for static analysis
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>"
Report back:
cd <project_name> && flutter run -d iosflutter create fails, verify Flutter is installed (flutter doctor).gradle instead of .gradle.kts, the Flutter version may be outdated — advise flutter upgradenpx skills add frankenstein-ai/create-flutter-app下载完整 Skill 目录,包含 SKILL.md 及所有相关文件
Search for places (restaurants, cafes, etc.) via Google Places API proxy on localhost.
Interact with GitHub using the `gh` CLI. Use `gh issue`, `gh pr`, `gh run`, and `gh api` for issues, PRs, CI runs, and advanced queries.
Create or update AgentSkills. Use when designing, structuring, or packaging skills with scripts, references, and assets.
Start voice calls via the OpenClaw voice-call plugin.
Notion API for creating and managing pages, databases, and blocks.
Gemini CLI for one-shot Q&A, summaries, and generation.
Category:developer