Skip to content

Installation

codegen ships as one component of the CodeXX Dev-Tool Development Kit (DTDK). You don’t download codegen directly. You install the DTDK Manager once — a small terminal app — and use it to install, update, license-activate, and verify codegen and every other component.

The manager keeps each component in a versioned, side-by-side layout under ~/.codexx and exposes one binary per tool on your PATH. No sudo, no system package manager, no admin rights.

One command downloads the latest stable manager, verifies its checksum, extracts it under ~/.codexx, and adds ~/.codexx/bin to your shell profile. No GitHub account or token required.

Terminal window
curl -fsSL https://www.codexx-dtdk.com/install.sh | bash

Open a new shell afterwards so the PATH change takes effect. To also verify the release signature, append -s -- --verify (requires cosign on PATH).

Terminal window
iex ((New-Object System.Net.WebClient).DownloadString('https://www.codexx-dtdk.com/install.ps1'))

Installs under %USERPROFILE%\.codexx and prepends %USERPROFILE%\.codexx\bin to your user PATH. Open a new shell afterwards.

macOS builds are temporarily paused while the release pipeline is validated on Apple hardware. Until macOS archives ship, build from source on macOS — see the project README — or run the Linux build in an x86-64 environment.

The installer fetches the manager through a download proxy that holds a read-only token server-side — the releases live in a private repository, but you never need credentials. To pin a specific version or install a pre-release channel, download install.sh / install.ps1 and pass --tag or --channel; those paths read the private repo directly and require a GitHub token.

Don’t want to pipe a remote script straight into a shell? Download it, read it, then run it.

Terminal window
curl -fSL https://www.codexx-dtdk.com/install.sh -o install.sh
less install.sh # read it
chmod +x install.sh
./install.sh --help # list every flag
./install.sh # default install (stable, ~/.codexx, PATH)
./install.sh --verify # additionally cosign-verify the archive
Terminal window
Invoke-WebRequest https://www.codexx-dtdk.com/install.ps1 -OutFile install.ps1
Get-Content .\install.ps1 # read it
Get-Help .\install.ps1 -Detailed # list every flag
.\install.ps1 # default install
.\install.ps1 -Verify # additionally cosign-verify the archive

This is the same artifact the proxy serves to curl | bash / iex — saving it to disk just lets you audit it first.

Prefer to inspect the archive before running anything? Download it directly and set things up yourself.

Download DTDK Manager — Linux x64

Extract it into your install root and add its bin/ to your PATH:

Terminal window
mkdir -p ~/.codexx
tar -xzf codexx_dtdk_manager-*-linux-*.tar.gz -C ~/.codexx
echo 'export PATH="$HOME/.codexx/bin:$PATH"' >> ~/.bashrc
export PATH="$HOME/.codexx/bin:$PATH"
Download DTDK Manager — Windows x64

Extract the archive into %USERPROFILE%\.codexx and add %USERPROFILE%\.codexx\bin to your user PATH:

Terminal window
$root = "$env:USERPROFILE\.codexx"
Expand-Archive codexx_dtdk_manager-*-windows-*.zip -DestinationPath $root -Force
$userPath = [Environment]::GetEnvironmentVariable('Path', 'User')
[Environment]::SetEnvironmentVariable('Path', "$root\bin;$userPath", 'User')

Each archive carries a .sha256 checksum and a Sigstore signature bundle — fetch them with &asset=sha256 / &asset=sigstore on the same URL. See Supply Chain for how releases are attested and verified.

Open a new shell so the PATH change takes effect, then launch:

Terminal window
codexx_dtdk_manager

The manager is a terminal UI. Move with the arrow keys; press Enter on the codegen row to install and activate it. q quits. The manager handles the download, checksum verification, and side-by-side version management for you.

The Community tier requires no activation. For Professional or Team, activation happens inside the manager — not through a codegen CLI command. Select the codegen row, and the manager shows an activation prompt in place of the version list. Paste your license key there; the manager validates it, stores a signed offline token, and unlocks the component.

See License Activation for the cached-token model and the air-gapped path.

Terminal window
codegen --help

Should print the codegen option list. If the command isn’t found, confirm ~/.codexx/bin (or %USERPROFILE%\.codexx\bin) is on your PATH and that you opened a new shell.

One command removes the install tree, the PATH entry, and — unless you ask otherwise — the per-user config (license tokens) and cache (shared active map).

Terminal window
curl -fsSL https://www.codexx-dtdk.com/uninstall.sh | bash

The script prints what it will remove and asks for confirmation (reading your answer from the terminal even when piped), then deletes ~/.codexx, strips the marker block from ~/.bashrc / ~/.zshrc / ~/.profile, and removes ~/.config/codexx and ~/.cache/codexx. For unattended use append | bash -s -- --yes to skip the prompt. Add --keep-config to retain license tokens (so a reinstall picks them up) or --keep-cache to retain the shared active map. --dry-run previews without touching anything; --root <dir> targets a non-default install location.

Terminal window
irm https://www.codexx-dtdk.com/uninstall.ps1 | iex

The script prints what it will remove, asks for confirmation, then deletes %USERPROFILE%\.codexx, removes %USERPROFILE%\.codexx\bin from your user PATH, and removes %APPDATA%\CodeXX and %LOCALAPPDATA%\CodeXX\Cache. For unattended use, download it and run with -Yes (irm …/uninstall.ps1 -OutFile uninstall.ps1; .\uninstall.ps1 -Yes). Add -KeepConfig to retain license tokens or -KeepCache to retain the shared active map. -DryRun previews without touching anything; -Root <dir> targets a non-default install location.

If you’d rather remove things by hand:

Terminal window
# 1. Install tree (binaries, side-by-side component versions, shim).
rm -rf ~/.codexx
# 2. License tokens (skip to keep your activation for a future reinstall).
rm -rf ~/.config/codexx
# 3. Shared active map + per-tool cache.
rm -rf ~/.cache/codexx
# 4. PATH entry. install.sh appended a marker block to your shell rc files —
# open each rc that exists and delete the block bounded by:
# # >>> codexx-dtdk install begin >>>
# …
# # <<< codexx-dtdk install end <<<
sed -i '/# >>> codexx-dtdk install begin >>>/,/# <<< codexx-dtdk install end <<</d' \
~/.bashrc ~/.zshrc ~/.profile 2>/dev/null || true
Terminal window
# 1. Install tree.
Remove-Item -Recurse -Force "$env:USERPROFILE\.codexx"
# 2. License tokens (skip to keep activation for a future reinstall).
Remove-Item -Recurse -Force "$env:APPDATA\CodeXX"
# 3. Shared active map + per-tool cache.
Remove-Item -Recurse -Force "$env:LOCALAPPDATA\CodeXX\Cache"
# 4. PATH entry — strip <root>\bin from the User-scope Path.
$bin = "$env:USERPROFILE\.codexx\bin"
$parts = ([Environment]::GetEnvironmentVariable('Path','User') -split ';') |
Where-Object { $_ -and $_ -ne $bin }
[Environment]::SetEnvironmentVariable('Path', ($parts -join ';'), 'User')

Open a new shell afterwards so the PATH change takes effect.

Key Takeaways
  • codegen is installed through the DTDK Manager, not downloaded directly.
  • One PAT-free command installs the manager — download, checksum, extract, and PATH are all automatic.
  • The manager installs, updates, verifies, and license-activates every component into ~/.codexx.
  • License activation is done in the manager TUI; Community needs none. Professional and Team paste a key into the activation prompt.