Skip to content

Feature request: basecamp todos update command #293

@brigleb

Description

@brigleb

The CLI currently supports update for messages, cards, files, and docs — but not for todos. The only way to update a todo's title, description, assignees, or due date is through basecamp api put, which requires knowing the raw API path and building JSON payloads by hand.

Proposed syntax (matching the existing patterns from messages update and cards update):

basecamp todos update <id|url> [flags]

Flags:
  -t, --title string      New title (maps to API field "content")
  -b, --body string       New description/notes body
  -d, --due string        Due date (natural language or YYYY-MM-DD)
      --starts string     Start date
      --assignee string   Assignee ID or name (repeatable)

Examples:

basecamp todos update 9678557587 --title "Updated todo title"
basecamp todos update https://3.basecamp.com/.../todos/123 --body "<div>New description</div>"
basecamp todos update 123 --due "next Friday" --assignee "Kandace"

Why it matters: I need to “clarify” tasks a lot, particularly with an agent. Today the workaround is basecamp api put /buckets/{id}/todos/{id}.json -d '{"content":"...", "description":"..."}', which is cumbersome and error-prone compared to the ergonomic flag-based interface other resources already have.

Metadata

Metadata

Assignees

No one assigned

    Labels

    commandsCLI command implementationsenhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions