Basecamp CLI (bc4)

Work with Basecamp from the terminal using bc4.

When to Use

Use this skill when asked to:

Setup

Install bc4 with Homebrew:

brew tap needmore/bc4 https://github.com/needmore/bc4
brew install bc4

Authentication

Create a Basecamp OAuth app at https://launchpad.37signals.com/integrations with redirect URI http://localhost:8888/callback.

Run the setup wizard:

bc4

Manual login:

bc4 auth login
bc4 auth status

For client work, store credentials in 1Password and map them in client_info.yaml:

secrets:
  BC4_CLIENT_ID: "ClientName Basecamp/client_id"
  BC4_CLIENT_SECRET: "ClientName Basecamp/client_secret"

Reading Data

Command Purpose
bc4 account list List accounts
bc4 project list List projects
bc4 project view ID View project details
bc4 todo list LIST List todos in a list
bc4 todo view ID View a todo
bc4 message list List messages
bc4 campfire list List campfires
bc4 card list List card tables
bc4 document list List documents
bc4 comment list ID List comments for a recording

Creating/Updating

Command Purpose
bc4 todo add "Title" Create a todo
bc4 todo check ID Mark a todo complete
bc4 todo edit ID Edit a todo
bc4 message post Post a message
bc4 campfire post "Update" Post a campfire update
bc4 card add "Title" --table ID Create a card
bc4 comment create ID Add a comment

Common Tasks

Switch Projects

bc4 project "acme corp"
bc4 project select

Create and Check a Todo

bc4 todo add "Refactor **authentication** module" --due 2025-01-20
bc4 todo check 12345

Post a Campfire Update

bc4 campfire post "Deployed v2.3.1 to production"

Use Basecamp URLs

bc4 todo view https://3.basecamp.com/1234567/buckets/89012345/todos/12345
bc4 campfire view https://3.basecamp.com/1234567/buckets/89012345/chats/12345

Tips