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. Version covered by this README: 1.1.1.

Maintenance release prepared on 2026-10-12; see the release notes. This patch updates documentation and development-only tests, not runtime behavior. Package publication and operational deployment are separate.

Development candidate 1.1.2 is unpublished; its release notes describe the #298 Claude registry and target-resolution fix. The published version above remains 1.1.1 until publication is independently verified.

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.1.2

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.1.2
File Size Uploaded Provenance
session_peer-1.1.2.tar.gz 1.0 MB With provenance Details

Built distribution (wheel)

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

Total release size: 1.2 MB

Release files / session_peer-1.1.2.tar.gz

Download URL session_peer-1.1.2.tar.gz
Size 1.0 MB
Tags Source
SHA-256 checksum
How to use checksums
8d6ff8ba18f2d66f6b1edc9decc686fa5210e53e9d71b82b06b024e39214a135
BLAKE2b-256 checksum
How to use checksums
ebc5274a4c3ed4224c4a78ad999d4f165d4e91dde0455a9830c6d0bd5958c9d8
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 13, 2026.

Transparency log

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

Download URL session_peer-1.1.2-py3-none-any.whl
Size 185.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
b282f6cdcfbab116a632f4b63178baf2599bb0dd51299d7e77494f1db81ddd66
BLAKE2b-256 checksum
How to use checksums
b7f67efbb77ef404b2adecc7391fd3b17f4cb3f272125c15b3c623fb844a5ed1
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 13, 2026.

Transparency log

Security for session-peer 1.1.2

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.1.2.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 13, 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