πŸ€– BTSBots Smart Wallet & Decentralized Client - User Manual

Welcome to the BTSBots ecosystem! BTSBots is a decentralized trading platform and smart wallet built on top of the BitShares blockchain. Designed with a Zero-Trust Architecture, it seamlessly combines an ultra-smooth web experience with cold-hot key separation security.


πŸ›‘οΈ 1. Hardcore Security Mechanisms Detailed

BTSBots solves common Web3 threats such as phishing attacks, private key leaks, malicious order-matching scripts, and user misoperations directly at the architectural level:

1. Zero-Key Web Architecture

2. In-Memory Private Key Sandbox (bots_key.py)

3. Anti-Phishing & Cross-IP Verification

4. Automated Security Strategy & Policy Protection (security_rules.json)

5. Local Screen Locking & Account/Asset Filtering


πŸš€ 2. Environment Setup & Quick Installation

The BTSBots Python client is optimized to run using uv, the modern Python package manager, offering lightning-fast dependency sync and isolated virtual environments.

1. Install uv

# Linux / macOS
curl -LsSf https://astral.sh/uv/install.sh | sh

# Windows (PowerShell)
powershell -ExecutionUrl https://astral.sh/uv/install.ps1

2. Clone Repository & Install Dependencies

git clone https://github.com/pch957/btsbots.git
cd btsbots

# One-step dependency sync with uv
uv sync

3. Configure Security Strategy security_rules.json

Copy the example file and edit it:

cp security_rules.json.example security_rules.json

security_rules.json overview:

{ 
    "description": "BTSBots Account & Pricing Security Strategy Rules",
    "updated_at": "2026-08-12 19:54:52",
    "fee_limit": 10,
    "authorized_keys": [
        "f928a9f76a372caf489e999b5e2c4eec9fcablbj49bcef9b4a"
    ],
    "user_whitelist": {
        "angel": "1.2.1000",
        "dan": "1.2.2000"
    },
    "market_whitelist": [
        "CNY/USD", "CNY/BTS", "BTS/USD"
    ],
    "volatility_limit_1h": 0.97,
    "volatility_limit_1d": 0.95,
    "volatility_limit_1w": 0.90
}

πŸ”‘ 3. Launching Python Client & Key Management

Method 1: Interactive Terminal (No Arguments)

uv run python sign_bots.py

Method 2: Using Unix pass Password Store (Recommended 🌟)

# 1. Insert credentials into pass
pass insert bts/my_account

# 2. Launch SignBots with --pass
uv run python sign_bots.py --pass bts/my_account

πŸ“± 4. Web & Mobile App Integration Guide

1. 8-Digit OTP Fast Login (No Private Keys Needed)

  1. Run get_otp.py:
    uv run python get_otp.py --pass bts/my_account
  2. The terminal displays a temporary 8-digit OTP (e.g., 84920138).
  3. Enter your account name and this 8-digit OTP on the web login screen to start a secure session instantly without exposing keys!

2. QR Payments & URI Schemes