Clickup
Streamline ClickUp task and document management from your terminal
✨ The solution you've been looking for
Interact with ClickUp tasks - get task details, view comments, create and manage tasks. Use when working with ClickUp task URLs or IDs.
See It In Action
Interactive preview & real-world examples
AI Conversation Simulator
See how users interact with this skill
User Prompt
Show me all my current tasks and let me update the status of the authentication task to 'in progress'
Skill Processing
Analyzing request...
Agent Response
Get a list of your assigned tasks across all projects and update task status with a single command
Quick Start (3 Steps)
Get up and running in minutes
Install
claude-code skill install clickup
claude-code skill install clickupConfig
First Trigger
@clickup helpCommands
| Command | Description | Required Args |
|---|---|---|
| @clickup daily-task-management | Check your assigned tasks and update progress during daily standup | None |
| @clickup quick-task-creation | Create tasks from terminal while coding without context switching | None |
| @clickup documentation-management | Create and edit project documentation directly from command line | None |
Typical Use Cases
Daily Task Management
Check your assigned tasks and update progress during daily standup
Quick Task Creation
Create tasks from terminal while coding without context switching
Documentation Management
Create and edit project documentation directly from command line
Overview
ClickUp
Interact with ClickUp tasks and documents via the API. Get task information, view comments, create tasks, manage assignments, post updates, and create/edit documents.
Setup
- Copy
.env-exampleto.envin this skill directory - Add your ClickUp Personal API Token (starts with
pk_) - Generate token at: ClickUp Settings > Apps > API Token
1cp .claude/skills/clickup/.env-example .claude/skills/clickup/.env
2# Edit .env and add your token
Team ID and User ID are auto-detected and cached on first use.
Default List (Optional)
Set CLICKUP_DEFAULT_LIST_ID in .env to enable creating tasks without specifying a list:
1# In .claude/skills/clickup/.env
2CLICKUP_DEFAULT_LIST_ID=901111220963
Running Commands
1node .claude/skills/clickup/query.mjs <command> [options]
Task Commands
| Command | Description |
|---|---|
get <url|id> | Get task details (name, description, status, assignees, etc.) |
comments <url|id> | List comments on a task |
comment <url|id> "message" | Post a comment to a task (supports markdown) |
status <url|id> [status] | Update task status (or list available statuses) |
tasks <list_id> | List tasks in a list |
me | Show current user info |
create [list_id] "title" | Create a new task (list_id optional if default set) |
my-tasks | List all tasks assigned to you across workspace |
search "query" | Search tasks by name or description |
assign <task> <user> | Assign task to a user (by name, email, or ID) |
due <task> "date" | Set due date (e.g., “tomorrow”, “friday”, “+3d”) |
priority <task> <level> | Set priority (urgent, high, normal, low, none) |
subtask <task> "title" | Create a subtask |
move <task> <list_id> | Move task to a different list |
link <task> <url> ["desc"] | Add external link reference (as comment) |
checklist <task> "item" | Add checklist item to task |
delete-comment <comment_id> | Delete a comment |
watch <task> <user> | Notify user via @mention comment (watchers not supported in API) |
tag <task> "tag_name" | Add a tag to task |
description <task> "text" | Update task description (markdown supported) |
Document Commands
| Command | Description |
|---|---|
docs ["query"] | Search/list docs in workspace (optional search query) |
doc <doc_id> | Get doc details and page listing |
create-doc "title" | Create a new doc (use --content for initial content) |
page <doc_id> <page_id> | Get page content (markdown format) |
create-page <doc_id> "title" | Add a new page to a doc (creates additional page) |
edit-page <doc_id> <page_id> | Edit a page’s content or name |
Options
| Flag | Description |
|---|---|
--json | Output raw JSON response |
--subtasks | Include subtasks when getting task details |
--me | Filter to tasks assigned to me (for tasks command) |
--content, -c | Page content for create-page/edit-page (markdown) |
--name, -n | New page name for edit-page |
Examples
Get Task Details
1# Using full URL
2node .claude/skills/clickup/query.mjs get "https://app.clickup.com/t/86a1b2c3d"
3
4# Using task ID directly
5node .claude/skills/clickup/query.mjs get 86a1b2c3d
6
7# Include subtasks
8node .claude/skills/clickup/query.mjs get 86a1b2c3d --subtasks
Create a Task
1# With explicit list ID
2node .claude/skills/clickup/query.mjs create 901111220963 "New feature: dark mode"
3
4# Using default list (if CLICKUP_DEFAULT_LIST_ID is set)
5node .claude/skills/clickup/query.mjs create "Quick task"
List My Tasks
1# All tasks assigned to you across the workspace
2node .claude/skills/clickup/query.mjs my-tasks
Search Tasks
1node .claude/skills/clickup/query.mjs search "authentication"
Update Task Status
1# List available statuses for a task
2node .claude/skills/clickup/query.mjs status 86a1b2c3d
3
4# Update status (case-insensitive, partial match)
5node .claude/skills/clickup/query.mjs status 86a1b2c3d "in progress"
6node .claude/skills/clickup/query.mjs status 86a1b2c3d "complete"
Assign Tasks
1# Assign by username
2node .claude/skills/clickup/query.mjs assign 86a1b2c3d justin
3
4# Assign by email
5node .claude/skills/clickup/query.mjs assign 86a1b2c3d jane@example.com
Set Due Dates
1node .claude/skills/clickup/query.mjs due 86a1b2c3d "tomorrow"
2node .claude/skills/clickup/query.mjs due 86a1b2c3d "next friday"
3node .claude/skills/clickup/query.mjs due 86a1b2c3d "+3d"
4node .claude/skills/clickup/query.mjs due 86a1b2c3d "2024-01-15"
Set Priority
1node .claude/skills/clickup/query.mjs priority 86a1b2c3d urgent
2node .claude/skills/clickup/query.mjs priority 86a1b2c3d high
3node .claude/skills/clickup/query.mjs priority 86a1b2c3d none # Clear priority
Create Subtasks
1node .claude/skills/clickup/query.mjs subtask 86a1b2c3d "Write unit tests"
2node .claude/skills/clickup/query.mjs subtask 86a1b2c3d "Update documentation"
Move Tasks
1node .claude/skills/clickup/query.mjs move 86a1b2c3d 901111220964
Add Links
1# Add link with description
2node .claude/skills/clickup/query.mjs link 86a1b2c3d "https://github.com/..." "PR #123"
3
4# Add link without description
5node .claude/skills/clickup/query.mjs link 86a1b2c3d "https://docs.example.com/guide"
Add Checklist Items
1node .claude/skills/clickup/query.mjs checklist 86a1b2c3d "Review code"
2node .claude/skills/clickup/query.mjs checklist 86a1b2c3d "Run tests"
3node .claude/skills/clickup/query.mjs checklist 86a1b2c3d "Deploy to staging"
List Tasks in a List
1# All tasks in a list
2node .claude/skills/clickup/query.mjs tasks 901111220963
3
4# Only tasks assigned to me
5node .claude/skills/clickup/query.mjs tasks 901111220963 --me
View Comments
1node .claude/skills/clickup/query.mjs comments "https://app.clickup.com/t/86a1b2c3d"
Post a Comment
1node .claude/skills/clickup/query.mjs comment 86a1b2c3d "Starting work on this task"
2
3# Multi-line comment
4node .claude/skills/clickup/query.mjs comment 86a1b2c3d "Status update:
5- Completed initial review
6- Found 3 issues to address
7- Will submit PR by EOD"
Show Current User
1node .claude/skills/clickup/query.mjs me
Delete a Comment
1# Get comment IDs from the comments command (shown in --json output)
2node .claude/skills/clickup/query.mjs delete-comment 90110200841741
Notify Users (Watch)
1# Notify user via @mention comment (ClickUp API doesn't support adding watchers directly)
2node .claude/skills/clickup/query.mjs watch 86a1b2c3d koen
3
4# Notify by email
5node .claude/skills/clickup/query.mjs watch 86a1b2c3d jane@example.com
Add Tags
1# Add a tag to a task
2node .claude/skills/clickup/query.mjs tag 86a1b2c3d "DevOps"
3node .claude/skills/clickup/query.mjs tag 86a1b2c3d "bug"
Update Description
1# Update task description with markdown
2node .claude/skills/clickup/query.mjs description 86a1b2c3d "## Summary
3This is a **bold** statement.
4
5- Item 1
6- Item 2
7
8See [documentation](https://example.com) for more info."
List/Search Docs
1# List all docs in workspace
2node .claude/skills/clickup/query.mjs docs
3
4# Search docs by name
5node .claude/skills/clickup/query.mjs docs "API"
Get Doc Details
1# Get doc info and page listing
2node .claude/skills/clickup/query.mjs doc abc123def
3
4# Using a doc URL
5node .claude/skills/clickup/query.mjs doc "https://app.clickup.com/12345/v/dc/abc123def"
Create a Doc
1# Create an empty doc
2node .claude/skills/clickup/query.mjs create-doc "Project Notes"
3
4# Create a doc with initial content (populates the first page)
5node .claude/skills/clickup/query.mjs create-doc "API Documentation" --content "# API Documentation
6
7This document covers the API endpoints and usage.
8
9## Overview
10..."
Get Page Content
1# Get a specific page's content
2node .claude/skills/clickup/query.mjs page abc123def page456
Create a Page
1# Create a page with just a title
2node .claude/skills/clickup/query.mjs create-page abc123def "New Section"
3
4# Create a page with content
5node .claude/skills/clickup/query.mjs create-page abc123def "Getting Started" --content "# Welcome
6
7This is the getting started guide.
8
9## Prerequisites
10- Node.js 18+
11- npm or yarn"
Edit a Page
1# Update page content
2node .claude/skills/clickup/query.mjs edit-page abc123def page456 --content "Updated content here"
3
4# Rename a page
5node .claude/skills/clickup/query.mjs edit-page abc123def page456 --name "New Page Name"
6
7# Update both content and name
8node .claude/skills/clickup/query.mjs edit-page abc123def page456 --content "New content" --name "New Name"
Task/List/Doc URL Formats
The skill recognizes these ClickUp URL formats:
Tasks:
https://app.clickup.com/t/{task_id}https://app.clickup.com/{team_id}/v/li/{list_id}?p={task_id}- Direct task ID:
86a1b2c3d
Lists:
https://app.clickup.com/{team_id}/v/li/{list_id}- Direct list ID:
901111220963
Docs:
https://app.clickup.com/{team_id}/v/dc/{doc_id}https://app.clickup.com/{team_id}/docs/{doc_id}- Direct doc ID:
abc123def
Output Format
Task Details
Task: Implement user authentication
Status: In Progress
Priority: High
Assignees: John Doe, Jane Smith
Due: 2024-01-15
Created: 2024-01-10
URL: https://app.clickup.com/t/86a1b2c3d
Description:
Add OAuth2 authentication with Google and GitHub providers...
Task List
[to do] Fix login bug
ID: 868h2cxat | Priority: high | Assignees: John Doe
https://app.clickup.com/t/868h2cxat
[in progress] Update API docs
ID: 868g7c75u | Priority: None | Assignees: Jane Smith
https://app.clickup.com/t/868g7c75u
Total: 2 task(s)
Comments
[2024-01-12 14:30] John Doe:
Started working on this. Will push initial commit today.
[2024-01-12 16:45] Jane Smith:
@John looks good! Let me know when ready for review.
Doc Details
Doc: API Documentation
ID: abc123def
Created: Jan 10, 2024, 09:30 AM
Updated: Jan 15, 2024, 02:45 PM
Creator: John Doe
Workspace: 12345678
Pages:
Introduction
ID: page001
Getting Started
ID: page002
API Reference
ID: page003
Total: 3 page(s)
Page Content
Page: Getting Started
ID: page002
Created: Jan 10, 2024, 10:00 AM
Updated: Jan 14, 2024, 03:30 PM
Content:
---
# Getting Started
Welcome to the API documentation.
## Prerequisites
- Node.js 18+
- An API key
---
When to Use
Tasks:
- Understanding context: Get task details before starting work
- Quick task creation: Create tasks without leaving your terminal
- Daily standups: Use
my-tasksto see your assignments - Status updates: Post progress comments as you work
- Task management: Assign, prioritize, and set due dates
- Collaboration: View recent comments for context, add watchers
- Task organization: Add tags to categorize tasks
- Task linking: Reference task IDs in commit messages
Documents:
- Documentation: Create and maintain project documentation
- Knowledge base: Build reference guides and wikis
- Meeting notes: Store meeting notes and decisions
- Specifications: Write and update technical specs
- Quick edits: Update doc content without leaving the terminal
Tips
- Team ID, User ID, and default list ID are auto-cached in
.env - Set
CLICKUP_DEFAULT_LIST_IDto skip list_id when creating team tasks - Use
my-tasksfor a quick overview of your assignments - Use natural language dates: “tomorrow”, “next friday”, “+3d”
- Post comments to keep stakeholders updated on progress
- Include task IDs in commit messages for traceability
- Use
--jsonfor scripting or piping to other tools - Doc content uses markdown format for both input and output
- The Docs API uses v3 endpoints (workspace-based instead of team-based)
Technical Notes
Markdown Handling
ClickUp uses different content formats for different features:
| Feature | API Version | Content Format |
|---|---|---|
| Comments | v2 | Proprietary JSON array (converted via markdownToClickUp()) |
| Task descriptions | v2 | Native markdown via markdown_description field |
| Docs/Pages | v3 | Native markdown (no conversion needed) |
The Docs API (v3) accepts and returns markdown directly, so no conversion is required. This is different from comments which use a proprietary format that requires the lib/markdown.mjs conversion utilities.
Doc Page Structure
When you create a doc via the API, ClickUp automatically creates an empty first page. This has implications:
create-doc- Creates a doc with an auto-generated first page. Use--contentto populate that first page.create-page- Adds an additional page to a doc (second page, third page, etc.)edit-page- Modifies an existing page’s content
To add content to a new doc, use create-doc "Title" --content "..." rather than creating the doc and then using create-page (which would leave the first page empty).
What Users Are Saying
Real feedback from the community
Environment Matrix
Dependencies
Context Window
Security & Privacy
Information
- Author
- civitai
- Updated
- 2026-01-30
- Category
- productivity-tools
Related Skills
Clickup
Interact with ClickUp tasks - get task details, view comments, create and manage tasks. Use when …
View Details →Notion Spec To Implementation
Turn Notion specs into implementation plans, tasks, and progress tracking; use when implementing …
View Details →Notion Spec To Implementation
Turn Notion specs into implementation plans, tasks, and progress tracking; use when implementing …
View Details →