clickup-automation

Automate ClickUp workspace management, task workflows, time tracking, and team productivity

INSTALLATION
npx skills add https://github.com/claude-office-skills/skills --skill clickup-automation
Run in your project or agent environment. Adjust flags if your CLI version differs.

SKILL.md

ClickUp Automation

Comprehensive skill for automating ClickUp workspace and task management.

Core Concepts

Workspace Hierarchy

CLICKUP HIERARCHY:

┌─────────────────────────────────────────────────────────┐

│ 🏢 WORKSPACE                                            │

├─────────────────────────────────────────────────────────┤

│   ├── 📁 SPACE: Engineering                             │

│   │   ├── 📂 FOLDER: Q1 Projects                       │

│   │   │   ├── 📋 LIST: Feature Development             │

│   │   │   │   ├── ✅ Task: Implement Auth              │

│   │   │   │   │   └── ☑️ Subtask: OAuth setup          │

│   │   │   │   └── ✅ Task: Build API                   │

│   │   │   └── 📋 LIST: Bug Fixes                       │

│   │   └── 📂 FOLDER: Infrastructure                    │

│   │                                                     │

│   ├── 📁 SPACE: Marketing                               │

│   │   └── 📋 LIST: Content Calendar                    │

│   │                                                     │

│   └── 📁 SPACE: Operations                              │

└─────────────────────────────────────────────────────────┘

Task Structure

task_structure:

  required:

    name: "{{task_name}}"

    list_id: "{{list_id}}"

  optional:

    description: "{{description}}"

    assignees: ["user_id_1", "user_id_2"]

    tags: ["feature", "priority"]

    status: "Open"

    priority: 2  # 1=Urgent, 2=High, 3=Normal, 4=Low

    due_date: "2024-01-20"

    start_date: "2024-01-15"

    time_estimate: 28800000  # milliseconds (8 hours)

  custom_fields:

    - id: "field_id"

      value: "custom_value"

  checklists:

    - name: "Acceptance Criteria"

      items:

        - name: "Requirement 1"

          resolved: false

Automation Rules

Built-in Automations

automations:

  - name: auto_assign_on_create

    trigger:

      type: task_created

      list_id: "list_123"

    conditions:

      - tag_contains: "design"

    actions:

      - add_assignee: "design_lead_id"

      - set_priority: high

  - name: due_date_reminder

    trigger:

      type: due_date

      before: 1_day

    actions:

      - send_notification:

          to: assignees

          message: "Task due tomorrow: {{task.name}}"

      - add_tag: "due-soon"

  - name: status_change_workflow

    trigger:

      type: status_changed

      to: "In Review"

    actions:

      - remove_assignee: "{{previous_assignee}}"

      - add_assignee: "reviewer_id"

      - add_comment: "Ready for review @reviewer"

  - name: complete_parent_task

    trigger:

      type: all_subtasks_done

    actions:

      - set_status: "Complete"

      - add_comment: "All subtasks completed ✓"

Advanced Automations

advanced_rules:

  - name: sprint_rollover

    trigger:

      type: schedule

      cron: "0 0 * * 1"  # Monday midnight

    conditions:

      - status_not: "Complete"

      - due_date_passed: true

    actions:

      - move_to_list: "{{next_sprint_list}}"

      - update_due_date: "+7 days"

      - add_comment: "Rolled over from previous sprint"

  - name: escalation_workflow

    trigger:

      type: task_blocked

      duration: 48_hours

    actions:

      - set_priority: urgent

      - notify: manager

      - add_watcher: "manager_id"

      - add_tag: "escalated"

Views & Layouts

View Types

views:

  list_view:

    type: list

    group_by: status

    sort_by: priority

    columns:

      - name

      - assignees

      - due_date

      - priority

      - time_estimate

  board_view:

    type: board

    group_by: status

    card_fields:

      - assignees

      - due_date

      - tags

      - subtasks_count

  calendar_view:

    type: calendar

    date_field: due_date

    color_by: priority

  timeline_view:

    type: timeline

    start_field: start_date

    end_field: due_date

    dependencies: true

  workload_view:

    type: workload

    capacity_field: time_estimate

    group_by: assignee

Dashboard Widgets

dashboard:

  widgets:

    - type: sprint_burndown

      list_id: "current_sprint"

    - type: workload

      space_id: "engineering"

      period: this_week

    - type: task_status

      filter:

        assignee: me

    - type: time_tracked

      group_by: project

      period: this_month

    - type: goals_progress

      folder_id: "q1_goals"

Time Tracking

Time Entry Configuration

time_tracking:

  settings:

    billable_default: true

    rounding: 15_minutes

    require_description: false

  entry:

    task_id: "task_123"

    start: "2024-01-15T09:00:00Z"

    end: "2024-01-15T11:30:00Z"

    duration: 9000000  # 2.5 hours in ms

    billable: true

    description: "Development work"

  reports:

    - type: user_summary

      period: this_week

      group_by: task

    - type: project_summary

      period: this_month

      group_by: user

