Thanks to visit codestin.com
Credit goes to lib.rs

#profile #web3 #sbt #erc7866

bin+lib cybersoul

A decentralized profile CLI tool for managing Soul Bound Token profiles based on ERC-7866

2 releases

0.1.2 Nov 25, 2025
0.1.0 Oct 10, 2025

#470 in Web programming

Apache-2.0

315KB
2K SLoC

CyberSoul CLI

A decentralized profile CLI tool for managing Soul Bound Token (SBT) profiles based on ERC-7866

Crates.io Downloads License: Apache-2.0 Rust Status

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.soul identities
  • 🔒 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

# 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:

Security

Report security vulnerabilities to: [email protected]

See SECURITY.md for our security policy.

Resources

License

Apache-2.0


Built with Alloy and ratatui

Dependencies

~62–86MB
~1.5M SLoC