OA0 = Omni AI 0
OA0 是一个探索 AI 的论坛
现在注册
已注册用户请  登录
OA0  ›  技能包  ›  vikunja-fast:高效管理 Vikunja 任务,支持过期提醒与快速标记标记

vikunja-fast:高效管理 Vikunja 任务,支持过期提醒与快速标记标记

 
  dashboard ·  2026-02-23 07:16:49 · 3 次点击  · 0 条评论  

名称: vikunja-fast
描述: 通过 Vikunja API 管理项目与任务(逾期/到期/今日任务),标记完成状态,并快速获取摘要。
主页: https://vikunja.io/
元数据: {"clawdbot":{"emoji":"📋","requires":{"bins":["curl","jq"],"env":["VIKUNJA_URL"],"optionalEnv":["VIKUNJA_TOKEN","VIKUNJA_USERNAME","VIKUNJA_PASSWORD"]},"primaryEnv":"VIKUNJA_TOKEN"}}


✅ Vikunja 快速技能

将 Vikunja 作为任务与完成状态的核心数据源,并通过 Clawdbot 与其交互。

设置

可通过环境变量 Clawdbot 技能配置提供凭据。

选项 A:环境变量

在网关运行的同一环境中设置以下环境变量:

export VIKUNJA_URL="https://vikunja.xyz"

# 推荐:使用 JWT(以 "eyJ" 开头)
export VIKUNJA_TOKEN="<jwt>"

# 备选:使用用户名/密码登录(辅助 CLI 将请求 JWT)
export VIKUNJA_USERNAME="<用户名>"
export VIKUNJA_PASSWORD="<密码>"

选项 B:Clawdbot 技能配置(推荐用于代理)

编辑 ~/.clawdbot/clawdbot.json

{
  skills: {
    entries: {
      "vikunja-fast": {
        enabled: true,
        env: {
          VIKUNJA_URL: "https://vikunja.xyz",
          VIKUNJA_TOKEN: "<jwt>"
        }
      }
    }
  }
}

说明:
- VIKUNJA_URL 可以是基础 URL;辅助工具会自动规范化为 /api/v1
- Vikunja 认证要求大多数 API 调用使用 JWT 承载令牌(Authorization: Bearer <jwt>)。
- 如果只有非 JWT 令牌(通常以 tk_... 开头),请使用 /login 端点获取 JWT。

快速验证

登录(获取 JWT)

curl -fsS -X POST "$VIKUNJA_URL/login" \
  -H "Content-Type: application/json" \
  -d '{"username":"YOUR_USERNAME","password":"YOUR_PASSWORD","long_token":true}' | jq

查看当前用户(需要 JWT)

curl -fsS "$VIKUNJA_URL/user" \
  -H "Authorization: Bearer $VIKUNJA_TOKEN" | jq

列出项目

curl -fsS "$VIKUNJA_URL/projects" \
  -H "Authorization: Bearer $VIKUNJA_TOKEN" | jq '.[] | {id, title}'

命令

本技能附带一个简易辅助 CLI:

  • {baseDir}/vikunja.sh

示例:

# 所有项目中的逾期任务
{baseDir}/vikunja.sh overdue

# 今日到期任务
{baseDir}/vikunja.sh due-today

# 任意筛选(使用 Vikunja 筛选语法)
{baseDir}/vikunja.sh list --filter 'done = false && due_date < now'

# 显示/完成任务
{baseDir}/vikunja.sh show 123
{baseDir}/vikunja.sh done 123

说明:
- 输出格式:
- 每个任务格式为:<表情符号> <到期日期> - #<ID> <任务标题>
- 表情符号取自项目标题(若以表情符号开头),否则使用 🔨
- 到期日期显示为 Mon/D(去除时间与年份)
- 本技能使用 GET /tasks/all 获取所有项目中的任务

标记任务完成

TASK_ID=123

curl -fsS -X POST "$VIKUNJA_URL/tasks/$TASK_ID" \
  -H "Authorization: Bearer $VIKUNJA_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"done": true}' | jq
3 次点击  ∙  0 人收藏  
登录后收藏  
目前尚无回复
0 条回复
About   ·   Help   ·    
OA0 - Omni AI 0 一个探索 AI 的社区
沪ICP备2024103595号-2
Developed with Cursor