⚡ A terminal pet that lives in your CLI — feed it, play with it, watch it grow
Project description
bytepet-cli
A tiny terminal pet for your command line: feed it, play with it, let it sleep, and watch its mood change over time.
/\_____/\
( ^ ^ )
( =^.^= ) Pixel the Cat
(--m-m----) Level 3 · 245/300 XP
Health ██████████ 100%
Hunger ███████░░░ 70%
Happiness ████████░░ 80%
Energy █████░░░░░ 55%
[f] Feed [p] Play [s] Sleep [q] Quit
Install
npm install -g bytepet-cli
You can also install from PyPI if you prefer Python tooling:
pip install bytepet-cli
The PyPI package runs the same Node-powered terminal game, so Node.js still needs to be available on your machine.
Run
byte
The npm package also exposes:
bytepet
Helpful flags:
byte --help
byte --version
byte --status
byte --stats
byte --play
byte --reset
What You Can Do
Bytepet is built around quick keyboard actions:
| Key | Action | Effect |
|---|---|---|
f |
Feed | Hunger +30, happiness +5, XP +10 |
s |
Sleep | Energy +40, health +5, XP +5 |
p |
Play | Opens the mini-game menu |
q |
Quit | Save and leave your pet for later |
Mini-games currently include:
| Game | Reward |
|---|---|
| Rock Paper Scissors | XP +5 to +15 per round |
| Number Guess | XP +5 or +15 per round |
| Coin Flip | XP +4 or +12 per round |
Your pet remembers you between sessions. Stats decay while you are away, so the next visit may find them hungry, tired, sad, or in need of care.
Save Management
byte --status prints your current pet stats without opening the interactive UI. byte --reset deletes your saved pet so you can adopt a new one on the next run.
byte --stats prints lifetime mini-game totals, including wins, losses, draws, XP earned from games, and per-game breakdowns. byte --play jumps directly into the mini-game menu.
Bytepet stores your pet locally in:
~/.byte-cli/pet.json
If the save file becomes unreadable, bytepet moves it aside as a .corrupt-...json backup and lets you adopt a fresh pet.
Pets And Moods
On first run, choose a cat, dog, or dragon and give it a name. Each pet has ASCII-art mood states driven by its stats:
| Mood | Trigger |
|---|---|
| Happy | Stats are healthy |
| Hungry | Hunger is low |
| Sleepy | Energy is low |
| Sad | Happiness is low |
| Sick | Health is low |
Progression
Feeding, sleeping, and playing all grant XP. Earn enough XP and your pet levels up, giving the little CLI companion a reason to keep living rent-free in your terminal.
Promo Video
The video/ folder contains the Remotion project used to render the promo:
cd video
npm install
npm run render
The rendered output lives at video/out/BytepetVideo.mp4.
License
MIT - Copyright (c) 2026 Muhammad Talha Khan
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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file bytepet_cli-0.3.0.tar.gz.
File metadata
- Download URL: bytepet_cli-0.3.0.tar.gz
- Upload date:
- Size: 14.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e82c5357c0258466bf9fd37c2061cf2336b23f6e597058709c4ce3e987cf90d8
|
|
| MD5 |
9c81a780086cf92c4d11de86d74805e4
|
|
| BLAKE2b-256 |
a2c55208e4462ec4efc9206cc6dd265ec54765f10b56d8d81b91ea10f70f487c
|
File details
Details for the file bytepet_cli-0.3.0-py3-none-any.whl.
File metadata
- Download URL: bytepet_cli-0.3.0-py3-none-any.whl
- Upload date:
- Size: 14.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
123d0c563b87e800b81f65bcae56cbd0eae00ee10693a8a71894fdebdf2627ca
|
|
| MD5 |
4608923912991bb33a98f845fd20cf7b
|
|
| BLAKE2b-256 |
f893fb5bb676d55375c4bd0fb6e02d5c94a364f41e3497c2aa3b2ebbcc364252
|