Skip to main content

Regret — the Bad Decisions terminal client

Regret is a dependency-free terminal client for Bad Decisions services. Its optional full-screen Peer Pressure interface uses Textual. The client contains no card corpus, runs on Linux, macOS, and Windows, and uses the free BytesAndCoffee-hosted service by default.

$ regret deal --packs coffee
I started by talking about workplace accommodations. Somehow the channel is now discussing one hell of a robustly deployed pastebin.

Install and try it

Homebrew is the recommended macOS and Linux path and installs man regret:

brew install bytesandcoffee/tap/regret
regret health
regret deal

Cross-platform pipx alternative:

pipx install bad-decisions-client
regret health
regret deal

Plain pip also works: python -m pip install bad-decisions-client. regret doctor checks the installation, manual-page discovery, configuration, and service compatibility without changing anything.

Use

regret --list-packs
regret deal --packs base,maha
regret provenance
regret provenance --json
regret doctor

Join an ephemeral multiplayer room with Peer Pressure:

regret together ohno --name Michael

For the full-screen table, install the optional interface and add --tui:

pipx install 'bad-decisions-client[tui]'
regret together ohno --name Michael --tui

The TUI shows the table, scores, Responsible Adult, prompt, private hand, anonymous decisions, and round result in one continuously synchronized view. The ordinary line-oriented interface remains the dependency-free default. The Homebrew formula installs only that default; use pipx for the TUI.

The default endpoint is https://bytes.coffee/bad-decisions. Use --api-url for another compatible deployment. Connection and API failures return a non-zero status. See the 60-second guide and multiplayer documentation.

Consequences and local state

Consequences is opt-in:

regret consequences status
regret consequences enjoy
regret consequences regret

The first interactive deal asks once when no preference exists; non-interactive runs remain disabled. regret provenance reads the protected last-draw record without contacting the API. Feedback is one mutable vote per eligible draw. Use regret identity reset or regret identity off to control the optional pseudonymous analytics identity. See Consequences.

Manual page

pipx links the page into ~/.local/share/man. A pyenv/asdf shim can hide a page installed by pip; regret doctor prints the correct MANPATH fix. The generic form is:

export MANPATH=":$(python3 -c 'import sys; print(sys.prefix)')/share/man"

Metadata

Release files for bad-decisions-client 2.1.0

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

Source distribution (sdist)

Source distribution for bad-decisions-client 2.1.0
File Size Uploaded
bad_decisions_client-2.1.0.tar.gz 29.4 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for bad-decisions-client 2.1.0
File Interpreter ABI Platform
bad_decisions_client-2.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 51.8 kB

Release files / bad_decisions_client-2.1.0.tar.gz

Download URL bad_decisions_client-2.1.0.tar.gz
Size 29.4 kB
Tags Source
SHA-256 checksum
How to use checksums
ec15fc0193be799bf4b1937ce9f6821e59cc75be1aa4085b5cc7f08eb5f72bb0
BLAKE2b-256 checksum
How to use checksums
268882464035fb8f0e8b3f179b671d4a0112f9b305f0b275067ec2a55ff34ba9
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 Sep 29, 2026.

Transparency log

Release files / bad_decisions_client-2.1.0-py3-none-any.whl

Download URL bad_decisions_client-2.1.0-py3-none-any.whl
Size 22.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
6e4d7dab3350789667ca48e1cbf54151336ae236f004dec8ffbdc7130c3b3d74
BLAKE2b-256 checksum
How to use checksums
90e558d09d6e6b677ee01b3cb326898e499f0fa5bd5568c6861d24002b779027
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 Sep 29, 2026.

Transparency log

Release history Release notifications | RSS feed

2.3.0

2 release files

2.2.2

2 release files

2.2.1

2 release files

2.2.0

2 release files

2.1.6

2 release files

2.1.5

2 release files

2.1.4

2 release files

2.1.3

2 release files

2.1.2

2 release files

2.1.1

2 release files

This release

2.1.0 This release

2 release files

2.0.3

2 release files

2.0.2

2 release files

2.0.1

2 release files

2.0.0

2 release files

1.8.5

2 release files

1.8.4

2 release files

1.8.3

2 release files

1.8.2

2 release files

1.8.1

2 release files

1.6.3

2 release files

1.6.2

2 release files

1.6.1

2 release files

1.6.0

2 release files

1.5.0

2 release files

1.4.1

2 release files

1.2.2

2 release files

1.2.1

2 release files

1.2.0

2 release files

1.1.9

2 release files

1.1.8

2 release files

1.1.4

2 release files

1.1.3

2 release files

1.1.2

2 release files

1.1.1

2 release files

1.1.0

2 release files

1.0.1

2 release files

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