MAUI DevFlow Onboard

VerifiedSafe

Add MAUI DevFlow to a .NET MAUI project with package references, registration, and verification commands. For first-time setup.

Sby Skills Guide Bot
DevelopmentIntermediate
7/22/2026
Claude Code
#maui#dotnet#devflow#onboarding#blazor-webview

Recommended for

Automated summary

Walks through the first-time integration of MAUI DevFlow into a .NET MAUI project: package selection, package references, MauiProgram.cs registration, and CLI verification.

Strengths

  • Package selection table covering standard MAUI, Blazor WebView, GTK, and GTK + Blazor
  • Explicit handling of Central Package Management through Directory.Packages.props
  • Concrete detection signals (UseMaui, platform TFMs, Maui.Gtk, AddMauiBlazorWebView) to classify the project
  • Clear anti-pattern list, including replacing builder.Services.AddMauiDevFlowAgent() with builder.AddMauiDevFlowAgent()
  • Provides verification commands (diagnose, wait, ui tree)

Limitations

  • Does not cover troubleshooting an already-integrated app that cannot connect; defers to maui-devflow-debug
  • Assumes `maui devflow init` has already installed the DevFlow skills
  • Halts for confirmation on multiple MAUI app projects or non-Debug activation, which limits full automation
When to use it

Use it when setting up DevFlow in a MAUI project for the first time, or when deciding which DevFlow packages a given project flavor needs.

When not to use it

Do not use it to diagnose CLI connectivity problems on an app that is already instrumented, nor for iterative debugging or UI inspection.

Security analysis

Safe
Quality score90/100

The skill provides legitimate MAUI project onboarding instructions: editing package references and MauiProgram.cs, then running local build and DevFlow diagnostic commands. It does not instruct destructive actions, secret exfiltration, obfuscated payloads, or disabling safety controls. The in-app HTTP server is debug-only and part of the documented tooling.

No concerns found

How this analysis is made

Examples

Onboard a standard MAUI app
Set up MAUI DevFlow in my .NET MAUI app so the CLI can attach to it — add the right package references and register it in MauiProgram.cs.
Blazor WebView project
My MAUI app uses AddMauiBlazorWebView(). Which DevFlow packages do I need and where do I register them?
Central Package Management repo
This repo uses Directory.Packages.props — onboard DevFlow and tell me exactly which files to edit for the versions and references.

name: maui-devflow-onboard description: >- Add MAUI DevFlow to a .NET MAUI project with agent package references, MauiProgram.cs registration, Blazor WebView support, GTK variants, Central Package Management guidance, and verification commands. USE FOR: first-time DevFlow setup, reviewing what files to edit, choosing DevFlow packages, or continuing after maui devflow init installs skills. DO NOT USE FOR: troubleshooting an already-integrated app that cannot connect, iterative app debugging, UI inspection, or generic MAUI build failures (use maui-devflow-debug). INVOKES: maui devflow CLI and dotnet CLI.

DevFlow Onboard

Use this skill to add MAUI DevFlow to a project after maui devflow init has installed the DevFlow skills.

When to Use

  • The project has no Microsoft.Maui.DevFlow.* package references yet.
  • The user asks how to onboard, initialize, install, integrate, or set up DevFlow.
  • The agent needs to choose between standard, Blazor, GTK, or GTK + Blazor DevFlow packages.
  • The repo uses Central Package Management and package edits need to be split correctly.
  • maui devflow init has installed skills and the user asks for the next project edits.

Route Elsewhere

  • If package references and AddMauiDevFlowAgent() are already present but the CLI cannot connect, use maui-devflow-debug.
  • If an agent is reachable and the user wants to inspect, tap, screenshot, or debug UI, use maui-devflow-debug.

Workflow

  1. Optionally run maui devflow skills check and update bundled skills before editing if it reports update-available-from-current-cli.

  2. Find MAUI app projects in the workspace. Prefer app projects with UseMaui, platform TFMs such as net*-android/net*-ios/net*-maccatalyst/net*-windows, or GTK MAUI package references.

  3. Determine whether each target project is standard MAUI, MAUI + Blazor WebView, GTK, or GTK + Blazor.

  4. Add the correct DevFlow package references. Respect Central Package Management if Directory.Packages.props is present.

  5. Register DevFlow in MauiProgram.cs inside #if DEBUG.

  6. Build and run the app.

  7. Verify with:

    maui devflow diagnose
    maui devflow wait
    maui devflow ui tree --depth 1
    

If verification fails after integration, switch to maui-devflow-debug for connectivity recovery.

Stop Signals

  • Stop before editing if multiple MAUI app projects exist and the user has not indicated which one to onboard.
  • Stop and ask before enabling DevFlow outside Debug builds.
  • Stop after package/registration edits and verify with a build before doing runtime debugging.

Critical Anti-patterns

  • Do not add versions to project PackageReference items when Directory.Packages.props is managing package versions.
  • Do not add Blazor DevFlow packages unless the app uses Blazor WebView.
  • Do not register DevFlow outside #if DEBUG unless the user explicitly asks.
  • Do not use the old builder.Services.AddMauiDevFlowAgent() pattern; use builder.AddMauiDevFlowAgent().

Package Selection

| Project flavor | Required packages | | --- | --- | | Standard MAUI | Microsoft.Maui.DevFlow.Agent | | MAUI + Blazor WebView | Microsoft.Maui.DevFlow.Agent, Microsoft.Maui.DevFlow.Blazor | | GTK MAUI | Microsoft.Maui.DevFlow.Agent.Gtk | | GTK MAUI + Blazor WebView | Microsoft.Maui.DevFlow.Agent.Gtk, Microsoft.Maui.DevFlow.Blazor.Gtk |

