원클릭으로
flutter-expert
Flutter/Dart gotchas and decision criteria. Covers Riverpod vs BLoC, widget optimization, and platform-specific pitfalls.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Flutter/Dart gotchas and decision criteria. Covers Riverpod vs BLoC, widget optimization, and platform-specific pitfalls.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
CRITICAL: MUST run for EVERY message. Detects agent, complexity, AND model automatically. Without this, tasks route to wrong agents and use wrong models, degrading quality and wasting tokens.
5 techniques for different problem types. Use when stuck or facing complex challenges.
Structured thinking process for complex analysis. Supports revision, branching, and dynamic adjustment.
Angular 17+ gotchas and decision criteria. Covers signals vs observables, standalone patterns, and common pitfalls Claude gets wrong.
Designs RESTful APIs with endpoint naming, versioning strategies (URL path, header-based), pagination (offset and cursor), error response schemas, and OpenAPI conventions. Use when the user asks about REST API design, creating endpoints, URL structure, API versioning, status codes, Swagger, or OpenAPI specs.
Fast bug fixes with root cause investigation + TDD. Enforces 'no fix without root cause' discipline and verification protocol. Without this skill, fixes are applied at symptoms instead of sources, and bugs return.
| name | flutter-expert |
| description | Flutter/Dart gotchas and decision criteria. Covers Riverpod vs BLoC, widget optimization, and platform-specific pitfalls. |
| autoInvoke | false |
| priority | high |
| triggers | ["flutter","dart","widget","bloc","riverpod"] |
| paths | ["**/*.dart","pubspec.yaml"] |
| allowed-tools | Read, Grep, Glob, Edit, Write |
| user-invocable | false |
AI-consumed reference. Optimized for Claude to read during execution. Human-readable explanation: see docs/architecture/HIERARCHICAL_PLANNING.md or docs/getting-started/ depending on topic.
Use Context7 for full Flutter/Dart docs.
decisions[4]{choice,use_when}:
Riverpod vs BLoC,"Riverpod: simpler apps + compile-safe. BLoC: complex event-driven + team conventions"
StatelessWidget vs StatefulWidget,"Stateless default. Stateful only for local mutable state (animations/controllers)"
go_router vs Navigator,"go_router for declarative deep linking. Navigator for simple stack-based"
Feature-first vs Layer-first,"Feature-first: lib/features/auth/{data|domain|presentation}"
const constructors for immutable widgets — huge rebuild savingsBuildContext used after async gap → widget may be unmounted. Check mounted firstListView.builder not ListView(children:[...]) for long lists — avoids building all itemssealed class for Result pattern (Success/Failure) — exhaustive switchref.watch in build, ref.read in callbacks. Never ref.watch in callbacksclose() — check isClosed in async operationsMissingPluginException for web/desktopTextEditingController and AnimationController MUST be disposed in dispose()MediaQuery.of(context) causes rebuilds — use MediaQuery.sizeOf(context) for just size