Krabby
Print pokemon sprites in your terminal
Install / Use
/learn @yannjor/KrabbyREADME
krabby
Krabby is mostly a Rust rewrite of phoney badger's pokemon-colorscripts with some extra features.

Table of contents
Features
- Pokemon from every generation, including shinies, megas, gigantamax, and regional variants
- Print random pokemon (with filters for generations and different forms)
- Print pokemon by name
- Print pokedex entry together with the sprite
- Configuration file, right now only for language and shiny rate
Installation
Arch Linux x86_64 (and derivatives)
From the AUR using your favorite AUR helper
yay -S krabby-bin
Or alternatively you can manually download the PKGBUILD file from the repository, then run
makepkg -si
There is also the development package krabby-git that tracks the main branch.
Ubuntu/Debian x86_64 (and derivatives)
Download the latest .deb release. Then run (replacing v.v.v with the version number)
dpkg -i krabby_v.v.v_amd64.deb
Homebrew
Add the tap:
brew tap yannjor/krabby
Install:
brew install krabby
Installing from source (other distros and MacOS/Windows)
To install krabby from source, you will need Rust. Installation instructions can be found here.
Now using cargo, run
cargo install krabby
Make sure you have .cargo/bin added to your shell PATH. This can be done by adding the following to your .profile, .bash_profile or .zprofile
export PATH="$PATH:$HOME/.cargo/bin"
Usage
Run the help command krabby help to see the following help message.
USAGE:
krabby <SUBCOMMAND>
OPTIONS:
-h, --help Print help information
-V, --version Print version information
SUBCOMMANDS:
help Print this message or the help of the given subcommand(s)
list Print list of all pokemon. This command can optionally be followed by a generation
number or range (1-9) to show pokemon from a specific generation or range of
generations. The generations can be provided as a continuous range (eg. 1-3) or
as a list of generations (1,3,6)
name Select pokemon by name. Generally spelled like in the games. A few exceptions are
nidoran-f, nidoran-m, mr-mime, farfetchd, flabebe type-null etc. Perhaps grep the
output of list if in doubt
random Show a random pokemon. This command can optionally be followed by a generation
number or range (1-9) to show random pokemon from a specific generation or range
of generations. The generations can be provided as a continuous range (eg. 1-3) or
as a list of generations (1,3,6)
To get more detailed information about a subcommand you can also view its help, for example
krabby help random
To get the help of the random subcommand.
Examples
Print a specific pokemon
krabby name charizard
Print a specific shiny pokemon
krabby name spheal -s
Print a specific pokemon together with its pokedex entry
krabby name mudkip -i
Print an alternative form of a pokemon
krabby name blastoise -f mega
Print a random pokemon (gens 1-9)
krabby random
Print random pokemon from generations 1-3
krabby random 1-3
Print a random pokemon from generations 1,3 and 6
krabby random 1,3,6
Print a random pokemon excluding megas, gigantamax and regional variants
krabby random --no-mega --no-gmax --no-regional
Print a random pokemon excluding all variants (like above, including one-offs like primal)
krabby random --no-variant
Configuration
When the program is run, a TOML config file will automatically be created in the user's config
directory (usually ~/.config) under krabby/config.toml if it doesn't exist already.
On MacOS the config will be in: /Users/<username>/Library/Application Support/krabby
On Windows this will be: C:\Users\<username>\AppData\Roaming\krabby
# The language to use when printing the pokemon's name and/or description.
# Possible options include en (English), fr (French), de (German), ja (Japanese),
# zh_hans (Chinese with simplified characters), zh_hant (Chinese with traditional characters)
language = 'en'
# The probability to show a shiny pokemon when using the random command
shiny_rate = 0.0078125
Credits
The pokemon sprites for krabby were generated using sprites from PokéSprite and converted to unicode using Phoney Badger's pokemon-generator-scripts. The pokemon data was obtained from PokéAPI.
Similar projects
Related Skills
himalaya
353.1kCLI to manage emails via IMAP/SMTP. Use `himalaya` to list, read, write, reply, forward, search, and organize emails from the terminal. Supports multiple accounts and message composition with MML (MIME Meta Language).
node-connect
353.1kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
taskflow
353.1kname: taskflow description: Use when work should span one or more detached tasks but still behave like one job with a single owner context. TaskFlow is the durable flow substrate under authoring layer
frontend-design
111.6kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
