topydo
Manage todo.txt tasks using topydo CLI. Add, list, complete, prioritize, tag, and organize tasks with dependencies, due dates, recurrence, and projects. Use for any task management, todo lists, or when the user mentions tasks, todos, or todo.txt. Requires Python 3 and pip. Works on macOS, Linux, and Windows.
Install via CLI (Recommended)
clawhub install openclaw/skills/skills/bastos/topydoWhat This Skill Does
topydo is a powerful command-line interface tool designed to help you manage your daily tasks using the industry-standard todo.txt file format. By leveraging this skill, your AI agent can seamlessly add, list, complete, prioritize, and organize your tasks without requiring a proprietary database. It supports advanced features like dependencies between tasks, recurring schedules, start (threshold) dates, and specific due dates. Whether you are managing complex projects with multiple subtasks or simply keeping a simple list of groceries, topydo acts as an efficient, text-based engine that keeps your productivity data portable and human-readable.
Installation
To integrate this skill into your environment, use the OpenClaw Hub command: clawhub install openclaw/skills/skills/bastos/topydo. For optimal performance, ensure you have Python 3 installed on your machine. On macOS, the preferred installation method is Homebrew (brew install topydo). For Linux or general cross-platform compatibility, you can use pip: pip3 install topydo. If you require extended functionality such as iCal support, columns, or interactive prompts, use pip3 install 'topydo[columns,prompt,ical]'.
Use Cases
topydo is ideal for users who prefer "Plain Text Accounting" for their tasks. It is perfect for developers who want to keep task tracking within their terminal environment, project managers needing to track dependencies between tasks, and anyone tired of complex, bloated subscription-based to-do apps. It is excellent for tracking recurring bills, maintenance schedules, or strictly prioritized work lists that require context-switching, such as separating tasks into @home, @office, or @errands.
Example Prompts
- "Add a new task to buy groceries for the party due this Friday and mark it as high priority."
- "Show me all tasks that are currently overdue and list all tasks associated with the @office context."
- "Set up a recurring task for my weekly review every Monday, and make sure it depends on finishing my current documentation draft."
Tips & Limitations
- Portability: Since tasks are stored in a plain text file, you can version control them with Git or sync them via Dropbox/Nextcloud.
- Configuration: You can customize sorting behaviors (e.g., sorting by priority or due date) by creating a
.topydoconfig file in your home directory. - Limitations: This is a command-line tool. While it is incredibly fast and scriptable, it does not provide a graphical user interface (GUI), meaning it requires a basic understanding of terminal input. Ensure your todo.txt file path is correctly defined in your configuration to avoid errors.
Metadata
Not sure this is the right skill?
Describe what you want to build — we'll match you to the best skill from 16,000+ options.
Find the right skillPaste this into your clawhub.json to enable this plugin.
{
"plugins": {
"official-bastos-topydo": {
"enabled": true,
"auto_update": true
}
}
}Tags(AI)
Flags: file-write, file-read
Related Skills
Obsidian Daily
Skill by bastos
pass
Complete guide for using pass, the standard Unix password manager. Use this skill whenever the user asks about pass, password-store, managing passwords from the terminal, GPG-encrypted passwords, setting up pass for the first time, inserting or generating passwords, syncing a password store with git, using pass-otp for TOTP codes, importing passwords from another manager, or any task involving the `pass` CLI. Trigger on phrases like "set up pass", "add a password to pass", "sync my password store", "generate a password", "pass git", "pass-otp", "pass-import", or any variation.
conventional-commits
Format commit messages using the Conventional Commits specification. Use when creating commits, writing commit messages, or when the user mentions commits, git commits, or commit messages. Ensures commits follow the standard format for automated tooling, changelog generation, and semantic versioning.