A cyberpunk terminal RPG for learning Bash, Git, Docker, Postgres, Vim, SSH, Python, Regex, Linux, Kubernetes, and AWS.
Project description
NEXUS Quest
_ _ _______ ___ _ _____
| \ | || ___\ \ / / | | / ___|
| \| || |__ \ V /| | | \ `--.
| . ` || __| / \| | | |`--. \
| |\ || |___/ /^\ \ |_| /\__/ /
\_| \_/\____/\/ \/\___/\____/
_____ _ _ _____ _____ _____
| _ | | | | ___/ ___|_ _|
| | | | | | | |__ \ `--. | |
| | | | | | | __| `--. \ | |
\ \/' / |_| | |___/\__/ / | |
\_/\_\\___/\____/\____/ \_/
"The terminal is not legacy. It is the only honest interface the machine has. Everything else is theater."
You wake up with a contract on your screen. No client name. No callback address. Just:
NEXUS CORP MAINFRAME // INTERNAL FRAUD SUSPECTED
EVIDENCE BURIED ACROSS MULTIPLE INFRASTRUCTURE LAYERS
EXTRACT BEFORE THE MORNING ROTATION
— ANONYMOUS
You are Ghost — a contract operative with one rule: no exploit kits. No zero-days. Just your terminal, your knowledge, and eight layers of systems between you and the truth.
The catch: every skill you need, you have to learn for real.
Keywords: terminal RPG, learn bash, learn git, learn docker, learn vim, learn SQL, learn Python, command line tutorial, hacker game, cyberpunk learning game, DevOps training, terminal game
What You'll Learn
| Chapter | Domain | The Mission |
|---|---|---|
| 1 | Bash | Infiltrate a NEXUS workstation — filesystem, processes, pipelines |
| 2 | SSH | Pivot through seven jump hosts to reach the inner network |
| 3 | Vim | Edit config files on servers with no GUI, no undo history |
| 4 | Git | Reconstruct eleven years of tampered commit history |
| 5 | Docker | Audit containerized infrastructure for hidden misconfigurations |
| 6 | Postgres | Extract 417 fraudulent transactions from the primary database |
| 7 | Python | Script the evidence packager — automate the delivery chain |
| 8 | Regex | Defeat the pattern filter between you and the drop site |
| 9 | Linux | Own the delivery server — users, permissions, processes, logs |
| 10 | Kubernetes | Navigate the container orchestration cluster — pods, RBAC, Helm |
| 11 | AWS | Breach the cloud layer — IAM, S3, RDS, Lambda, VPC |
760+ challenges across 109+ zones. Real commands. Real syntax. Real production skills.
Install
The easy way (recommended)
Mac / Linux:
pip install nexus-quest
Windows — open PowerShell and run:
pip install nexus-quest
If
nexus-questis not found after install: Open a new terminal window. If still missing, runpython -m nexus_quest.mainas a fallback.
Best experience on Windows: Use Windows Terminal (free, Microsoft Store). The default
cmd.exemay display characters incorrectly.
One-liner installer (no pip? start here)
Mac / Linux:
curl -sSL https://raw.githubusercontent.com/thorski1/nexus-quest/main/install.sh | bash
Windows (PowerShell):
powershell -ExecutionPolicy Bypass -c "irm https://raw.githubusercontent.com/thorski1/nexus-quest/main/install.ps1 | iex"
Then open a new terminal and run nexus-quest.
Auto-updates
The game checks for updates automatically at startup. When a new version is available you'll see:
╭──────────────────────────────╮
│ SOFTWARE UPDATE │
│ │
│ Update available! │
│ Installed : v1.0.0 │
│ Latest : v1.1.0 │
╰──────────────────────────────╯
Install update now? [y/N]
Type y and the game installs the update and restarts itself.
Running
| Command | Description |
|---|---|
nexus-quest |
Full 8-chapter campaign — start here |
terminal-quest |
Bash chapter — standalone |
ssh-quest |
SSH chapter — standalone |
vim-quest |
Vim chapter — standalone |
git-quest |
Git chapter — standalone |
docker-quest |
Docker chapter — standalone |
postgres-quest |
Postgres chapter — standalone |
python-quest |
Python chapter — standalone |
regex-quest |
Pattern Recon — standalone |
linux-quest |
System Infiltration — standalone |
kubernetes-quest |
Container Orchestration — standalone |
aws-quest |
Cloud Layer — standalone |
Gameplay
Each challenge teaches one concept through a short lesson, then asks you to demonstrate it:
- Knowledge Check — type the command, flag, or answer
- Live Challenge — run a real command in a sandboxed environment
- Flag Quiz — identify the correct option or syntax
- Fill in the Blank — complete the command or concept
- Matching — pair commands to their descriptions
[h] Hint [b] Bookmark [d] Difficulty [?] Help [s] Skip [q] Menu
Features
| Feature | Description |
|---|---|
| Daily Challenge | One challenge per day with 2x XP bonus and streak tracking |
| Timed Drill | 5/10/15-minute blitz — wrong answers first, then spaced repetition |
| Difficulty Modes | Easy (0.75x XP, free hints) / Normal / Hard (1.5x XP) |
| Speed Records | Per-challenge personal bests — new records flash on screen |
| Bookmarks | Flag any challenge for later review with [b] |
| Zone Preview | See challenge list before entering a zone |
| Completion Certificate | ASCII grade certificate (S/A/B/C/D) on campaign complete |
| Star Ratings | Zones rated 1-3 stars based on hints and skips used |
| XP & Levels | Rookie -> Operative -> Shadow -> Ghost -> Phantom -> Specter |
Progress saves automatically. Resume any time.
Requirements
- Python 3.10+
- A terminal emulator (Terminal.app, iTerm2, Windows Terminal)
- 80+ column width recommended
Built On
Quest Engine — a generic terminal RPG framework.
Narrative style inspired by Neal Stephenson's cyberpunk fiction.
Project details
Release history Release notifications | RSS feed
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 nexus_quest-1.6.0.tar.gz.
File metadata
- Download URL: nexus_quest-1.6.0.tar.gz
- Upload date:
- Size: 5.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
06666973acf2eca9c9290345af4adb56dbdf18e7ce65047dbfb26c59cc3643dc
|
|
| MD5 |
c1c8ee617de235d6a79b4b895251b9e4
|
|
| BLAKE2b-256 |
d81e4c8bfe245d1964984b7b542bd3e0eba507a7cf1dffca4f1118b6589dea02
|
Provenance
The following attestation bundles were made for nexus_quest-1.6.0.tar.gz:
Publisher:
publish.yml on thorski1/nexus-quest
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
nexus_quest-1.6.0.tar.gz -
Subject digest:
06666973acf2eca9c9290345af4adb56dbdf18e7ce65047dbfb26c59cc3643dc - Sigstore transparency entry: 1186417620
- Sigstore integration time:
-
Permalink:
thorski1/nexus-quest@cff752f3b74109cc908612d2959ca51c9236b79c -
Branch / Tag:
refs/tags/v1.6.0 - Owner: https://github.com/thorski1
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@cff752f3b74109cc908612d2959ca51c9236b79c -
Trigger Event:
push
-
Statement type:
File details
Details for the file nexus_quest-1.6.0-py3-none-any.whl.
File metadata
- Download URL: nexus_quest-1.6.0-py3-none-any.whl
- Upload date:
- Size: 5.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2eb1b4a2e5e1faf72fcd21f15c77cd4d1b5055281cdaa853d2ea4b8056225351
|
|
| MD5 |
605232654d7aa314bc9efb148191add8
|
|
| BLAKE2b-256 |
e23704e668cad2c1c80cec8f57a7a91bdf822b6a4626af0efde7634c5d3d97e2
|
Provenance
The following attestation bundles were made for nexus_quest-1.6.0-py3-none-any.whl:
Publisher:
publish.yml on thorski1/nexus-quest
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
nexus_quest-1.6.0-py3-none-any.whl -
Subject digest:
2eb1b4a2e5e1faf72fcd21f15c77cd4d1b5055281cdaa853d2ea4b8056225351 - Sigstore transparency entry: 1186417621
- Sigstore integration time:
-
Permalink:
thorski1/nexus-quest@cff752f3b74109cc908612d2959ca51c9236b79c -
Branch / Tag:
refs/tags/v1.6.0 - Owner: https://github.com/thorski1
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@cff752f3b74109cc908612d2959ca51c9236b79c -
Trigger Event:
push
-
Statement type: