Skip to main content

Rust authswap CLI with WebDAV sync and Codex app-server restart

Project description

authswap

authswap is a Rust command-line tool for switching local Codex auth profiles and optionally syncing those profiles through WebDAV.

Features

  • Interactive account picker for local Codex profiles.
  • Account add, switch, refresh, and delete actions inside the interactive UI.
  • WebDAV sync from the interactive UI.
  • Sanitized config.toml sync that excludes machine-local project sections.
  • PyPI wheel packaging for users who do not have Rust installed.

Commands

authswap

authswap reads and writes the standard Codex auth layout:

~/.codex/auth.json
~/.codex/config.toml
~/.codex/accounts/*.auth.json
~/.codex/accounts/registry.json

Install From PyPI

pip install authswap
authswap

Published wheels include the compiled authswap binary, so end users do not need Rust, Node.js, or npm when a compatible wheel is available.

WebDAV Sync

authswap supports custom WebDAV services. Press w in the account picker to configure the server URL and credentials, test the connection, and push or pull account data. When no local accounts exist, the first-run dialog also offers WebDAV so accounts can be restored without signing in first.

The settings file is stored at ~/.codex/authswap.json with private file permissions.

These files contain active credentials. Sync only to a trusted WebDAV server.

Usage Limits

The interactive account picker shows cached 5-hour and weekly limit usage from ~/.codex/accounts/registry.json. Press r on the selected account to request fresh usage from Codex. Press t to refresh all accounts, with 100ms between requests. Both actions update the local cache.

Limit columns show the remaining percentage and the remaining time until reset, for example 28% 1h 20m.

Press s in the account picker to configure whether authswap restarts codex app-server after switching accounts. The setting is off by default and is saved in ~/.codex/authswap.json.

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

authswap-1.0.3.tar.gz (51.7 kB view details)

Uploaded Source

Built Distributions

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

authswap-1.0.3-py3-none-win_arm64.whl (2.1 MB view details)

Uploaded Python 3Windows ARM64

authswap-1.0.3-py3-none-win_amd64.whl (2.2 MB view details)

Uploaded Python 3Windows x86-64

authswap-1.0.3-py3-none-win32.whl (1.9 MB view details)

Uploaded Python 3Windows x86

authswap-1.0.3-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.3 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ x86-64

authswap-1.0.3-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl (2.4 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ i686

authswap-1.0.3-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (2.0 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ ARMv7l

authswap-1.0.3-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (2.2 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ ARM64

authswap-1.0.3-py3-none-macosx_11_0_arm64.whl (2.2 MB view details)

Uploaded Python 3macOS 11.0+ ARM64

File details

Details for the file authswap-1.0.3.tar.gz.

File metadata

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

File hashes

Hashes for authswap-1.0.3.tar.gz
Algorithm Hash digest
SHA256 cdb16e96be30bc6503fe3902d4e69e2913d8af1604b7e238980f13a3d8e892a5
MD5 d7c7e74bb5db60b5872caad3e9acff3d
BLAKE2b-256 ce86a4b2c08a8168e6c88b075ad0c33a0a61de73408cf7e2aeddc4a988fc2256

See more details on using hashes here.

Provenance

The following attestation bundles were made for authswap-1.0.3.tar.gz:

Publisher: rust-pypi-wheels.yml on shevekwang/authswap

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

File details

Details for the file authswap-1.0.3-py3-none-win_arm64.whl.

File metadata

  • Download URL: authswap-1.0.3-py3-none-win_arm64.whl
  • Upload date:
  • Size: 2.1 MB
  • Tags: Python 3, Windows ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for authswap-1.0.3-py3-none-win_arm64.whl
Algorithm Hash digest
SHA256 477580efefcf6c20516c5250cc2b9c57ea22afa015c6f459a45e4278924936be
MD5 88d467b0b8d5819b2b2c7a721f7b18b2
BLAKE2b-256 88ea30b9ec108864e3bf816ad805e0db2b71a49a8fc06a207960079680c8eaec

See more details on using hashes here.

Provenance

The following attestation bundles were made for authswap-1.0.3-py3-none-win_arm64.whl:

Publisher: rust-pypi-wheels.yml on shevekwang/authswap

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

File details

Details for the file authswap-1.0.3-py3-none-win_amd64.whl.

File metadata

  • Download URL: authswap-1.0.3-py3-none-win_amd64.whl
  • Upload date:
  • Size: 2.2 MB
  • Tags: Python 3, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for authswap-1.0.3-py3-none-win_amd64.whl
Algorithm Hash digest
SHA256 b7f13cb51897868127d0d2eb6547f902c4f01e15caa56fca17362ccbc0e9dad8
MD5 4bcffc9a5d9828077f024ae83ee50995
BLAKE2b-256 1a86ac2395a1bee2cafa1f17f092ccbbd281e634707a85bb34f70bf8ae1c71cf

See more details on using hashes here.

Provenance

The following attestation bundles were made for authswap-1.0.3-py3-none-win_amd64.whl:

Publisher: rust-pypi-wheels.yml on shevekwang/authswap

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

File details

Details for the file authswap-1.0.3-py3-none-win32.whl.

File metadata

  • Download URL: authswap-1.0.3-py3-none-win32.whl
  • Upload date:
  • Size: 1.9 MB
  • Tags: Python 3, Windows x86
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for authswap-1.0.3-py3-none-win32.whl
Algorithm Hash digest
SHA256 10a8cc5585a7420b767f9e76e376df27ce1a43e2e3d6dd720f626b1245fa43cb
MD5 30e75ba482aeaa518d4bf76862791c2f
BLAKE2b-256 891a2de0b8ec7daa5b0d288c4b9b0c84265b3c87e50f9de006e1e490e1727fc1

See more details on using hashes here.

Provenance

The following attestation bundles were made for authswap-1.0.3-py3-none-win32.whl:

Publisher: rust-pypi-wheels.yml on shevekwang/authswap

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

File details

Details for the file authswap-1.0.3-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for authswap-1.0.3-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 95d4bdbcb8ad435a8ed8fe93e7ced6f2d8d012a070bd5878ece0b64ee769189c
MD5 ad7e965e2b8324504dec7c93aa88aba8
BLAKE2b-256 9b55760dde0c1391db67e6b146b6bce579055a56007bddfdd02bf9a9e0f008de

See more details on using hashes here.

Provenance

The following attestation bundles were made for authswap-1.0.3-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: rust-pypi-wheels.yml on shevekwang/authswap

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

File details

Details for the file authswap-1.0.3-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for authswap-1.0.3-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 d122a5a8da98bd11cf336ff6cd184a4f3ce59abca0051655191a4eb5faf8fd1a
MD5 21c9953fc59db1a04cc8918248940679
BLAKE2b-256 7439121e798e3c401a2e725951a1b5cf87e80ee87a8cf97b4bff5861f10ac6d6

See more details on using hashes here.

Provenance

The following attestation bundles were made for authswap-1.0.3-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl:

Publisher: rust-pypi-wheels.yml on shevekwang/authswap

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

File details

Details for the file authswap-1.0.3-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl.

File metadata

File hashes

Hashes for authswap-1.0.3-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 7cb1e77880ede2873c5c766e70142d11764f07cefe90f23265237c1f24726d56
MD5 26e8a2f6186a76b85b9e8f48f0c18959
BLAKE2b-256 9b7781dcf801408297d6f98dd5787ba3e022a0a9c6329a43b85986572a0abc30

See more details on using hashes here.

Provenance

The following attestation bundles were made for authswap-1.0.3-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl:

Publisher: rust-pypi-wheels.yml on shevekwang/authswap

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

File details

Details for the file authswap-1.0.3-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for authswap-1.0.3-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 6b5ba2bf28a6cbda645cc682d88cc264e41b9db9276f8d8bed1c750b6dcd7f43
MD5 9f2dc1148cf22ddd58e114946607d0ce
BLAKE2b-256 35f8c8489ab46c716c84deb603497f17d6b09f484ce2f5beacfba17f65aa1fea

See more details on using hashes here.

Provenance

The following attestation bundles were made for authswap-1.0.3-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: rust-pypi-wheels.yml on shevekwang/authswap

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

File details

Details for the file authswap-1.0.3-py3-none-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for authswap-1.0.3-py3-none-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 4b3d0866238b16482ed9b3e1a7febdec67378e2a7e1ac468000ef51701b53618
MD5 27ef51de8df76d8bdb0c64374e749777
BLAKE2b-256 0897516e8433754a159f72cbc07e5668cc4356fdebd20459811220bc7d874728

See more details on using hashes here.

Provenance

The following attestation bundles were made for authswap-1.0.3-py3-none-macosx_11_0_arm64.whl:

Publisher: rust-pypi-wheels.yml on shevekwang/authswap

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