2 Commits

Author SHA1 Message Date
Jaime Wren 9b8106dbf0 Add proactive Flutter hot reload rule (#228)
* Add proactive Flutter hot reload rule

https://github.com/dart-lang/ai/issues/498

Adds proactive Flutter hot reload rules (rules/flutter-hot-reload.md and
rules/flutter-hot-reload.mdc) to automatically trigger hot reload or hot
restart when Dart and Flutter files are modified during agent sessions.
Problem:
During AI-driven development workflows:
- Out-of-Sync Execution: Agents modify source code on disk but do not
  update the active running session, leaving the simulator/device screen
  stale.
- Context Switching Friction: Users must leave the chat interface to
  manually initiate a reload ('r'/'R') in the terminal or IDE.
Solution:
- Adds a glob-triggered rule on `**/*.dart` that instructs agents to
  discover running apps via DTD and execute hot reload (for widget/UI
  changes) or hot restart (for fundamental logic/state initialization).
- Defines skip criteria for test files and comment/doc-only edits.

* Address PR feedback: refine hot restart triggers and fix .mdc frontmatter

- Remove unsupported `trigger: glob` key from `flutter-hot-reload.mdc`.
- Refine reload vs. restart rules to allow hot reload on stateful widget build methods and restrict hot restart to state initialization, global state, and root lifecycle changes.

* Address PR feedback: limit reload rule to lib/ and clarify Dart MCP tools

- Update glob pattern to "lib/**/*.dart" and refine skip criteria to only
  trigger hot reload/restart for edits under lib/, ignoring edits in
  test/, integration_test/, benchmark/, test_driver/, example/, etc.
- Explicitly state that dtd, hot_reload, and hot_restart are tools provided
  by the Dart MCP server.

* Update reload rule glob to match nested package lib directories
2026-09-02 09:47:42 -07:00
Jacob MacDonald 141bccd9a3 add a rule file encouraging proactive use of hot reload (#210)
Part of https://github.com/dart-lang/ai/issues/498

It is not clear to me exactly which all agents support rules, but AGY does, and this rule has only been tested in AGY. Cursor supports it but seems to want a slightly different format, (`.mdc`).

Should we create separate directories for some of the other agents? I think cursor does support pointing to any directory for the rules in its plugin configuration.
2026-08-05 09:52:17 -07:00