Skip to content
cccskills
FreePublished on GitHub

native-addons

Work on Node3D C++ addons, addon-tools bindings, binding.gyp/common.gypi, install.js, ts/native.ts, native handles, lifetime safety, and native verification.

The English summary is being prepared. Showing the original description.

node-3d/node-3d67 stars(GitHub 67 + cccskills 0)

Run score Not tested

See how to install

Files included (2)

  • SKILL.md2.4 KB
  • agents/openai.yaml185 B

SKILL.md (original)

Review the instructions the agent will receive before you install.

Native Addons

Owns

Native addon source/binding contracts and package-native plumbing.

Workflow

  1. Identify the affected standalone package and inspect C++ exports before changing TypeScript native types.
  2. Keep ts/native.ts a narrow, precise adapter over the binary surface.
  3. Validate external inputs, lengths, pointer/handle semantics, ownership, and destroyed-object async paths.
  4. Preserve standalone build/install behavior; do not introduce root-only paths.
  5. For standalone native consumer validation, install with normal npm ci so dependency postinstall hooks provide their binary artifacts. Reserve --ignore-scripts for 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.
  6. Run the focused native/build/type/test checks that match the changed layer.
  7. If public native behavior changes, ensure Contract Gate is YES and synchronize wrapper tests/docs/examples as needed.

On ELF platforms, link redistributable shared libraries through linker search directories and logical -l names. Do not pass a slash-containing build or SDK path for a runtime .so dependency unless that dependency has a verified portable DT_SONAME. Keep colocated runtime libraries discoverable through $ORIGIN and validate the packed package from an isolated consumer job.

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.

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

ci

Free

Maintain Node3D GitHub Actions, reusable CI patterns, install modes, matrices, native/GPU/platform limits, lint/test/build jobs, and validation semantics.

The English summary is being prepared. Showing the original description.

node-3d/node-3d67Updated Oct 15, 2026

Work on CUDA, OpenCL, GLSL compute, GL/CUDA or GL/OpenCL interop, GPU data ownership, kernels, argument packing, and compute-driven rendering.

The English summary is being prepared. Showing the original description.

node-3d/node-3d67Updated Oct 15, 2026

core

Free

Work on @node-3d/core browser-like runtime, Document/Window/canvas behavior, WebGL/Three.js compatibility, globals, context and resource behavior.

The English summary is being prepared. Showing the original description.

node-3d/node-3d67Updated Oct 15, 2026

deps

Free

Work on Node3D deps-* packages, third-party binaries/headers, getPaths/bin/include contracts, redistribution, provenance, and binary layout consumers.

The English summary is being prepared. Showing the original description.

node-3d/node-3d67Updated Oct 15, 2026

docs

Free

Write and maintain Node3D package READMEs, API text, usage snippets, package roles, platform/install notes, and source-backed consumer documentation.

The English summary is being prepared. Showing the original description.

node-3d/node-3d67Updated Oct 15, 2026

Create, review, or maintain Node3D runnable examples, consumer-style package imports, feature demos, vendor adaptations, assets, and example validation.

The English summary is being prepared. Showing the original description.

node-3d/node-3d67Updated Oct 15, 2026

See all skills by node-3d

Report a problem with this skill