返回顶部
k

kanboardKanboard交互

Interact with Kanboard project management via JSON-RPC API.

作者: admin | 来源: ClawHub
源自
ClawHub
版本
V 1.0.2
安全检测
已通过
246
下载量
免费
免费
0
收藏
概述
安装方式
版本历史

kanboard

Kanboard 技能

概述

Kanboard 通过 HTTP POST 使用 JSON-RPC 2.0 协议。所有调用都指向同一个端点。

请确保拥有以下参数以访问 Kanboard:

  1. 1. KANBOARDURL,服务器地址。
  2. KANBOARDAPI_TOKEN,访问 API 令牌。

认证模式

应用 API 跳过权限检查且无会话。请将其用于自动化操作。

以下是 curl 示例:

curl ${KANBOARD_URL}/jsonrpc.php -u jsonrpc:$token -H Content-Type: application/json -d {\jsonrpc\:\2.0\,\method\:\$method\,\id\:1,\params\:$params}



核心辅助函数

始终使用此 shell 函数来调用 API:

bash
kb() {
local method=$1
local params=${2:-{}}
local token=${KANBOARDPASS:-$KANBOARDAPI_TOKEN}

curl -s -X POST \
-u jsonrpc:$token \
-H Content-Type: application/json \
-d {\jsonrpc\:\2.0\,\method\:\$method\,\id\:1,\params\:$params} \
${KANBOARD_URL}/jsonrpc.php | jq .
}

在每个响应中检查错误:
bash

始终验证结果不为 null/false


result=$(kb getMe | jq .result)
if [ $result = null ] || [ $result = false ]; then
echo 错误:$(kb getMe | jq -r .error.message // 未知错误)
fi


项目

bash

列出所有项目


kb getAllProjects

按 ID 获取单个项目

kb getProjectById {project_id: 1}

按名称获取项目

kb getProjectByName {name: 我的项目}

创建项目

kb createProject {name: 新项目, description: 可选描述}

更新项目

kb updateProject {id: 1, name: 已重命名, description: 已更新}

删除项目(不可逆)

kb removeProject {project_id: 1}

启用/禁用项目

kb enableProject {project_id: 1} kb disableProject {project_id: 1}

获取项目活动动态

kb getProjectActivity {project_id: 1}

看板与列

bash

获取项目的完整看板(列+任务)


kb getBoard {project_id: 1}

列出列

kb getColumns {project_id: 1}

获取单个列

kb getColumn {column_id: 5}

创建列

kb addColumn {projectid: 1, title: 审核中, tasklimit: 3}

更新列

kb updateColumn {columnid: 5, title: 审核, tasklimit: 5}

删除列

kb removeColumn {column_id: 5}

更改列位置

kb changeColumnPosition {projectid: 1, columnid: 5, position: 2}

任务

bash

创建任务(最低要求:标题 + 项目ID)


kb createTask {
title: 修复登录错误,
project_id: 1,
column_id: 2,
swimlane_id: 1,
color_id: red,
priority: 2,
due_date: 2025-12-31,
description: 此处填写详细描述,
owner_id: 3,
tags: [bug, urgent]
}

按 ID 获取任务

kb getTask {task_id: 42}

按引用获取任务(外部引用)

kb getTaskByReference {project_id: 1, reference: EXT-123}

列出项目中的所有任务(状态:1=开放,2=关闭)

kb getAllTasks {projectid: 1, statusid: 1}

使用高级查询搜索任务

kb searchTasks {project_id: 1, query: assignee:me status:open}

更新任务

kb updateTask { id: 42, title: 修复登录错误(已更新), column_id: 3, color_id: green, priority: 1, due_date: 2025-11-30 }

将任务移动到另一列/泳道/位置

kb moveTaskPosition { \projectid\: $projectid, \taskid\: $taskid, \columnid\: $inprogress_col, \position\: 1, \swimlane_id\: 1 }

将任务移动到另一个项目

kb moveTaskToProject { task_id: 42, project_id: 2, swimlane_id: 1, column_id: 1, category_id: 0 }

将任务复制到另一个项目

kb duplicateTaskToProject { task_id: 42, project_id: 2 }

关闭/打开任务

kb closeTask {task_id: 42} kb openTask {task_id: 42}

删除任务(不可逆)

kb removeTask {task_id: 42}

获取任务颜色列表

kb getTaskColors

任务颜色 ID

yellow, blue, green, purple, red, orange, grey, brown, deeporange, darkgrey, pink, teal, cyan, lime, light_green, amber

子任务

bash

列出任务的子任务


kb getAllSubtasks {task_id: 42}

创建子任务

kb createSubtask { task_id: 42, title: 编写单元测试, user_id: 3, time_estimated: 4 }

更新子任务(状态:0=待办,1=进行中,2=已完成)

kb updateSubtask { id: 10, task_id: 42, status: 1, time_spent: 2 }

删除子任务

kb removeSubtask {subtask_id: 10}

评论

bash

列出任务的评论


kb getAllComments {task_id: 42}

创建评论

kb createComment { task_id: 42, user_id: 1, content: 这是一条 Markdown 格式的评论。 }

更新评论

kb updateComment {id: 7, content: 已更新的评论内容。}

删除评论

kb removeComment {comment_id: 7}

泳道

bash

列出项目的泳道


kb getSwimlanes {project_id: 1}

仅获取活跃泳道

kb getActiveSwimlanes {project_id: 1}

创建泳道

kb addSwimlane {project_id: 1, name: Alpha 团队}

更新泳道

kb updateSwimlane {swimlane_id: 3, name: Beta 团队}

删除泳道

kb removeSwimlane {projectid: 1, swimlaneid: 3}

更改泳道位置

kb changeSwimlanePosition {projectid: 1, swimlaneid: 3, position: 1}

分类

bash

列出项目的分类


kb getAllCategories {project_id: 1}

创建分类

kb createCategory {project_id: 1, name: 后端}

更新分类

kb updateCategory {id: 5, name: 后端与 API}

删除分类

kb removeCategory {category_id: 5}

用户

bash

列出所有用户(仅应用 API)


kb getAllUsers

按 ID 获取用户

kb getUserById {user_id: 3}

按用户名获取用户

kb getUserByName {username: alice}

创建用户

kb createUser { username: bob, password: S3cur3P@ss,

标签

skill ai

通过对话安装

该技能支持在以下平台通过对话安装:

OpenClaw WorkBuddy QClaw Kimi Claude

方式一:安装 SkillHub 和技能

帮我安装 SkillHub 和 kanboard-1776376321 技能

方式二:设置 SkillHub 为优先技能安装源

设置 SkillHub 为我的优先技能安装源,然后帮我安装 kanboard-1776376321 技能

通过命令行安装

skillhub install kanboard-1776376321

下载

⬇ 下载 kanboard v1.0.2(免费)

文件大小: 4.34 KB | 发布时间: 2026-4-17 15:09

v1.0.2 最新 2026-4-17 15:09
update invalid token

Archiver·手机版·闲社网·闲社论坛·羊毛社区· 多链控股集团有限公司 · 苏ICP备2025199260号-1

Powered by Discuz! X5.0   © 2024-2025 闲社网·线报更新论坛·羊毛分享社区·http://xianshe.com

p2p_official_large
返回顶部