Native Addons
SkillDev toolsWork on Node3D C++ addons, addon-tools bindings, binding.gyp/common.gypi, install.js, ts/native.ts, native handles, lifetime safety, and native verification.
Available today. Use it from your connected AI after setup.
No other account needed.
Connect ahel once, and every AI you use reads what you have installed.
Then ask your AI: use the Native Addons skill
What this skill tells your AI
The instructions your AI receives, as published by node-3d/node-3d in .agents/skills/native-addons/SKILL.md and read by ahel’s review.
Owns
Native addon source/binding contracts and package-native plumbing.
Workflow
- Identify the affected standalone package and inspect C++ exports before changing TypeScript native types.
- Keep
ts/native.tsa narrow, precise adapter over the binary surface. - Validate external inputs, lengths, pointer/handle semantics, ownership, and destroyed-object async paths.
- Preserve standalone build/install behavior; do not introduce root-only paths.
- For standalone native consumer validation, install with normal
npm ciso dependencypostinstallhooks provide their binary artifacts. Reserve--ignore-scriptsfor metadata-only work that will not build, load, or run native code. Never invoke a dependency installer from the consumer directory: its lifecycle working directory is part of its binary-path contract. - Run the focused native/build/type/test checks that match the changed layer.
- If public native behavior changes, ensure Contract Gate is YES and synchronize wrapper tests/docs/examples as needed.
Binding Boundary Policy
Follow docs/adr/0015-native-addon-cpp-binding-organization.md for every
non-trivial native addon. bindings.cpp is the mount table only; place API
wrappers, callback bridges, state, and resource behavior in thematically named
files. Prefer the matching addon-tools argument and return macro for ordinary
JS arity/type conversion. Add custom checks only for an upstream constraint,
memory/ownership safety, or an explicitly documented Node3D contract; do not
duplicate macro checks or add speculative abstraction at the binding boundary.
Load References
Load .agents/references/native-addons.md for package shape, binding organization,
GYP/install conventions, or pointer/lifetime rules.
Add $publishing only for package/pack/install release state, not for ordinary
native implementation work.
Signals
- GitHub stars
- 64
- Forks
- 3
- Last commit
- Sep 2026
Advanced
- Catalog kind
- skill
- Gateway key
native-addons- Source
- github.com/node-3d/node-3d