# Set up crossbind

These instructions add crossbind to the project in the current directory, so it can call C++ or Rust from JavaScript or TypeScript. Run the commands yourself.

## 1. Install the crossbind skill

The skill carries the project inspector, the current port catalog and the per-framework playbooks:

```shell
npx skills add https://github.com/crossbind/crossbind/tree/main/agents/skills --global --yes
```

If the command is unavailable or fails, go on without it: the documentation index at https://crossbind.dev/llms.txt covers the same ground.

## 2. Add crossbind to the project

If the current directory holds no project, report that the skill is installed and stop. Otherwise use the skill, or start from https://crossbind.dev/llms.txt and follow the links relevant to this project:

1. Identify the package manager, framework or bundler, target runtimes, existing native sources, and any crossbind configuration.
2. Choose the integration, compatible package versions, release channel, and platform variants from the documentation. Prefer supported prebuilt ports and generated bindings. Install every crossbind package, ports included, from the npm `beta` tag; the default tag is older.
3. Reuse existing native code. If none exists, add a minimal C++ example and call it from the application.
4. Configure the build and runtime initialization for the detected targets. Reuse existing configuration and dependency entries, preserve unrelated behavior, and apply platform requirements where relevant.
5. Run the relevant build and verify at least one JavaScript-to-native call.

Follow the repository's conventions and make the smallest complete integration. Ask the user only when missing information prevents a correct implementation.

## 3. Report

Tell the user what you installed and changed, the commands you ran and their results, and anything you could not verify. Include the Wasm artifact size when one is produced. If you installed the skill, say that a new session may be needed before it loads.
