maui collectionview-handler-detection.instructions.md

Platform-specific guidance for choosing the correct .NET MAUI CollectionView or CarouselView handler, the code that connects these controls to Android, iOS, Windows, and other native systems.

In plain words
What is it for?
Use it when fixing or reviewing CollectionView or CarouselView handler code and deciding which platform folder should be changed.
Why use it?
It prevents changes from being made in the wrong handler implementation, especially because iOS and MacCatalyst use a different handler from Android and Windows.

Instructions file for GitHub Copilot

Install

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.

agentmods
npx agentmods add instructions/dotnet/maui/collectionview-handler-detection
Clone the repo
git clone --depth 1 https://github.com/dotnet/maui

Made for: GitHub Copilot.

Per session 890 This file is loaded in full into every session.
When invoked 890 The same file — it is already loaded in full.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

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.

ModelPer sessionOnce invoked
Fable 5 $0.00890 $0.00890
Opus 5 $0.00445 $0.00445
Sonnet 5 $0.00178 $0.00178
Haiku 4.5 $0.00089 $0.00089

Measured 2d ago against content hash f791f09db370, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

maui collectionview-handler-detection.instructions.md 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 2d 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.

.github/instructions/collectionview-handler-detection.instructions.md · 96 lines

How it starts

The opening of the file, as written. The whole thing — 96 lines — stays where its author put it; the contents beside it link to each section on GitHub.

CollectionView Handler Detection

Handler Implementation Status

There are TWO separate handler implementations, but they apply to different platforms:

  1. Items/ (Handlers/Items/) - Contains code for ALL platforms (Android, iOS, Windows, MacCatalyst, Tizen)
  2. Items2/ (Handlers/Items2/) - Contains code for iOS/MacCatalyst ONLY

Platform-Specific Deprecation

The deprecation of Items/ only applies to iOS/MacCatalyst:

Platform Active Handler Notes
Android Items/Android/ ONLY implementation - Items2/ has no Android code
Windows Items/ ONLY implementation - Items2/ has no Windows code
iOS Items2/iOS/ Items/ iOS code is deprecated
MacCatalyst Items2/iOS/ Items/ MacCatalyst code is deprecated

CRITICAL: Items2/ is iOS/MacCatalyst only. There is NO Items2/ code for Android or Windows.


Which Handler to Work On

Decision Tree by Platform

Is the issue/PR for Android or Windows?
  YES → Work on Items/ (it's the ONLY implementation)
  NO  → Continue...

Is the issue/PR for iOS or MacCatalyst?
  YES → Work on Items2/ (Items/ is deprecated for iOS)
  NO  → Check platform and find appropriate handler

Detection Algorithm

Check which handler directory the files are in:

# Check changed files in a PR
git diff <base-branch>..<pr-branch> --name-only | grep -i "handlers/items"

# Look for path pattern:
# - Contains "/Items/Android/" → Android (ONLY implementation, work here)
# - Contains "/Items/Windows/" or ".Windows.cs" → Windows (ONLY implementation, work here)
# - Contains "/Items2/iOS/" or "Items2/*.iOS.cs" → iOS/MacCatalyst (CURRENT)
# - Contains "/Items/*.iOS.cs" (not Items2) → iOS (DEPRECATED, prefer Items2/)

Default Behavior by Platform

Platform Default Action
Android ✅ Work on Items/Android/ - it's the only option
Windows ✅ Work on Items/ Windows files - it's the only option
iOS/MacCatalyst ✅ Work on Items2/ - Items/ is deprecated for iOS

Read the full file on GitHub · 96 lines

Changes

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.

  1. 2d ago First seen · 96 lines · 890 tokens per session scan A f791f09db370

Subscribe to this mod's changes

maui collectionview-handler-detection.instructions.md is an instructions file published in the GitHub repository dotnet/maui (23,317 stars, last pushed 2d ago), licensed MIT. It adds 890 tokens to every session, about $0.0044 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.

Related

Other instructions, from other repositories

azure-sdk-for-net AGENTS.md

AGENTS.md instructions for Azure/azure-sdk-for-net, covering azure sdk for .net - ai agent guidelines, repository overview, purpose and scope, repository structure and agent interaction guidelines.

Azure/azure-sdk-for-net · 2,836 tokens

azure-sdk-for-net copilot-instructions.md

Copilot instructions for Azure/azure-sdk-for-net, covering project overview, prerequisites, folder structure, azure generator and azure management generator.

Azure/azure-sdk-for-net · 738 tokens

BlazorBindings.Maui AGENTS.md

Instructions for Dreamescaper/BlazorBindings.Maui, covering mobile guidelines, platform, razor and component conventions and blazor bindings generation.

Dreamescaper/BlazorBindings.Maui · 688 tokens

maui-labs devflow-architecture.instructions.md

Instructions for dotnet/maui-labs, covering devflow architecture, communication model, package dependency graph, the abstractions / backend split and key extension points.

dotnet/maui-labs · 2,643 tokens

maui-labs copilot-instructions.md

Instructions for dotnet/maui-labs, covering copilot instructions for maui-labs, platform-specific code, agent architecture (abstractions/core/platform pattern), mcp tool conventions and http endpoint conventions.

dotnet/maui-labs · 5,077 tokens

FloatSoda CLAUDE.md

Instructions for sumx21t-3310/FloatSoda, a project described as: Flutter-like declarative UI framework for SteamVR overlays in C#/.NET. SkiaSharp rendering, OpenVR integration, dashboard / world-space / device-tracked overlays.

sumx21t-3310/FloatSoda · 270 tokens