Abby:~/Projects/cosmos-todo$ cat README.md

Cosmos Todo Board ✦

A terminal-based kanban TUI for task management with RPi sync and Telegram notifications.

πŸ“„ View Source (todo.py) πŸ“„ Study CLI (study.py) πŸ“‹ README

> Demo

✦ COSMOS TODO BOARD ✦ Wed Apr 16 14:30 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ β—‹ TODO [4] ◐ IN PROGRESS [2] ● DONE [3] ────────────────── ────────────────── ────────────────── β—‹ #6 review 152 mt2 ◐ #8 work on 151 proj ● #13 fix car paint β€’academic β€’academic β€’life β—‹ #7 finish 161 proj ◐ #9 prepare interview β€’academic β€’job ● #14 reply LinkedIn β—‹ #10 reply Handshake β€’job β€’job β—‹ #12 apply internship ● #15 USCIS letter β€’job β€’life ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ j/k move Β· space cycle Β· a add Β· 1-4 tab Β· p push Β· q quit

> Features

πŸ–₯️ Curses TUI

Full terminal UI with keyboard navigation, tag filtering, and real-time updates. No mouse needed.

πŸ“‘ RPi Sync

Push/pull tasks to Raspberry Pi via rsync over SSH. Access your board from any device on LAN.

πŸ“± Telegram

Send your board to Telegram via OpenClaw agent on RPi5. Get your tasks on your phone.

🏷️ Tag System

life / academic / job tags with color coding. Filter by pressing 1-4 in TUI.

⌨️ CLI Mode

todo add "task" -t job, todo done 5, todo board β€” scriptable from any shell.

πŸ“¦ Zero Dependencies

Pure Python stdlib. 620 lines. JSON storage. Works on any system with Python 3.

> Architecture

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”     rsync      β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚  MacBook Air      β”‚ ───────────── β”‚  Raspberry Pi 5   β”‚
β”‚  ~/.todo/tasks.jsonβ”‚              β”‚  ~/.todo/tasks.jsonβ”‚
β”‚  todo (TUI/CLI)   β”‚              β”‚  openclaw agent    β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜               β”‚  Telegram bot      β”‚
                                   β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

> Also: Study CLI

A companion tool for generating interactive study sites from course material.

study init 152      # scaffold ~/Desktop/coursework/152/{raw,site}/
study serve 152     # local HTTP server + OpenClaw LLM chat proxy
                    # β†’ http://127.0.0.1:8765/ with POST /chat

> Tech Stack

Python 3 Β· curses Β· argparse Β· JSON Β· subprocess Β· rsync Β· SSH Β· OpenClaw

cd ../