About flowr-usage
flowr-usage is a development skill for Dart and Flutter packages using FlowR. It routes work to the relevant instructions and references, then specifies script and validation practices.
Key features
- 01Resolve core or Flutter package route
- 02Load task-specific FlowR references
- 03Run bundled scripts with uv
- 04Follow formatting and test checks
Use cases
- 01Identify FlowR guidance for a package
- 02Find rules for a specific FlowR concern
- 03Validate changes to Dart or Flutter code
Install
Copy the command and run it in a terminal.
$
npx skills add https:/ / github.com/ hu-wentao/ flowr --skill flowr-usageAfter installing, type/flowr-usagein Claude Code to confirm it loaded.
Bundled files
References and scripts installed along with SKILL.md.
references/bloc-concurrency.mdcore.mdflowr-dart-install.mdflowr-disposal.mdflowr-install.mdflowr-logging.mdflowr-run-catching.mdflowr-slowly.mdflowr-update.mdflutter-error-boundaries.mdflutter.mdfr-mvvm-env-install.mdfr-mvvm-env.mdfr-mvvm-locale-install.mdfr-mvvm-locale-slang.mdfr-mvvm-locale.mdfr-mvvm-theme-advance.mdfr-mvvm-theme-install.mdfr-mvvm-theme.mdfr-mvvm-user-install.mdfr-mvvm-user.mdfr-provider-di.mdfr-union.mdfr-vm-communication.mdfreezed-install.mdslang-install.mdscripts/resolve.pyscripts/tests/test_resolve.pyDetails
From the project READMEFlowR Usage
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.
Comments
Markdown supported