Skip to main content
ntctl installs and operates the NeuralTrust platform on Kubernetes. It is a single binary with Helm built in, and all it needs is a kubeconfig: no helm or kubectl on your machine. It installs the same neuraltrust-platform chart that the Helm instructions use, from the same values. A release made with one can be managed with the other, so you can switch at any time. The install guides show both paths: Hybrid, Self-hosted and Central.

Install ntctl

The script downloads the release for your OS and architecture and checks it against the release’s checksums.txt. To read the script before you run it, download it first and then run it with sh.

Verify the release

Every release publishes checksums.txt, signed with keyless cosign by the repository’s release workflow, plus an SBOM for each archive. When cosign is installed, the install script verifies the signature as well as the checksum. Set NTCTL_REQUIRE_SIGNATURE=1 to make that check mandatory. To verify a download by hand, fetch checksums.txt and checksums.txt.sigstore.json from the same release:
ntctl version prints the installed version and the latest chart, and says when a newer ntctl is out.

Commands

Run ntctl <command> -h for every flag of a command. How to use them is in Upgrades, Validation and Troubleshooting.

Flags

Every command that reaches the cluster accepts these: install, upgrade, preflight and render also take the values that shape an install. Values are layered as Helm layers them: ntctl’s generated defaults, then -f files, then explicit flags. install and upgrade add --yes (ask nothing, take defaults) and --timeout (default 15 minutes). install also takes --registry-key, --image-registry, --image-registry-node-auth, --firewall in-cluster|hosted, --secrets-mode print, --save-values and, when signed in, --trustgate-instance / --trustguard-instance.

Environment variables

Credentials are never flags, so they stay out of shell history. ntctl install reads them from the environment, or asks for them with input hidden, and writes them only to Kubernetes Secrets in the install namespace.

Signing in to the console

ntctl login signs you in to the NeuralTrust console in the browser, where you also choose the organization. After that, ntctl install creates or reuses a private TrustGate and TrustGuard instance and fetches their tokens itself, so the console’s install wizard is not needed.
The tokens go straight into Kubernetes Secrets. The session is saved in ~/.config/ntctl/credentials.json, readable only by you, and is renewed until it expires or you run ntctl logout. Tokens in the environment take precedence over the session.

Exit codes

Exit code 3 lets a pipeline gate on ntctl preflight or ntctl doctor without parsing their output. Both also print --output json.