.cursor/skills/deprecated-api-detection/SKILL.md
Detects and flags deprecated Flutter/Dart APIs, suggests modern equivalents. Use when reviewing code, refactoring, or ensuring code uses modern APIs.
npx skillsauth add avra-cadavra/avrai deprecated-api-detectionInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
✅ Zero deprecated API warnings - always use modern Flutter/Dart APIs ✅ Check Flutter/Dart migration guides for modern equivalents
❌ Deprecated:
RaisedButton(
onPressed: () {},
child: Text('Click'),
)
✅ Modern:
ElevatedButton(
onPressed: () {},
child: Text('Click'),
)
❌ Deprecated:
tester.binding.window.physicalSize = Size(800, 600);
✅ Modern:
tester.view.physicalSize = Size(800, 600);
❌ Deprecated:
Theme.of(context).textTheme.headline
✅ Modern:
Theme.of(context).textTheme.headlineMedium
Most IDEs highlight deprecated APIs automatically:
Run static analysis to detect deprecations:
flutter analyze
dart analyze
Check Flutter/Dart migration guides for common deprecations:
Use Material 3 widgets when available:
// ✅ Modern Material 3
Card(
elevation: 0, // Use shadowColor instead
shape: RoundedRectangleBorder(...),
)
Use null-safe APIs:
// ✅ Modern null-safe
String? getValue() => _value;
final result = getValue() ?? 'default';
Use async/await instead of deprecated patterns:
// ✅ Modern async/await
Future<String> fetchData() async {
return await repository.getData();
}
When encountering deprecated API:
RaisedButton (use ElevatedButton)FlatButton (use TextButton)OutlineButton (use OutlinedButton)tester.binding.window (use tester.view)headlineMedium not headline)development
--- name: world-model-development description: Guides world model development patterns: state/action encoders, ONNX inference, feature extraction pipeline, latency budgets. Use when implementing world model components, state encoders, action encoders, feature extractors, or ONNX models. Core skill for Phases 3-6. --- # World Model Development Patterns ## Core Principle All world model components follow LeCun's autonomous machine intelligence framework. State observations flow through a percep
tools
Implements base workflow controller patterns for multi-step processes. Use when creating complex workflows that require orchestration of multiple steps with error handling and rollback.
testing
--- name: widget-test-patterns description: Guides widget test patterns: BLoC testing, user interactions, state changes, material app setup. Use when writing widget tests, testing UI components, or validating widget behavior. --- # Widget Test Patterns ## Core Pattern Widget tests verify UI behavior: user interactions, state changes, and visual display. ## Basic Widget Test Setup ```dart testWidgets('widget displays correctly', (WidgetTester tester) async { // Arrange: Create widget awa
testing
--- name: test-template-generation description: Generates test templates: unit, widget, integration, service tests following project patterns. Use when creating new tests or ensuring tests follow project standards. --- # Test Template Generation ## Available Templates Test templates are located in `test/templates/`: - `unit_test_template.dart` - `widget_test_template.dart` - `integration_test_template.dart` - `service_test_template.dart` ## Unit Test Template ```dart /// SPOTS Component Uni