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 Phaedra-Solutions/cursor-rules --skill migrate-xamaringit clone --depth 1 https://github.com/Phaedra-Solutions/cursor-rulesWrote 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/phaedra-solutions/cursor-rules/migrate-xamarin)<a href="https://agentmods.dev/skills/phaedra-solutions/cursor-rules/migrate-xamarin"><img src="https://agentmods.dev/badge/skills/phaedra-solutions/cursor-rules/migrate-xamarin/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/phaedra-solutions/cursor-rules/migrate-xamarin"><img src="https://agentmods.dev/badge/skills/phaedra-solutions/cursor-rules/migrate-xamarin.svg" alt="Reviewed on agentmods" width="80" height="20"></a>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.00134 | $0.01211 |
| Opus 5.5 | $0.00054 | $0.00484 |
| Sonnet 5.5 | $0.00027 | $0.00242 |
| Haiku 4.5 | $0.00013 | $0.00121 |
Grade A, and why
migrate-xamarin 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 3d 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 — 65 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Migrate Xamarin to .NET MAUI
When to use
- The app uses Xamarin.Forms, Xamarin.iOS or Xamarin.Android (see
legacy/xamarin) and needs store releases again. - The user asks to move to .NET MAUI or .NET for iOS/Android.
Before you start
- Inventory and write it to the PR or
docs/xamarin-inventory.md:- projects and TFMs,
packages.configvsPackageReference; - every NuGet package and its MAUI-compatible replacement (or "none");
- custom renderers, effects, behaviors,
DependencyServiceregistrations, platform-specific code; - stored data: SecureStorage/Keychain keys, Preferences, SQLite file paths, push registration, app groups and entitlements.
- projects and TFMs,
- Ask the user:
- target (default .NET MAUI 10 on .NET 10; MAUI 10 is supported to 11 May 2027, MAUI 11 ships with .NET 11);
- whether third-party UI vendors (Syncfusion, Telerik, DevExpress) have MAUI licenses;
- whether package installs are approved (
core/supply-chain); - whether GitHub Copilot upgrade may assist (needs a Copilot subscription and sends code to Copilot models). The steps below work without it.
- Tooling: Visual Studio 2026 or VS Code with the .NET MAUI extension, Xcode 26 on a Mac for iOS, Android SDK API 36.
- Working tree clean; new branch; record screenshots or UI tests of the main flows on the current app.
Steps
- Shared code first: convert shared projects to SDK-style
net10.0class libraries (or keepnetstandard2.0during the transition); fix APIs that don't exist on .NET. - Create the MAUI project: a single project (
dotnet new maui) with the sameApplicationId(bundle ID / package name),ApplicationDisplayVersionhigher than the store version, and the same signing identities. - Port the UI:
- namespaces
Xamarin.Forms→Microsoft.Maui.Controls,Xamarin.Essentials→Microsoft.Maui.*APIs; - layouts: check
StackLayout/Gridspacing andRelativeLayout(moved to a compatibility package),Frame→Border; - custom renderers → handlers (or register them temporarily with
.AddCompatibilityRendererwhile porting); DependencyService→ constructor injection viaMauiProgram.CreateMauiApp();App.xamlresources and styles; fonts and images registered in the project file.
- namespaces
- Platform projects: move
MainActivity,AppDelegate,Info.plist,AndroidManifest.xmland entitlements intoPlatforms/; settargetSdk36 and the iOS deployment target; keep URL schemes, associated domains and push configuration. - Data continuity: read existing SecureStorage, Preferences and SQLite paths with the same keys and locations so users stay signed in; write a one-time migration where formats changed.
- Packages: replace each Xamarin package with its MAUI equivalent; run
dotnet list package --vulnerable --include-transitive. - Show the diff and results; wait for approval. Commit only when asked (
git-commitskill). Then applymobile/mobile-securityandlanguages/csharp.
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.
- 3d ago First seen · 65 lines · 134 tokens per session scan A 0dcdbdd6eb49
migrate-xamarin is a skill published in the GitHub repository Phaedra-Solutions/cursor-rules (4 stars, last pushed 2d ago), licensed MIT. It adds 134 tokens to every session and 1,211 once invoked, about $0.0005 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-11-01.
Other skills, from other repositories
maui-safe-area
.NET MAUI safe area and edge-to-edge layout guidance for .NET 10+. Covers the new SafeAreaEdges property, SafeAreaRegions enum, per-edge control, keyboard avoidance, Blazor Hybrid CSS safe areas, migration from legacy iOS-only APIs, and platform-specific behavior for Android, iOS, and Mac Catalyst. USE FOR: "safe…
maui-app-lifecycle
.NET MAUI app lifecycle guidance — the four app states, cross-platform Window lifecycle events (Created, Activated, Deactivated, Stopped, Resumed, Destroying), platform-specific lifecycle mapping, backgrounding and resume behavior, and state-preservation patterns. USE FOR: "app lifecycle", "window lifecycle events"…
android-clean-architecture
Clean Architecture patterns for Android and Kotlin Multiplatform projects — module structure, dependency rules, UseCases, Repositories, and data layer patterns.
kotlin-coroutines-flows
Kotlin Coroutines and Flow patterns for Android and KMP — structured concurrency, Flow operators, StateFlow, error handling, and testing.
maui
Build, review, or migrate .NET MAUI applications across Android, iOS, macOS, and Windows with correct cross-platform UI, platform integration, and native packaging assumptions. USE FOR: working on cross-platform mobile or desktop UI in .NET MAUI; integrating device capabilities, navigation, or platform-specific code…
uno-platform
Build cross-platform .NET applications with Uno Platform targeting WebAssembly, iOS, Android, macOS, Linux, and Windows from a single XAML/C# codebase. USE FOR: building cross-platform apps from a single C# and XAML codebase; targeting WebAssembly, iOS, Android, macOS, Linux, and Windows simultaneously; migrating WPF…