2 releases
| 0.1.2 | Nov 25, 2025 |
|---|---|
| 0.1.0 | Oct 10, 2025 |
#470 in Web programming
315KB
2K
SLoC
CyberSoul CLI
A decentralized profile CLI tool for managing Soul Bound Token (SBT) profiles based on ERC-7866
What is CyberSoul?
CyberSoul lets you create and manage decentralized user profiles as Soul Bound Tokens (SBTs). Your profile lives on the blockchain and is stored on IPFS - you own it, not some company.
Key Features
- 🔐 Secure Wallet Management - AES-256-GCM encrypted keystores with OS keychain integration
- 🆔 Unique Profiles - Create
username@chain.soulidentities - 🔒 Non-Transferable - Soul Bound Tokens that can't be sold or transferred
- 🌐 Multi-Chain - Works across Ethereum, Polygon, and more
- 📦 Decentralized Storage - IPFS-backed profile data
- 🛡️ Privacy First - You control your data
- 💻 Hardware Wallet Support (coming soon)
Installation
From Binary (Recommended)
# macOS/Linux
curl -sSfL https://raw.githubusercontent.com/anistark/cybersoul-cli/main/install.sh | sh
# Or download from releases
# https://github.com/anistark/cybersoul-cli/releases
From Source
# Requires Rust 1.75+
git clone https://github.com/anistark/cybersoul-cli.git
cd cybersoul-cli
cargo install --path .
Quick Start
# Create a wallet
cybersoul wallet create
# Create your profile
cybersoul create alice
# View your profile
cybersoul whoami
# Update your bio
cybersoul update bio "Building the decentralized web"
# Set an avatar
cybersoul avatar set ./avatar.png
# Export your profile
cybersoul export > backup.json
Usage
Create and Manage Your Profile
# Create profile
cybersoul create <username>
# Get any profile
cybersoul get <username>@<chain>.soul
# Update your profile
cybersoul update bio "Your bio"
cybersoul update website "https://example.com"
cybersoul update social twitter yourhandle
cybersoul update social github yourusername
Manage Your Avatar
# Set from file
cybersoul avatar set ./avatar.png
# Set from URL
cybersoul avatar set-url https://example.com/avatar.png
# View current avatar
cybersoul avatar get
# Remove avatar
cybersoul avatar remove
Wallet Commands
Your wallet is encrypted with AES-256-GCM and stored securely on your machine. Passwords are saved to your system's keychain (macOS Keychain, Windows Credential Manager, or Linux Secret Service).
# Create a new wallet (generates a random secp256k1 key pair)
cybersoul wallet create
# Import existing wallet from private key
cybersoul wallet import
# Show your wallet address and encryption info
cybersoul wallet show
# Export your private key (⚠️ keep it secret!)
cybersoul wallet export
Security Notes:
- Your private key never leaves your machine
- All keystores are encrypted with a password you choose (min 8 characters)
- Password is stored in your OS keychain for convenience
- Always backup your private key in a safe place
Configuration
# List networks
cybersoul config networks
# Switch network
cybersoul config set-network polygon
# View all config
cybersoul config list
Development Status
🚧 In Active Development
What's Working Now ✅
- ✅ Wallet management (create, import, show, export)
- ✅ AES-256-GCM encrypted keystores
- ✅ OS keychain integration for password storage
- ✅ Ethereum-compatible address generation
Coming Next
- 🚧 Smart contract deployment (ERC-7866)
- 🚧 Profile creation and management
- 🚧 IPFS integration for metadata storage
- 🚧 Multi-chain support
Contributing
Contributions welcome! See CONTRIBUTING.md for guidelines.
For developers:
- PROJECT_STRUCTURE.md - Architecture overview
Security
Report security vulnerabilities to: [email protected]
See SECURITY.md for our security policy.
Resources
- ERC-7866 Spec: https://eips.ethereum.org/EIPS/eip-7866
- Documentation: (coming soon)
- Website: (coming soon)
License
Apache-2.0
Dependencies
~62–86MB
~1.5M SLoC