7.7k★by emredoganer
basecamp-cli – OpenClaw Skill
basecamp-cli is an OpenClaw Skills integration for security workflows. Manage Basecamp (via bc3 API / 37signals Launchpad) projects, to-dos, messages, and campfires via a TypeScript CLI. Use when you want to list/create/update Basecamp projects and todos from the terminal, or when integrating Basecamp automation into Clawdbot workflows.
Skill Snapshot
| name | basecamp-cli |
| description | Manage Basecamp (via bc3 API / 37signals Launchpad) projects, to-dos, messages, and campfires via a TypeScript CLI. Use when you want to list/create/update Basecamp projects and todos from the terminal, or when integrating Basecamp automation into Clawdbot workflows. OpenClaw Skills integration. |
| owner | emredoganer |
| repository | emredoganer/basecamp-cli |
| language | Markdown |
| license | MIT |
| topics | |
| security | L1 |
| install | openclaw add @emredoganer/basecamp-cli |
| last updated | Feb 7, 2026 |
Maintainer

name: basecamp-cli description: Manage Basecamp (via bc3 API / 37signals Launchpad) projects, to-dos, messages, and campfires via a TypeScript CLI. Use when you want to list/create/update Basecamp projects and todos from the terminal, or when integrating Basecamp automation into Clawdbot workflows.
Basecamp CLI
This repo contains a standalone CLI.
Install
npm i -g @emredoganer/basecamp-cli
Auth
Create an integration (OAuth app) in 37signals Launchpad:
Then:
basecamp auth configure --client-id <id> --redirect-uri http://localhost:9292/callback
export BASECAMP_CLIENT_SECRET="<secret>"
basecamp auth login
Notes
- This uses the Basecamp API docs published under bc3-api: https://github.com/basecamp/bc3-api
BASECAMP_CLIENT_SECRETis intentionally NOT stored on disk by the CLI.
Basecamp CLI
A command-line interface for managing Basecamp (via the official bc3 API / 37signals Launchpad) projects, to-dos, messages, and campfires.
Installation
npm install -g @emredoganer/basecamp-cli
Setup
1. Create a Basecamp Integration
- Go to Basecamp Integrations
- Click "Register another application"
- Fill in the details:
- Name: Your app name
- Company: Your company
- Website: Your website
- Redirect URI:
http://localhost:9292/callback
- Note your Client ID and Client Secret
2. Configure Credentials
Set environment variables:
export BASECAMP_CLIENT_ID="your-client-id"
export BASECAMP_CLIENT_SECRET="your-client-secret"
Or configure via CLI:
basecamp auth configure --client-id "your-client-id" --client-secret "your-client-secret"
3. Login
basecamp auth login
This will open your browser for OAuth authentication.
Usage
Authentication
# Login via OAuth
basecamp auth login
# Check auth status
basecamp auth status
# Logout
basecamp auth logout
Accounts
# List available accounts
basecamp accounts
# Set current account
basecamp account set <id>
# Show current account
basecamp account current
Projects
# List all projects
basecamp projects list
# Get project details
basecamp projects get <id>
# Create a project
basecamp projects create --name "My Project" --description "Description"
# Archive a project
basecamp projects archive <id>
To-do Lists
# List to-do lists in a project
basecamp todolists list --project <id>
# Create a to-do list
basecamp todolists create --project <id> --name "Tasks"
To-dos
# List to-dos
basecamp todos list --project <id> --list <list-id>
# Show completed to-dos
basecamp todos list --project <id> --list <list-id> --completed
# Get to-do details
basecamp todos get <id> --project <project-id>
# Create a to-do
basecamp todos create --project <id> --list <list-id> --content "Task description"
# Create with options
basecamp todos create --project <id> --list <list-id> --content "Task" \
--due "2024-12-31" --assignees "123,456"
# Update a to-do
basecamp todos update <id> --project <project-id> --content "Updated content"
# Complete a to-do
basecamp todos complete <id> --project <project-id>
# Uncomplete a to-do
basecamp todos uncomplete <id> --project <project-id>
Messages
# List messages
basecamp messages list --project <id>
# Get message details
basecamp messages get <id> --project <project-id>
# Create a message
basecamp messages create --project <id> --subject "Subject" --content "<p>HTML content</p>"
Campfires (Chat)
# List campfires
basecamp campfires list --project <id>
# Get recent messages
basecamp campfires lines --project <id> --campfire <campfire-id>
# Send a message
basecamp campfires send --project <id> --campfire <campfire-id> --message "Hello!"
People
# List all people
basecamp people list
# List people in a project
basecamp people list --project <id>
# Get person details
basecamp people get <id>
# Get your profile
basecamp me
Output Formats
All list and get commands support --json flag for JSON output:
basecamp projects list --json
basecamp todos get <id> --project <project-id> --json
Environment Variables
| Variable | Description |
|---|---|
BASECAMP_CLIENT_ID | OAuth Client ID |
BASECAMP_CLIENT_SECRET | OAuth Client Secret |
BASECAMP_REDIRECT_URI | OAuth Redirect URI (default: http://localhost:9292/callback) |
BASECAMP_ACCESS_TOKEN | Access token (alternative to OAuth flow) |
License
MIT
Permissions & Security
Security level L1: Low-risk skills with minimal permissions. Review inputs and outputs before running in production.
Requirements
- OpenClaw CLI installed and configured.
- Language: Markdown
- License: MIT
- Topics:
FAQ
How do I install basecamp-cli?
Run openclaw add @emredoganer/basecamp-cli in your terminal. This installs basecamp-cli into your OpenClaw Skills catalog.
Does this skill run locally or in the cloud?
OpenClaw Skills execute locally by default. Review the SKILL.md and permissions before running any skill.
Where can I verify the source code?
The source repository is available at https://github.com/openclaw/skills/tree/main/skills/emredoganer/basecamp-cli. Review commits and README documentation before installing.
