Before FlowR work, resolve the target package:
uv run --script .agents/skills/flowr-usage/scripts/resolve.py --task auto
Read the resolved instructions once per instructions_id.
Run every bundled Python entrypoint with uv run --script <path>. Add or
update its PEP 723 dependencies with uv add --script <path> <dependency>;
never invoke a bundled script with python, python3, or uv run python.
Route Selection
autois the normal entry. It reads the nearestpubspec.yaml.- A package that directly depends only on
flowr_dartand has no Flutter SDK dependency resolves tocore. It loads no Flutter orflowrmaterial. - A package that directly depends on
flowrand declares a Flutter SDK dependency resolves toflutter. It loads core rules first, then Flutter rules and the optional project profile. flowrwithout a Flutter SDK dependency is invalid. Fix the target package; do not silently downgrade it to the core route.--task coreand--task flutterare explicit routes. The resolver rejectsflutterfor a Dart-only package.
Common Rules
- Follow the repository
AGENTS.mdand preserve its existing architecture. - Read core instructions for every resolved route. Flutter instructions extend rather than replace the core rules.
- Import only public package entry points. Do not import
flowr/src/...orflowr_dart/src/...from application code. - Keep package API usage here. File layout, component ownership, and contract decisions remain the responsibility of the calling architecture skill.
References
Load only the reference relevant to the task:
references/core.md: FlowR/FlowB, logging, state, streams, scheduling, and disposal rules.references/flutter.md:FrViewModel,FrBlocViewModel,FrProvider,FrView, listeners, and Flutter ownership rules.references/flowr-dart-install.md: addflowr_dartto a pure Dart package.references/flowr-install.md: addflowrand first Flutter provider/view.references/flowr-logging.md,flowr-run-catching.md,flowr-slowly.md,flowr-disposal.md,flowr-update.md: the named core concern.references/flutter-error-boundaries.md: install complementaryFlutterError,PlatformDispatcher, and zone boundaries at a Flutter app entry point while retaining locallogErecovery logging.references/bloc-concurrency.md: evaluate and configure per-handler event concurrency for asynchronousFlowBorFrBlocViewModelhandlers. Load it when overlapping events could race, duplicate work, emit stale results, or require ordered processing; do not addbloc_concurrencyby default.references/freezed-install.md: add immutable Freezed state generation.references/slang-install.md: install and generate type-safe slang translations; the project convention usesS..references/fr-mvvm-locale-slang.md: integrate slang translation catalogs withfr_mvvm_localeas the application locale owner.references/fr-provider-di.md,fr-vm-communication.md,fr-union.md: Flutter advanced provider, VM coordination, andFrUnionuse.references/fr-mvvm-*.md: the corresponding optional Flutter extension.
Validation
- Format changed Dart files with the package's configured Dart/Flutter tool.
- Run focused tests for the target package.
- Run the repository analyzer command when shared APIs or package surfaces change.