dart-setup-ffi-assets agent skill by flutter
Guides compiling and packaging C and C++ source code into dynamic or static libraries using Dart's Native Assets hook system and package:native_toolchain_c.
At a glance
| Publisher | Flutter Official |
|---|---|
| Repository | flutter/skills (24 listed skills) |
| Category | Developer Tools and Frameworks |
| License | BSD-3-Clause |
| Last commit | October 16, 2026 (repository) |
| SKILL.md | 412 lines, 2,047 words |
| Bundled files | 1 file |
| Quality score | 78/100 · C Passes all seven graded checks |
| Security scan | Not scanned |
| README badge | Get the listing badge and raise the score |
Before you install
Read from the skill's files at the directory's October 19, 2026 snapshot: what ships with it, what its code reads, and the terms it is published under.
- Bundled scripts: none.
- License: BSD-3-Clause, an open-source or open-content license.
Install dart-setup-ffi-assets
The skills CLI works with Claude Code, Codex, Cursor and other agents; the other routes copy the folder by hand.
npx skills add https://github.com/flutter/skills/tree/main/skills/dart-setup-ffi-assets
tmp="$(mktemp -d)"
git clone --depth 1 https://github.com/flutter/skills.git "$tmp/repo"
mkdir -p .claude/skills
cp -R "$tmp/repo/"skills/dart-setup-ffi-assets .claude/skills/
rm -rf "$tmp"
python3 ~/.codex/skills/.system/skill-installer/scripts/install-skill-from-github.py \
--repo flutter/skills \
--path skills/dart-setup-ffi-assets
flutter/skills is third-party code. Read SKILL.md and any bundled scripts before you install it.
How the author describes it
Guides agents in compiling and packaging C/C++ source code into dynamic or static libraries (Code Assets) using Dart's Native Assets hook system (via hook/build.dart and hook/link.dart utilizing package:hooks and package:native_toolchain_c). Use when a user asks to: 'setup native assets', 'compile C/C++ source code', 'bundle dynamic libraries', 'build native C code', 'link native assets', 'implement build.dart or link.dart hooks', or 'integrate C/C++ interop in Dart/Flutter'. Helps agents avoid manual toolchain orchestration and configures secure hash-validated binary downloads or advanced linker tree-shaking with package:record_use mapping.
From the description field of SKILL.md. Agents read this line to decide when to load the skill.
Sections in SKILL.md
- Contents
- Introduction
- Constraints
- Native Interop Packages
- Step-by-Step Workflow
- Step 1: Add Dependencies
- Step 2: Define C Specifications
- Step 3: Implement Build and Link Hook Scripts
- Step 4: Run the Hook Cycle
- Choosing an Integration Approach
- Method 1: Local Compilation with Linker Tree-Shaking (Recommended)
- Prerequisite Host Compiler Toolchains
- C Source and Bindings Setup
- Defining the C Library Build Spec
- Implementing hook/build.dart
- Implementing hook/link.dart
Files in the skill folder
SKILL.md
Suede Skill Check: 78/100 · C
Report snapshot · · graded-v2
The rubric totals 100 points; published scores are capped at 99. Security scan: not scanned.
Source revision: b60d0736a33a. Report version fde999b3dcc2. Badge URLs follow the latest listing; save the report to keep this version.
Download report · Request a fresh review
What to review next
- Boundary clause: 0 of 4 points. 4 when the description says when not to use the skill (“Not for …”, “Do not use …”, “Use … instead”).
- Reference files: 0 of 3 points. 3 when the skill folder ships a references/, reference/ or docs/ folder.
- Description length: 3 of 5 points. 5 for 150–600 characters; 3 for 100–900; 1 for 50–1,024.
Add declarations and bundled files when they describe the skill’s actual needs. Update the source, then request a fresh review with the changed commit or PR.
dart-setup-ffi-assets passes the required frontmatter check and all seven graded checks, which cover the SKILL.md format, a declared license and a commit in the last year. Those checks earn 56 of the score’s points; the rest come from description quality, instruction depth, bundled files, maintenance and curated-list citations. How the score works.
See the checks and points
| Check | Result |
|---|---|
| Frontmatter parses and declares a name and a description | Pass |
| Name uses lowercase letters, digits and hyphens, 64 characters or fewer | Pass |
| Name matches the skill's folder name | Pass |
| Description is between 50 and 1,024 characters | Pass |
| Description says when an agent should use the skill | Pass |
| SKILL.md body is 500 lines or fewer | Pass |
| A license is declared in the frontmatter or the repository | Pass |
| Repository has a commit in the last 12 months | Pass |
| Score component | Points |
|---|---|
| Structural checks | 56 of 56 |
| Description length | 3 of 5 |
| Boundary clause | 0 of 4 |
| Example request | 3 of 3 |
| Instruction depth | 7 of 7 |
| Reference files | 0 of 3 |
| Bundled scripts | 0 of 2 |
| Recent maintenance | 9 of 9 |
| Curated-list citations | 0 of 7 |
| Tool permissions declared | 0 of 2 |
| Compatibility declared | 0 of 2 |
Show the listing and raise the score
dart-setup-ffi-assets is listed with 78/100 · C. This badge links to its Suede listing. Skills scoring 80–99 add a numeric and a letter quality shield; the largest open points for dart-setup-ffi-assets are boundary clause (4), reference files (3) and bundled scripts (2). Send your repository and the points you want to raise, then request a fresh review after updating the skill.
[](https://skills.suedeai.ai/directory/flutter/skills/dart-setup-ffi-assets/)
<a href="https://skills.suedeai.ai/directory/flutter/skills/dart-setup-ffi-assets/"><img src="https://skills.suedeai.ai/directory/badge.svg" alt="Suede Skills Directory: listed" height="20"></a>
Where this skill is cited
flutter/skills is listed from its publisher's official collection or a listing request.