flowr-usage について
flowr-usage は、FlowR を使う Dart および Flutter パッケージ向けの開発スキルです。パッケージ種別に応じた手順を選び、スクリプト実行と検証の方法を示します。
主な機能
- 01core または Flutter のルート判定
- 02タスクに応じた FlowR 資料の読み込み
- 03uv による付属スクリプトの実行
- 04フォーマットとテストの確認
活用シーン
- 01パッケージに適した FlowR 手順の確認
- 02特定の FlowR 課題に関するルールの確認
- 03Dart または Flutter コード変更の検証
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ hu-wentao/ flowr --skill flowr-usageインストール後、Claude Code で/flowr-usageを入力して読み込まれたか確認します。
同梱ファイル
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.py詳細
FlowR の使用方法
FlowR に関する作業を始める前に、対象パッケージを解決します。
uv run --script .agents/skills/flowr-usage/scripts/resolve.py --task auto
instructions_id ごとに、解決された手順を一度読み込みます。
同梱されている Python のエントリーポイントはすべて、uv run --script <path> で実行してください。依存関係を追加または更新する場合は、uv add --script <path> <dependency> を使用してください。同梱スクリプトを python、python3、uv run python で実行してはいけません。
ルートの選択
autoは通常のエントリーポイントです。最も近いpubspec.yamlを読み込みます。flowr_dartのみに直接依存し、Flutter SDK 依存関係を持たないパッケージは、coreに解決されます。Flutter またはflowrの資料は読み込みません。flowrに直接依存し、Flutter SDK 依存関係を宣言しているパッケージは、flutterに解決されます。まずコアのルールを読み込み、その後に Flutter のルールと任意のプロジェクトプロファイルを読み込みます。- Flutter SDK 依存関係のない
flowrは無効です。対象パッケージを修正してください。黙ってコアルートに切り替えてはいけません。 --task coreと--task flutterは明示的なルートです。リゾルバーは、Dart のみのパッケージに対するflutterを拒否します。
共通ルール
- リポジトリの
AGENTS.mdに従い、既存のアーキテクチャを維持してください。 - 解決されたすべてのルートで、コアの手順を読み込んでください。Flutter の手順はコアのルールを置き換えるのではなく、拡張するものです。
- パブリックなパッケージのエントリーポイントのみをインポートしてください。アプリケーションコードから
flowr/src/...やflowr_dart/src/...をインポートしてはいけません。 - パッケージ API の使用方法はここで扱います。ファイル構成、コンポーネントの所有関係、契約に関する判断は、呼び出し元のアーキテクチャスキルの責任です。
リファレンス
タスクに関連するリファレンスのみを読み込んでください。
references/core.md:FlowR/FlowB、ロギング、状態、ストリーム、スケジューリング、破棄に関するルール。references/flutter.md:FrViewModel、FrBlocViewModel、FrProvider、FrView、リスナー、Flutter の所有関係に関するルール。references/flowr-dart-install.md:純粋な Dart パッケージにflowr_dartを追加します。references/flowr-install.md:flowrと最初の Flutter プロバイダー/ビューを追加します。references/flowr-logging.md、flowr-run-catching.md、flowr-slowly.md、flowr-disposal.md、flowr-update.md:名前に示されたコアの関心事を扱います。references/flutter-error-boundaries.md:ローカルのlogEによる復旧ログを維持しながら、Flutter アプリのエントリーポイントに、相互補完的なFlutterError、PlatformDispatcher、ゾーン境界を設定します。references/bloc-concurrency.md:非同期のFlowBまたはFrBlocViewModelハンドラーについて、ハンドラーごとのイベント同時実行を評価し、設定します。イベントの重複処理による競合、作業の重複、古い結果の出力、または順序どおりの処理が問題となる可能性がある場合に読み込みます。デフォルトでbloc_concurrencyを追加してはいけません。references/freezed-install.md:不変な Freezed 状態の生成を追加します。references/slang-install.md:型安全な slang 翻訳をインストールして生成します。プロジェクト規約ではS.を使用します。references/fr-mvvm-locale-slang.md:アプリケーションのロケール管理をfr_mvvm_localeが担う形で、slang 翻訳カタログを統合します。references/fr-provider-di.md、fr-vm-communication.md、fr-union.md:Flutter の高度なプロバイダー、VM の連携、FrUnionの使用方法を扱います。references/fr-mvvm-*.md:対応する任意の Flutter 拡張機能を扱います。
検証
- 変更した Dart ファイルを、パッケージで設定されている Dart/Flutter ツールでフォーマットします。
- 対象パッケージの関連テストを実行します。
- 共有 API またはパッケージの公開範囲を変更する場合は、リポジトリのアナライザーコマンドを実行します。
コメント
Markdown 対応