hashtree-cli
Hashtree daemon and CLI - content-addressed storage with P2P sync.
Installation
# CLI + daemon (default cargo features; FUSE is optional)
# Add mount support explicitly when you want it
# Without social graph
# Minimal install without P2P or social graph
# Cashu wallet helper for `htree cashu ...`
For cargo installs, fuse is opt-in. Building with --features p2p,lmdb,fuse needs platform FUSE headers/libs:
- Linux: typically
pkg-configpluslibfuse3-dev(or the distro equivalent). - macOS: install macFUSE first.
The prebuilt macOS/Linux release binaries are built with fuse enabled.
Commands
# Add content
# Push to Blossom servers
# Get/cat content
# Pins
# Nostr identity
# Daemon
# FUSE mount
Social Graph
The daemon maintains a local social graph store. On startup it crawls follow lists (kind 3) from Nostr relays and uses follow distance to control write access to your Blossom server, without a manual allow-list for people in your social circle.
The social graph API is available at /api/socialgraph/distance/:pubkey.
Configuration
Config file: ~/.hashtree/config.toml
[]
= ["https://cdn.iris.to", "https://hashtree.iris.to"]
= ["https://hashtree.iris.to"]
[]
= ["wss://relay.damus.io", "wss://relay.snort.social"]
= "npub1..." # defaults to own key
= 2 # BFS depth for social graph crawl
= 3 # max follow distance for write access
= false # require NIP-77 relays for mirror history sync
= true
Keys file: ~/.hashtree/keys
nsec1abc123... default
nsec1xyz789... work
Part of hashtree-rs.