Work with Obsidian vaults (plain Markdown notes) and automate via obsidian-cli.
npx skills add no-nonsense-tools/skills --skill "no-nonsense-tasks"
Install specific skill from multi-skill repository
# Description
No-nonsense task manager using SQLite. Track tasks with statuses (backlog, todo, in-progress, done), descriptions, and tags. Use when managing personal tasks, to-do items, project tracking, or any workflow that needs status-based task organization. Supports adding, listing, filtering, updating, moving, and deleting tasks.
# SKILL.md
name: no-nonsense-tasks
description: No-nonsense task manager using SQLite. Track tasks with statuses (backlog, todo, in-progress, done), descriptions, and tags. Use when managing personal tasks, to-do items, project tracking, or any workflow that needs status-based task organization. Supports adding, listing, filtering, updating, moving, and deleting tasks.
No Nonsense Tasks
Simple SQLite-backed task tracking. No fluff, no complexity, just tasks that get done.
Prerequisites
sqlite3CLI tool must be installed
Quick Start
Initialize the database:
./scripts/init_db.sh
Add your first task:
./scripts/task_add.sh "Build task tracker skill" \
--description "Create a SQLite-based task manager" \
--tags "work,urgent" \
--status todo
List all tasks:
./scripts/task_list.sh
Task Statuses
Tasks flow through four statuses:
- backlog - Ideas and future tasks
- todo - Ready to work on
- in-progress - Currently being worked on
- done - Completed tasks
Commands
Initialize Database
./scripts/init_db.sh
Default location: ~/.no-nonsense/tasks.db
Override with: export NO_NONSENSE_TASKS_DB=/path/to/tasks.db
Add Task
./scripts/task_add.sh <title> [options]
Options:
-d, --description TEXT- Task description-t, --tags TAGS- Comma-separated tags-s, --status STATUS- Task status (default: backlog)
Example:
./scripts/task_add.sh "Deploy to prod" --description "Deploy v2.0" --tags "deploy,critical" --status todo
List Tasks
./scripts/task_list.sh [--status STATUS]
Examples:
./scripts/task_list.sh # All tasks
./scripts/task_list.sh --status todo
Show Task Details
./scripts/task_show.sh <task_id>
Move Task to Different Status
./scripts/task_move.sh <task_id> --status <STATUS>
Example:
./scripts/task_move.sh 7 --status in-progress
Update Task Fields
./scripts/task_update.sh <task_id> [options]
Options:
--title TEXT- Update title-d, --description TEXT- Update description-t, --tags TAGS- Update tags (comma-separated)-s, --status STATUS- Update status
Update Tags (Shortcut)
./scripts/task_tag.sh <task_id> --tags <TAGS>
Example:
./scripts/task_tag.sh 8 --tags "urgent,bug,frontend"
Filter by Tag
./scripts/task_filter.sh <tag>
Delete Task
./scripts/task_delete.sh <task_id>
View Statistics
./scripts/task_stats.sh
Shows count of tasks by status and total.
Usage Tips
Typical workflow:
- Add new ideas to backlog:
task_add.sh "Task idea" --status backlog - Move tasks to todo when ready:
task_move.sh <id> --status todo - Start work:
task_move.sh <id> --status in-progress - Complete:
task_move.sh <id> --status done
Tag organization:
- Use tags for categories:
work,personal,urgent,bug,feature - Combine tags:
urgent,work,apiorpersonal,home,shopping - Filter by any tag:
task_filter.sh urgent
Status filtering:
- Focus on current work:
task_list.sh --status in-progress - Plan your day:
task_list.sh --status todo - Review completed:
task_list.sh --status done
# Supported AI Coding Agents
This skill is compatible with the SKILL.md standard and works with all major AI coding agents:
Learn more about the SKILL.md standard and how to use these skills with your preferred AI coding agent.