← 返回 Skills 市场
bydavid

Vikunja

作者 David · GitHub ↗ · v1.1.0 · MIT-0
cross-platform ✓ 安全检测通过
116
总下载
0
收藏
0
当前安装
2
版本数
在 OpenClaw 中安装
/install self-hosted-vikunja
功能描述
Interact with a self-hosted Vikunja task management instance via its REST API. Use when the user asks to create, update, delete, or list tasks/projects/label...
使用说明 (SKILL.md)

Vikunja

Self-hosted Vikunja integration via REST API. The instance is configured in references/vikunja.yaml (or ~/.config/vikunja.yaml).

Quick Start

# Authenticate once, then use the token for all requests
TOKEN=$(python3 "$(skill-dir)/scripts/vikunja.py" login)

# Add a task to the Inbox project (id=1)
python3 "$(skill-dir)/scripts/vikunja.py" task create "Walk the dog" --project 1 --due "2026-05-20T18:00:00Z" --priority 2

Configuration

Place ~/.config/vikunja.yaml with:

base_url: "http://192.168.1.230:3456"
username: "admin"
password: "admin123"

The helper script auto-detects this path. Override with env vars: VIKUNJA_BASE_URL, VIKUNJA_USER, VIKUNJA_PASS.

Important API Quirks

  • PUT creates resources (not POST)
  • POST updates resources (not PUT)
  • DELETE works for deleting tasks/projects
  • Tasks are created under a project — each project must exist first
  • Token expires; the script re-authenticates automatically on 401

Core Workflows

1. Create a Task

python3 "$(skill-dir)/scripts/vikunja.py" task create "Title" \
  --project 1 \
  --description "Details here" \
  --due "2026-05-20T18:00:00" \
  --start "2026-05-19T09:00:00" \
  --priority 2 \
  --label "work" \
  --reminder "before 1h"

Supported flags: --project, --description, --due, --start, --end, --priority, --label, --reminder, --repeat-every, --repeat-mode (0=default, 1=monthly, 2=from-current), --color.

2. List Tasks

# All tasks
python3 "$(skill-dir)/scripts/vikunja.py" task list

# Tasks in a specific project
python3 "$(skill-dir)/scripts/vikunja.py" task list --project 1

# Only undone tasks, sorted by priority descending
python3 "$(skill-dir)/scripts/vikunja.py" task list --filter "done=false" --sort-by "priority" --order "desc"

Filter syntax: see API Reference for full query syntax.

3. Update a Task

# Mark as done
python3 "$(skill-dir)/scripts/vikunja.py" task update $TASK_ID --done

# Change due date
python3 "$(skill-dir)/scripts/vikunja.py" task update $TASK_ID --due "2026-05-21T10:00:00"

# Change priority
python3 "$(skill-dir)/scripts/vikunja.py" task update $TASK_ID --priority 3

4. Bulk Operations

# Mark multiple tasks done at once
python3 "$(skill-dir)/scripts/vikunja.py" tasks bulk-complete 12 15 18

5. Projects

# List all projects
python3 "$(skill-dir)/scripts/vikunja.py" project list

# Create a new project
python3 "$(skill-dir)/scripts/vikunja.py" project create "Side Projects" --identifier "SP" --color "#ff6600"

6. Labels

# List labels
python3 "$(skill-dir)/scripts/vikunja.py" label list

# Create a label
python3 "$(skill-dir)/scripts/vikunja.py" label create "urgent" --color "#ff0000"

# Assign label to task
python3 "$(skill-dir)/scripts/vikunja.py" task add-label $TASK_ID "urgent"

7. Delete

python3 "$(skill-dir)/scripts/vikunja.py" task delete $TASK_ID
python3 "$(skill-dir)/scripts/vikunja.py" project delete $PROJECT_ID

AI Usage Patterns

When the user says "schedule X for Y date", parse the date and create a task:

  • "remind me to buy milk tomorrow at 6pm" → task title "Buy milk", due "2026-05-19T18:00:00"
  • "every monday review expenses" → task with --repeat-every 604800 --repeat-mode 0
  • "add fix the login bug as high priority" → priority 3 or 4

For recurring tasks, compute repeat_after in seconds:

  • daily = 86400, weekly = 604800, monthly = 2592000, yearly = 31536000

Version Notes

  • Buckets/Kanban (bucket commands) require Vikunja v2.4+ — not available in v2.3.0
  • Admin routes (/api/v1/admin/) require Vikunja v2.4+ — not available in v2.3.0
  • This skill works with Vikunja v2.3.0+ for all task/project/label operations

Error Handling

  • 401 → re-login automatically
  • 403 → project access issue; list projects to check permissions
  • 404 → task/project not found; try listing to find it
  • 400 → invalid request body; check required fields (title is always required)
  • Log errors to memory/vikunja-errors.log for debugging

Resources

安全使用建议
Treat this as an incomplete review: the scan did not find supported evidence of suspicious behavior, but the artifacts should be re-run through review once metadata.json and the artifact directory are readable.
能力评估
Purpose & Capability
Not assessed from artifact content because command execution failed before metadata.json or artifact files could be read.
Instruction Scope
Not assessed from artifact content because the supplied skill instructions were unavailable to inspect.
Install Mechanism
Not assessed from artifact content because install specs and manifests could not be read.
Credentials
Not assessed from artifact content because runtime capability details were unavailable.
Persistence & Privilege
Not assessed from artifact content because persistence, credential, and privilege behavior could not be inspected.
如何使用
  1. 确保已安装 OpenClaw(本地或 Docker 部署)
  2. 在对话框中输入安装命令:/install self-hosted-vikunja
  3. 安装完成后,直接呼叫该 Skill 的名称或使用 /self-hosted-vikunja 触发
  4. 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
版本历史
v1.1.0
Fixed parse_date timezone format, fixed --done boolean parsing, fixed bulk update API body, removed non-functional bucket commands (kanban requires v2.4+), added version notes
v1.0.0
Initial release of self-hosted Vikunja skill: - Integrates with a self-hosted Vikunja task management instance via REST API. - Supports creating, updating, deleting, and listing tasks, projects, and labels. - Handles reminders, due dates, bulk-completion, recurring tasks, and project views. - Includes command-line workflow examples and detailed configuration instructions. - Automatic token management and robust error handling for common API issues.
元数据
Slug self-hosted-vikunja
版本 1.1.0
许可证 MIT-0
累计安装 0
当前安装数 0
历史版本数 2
常见问题

Vikunja 是什么?

Interact with a self-hosted Vikunja task management instance via its REST API. Use when the user asks to create, update, delete, or list tasks/projects/label... 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 116 次。

如何安装 Vikunja?

在 OpenClaw 或 Claude Code 对话框中运行命令「/install self-hosted-vikunja」即可一键安装,无需额外配置。

Vikunja 是免费的吗?

是的,Vikunja 完全免费,采用 MIT-0 许可证,可自由下载、安装和使用。

Vikunja 支持哪些平台?

Vikunja 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(cross-platform)。

谁开发了 Vikunja?

由 David(@bydavid)开发并维护,当前版本 v1.1.0。

💬 留言讨论