Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🌱 sprout — terminal planner

A cozy, chat-based terminal planner. Tell it what's on your plate in plain language and it organizes everything into projects → tasks → subtasks with deadlines and priorities, gives you quick planning advice, and shows the whole plan in a clean, minimal TUI so you can see what to do next.

Install

python3 -m venv .venv
. .venv/bin/activate
pip install -e ".[dev]"

Run

planner

This opens the TUI: chat on the left, your live plan on the right.

  • Type what you need to do — sprout extracts tasks, projects, subtasks, deadlines, and priorities and applies them instantly.
  • The board groups tasks by project, nests subtasks, shows a colored priority dot (🔴 urgent → 🔵 someday) and a deadline badge (overdue, today, due soon…).
  • Works in any language. Write in Persian (فارسی) and sprout replies in Persian, keeps your task titles in Persian, and understands Jalali/Shamsi dates ("تا پنجشنبه", "۱۵ تیر") — converting them to real deadlines.
  • Shortcuts: Ctrl+R refresh · Ctrl+L clear chat · Ctrl+Z undo · Ctrl+D mark selected task done · Ctrl+X delete selected task · Ctrl+C quit. Use the arrow keys to select a task on the board.

Undo

Made a mistake (or the assistant did)? Press Ctrl+Z in the TUI — or run planner undo — to revert the last batch of changes. Run it repeatedly to walk further back.

Dashboard

planner dashboard               # writes sprout-dashboard.html and opens it
planner dashboard plan.html --no-open

A cute, self-contained HTML view of every project, task, subtask, deadline and priority — a quick, shareable way to see everything you have to do.

One-shot / scripting

planner chat "Plan the Berlin trip: book flights and reserve a hotel by Jul 10, urgent"
planner list
planner add "Book dentist" --project Health --deadline 2026-07-01 --priority 2
planner complete 1
planner undo
planner projects
planner export-ics tasks.ics
planner dashboard

LLM configuration

sprout talks to any OpenAI-compatible chat API. Put your key in a .env file in the project root (it's loaded automatically):

OPENAI_API_KEY=sk-...
# optional overrides:
# PLANNER_BASE_URL=https://api.openai.com/v1
# PLANNER_MODEL=gpt-4.1-mini

Without an API key it falls back to a simple offline heuristic extractor, so the app still runs — just without the smart planning. (Multilingual understanding, including Persian and the Jalali calendar, needs an API key.)

About

terminal ai planner and todo list

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages