A crossword board game AI, written in Go

View on GitHub


What is Macondo?

Macondo will some day be a world-class Crossword Game AI.

But for now, it is in beta, so download and use at your own risk. It does no machine learning and it doesn’t have all of Quackle’s parameters yet. The interface is minimal. In short, it should just be used for research. Please expect things to break!

Tutorial video:

How to install

  1. Navigate here:

  2. Download the latest file for your operating system.

  3. Try opening the macondo executable. If you are using Mac OS, your system might complain. You can open it anyway by going to your Settings -> Security & Privacy -> General and click “Allow anyway” next to macondo. I swear it’s not a virus.

Features it has:

Features it’s missing that Quackle has:

Features we will add in the future:

How to use

  1. Open the executable. If you wish your default lexicon to be CSW21, you must set the environment variable DEFAULT_LEXICON to CSW21. Otherwise, it defaults to NWL23. In this case you can set your lexicon by typing in set lexicon CSW21 into the macondo prompt.

  2. Move some *.kwg files for your desired lexicon to the ./data/lexica/gaddag folder. You can find kwg files at

  3. Type in help for commands

  4. Note that many commands are very primitive. I did not want to expand this shell interface too much as I expect the actual interface to be a GUI. As such there are things that you probably shouldn’t do, like sim a position and generate other positions at the same time.

  5. See this quick video tutorial. Note that this can quickly go out of date. I’ll make another tutorial when a GUI is ready.

  6. See also this video that demonstrates how to use the “infer” command in depth: