Methodologygeneric
ClickUp Automation
Automate ClickUp workspace management, task workflows, time tracking, and team productivity
claude-office-skills/skills
Install
Use with your agent
Install the ClickUp Automation skill, then use it as build context. Run: npx skills add https://github.com/claude-office-skills/skills --skill clickup-automation. Then read the installed skill.md and follow its guidance to build or refactor my project.
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