cu - ClickUp CLI

Note: cu is an unofficial, community-maintained project and is not affiliated with or endorsed by ClickUp.
A GitHub CLI-inspired command-line interface for ClickUp.
Overview
cu is a command-line tool that brings the power and convenience of GitHub's gh CLI to ClickUp. It allows developers to seamlessly manage tasks, lists, spaces, and other ClickUp resources directly from the terminal.
Features
- GitHub CLI-like Interface: Familiar command structure for developers who use
gh
- Task Management: Create, view, update, and manage tasks from the command line
- Comment Management: Add, list, and delete comments on tasks with user assignment
- Custom Fields: Read and write ClickUp custom fields, resolving names to option ids
- Cache Management: Optimize performance with intelligent caching and cache control commands
- Project Configuration: Set project-specific defaults with
.cu.yml configuration files
- API Passthrough: Direct access to ClickUp API endpoints for advanced operations
- Export Functionality: Export tasks to CSV, JSON, or Markdown formats
- Multiple Output Formats: Support for table, JSON, YAML, and CSV output
- Shell Completions: Full support for bash, zsh, fish, and PowerShell
- Cross-Platform: Works on macOS, Linux, and Windows
Installation
Homebrew (macOS)
brew install timimsms/cu/cu
Installs the latest tagged release from the timimsms/homebrew-cu tap.
Go
go install github.com/timimsms/cu/cmd/cu@latest
Note: binaries installed via go install currently report dev from cu version (#36); Homebrew and release downloads embed the real version.
npm
The package name @timimsms/cu is reserved on npm as a placeholder only — a functional package is not yet published. Use Homebrew, go install, or a release download instead.
Direct Download
Download the latest release from the releases page.
Quick Start
- Authenticate with ClickUp:
cu auth login
- List your tasks:
cu task list
- Create a new task:
cu task create
Command Examples
Task Management
# List tasks in current space
cu task list
# Create a new task
cu task create
# View task details
cu task view <task-id>
# Export tasks to CSV
cu export tasks --format csv > tasks.csv
# Add a comment to a task
cu comment <task-id> -m "This is my comment"
# List comments on a task
cu comment list <task-id>
# Add comment with assignee
cu comment <task-id> -m "Please review" --assignee user@example.com
Custom Fields
# List the custom fields available on a list
cu field list --list abc123
# Show the values set on a task
cu field get <task-id>
# Set values — names are resolved to option ids, dates to epoch millis
cu field set <task-id> Repo https://github.com/owner/repo
cu field set <task-id> "Last synced" today
cu field set <task-id> Machine "Chilastra,Sunrunner"
# Clear a value
cu field clear <task-id> "Last synced"
Cache Management
# View cache statistics
cu cache info
# Clear all cache
cu cache clear
# Clean expired cache entries
cu cache clean
Project Configuration
# Initialize project config
cu config init
# Set default list for project
cu config set default.list "My List ID"
# View all configuration
cu config list
API Access
# Get workspace info
cu api /team
# Create a task via API
cu api /list/abc123/task -X POST -d '{"name": "New Task"}'
# Get tasks with query parameters
cu api "/list/abc123/task?archived=false"
Documentation
Full documentation is available at https://timimsms.github.io/cu/
Quick Links
Development
See CONTRIBUTING.md for development setup and contribution guidelines.
License
This project is licensed under the MIT License - see the LICENSE file for details.