seshare

command module
v0.1.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 10, 2026 License: MIT Imports: 2 Imported by: 0

README

seshare

Share a Claude Code session peer-to-peer so someone else can continue it with claude --resume. Transfers go directly between the two machines over croc — no server, no account.

Install

curl -fsSL https://raw.githubusercontent.com/cursoroid/seshare/main/install.sh | sh

Runs go install and adds Go's bin dir to your PATH if it isn't already. croc is embedded — no separate install needed.

Prefer to do it by hand? go install github.com/cursoroid/seshare@latest, then ensure $(go env GOPATH)/bin is on your PATH.

Update

Re-run the install command; @latest pulls the newest release:

go install github.com/cursoroid/seshare@latest

Pin a specific version with @v1.2.3 instead of @latest.

Use

Pair once with a person (exchange the code a single time, any channel):

# you
seshare pair alice
# -> prints a code; send it to alice once

# alice
seshare pair you --code <that-code>

Then send and receive by name — no code typing:

# sender (in the repo dir the session belongs to)
seshare send @alice              # newest session in this dir
seshare send <session-id> @alice # a specific one

# recipient (in the dir they want to continue from)
seshare recv @you
# -> cd <dir> && claude --resume <new-id>

Both sides must be online at the same time (it's a live P2P handoff).

One-off without pairing: seshare send prints a one-time code; recipient runs seshare recv <code>.

Notes

  • The transcript may contain secrets, file contents and absolute paths. send warns before uploading; only send to people you trust.
  • The conversation resumes anywhere; tool results pointing at the sender's absolute paths or a specific repo won't re-resolve unless the recipient has the same code checked out.
  • If --resume trips on the sender's local file snapshots, receive with seshare recv @you --strip-snapshots.
  • Contacts live in ~/.seshare/contacts.json (0600). A per-contact code is a permanent shared secret; rotate it with seshare pair <name> --rotate (then re-share the new code once).

See docs/superpowers/specs/ for the design.

Documentation

Overview

Command seshare shares Claude Code sessions peer-to-peer so a recipient can continue them with `claude --resume`. See docs/superpowers/specs.

Directories

Path Synopsis
internal
cli
Package cli wires the seshare subcommands together.
Package cli wires the seshare subcommands together.
contacts
Package contacts stores per-person croc share codes in ~/.seshare/contacts.json.
Package contacts stores per-person croc share codes in ~/.seshare/contacts.json.
ids
Package ids generates session UUIDs and croc share codes.
Package ids generates session UUIDs and croc share codes.
session
Package session locates Claude Code session transcripts on disk.
Package session locates Claude Code session transcripts on disk.
transcript
Package transcript rewrites Claude Code JSONL session transcripts for import.
Package transcript rewrites Claude Code JSONL session transcripts for import.
transport
Package transport moves a file between two machines over croc (embedded).
Package transport moves a file between two machines over croc (embedded).

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL