PLANIFY-CLI(1)

NAME
planify-cli - command-line interface for Planify task manager

SYNOPSIS
planify-cli <command> [OPTIONS]

DESCRIPTION
planify-cli is a command-line tool for managing tasks in Planify. It provides functionality to create, list, update tasks, and manage projects directly from the terminal.

COMMANDS

add Add a new task to Planify.

    planify-cli add [OPTIONS]

list
    List tasks from a project.

    planify-cli list [OPTIONS]

update
    Update an existing task. Only provided fields will be changed.

    planify-cli update [OPTIONS]

list-projects
    List all projects.

    planify-cli list-projects

OPTIONS

  Global Options

-h, --help
    Show help for the command.

  add command options:

-c, --content=CONTENT
    Task content (required)

-d, --description=DESC
    Task description

-p, --project=PROJECT
    Project name (defaults to inbox)

-i, --project-id=ID
    Project ID (preferred over name)

-s, --section=SECTION
    Section name

-S, --section-id=ID
    Section ID (preferred over name)

-a, --parent-id=ID
    Parent task ID (creates a subtask)

-P, --priority=1-4
    Priority: 1=high, 2=medium, 3=low, 4=none (default: 4)

-D, --due=DATE
    Due date in YYYY-MM-DD format

-l, --labels=LABELS
    Comma-separated list of label names

--pin=true|false
    Pin or unpin the task

  list command options:

-p, --project=PROJECT
    Project name (defaults to inbox)

-i, --project-id=ID
    Project ID (preferred over name)

  update command options:

-t, --task-id=ID
    Task ID to update (required)

-c, --content=CONTENT
    New task content

-d, --description=DESC
    New task description

-p, --project=PROJECT
    Move to project by name

-i, --project-id=ID
    Move to project by ID (preferred over name)

-s, --section=SECTION
    Section name

-S, --section-id=ID
    Section ID (preferred over name)

-a, --parent-id=ID
    New parent task ID

-P, --priority=1-4
    Priority: 1=high, 2=medium, 3=low, 4=none

-D, --due=DATE
    Due date in YYYY-MM-DD format

-l, --labels=LABELS
    Comma-separated list of label names

--complete=true|false
    Mark task as complete or incomplete

--pin=true|false
    Pin or unpin the task

EXAMPLES

1. Get help for a specific command:
    planify-cli add --help
    planify-cli list --help
    planify-cli update --help

2. Add a new high-priority task to the inbox:
    planify-cli add -c "Finish report" -P 1

3. Add a task with description and due date to a specific project:
    planify-cli add -c "Team meeting" -d "Weekly sync" -p "Work" -D 2024-12-20

4. List tasks from the inbox:
    planify-cli list

5. List tasks from a specific project:
    planify-cli list -p "Personal"

6. Update a task's priority and mark as complete:
    planify-cli update -t TASK_ID -P 2 --complete=true

7. List all projects:
    planify-cli list-projects

NOTES
• When both name and ID options are available (e.g., --project and --project-id), the ID option is preferred.
• The update command only modifies fields that are explicitly provided.
• Priority levels: 1 (highest) to 4 (none/lowest).
• Date format must be YYYY-MM-DD for due dates.
• Labels should be provided as a comma-separated list without spaces: label1,label2,label3.

SEE ALSO
planify(1) planify-quick-add(1)

BUGS
Report bugs to the Planify issue tracker. (https://github.com/alainm23/planify/issues)

AUTHOR
Planify Development Team

COPYRIGHT
Copyright © 2023-2026 Alain M.