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 | $0.00043 | $0.00553 |
| Sonnet 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 5d 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.
- 5d ago Changed · -58 tokens per session dabc34062595
- 9d 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 (213 stars, last pushed today), licensed MIT. It adds 85 tokens to every session and 1,107 once invoked, about $0.0004 per session on Opus 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.
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.
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.