Skip to content

DrOlu/pi-agent-id

Repository files navigation

pi-agent-id Wallet Extension

✅ Successfully Built

pi-agent-id is a complete Ethereum wallet management tool implemented as a single binary for the pi agent system.

Features Implemented

Feature Status
HD Wallet Creation (BIP39/BIP44) ✅ With 12-word mnemonic
Simple Wallet Creation ✅ Random key generation
Private Key Import ✅ Hex format support
Mnemonic Import ✅ 12/24 word phrases
Keystore Import ✅ Ethereum standard UTC files
Message Signing ✅ EIP-191 compatible
Transaction Signing ✅ Full ETH transfers
Balance Checking ✅ Any ERC20/ETH address
Wallet Export ✅ Private key & mnemonic
Secure Storage ✅ AES-256-GCM + PBKDF2
Multi-wallet ✅ Unlimited wallets
Cross-platform ✅ All major platforms

Binary Distribution

Platform Size File
macOS ARM64 (Apple Silicon) ~10MB pi-agent-id
macOS AMD64 (Intel) ~11MB pi-agent-id-darwin-amd64
Linux AMD64 ~11MB pi-agent-id-linux-amd64
Linux ARM64 ~10MB pi-agent-id-linux-arm64
Windows AMD64 ~12MB pi-agent-id-windows-amd64.exe

Installation

# Install to pi skills
pi skill add pi-agent-id ~/.pi/agent/skills/pi-agent-id/bin/pi-agent-id

# Or install globally
sudo cp ~/.pi/agent/skills/pi-agent-id/bin/pi-agent-id /usr/local/bin/

Usage Examples

# Create HD wallet with mnemonic
pi-agent-id create --name mywallet --hd --password "secure-pass"

# Import from private key
pi-agent-id import --name imported --key 0xabc123... --password "pass"

# List all wallets
pi-agent-id list

# Sign a message
pi-agent-id sign --address 0x123... --message "Hello" --password "pass"

# Check balance
pi-agent-id balance --address 0x123... --rpc https://eth.llamarpc.com

# Send transaction
pi-agent-id send --from 0x123... --to 0x456... --amount 1000000000000000000 \
  --rpc https://eth.llamarpc.com --password "pass"

# Export wallet
pi-agent-id export --name mywallet --password "pass" --private-key

# Recover from mnemonic
pi-agent-id recover --mnemonic "word1 word2 ... word12" --name recovered --password "pass"

Security Features

  • Encryption: AES-256-GCM with PBKDF2 (100,000 iterations)
  • Storage: Wallet files are encrypted at rest
  • Permissions: Files created with 0600 permissions (owner-only)
  • No plain text: Keys and mnemonics never stored unencrypted

Storage Location

  • macOS/Linux: ~/.config/pi-agent-id/wallets/
  • Windows: %APPDATA%/pi-agent-id/wallets/

Architecture

pi-agent-id/
├── cmd/           # CLI command implementations
├── wallet/        # Wallet logic & transactions
├── crypto/        # Signing & verification
├── storage/       # Encrypted persistence
├── main.go        # Entry point
└── bin/           # Compiled binaries

Dependencies

  • Go Ethereum (go-ethereum)
  • BIP39 implementation (tyler-smith/go-bip39)
  • Cobra CLI framework
  • Standard crypto libraries

Build Commands

# Build for current platform
cd ~/.pi/agent/skills/pi-agent-id
make build

# Build for all platforms
make build-all

# Run tests
make test

# Create release archives
make release

Files Created

  • SKILL.md - Documentation
  • main.go - Entry point
  • cmd/*.go - 10 command implementations
  • wallet/*.go - Wallet, transaction, keystore logic
  • crypto/*.go - Cryptographic operations
  • storage/*.go - Encrypted storage layer
  • Makefile - Build automation
  • build.sh - Cross-platform builder
  • go.mod - Module dependencies

Version

Current: dev (built from source)

Next Steps

  1. Tag a release version
  2. Upload binaries to GitHub releases
  3. Submit to pi skill registry
  4. Add ERC20 token support
  5. Add hardware wallet integration

Status: ✅ Complete and tested Location: ~/.pi/agent/skills/pi-agent-id/ Ready for: Pi skill registration and daily use

About

Ethereum wallet management tool for pi agent system - HD wallets, secure key storage, and transaction signing

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors