shellwrapped
Spotify Wrapped for your terminal.
Your shell history's year in review: top commands, git habits, typos, 2am sessions, and your terminal personality. Plus a card to share.
uvx shellwrapped # or: pipx run shellwrapped
When it's done, you get a card like this saved next to you:
Demo and card generated from a synthetic year of history.
What it finds
- Your top commands, counted properly through pipes,
&&,sudo,envandVAR=valueprefixes - Your git habits: how many
git statusit takes you to feel safe - Your most-repeated command: a strong hint it deserves an alias
- Your typos:
gti,sl,claer,pyhton,cd.., and friends - When you work: your rush hour, your longest session, your busiest day, how much happens after 10pm
- Habits:
sudo !!,rm -rf,git push --force,cdimmediately followed byls - Your terminal personality: The Night Shell, The Git Whisperer, The Container Captain, The Pythonista, The Speed Typist, ...
Works with zsh, bash, fish and PowerShell on macOS, Linux and Windows. It finds your history files automatically, including zsh's extended format with multi-line commands.
Private by design
- Everything runs locally. No network requests.
- The share card shows only counts and program names (
git,docker), never full commands, paths or arguments. - Anything token-shaped is masked before a command is shown in your terminal.
Options
shellwrapped --all-time # your whole history instead of this year
shellwrapped --year 2025
shellwrapped --no-anim # skip the animation, just the summary
shellwrapped --file ~/.zsh_history --shell zsh
shellwrapped --card wrapped.png # where to save the card (or --no-card)
Year-by-year stats need timestamps in your history. zsh's EXTENDED_HISTORY and fish record
them automatically. In bash, add export HISTTIMEFORMAT='%F %T ' to your .bashrc. Without timestamps,
shellwrapped covers everything your history remembers.
License
MIT. Bundles the Inter typeface under the SIL Open Font License.
Metadata
Release files for shellwrapped 0.1.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 | Actions |
|---|---|---|---|---|
| shellwrapped-0.1.0.tar.gz | 738.1 kB | With provenance | Details for shellwrapped-0.1.0.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| shellwrapped-0.1.0-py3-none-any.whl | Python 3 | none | any | Details for shellwrapped-0.1.0-py3-none-any.whl |
Total release size: 1.5 MB
Release files / shellwrapped-0.1.0.tar.gz
| Download URL | shellwrapped-0.1.0.tar.gz |
|---|---|
| Size | 738.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
4dc0675d7bef9e3c8957aa4581162e6d4c2a1f2b9e48dd1b5067ad83b721bd11
|
|
BLAKE2b-256 checksum How to use checksums |
29a41321f08ef9b08f692f0e7735db1e76ac5c6a5bc63fe3053d386fd43477fa
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
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 Nov 5, 2026.
Transparency logRelease files / shellwrapped-0.1.0-py3-none-any.whl
| Download URL | shellwrapped-0.1.0-py3-none-any.whl |
|---|---|
| Size | 740.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
3e3c7f00a7e84adc48062332d1f37269355964db49ba49754c03400cd9955459
|
|
BLAKE2b-256 checksum How to use checksums |
0ac8a776cec445cf8a79f606e63ee9377a5fb63e85011c272dfec43072232e40
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
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 Nov 5, 2026.
Transparency logSecurity for shellwrapped 0.1.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.
Full provenance
Both files in this release have been uploaded with provenance metadata.
Attestation for shellwrapped-0.1.0.tar.gz
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 Nov 5, 2026.
Transparency logA 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.
To learn more about protecting yourself from malicious actors, visit our package security documentation.