Installation
This guide covers installing tdx on all platforms.
Requirements
- Node.js 22.0.0 or higher (Node.js 24 Active LTS recommended)
- TD API key with appropriate permissions
Quick Install
If you already have Node.js installed:
npm install -g @treasuredata/tdxmacOS
Using Homebrew
# Install Node.js
brew install node
# Install tdx
npm install -g @treasuredata/tdxUsing nvm (recommended for version management)
# Install nvm
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.3/install.sh | bash
# Load nvm
\. "$HOME/.nvm/nvm.sh"
# Install Node.js 24
nvm install 24
# Install tdx
npm install -g @treasuredata/tdxLinux
Using nvm (recommended)
# Install nvm
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.3/install.sh | bash
# Load nvm
\. "$HOME/.nvm/nvm.sh"
# Install Node.js 24
nvm install 24
# Install tdx
npm install -g @treasuredata/tdxSecret Manager (for credential storage)
tdx stores API keys securely using your system's secret manager. Install libsecret:
# Ubuntu/Debian
sudo apt update
sudo apt install -y libsecret-1-0 gnome-keyring
# Fedora/RHEL
sudo dnf install libsecret gnome-keyringWindows
tdx works natively on Windows with PowerShell and Node.js. Choose the option that best fits your workflow:
- PowerShell — Native Windows experience, recommended for most users
- WSL2 — Linux environment within Windows, useful if you prefer bash/zsh
Option A: PowerShell (Recommended)
Step 1: Install Node.js
Download and install Node.js from nodejs.org, or use Windows Package Manager:
# Using winget (Windows 10/11)
winget install OpenJS.NodeJS.LTS
# Verify installation
node -v # Should print v22.x.x or higher
npm -v # Should print 10.x.x or higherStep 2: Install tdx
npm install -g @treasuredata/tdx
# Verify installation
tdx --versionCredential Storage
Windows uses the built-in Credential Manager for secure API key storage. No additional setup required.
Option B: WSL2 (Alternative)
WSL2 provides a full Linux environment within Windows. This is useful if you:
- Prefer bash/zsh over PowerShell
- Want an environment matching Linux production servers
- Work with Linux-specific tooling
Step 1: Install WSL2
Open PowerShell as Administrator and run:
wsl --installThis installs WSL2 with Ubuntu as the default distribution. Restart your computer when prompted.
After restart, Ubuntu will launch automatically to complete setup. Create a username and password when prompted.
For more details, see the official WSL documentation.
Step 2: Install Node.js (using nvm)
Open your WSL terminal (Ubuntu) and run:
# Install nvm
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.3/install.sh | bash
# Load nvm
\. "$HOME/.nvm/nvm.sh"
# Install Node.js 24
nvm install 24
# Verify installation
node -v # Should print v22.x.x or higher
npm -v # Should print 10.x.x or higherStep 3: Install Secret Manager
sudo apt update
sudo apt install -y libsecret-1-0 libsecret-1-dev gnome-keyring dbus-x11To initialize the keyring:
# Start D-Bus if not running
eval $(dbus-launch --sh-syntax)
# Initialize keyring (you'll be prompted for a password)
gnome-keyring-daemon --unlockStep 4: Install tdx
npm install -g @treasuredata/tdxVerify Installation
tdx --versionSet Up Authentication
Run the interactive setup:
tdx auth setupThis will prompt you for:
- Region — Where your Treasure Data account lives (US, JP, EU, or AP)
- API Key — Your personal API key from Treasure Data
Verify your setup with:
tdx statusThis shows your authentication status, user info, current context, and configuration files all in one view.
Install Claude Code (Optional)
To use AI-powered development:
npm install -g @anthropic-ai/claude-codeLaunch Claude Code with Treasure Data skills:
tdx claudeAlternative: Using Bun
Bun is a fast JavaScript runtime that works as a drop-in replacement:
# macOS/Linux
curl -fsSL https://bun.sh/install | bash
# Windows (PowerShell)
powershell -c "irm bun.sh/install.ps1 | iex"
# Install tdx
bun install -g @treasuredata/tdxTroubleshooting
"Command not found: tdx"
The npm global bin folder might not be in your PATH.
macOS/Linux:
# Add to ~/.bashrc or ~/.zshrc
export PATH="$PATH:$(npm config get prefix)/bin"
# Reload your shell
source ~/.bashrcWindows (PowerShell):
# Check if npm global bin is in PATH
npm config get prefix
# The bin folder should be at: C:\Users\<username>\AppData\Roaming\npm
# If tdx still isn't found, restart your terminal or re-loginKeychain errors on Linux/WSL2
If you see errors about the keychain being unavailable:
Ensure libsecret is installed:
bashsudo apt install -y libsecret-1-0 gnome-keyringStart the D-Bus daemon:
basheval $(dbus-launch --sh-syntax)As a fallback, use environment variables:
bashexport TDX_API_KEY=your-api-key-here
WSL2 network issues
If you have trouble connecting to Treasure Data APIs from WSL2:
# Check your DNS settings
cat /etc/resolv.conf
# If needed, override DNS
sudo sh -c 'echo "nameserver 8.8.8.8" > /etc/resolv.conf'Windows: Execution policy errors
If you see "running scripts is disabled on this system":
# Run PowerShell as Administrator and execute:
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUserNext Steps
- Profile Management — Set up multiple profiles for different environments
- Proxy Configuration — Configure an HTTP proxy for corporate networks
- Commands Reference — Explore all available commands