Blazor WebView indicators include a Microsoft.AspNetCore.Components.WebView.Maui package reference or AddMauiBlazorWebView() in MauiProgram.cs.

GTK indicators include package references such as Maui.Gtk, Platform.Maui.Linux.Gtk4, GirCore.Gtk-4.0, or Platform.Maui.Linux.Gtk4.BlazorWebView.

Central Package Management

If the repo uses Directory.Packages.props, put versions there and leave project PackageReference entries versionless.

<!-- Directory.Packages.props -->
<PackageVersion Include="Microsoft.Maui.DevFlow.Agent" Version="<current-version>" />
<!-- App.csproj -->
<PackageReference Include="Microsoft.Maui.DevFlow.Agent" />

If the repo does not use Central Package Management, put the version on the PackageReference.

MauiProgram.cs Registration

For standard MAUI:

using Microsoft.Maui.DevFlow.Agent;

// inside CreateMauiApp(), before return builder.Build();
#if DEBUG
builder.AddMauiDevFlowAgent();
#endif

For MAUI + Blazor WebView:

using Microsoft.Maui.DevFlow.Agent;
using Microsoft.Maui.DevFlow.Blazor;

// inside CreateMauiApp(), before return builder.Build();
#if DEBUG
builder.AddMauiDevFlowAgent();
builder.AddMauiBlazorDevFlowTools();
#endif

For GTK, use the .Gtk namespaces and packages. GTK apps also need to start the agent after app activation, for example app.StartDevFlowAgent() in the platform app activation flow.

For Mac Catalyst, ensure the Debug entitlements allow the in-app HTTP server:

<key>com.apple.security.network.server</key>
<true/>

Validation Checklist

  • MauiProgram.cs registers DevFlow only in Debug builds.
  • The app project references the package flavor that matches the target platform.
  • Blazor DevFlow tools are added only when the app uses Blazor WebView.
  • GTK apps start the DevFlow agent after app activation.
  • Mac Catalyst Debug entitlements include com.apple.security.network.server.
  • dotnet build succeeds.
  • A running app appears in maui devflow list.
  • maui devflow ui tree --depth 1 returns a visual tree.

References

  • See references/package-selection.md for package/flavor details.
  • See references/mauiprogram-registration.md for registration patterns.

From the file to a first result

The download contains exactly the content displayed on this page. This copy may differ from the latest version in the source repository.

View the source and supporting files

This download contains SKILL.md only. Any scripts, references, templates and dependencies are not included. Get the required files from the source, preserving their directory structure, before continuing.

1. Download the file

Download SKILL.md

From the root of a test project, save the file as .skill-downloads/maui-devflow-onboard-mrwak9h1/SKILL.md, or use the command below. This folder is for inspecting the skill before installation.

Command for macOS/Linux or WSL: requires a POSIX shell and curl. On Windows without WSL, use the download button and create the folder manually.

mkdir -p '.skill-downloads/maui-devflow-onboard-mrwak9h1' && curl --fail --show-error --location 'https://skills-guides.com/api/skills/maui-devflow-onboard-mrwak9h1/download' --output '.skill-downloads/maui-devflow-onboard-mrwak9h1/SKILL.md.part' && mv '.skill-downloads/maui-devflow-onboard-mrwak9h1/SKILL.md.part' '.skill-downloads/maui-devflow-onboard-mrwak9h1/SKILL.md'

2. Check prerequisites

Read SKILL.md before using it. If it references scripts or external services, inspect them and prepare the required access in your test environment.

No recognized prerequisites section in this file. This does not mean it is self-contained: libraries, tools and access requirements may be mentioned elsewhere in the content or source repository.

The platforms on this page are catalog indications. The paths below follow tool documentation; they do not prove this skill has been run in those tools. No minimum tool version is confirmed for this listing.

3. Load the skill

After inspection, copy the complete folder into your project using one of the commands below, then open a new tool session. The command stops if a folder with the same name already exists: compare the files before replacing it.

Claude Code
test -f '.skill-downloads/maui-devflow-onboard-mrwak9h1/SKILL.md' && test -s '.skill-downloads/maui-devflow-onboard-mrwak9h1/SKILL.md' && mkdir -p '.claude/skills' && test ! -e '.claude/skills/maui-devflow-onboard' && cp -R '.skill-downloads/maui-devflow-onboard-mrwak9h1' '.claude/skills/maui-devflow-onboard'

OpenSkills

OpenSkills must already be installed. The local install/read procedure is checked with OpenSkills 1.5.0, which requires Node.js ≥ 20.6.0. Catalog slugs are not resolved automatically.

Official OpenSkills installation
openskills install './.skill-downloads/maui-devflow-onboard-mrwak9h1'

openskills read 'maui-devflow-onboard-mrwak9h1'

Reading should display the installed file content and its base directory. It does not run the skill or install its dependencies.

For an agent that reads AGENTS.md, then sync the index. This command changes AGENTS.md: review the diff before using it.

openskills sync

Manual method or another tool: attach SKILL.md to a conversation, or open it in an agent that can read files. Include any required supporting resources. No universal folder is recognized by every tool.

4. Try a first task

Use a short, synthetic input: an API endpoint, a small document or an interface brief. In a new conversation, attach the file or give the agent its path, then adapt this request:

Read .skill-downloads/maui-devflow-onboard-mrwak9h1/SKILL.md and apply its instructions to this example: [describe a test input]. Identify any missing files, dependencies or access. Produce the result requested by the skill without inventing data or running unreviewed scripts.

Expected result: output matching the skill instructions, or a precise list of missing prerequisites. A read confirmation alone does not validate a first use. If an external resource is unavailable, that path remains untested.

Related skills