add-api

Automate SkiaSharp C# API creation by wrapping Skia C++ functionality.

5.5k|644|Updated Feb 22, 2016
One-click install
npx skills add https://github.com/mono/SkiaSharp --skill add-api
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: add-api
Source: https://github.com/mono/SkiaSharp/tree/main/.github/skills/add-api
Command: npx skills add https://github.com/mono/SkiaSharp --skill add-api

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

Add new C# APIs to SkiaSharp by wrapping Skia C++ functionality. Structured 6-phase workflow: C++ analysis → C API creation → submodule commits → binding generation → C# wrapper → testing.

Core Features & Use Cases

  • End-to-end automation of API binding: from C++ headers to ready C# wrappers.
  • Enforces a six-phase workflow with mandatory steps to ensure ABI stability and test coverage.
  • Use Case: When a new Skia API is requested, the skill guides through analysis, API surface creation, and validated bindings.

Quick Start

Use the add-api skill to start a 6-phase binding for a new Skia API, following the documented workflow.

Frequently Asked Questions about add-api

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I create C# bindings for Skia C++ APIs?

To create C# bindings for Skia C++ APIs, you follow a six-phase workflow: C++ analysis, C API creation, submodule commits, binding generation, C# wrapper implementation, and testing to ensure ABI stability.

What is the process for wrapping Skia C++ functionality in C#?

Wrapping Skia C++ functionality in C# involves analyzing C++ headers, creating a C API surface, committing submodules, generating bindings, and writing C# wrappers with mandatory testing for ABI stability.

Can I automate SkiaSharp API binding generation from C++ to C#?

Yes, you can automate SkiaSharp API binding generation from C++ to C# using a structured workflow that handles C++ analysis, C API creation, binding generation, and native builds to produce safe, tested C# wrappers.

Does the SkiaSharp C# binding workflow require branch management?

Yes, the SkiaSharp C# binding workflow requires careful branch management alongside generator execution and native builds to ensure ABI stability and testability across the six phases.

How do I ensure ABI stability when adding new SkiaSharp C# APIs?

To ensure ABI stability when adding new SkiaSharp C# APIs, follow the enforced six-phase workflow with mandatory steps for C API creation, submodule commits, binding generation, and native builds.

What are the limitations of automating SkiaSharp API bindings?

Automating SkiaSharp API bindings requires careful branch management, generator execution, and native builds, meaning the process is limited to scenarios where new Skia API surface needs safe, tested C# bindings across the six-phase workflow.