circle
Chat with your circle of friends, entirely in the terminal. Text, audio calls, and video.
Install
circle is distributed on PyPI and installed with uv:
uv tool install circle-chat
circle
uv tool install puts the circle command on your PATH; run circle to start. If you don't
have uv yet:
curl -LsSf https://astral.sh/uv/install.sh | sh
Join
circle is invite only. A friend already in the circle makes you a code from INVITE (^N);
each member can bring in 3 people.
- Run
circleand type:register. - Enter the invite code, your email and a passphrase of 12 characters or more.
- circle mails you a 6 digit code from
access@mail.gaibulloev.com; type it in. No mail? Type:resend, and look in spam. - Pick an @handle (
a-z,0-9,_, 3 to 20) and the name friends see.
You land in the chat, already friends with whoever invited you. Your email stays private: friends see your @handle.
Sign in on another computer
Install circle there and sign in with your email and passphrase. Each computer keeps its own
session; SIGN OUT (^O) ends it on this one or on all of them.
Forgot the passphrase
Type :recover, enter your email, then the 6 digit code circle mails you, then a new passphrase.
Update
uv tool upgrade circle-chat
If that still reports the old version (uv can cache the package index), force a clean reinstall:
uv tool install --force --no-cache circle-chat
Check what you're running with uv tool list. To remove circle entirely: uv tool uninstall circle-chat.
Video quality by terminal
Video adapts to whatever terminal each person runs — no setup:
| Terminal | How video looks |
|---|---|
| iTerm2, kitty, WezTerm, Ghostty | HD pixels (Sixel or Kitty graphics) |
| Terminal.app, tmux, herdr | 2×2 colour blocks (works anywhere) |
Call quality is per person: whoever runs a graphics-capable terminal is seen in HD. Two commands tell you what to expect before a call:
circle termcheck # which video mode this terminal will use, and why
circle videocheck # show your own camera in the video panel, no call needed
On macOS the terminal asks for camera and microphone permission the first time; if a prompt is
missed, allow your terminal under System Settings → Privacy & Security. circle camcheck and
circle miccheck verify each.
Metadata
Release files for circle-chat 0.2.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| circle_chat-0.2.0.tar.gz | 39.0 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| circle_chat-0.2.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 82.5 kB
Release files / circle_chat-0.2.0.tar.gz
| Download URL | circle_chat-0.2.0.tar.gz |
|---|---|
| Size | 39.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
31b3352ac00ad185fea289acc885c8f58f43efbcc210b206b26284576c04bacd
|
|
BLAKE2b-256 checksum How to use checksums |
7ad2819ec1aa8d8b383db4647279d8370a97e90f251fd703f3f203b8344a5865
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.12.13 {"installer":{"name":"uv","version":"0.12.13","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|
Release files / circle_chat-0.2.0-py3-none-any.whl
| Download URL | circle_chat-0.2.0-py3-none-any.whl |
|---|---|
| Size | 43.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
c1129813fd169e9ee7d41d5746914190a636db8345ecbc27c162a132ce7eeb8e
|
|
BLAKE2b-256 checksum How to use checksums |
20e697c02572ebbf3dbcfe080b5d7435677656728a5e51c032e2000d11ce6720
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.12.13 {"installer":{"name":"uv","version":"0.12.13","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|