← Back to Skills Marketplace
christianhaberl

Boggle Solver

by christianhaberl · GitHub ↗ · v1.0.0
cross-platform ✓ Security Clean
1944
Downloads
1
Stars
2
Active Installs
1
Versions
Install in OpenClaw
/install 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).
README (SKILL.md)

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 en

# German
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)

  • 3-4 letters: 1 pt
  • 5 letters: 2 pts
  • 6 letters: 3 pts
  • 7 letters: 5 pts
  • 8+ letters: 11 pts

How it works

  • Builds a trie from dictionary files (one-time, ~11s)
  • DFS traversal from every cell, pruned by trie prefixes
  • Adjacency: 8 neighbors (horizontal, vertical, diagonal)
  • Each cell used at most once per word
  • Qu tile support: Standard Boggle "Qu" tiles are handled as a single cell (e.g., QUENHARI... → "QU" occupies one position)
  • All matching is dictionary-only — no generative/guessed words

Data

Dictionaries are auto-downloaded from GitHub on first run if missing.

  • data/words_english_boggle.txt — 359K English words
  • data/words_german_boggle.txt — 1.35M German words

Performance

  • Trie build: ~11s (first run, 1.7M words)
  • Solve: \x3C5ms per board
Usage Guidance
This skill is coherent and appears to do what it says: a local Boggle solver that auto-downloads large English/German wordlists from a public GitHub repository on first run. Before installing, be aware that: - The skill will fetch ~1.7M word entries (large files) from raw.githubusercontent.com (a public GitHub repo). If you have network or disk constraints or a policy against runtime downloads, get the data files manually and place them under skills/boggle/data/. - The repo used is a user project (christianhaberl); if you require higher assurance, inspect the dictionary files and the repo history yourself prior to running. - The skill does not include OCR/image parsing — your agent or environment must extract the 4x4 letters from photos and pass them to the solver. - No credentials are requested and there are no hidden endpoints or attempts to read unrelated system files. If these points are acceptable, the skill is reasonable to install; if you need stricter supply-chain guarantees, download and vet the dictionary files yourself and/or host them on an approved source.
Capability Analysis
Type: OpenClaw Skill Name: boggle Version: 1.0.0 The skill is designed to solve Boggle boards and explicitly downloads large dictionary files from its own GitHub repository (https://raw.githubusercontent.com/christianhaberl/boggle-openclaw-skill/main/data) on first run, as documented in SKILL.md and implemented in data/download.py and scripts/solve.py. This network activity is transparent, serves a clear functional purpose (loading dictionaries), and the downloaded files are treated as data, not executable code. There is no evidence of data exfiltration, malicious execution, persistence mechanisms, obfuscation, or prompt injection attempts against the agent in SKILL.md. The instructions for the agent are clear and aligned with the stated purpose.
Capability Assessment
Purpose & Capability
Name/description match the code and files: a trie-based Boggle solver for English and German. The included scripts implement the solver and the described features (Qu tile support, bilingual runs, scoring). Required capabilities (none) are proportionate to the stated purpose.
Instruction Scope
SKILL.md tells the agent to 'read the 4x4 grid from the photo' and to confirm with the user before running; the provided code implements only the solver CLI and dictionary download, not OCR or image parsing. This is a scope mismatch (the agent must handle OCR / photo parsing externally) but not a security issue. The runtime instructions do not ask the agent to read unrelated files, environment variables, or contact unexpected endpoints other than GitHub raw content.
Install Mechanism
No install spec is present (instruction-only), which minimizes install risk. The runtime code auto-downloads two dictionary files from a GitHub raw URL (raw.githubusercontent.com/christianhaberl/...). Downloading code/data from a public GitHub repo is expected here but still involves network fetch of large files; the URLs are not shortened or obfuscated and point to a user repo rather than an official organization — reasonable for this use but worth noting.
Credentials
The skill requests no environment variables, credentials, or config paths. The code only reads/writes files under its own data directory and performs network fetches for dictionary files. No secret exfiltration vectors are present.
Persistence & Privilege
The skill is not forced-always, does not request persistent elevated privileges, and does not modify other skills or global config. It runs locally and only downloads dictionaries into its data directory on first run.
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install boggle
  3. After installation, invoke the skill by name or use /boggle
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v1.0.0
Initial release: trie-based DFS, 1.7M words (DE+EN), Qu-tile support, <5ms solve. Dictionaries auto-download from GitHub.
Metadata
Slug boggle
Version 1.0.0
License
All-time Installs 2
Active Installs 2
Total Versions 1
Frequently Asked Questions

What is Boggle Solver?

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). It is an AI Agent Skill for Claude Code / OpenClaw, with 1944 downloads so far.

How do I install Boggle Solver?

Run "/install boggle" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.

Is Boggle Solver free?

Yes, Boggle Solver is completely free (open-source). You can download, install and use it at no cost.

Which platforms does Boggle Solver support?

Boggle Solver is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created Boggle Solver?

It is built and maintained by christianhaberl (@christianhaberl); the current version is v1.0.0.

💬 Comments