CLI Troubleshooting
Solutions to common Skytells CLI errors — authentication failures, command not found, Node.js version issues, network problems, and more.
Authentication errors
"You are not authenticated"
No valid token is stored and SKYTELLS_TOKEN is not set.
skytells loginOr set the environment variable:
export SKYTELLS_TOKEN=sk_pat_your_token_here"Access key required"
The command requires a project-scoped access key.
skytells link sk_proj_your_access_keyOr set the environment variable:
export SKYTELLS_ACCESS_KEY=sk_proj_your_access_keyFind your access key in project settings at console.skytells.ai.
"Token is invalid or expired"
Your stored token was revoked or expired.
- Generate a new token at console.skytells.ai/settings/tokens — see Access Tokens
- Re-authenticate:
skytells login"Insufficient scope"
Your token does not include the permissions the command requires.
Log in again with the needed scopes:
skytells login --scopes inference,projects.read,projects.write,deployments.read,deployments.writeSee Token scopes for the full list.
Device flow times out
The browser authorization was not completed within 15 minutes.
Run skytells login again and approve in the browser promptly.
Installation errors
"Command not found: skytells"
The CLI is not installed or not in your PATH.
npm install -g @skytells/cliVerify:
which skytells
skytells --versionIf you use nvm or another Node.js version manager, ensure the right version is active before installing:
nvm use 20
npm install -g @skytells/cli"Node.js version not supported"
The CLI requires Node.js 18 or later.
node --versionUpgrade using nvm:
nvm install 20
nvm use 20Or via Homebrew on macOS:
brew install node@20Permission error on install (Linux/macOS)
Do not use sudo npm install -g. Instead, configure a user-owned npm prefix:
mkdir -p ~/.npm-global
npm config set prefix '~/.npm-global'
echo 'export PATH=~/.npm-global/bin:$PATH' >> ~/.bashrc
source ~/.bashrc
npm install -g @skytells/cliCommand errors
Command hangs or produces no output
Likely a network connectivity issue or API unavailability.
- Check your internet connection
- Verify access to the Skytells API:
curl -s https://console.skytells.ai/api/v1/health- Check status.skytells.ai for service incidents
Failed deployment
If skytells deploy completes but the deployment fails:
# Check deployment logs
skytells logs <app> --type deployment
# Review environment variables
skytells env ls --app <app-id>
# Inspect the app configuration
skytells apps inspect <app-id>
# Fix issues and redeploy
skytells apps redeploy <app-id>Network errors
Connection refused or timeout
A firewall, proxy, or VPN is blocking the connection.
- Ensure
https://console.skytells.aiis reachable from your network - If behind a corporate proxy, configure it:
export HTTPS_PROXY=http://proxy.example.com:8080- Confirm outbound HTTPS (port 443) is allowed
SSL certificate errors
Your system clock is incorrect, or a corporate proxy is intercepting HTTPS.
- Verify your system clock is accurate
- If a proxy performs TLS inspection, configure the corporate CA:
export NODE_EXTRA_CA_CERTS=/path/to/ca-bundle.crtGetting help
Collect this information before filing a bug report — it covers the most common root causes in a single pass.
Quick diagnostic capture:
# CLI version
skytells --version
# Authentication state (no secrets printed)
skytells whoami --json 2>&1 | jq '{authenticated: (. != null), error: null}' \
|| echo "Not authenticated"
# Project link status
skytells project --json 2>&1 | jq '.id // "No project linked"'
# App health summary
skytells status --json 2>&1
# Network connectivity
curl -s -o /dev/null -w "%{http_code}" https://console.skytells.ai/api/v1/healthIf you cannot resolve an issue:
# Show usage for any command
skytells <command> --help- Check the online documentation
- Search existing issues or open a new one at github.com/skytells/cli
How is this guide?