Find the skill for your next task.

Browse reusable Agent Skills, each with a clear purpose and practical guidance.

api-docs

Write AND review XML API documentation for SkiaSharp (ECMA/mdoc XML in the docs submodule). Two modes: (1) ADD docs for new APIs with "To be added." placeholders; (2) REVIEW existing docs by scope for accuracy, freshness, examples, and hygiene. Triggers: "document class", "add XML docs", "write XML documentation", "fill in missing docs", "remove To be added placeholders", "review documentation", "check docs for errors", "fix doc issues", "audit the docs", "review the font docs", "are the examples correct", "update out-of-date docs", any request to add, validate, correct, or expand SkiaSharp API documentation.

5.51k repo starsObserved in 1 repos
Documents

ci-status

Check the CI build health and automation status of SkiaSharp across main and recent release branches. Collects the last N builds from the AzDO pipeline chain (Public + Native → Managed → Tests) and all GitHub Actions workflows from mono/SkiaSharp and mono/SkiaSharp-API-docs, providing a daily dashboard view with AI-powered analysis of failures, regressions, and flakes. Use when user asks to: - Check overall CI health - See build status across branches - Get a daily CI summary - Check if main is green - See recent build failures - Monitor branch health - Identify flaky tests or chronic failures - Determine if a release branch is shippable - Check GitHub Actions workflow health - See what automation is failing Triggers: "CI status", "build health", "is main green", "CI dashboard", "daily build status", "check builds", "are builds passing", "CI overview", "pipeline health", "branch build status", "CI report", "why is CI red", "what automation is failing", "GitHub Actions status".

5.51k repo starsObserved in 1 repos
DevOps & Security

issue-bulk-process

Bulk triage and reproduce multiple SkiaSharp GitHub issues in a single command. Orchestrates parallel triage agents then serial reproduction agents, and presents a consolidated summary. Triggers: "bulk process issues", "triage and repro these issues", "process issues 3400 3428 3429", "process the newest 10 issues", "bulk triage", "batch process issues", any request to triage or reproduce multiple issues at once.

5.51k repo starsObserved in 1 repos
Testing & Quality

issue-fix

Fix bugs in SkiaSharp C# bindings. Structured workflow for investigating, fixing, and testing bug reports. Triggers: Crash, exception, AccessViolationException, incorrect output, wrong behavior, memory leak, disposal issues, "fails", "broken", "doesn't work", "investigate issue", "fix issue", "look at #NNNN", any GitHub issue number referencing a bug. For adding new APIs, use `api-add-review` skill instead.

5.51k repo starsObserved in 1 repos
Testing & Quality

issue-repro

Reproduce a SkiaSharp issue systematically and capture structured reproduction results. Handles bugs (verify reported behavior) and enhancements (confirm feature is missing). Produces schema-validated JSON with step-by-step commands, outputs, environment details, and conclusion. Triggers: "repro #123", "reproduce #123", "reproduce issue", "try to reproduce", "can you reproduce", "repro this bug", "create reproduction".

5.51k repo starsObserved in 1 repos
Testing & Quality

memory-leak-fixer

Scan SkiaSharp for native ownership / disposal memory leaks AND fix them with a red→green regression test. Two combined modes in one skill: (1) SCAN — hunt the SkiaSharp leak signature (undisposed SKObject handle, wrong `owns:` flag, same-instance double-dispose, unremoved event/handler subscription, `fixed`-pointer lifetime) and empirically confirm it; (2) FIX — write a failing regression test, implement the minimal idiomatic fix, prove it goes green, and open a PR. Triggers: "memory leak", "leak scan", "leak hunter", "find leaks", "disposal bug", "not disposed", "undisposed handle", "owns flag", "double free", "AccessViolation on dispose", "native memory grows", "handle leak", "GC does not collect SKObject", "fix the leak", any request to proactively find or fix SkiaSharp memory/disposal leaks. For a user-reported functional bug that is not a leak, use `issue-fix` instead.

5.51k repo starsObserved in 1 repos
Testing & Quality

native-dependency-update

Update native dependencies (libpng, libexpat, zlib, libwebp, harfbuzz, freetype, libjpeg-turbo, etc.) in SkiaSharp's Skia fork. Handles security CVE fixes, bug fixes, and version bumps. Use when user asks to: - Bump/update a native dependency (libpng, zlib, expat, webp, etc.) - Fix a CVE or security vulnerability in a native library - Update Skia's DEPS file - Check what version of a dependency is currently used - Analyze breaking changes between dependency versions Triggers: "bump libpng", "update zlib", "fix CVE in expat", "update native deps", "what version of libpng", "check for breaking changes". For security audits (finding CVEs, checking PR coverage), use the `security-audit` skill instead.

5.51k repo starsObserved in 1 repos
Development

performance-fixer

Scan SkiaSharp for managed-C# performance opportunities AND fix them, proving each with a BenchmarkDotNet measurement plus a behaviour-parity test. Two modes: (1) SCAN — hunt the SkiaSharp perf signature (pure math round-tripping through native P/Invoke, an allocating parse/convert helper or missing Span overload, a hot getter redoing native lookups every call, per-element interop in a loop, avoidable marshalling/struct copies, or an unsized/ contended collection) and prove the win with a benchmark; (2) FIX — implement the minimal managed optimization, prove it is faster AND behaviour-identical, and open a PR. Triggers: "performance", "perf scan", "optimize", "make it faster", "hot path", "reduce allocations", "P/Invoke overhead", "interop overhead", "speed up", "port to managed", "add Span overload", "cache the wrapper", "why is this slow", any request to find or fix SkiaSharp managed performance problems. For a functional bug use `issue-fix`; for a memory/disposal leak use `memory-leak-fixer`.

5.51k repo starsObserved in 1 repos
Testing & Quality

pr-commit-message

Write or improve high-signal PR merge commit messages and squash commit messages. Use this whenever the user says "create a commit message for this PR", "write a merge commit message", "draft the squash commit body", "improve this commit message", or asks for a message that preserves the why behind a pull request. This skill inspects the PR, linked issues, and code changes so the final commit message is readable and useful from git history alone.

5.51k repo starsObserved in 1 repos
Development

release-branch

Create a release branch for SkiaSharp. Use when user says "release X", "start release X", "create release branch for X", "I want to release", or "release now". This is the FIRST step of releasing - creates branch and pushes to trigger CI. Can auto-detect next preview version from main branch.

5.51k repo starsObserved in 1 repos
DevOps & Security