Obtain and install a Graft
A Graft is a generated Caller package. You do not write it by hand—you install it with your normal package manager. There are two common paths.
The registry URL here is only for installation. It is separate from the runtime host you set later to execute calls — see Project Key, registry, host, and credentials.
Install a public Graft
Grafts published to the public Graftcode registry can be installed without running your own Gateway or copying coordinates from Vision. Point your package manager at the public feed and install the documented package name and version.
| Caller ecosystem | Public registry URL |
|---|---|
| npm / NuGet / Composer / RubyGems | https://grft.dev/ |
| Maven / Gradle | https://grft.dev/maven2/ |
| pip | https://grft.dev/simple/ |
Maintained cross-runtime sample packages (useful for smoke-testing installs):
| Package | Example package versions |
|---|---|
grft-test-simple-car-e2e | 0.2.1 (npm, NuGet, Maven), 0.2.3 (PyPI), 0.2.4 (Composer graft package) |
grft-test-simple-car-repository-e2e | 0.2.1–0.2.2 (see supported runtimes) |
Example install commands (production registry):
dotnet add package graft.nuget.grft-test-simple-car-e2e --version 0.2.1 -s https://grft.dev/
Source for the sample Receiver: grft-test-simple-car.
Install from your own Gateway
When you expose a module, Gateway publishes a private (per-Gateway) registry identifier. Install coordinates change when Gateway restarts without a project key.
1. Wait for publication
Start Gateway against the built Receiver and wait for successful model upload in logs or Vision. Install Gateway first if needed: Run Gateway locally.
2. Open Vision
Default HTTP port is 81. When Gateway runs in a container, map host port 81 to reach Vision
(for example http://localhost:81/GV). See Deploy with Docker.
3. Copy the install command
For your runtime, copy the complete command from Vision, including registry, package name, and version.
dotnet add package <package-id> --version <version> -s <registry-from-vision>
4. Verify exports
Inspect generated namespaces, imports, and method names in the installed package.