Skip to main content

Sync your browser cookies across machines.

Project description

cookiesync

cookiesync banner

PyPI Python License: PolyForm Noncommercial 1.0.0

Sync your browser cookies across machines — land on a new laptop already logged in.

cookiesync copies the cookies your browser already holds on one machine and replays them on another, reusing your live session instead of asking for passwords again — so logins, 2FA, and SSO state carry over without re-authenticating. It's browser-agnostic, and you pick which machines and which sites it touches. Automation can borrow a logged-in session too: hand a CI job or an agent the cookies it needs, never a password.

macOS only. cookiesync keeps your browser's Safe Storage key behind a Touch ID prompt and a Secure Enclave–bound daemon, so decrypted cookies never land on disk. The key helper is a Developer-ID-signed, notarized .app.

Install

Install the cookiesync command with uv:

uv tool install cookiesync-cli
cookiesync --help

Quickstart

# Fetch the signed key helper and install the LaunchAgents (one time)
$ cookiesync install
Installing the signed key helper via Homebrew (brew install yasyf/tap/cookiesync-keyhelper)…
Installed and verified key helper: /Applications/cookiesync-keyhelper.app
Installed cookiesync agents.

# Track a browser to sync between this Mac and another host
$ cookiesync browser add other-host chrome
Tracking other-host/chrome/Default

# Hand a logged-in session to a script — no password
$ cookiesync cookies https://example.com --browser chrome

Once a browser is tracked, the resident daemon watches its cookie store and converges it across your hosts. Run cookiesync reconcile to force a full pass.

Commands

Command What it does
install Fetch the signed key helper, then install the LaunchAgents (watch daemon + reconcile tick).
uninstall Remove the cookiesync LaunchAgents.
doctor Check that the key helper is installed and Developer-ID signed.
browser add/ls/rm Track, list, and untrack the browser profiles cookiesync syncs across hosts.
watch Run the resident sync daemon: watch local stores and serve the RPC socket.
sync --browser <name> Converge one browser group across this host and its peers.
reconcile Run a full reconcile pass over every tracked browser group.
auth Release the Safe Storage key behind one Touch ID tap and cache it for a short window.
cookies <url> Stream a URL's cookies in the chosen format (Playwright by default).
self Print this host's SSH target, as reposync reports it.
rpc <method> Low-level RPC client for the resident daemon.

Run cookiesync --help, or cookiesync <command> --help, for the full reference.

How it works

cookiesync install fetches the notarized key helper and starts a resident daemon. The daemon watches each tracked browser's cookie store, and on a change it converges that group across your hosts over SSH — extracting and re-applying cookies through the same RPC the peers speak. Decryption needs the browser's Safe Storage key, which the helper releases only behind a Touch ID tap (cookiesync auth) and caches in the Secure-Enclave-bound daemon for a short window, never on disk.

License

PolyForm Noncommercial 1.0.0 — see LICENSE.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

cookiesync_cli-0.2.0.tar.gz (48.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

cookiesync_cli-0.2.0-py3-none-any.whl (63.3 kB view details)

Uploaded Python 3

File details

Details for the file cookiesync_cli-0.2.0.tar.gz.

File metadata

  • Download URL: cookiesync_cli-0.2.0.tar.gz
  • Upload date:
  • Size: 48.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for cookiesync_cli-0.2.0.tar.gz
Algorithm Hash digest
SHA256 145b499860f3e76f34e05761d947c70f16e944f23e4958a2b672dd157b641d88
MD5 557ef04301bb37cf21bb66abf092a167
BLAKE2b-256 85aa3a6e60da8467e0d4f210216025c25a14e5482c5b4e76d34662516bc0c63b

See more details on using hashes here.

Provenance

The following attestation bundles were made for cookiesync_cli-0.2.0.tar.gz:

Publisher: release-pypi.yml on yasyf/cookiesync

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file cookiesync_cli-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: cookiesync_cli-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 63.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for cookiesync_cli-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 ef44b313e6901e5907d3241ce56621c00f134cfcee9868c0557bd429b6a4f4d3
MD5 c495358f365a4e6799af5215139c4691
BLAKE2b-256 94e27d470900144074ac6a9715909afa92ab2c3e7d0675dbaeb9ce09a8a90616

See more details on using hashes here.

Provenance

The following attestation bundles were made for cookiesync_cli-0.2.0-py3-none-any.whl:

Publisher: release-pypi.yml on yasyf/cookiesync

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page