Focused Agent Skills for complete Flutter and Dart app delivery.
89%
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
Low
Low-risk findings worth noting
Inspect which installed player/recorder/call SDK already owns audio-session activation, focus, ducking, and routing. Avoid a second independent handler that fights the SDK or changes the whole application's audio policy. Coordinate multiple media plugins through the existing owner.
Track explicit user playback intent separately from playing/interrupted state. After an interruption, resume only when current user intent, platform recommendation/permission, and successful activation allow it. A user Pause during a call remains a pause after the call. Permanent loss, app stop, and denied activation must not turn into unconditional auto-resume.
Handle route changes such as unplugged headphones, Bluetooth loss, or a selected device disappearing according to the product's privacy and playback expectations. Distinguish microphone input selection from speaker output and screen/system audio; support varies by SDK/backend. Do not unexpectedly start private audio on a loudspeaker or restart recording to recover an output route.
Use APIs available to the resolved Flutter plugin, native SDK, deployment target, and running OS. Apple audio interruption/lifecycle APIs evolve; a new native notification is not automatically exposed by an older Flutter package. Android focus and background eligibility likewise depend on target SDK and service state. Read the appropriate current contract rather than applying one OS version's recipe universally. Pair with background execution for required media continuation; enabling unrelated background modes does not establish support.
Use deterministic event sequences for user pause versus transient loss, permanent loss, repeated interruptions, failed activation, and route changes. Verify actual native behavior separately on affected targets and relevant audio hardware.
.tessl-plugin
skills
dart-concurrency
dart-language
flutter-accessibility
flutter-ai-integration
flutter-animation
flutter-app-workflow
flutter-architecture
flutter-authentication
flutter-background-execution
flutter-build-release
flutter-ci-cd
flutter-code-review
flutter-dependency-upgrades
flutter-device-testing
flutter-figma-workflow
flutter-in-app-purchases
flutter-localization
references
flutter-location-maps
flutter-media
flutter-networking
flutter-notifications
flutter-observability
flutter-openapi-client
flutter-package-development
flutter-payments-checkout
flutter-performance
flutter-persistence
flutter-platform-integration
flutter-product-analytics
flutter-responsive-layout
flutter-runtime-debugging
flutter-security
flutter-state-management
flutter-testing
flutter-text-rendering
references
flutter-ui-design
flutter-ui-patterns
flutter-visual-effects