jitters-cli
Jitters the VibeCoder, an anxious monkey who codes, in the state of your week of commits. Groggy after your 2 am commits, fit after a week of daytime ones, on the sofa after a week of none.
uvx jitters-cli
(or pipx run jitters-cli; with Node: npx -y https://vibeoverflow.lol/dl/jitters-cli.tgz)
.-"""-. 3am
.-. / .---. \ .-.
( (_| @ - |_) )
'-.| v |.-'
\ ~~~ /
'-.___.-'
c[_] c[_] c[_] c[_] c[_]
Jitters, your week: groggy
You commit after midnight. He is groggy and on his fifth coffee.
It prints one link to see him drawn in that mood, with a picture to save: vibeoverflow.lol/week.
What it reads
Only the dates and hours of your own commits (your git config user.email) of the last 7 days in the folder it runs in. No network call, no telemetry, no dependency. The link carries the mood word, nothing else. --all counts every author.
The rules, first that holds
- seven days with nothing committed: sofa
- a third or more of your commits between midnight and 5 am: groggy
- ten or more a day: wired
- five days or more of daytime commits, none after midnight: fit
- one or more a day: steady
- less than one a day: sleepy
In your Claude Code status line
He sits under your prompt all session, and gets more wrecked the longer you stay: fresh, wired after 90 minutes, groggy from 2 am, fried near a full context.
@(O_O)@ jitters wired | 133 min | ctx 41%
Install once, then one line in ~/.claude/settings.json:
uv tool install jitters-cli # or: pipx install jitters-cli
{ "statusLine": { "type": "command", "command": "jitters-cli statusline" } }
Already have a status line? Keep it; he sits after it:
{ "statusLine": { "type": "command", "command": "jitters-cli statusline -- ~/.claude/statusline.sh" } }
It reads only the JSON Claude Code pipes to it (session minutes and context use) and your clock; nothing leaves your machine. About 25 ms a run. The word jitters links to him drawn in that state (a clickable link in iTerm2, Kitty, WezTerm); --no-link turns that off.
For your coding agent (MCP)
One tool, jitters_week: "how wrecked is my monkey?"
{ "mcpServers": { "jitters": { "command": "uvx", "args": ["jitters-cli", "--mcp"] } } }
Claude Code: claude mcp add jitters -- uvx jitters-cli --mcp
Options
--json prints the answer as JSON; --all every author; --mcp runs the stdio server; statusline the status line above.
Him, on your desk
Jitters at your own commit hour on a mug, and his night as stickers: the shop.
MIT. Made by the Vibeoverflow team, vibeoverflow.lol.
Metadata
Release files for jitters-cli 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 | Provenance | |
|---|---|---|---|---|
| jitters_cli-0.2.0.tar.gz | 13.7 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| jitters_cli-0.2.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 24.7 kB
Release files / jitters_cli-0.2.0.tar.gz
| Download URL | jitters_cli-0.2.0.tar.gz |
|---|---|
| Size | 13.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
83c3c7b5f6aecd792ef85f114cdab0b29ee3aeb8b4c4722079251bf151a73a62
|
|
BLAKE2b-256 checksum How to use checksums |
013340300574d0213db98491d74b97424870ad901d373c8f43cf58d854a894e2
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.3
|
Release files / jitters_cli-0.2.0-py3-none-any.whl
| Download URL | jitters_cli-0.2.0-py3-none-any.whl |
|---|---|
| Size | 11.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
d3a57758d5676e505076c57880a9f9e2495d30727b17a9037dc41ba7f996d355
|
|
BLAKE2b-256 checksum How to use checksums |
5105cdf3ce27213d15c8cf99de2c3daee4590cfdb3eb3091fb20576f7947bfdc
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.3
|
Security for jitters-cli 0.2.0
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.
No provenance found
None of the files in this release were uploaded with provenance metadata.
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.