theoforger / mastermind

An LLM-powered CLI tool to help you be a better spymaster in Codenames
GNU General Public License v3.0
3 stars 2 forks source link
codenames llm rust

šŸ”® Mastermind - A Second Brain for Spymasters

Mastermind is a CLI tool designed to generate clue words for spymasters in the game of Codenames, leveraging large language models (LLMs) of your choice!

Written in Rust šŸ¦€, because why not?

GitHub License GitHub Actions Workflow Status

A gif demo of the basic functions of this program.

šŸ’» Usage

To get started, prepare two text files:

  1. Words to Link Together - Contains the words from your own team.
  2. Words to Avoid - Contains:
    • Your opponent's words
    • Neutral words
    • The assassin word

One word per line. Refer to the examples directory for sample files.

Run the tool with:

mastermind [TO_LINK] [TO_AVOID]

Feel free to run the program multiple times to get the best result!

Options

šŸ› ļø Building

Prerequisites

Installing via rustup is recommended.

You may also get them from your package manager (note: some distributions may package them separately).

Clone the Repository

git clone https://github.com/theoforger/mastermind.git
cd mastermind

Configure Environment Variables

Make a copy of example.env and name it .env

cp example.env .env

Edit .env to add or modify:

Build the Project

Run the following command:

cargo build --release