Cinnasole

What is Cinnasole?

Cinnasole is a self-contained command launcher for your Linux terminal (Kitty, Konsole, and other terminal emulators). Run python3 cinnasole.py --start and you get a cinnasole> prompt with a set of built-in utility commands — hashing, network lookups, password tools, and more.

Requirements

Python 3.11 or newer. Most commands use only the Python standard library. A couple of optional features need extra tools:

  • whois and nmap use the system whois / nmap utilities if installed (sudo pacman -S whois nmap on Arch) — both fall back to a built-in alternative if not.
  • crack can recover passwords on PDF files if the pikepdf Python package is installed (pip install pikepdf). Zip file support needs nothing extra.
  • python3 cinnasole.py --edit installs nano automatically if it isn't already present.

Getting started

Cinnasole responds differently depending on how you invoke it from your regular shell:

  • python3 cinnasole.py (no arguments) — opens the Cinnasole website in your default browser.
  • python3 cinnasole.py --start — launches the interactive cinnasole> prompt shown below.

Shell commands

These run directly from your terminal, before the interactive prompt starts:

  • python3 cinnasole.py --start — Launch the interactive cinnasole> prompt.
  • python3 cinnasole.py --version — Check the latest release on GitHub.
  • python3 cinnasole.py --github / cinnasole --gh — Open the GitHub repo in your browser.
  • python3 cinnasole.py --type — Show what Cinnasole is built on.
  • python3 cinnasole.py --wipe — Permanently delete Cinnasole from your machine, after a confirmation prompt.
  • python3 cinnasole.py --edit — Open Cinnasole's own source file in nano to make changes. Run cinnasole --restart afterward for edits to take effect.
  • python3 cinnasole.py --restart — Restart Cinnasole in place, picking up any changes made via --edit.

Prompt commands

These run inside the interactive cinnasole> prompt, after python3 cinnasole.py --start:

  • help — Show this list of commands.
  • hash — Compute MD5/SHA256 of a file. Usage: hash <file>
  • whois — Public domain registration lookup. Usage: whois <domain>
  • ports — List open common ports on this machine.
  • nmap — Scan localhost/private network. Usage: nmap <target>
  • myip — Show this machine's public IP address.
  • dns — Resolve a domain to its IP(s). Usage: dns <domain>
  • b64 — Base64 encode/decode. Usage: b64 encode|decode <text>
  • pwcheck — Check password strength, offline. Usage: pwcheck <password>
  • sysinfo — Show OS, kernel, CPU, memory info.
  • crack — Recover a password on your own zip/PDF. Usage: crack <file> [--wordlist <file>]
  • exit — Exit Cinnasole.
  • And more! — Install Cinnasole to see all commands.

A note on nmap and crack

nmap only scans localhost and private network ranges (127.0.0.1, 192.168.x.x, 10.x.x.x, 172.16–31.x.x) — it will refuse to scan public addresses. crack is meant for recovering the password on a zip or PDF file you created yourself and forgot the password to, not for opening files that belong to someone else.

Linux only

Cinnasole is built for Linux and checks for it on every launch. If it detects a different operating system, it will refuse to run and point you toward dual-booting or using a Linux VM instead.