AGENTS.MDFlutter 3 & Riverpod / Dart AGENTS.md Generator | Free & Offline
Production-grade architectural rulebook for Flutter 3 & Riverpod / Dart. Engineered to eliminate LLM hallucinations, enforce strict deterministic conventions, and prevent architectural drift across Cursor IDE, Claude Code CLI, and autonomous multi-agent pipelines.
AGENTS.mdFailure Patterns Prevented for Flutter 3 & Riverpod / Dart
Flutter 3 and Dart 3 introduce records, pattern matching, sealed classes, and Riverpod 2 code generation (@riverpod). AI models routinely emit obsolete setState() spaghetti, mutable widget state, un-const constructors, and legacy Riverpod syntax.
- Invokes deprecated or removed APIs from older model training weights
- Generates conflicting configuration files and invalid imports
- Silently drops type-safety, boundaries, or transaction isolation
Code Standards: Anti-Pattern vs Verified Implementation
// Discouraged: Mutable setState with force-unwrap and missing const
class BadProfile extends StatefulWidget {
@override
_BadProfileState createState() => _BadProfileState();
}
class _BadProfileState extends State<BadProfile> {
var user;
void load() async {
user = await fetchUser();
setState(() {});
}
@override
Widget build(BuildContext context) {
return Container(child: Text(user!.name)); // Runtime crash if null!
}
}import 'package:flutter/material.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
@immutable
sealed class ViewState<T> {
const ViewState();
}
class Loading<T> extends ViewState<T> { const Loading(); }
class Success<T> extends ViewState<T> { final T data; const Success(this.data); }
class Failure<T> extends ViewState<T> { final String message; const Failure(this.message); }
class ProfileView extends ConsumerWidget {
const ProfileView({super.key});
@override
Widget build(BuildContext context, WidgetRef ref) {
final state = ref.watch(profileProvider);
return Scaffold(
appBar: AppBar(title: const Text('Profile')),
body: switch (state) {
Loading() => const Center(child: CircularProgressIndicator.adaptive()),
Success(:final data) => Center(child: Text('Welcome, ${data.name}')),
Failure(:final message) => Center(child: Text('Error: $message')),
},
);
}
}How to Install Flutter 3 & Riverpod / Dart AGENTS.md Multi-Agent Rules via Terminal
Step 1: Open Project Directory & Verify Target Placement
Open your terminal and navigate to your project root folder where the AGENTS.md file will reside. Ensure the file is placed at the exact path below relative to your project root so the AI engine automatically loads it:
Step 2: Fetch Rule File via Terminal Command
Run curl, PowerShell, or wget to stream the rule directly from the DevScratchpad raw API endpoint and write it to AGENTS.md:
Terminal One-Liner Install
Run directly in your project root to stream and write this rule file with one command.
curl -fsSL "https://www.devscratchpad.tech/api/raw/agents-md/flutter-dart" -o "AGENTS.md"Step 3: Verify and Activate with AI Agent
Launch your AI coding assistant (Antigravity, Codex & Windsurf). The assistant will automatically discover AGENTS.md in your repository and apply the architectural guardrails, type constraints, and verification protocols during code generation.
AGENTS.md Multi-Agent System Protocol Directory
Inspect the complete specification manual, glob patterns, directory rules, and all available presets in our central directory.
Technical FAQ: Flutter 3 & Riverpod / Dart AI Rulebooks
Does this rulebook support Riverpod 2 and BLoC?
Yes, it provides architecture rules for both modern code-generated Riverpod and idiomatic BLoC/Cubit event streams.
Why does it require const constructors?
In Flutter, const widgets short-circuit the rebuild tree, providing substantial UI frame-rate gains especially on mobile devices.