← Browse

@demerzels-lab/vikunja

A

Manage tasks and projects on a self-hosted Vikunja instance. Use when the user wants to create, view, complete, or manage tasks, check what's due or overdue, list projects, or get task notifications. Also use for to-do lists, reminders, and task tracking.

skillclaude

Install

agr install @demerzels-lab/vikunja --target claude

Writes 2 files into .claude/skills/, pinned to git-c94259b3.

  • .claude/skills/vikunja/SKILL.md
  • .claude/skills/vikunja/_meta.json

Document


name: vikunja description: Manage tasks and projects on a self-hosted Vikunja instance. Use when the user wants to create, view, complete, or manage tasks, check what's due or overdue, list projects, or get task notifications. Also use for to-do lists, reminders, and task tracking.

Vikunja Task Manager

Manage tasks and projects on a self-hosted Vikunja instance via REST API.

Setup

Set these environment variables:

export VIKUNJA_URL="https://your-vikunja-instance.com"
export VIKUNJA_TOKEN="your-api-token"

Get your API token: Vikunja → Settings → API Tokens → Create token.

Commands

List tasks

{baseDir}/scripts/vikunja.sh tasks --count 10
{baseDir}/scripts/vikunja.sh tasks --project "Shopping" --count 5
{baseDir}/scripts/vikunja.sh tasks --search "groceries"
{baseDir}/scripts/vikunja.sh tasks --sort priority --order desc

Overdue tasks

{baseDir}/scripts/vikunja.sh overdue

Tasks due soon (next N hours)

{baseDir}/scripts/vikunja.sh due --hours 24
{baseDir}/scripts/vikunja.sh due --hours 48

Create a task

{baseDir}/scripts/vikunja.sh create-task --project "Tasks" --title "Buy milk" --due "2026-02-01" --priority 3

Priority: 1 (low) to 5 (urgent). Due date format: YYYY-MM-DD.

Complete a task

{baseDir}/scripts/vikunja.sh complete --id 123

Get task details

{baseDir}/scripts/vikunja.sh task --id 123

List projects

{baseDir}/scripts/vikunja.sh projects

Create a project

{baseDir}/scripts/vikunja.sh create-project --title "New Project" --description "Optional description"

Get notifications

{baseDir}/scripts/vikunja.sh notifications

Due Date Monitoring

To get proactive notifications about due/overdue tasks, set up a cron job:

clawdbot cron add \
  --name "Task due check" \
  --cron "0 9,14 * * *" \
  --tz "America/Denver" \
  --session isolated \
  --message "Check Vikunja for overdue and upcoming tasks (next 24 hours). If any are found, notify me with the list." \
  --deliver \
  --channel telegram

Notes

  • Project names in --project are case-insensitive
  • Filter expressions follow Vikunja filter syntax (see https://vikunja.io/docs/filters)
  • All times are handled in America/Denver timezone

Trustgrade A

  • passBody integrity

    Whether the stored document is plausibly the kind of file the artifact declares, rather than something fetched by mistake.

  • passType matchnot applicable to this artifact type

    Whether the artifact is really the kind of thing its metadata claims it is.

  • passFreshness

    How long since the source repository was last pushed to.

  • passPrompt injection

    Scans the artifact's own text for instructions aimed at your agent rather than at you.

  • passLicense

    Whether the source repository declares an SPDX license permissive enough to redistribute.

How the grade is calculated

Each check contributes 0 points when it passes, 1 when it warns, and 2 when it fails. The total maps to a letter:

  • Aevery check passed
  • Bone warning
  • Ctwo warnings
  • Dprompt injection or body integrity failed, or three warnings
  • Fone of those failed, and something else is wrong

These are automated hygiene checks, not a security audit, and not a dependency or vulnerability scan. A grade of A means nothing was flagged — not that the artifact is safe.

Versions

  • git-c94259b3f2c72026-07-31