pi-agent-id is a complete Ethereum wallet management tool implemented as a single binary for the pi agent system.
| 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 |
| 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 |
# 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/# 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"- 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
- macOS/Linux:
~/.config/pi-agent-id/wallets/ - Windows:
%APPDATA%/pi-agent-id/wallets/
pi-agent-id/
├── cmd/ # CLI command implementations
├── wallet/ # Wallet logic & transactions
├── crypto/ # Signing & verification
├── storage/ # Encrypted persistence
├── main.go # Entry point
└── bin/ # Compiled binaries
- Go Ethereum (go-ethereum)
- BIP39 implementation (tyler-smith/go-bip39)
- Cobra CLI framework
- Standard crypto libraries
# 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 releaseSKILL.md- Documentationmain.go- Entry pointcmd/*.go- 10 command implementationswallet/*.go- Wallet, transaction, keystore logiccrypto/*.go- Cryptographic operationsstorage/*.go- Encrypted storage layerMakefile- Build automationbuild.sh- Cross-platform buildergo.mod- Module dependencies
Current: dev (built from source)
- Tag a release version
- Upload binaries to GitHub releases
- Submit to pi skill registry
- Add ERC20 token support
- Add hardware wallet integration
Status: ✅ Complete and tested
Location: ~/.pi/agent/skills/pi-agent-id/
Ready for: Pi skill registration and daily use