Skip to main content

Official Python CLI for Trello - Optimized for agile workflows

Project description

Trello CLI v2.2

Official Python CLI for Trello - Extensible workflow management with plugin system and comprehensive board auditing.

Python License Version Plugins


โœจ Features

  • ๐Ÿ”Œ Plugin System - Extensible architecture for custom functionality
  • ๐Ÿ” Board Audit - Expose workflow chaos and structural problems (available as plugin!)
  • ๐Ÿค– Optimized for Claude Code - AI-first design with discovery commands
  • ๐Ÿƒ Sprint Planning - Complete sprint lifecycle management
  • ๐Ÿ“ฆ Bulk Operations - Process multiple cards efficiently
  • ๐Ÿ“Š Board Standardization - Enforce Agile/Scrum best practices
  • ๐Ÿ” Advanced Queries - Filter and analyze cards
  • โšก Quick Workflows - Shortcuts for common operations
  • ๐ŸŽฏ 48+ Commands - Comprehensive board management

๐Ÿ†• What's New in v2.2

๐Ÿ”Œ Plugin System + Board Audit

Major architectural evolution:

  1. Production-Ready Plugin System

    • Language-agnostic (Python, Bash, JS, Ruby, Go, etc.)
    • Environment injection (credentials, config paths)
    • Metadata validation and discovery
    • Timeout protection and error handling
  2. Official Board Audit Plugin

    • 8 critical workflow validations
    • Health score system (0-100)
    • JSON output for CI/CD integration
    • 600+ lines of production-ready code
    • Proves the plugin system can handle complex logic
  3. Enhanced Core Audit Command

    • Comprehensive board-audit rewrite
    • Detects workflow chaos Trello hides
    • --report-json and --fix-labels flags
    • Critical/High/Medium issue prioritization

Previous in v2.1:

  • 29 new commands across 5 categories (Quick, Sprint, Bulk, Query, Standardization)
  • See CLAUDE.md for complete v2.1 features

๐Ÿ“ฆ Installation

Prerequisites

pip3 install py-trello

Setup

  1. Clone or download this repository

  2. Add to PATH (already done if using from ~/Documents/trello-cli-python)

  3. Configure API credentials:

trello config

Get your credentials from:


๐Ÿš€ Quick Start

For Claude Code Users

๐ŸŽฏ Essential Command:

trello help-json    # Get ALL commands in JSON format

Key Discovery Commands:

trello boards                              # List all boards
trello board-overview <board_id>           # Complete board structure
trello board-ids <board_id>                # Quick ID reference
trello search-cards <board_id> "query"     # Find cards anywhere

๐Ÿ“– Full Guide: CLAUDE.md


๐Ÿ”Œ Plugin System - Extensibility at its Core

The Trello CLI features a production-ready plugin system that allows you to extend functionality without modifying core code.

Why This Matters

Even the board auditor runs as a plugin. If critical analysis logic can live externally, anything can.

This isn't just a feature - it's an architectural statement: The core doesn't need to change for the CLI to evolve.

Quick Start with Plugins

# List available plugins
trello plugin list

# See plugin details
trello plugin info board-audit

# Run the official board auditor plugin
trello plugin run board-audit <board_id>

# JSON output for CI/CD integration
trello plugin run board-audit <board_id> --json

๐Ÿ” Featured Plugin: Board Audit

Exposes the structural chaos that Trello hides.

