Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add dotnet/maui-labs --skill maui-performancegit clone --depth 1 https://github.com/dotnet/maui-labsWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/dotnet/maui-labs/maui-performance)<a href="https://agentmods.dev/skills/dotnet/maui-labs/maui-performance"><img src="https://agentmods.dev/badge/skills/dotnet/maui-labs/maui-performance/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/dotnet/maui-labs/maui-performance"><img src="https://agentmods.dev/badge/skills/dotnet/maui-labs/maui-performance.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector pass
What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00085 | $0.01107 |
| Opus 5.5 | $0.00034 | $0.00443 |
| Sonnet 5.5 | $0.00017 | $0.00221 |
| Haiku 4.5 | $0.00009 | $0.00111 |
Grade A, and why
maui-performance scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 1mo ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 117 lines — stays where its author put it; the contents beside it link to each section on GitHub.
MAUI Performance
Use this skill when the user reports a measurable performance symptom or asks for a performance review. Measure first, then change the smallest thing that can explain the symptom.
Workflow
-
Identify the symptom: startup, first page render, scrolling, navigation, memory, image loading, or network-bound delays.
-
Inspect target frameworks and configuration. Prefer Release builds for meaningful startup and runtime measurements.
-
For startup, use the MAUI CLI profiling surface:
maui profile startup --helpThen run the target app with the appropriate platform/device options.
-
For UI runtime issues, inspect visual tree depth and logs when DevFlow is available.
-
Apply targeted fixes and re-measure.
High-Value Fix Areas
| Symptom | Check |
|---|---|
| Slow startup | Startup profile, excessive work in MauiProgram, synchronous I/O, eager service construction, font/image count |
| Slow bindings | Missing x:DataType, reflection-heavy bindings, converters doing expensive work |
| Janky lists | CollectionView inside ScrollView, complex templates, missing item sizing strategy, image decode size |
| Layout cost | Deep nested layouts, unnecessary Grid nesting, repeated measure invalidations |
| Image memory | Oversized source images, missing MAUI image resizing, unbounded remote image caching |
| Release regression | Debug-only diagnostics leaking into Release, linker/trimming differences |
Image Memory Guidance
A 4000×4000 RGBA PNG decodes to ~64 MB in memory regardless of how small it appears on screen. A 200×200 display-sized image decodes to ~160 KB — 400× less memory. Apply these changes when large images cause scrolling or memory issues:
- Resize images to display size before adding to the project.
- Use the
MauiImagebuild action in.csprojwithBaseSizefor automatic platform-specific resizing:<MauiImage Include="Resources/Images/*.png" BaseSize="400,400" /> - Decode images to display size at runtime when loading from remote URLs.
BaseSizeonly applies to packaged build-time image resources; it does not resize downloaded, camera, gallery, or user-imported images. - Use WebP or SVG for icons and logos that need to scale.
- For list rows, generate or download thumbnails — never decode 4000 × 4000
images inside a
CollectionViewitem template.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 1mo ago Changed · -58 tokens per session dabc34062595
- 1mo ago First seen · 117 lines · 143 tokens per session scan A 3335affa78a6
maui-performance is a skill published in the GitHub repository dotnet/maui-labs (229 stars, last pushed today), licensed MIT. It adds 85 tokens to every session and 1,107 once invoked, about $0.0003 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
argent-metro-debugger
Debug a JS runtime via CDP using argent debugger tools. Primary path is React Native via Metro (iOS / Android / Vega); a subset of the tools (debugger-connect, debugger-status, debugger-evaluate, debugger-log-registry) also drive a Chromium (CDP) app's renderer (an Electron app, or any Chromium browser exposing CDP)…
argent-react-native-optimization
Optimizes a React Native app by profiling first to find real bottlenecks, then sweeping for mechanical issues. Entry-point for all performance work. Use when the app feels slow, user asks to optimize, fix re-renders, reduce jank, or improve startup. Delegates to argent-react-native-profiler for measurement.
argent-native-profiler
Native profiling for CPU hotspots, UI hangs, memory issues. iOS via xctrace; Android via Perfetto. Use when diagnosing native-level performance issues.
argent-react-native-app-workflow
Step-by-step workflows for developing or debugging React Native apps on iOS simulator or Android emulator. Use when starting the app, debugging Metro, fixing builds, diagnosing runtime errors, or running tests.
symbolication-setup
Configure crash symbolication for readable stack traces. Use when setting up dSYMs (iOS), ProGuard/R8 mappings (Android), or source maps (React Native).
network-tracing
Instrument API requests with spans and distributed tracing. Use when tracking request latency, correlating client-backend traces, or debugging API issues.