Commands

CookCLI is a free, open-source command-line tool for working with Cooklang recipe files. It parses .cook files, generates combined shopping lists from multiple recipes, runs a local web server to browse your collection, imports recipes from websites, and scales servings — all from the terminal.

Commands

CommandAliasDescription
reciperParse, validate and display recipe files
shopping-listslGenerate a combined shopping list from recipes
serversStart a web server to browse recipes
searchfSearch through your recipe collection
importiImport recipes from websites
reportrpGenerate custom reports using templates
doctorAnalyze recipes for issues
pantrypManage and analyze pantry inventory
seedInitialize with example recipes
lspStart the Language Server Protocol server
updateuUpdate CookCLI to the latest version

Installation

Download Binary

Download the latest release for your platform from the releases page and add it to your PATH.

macOS/Linux

Using Homebrew:

brew install cookcli

Install with Cargo

If you have Rust installed:

cargo install cookcli

Global Options

OptionDescription
-v, --verbose...Increase verbosity (-v info, -vv debug, -vvv trace)
-h, --helpPrint help
-V, --versionPrint version

Quick Start

cook seed                                     # Create example recipes
cook recipe "Neapolitan Pizza"                # View a recipe
cook shopping-list "Neapolitan Pizza" "Easy Pancakes"  # Shopping list
cook server --open                            # Browse in browser

For the Cooklang markup language, see the language specification.

Import

Import recipes from websites and convert to Cooklang format.

Requires the OPENAI_API_KEY environment variable for conversion to Cooklang. Without the …

Read more →

Report

Generate custom reports from recipes using templates.

Note: The report command is currently a prototype feature.

Usage

cook report …

Read more →

Build

The cook build command groups artifact-generation subcommands. Today it offers web for static-site generation; future targets (e.g. cookbooks) will …

Read more →

Lsp

Start the Language Server Protocol server for Cooklang editor integration.

Usage

cook lsp [OPTIONS]

The server communicates over …

Read more →

Pantry

Manage and analyze your pantry inventory. Supports full CRUD operations on pantry items as well as analysis commands for stock levels, expiry dates, …

Read more →