GitHub - Lars147/tmx-cli: โšก Pure Python CLI for Cookidoo (Thermomix) meal planning - search recipes, manage your weekly plan, zero dependencies

tmx-cli logo

๐Ÿณ Your Thermomixยฎ/Cookidooยฎ in the terminal โ€” meal plans, recipes, shopping lists

Python 3.9+ MIT License Zero Dependencies 24k+ Recipes

Quick Start โ€ข Features โ€ข Demo โ€ข Installation โ€ข Usage


What is this?

tmx-cli brings Cookidooยฎ to your terminal. No more browser hassle โ€” manage your weekly meal plan, search 24,000+ recipes, and generate shopping lists directly from the command line.

โš ๏ธ Disclaimer: This is a hobby project for personal use. Not officially affiliated with or endorsed by Vorwerk/Cookidooยฎ.

It's fast (no slow web apps), hackable (pipe recipes into other tools, automate your meal prep), and runs anywhere with zero dependencies โ€” just pure Python standard library.


๐Ÿš€ Quick Start

# With uvx (recommended) โ€” runs instantly without installation
uvx --from git+https://github.com/Lars147/tmx-cli tmx login

# Log in, then get started!
uvx --from git+https://github.com/Lars147/tmx-cli tmx search "Pasta"

โœจ Features

Feature Description
๐ŸŽฏ Setup Interactive onboarding โ€” configure TM version, diet preferences, max cooking time
๐Ÿ” Login Secure OAuth authentication with your Cookidoo account
๐Ÿ“… Meal Plan View, sync, add/move recipes
๐Ÿ” Search Browse 24,000+ recipes with filters (time, difficulty, category) โ€” auto-applies your config preferences
โค๏ธ Favorites Manage your favorite recipes
๐Ÿ“– Recipe Details Ingredients, steps, nutrition โ€” all in the terminal
๐Ÿ›’ Shopping List Auto-generate, export (Markdown/JSON)
โšก Shell Completion Tab completion for Bash, Zsh, Fish
๐Ÿ“ฆ Zero Deps Python standard library only, no dependencies
๐Ÿค– AI-Agent Friendly Perfect for Claude, Codex, OpenClaw & other AI assistants

Works great with AI Agents

The CLI approach makes tmx-cli ideal for AI coding assistants like Claude Code, Codex, or OpenClaw. Text-based, structured commands and parseable output mean AI agents can easily manage your meal planning for you โ€” "add a vegetarian recipe to Thursday" just works.


๐ŸŽฌ Demo

View meal plan

$ tmx plan show

โ•”โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•—
โ•‘  ๐Ÿณ COOKIDOO WOCHENPLAN                                  โ•‘
โ• โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•ฃ
โ•‘  Stand: 2026-02-03 19:39 UTC                             โ•‘
โ•‘  Ab: 2026-02-08                                          โ•‘
โ•šโ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•

  Sonntag 8.  (2026-02-08)
    โ€ข Auberginen-Pasta  [r292049]
    โ€ข Cremekartoffeln mit Spinat  [r45808]

  Montag 9.  (2026-02-09)
    (keine Rezepte)

Search recipes

$ tmx search "Pasta" -n 3

๐Ÿ” Suche in Cookidoo: 'Pasta'
โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€
Gefunden: 24044 Rezepte (zeige 3)

   1. Tomaten-Knoblauch-Pasta
      โฑ 30 Min  โญ 4.1
      https://cookidoo.de/recipes/recipe/de-DE/r130616

   2. Garnelen-Pasta mit Pesto-Sauce
      โฑ 25 Min  โญ 4.8
      https://cookidoo.de/recipes/recipe/de-DE/r792997

   3. Curry-Nudeln mit gebratenem Schweinefilet
      โฑ 45 Min  โญ 4.6
      https://cookidoo.de/recipes/recipe/de-DE/r447830

Get recipe details

$ tmx recipe r130616

โ•”โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•—
โ•‘  Tomaten-Knoblauch-Pasta                                 โ•‘
โ• โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•ฃ
โ•‘  ๐Ÿ“Š Einfach  โ”‚  โฑ 30 Min  โ”‚  ๐Ÿฝ 3 Portionen               โ•‘
โ•šโ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•

๐Ÿ”— https://cookidoo.de/recipes/recipe/de-DE/r130616

๐Ÿ“ ZUTATEN
โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€
  โ€ข 50 g Parmesan (in Stรผcken)
  โ€ข 1 rote Chilischote, getrocknet
  โ€ข 4 Knoblauchzehen
  โ€ข 1 Zwiebel (halbiert)
  โ€ข 30 g ร–l
  โ€ข 1 Bund Basilikum (ohne Stiele)
  โ€ข 550 g Wasser
  โ€ข 400 g Cherry-Tomaten (halbiert oder geviertelt)
  โ€ข 20 g Tomatenmark
  โ€ข 1 TL Salz
  โ€ข 340 g Tagliatelle

๐Ÿ‘จ๐Ÿณ ZUBEREITUNG
โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€

  1. Parmesan in den Mixtopf geben, 10 Sek./Stufe 8
     zerkleinern und umfรผllen.

  2. Chili, Knoblauch und Zwiebeln in den Mixtopf geben, 4
     Sek./Stufe 7 zerkleinern und mit dem Spatel nach unten
     schieben.
  ...

Generate shopping list

$ tmx shopping show

๐Ÿ›’ Einkaufsliste
โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€

๐Ÿ“– Rezepte (5):
  โ€ข Auberginen-Pasta  [r292049]
  โ€ข Butter-Paneer-Masala  [r762577]
  โ€ข Tofu-Curry mit Gemรผse  [r821223]
  โ€ข Pilzragout mit Spรคtzle  [r784889]
  โ€ข Halloumi-Wraps  [r823455]

