Skip to main content

session-peer

PyPI PyPI downloads per week PyPI downloads per month CI License: MIT

English · 한국어 · 日本語 · 简体中文

Find and message Claude Code and Codex sessions from one CLI, locally or over SSH.

Ask another session to review a change, report progress, or pick up a task. session-peer uses native agent inboxes and queues; the receiving agent decides how to respond.

Demo

Codex sends a request to Claude Code and receives an explicit ACK

A real local request and reply using session-peer 1.0.2: Codex contacts Claude Code and receives ACK DEMO-READY. CLI and message excerpts are anonymized and re-rendered in this ~22-second animation, not a screen recording; send success alone is not an ACK.

Quick Start

Install

Python 3.9+. The core local/SSH CLI has no third-party Python dependencies. Source version: 1.2.1. At the 2026-10-19 publication checkpoint, the last verified published stable release was 1.2.0.

See the publication record and historical preparation for published version 1.2.0. Package publication and operational deployment are separate.

Check GitHub Releases and PyPI for available versions. The preparation notes record the dated patch scope and remaining gates; a source version alone does not establish package availability.

Experimental handoff is opt-in: local POSIX Claude supports receipt ACKs; Codex and SSH support correlation-only submission, not ACK observation. See the handoff guide for the shipped scope and remaining acceptance gates.

pipx install session-peer
session-peer --version
session-peer list

Use uv tool install session-peer instead if you prefer uv. Native Windows, virtual-environment pip, and standalone/SSH installation variants are in the installation guide.

For SSH discovery, replace the example host worker with your host or alias. Then replace the fictional session name and full UUID with the listed destination:

session-peer list --host worker
session-peer send --to api-worker --message "Report progress"
session-peer send --host worker --to 'codex:00000000-0000-4000-8000-000000000001' --message "Review the change"

The SSH destination needs Python and the target agent's native inbox or queue, but not an installed session-peer CLI. For a custom Codex home, pass the listed codexHome with --codex-home; use --dry-run to validate without sending. Use the destination account that owns the session (--host USER@HOST). SSH access and receiver permissions still apply.

posted / queued confirms submission, not consumption, ACK, or completion. Ask for an explicit reply when needed. Ordinary sends refuse inactive Codex destinations by default and do not start them. Never automatically retry an uncertain send.

The optional agent skill is installed separately from the runtime; see the installation guide for its Skills CLI command.

Update

Use the same manager that installed the runtime:

pipx upgrade session-peer
# or: uv tool upgrade session-peer
# or, in its virtual environment: python -m pip install --upgrade session-peer

For local installations, session-peer update replaces standalone runtime files; package-managed installs receive upgrade guidance instead. It never updates agent skills: use their original installer (Skills CLI, or install.sh only for an installer-owned compatibility copy). The compatibility copy is separate from the independently released skill; existing manager-owned skills are preserved. See update details and remote limitations.

Docs

Paired devices / encrypted Relay require Unix, Python 3.11+, and session-peer[relay], with pinned identities and explicit receiver policy. Package publication does not guarantee hosted-service availability. The blind Relay cannot decrypt application message content. MCP / Codex plugin requires Python 3.10+ and session-peer[mcp]; MCP wake requires both send and wake capabilities. Wake runs only when explicitly requested and can start a turn, consume usage, and change project files. The Antigravity bridge remains experimental.

English is canonical; Korean, Japanese, and Simplified Chinese guides are kept aligned. Translations do not change the CLI output language.

License

MIT.

Support and security

Use GitHub Issues for bugs and features. Report vulnerabilities privately under the security policy, not in public issues. Redact secrets, conversation text, session IDs, and personal paths from shared diagnostics.

For private questions or an alternative security contact, email support@abruption.dev with [session-peer] in the subject. Support is best effort, with no guaranteed response time. Emails are reviewed manually, never automatically published as issues. English and Korean reports are welcome.

Metadata

Release files for session-peer 1.2.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for session-peer 1.2.1
File Size Uploaded Provenance
session_peer-1.2.1.tar.gz 1.1 MB With provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for session-peer 1.2.1
File Interpreter ABI Platform
session_peer-1.2.1-py3-none-any.whl Python 3 none any Details

Total release size: 1.3 MB

Release files / session_peer-1.2.1.tar.gz

Download URL session_peer-1.2.1.tar.gz
Size 1.1 MB
Tags Source
SHA-256 checksum
How to use checksums
d3a98426f8acfb18404db2b155d20abd3606ffefa2a4466826ed27866ee08c98
BLAKE2b-256 checksum
How to use checksums
e7e016436e33742505bd2bab9da6a622a79a71fded3db18beeb9c344e54c30a8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 19, 2026.

Transparency log

Release files / session_peer-1.2.1-py3-none-any.whl

Download URL session_peer-1.2.1-py3-none-any.whl
Size 195.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
68f474533c346539729ba7ffc637fcd772fe8eedbab0852c1557fcca51b4d403
BLAKE2b-256 checksum
How to use checksums
d6f11aa492bfb24fe3ffbf92a6e9c9395c61ff1691c9b78e3f617d04e56d9528
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 19, 2026.

Transparency log

Security for session-peer 1.2.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for session_peer-1.2.1.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 19, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page