╭───┬───┬───┬───┬───┬───╮ │ W │ O │ R │ D │ L │ E │ ╰───┴───┴───┴───┴───┴───╯
wordle-cli
Play the New York Times Wordle in your terminal.
No browser tab, no accounts, no dependencies — just Python 3.
Wordle · 2026-08-18
S T A R E
P L U C K Q W [E][R][T] Y [U] I O [P]
· · · · · [A][S] D F G H J [K][L]
· · · · · Z X [C] V B N M
· · · · ·
· · · · ·
[2/6] >
Guess tiles are green / yellow / grey; the on-screen keyboard uses two greys — light for unused letters, dark for ones you've tried.
Features
- Plays today's real Wordle — the answer is read from NYT's public puzzle feed.
- Practice mode with shareable codes so friends can race on the same word.
- Hard mode — revealed hints must be reused in later guesses.
- Live QWERTY tracker beside the board.
- Real-word validation against a bundled list of ~15,000 words.
- Shareable result grid in the familiar copy-paste format.
- Clean ANSI colours, and zero dependencies — pure Python standard library.
Installation
From PyPI (recommended):
pip install nyt-wordle-cli
Or with pipx to keep it isolated as a global command:
pipx install nyt-wordle-cli
Then run:
wordle
Usage
wordle # play today's puzzle
wordle --hard # hard mode
wordle --practice # offline game; prints a code you can share
wordle --practice K7Q2MX # play a friend's code (same word)
wordle -n # hide the keyboard tracker
wordle --hint # print a small hint, then exit
wordle --solve # reveal today's answer, then exit
| Flag | Effect |
|---|---|
--practice [CODE] |
Play offline; share the printed code, or pass a friend's code |
--date YYYY-MM-DD |
Play a past day's puzzle |
--hard |
Revealed greens must stay in place and yellows must be reused |
-n, --no-keyboard |
Hide the letter tracker |
--no-color |
Disable colour (also honours the NO_COLOR env var) |
--colorblind |
High-contrast blue/orange tiles |
--hint |
First letter plus vowel and unique-letter counts, then exit |
--solve |
Print the answer and exit |
--version |
Print the version and exit |
Play with a friend
Practice mode plays a word offline and prints a short code. Anyone who runs the same code gets the same word, so you can compete:
wordle --practice # you: prints e.g. "K7Q2MX" and starts a game
wordle --practice K7Q2MX # a friend: same code, same word
The code is deliberately unrelated to the word — it is mapped through a hash,
so the code reveals nothing about the answer. Codes are case- and
dash-insensitive (k7q2-mx works too).
Sharing your result
After each game, wordle-cli prints a result grid you can paste anywhere:
Wordle 1,234 4/6
⬛🟨⬛⬛🟩
⬛⬛🟨🟩🟩
🟨⬛🟩🟩🟩
🟩🟩🟩🟩🟩
How it works
The daily answer is read from NYT's public puzzle endpoint —
https://www.nytimes.com/svc/wordle/v2/<date>.json — which is the same JSON your
browser downloads before you type a guess. wordle-cli just reads the solution
field. Practice mode never touches the network: it draws from a bundled,
curated answer list and derives the word from your share code.
Development
git clone https://github.com/NathanWalash/wordle-cli.git
cd wordle-cli
pip install -e ".[dev]" # or: pip install -e . pytest
pytest
The test suite covers scoring (including duplicate-letter rules), guess and hard-mode validation, the share grid, and the deterministic share-code mapping. CI runs it on Python 3.9 through 3.12.
Contributing
Issues and pull requests are welcome. Please keep changes focused and make sure
pytest passes before opening a PR.
License
Metadata
Release files for nyt-wordle-cli 1.5.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 | |
|---|---|---|---|
| nyt_wordle_cli-1.5.0.tar.gz | 65.4 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| nyt_wordle_cli-1.5.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 128.3 kB
Release files / nyt_wordle_cli-1.5.0.tar.gz
| Download URL | nyt_wordle_cli-1.5.0.tar.gz |
|---|---|
| Size | 65.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
7ccde3febe8e34590baf220e712421abbdae842310b2676bda6c859da1e1c296
|
|
BLAKE2b-256 checksum How to use checksums |
9fda115a1365d5eddc68a9ddb7a665ade1dd890d94ff2aefc4f91b9cd1f21617
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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 Aug 18, 2026.
Transparency logRelease files / nyt_wordle_cli-1.5.0-py3-none-any.whl
| Download URL | nyt_wordle_cli-1.5.0-py3-none-any.whl |
|---|---|
| Size | 62.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
484f5ef666dcc1842c9b16ce9c2c309338c7c05bf6db49c84d32a7e310d42042
|
|
BLAKE2b-256 checksum How to use checksums |
19eadc3b6417cec557f3cc865850723cc405713b691bcd10c5988cb4fb6eca16
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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 Aug 18, 2026.
Transparency log