This guide covers installing tdx on all platforms.
- Node.js 22.0.0 or higher (Node.js 24 Active LTS recommended)
- TD API key with appropriate permissions
If you already have Node.js installed:
npm install -g @treasuredata/tdx# Install Node.js
brew install node
# Install tdx
npm install -g @treasuredata/tdx# 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/tdx# 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/tdxtdx 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-keyringtdx 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
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 highernpm install -g @treasuredata/tdx
# Verify installation
tdx --versionWindows uses the built-in Credential Manager for secure API key storage. No additional setup required.
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
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.
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 highersudo 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 --unlocknpm install -g @treasuredata/tdxtdx --versionRun 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.
To use AI-powered development:
npm install -g @anthropic-ai/claude-codeLaunch Claude Code with Treasure Data skills:
tdx claudeBun 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/tdxThe 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-loginIf you see errors about the keychain being unavailable:
Ensure libsecret is installed:
sudo apt install -y libsecret-1-0 gnome-keyringStart the D-Bus daemon:
eval $(dbus-launch --sh-syntax)As a fallback, use environment variables:
export TDX_API_KEY=your-api-key-here
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'If you see "running scripts is disabled on this system":
# Run PowerShell as Administrator and execute:
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser- Profile Management — Set up multiple profiles for different environments
- Proxy Configuration — Configure an HTTP proxy for corporate networks
- Commands Reference — Explore all available commands