Skip to content

Install, verify, update, and roll back the Tedix CLI, a small program installed on your machine.

Install the Tedix CLI

Availability: The standalone CLI is a public beta. It can be installed without source access, but organization operations still require membership in an existing or invited Tedix organization. The OSS product source and stable self-hosted releases remain private. See Release status.

The Tedix CLI is a small program installed on your machine. It covers Home conversations, Code Mode, Work Items, skills, automations, flows, engine observation, and tedi operations. The standalone binary includes Bun and its runtime dependencies. You do not need access to the Tedix source repository or a local Bun installation for gateway operations. The optional tedix setup and tedix dev local-product commands instead need Bun and Node.js 22+ for Wrangler. Run tedix setup from any directory to use an existing checkout or acquire the matching source release (GitHub access is required while the repository is private). tedix setup --yes selects offline mode; tedix dev resumes the saved installation from anywhere. Local startup does not require Tedix login. See Getting started for offline and own-account Workers AI evaluation, and Skills, automations, flows, and runs for the execution model.

Install

macOS and Linux users can install the latest public release with:

curl -fsSL https://downloads.tedix.dev/install.sh | sh

The installer detects the operating system and architecture, downloads the matching immutable release, verifies it against SHA256SUMS, and installs tedix into ~/.local/bin by default. Downloads retry bounded transient failures, checksum tools run with a neutral locale, and the installer checks that the destination is writable before downloading the binary.

~/.local/bin is not on the default macOS PATH, so a new shell cannot find tedix until that directory is added. The installer detects this, appends the directory to your shell profile (~/.zshrc, ~/.bash_profile, or ~/.config/fish/config.fish), and prints exactly what it changed. Open a new terminal afterwards, or run the export line it prints to use tedix in the current one.

Set TEDIX_NO_MODIFY_PATH=1 to keep the installer out of your shell profile. It then only prints the line to add yourself:

export PATH="$HOME/.local/bin:$PATH"

Verify the installation in a new terminal:

command -v tedix
tedix --version
tedix auth status

To install into a directory that is already on PATH:

curl -fsSL https://downloads.tedix.dev/install.sh |
  TEDIX_INSTALL_DIR=/usr/local/bin sh

Supported platforms

Platform Architecture Public artifact Installer support
macOS Apple silicon (arm64) yes yes
macOS Intel (x64) yes yes
Linux glibc arm64 yes yes
Linux glibc x64 yes yes
Windows x64 experimental manual download

The beta artifacts are checksum-verified but not yet code-signed or notarized. Windows remains experimental. Homebrew, Alpine/musl, and baseline pre-AVX2 x64 installations are not currently supported.

Install an exact version

Pinning a version from latest.json or a release manifest makes installs and rollbacks reproducible:

curl -fsSL https://downloads.tedix.dev/install.sh |
  TEDIX_CLI_VERSION="VERSION_FROM_MANIFEST" sh

The CLI does not silently update itself. For an installer-managed binary, use the explicit lifecycle commands:

tedix update --check
tedix update
tedix update "VERSION_FROM_MANIFEST" --force
tedix rollback

Checks never change the installation. tedix update --check <version> verifies that an exact release and its platform artifact are published, then compares it with the current version. Updates fetch fresh bounded metadata, stream the artifact with a strict size limit, verify its size and SHA-256 hash, smoke-test it, and atomically replace the active macOS/Linux standalone executable under an exclusive install lock. One verified previous binary is retained for tedix rollback.

Source-checkout invocations may check releases but refuse update and rollback mutations, so running bun packages/cli/src/index.ts update cannot overwrite an unrelated standalone installation. Use the installer for the initial install; use tedix update <version> --force for an intentional exact downgrade.

Verify a release

Release metadata is public:

https://downloads.tedix.dev/latest.json
https://downloads.tedix.dev/releases/<version>/manifest.json
https://downloads.tedix.dev/releases/<version>/SHA256SUMS

manifest.json records the exact source commit, version, artifact names, sizes, SHA-256 hashes, and immutable download URLs. latest.json is the only mutable release pointer and is updated after the immutable version files are uploaded. The release workflow also creates GitHub build-provenance attestations for the standalone binaries. These attest build provenance; they do not replace Apple notarization, Authenticode, or the public SHA-256 verification path.

Sign in

Run the login command. The authenticated Tedix OS launcher opens in your browser and asks which organization this terminal should use:

tedix login
tedix -w ORG_SLUG ask "Confirm Home is reachable."

After selection, the browser returns only the organization slug through a one-time local callback. The CLI resolves the organization’s public MCP gateway and opens OAuth against that resource. It does not require a platform-wide operator login or a platform-administrator role. In automation or another non-interactive environment, pass the known slug directly: tedix login ORG_SLUG.

OAuth credentials are stored per workspace under ~/.tedix. The binary never contains a Tedix account credential.

Find a command

Start with the short command overview:

tedix --help

Then ask for only the command you need:

tedix code --help
tedix work --help

For a complete command index, use tedix help --map. The longer reference is still available with tedix help --all. Scripts and coding agents can read the same help without parsing terminal text:

tedix help --json
tedix help --json code
tedix help exit-codes

Use the exit-code reference when a script needs to distinguish a usage or connection error from declined work or an operation that is still settling.

Help describes the CLI itself. The tools available inside your organization can change, so discover those live through Code Mode instead:

tedix code 'async () => await discover.search({ query: "calendar", limit: 3 })'

Uninstall

Tedix CLI is a standalone file. Removing it does not delete your Tedix organization, cloud conversations, or locally saved sign-ins.

Remove the command

If you used the default installer location, remove only the Tedix binary:

rm -f ~/.local/bin/tedix
hash -r

If you set TEDIX_INSTALL_DIR when installing, replace ~/.local/bin with that directory. Do not delete ~/.local/bin itself or remove it from your PATH: other tools may use it too.

The updater may retain one rollback binary. If you installed to the default location and do not need to roll back, you can remove it too:

rm -f ~/.local/bin/tedix.previous

Remove local sign-ins and history (optional)

By default, uninstalling leaves your saved workspace logins, conversation metadata, command history, and update cache in ~/.tedix. This makes a later reinstall convenient.

To remove saved local OAuth credentials but keep the other local data, sign out first:

tedix logout --all

To erase all Tedix CLI data from this computer after signing out, remove its configuration directory:

rm -rf ~/.tedix

This is permanent local cleanup. It does not delete cloud conversations, runs, or organization data. To install the CLI again later, follow Install.

Troubleshooting

  • tedix: command not found: open a new terminal first, because the installer’s PATH change only applies to shells started after it. If it persists, add the install directory yourself with export PATH="$HOME/.local/bin:$PATH".
  • install directory is not writable: if the default ~/.local/bin was previously created with sudo, run the exact ownership command printed by the installer. Otherwise, pass a writable directory to sh with TEDIX_INSTALL_DIR.
  • A checkout alias or function shadows the installed CLI: run type -a tedix, remove the shadowing tedix definition, and give checkout execution a distinct name such as tedix-dev.
  • Checksum failure: stop. Do not execute the downloaded file; retry later or install an exact known version.
  • Unsupported platform: use a supported macOS/Linux artifact or run the CLI from a source checkout with Bun.
  • Login failure: confirm the organization slug with your administrator, then run tedix login ORG_SLUG again. tedix auth status shows whether a saved workspace is already selected without printing its credential.
Navigation

Type to search…

↑↓ navigate↵ selectEsc close