๐Ÿฅ• Zutaten (70):

  [ ] 2  Auberginen
  [ ] 4.5 TL Salz
  [ ] 8 Prisen Pfeffer
  [ ] 3 EL Olivenรถl
  [ ] 400 g Muschelnudeln
  [ ] 800 g Cherry-Tomaten, aus der Dose
  ...

๐Ÿ“ฆ Installation

Option 1: uvx (recommended)

# Run directly โ€” no installation needed
uvx --from git+https://github.com/Lars147/tmx-cli tmx --help

# Or install globally
uv tool install git+https://github.com/Lars147/tmx-cli
tmx --help

# Update to latest version
uv tool install --upgrade git+https://github.com/Lars147/tmx-cli

Option 2: pipx

pipx install git+https://github.com/Lars147/tmx-cli
tmx --help

# Update
pipx install --force git+https://github.com/Lars147/tmx-cli

Option 3: Clone the repo

git clone https://github.com/Lars147/tmx-cli.git
cd tmx-cli
python3 tmx_cli.py --help

๐Ÿ“– Usage

๐ŸŽฏ Setup & Configuration

tmx setup                        # Interactive onboarding
                                 # โ†’ TM version (TM5/TM6/TM7)
                                 # โ†’ Diet preferences (vegetarian, vegan, etc.)
                                 # โ†’ Max cooking time
                                 # Searches automatically use these preferences!

๐Ÿ” Authentication

tmx login                                    # Interactive login
tmx login --email user@example.com --password secret  # With credentials
tmx status                                   # Check login status

๐Ÿ“… Meal Plan

tmx plan show                    # Show plan (from cache)
tmx plan sync                    # Sync from Cookidoo
tmx plan sync --days 7           # Only next 7 days
tmx plan sync --since 2026-02-01 # From specific date
tmx today                        # Today's recipes only

# Manage recipes
tmx plan add r130616 --date 2026-02-10       # Add
tmx plan remove r130616 --date 2026-02-10    # Remove
tmx plan move r130616 --from 2026-02-10 --to 2026-02-15  # Move

๐Ÿ” Search

tmx search "Pasta"                      # Simple search
tmx search "Curry" -n 20                # More results
tmx search "Salat" --time 15            # Max 15 minutes
tmx search "Kuchen" --difficulty easy   # Easy recipes only
tmx search "Suppe" --tm TM6             # TM6 recipes only
tmx search "" --category vegetarisch    # Browse by category
tmx search "Pasta" -t 30 -d easy        # Combine filters

# ๐Ÿ’ก Pro tip: Run `tmx setup` once โ€” searches will auto-apply your
#    TM version, diet preferences, and max time filters!

๐Ÿ“‚ Categories

tmx categories                  # List all categories
tmx categories sync             # Fetch current from Cookidoo

๐Ÿ“– Recipe Details

tmx recipe r130616              # Ingredients, steps, nutrition
tmx recipe show r130616         # Same โ€” detailed view with nutrition info

โค๏ธ Favorites

tmx favorites                   # Show all favorites
tmx favorites add r130616       # Add to favorites
tmx favorites remove r130616    # Remove from favorites

๐Ÿ›’ Shopping List

# View
tmx shopping show               # Aggregated list
tmx shopping show --by-recipe   # Grouped by recipe

# Manage
tmx shopping add r130616        # Add recipe
tmx shopping add-item "Milk" "Bread"  # Add custom items
tmx shopping from-plan          # All recipes from plan (7 days)
tmx shopping from-plan -d 14    # Next 14 days
tmx shopping remove r130616     # Remove recipe
tmx shopping clear              # Clear list

# Export
tmx shopping export                       # Text to stdout
tmx shopping export -f markdown           # Markdown with checkboxes
tmx shopping export -f markdown -r        # Grouped by recipe
tmx shopping export -f json -o list.json  # JSON to file

๐Ÿ—‘๏ธ Cache

tmx cache clear                 # Clear cache
tmx cache clear --all           # Also session (requires re-login)

โšก Shell Completion

# Bash (add to ~/.bashrc)
eval "$(tmx completion bash)"

# Zsh (add to ~/.zshrc)
eval "$(tmx completion zsh)"

# Fish (run once)
tmx completion fish > ~/.config/fish/completions/tmx.fish

๐Ÿ”ง How It Works

Component Technology
Authentication Vorwerk/Cidaas OAuth Flow
Meal Plan Cookidoo Calendar API
Recipe Search Algolia (same as Cookidoo website)
Storage Local JSON files

Files

~/.tmx-cli/
โ”œโ”€โ”€ cookidoo_cookies.json       # Session
โ”œโ”€โ”€ cookidoo_search_token.json  # Search token
โ”œโ”€โ”€ cookidoo_weekplan_raw.json  # Cached plan
โ””โ”€โ”€ cookidoo_categories.json    # Categories

๐Ÿค Contributing

Contributions are welcome!

  1. Fork the repo
  2. Create a feature branch (git checkout -b feature/awesome)
  3. Commit your changes (git commit -m 'Add awesome feature')
  4. Push to the branch (git push origin feature/awesome)
  5. Open a Pull Request

Ideas & TODOs

  • Collections support
  • Meal plan templates
  • Nutrition summary
  • Recipe export (Markdown/PDF)

โš ๏ธ Disclaimer

This is an unofficial tool. Cookidooยฎ and Thermomixยฎ are registered trademarks of the Vorwerk Group.

This project is not affiliated with, endorsed, or sponsored by Vorwerk. Please respect Cookidoo's terms of service.


๐Ÿ“„ License

MIT ยฉ Lars Heinen


Made with โค๏ธ for Thermomix nerds who live in the terminal