assistant-skills/vikunja-tasks/SKILL.md
Connor Rhodes 3f3ddc7f42 Add vikunja-tasks skill for vik CLI task management
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-04 19:59:02 -05:00

3.7 KiB

name description
vikunja-tasks Manage tasks in Connor's Vikunja instance using the vik CLI tool. Use this skill whenever Connor wants to create, view, update, complete, or delete tasks — including phrasing like "add a task," "what's on my plate," "mark that done," "remove that task," "show me what's due," or any request involving task tracking, to-do items, or his personal task list.

Vikunja Task Management

Connor manages tasks via a self-hosted Vikunja instance at tasks.connorrhodes.com, accessed through the vik CLI tool. Always use vik for task operations — never navigate to the web UI or use the API directly.

Quick Reference

Goal Command
See today's tasks vik task today
See upcoming tasks vik task upcoming [--days N]
See all tasks vik task list
Find a task vik task get <ID or partial title>
Search tasks vik task search <query>
Create a task vik task create "Title" [options]
Update a task vik task update <ID> [options]
Mark done vik task update <ID> --done
Delete a task vik task delete <ID>

Creating Tasks

vik task create "Task title"

Options:

  • --project ID — project to add to (default: 1)
  • --label LABEL — assign a label (creates it if it doesn't exist)
  • --desc TEXT — task description (overrides clipboard)
  • --no-clip — skip auto-populating description from clipboard URL

Date syntax in the title (parsed automatically, removed from final title):

  • s+N — start date N days from now
  • d+N — due date N days from now

Examples:

vik task create "Review draft proposal"
vik task create "Follow up with vendor d+3"
vik task create "Prep for demo s+1 d+4" --label work
vik task create "Read article" --no-clip

Note: if there's a URL in the clipboard, vik will automatically embed it as a markdown link in the description unless --no-clip is passed.


Reading Tasks

vik task today              # tasks with start or due date today
vik task today --due-only   # only tasks due today (ignores start date)

vik task upcoming           # next 7 days
vik task upcoming --days 14 # next 14 days
vik task upcoming --due-only

vik task list               # all tasks

vik task get 42             # fetch task by ID
vik task get "vendor"       # search by title substring (returns matches)

vik task search "follow up" # full-text search across all fields

When Connor asks "what do I have today" or "what's coming up," run vik task today or vik task upcoming and present the output.


Updating Tasks

vik task update <ID> --title "New title"
vik task update <ID> --desc "Updated description"
vik task update <ID> --done
vik task update <ID> --undone

At least one field is required. --done and --undone are mutually exclusive.

If Connor says something like "mark that done" or "complete task 7," use vik task update <ID> --done.


Deleting Tasks

vik task delete <ID>

No confirmation prompt — deletion is immediate. Confirm with Connor before deleting unless he was explicit about it.


Labels

vik label list
vik label create "urgent" --color ff0000

Labels are created automatically when referenced in vik task create --label, so you rarely need to create them manually.


Workflow Tips

  • If Connor gives a title but no ID, use vik task get "title" to find the task first, then act on the result.
  • Task IDs are integers shown in list/today/upcoming output.
  • When creating a task with a URL context (e.g., "add this link as a task"), let clipboard auto-populate work — don't use --no-clip.
  • For tasks with relative deadlines ("due Friday," "starts tomorrow"), convert to d+N / s+N before passing to the CLI.