AI-powered Bitcoin network intelligence in your terminal. Ask questions, get structured analysis.
Project description
ChainPulse
15 minutes of manual research → 5 seconds in your terminal.
ChainPulse is an AI-powered CLI that answers questions about the Bitcoin network using real-time on-chain data. Ask in plain English, get structured analysis.
$ chainpulse "What's happening with fees right now?"
╭─────────────────────── ⚡ ChainPulse ────────────────────────╮
│ │
│ ## Current Fee Rates │
│ │
│ | Priority | Target | Fee Rate | │
│ |-------------|---------|------------| │
│ | Next block | 1 block | 12.3 sat/vB| │
│ | Normal | 3 block | 8.1 sat/vB | │
│ | Economy | 6 block | 4.2 sat/vB | │
│ | Low | 25 block| 2.0 sat/vB | │
│ │
│ **Recommendation:** Fees are moderate. A typical 1-in/2-out │
│ SegWit transaction costs ~1,700 sats ($1.80) at normal │
│ priority. The mempool is clearing — waiting 2-3 blocks │
│ could save ~40%. │
│ │
╰────────────── Data: bitcoinsapi.com · block 939,462 ─────────╯
Install
pip install chainpulse
Setup
You need an Anthropic API key:
export ANTHROPIC_API_KEY=sk-ant-...
Verify everything works:
chainpulse --check
# ✓ API key valid, Satoshi API reachable (block 939,462)
Usage
Single Query
chainpulse "Should I send my transaction now or wait?"
chainpulse "Give me a complete network health check"
chainpulse "How congested is the mempool?"
Interactive Mode
chainpulse -i
╭─── ⚡ ChainPulse Interactive Mode ───╮
│ Ask anything about the Bitcoin │
│ network. Type quit to exit. │
╰──────────────────────────────────────╯
chainpulse> What's the current hashrate?
→ Fetching Mining Info...
→ Analyzing...
[response panel]
chainpulse> quit
How It Works
- You ask a question in plain English
- An AI agent selects the right on-chain data sources
- Real-time data is fetched from the Bitcoin network
- The agent synthesizes a structured analysis
- Rich terminal output makes it screenshot-worthy
10 built-in data sources: fee estimates, fee recommendations, fee landscape analysis, mempool stats, mempool analysis, latest block, BTC price, mining stats, supply data, and network info.
Configuration
| Variable | Required | Default | Description |
|---|---|---|---|
ANTHROPIC_API_KEY |
Yes | — | Your Anthropic API key |
CHAINPULSE_API_URL |
No | https://bitcoinsapi.com |
Custom API endpoint |
CHAINPULSE_MODEL |
No | claude-sonnet-4-20250514 |
Anthropic model to use |
Example Queries
Fees & Timing
- "What are current fee rates?"
- "Should I send now or wait?"
- "How much would a 2-input transaction cost?"
Network Health
- "Full network health check"
- "Current hashrate and difficulty"
- "When is the next halving?"
Mempool
- "How congested is the mempool?"
- "What's the next-block minimum fee?"
Market + On-Chain
- "Bitcoin price with network context"
- "Is this a good time to consolidate UTXOs?"
Development
git clone https://github.com/Bortlesboat/chainpulse
cd chainpulse
pip install -e ".[dev]"
pytest
ruff check src/ tests/
License
MIT
For informational purposes only. Not financial advice.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file chainpulse-0.1.0.tar.gz.
File metadata
- Download URL: chainpulse-0.1.0.tar.gz
- Upload date:
- Size: 12.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
26d5654e0c3be1203b5423216ba13b000209858fa532db9ebaebfac5c1889482
|
|
| MD5 |
fc284fc9647d295566ad5a2e63179024
|
|
| BLAKE2b-256 |
c8316929c8877eb8274d95776483a75ff4a50b55331f25e504303ccd776b1b04
|
File details
Details for the file chainpulse-0.1.0-py3-none-any.whl.
File metadata
- Download URL: chainpulse-0.1.0-py3-none-any.whl
- Upload date:
- Size: 11.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
380bb9f650887a68a36e95c50cc783a19837ff38d5dc41fa28ba4361fe6f53d7
|
|
| MD5 |
e59c300ae4b03cf98af33944b7dadc1e
|
|
| BLAKE2b-256 |
11147a08e18df799d661d49a57063c943c7963eb974b8b22323dfd43176abc93
|