Cross-tool handoff.
3Notch moves selected context between AI work surfaces by writing local packets. It does not inspect client databases, scrape chat history, or maintain a remote inbox.
There are four shapes of handoff. Pick the one that matches where the source and destination live.
Same store (one project, two tools)
For one project used from both Claude Code and Claude Desktop, point both clients at the same .notch/ store:
$ notch onboard --yes --mcp claude-code
$ notch onboard --yes --mcp claude-desktop
When the source agent creates a packet through create_packet, the destination agent can read it through list_packets and get_packet immediately. No transfer step.
Conversational flow:
Package this week's launch-context updates for Claude Desktop.
Include files used, assumptions, exclusions, and next steps.
Inspect before relying on it:
$ notch packet list --outbox
$ notch packet preview <packet-id>
Cross-repo (same machine, different repo)
The source creates an outbox packet; the destination imports it:
$ notch packet import ../source/.notch/outbox/<packet-folder>/packet.md
$ notch packet preview <packet-id> --inbox
If the destination needs the actual files (not just paths), use --file on the source side:
$ notch packet create --to-repo ../destination --file src/auth.ts --file docs/auth.md
See Cross-repo packets for the full flow.
Cross-machine
Pack the folder into a deterministic .notchpkt archive, move it through any channel you already use (scp, rsync, iCloud, email, git LFS), and unpack on the other side:
$ notch packet pack <packet-id>
# move <packet-id>.notchpkt to the destination machine
$ notch packet unpack <packet-id>.notchpkt
.notchpkt is a gzipped tar with deterministic entry ordering. Hashes are re-verified at unpack against the manifest before anything lands in the inbox.
Web-chat (no local MCP)
For Claude.ai and other browser chats that can't reach a local MCP server, use the bridge prompt and stdin import:
$ notch prompt --client claude-chat
# paste the prompt into the chat; when done, ask for a packet
$ pbpaste | notch packet import -
Rules of the road
- The source must hand over the context it wants stored. 3Notch does not derive it for you.
- Source links and exclusions belong in the packet, not as out-of-band conversation.
- Same-store handoff is fastest. Cross-repo and cross-machine require an explicit import.
- Inbox packets are immutable. To change context, author a successor with
--supersedesor a typed reply withnotch reply. - Private seed records (
.notch/private/) are hidden from MCP unless the server is started with--include-private.