flutter/flutter-frontend-for-adk
> Orchestrates the discovery, mapping, design, and implementation of a premium Flutter-based frontend for an Agent Development Kit (ADK) agent written with Python.
npx skills add https://github.com/flutter/demos --skill flutter-frontend-for-adk
This skill orchestrates the end-to-end workflow of designing, specifying, and implementing a premium Flutter-based frontend for any Agent Development Kit (ADK) agent.
Before starting, the developer or coding agent should locate ADK framework-level specifications using the following resources instead of restating them in this skill:
/google-agents-cli-adk-code is active in the current session. Refer to its reference file adk-python.md to understand the core Event, EventActions, and state management models.curl https://adk.dev/llms.txt and search for pages related to client serving, networking, or the Python API server..venv/lib/python*/site-packages/google/adk/cli/adk_web_server.py..venv/lib/python*/site-packages/google/adk/events/event.py and event_actions.py.Follow the phases below sequentially. Do not skip ahead. You must complete and record the findings of each phase before beginning the next. When creating an implementation plan, add a blocking task for the "Review" step in each phase that has one and wait for the user to perform a review before beginning the next phase.
Identify the core purpose of the agent in this repository, understand its sub-agent hierarchy, map its API endpoints, event streams, and human-in-the-loop triggers, and record this information.
AGENT_DISCOVERY_NOTES.md, and do not proceed to Phase 2 until they indicate that you should do so.Define the high-level behavioral and functional requirements of the frontend: target platforms, screen specifications, feature details, and user experience flows.
FRONTEND_USAGE_NOTES.md, and do not proceed to Phase 3 until they indicate that you should do so.Define the structural patterns of the application, including core folder directory layouts, manual model serializations, and state management setups.
FRONTEND_ARCHITECTURE_NOTES.md, and do not proceed to Phase 4 until they indicate that you should do so.Design the visual structure, layout columns, styling guides, states, and micro-animations for the frontend application.
FRONTEND_DESIGN_NOTES.md, and do not proceed to Phase 5 until they indicate that you should do so.----
Create and program the Flutter client application within the workspace, implementing all designs and specifications.
frontend/ at the root of the workspace. Do not specify an org name unless instructed. Create the app to build for only those platforms specified by the user -- if you're not sure, ask.provider, flutter_markdown, url_launcher, and http) to frontend/pubspec.yaml.AdkApiService (implementing standard REST and SSE HTTP streamed response parsers), the AgentProvider state notifier, and the responsive views/widgets following FRONTEND_ARCHITECTURE_NOTES.md and FRONTEND_DESIGN_NOTES.md.flutter format, flutter analyze, and flutter test inside the frontend/ directory.frontend/ folder.Integrate the frontend into the workspace build flows, update version control settings, and document the client setup for developers.
Makefile targets, task configurations in pyproject.toml like Poe/Taskipy, package.json scripts, or custom run.sh / build.sh scripts). Update these automation tools or files to provide simple commands for developers to build, test, and launch the new Flutter frontend..gitignore file that will account for most things. If the root .gitignore file ignores lib/, though, make sure to add an exclusion for Flutter's lib directory (!frontend/lib).README.md in the root directory, update it to reference the new frontend, detail prerequisites (such as the Flutter SDK version), and outline startup instructions.frontend/README.md file to describe the frontend client, its structure, and how to launch both the agent and the client using the build configuration tools updated in step 1.Take flutter/flutter-frontend-for-adk from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.