### Electron Project Setup Source: https://github.com/ai-dashboad/flutter-skill/blob/main/README.md Install the flutter-skill-electron npm package and start the FlutterSkillBridge with the main window. ```bash npm install flutter-skill-electron ``` ```js const { FlutterSkillBridge } = require('flutter-skill-electron'); FlutterSkillBridge.start(mainWindow); ``` -------------------------------- ### Clone and Run Project Source: https://github.com/ai-dashboad/flutter-skill/blob/main/CONTRIBUTING.md Clone the repository, install dependencies, and run the server. This is the initial setup for development. ```bash git clone https://github.com/ai-dashboad/flutter-skill cd flutter-skill dart pub get dart run bin/flutter_skill.dart server ``` -------------------------------- ### React Native Project Setup Source: https://github.com/ai-dashboad/flutter-skill/blob/main/README.md Install the flutter-skill-react-native npm package and start the FlutterSkill instance. ```bash npm install flutter-skill-react-native ``` ```js import FlutterSkill from 'flutter-skill-react-native'; FlutterSkill.start(); ``` -------------------------------- ### Perform Setup or Launch with CLI Source: https://github.com/ai-dashboad/flutter-skill/blob/main/docs/TROUBLESHOOTING.md Use the flutter_skill setup command for automatic project configuration or the launch command to start the app, which also includes automatic setup. ```bash # Automatic setup flutter_skill setup # Or launch (automatically runs setup) flutter_skill launch . -d device_id ``` -------------------------------- ### Run Automated Demo Source: https://github.com/ai-dashboad/flutter-skill/blob/main/examples/demo_indicators/README.md Execute the demo app and guide using separate terminal commands. Recommended for a quick start. ```bash # 1. Start the demo app cd /Users/cw/development/flutter-skill flutter run examples/demo_indicators/test_indicators_demo.dart -d "iPhone 16 Pro" # 2. In another terminal, run the demo guide node examples/demo_indicators/run_demo.js # 3. Follow the instructions and copy commands to Claude/Cursor ``` -------------------------------- ### Setup and Run TestChat Server (Python) Source: https://github.com/ai-dashboad/flutter-skill/blob/main/test/e2e/rn_test_app/ios/Pods/SocketRocket/README.md Set up the virtual environment, install dependencies, and run the Python-based chatroom server for the TestChat demo application. ```bash source .env/bin/activate pip install git+https://github.com/tornadoweb/tornado.git ``` ```bash python TestChatServer/py/chatroom.py ``` -------------------------------- ### Run flutter-skill server after global install Source: https://github.com/ai-dashboad/flutter-skill/blob/main/skills-submission/flutter-skill/SKILL.md Configure and run the flutter-skill server using the globally installed package. This JSON configuration specifies the command and arguments to start the server. ```json { "mcpServers": { "flutter-skill": { "command": "flutter_skill", "args": ["server"] } } } ``` -------------------------------- ### CI/CD Pipeline Example Source: https://github.com/ai-dashboad/flutter-skill/blob/main/docs/CLI_CLIENT.md A bash script demonstrating a CI/CD pipeline that starts a serve instance, runs a test sequence including snapshotting and screenshotting, and then cleans up. ```bash #!/bin/bash set -e # Start serve in background flutter-skill serve https://staging.example.com & sleep 3 # Run test sequence flutter-skill snap flutter-skill tap "Get Started" flutter-skill wait 1000 flutter-skill screenshot /tmp/ci-test.jpg flutter-skill title # Cleanup kill %1 ``` -------------------------------- ### Install Flutter Skill Feature Source: https://github.com/ai-dashboad/flutter-skill/blob/main/packaging/devcontainer-feature/src/flutter-skill/README.md Example of how to include the flutter-skill feature in a devcontainer configuration. ```json { "features": { "ghcr.io/ai-dashboad/flutter-skill/flutter-skill:latest": {} } } ``` -------------------------------- ### Example Release Script Execution Source: https://github.com/ai-dashboad/flutter-skill/blob/main/CLAUDE.md Example of how to execute the release script with a version number and a brief description. ```bash Example: ./scripts/release.sh 0.9.9 "C++ desktop automation SDK" ``` -------------------------------- ### Install flutter-skill using npx Source: https://github.com/ai-dashboad/flutter-skill/blob/main/skills-submission/flutter-skill/SKILL.md Use this command to install and run the flutter-skill command-line interface. This is the recommended installation method. ```json { "mcpServers": { "flutter-skill": { "command": "npx", "args": ["flutter-skill"] } } } ``` -------------------------------- ### Android (Kotlin) Project Setup Source: https://github.com/ai-dashboad/flutter-skill/blob/main/README.md Add the flutter-skill Android Gradle dependency and start the FlutterSkillBridge. ```kotlin implementation("com.flutterskill:flutter-skill:0.8.0") FlutterSkillBridge.start(this) ``` -------------------------------- ### iOS (Swift) Project Setup Source: https://github.com/ai-dashboad/flutter-skill/blob/main/README.md Integrate FlutterSkillSDK via Swift Package Manager, start the FlutterSkillBridge, and add a flutterSkillId to a Text widget. ```swift // Swift Package Manager: FlutterSkillSDK import FlutterSkill FlutterSkillBridge.shared.start() Text("Hello").flutterSkillId("greeting") ``` -------------------------------- ### Clone and Run Flutter Skill Project Source: https://github.com/ai-dashboad/flutter-skill/blob/main/README.md Clone the repository, install dependencies, and start the MCP server to use the flutter-skill project. ```bash git clone https://github.com/ai-dashboad/flutter-skill cd flutter-skill dart pub get dart run bin/flutter_skill.dart server # Start MCP server ``` -------------------------------- ### Example Executable Build Configuration Source: https://github.com/ai-dashboad/flutter-skill/blob/main/sdks/cpp/CMakeLists.txt Configures the build of an example bridge server executable if the BUILD_EXAMPLE option is enabled. ```cmake option(BUILD_EXAMPLE "Build the example bridge server" ON) if(BUILD_EXAMPLE) add_executable(flutter_skill_bridge examples/main.cpp) target_link_libraries(flutter_skill_bridge PRIVATE flutter_skill) endif() ``` -------------------------------- ### Autoconf Build and Install Source: https://github.com/ai-dashboad/flutter-skill/blob/main/test/e2e/rn_test_app/ios/Pods/libevent/README.md Standard procedure for building and installing Libevent using Autoconf. Run 'make verify' for optional testing. ```bash $ ./configure $ make $ make verify # (optional) $ sudo make install ``` -------------------------------- ### Start OpenClaw Serve Mode Source: https://github.com/ai-dashboad/flutter-skill/blob/main/docs/IDE_SETUP.md Start the flutter-skill HTTP serve instance for standalone browser automation. ```bash flutter-skill serve https://your-app.com ``` -------------------------------- ### Autoconf Build and Install (In Depth) Source: https://github.com/ai-dashboad/flutter-skill/blob/main/test/e2e/rn_test_app/ios/Pods/libevent/README.md Detailed instructions for building and installing Libevent with Autoconf. Includes running regression tests and enabling debug tracing. ```bash $ ./configure && make ``` ```bash $ make verify ``` ```bash $ make install ``` ```bash $ CFLAGS=-DUSE_DEBUG ./configure [...] ``` -------------------------------- ### Install flutter-skill via Scoop Source: https://github.com/ai-dashboad/flutter-skill/blob/main/README.md Install flutter-skill using the Scoop package manager on Windows. ```bash scoop install flutter-skill ``` -------------------------------- ### Continue.dev IDE Setup Source: https://github.com/ai-dashboad/flutter-skill/blob/main/docs/site/index.html Configuration snippet for integrating flutter-skill with Continue.dev. Add this to your `.continue/config.json` file. ```json { "models": [ { "title": "flutter-skill", "provider": "flutter-skill", "serve_url": "http://localhost:3000" } ] } ``` -------------------------------- ### Install and Run flutter-skill Server on Android Source: https://github.com/ai-dashboad/flutter-skill/blob/main/docs/site/index.html Install the flutter-skill CLI globally and run the server command for Android development. ```bash npm install -g flutter-skill # Add sdks/android to your Gradle project # Run your app on emulator flutter-skill server ``` -------------------------------- ### Install and Run flutter-skill Server on iOS Source: https://github.com/ai-dashboad/flutter-skill/blob/main/docs/site/index.html Install the flutter-skill CLI globally and run the server command for iOS development. ```bash npm install -g flutter-skill # Add sdks/ios to your Xcode project # Run your app on simulator flutter-skill server ``` -------------------------------- ### Install Flutter Skill Source: https://github.com/ai-dashboad/flutter-skill/blob/main/docs/continue-dev.md Install Flutter Skill globally using npm, Homebrew, or pub.dev. ```bash # Via npm npm install -g @anthropic/flutter-skill ``` ```bash # Via Homebrew brew install ai-dashboad/flutter-skill/flutter-skill ``` ```bash # Via pub.dev dart pub global activate flutter_skill ``` -------------------------------- ### Configure CI for Tests Source: https://github.com/ai-dashboad/flutter-skill/blob/main/sdks/python/README.md Example GitHub Actions workflow snippet for setting up CI to run pytest tests. It includes steps to install flutter-skill and execute pytest. ```yaml # .github/workflows/test.yml - name: Install flutter-skill run: dart pub global activate flutter_skill - name: Run tests run: pytest tests/ -v ``` -------------------------------- ### Build Plugin from ZIP Source: https://github.com/ai-dashboad/flutter-skill/blob/main/intellij-plugin/README.md Build the plugin locally and install it from the generated ZIP file. ```bash ./gradlew buildPlugin # Install from build/distributions/flutter-skill-intellij-*.zip ``` -------------------------------- ### Install flutter-skill CLI Source: https://github.com/ai-dashboad/flutter-skill/blob/main/docs/site/index.html Use this command to install the flutter-skill command-line interface globally. This is the first step to using the tool. ```bash $ npm install -g flutter-skill ``` -------------------------------- ### Install and Initialize Flutter Skill Source: https://github.com/ai-dashboad/flutter-skill/blob/main/docs/USAGE_GUIDE.md Install the flutter-skill package globally and initialize it within your application directory. This prepares your app for AI interaction. ```bash # 1. Install npm install -g flutter-skill # 2. Init your project (auto-detects framework & patches your app) cd your-app/ flutter-skill init ``` -------------------------------- ### MCP Configuration Example Source: https://github.com/ai-dashboad/flutter-skill/blob/main/packaging/homebrew/README.md A sample JSON configuration for the MCP server, specifying the command to execute. ```json { "flutter-skill": { "command": "flutter-skill" } } ``` -------------------------------- ### Troubleshooting: Claude Code Priority Setup Source: https://github.com/ai-dashboad/flutter-skill/blob/main/docs/USAGE_GUIDE.md To configure priority rules for Claude Code, run the setup command. ```bash flutter_skill setup ``` -------------------------------- ### Install flutter-skill Electron SDK Source: https://github.com/ai-dashboad/flutter-skill/blob/main/sdks/electron/README.md Install the SDK using npm. This command is used to add the package to your project dependencies. ```bash npm install flutter-skill-electron ``` -------------------------------- ### Install flutter-skill CLI Source: https://github.com/ai-dashboad/flutter-skill/blob/main/README.md Install the flutter-skill command-line interface globally using npm. This is the first step to integrate flutter-skill with your projects. ```bash npm install -g flutter-skill ``` -------------------------------- ### Start flutter-skill Server Source: https://github.com/ai-dashboad/flutter-skill/blob/main/sdks/android/README.md Start the flutter-skill server from your host machine. The server will automatically discover and connect to your running Android app. ```bash flutter_skill server ``` -------------------------------- ### Quick Start: Auto-launch Chrome with flutter-skill Source: https://github.com/ai-dashboad/flutter-skill/blob/main/docs/site/index.html Automatically launches Chrome, opens a specified URL, and starts the MCP server. Useful for quick testing and development. ```bash flutter-skill serve https://your-app.com --port=3000 ``` -------------------------------- ### Smart Screenshot Configuration Source: https://github.com/ai-dashboad/flutter-skill/blob/main/docs/ROADMAP.md Example of configuring smart screenshot optimization with a specific quality preset. ```javascript screenshot({ quality: "ai" }) ``` -------------------------------- ### VSCode HTML Component Examples Source: https://github.com/ai-dashboad/flutter-skill/blob/main/docs/ui/UI_UX_DESIGN_GUIDE.md Provides examples of common UI components using VSCode's custom HTML elements. ```html Launch App ``` ```html Connected ``` ```html
Connection Status
``` -------------------------------- ### Install and Use flutter-skill via Homebrew Source: https://github.com/ai-dashboad/flutter-skill/blob/main/packaging/homebrew/README.md Commands for users to add the custom Homebrew tap, install the flutter-skill package, and run the tool. ```bash # Add the tap brew tap ai-dashboad/flutter-skill # Install brew install flutter-skill # Use flutter-skill --help flutter-skill # Start MCP server ``` -------------------------------- ### OpenClaw CLI Client Commands Source: https://github.com/ai-dashboad/flutter-skill/blob/main/docs/IDE_SETUP.md Example CLI commands for interacting with a running OpenClaw serve instance. ```bash flutter-skill nav https://your-app.com/login ``` ```bash flutter-skill snap ``` ```bash flutter-skill tap "Login" ``` ```bash flutter-skill type "user@example.com" ``` ```bash flutter-skill screenshot /tmp/login.jpg ``` -------------------------------- ### Serve Startup Options Source: https://github.com/ai-dashboad/flutter-skill/blob/main/docs/CLI_CLIENT.md Configure the serve instance with specific port and host options during startup. ```bash flutter-skill serve https://your-app.com --port=8080 --host=0.0.0.0 ``` -------------------------------- ### Install Chrome for Testing (CfT) for macOS ARM64 Source: https://github.com/ai-dashboad/flutter-skill/blob/main/docs/site/index.html Installs a specific Chrome for Testing build for macOS ARM64 architecture using npx. Useful for M1/M2 Macs in CI/CD. ```bash npx @anthropic-ai/cft install --platform=mac-arm64 ``` -------------------------------- ### Get Folly Scratch Install Directory Source: https://github.com/ai-dashboad/flutter-skill/blob/main/test/e2e/rn_test_app/ios/Pods/RCT-Folly/README.md Retrieve the default scratch install directory used by getdeps.py. This directory contains build artifacts. ```bash python3 ./build/fbcode_builder/getdeps.py show-inst-dir ``` -------------------------------- ### Printf Formatting Example Source: https://github.com/ai-dashboad/flutter-skill/blob/main/test/e2e/rn_test_app/ios/Pods/fmt/README.rst Shows the conciseness of printf for formatting floating-point numbers with specific precision. ```c printf("%.2f\n", 1.23456); ``` -------------------------------- ### Install Chrome for Testing (CfT) via npx Source: https://github.com/ai-dashboad/flutter-skill/blob/main/docs/site/index.html Installs the Chrome for Testing (CfT) build using npm package manager. Recommended for CI/CD environments for isolated testing. ```bash npx @anthropic-ai/cft install ``` -------------------------------- ### Install Folly from Main Branch on Windows using Vcpkg Source: https://github.com/ai-dashboad/flutter-skill/blob/main/test/e2e/rn_test_app/ios/Pods/RCT-Folly/README.md Use Vcpkg to install Folly from the main branch for 64-bit Windows. This command builds against the latest development version. ```bash vcpkg install folly:x64-windows --head ``` -------------------------------- ### Smart Multi-App Selection Example Source: https://github.com/ai-dashboad/flutter-skill/blob/main/docs/SMART_DISCOVERY.md Provides a practical example of the smart multi-app selection feature. It shows how 'flutter_skill inspect' automatically selects the correct app based on directory match and device, even when multiple apps are running in different or same projects. ```bash # Running 3 apps in different projects # - /Users/cw/project-a (iOS, PID 1000) # - /Users/cw/project-b (Android, PID 1001) # - /Users/cw/project-a (Android, PID 1002) cd /Users/cw/project-a flutter_skill inspect # โœ… Auto-selected: PID 1000 (exact match, most recent iOS) cd /Users/cw/project-b flutter_skill inspect # โœ… Auto-selected: PID 1001 (exact match) cd /Users/cw/project-a flutter_skill inspect -d android # โœ… Auto-selected: PID 1002 (exact match + device filter) ``` -------------------------------- ### Cursor IDE Setup Source: https://github.com/ai-dashboad/flutter-skill/blob/main/docs/site/index.html Configuration snippet for integrating flutter-skill with Cursor IDE. Add this to your `.cursor/mcp.json` file. ```json { "mcp_config": { "provider": "flutter-skill", "serve_url": "http://localhost:3000" } } ``` -------------------------------- ### Proactive Diagnostic Workflow Source: https://github.com/ai-dashboad/flutter-skill/blob/main/docs/test_auto_fix.md Example workflow for testing a Flutter app using diagnose_project and launch_app for proactive setup. ```text 1. diagnose_project(project_path: ".") 2. If issues found โ†’ already fixed (auto_fix: true by default) 3. launch_app(project_path: ".", device_id: "xxx") 4. Test the app... ``` -------------------------------- ### Run flutter-skill Demo Source: https://github.com/ai-dashboad/flutter-skill/blob/main/docs/USAGE_GUIDE.md Launches a built-in demo application to explore all features of flutter-skill without any setup. ```bash flutter-skill demo ``` -------------------------------- ### Launch Flutter App with Auto-Setup Source: https://github.com/ai-dashboad/flutter-skill/blob/main/CLAUDE.md Launch a Flutter project with automatic setup, which includes adding dependencies and patching the main.dart file. Provide the path to your Flutter project. ```bash # Launch a Flutter app with auto-setup (adds dependency + patches main.dart) flutter_skill launch /path/to/flutter_project ``` -------------------------------- ### Iostreams Formatting Example Source: https://github.com/ai-dashboad/flutter-skill/blob/main/test/e2e/rn_test_app/ios/Pods/fmt/README.rst Demonstrates the verbosity of iostreams for formatting floating-point numbers with specific precision and style. ```c++ std::cout << std::setprecision(2) << std::fixed << 1.23456 << "\n"; ``` -------------------------------- ### Get Flutter Skill Server Status Output (Human) Source: https://github.com/ai-dashboad/flutter-skill/blob/main/docs/cli-server-commands.md Example of human-readable output for the `flutter_skill server status` command, showing server details. ```text Server: myapp Status : running Port : 52341 PID : 84921 Project : /Users/you/projects/myapp Device : iPhone 16 Pro URI : ws://127.0.0.1:50000/ws Started : 2026-04-01 10:30:00.000 ``` -------------------------------- ### Get Flutter Skill Server Status Output (JSON) Source: https://github.com/ai-dashboad/flutter-skill/blob/main/docs/cli-server-commands.md Example of JSON output for the `flutter_skill server status` command, providing structured server information. ```json { "id": "myapp", "port": 52341, "pid": 84921, "projectPath": "/Users/you/projects/myapp", "deviceId": "iPhone 16 Pro", "vmServiceUri": "ws://127.0.0.1:50000/ws", "startedAt": "2026-04-01T10:30:00.000Z", "alive": true } ``` -------------------------------- ### Zero-Config WebMCP Server Source: https://github.com/ai-dashboad/flutter-skill/blob/main/README.md Start a zero-configuration WebMCP server to make any website testable. Provide the URL of the website. ```bash # ๐ŸŒ Zero-config WebMCP server โ€” any website becomes testable flutter-skill serve https://my-app.com ``` -------------------------------- ### Correct VM Service URI Formats Source: https://github.com/ai-dashboad/flutter-skill/blob/main/docs/FLUTTER_3X_FIX.md These examples show the correct formats for VM Service URIs that flutter-skill can connect to. They typically start with http:// or ws:// and are associated with the VM Service listening message. ```string http://127.0.0.1:50000/xxxx=/ ws://127.0.0.1:50000/xxxx=/ws ``` -------------------------------- ### IntelliJ UI DSL Panel Example Source: https://github.com/ai-dashboad/flutter-skill/blob/main/docs/ui/UI_UX_DESIGN_GUIDE.md Demonstrates creating a status panel with icons and labels using IntelliJ's UI DSL. ```kotlin // Status Panel panel { row { icon(AllIcons.Debugger.ThreadAtBreakpoint) label("Connected").apply { foreground = FlutterSkillColors.success } } row { icon(AllIcons.General.Information) label("iPhone 16 Pro") } } ``` -------------------------------- ### Install pytest-flutter-skill Source: https://github.com/ai-dashboad/flutter-skill/blob/main/sdks/python/README.md Install the pytest plugin using pip. Ensure flutter_skill is also installed and accessible. ```bash pip install pytest-flutter-skill ``` -------------------------------- ### Recommended Workflow for UI Automation Source: https://github.com/ai-dashboad/flutter-skill/blob/main/docs/FLUTTER_3X_COMPATIBILITY.md This workflow demonstrates launching an app with VM Service enabled and then using Flutter Skill MCP tools for UI automation tasks. ```bash # 1. Launch with VM Service flutter_skill launch . --extra-args="--vm-service-port=50000" # 2. Use Flutter Skill MCP tools insp ``` -------------------------------- ### Install Folly on macOS using Homebrew Source: https://github.com/ai-dashboad/flutter-skill/blob/main/test/e2e/rn_test_app/ios/Pods/RCT-Folly/README.md Use Homebrew to install Folly on macOS. This command installs the latest release. ```bash brew install folly ``` -------------------------------- ### Create and Set Up Homebrew Tap Source: https://github.com/ai-dashboad/flutter-skill/blob/main/packaging/homebrew/README.md Use these commands to create a new Homebrew tap repository, clone it, add the formula, commit changes, and push to GitHub. ```bash gh repo create ai-dashboad/homebrew-flutter-skill --public --description "Homebrew tap for flutter-skill" git clone https://github.com/ai-dashboad/homebrew-flutter-skill.git cp flutter-skill.rb homebrew-skill/Formula/ cd homebrew-skill git add . && git commit -m "Add flutter-skill formula" git push ``` -------------------------------- ### Build and Run Plugin Locally Source: https://github.com/ai-dashboad/flutter-skill/blob/main/intellij-plugin/README.md Commands to build the plugin, run it in a sandbox IDE, and publish it to the marketplace. ```bash # Build plugin ./gradlew buildPlugin # Run in sandbox IDE ./gradlew runIde # Publish to marketplace ./gradlew publishPlugin ``` -------------------------------- ### Install Folly on Windows using Vcpkg Source: https://github.com/ai-dashboad/flutter-skill/blob/main/test/e2e/rn_test_app/ios/Pods/RCT-Folly/README.md Use Vcpkg to install Folly for 64-bit Windows. This command installs the latest release. ```bash vcpkg install folly:x64-windows ``` -------------------------------- ### Run TestChat Server (Go) Source: https://github.com/ai-dashboad/flutter-skill/blob/main/test/e2e/rn_test_app/ios/Pods/SocketRocket/README.md Navigate to the Go chatroom server directory and run the Go implementation of the chatroom server. ```bash cd TestChatServer/go go run chatroom.go ``` -------------------------------- ### Install flutter-skill React Native SDK Source: https://github.com/ai-dashboad/flutter-skill/blob/main/sdks/react-native/README.md Install the SDK and its dependencies using npm or yarn. For iOS, ensure native pods are installed. ```bash npm install flutter-skill-react-native react-native-tcp-socket # or yarn add flutter-skill-react-native react-native-tcp-socket ``` ```bash cd ios && pod install ``` -------------------------------- ### Install MacPorts Dependencies for Folly Source: https://github.com/ai-dashboad/flutter-skill/blob/main/test/e2e/rn_test_app/ios/Pods/RCT-Folly/README.md Install essential packages required for building Folly using MacPorts. Ensure all listed dependencies are installed before proceeding. ```bash sudo port install \ boost \ cmake \ gflags \ git \ google-glog \ libevent \ libtool \ lz4 \ lzma \ openssl \ snappy \ xz \ zlib ``` -------------------------------- ### Dry Run System Dependency Installation Source: https://github.com/ai-dashboad/flutter-skill/blob/main/test/e2e/rn_test_app/ios/Pods/RCT-Folly/README.md Preview the system dependencies that getdeps.py would install without actually performing the installation. Useful for verification. ```bash ./build/fbcode_builder/getdeps.py install-system-deps --dry-run --recursive ``` -------------------------------- ### Start VSCode Debugging Session Source: https://github.com/ai-dashboad/flutter-skill/blob/main/docs/PLUGIN_TESTING_GUIDE.md Start a debugging session for your VSCode extension by pressing F5 or selecting 'Run > Start Debugging'. Choose the 'Run Extension' configuration. ```bash # In VSCode: # Press F5 or Click Run > Start Debugging # Select "Run Extension" configuration ``` -------------------------------- ### Install SocketRocket with Carthage Source: https://github.com/ai-dashboad/flutter-skill/blob/main/test/e2e/rn_test_app/ios/Pods/SocketRocket/README.md Add this line to your Cartfile to install SocketRocket using Carthage. ```plaintext github "facebook/SocketRocket" ``` -------------------------------- ### Install SocketRocket with CocoaPods Source: https://github.com/ai-dashboad/flutter-skill/blob/main/test/e2e/rn_test_app/ios/Pods/SocketRocket/README.md Add this line to your Podfile to install SocketRocket using CocoaPods. ```ruby pod 'SocketRocket' ``` -------------------------------- ### Serve a Website with flutter-skill Source: https://github.com/ai-dashboad/flutter-skill/blob/main/docs/site/index.html Automate any website by serving it with flutter-skill. This requires no code changes to the website itself. Run this command to start the server. ```bash flutter-skill serve https://your-website.com ``` -------------------------------- ### Install VSCode Extension Dependencies Source: https://github.com/ai-dashboad/flutter-skill/blob/main/docs/PLUGIN_TESTING_GUIDE.md Install the necessary Node.js dependencies for your VSCode extension. ```bash cd vscode-extension npm install ``` -------------------------------- ### Core Testing Loop Example Source: https://github.com/ai-dashboad/flutter-skill/blob/main/skills-submission/flutter-skill/SKILL.md Illustrates a typical testing workflow: launching an app, capturing a screenshot, inspecting elements, interacting with an element (tap or enter text), taking another screenshot, and verifying element presence. ```plaintext launch_app(project_path: "/path/to/app") โ†’ screenshot() โ†’ inspect() โ†’ tap(key: "element_key") / enter_text(key: "field_key", text: "value") โ†’ screenshot() โ†’ verify with wait_for_element / get_text_value ``` -------------------------------- ### Workflow 2: Quick Connection Example Source: https://github.com/ai-dashboad/flutter-skill/blob/main/docs/AUTO_FIX_IMPROVEMENTS.md This workflow illustrates a quick connection strategy. It attempts to auto-fix the project configuration and then scan for a running Flutter app. ```plaintext User: "Connect to my running Flutter app" Claude Code: 1. scan_and_connect(project_path: ".") โ†’ Auto-fixes config, then scans for running apps 2. If found โ†’ connected! 3. If not found โ†’ launch_app() ``` -------------------------------- ### Install flutter-skill via Homebrew Source: https://github.com/ai-dashboad/flutter-skill/blob/main/README.md Install flutter-skill using the Homebrew package manager on macOS or Linux. ```bash brew install ai-dashboad/flutter-skill/flutter-skill ``` -------------------------------- ### Semantic Element Discovery Example Source: https://github.com/ai-dashboad/flutter-skill/blob/main/docs/ROADMAP.md Example of finding an element by its semantic role using the find function. ```javascript find({ role: "submit_button" }) ``` -------------------------------- ### Install VSIX Extension in VSCode Source: https://github.com/ai-dashboad/flutter-skill/blob/main/docs/PLUGIN_TESTING_GUIDE.md Install a packaged .vsix file into your VSCode instance via the Extensions sidebar. ```bash # In VSCode: # 1. Extensions sidebar # 2. Click "..." menu # 3. Select "Install from VSIX..." # 4. Select the generated .vsix file ``` -------------------------------- ### Print Hello World Source: https://github.com/ai-dashboad/flutter-skill/blob/main/test/e2e/rn_test_app/ios/Pods/fmt/README.rst Prints 'Hello, world!' to standard output using both Python-like and printf-style format strings. ```c++ fmt::print("Hello, {}!", "world"); // Python-like format string syntax fmt::printf("Hello, %s!", "world"); // printf format string syntax ``` -------------------------------- ### Start flutter-skill Bridge in C++ App Source: https://github.com/ai-dashboad/flutter-skill/blob/main/sdks/cpp/README.md Initialize and start the flutter-skill bridge within your C++ application. Configure options like application name and port, then start the bridge. The bridge runs non-blockingly, and `wait()` can be used to block until the bridge is stopped. ```cpp #include int main() { flutter_skill::BridgeOptions opts; opts.app_name = "my-cpp-app"; opts.port = 18118; // default flutter_skill::FlutterSkillBridge bridge(opts); bridge.start(); // non-blocking // ... your app code ... bridge.wait(); // block until stopped } ``` -------------------------------- ### Install double-conversion on macOS using MacPorts Source: https://github.com/ai-dashboad/flutter-skill/blob/main/test/e2e/rn_test_app/ios/Pods/RCT-Folly/README.md Clone, build, and install the double-conversion library. This is a prerequisite for building Folly with MacPorts. ```bash git clone https://github.com/google/double-conversion.git cd double-conversion cmake -DBUILD_SHARED_LIBS=ON . make sudo make install ``` -------------------------------- ### Manually Start and Connect to App Source: https://github.com/ai-dashboad/flutter-skill/blob/main/docs/FLUTTER_3X_FIX.md For advanced users, this involves manually running the Flutter app with the VM Service port specified and then connecting to it. This method requires more steps but offers granular control. ```bash # 1. ๅฏๅŠจๅบ”็”จ๏ผˆ้œ€ๆ‰‹ๅŠจๆŒ‡ๅฎš VM Service๏ผ‰ flutter run -d "iPhone 16 Pro" --vm-service-port=50000 # 2. ๅคๅˆถ่พ“ๅ‡บ็š„ VM Service URI๏ผŒไพ‹ๅฆ‚: # The Dart VM service is listening on http://127.0.0.1:50000/xxxx=/ # 3. ่ฟžๆŽฅ connect_app(uri: "http://127.0.0.1:50000/xxxx=/") ``` -------------------------------- ### Testing Workflow: Core Loop Example Source: https://github.com/ai-dashboad/flutter-skill/blob/main/skills/e2e-testing/SKILL.md A concise representation of the core testing workflow, emphasizing the sequence of actions: screenshot, inspect, interact, and verify with a final screenshot. Includes a note on using wait_for_element after navigation. ```plaintext screenshot() โ†’ inspect_interactive() โ†’ tap/enter_text โ†’ screenshot() โ†’ verify ``` -------------------------------- ### Parallel Speed Boost Example Source: https://github.com/ai-dashboad/flutter-skill/blob/main/docs/SMART_DISCOVERY.md Compares the performance of the old sequential port checking method with the new parallel method, illustrating the significant speed improvement achieved through simultaneous port checks. ```bash # OLD (sequential): Check 6 ports one by one # Port 50000: timeout (500ms) # Port 50001: timeout (500ms) # Port 50002: found! (500ms) # Total: 1500ms # NEW (parallel): Check all 6 ports simultaneously # Port 50002: found! (500ms) # Other ports: cancelled # Total: 500ms (3x faster!) ``` -------------------------------- ### Launch Flutter App and Attach Skill Server (In-Process) Source: https://github.com/ai-dashboad/flutter-skill/blob/main/docs/cli-server-commands.md Launches a Flutter application and attaches a skill server to it. The server runs within the same process as the Flutter app. Specify the project path and a server ID. ```bash flutter_skill launch . --id=myapp ``` -------------------------------- ### Package VSCode Extension Source: https://github.com/ai-dashboad/flutter-skill/blob/main/docs/PLUGIN_TESTING_GUIDE.md Package your VSCode extension into a .vsix file for local installation. Ensure you have vsce installed globally. ```bash # cd vscode-extension # Install vsce (if not installed) npm install -g @vscode/vsce # Package vsce package # Generates flutter-skill-0.4.1.vsix ``` -------------------------------- ### Fuzzy Text Matching Example Source: https://github.com/ai-dashboad/flutter-skill/blob/main/docs/ROADMAP.md Example of tapping an element using fuzzy text matching to accommodate variations in text. ```javascript tap({ text: "Submit" }) ``` -------------------------------- ### Launch Flutter app with dart_defines, flavor, target, extra_args Source: https://github.com/ai-dashboad/flutter-skill/blob/main/packaging/npm/README.md Use the `launch_app` tool to start a Flutter application with specific configurations like dart defines, flavor, target, and extra arguments. ```bash `launch_app` | Launch Flutter app with dart_defines, flavor, target, extra_args ``` -------------------------------- ### Markdown Test File Example Source: https://github.com/ai-dashboad/flutter-skill/blob/main/docs/ROADMAP.md Example of a human-readable markdown test file used for defining test cases and steps. ```markdown # Login Flow ## Setup - Launch app on device ## Test: Valid credentials 1. Enter "test@example.com" in email field 2. Enter "password123" in password field 3. Tap "Login" 4. Verify "Dashboard" appears ## Test: Empty password 1. Leave password empty 2. Tap "Login" 3. Verify "Password required" error appears ``` -------------------------------- ### Example: Login Flow Automation Source: https://github.com/ai-dashboad/flutter-skill/blob/main/skills-submission/flutter-skill/SKILL.md Automates a login process by launching the app, entering credentials into specified fields, tapping the login button, and waiting for the home screen to appear. Includes a screenshot after successful login. ```plaintext launch_app(project_path: "/path/to/app") screenshot() inspect() enter_text(key: "email_field", text: "user@example.com") enter_text(key: "password_field", text: "password123") tap(key: "login_button") wait_for_element(key: "home_screen", timeout: 5000) screenshot() ``` -------------------------------- ### Install and Run React Native Test App Source: https://github.com/ai-dashboad/flutter-skill/blob/main/test/e2e/rn_test_app/README.md Installs dependencies and runs the React Native test application on Android or iOS. ```bash npm install npx react-native run-android # or run-ios ``` -------------------------------- ### Custom Formatting Function Example Source: https://github.com/ai-dashboad/flutter-skill/blob/main/test/e2e/rn_test_app/ios/Pods/fmt/README.rst Demonstrates how to create custom formatting functions similar to fmt::format and fmt::print that accept arbitrary arguments. This is useful for creating specialized reporting or logging functions. ```c++ void vreport_error(const char* format, fmt::format_args args) { fmt::print("Error: "); fmt::vprint(format, args); } template void report_error(const char* format, const Args & ... args) { vreport_error(format, fmt::make_format_args(args...)); } report_error("file not found: {}", path); ``` -------------------------------- ### Run Benchmark Speed Test Source: https://github.com/ai-dashboad/flutter-skill/blob/main/test/e2e/rn_test_app/ios/Pods/fmt/README.rst Execute the speed test for the benchmark suite after setting up the repository. ```bash $ make speed-test ``` -------------------------------- ### Recommended Workflow for Mixed Usage Source: https://github.com/ai-dashboad/flutter-skill/blob/main/docs/FLUTTER_3X_COMPATIBILITY.md This workflow outlines using separate terminals for launching with VM Service, connecting Flutter Skill for UI, and using Dart MCP for monitoring. ```bash # Terminal 1: Launch with VM Service flutter run --vm-service-port=50000 # Terminal 2: Use Flutter Skill for UI flutter_skill connect flutter_skill tap "button" # Terminal 3: Use Dart MCP for monitoring # (automatically finds DTD URI) mcp__dart__get_app_logs() ```