Skip to main content
The CCTP CLI is distributed as a Go package and can be installed using the go install command.

Prerequisites

1

Install Go

You need Go 1.21 or later installed on your system.Check your Go version:
go version
If you don’t have Go installed, download it from go.dev/dl.
2

Verify GOPATH

Ensure your Go binary path is in your system’s PATH:
echo $GOPATH
The Go binaries are typically installed to $GOPATH/bin or $HOME/go/bin.
If go install succeeds but you can’t run cctp, add Go’s bin directory to your PATH:Bash/Zsh (~/.bashrc or ~/.zshrc):
export PATH="$PATH:$(go env GOPATH)/bin"
Fish (~/.config/fish/config.fish):
set -gx PATH $PATH (go env GOPATH)/bin
Then reload your shell configuration:
source ~/.bashrc  # or ~/.zshrc, or restart your terminal

Installation

Install the latest version of the CCTP CLI:
go install github.com/circlefin/cctp-go/cmd/cctp@latest
The @latest tag installs the most recent stable release. For production use, consider pinning to a specific version.

Verify Installation

Check that the CLI is installed correctly:
cctp version
You should see output like:
INFO CCTP CLI version version=0.2.0

Platform-Specific Notes

Default Keystore Location

~/Library/Ethereum/keystore

Apple Silicon (M1/M2/M3)

The CLI is compatible with Apple Silicon Macs. Go will automatically build the appropriate binary.

Gatekeeper

If macOS blocks the CLI as an “unidentified developer”, you may need to:
  1. Go to System Preferences > Security & Privacy
  2. Click “Allow Anyway” for the cctp binary
Or run:
xattr -d com.apple.quarantine $(which cctp)

Default Keystore Location

~/.ethereum/keystore

Permissions

Ensure the installed binary has execute permissions:
chmod +x $(which cctp)

Distribution-Specific Package Managers

While go install is the recommended method, some Linux distributions may provide packages in the future. Check your package manager:
# Not yet available, but check:
apt search cctp-cli      # Debian/Ubuntu
yum search cctp-cli      # RHEL/CentOS
pacman -Ss cctp-cli      # Arch

Default Keystore Location

%APPDATA%\Ethereum\keystore
Typically: C:\Users\<username>\AppData\Roaming\Ethereum\keystore

PowerShell vs Command Prompt

The CLI works in both PowerShell and Command Prompt. PowerShell is recommended for better formatting.

Windows Terminal

For the best experience, use Windows Terminal which supports:
  • True color rendering
  • Unicode characters
  • Better mouse support

PATH Configuration

If cctp is not found after installation, add Go’s bin directory to PATH:
  1. Open System Properties > Environment Variables
  2. Edit the Path variable
  3. Add: %USERPROFILE%\go\bin
  4. Restart your terminal

Update the CLI

To update to the latest version, simply run the install command again:
go install github.com/circlefin/cctp-go/cmd/cctp@latest
Always check the release notes before updating, especially for major version changes that may include breaking changes.

Uninstall

To remove the CCTP CLI:
rm $(which cctp)
Or manually delete the binary from your Go bin directory:
rm $GOPATH/bin/cctp
# or
rm ~/go/bin/cctp

Build from Source

For development or testing, you can build directly from the source repository:
1

Clone the repository

git clone https://github.com/circlefin/cctp-go.git
cd cctp-go
2

Build the CLI

go build -o cctp ./cmd/cctp
This creates a cctp binary in the current directory.
3

Install to GOPATH (optional)

go install ./cmd/cctp
Or manually move the binary:
mv cctp $GOPATH/bin/

Troubleshooting

Cause: The Go bin directory is not in your PATH.Solution: Add Go’s bin directory to your PATH (see Verify GOPATH above) or use the full path:
$(go env GOPATH)/bin/cctp version
Cause: Go is not installed or not in PATH.Solution: Install Go from go.dev/dl and ensure it’s in your PATH.
Cause: Insufficient permissions to write to GOPATH/bin.Solution:
  • Run with appropriate permissions (avoid sudo with go install)
  • Or install to a local directory:
GOBIN=~/bin go install github.com/circlefin/cctp-go/cmd/cctp@latest
export PATH="$PATH:~/bin"
Cause: Firewall or proxy blocking Go module downloads.Solution: Configure Go proxy:
export GOPROXY=https://proxy.golang.org,direct
go install github.com/circlefin/cctp-go/cmd/cctp@latest
Or use a different proxy:
export GOPROXY=https://goproxy.io,direct

Next Steps

Now that you have the CLI installed, learn how to use it:

Commands

Explore all available CLI commands and flags

Configuration

Set up config files and wallet authentication

Quick Start

Complete your first cross-chain transfer

Shell Completion

Enable auto-completion for faster usage

Build docs developers (and LLMs) love