Uno Platform is an open-source .NET development platform that lets developers build native mobile, web, desktop, and embedded applications from one C# and XAML codebase. It is intended for .NET developers who want to share application code across multiple operating systems and device types. The catalogue entries support development workflows for Uno Platform with skills, agents, commands, and instructions.
Borrowing it
Nothing to install: this file belongs to unoplatform/uno. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.
curl -O https://raw.githubusercontent.com/unoplatform/uno/master/.claude/skills/docs-build/SKILL.mdgit clone --depth 1 https://github.com/unoplatform/unoWrote 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/unoplatform/uno/docs-build)<a href="https://agentmods.dev/skills/unoplatform/uno/docs-build"><img src="https://agentmods.dev/badge/skills/unoplatform/uno/docs-build/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/unoplatform/uno/docs-build"><img src="https://agentmods.dev/badge/skills/unoplatform/uno/docs-build.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector warn
SkillSpector: 1 finding, up to medium
These are SkillSpector’s own severities. On a checked sample its high-severity flags on skills were ~96% false positives — a documented command, a public API, a “never do X” rule — so we show them as a caution to read, not a verdict. Why →
- medium MCP Rug Pull · line 62 npx commands without a version suffix (e.g. @1.0.0) create a rug-pull risk if the upstream server is compromised and publishes a malicious update.Fix: Pin the version: npx @scope/[email protected]
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.00097 | $0.02109 |
| Opus 5.5 | $0.00039 | $0.00844 |
| Sonnet 5.5 | $0.00019 | $0.00422 |
| Haiku 4.5 | $0.00010 | $0.00211 |
Grade A, and why
docs-build 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 — 131 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Docs build & validation (DocFX)
Validate that the documentation is correct after a change: surface DocFX errors/warnings, drive
the rendered site in a real browser, and tell real content problems apart from expected noise.
Everything is under doc/ and is independent of the Uno.UI build — no
crosstargeting_override.props needed.
TL;DR validation loop
cd doc
docfx --version # MUST match build/Uno.UI.Build.csproj <DocfxVersion>; see Gotchas
pwsh -NoProfile -Command "./import_external_docs.ps1" # only if you changed external pins
docfx docfx.json 2>&1 | sed -E 's/\x1b\[[0-9;]*m//g' > /tmp/docfx.log # capture clean (no color) log
grep -iE "error|warning" /tmp/docfx.log | sort | uniq -c | sort -rn # triage
Then filter to the part you changed (§2), drive the rendered pages in a browser (§3), and confirm
they exist in _site.
1. The error/warning taxonomy — what each one means
DocFX prints error and warning lines. The ones that indicate a real content problem you
must fix (and that block/break a page):
| Signal | Meaning | How to fix |
|---|---|---|
InvalidFileLink: Invalid file link:(~/…) |
A relative link to a .md/image/path that doesn't exist |
Fix the link target or add the missing file. Watch for links to .html that should point to .md, and links missing an extension. |
UidNotFound: … invalid cross reference(s) "X" |
An xref:X / @X / <xref> points to a UID no page defines |
Fix the UID, or ensure the page defining it is included in the build. Common after renaming a uid: or removing a page. |
InvalidTocInclude: Referenced TOC file … does not exist |
A toc.yml href: includes another toc.yml that isn't there |
Fix the path, or import the external repo that provides it. (articles/implemented/toc.yml missing is expected locally — see §4.) |
DuplicateUids: Uid(X) has already been defined in … |
Two pages declare the same uid: |
Make UIDs unique; frequent when copying templates across workshops module variants. |
invalid-tab-group: Tab group with different tab id set |
Inconsistent # [Tab](#tab/…) ids within one group |
Align the tab ids across the tab group. |
Build does not reach Build succeeded / non-zero exit |
A fatal error aborted the build | Read the last error in the log; fix before anything else. |
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 First seen · 131 lines · 97 tokens per session scan A f6c34043672b
docs-build is a skill published in the GitHub repository unoplatform/uno (10,079 stars, last pushed today), licensed Apache-2.0. It adds 97 tokens to every session and 2,109 once invoked, about $0.0004 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
android-ui-journey-testing
XML-specified Android UI journey testing, interactive step execution, assertion verification, and JSON outcome reporting.
solopi-ai
A command-line framework for testing Android apps and devices with SoloPi, including on-device or cloud AI decision models. It manages devices, test cases, recorded interactions, replays, performance history, and evidence.
argent-test-ui-flow
Autonomously test an app UI (iOS or Android) by running interact-screenshot-verify loops using argent MCP tools. Use when testing UI flows, verifying login works, testing navigation, running UI test scenarios, manual QA steps, visible UI changes, or visual behavior.
argent-screenshot-diff
Compare saved or live app screenshots with the argent screenshot-diff tool. Use when testing visual regressions, before/after UI comparisons, screenshot diff checks, visible layout, spacing, color, typography, clipping, overflow, text rendering, or image/icon rendering changes.
mobile-automation
Control Android and iOS devices, emulators and simulators — launch apps, tap, swipe, type, take screenshots, read the accessibility tree. Use when a task involves a mobile device or app, mobile UI testing, or reproducing a bug on a phone.
argent-qa-e2e
Write repeatable QA regression e2e tests from test cases, tickets, or acceptance criteria. Use when the user asks to write, automate, or generate an e2e test or preserve an automated regression scenario, with deterministic setup, stable targets, executable structural or visual evidence, and two consecutive full…