compass-tss

module
v0.0.0-...-b7b35bc Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 12, 2026 License: MIT

README

Compass-TSS (CrossX)

A multi-party secure validation node for cross-chain transactions on mainnet.

Compass-TSS (CrossX) is forked from THORChain's Bifrost, adapted for the MAP Protocol ecosystem. It serves as a core component of cross-chain infrastructure, participating in cross-chain transaction validation through Threshold Signature Scheme (TSS) technology. Multiple CrossX nodes form a validation network that jointly signs and confirms cross-chain messages, ensuring secure and trustworthy asset transfers between different blockchains while eliminating single points of failure and private key exposure risks.

Supported Chains

Chain Type Status
BTC UTXO Production
ETH EVM Production
BSC EVM Production
BASE EVM Production
ARB EVM In Progress
XRP - In Progress
DOGE UTXO In Progress

Prerequisites

  • Go 1.23.4+
  • Access to chain RPC endpoints for the chains you want to monitor
  • TSS bootstrap peers for joining the validator network

Configuration

Compass-TSS uses a default configuration file at config/default.yaml. Most settings can be overridden via environment variables.

See docs/configuration.md for the full environment variable reference.

Required Environment Variables

Before running, you must set the following environment variables:


# Chain RPC endpoints (at least one chain is required)
export BTC_HOST=<btc_rpc_host>
export ETH_HOST=<eth_rpc_host>
# ... see docs/configuration.md for all chains
Optional Environment Variables
# Block scanner retry backoff
export BLOCK_SCANNER_BACKOFF=<seconds>

# btc rpc auth
export BTC_USERNAME = ''
export BTC_PASSWORD = ''

# Start block heights
export BTC_START_BLOCK_HEIGHT=<height>
export ETH_START_BLOCK_HEIGHT=<height>

Build & Run

git clone https://github.com/mapprotocol/compass-tss.git
cd compass-tss/cmd/compass
go mod tidy
go build -o compass .
./compass
Command-Line Flags
Flag Description Default
--log-level, -l Log level (debug, info, warn, error) info
--pretty-log, -p Enable pretty console logging false
--version Show version -

Project Structure

compass-tss/
├── cmd/compass/     # Application entry point
├── blockscanner/    # Multi-chain block scanning
├── observer/        # Chain event observation
├── signer/          # Transaction signing
├── tss/             # TSS key management
├── p2p/             # P2P network communication
├── mapclient/       # MAP Relay Chain client
├── config/          # Default configuration (default.yaml)
├── common/          # Shared types and utilities
├── txscript/        # Transaction script handling (BTC/DOGE/LTC/BCH)
└── docs/            # Documentation

License

MIT

Directories

Path Synopsis
cmd
compass command
compass/docs
Package docs Code generated by swaggo/swag.
Package docs Code generated by swaggo/swag.
Package constants contains all the constants used by thorchain by default all the settings in this is for mainnet
Package constants contains all the constants used by thorchain by default all the settings in this is for mainnet
internal
ctx
mapclient
openapi
gen
p2p
pkg
abi
tss
go-tss/cmd/tss command
Package txscript implements the bitcoin transaction script language.
Package txscript implements the bitcoin transaction script language.
bchd-txscript
Package txscript implements the bitcoin transaction script language.
Package txscript implements the bitcoin transaction script language.
dogd-txscript
Package txscript implements the dogecoin transaction script language.
Package txscript implements the dogecoin transaction script language.
ltcd-txscript
Package txscript implements the bitcoin transaction script language.
Package txscript implements the bitcoin transaction script language.
x

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL