TELA-CLI Installation Guide
Complete guide to installing and setting up TELA-CLI on your system.
What is TELA-CLI? A command-line interface for managing TELA content - deploy applications, clone content, serve locally, and interact with the DERO blockchain.
Prerequisites
Required Software
1. Go Programming Language (1.19 or higher)
Check if Go is installed:
go version
# Should show: go version go1.19 or higherIf not installed, download from go.dev (opens in a new tab)
2. DERO Daemon (for blockchain operations)
- Download from DERO releases (opens in a new tab)
- Required for deploying and serving TELA content
- Optional for cloning and local serving
3. DERO Wallet (for deployments)
- Engram wallet (recommended) or dero-wallet-cli
- Required for
install-doc,install-index,ratecommands - Not required for viewing/serving existing content
Installation Methods
Method 1: Install from Source
Best for: Most users - installs TELA-CLI globally so you can run it from anywhere.
Step 1: Install via Go
go install github.com/civilware/tela/cmd/tela-cli@latestStep 2: Verify Installation
# Check if tela-cli is in PATH
tela-cli --help
# Should display TELA-CLI usage informationStep 3: Add to PATH (if needed)
If you get "command not found":
macOS/Linux:
# Add Go bin to PATH (add to ~/.bashrc or ~/.zshrc)
export PATH=$PATH:$(go env GOPATH)/bin
# Apply changes
source ~/.bashrc # or source ~/.zshrcWindows (PowerShell):
# Add Go bin to PATH
$env:PATH += ";$(go env GOPATH)\bin"
# Make permanent via System Environment VariablesStep 4: Run TELA-CLI
tela-cliSuccess! TELA-CLI is now installed globally. You can run tela-cli from any directory.
Method 2: Build from Source
Best for: Users who want to customize TELA-CLI or contribute to development.
Step 1: Clone Repository
git clone https://github.com/civilware/tela.git
cd tela/cmd/tela-cliStep 2: Install Dependencies
go mod tidy
go mod downloadStep 3: Build Executable
go build .This creates a tela-cli executable in the current directory.
Step 4: Run TELA-CLI
# From the tela/cmd/tela-cli directory
./tela-cli
# Or move to system PATH for global access
sudo mv tela-cli /usr/local/bin/ # macOS/LinuxMethod 3: Run from Source
Best for: Development and testing - no build files created.
Step 1: Clone Repository
git clone https://github.com/civilware/tela.git
cd tela/cmd/tela-cliStep 2: Run Directly
go run .This compiles and runs TELA-CLI without creating a binary file.
Note: You must be in the tela/cmd/tela-cli directory to use this method.
Verify Installation
After installing using any method, verify TELA-CLI works:
# Check help menu
tela-cli --help
# Should display:
# Usage:
# tela-cli [options]
# tela-cli -h | --help
# Options:
# -h --help Show this screen
# --debug Enable debug mode
# --mainnet Set the network to mainnet
# --testnet Set the network to testnet
# --simulator Set the network to simulator
# ...First-Time Setup
1. Start TELA-CLI
tela-cli2. Connect to Network
# For beginners - simulator provides free DERO
» endpoint simulator
# For testnet
» endpoint testnet
# For mainnet
» endpoint mainnet3. Verify Connection
» info
# Check status indicators:
# [D:▲] - Daemon online
# [G:▼] - Gnomon offline
# [W:0] - No wallet connected4. Optional: Start Gnomon Indexer
» gnomon start
# Wait for sync...
# Check status: [G:▲] - Gnomon online5. Test with Search
» search all
# Should display TELA content from the networkSetup Complete! You're ready to start using TELA-CLI.
Advanced Installation Options
Install with Specific Version
# Install specific version/commit
go install github.com/civilware/tela/cmd/tela-cli@v1.2.3
# Install from specific commit
go install github.com/civilware/tela/cmd/tela-cli@abc123defBuild with Custom Flags
# Build with optimizations
go build -ldflags="-s -w" .
# Build for specific OS/architecture
GOOS=linux GOARCH=amd64 go build .
GOOS=windows GOARCH=amd64 go build .
GOOS=darwin GOARCH=arm64 go build .Development Installation
# Clone for development
git clone https://github.com/civilware/tela.git
cd tela
# Install dependencies
go mod tidy
# Make changes to source code...
# Test your changes
cd cmd/tela-cli
go run .
# Build when ready
go build .Configuration
Data Storage Locations
TELA-CLI stores data in these locations:
macOS/Linux:
~/.local/share/tela/
├── datashards/
│ ├── clone/ # Cloned TELA content
│ ├── tela/ # Served TELA applications
│ ├── gnomon_*.db # Gnomon indexer database
│ └── settings.db # TELA-CLI preferencesWindows:
%APPDATA%\tela\
├── datashards\
│ ├── clone\
│ ├── tela\
│ ├── gnomon_*.db
│ └── settings.dbDatabase Options
TELA-CLI supports two database types:
# GravDB (default, recommended)
tela-cli --db-type=gravdb
# BoltDB (alternative)
tela-cli --db-type=boltdbStartup Flags
Launch TELA-CLI with pre-configured settings:
Network Selection
# Mainnet (default)
tela-cli --mainnet
# Testnet
tela-cli --testnet
# Simulator (testing with free DERO)
tela-cli --simulatorDaemon Connection
# Connect to daemon on startup
tela-cli --daemon=127.0.0.1:10102
# Connect to daemon from stored preferences
tela-cli --daemonWallet Auto-Open
# Open wallet file on startup
tela-cli --wallet=./my-wallet.db
# With password (use carefully!)
tela-cli --wallet=./my-wallet.db --password=mypasswordSecurity Warning: Using --password flag stores password in shell history. Only use in secure environments or scripts.
Gnomon Indexer
# Start with Gnomon enabled
tela-cli --daemon --gnomon
# With fastsync (loads at current chain height)
tela-cli --daemon --gnomon --fastsync=true
# Control parallel block processing
tela-cli --daemon --gnomon --num-parallel-blocks=3Debug Mode
# Enable debug output
tela-cli --debugCombined Flags
# Full development setup
tela-cli --simulator --gnomon --debug
# Production setup
tela-cli --mainnet --daemon=127.0.0.1:10102 --gnomon --num-parallel-blocks=1
# Quick testing
tela-cli --testnet --wallet=./test-wallet.db --gnomonUpdating TELA-CLI
Update from Source
# Update to latest version
go install github.com/civilware/tela/cmd/tela-cli@latest
# Verify update
tela-cli --helpUpdate from Git
# If you cloned the repository
cd tela
git pull origin main
cd cmd/tela-cli
go build .Troubleshooting Installation
Issue: "go: command not found"
Solution: Install Go from golang.org (opens in a new tab)
# Verify installation
go versionIssue: "tela-cli: command not found"
Solutions:
-
Check if installed:
ls $(go env GOPATH)/bin/tela-cli -
Add to PATH:
export PATH=$PATH:$(go env GOPATH)/bin -
Use full path:
$(go env GOPATH)/bin/tela-cli
Issue: "cannot find package"
Solution:
# Clear module cache
go clean -modcache
# Reinstall
go install github.com/civilware/tela/cmd/tela-cli@latestIssue: "build failed: missing dependencies"
Solution:
cd tela/cmd/tela-cli
go mod tidy
go mod download
go build .Issue: "permission denied"
macOS/Linux:
# Make executable
chmod +x tela-cli
# Or install to user directory
go install github.com/civilware/tela/cmd/tela-cli@latestWindows:
# Run as Administrator
# Right-click Command Prompt → Run as AdministratorPlatform-Specific Notes
macOS
Apple Silicon (M1/M2/M3):
# Go should auto-detect arm64
# Verify architecture
go env GOARCH # Should show: arm64
# Install normally
go install github.com/civilware/tela/cmd/tela-cli@latestIntel Macs:
# Should work out of the box
go install github.com/civilware/tela/cmd/tela-cli@latestLinux
Common distributions:
# Ubuntu/Debian
sudo apt update
sudo apt install golang-go
go install github.com/civilware/tela/cmd/tela-cli@latest
# Fedora/RHEL
sudo dnf install golang
go install github.com/civilware/tela/cmd/tela-cli@latest
# Arch Linux
sudo pacman -S go
go install github.com/civilware/tela/cmd/tela-cli@latestWindows
PowerShell:
# Install Go from golang.org first
# Then install TELA-CLI
go install github.com/civilware/tela/cmd/tela-cli@latest
# Add to PATH (run as Administrator)
$oldPath = [Environment]::GetEnvironmentVariable('Path', 'Machine')
$newPath = $oldPath + ';' + (go env GOPATH) + '\bin'
[Environment]::SetEnvironmentVariable('Path', $newPath, 'Machine')WSL (Windows Subsystem for Linux):
# Same as Linux installation
go install github.com/civilware/tela/cmd/tela-cli@latestPost-Installation
Recommended Setup
-
Install DERO Daemon:
# Download from https://github.com/deroproject/derohe/releases # Run for your network derod --simulator # or --testnet, or mainnet (no flag) -
Create Development Wallet:
# For simulator/testnet dero-wallet-cli --wallet-file=./dev-wallet.db -
Test TELA-CLI:
tela-cli --simulator --gnomon
Quick Start Commands
# Start TELA-CLI
tela-cli
# Connect to simulator
» endpoint simulator
# Start indexer
» gnomon start
# Search for content
» search all
# Serve an app
» serve [some-scid]Uninstallation
Remove TELA-CLI
# Remove binary
rm $(go env GOPATH)/bin/tela-cli
# Remove data (optional - this deletes all cloned content!)
rm -rf ~/.local/share/tela/ # macOS/Linux
# or
rmdir /s %APPDATA%\tela # WindowsNext Steps
Ready to Go! You now have TELA-CLI installed. Continue with the Launch Tutorial to deploy your first decentralized application!