Boggle Solver
by @christianhaberl
Solve Boggle boards — find all valid words (German + English) on a 4x4 letter grid. Use when the user shares a Boggle photo, asks for words on a grid, or plays word games. Includes 1.7M word dictionaries (DE+EN).
clawhub install boggle📖 About This Skill
name: boggle description: Solve Boggle boards — find all valid words (German + English) on a 4x4 letter grid. Use when the user shares a Boggle photo, asks for words on a grid, or plays word games. Includes 1.7M word dictionaries (DE+EN).
Boggle Solver
Fast trie-based DFS solver with dictionary-only matching. No AI/LLM guessing — words are validated exclusively against bundled dictionaries (359K English + 1.35M German).
Workflow (from photo)
1. Read the 4x4 grid from the photo (left-to-right, top-to-bottom) 2. Show the grid to the user and ask for confirmation before solving 3. Only after user confirms → run the solver 4. Always run English and German SEPARATELY — present as two labeled sections (🇬🇧 / 🇩🇪)
Solve a board
# English
python3 skills/boggle/scripts/solve.py ELMU ZBTS ETVO CKNA --lang enGerman
python3 skills/boggle/scripts/solve.py ELMU ZBTS ETVO CKNA --lang de
Each row is one argument (4 letters). Or use --letters:
python3 skills/boggle/scripts/solve.py --letters ELMUZBTSETVOCKNA --lang en
Options
| Flag | Description |
|---|---|
| --lang en/de | Language (default: en; always run EN and DE separately) |
| --min N | Minimum word length (default: 3) |
| --json | JSON output with scores |
| --dict FILE | Custom dictionary (repeatable) |
Scoring (standard Boggle)
How it works
QUENHARI... → "QU" occupies one position)Data
Dictionaries are auto-downloaded from GitHub on first run if missing.
data/words_english_boggle.txt — 359K English wordsdata/words_german_boggle.txt — 1.35M German wordsPerformance
⚙️ Configuration
| Flag | Description |
|---|---|
| --lang en/de | Language (default: en; always run EN and DE separately) |
| --min N | Minimum word length (default: 3) |
| --json | JSON output with scores |
| --dict FILE | Custom dictionary (repeatable) |