What Handshake does
Handshake runs a daemon on a loopback address. Agent hooks and MCP tools send session information to the daemon. Handshake can also read native agent storage. When Handshake records a checkpoint, it can store:- The session messages.
- The session title and native ID.
- The working directory.
- The Git branch and working-tree state.
- A summary and settled decisions.
- Factual project knowledge.
Supported agents
See Connect agents for setup details.
Main functions
Session checkpoints
Record session messages, metadata, summaries, decisions, and Git state.
Session restore
Compare current Git state with the checkpoint before you load the handoff
brief.
Session search
Search messages in one session or in all stored sessions.
Project knowledge
Store deterministic project facts and current AI-authored documents.
Local data and network access
Handshake stores its database at~/.handshake/sessions.db. The daemon refuses
non-loopback listen addresses and rejects non-loopback browser origins.
Handshake makes a weekly request to GitHub to check for a release. Release
builds can also send limited anonymous usage events. No session content,
project name, prompt, or file path is in these events. See
Privacy.
Continue with the Quickstart.