Version: 2.0.0 Timestamp your commits on BitcoinSV blockchain using HandCash OAuth
██████╗ ██████╗ ██╗████████╗
██╔══██╗ ██╔════╝ ██║╚══██╔══╝
██████╔╝ ██║ ███╗ ██║ ██║
██╔══██╗ ██║ ██║ ██║ ██║
██████╔╝ ██╗ ╚██████╔╝ ██║ ██║
╚═════╝ ╚═╝ ╚═════╝ ╚═╝ ╚═╝
> Bitcoin-Native Git Wrapper
> Pay-to-Operate • Universal History
bgit is a Git wrapper that timestamps your commits on the BitcoinSV blockchain using HandCash micropayments. Every commit you make gets a cryptographically provable timestamp on-chain, creating an immutable record of your code history.
# Install globally
npm install -g bgit-cli
# Verify installation
bgit --version# Authenticate with HandCash (opens browser)
bgit auth login
# Check authentication status
bgit auth status# Free commands (no payment)
bgit status
bgit log
bgit diff
# Paid commands (0.001 BSV each)
bgit commit -m "Initial commit" # ← Timestamps commit hash on-chain
bgit push origin main # ← Payment required before pushbgit uses a minimal payment model for maximum usability:
All read-only operations are FREE:
bgit status- Check working treebgit log- View commit historybgit diff- See changesbgit show- Inspect commitsbgit branch- List branches- ... and 150+ other read commands
Only "publishing" operations require payment:
bgit commit- Create commit + timestamp hash on-chainbgit push- Payment gatekeeper before push
Why this model? Developers run status/log hundreds of times per day. Paying for reads would cost $10-50/day. Commits/pushes are "publishing" events worth timestamping.
Enable payment for ALL 155 git commands:
# Enable universal mode
bgit config payment-mode universal
# Now EVERY command requires payment
bgit status # ← Costs 0.001 BSV
bgit log # ← Costs 0.001 BSV
# Switch back to minimal
bgit config payment-mode minimal- Run
bgit auth login - Browser opens to HandCash authorization page
- Click "Authorize" to connect your wallet
- Token is encrypted and saved locally
- All future commands use saved token
bgit auth login # Authenticate with HandCash
bgit auth status # Show auth status + wallet balance
bgit auth logout # Delete credentials- AES-256-GCM Encryption - Bank-grade token encryption
- Machine-Specific Key - Token only works on your machine
- File Permissions - 600 (config), 700 (directory)
- No Token Logging - Tokens never appear in logs
bgit commit -m "Add feature"
# What happens:
# 1. Execute git commit FIRST
# 2. Capture commit hash (abc123...)
# 3. Send 0.001 BSV payment to $b0ase
# 4. Payment note: "bgit commit: abc123..."
# 5. ✅ Commit hash timestamped on BitcoinSV!Your HandCash Wallet
↓
0.001 BSV (developer premium) + 0.00001 BSV (network fee)
↓
├──→ 0.001 BSV → $b0ase (developer)
└──→ 0.00001 BSV → BSV miners
# Show current payment mode
bgit config payment-mode
# Set to minimal (default: commit/push only)
bgit config payment-mode minimal
# Set to universal (all 155 commands)
bgit config payment-mode universalConfig Location: ~/.bgit/config.json
# Check status (free)
bgit status
# Work on code
bgit checkout -b new-feature
bgit add src/
# Commit (paid: 0.001 BSV)
bgit commit -m "Implement feature"
# Push (paid: 0.001 BSV)
bgit push origin new-featureTotal cost: 0.002 BSV (~$0.10)
Q: Why only commit/push by default? A: Usability. Developers run status/log 100+ times/day. Charging for reads kills adoption. Commits/pushes are publishing events worth timestamping.
Q: How much does it cost? A: Minimal mode: ~$0.50-1/day for typical developer (10-20 commits). Universal mode: $2.50-25/day depending on usage.
Q: Where do payments go? A: Developer wallet ($b0ase). This is revenue for maintaining bgit.
Q: Is my token secure? A: Yes. AES-256-GCM encryption with machine-specific key. File permissions 600.
Q: What if payment fails? A: Commits succeed, payment failure is warned. Pushes are blocked until payment succeeds.
- Node.js: >= 16.0.0
- Git: Any version
- HandCash Account: https://handcash.io
- BSV Funds: At least 0.01 BSV (~$0.50)
"No auth token found"
bgit auth login"Insufficient balance" Add funds at https://handcash.io
"Config corrupted"
rm -rf ~/.bgit/
bgit auth login# Clone
git clone https://github.com/yourusername/bgit.git
cd bgit
# Install
npm install
# Test
./index.js auth login
./index.js commit -m "test"ISC
- GitHub: https://github.com/bitcoin-apps-suite/bgit
- HandCash: https://handcash.io
- Issues: https://github.com/bitcoin-apps-suite/bgit/issues
Made with ❤️ for the Bitcoin developer community
Timestamp your code. Prove your work. Build on BSV. test test: verify payment flow Sun Jan 4 02:04:57 GMT 2026 test retry 2 test retry 3