Telecrawl
Use this for Telegram history questions. Local archive first; the Telegram apps only for live/current state.
Sources
- DB:
~/.telecrawl/telecrawl.db - Import source: Telegram Desktop
tdataor native macOS Telegram Postbox (auto-detected) - CLI:
telecrawl - Archive host: the populated archive currently lives on
clawmac(~200 chats). Local DBs on other Macs may be empty — checkstatusfirst and prefer SSH to the archive host over answering from an empty DB:
bashssh -o RequestTTY=no -o RemoteCommand=none steipete@clawmac 'zsh -lc "telecrawl --json status"'
Freshness
bashtelecrawl --json status
Empty counts mean no import has run on this machine, not "no Telegram data".
Queries
All read commands take --json.
bashtelecrawl --json chats --limit 20 telecrawl --json chats --unread telecrawl --json messages --chat <ID> --limit 50 --after 2026-01-01 telecrawl --json search "query" [--chat ID] telecrawl --json contacts --limit 50 telecrawl --json folders telecrawl --json topics --chat <ID>
Import / Refresh
bashtelecrawl doctor # verify a Telegram data source is readable telecrawl import # merge-import from detected local Telegram app telecrawl import --fetch-media # also pull Telegram cloud media
Imports merge by default; --restore replaces the archive — treat as destructive and confirm first.
Backup
Encrypted age shards to a git repo:
bashtelecrawl backup status telecrawl backup push