Time Reports Dashboard

TIME TRACKING - THIS WEEK

═══════════════════════════════════════

TOTAL: 32h 45m

BY PROJECT:

Feature Dev   ████████████████ 18h 30m

Bug Fixes     ████████░░░░░░░░ 8h 15m

Meetings      ████░░░░░░░░░░░░ 4h 00m

Admin         ██░░░░░░░░░░░░░░ 2h 00m

BY DAY:

Mon    █████████████████ 7h 30m

Tue    ███████████████░░ 6h 45m

Wed    ██████████████░░░ 6h 15m

Thu    ████████████████░ 7h 00m

Fri    ███████████░░░░░░ 5h 15m

BILLABLE: 28h 00m (85%)

Goals & OKRs

Goal Structure

goals:

  - name: "Q1 Product Goals"

    type: folder

    targets:

      - name: "Ship v2.0"

        type: true_false

        due_date: "2024-03-31"

      - name: "Reduce bug count"

        type: number

        start: 45

        target: 10

        unit: "open bugs"

      - name: "Increase test coverage"

        type: percentage

        start: 65

        target: 85

    key_results:

      - task_list: "v2.0_features"

        measure: tasks_completed

Goal Dashboard

Q1 GOALS PROGRESS

═══════════════════════════════════════

Ship v2.0

████████████████████ 100% ✓

Completed on March 28

Reduce Bug Count

████████████████░░░░ 78%

Current: 15 | Target: 10

Increase Test Coverage

██████████████░░░░░░ 72%

Current: 79% | Target: 85%

OVERALL Q1: 83% Complete

Templates

Task Templates

task_templates:

  - name: "Bug Report"

    status: "Open"

    priority: high

    tags: ["bug"]

    description: |

      ## Bug Description

      {{description}}

      ## Steps to Reproduce

      1.

      2.

      3.

      ## Expected Behavior

      ## Actual Behavior

      ## Environment

      - Browser:

      - OS:

      - Version:

    checklists:

      - name: "Bug Fix Workflow"

        items:

          - "Reproduce bug"

          - "Identify root cause"

          - "Implement fix"

          - "Write tests"

          - "Code review"

          - "Deploy"

  - name: "Feature Request"

    status: "Backlog"

    custom_fields:

      story_points: null

    checklists:

      - name: "Feature Workflow"

        items:

          - "Requirements defined"

          - "Design approved"

          - "Implementation"

          - "Testing"

          - "Documentation"

Integrations

Slack Integration

slack_integration:

  notifications:

    - trigger: task_created

      channel: "#project-updates"

      include: [name, assignees, due_date]

    - trigger: status_changed

      to: "Complete"

      channel: "#wins"

      message: "✅ {{task.name}} completed by {{user.name}}"

  commands:

    /clickup:

      - create_task

      - my_tasks

      - log_time

GitHub Integration

github_integration:

  branch_naming:

    pattern: "{{task.id}}-{{task.slug}}"

  automations:

    - trigger: branch_created

      actions:

        - set_status: "In Progress"

        - add_comment: "Branch created: {{branch.name}}"

    - trigger: pr_opened

      actions:

        - set_status: "In Review"

        - link_pr: "{{pr.url}}"

    - trigger: pr_merged

      actions:

        - set_status: "Complete"

API Examples

Task Operations

// Create Task

const task = await clickup.tasks.create(listId, {

  name: "Implement user authentication",

  description: "Add OAuth2 support",

  assignees: [userId],

  priority: 2,

  due_date: Date.now() + 7 * 24 * 60 * 60 * 1000,

  time_estimate: 28800000,

  custom_fields: [

    { id: "field_id", value: "5" }

  ]

});

// Update Task

await clickup.tasks.update(taskId, {

  status: "In Progress",

  assignees: { add: [newUserId] }

});

// Add Time Entry

await clickup.timeEntries.create(taskId, {

  start: Date.now() - 3600000,

  duration: 3600000,

  billable: true

});

// Create Checklist

await clickup.checklists.create(taskId, {

  name: "Acceptance Criteria"

});

Best Practices

  • Hierarchy Design: Spaces → Folders → Lists
  • Consistent Statuses: Standardize across lists
  • Custom Fields: Track key metrics
  • Automations: Reduce manual work
  • Time Tracking: Enable for capacity planning
  • Templates: Standardize task creation
  • Goals: Align tasks with objectives
  • Views: Configure for different needs
BrowserAct

Let your agent run on any real-world website

Bypass CAPTCHA & anti-bot for free. Start local, scale to cloud.

Explore BrowserAct Skills →

Stop writing automation&scrapers

Install the CLI. Run your first Skill in 30 seconds. Scale when you're ready.

Start free
free · no credit card