Your board looks organized, but underneath:

  • โŒ Cards in "Done" without due dates (can't measure velocity)
  • โŒ Cards in "Done" with incomplete checklists (false completion)
  • โŒ Overdue cards not marked complete (zombie tasks)
  • โš ๏ธ Active cards without due dates (no accountability)
  • โš ๏ธ Execution cards without owners (orphaned work)
  • โš ๏ธ Empty checklists (fake productivity signals)

Real Example:

$ trello plugin run board-audit 68fcf05e481843db13204397

๐Ÿ” BOARD AUDIT REPORT - AI Portfolio Sprint 1
Health Score: 60/100 - ๐ŸŸ  NEEDS ATTENTION

Critical Issues: 1
- 17 cards in Done without due dates

High Priority: 2
- 11 active cards without due dates
- 11 execution cards without owners

Health Score System:

  • 90-100: ๐ŸŸข EXCELLENT - Board ready for production
  • 70-89: ๐ŸŸก GOOD - Minor issues detected
  • 50-69: ๐ŸŸ  NEEDS ATTENTION - Significant workflow problems
  • 0-49: ๐Ÿ”ด CRITICAL - Severe structural problems

Official Plugins Included

  1. board-audit.py - Comprehensive workflow auditor (600+ lines, production-ready)
  2. example-python.py - Python plugin template
  3. example-bash.sh - Bash plugin template

Creating Your Own Plugins

Plugins can be written in any language (Python, Bash, JavaScript, Ruby, Go, etc.)

Example plugin structure:

#!/usr/bin/env python3
# trello-plugin
# name: My Plugin
# description: What it does
# usage: plugin run my-plugin [args]
# author: Your Name
# version: 1.0.0

import os
import sys

# Access injected credentials
api_key = os.environ.get('TRELLO_API_KEY')
token = os.environ.get('TRELLO_TOKEN')

# Your plugin logic here...

Available Environment Variables:

  • TRELLO_API_KEY - Your API key
  • TRELLO_TOKEN - Your API token
  • TRELLO_USER_ID - Your user ID
  • TRELLO_BASE_URL - Trello API base URL
  • TRELLO_CLI_VERSION - CLI version
  • TRELLO_CONFIG_DIR - Config directory
  • TRELLO_PLUGIN_DIR - Plugin directory

๐Ÿ“– Full Plugin Guide: PLUGINS.md


๐Ÿ“š Command Categories

1. Discovery & Help (5 commands)

trello help                    # Show all commands
trello help-json               # Get commands in JSON
trello board-overview <id>     # Board structure + metrics
trello board-ids <id>          # All IDs in one place
trello search-cards <id> "q"   # Find cards by text

2. Quick Workflows (5 commands)

trello quick-start <card_id>   # Move to "In Progress" + comment
trello quick-test <card_id>    # Move to "Testing" + comment
trello quick-done <card_id>    # Move to "Done" + comment
trello my-cards <board_id>     # Show all assigned cards
trello card-age <list_id>      # See how old cards are

3. Sprint Planning (4 commands)

trello sprint-start <board_id>    # Start sprint (interactive)
trello sprint-status <board_id>   # Sprint progress dashboard
trello sprint-close <board_id>    # Close sprint + cleanup
trello sprint-velocity <board_id> # Calculate team velocity

4. Bulk Operations (5 commands)

# Move multiple cards
trello bulk-move-cards <source_list> <target_list> ["filter"]

# Label multiple cards
trello bulk-add-label cards.txt "red" "Priority"

# Set due dates in bulk
trello bulk-set-due cards.txt "2025-12-31"

# Archive multiple cards
trello bulk-archive-cards <list_id> ["filter"]

# Create cards from CSV/JSON
trello bulk-create-cards <list_id> cards.csv

5. Advanced Queries (5 commands)

trello cards-by-label <board_id> "red"     # Find by label
trello cards-due-soon <board_id> [days]    # Due soon (default: 7d)
trello cards-overdue <board_id>            # Overdue cards
trello list-metrics <list_id>              # List analytics
trello board-health <board_id>             # Health check (score 0-100)

6. Board Standardization โญ NEW (4 commands)

trello list-templates                      # Show available templates
trello standardize-lists <id> agile        # Apply template to board
trello scrum-check <board_id>              # Validate Agile conformity
trello migrate-cards <list> <board>        # Move cards between boards

7. Basic CRUD (15+ commands)

# Boards
trello boards
trello create-board "Name"

# Lists
trello lists <board_id>
trello create-list <board_id> "Name"
trello archive-list <list_id>

# Cards
trello cards <list_id>
trello add-card <list_id> "Title" ["Description"]
trello show-card <card_id>
trello update-card <card_id> "Description"
trello move-card <card_id> <list_id>

# Enhancements
trello add-label <card_id> "color" ["name"]
trello add-checklist <card_id> "Name"
trello add-checkitem <card_id> "Checklist" "Item"
trello set-due <card_id> "YYYY-MM-DD"
trello add-comment <card_id> "Text"

๐ŸŽฏ Common Use Cases

Use Case 1: Daily Workflow

# Morning: Check your cards
trello my-cards <board_id>

# Start working on a card
trello quick-start <card_id>

# Move to testing
trello quick-test <card_id>

# Mark as done
trello quick-done <card_id>

Use Case 2: Sprint Planning

# Check board health
trello scrum-check <board_id>
trello board-health <board_id>

# Start new sprint
trello sprint-start <board_id>

# Monitor progress
trello sprint-status <board_id>

# Close sprint
trello sprint-close <board_id>
trello sprint-velocity <board_id>

Use Case 3: Board Standardization

# Standardize all company boards
trello list-templates
trello standardize-lists <board_id> agile --dry-run
trello standardize-lists <board_id> agile

# Validate conformity
trello scrum-check <board_id>

Use Case 4: Bulk Cleanup

# Find overdue cards
trello cards-overdue <board_id>

# Archive old cards
trello bulk-archive-cards <list_id> "2023"

# Move stale cards to backlog
trello card-age <list_id>
trello bulk-move-cards <source> <backlog>

๐Ÿ“– Documentation

Essential Docs (in root)

Additional Docs (in docs/)

Developer Docs


๐ŸŽจ Board Templates

Three standard templates available:

1. Agile/Scrum (Full) - 12 lists

๐Ÿ’ก Ideas โ†’ ๐Ÿ“ฅ Inbox โ†’ ๐Ÿ“‹ Backlog โ†’ ๐Ÿ“‹ To Prioritize โ†’ ๐Ÿ” Refinement
โ†’ โœ… Ready โ†’ ๐Ÿ“ Design โ†’ ๐Ÿ“ Sprint โ†’ โš™๏ธ In Progress โ†’ ๐Ÿงช Testing โ†’ โœ… Done โ†’ ๐Ÿ“š Architecture

2. Kanban (Simple) - 3 lists

๐Ÿ“ To Do โ†’ โš™๏ธ In Progress โ†’ โœ… Done

3. Basic Workflow - 4 lists

๐Ÿ“‹ Backlog โ†’ ๐Ÿ“ To Do โ†’ โš™๏ธ In Progress โ†’ โœ… Done

Apply with:

trello standardize-lists <board_id> <template>

๐Ÿ” Scrum Conformity Checks

The scrum-check command validates:

  1. โœ… Required Lists - Backlog, Ready, Sprint, In Progress, Testing, Done
  2. โš™๏ธ WIP Limits - In Progress should have โ‰ค3-5 cards
  3. ๐Ÿ“ Sprint Size - Sprint should have 5-15 cards
  4. ๐Ÿงช Testing Queue - Testing should have โ‰ค3-5 cards
  5. ๐Ÿ“‹ Backlog Health - Should have 10-50 cards

Score: 0-100 with recommendations

  • ๐ŸŸข EXCELLENT (90-100)
  • ๐ŸŸก GOOD (70-89)
  • ๐ŸŸ  NEEDS WORK (50-69)
  • ๐Ÿ”ด CRITICAL (<50)
trello scrum-check <board_id>

๐Ÿ› ๏ธ Development

Project Structure

trello-cli-python/
โ”œโ”€โ”€ trello_cli/
โ”‚   โ”œโ”€โ”€ commands/         # All command modules
โ”‚   โ”‚   โ”œโ”€โ”€ board.py
โ”‚   โ”‚   โ”œโ”€โ”€ list.py
โ”‚   โ”‚   โ”œโ”€โ”€ card.py
โ”‚   โ”‚   โ”œโ”€โ”€ bulk.py       # Bulk operations
โ”‚   โ”‚   โ”œโ”€โ”€ quick.py      # Quick shortcuts
โ”‚   โ”‚   โ”œโ”€โ”€ sprint.py     # Sprint planning
โ”‚   โ”‚   โ”œโ”€โ”€ query.py      # Advanced queries
โ”‚   โ”‚   โ”œโ”€โ”€ standardize.py # Board standardization
โ”‚   โ”‚   โ””โ”€โ”€ ...
โ”‚   โ”œโ”€โ”€ utils/            # Utilities
โ”‚   โ””โ”€โ”€ cli.py            # Main CLI entry
โ”œโ”€โ”€ tests/                # Test suite
โ”œโ”€โ”€ docs/                 # Documentation
โ””โ”€โ”€ trello                # Executable

Running Tests

pytest tests/
pytest --cov=trello_cli tests/

๐Ÿค Contributing

See CONTRIBUTING.md


๐Ÿ“ Examples

Example 1: Bulk Card Creation

# cards.csv
title,description,due_date,labels
Feature A,Description A,2025-12-25,red:P0
Feature B,Description B,2025-12-30,blue:Feature
trello bulk-create-cards <list_id> cards.csv

Example 2: Automated Reports

#!/bin/bash
# Generate daily report
DATE=$(date +%Y-%m-%d)
trello scrum-check <board_id> > "reports/${DATE}_report.txt"
trello board-health <board_id> >> "reports/${DATE}_report.txt"

Example 3: Sprint Automation

# Start sprint on Monday
trello sprint-start <board_id>

# Daily standup - check status
trello sprint-status <board_id>

# Friday - close sprint
trello sprint-close <board_id>
trello sprint-velocity <board_id>

๐ŸŽ“ For Claude Code

Claude Code should always start with:

trello help-json

This returns all available commands in machine-readable format.

Key commands for AI:

  • board-overview - Understand board structure
  • search-cards - Find cards without knowing their location
  • scrum-check - Validate board health
  • bulk-* commands - Process multiple items efficiently

๐Ÿ“– Complete Guide: CLAUDE.md


๐Ÿ“Š Statistics

  • Total Commands: 48
  • Command Categories: 7
  • Board Templates: 3
  • Lines of Code: ~5,000
  • Test Coverage: Expanding

๐Ÿ”— Links


๐Ÿ“„ License

MIT License - See LICENSE


๐Ÿ‘ค Author

Bernard Uriza Orozco


๐Ÿ™ Acknowledgments


Version: 2.1.0 Last Updated: 2025-10-27

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

trello_cli_python-2.1.12.tar.gz (94.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

trello_cli_python-2.1.12-py3-none-any.whl (104.1 kB view details)

Uploaded Python 3

File details

Details for the file trello_cli_python-2.1.12.tar.gz.

File metadata

  • Download URL: trello_cli_python-2.1.12.tar.gz
  • Upload date:
  • Size: 94.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.6

File hashes

Hashes for trello_cli_python-2.1.12.tar.gz
Algorithm Hash digest
SHA256 f601f0b5c922ed536333864693650341ed5dd9f90caec9cc45f6471cb1e97add
MD5 bdde74be875447e8e835f9e9b2cdde40
BLAKE2b-256 cc7600969816ba09827fdfc50d9889e4a4db7f08d7bdb5b2e176a2d6089790ed

See more details on using hashes here.

File details

Details for the file trello_cli_python-2.1.12-py3-none-any.whl.

File metadata

File hashes

Hashes for trello_cli_python-2.1.12-py3-none-any.whl
Algorithm Hash digest
SHA256 6a5eff54315b5adb6b40f4a8506edc26ba03a98b59a89d98fd8f733219b074dd
MD5 dc278be0afab85a7850999604b917505
BLAKE2b-256 418db77f03bf0f38e639dcbc965d1816150859d5adc8254569154f1145f81ed3

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page