basecamp-skill
v1.3.0
Published
Claude Code skill and CLI for Basecamp — cards, todos, messages, files, schedule, chat, search, and more
Readme
Basecamp Skill for Claude Code
A Claude Code skill and CLI for Basecamp 3 — cards, todos, messages, files, schedule, chat, search, webhooks, templates, and more.
Once installed, just talk to Claude in plain English: "show my overdue todos", "move card #12345 to In Review", "what carried over from LX31?". The skill teaches Claude when and how to call the basecamp-skill CLI.
Requirements
- Node.js 18+
- A Basecamp 3 account
Installation
Via npx skills (recommended — no global install needed)
npx skills add dicoding-dev/basecamp-skill
npx basecamp-skill authnpx basecamp-skill auth opens a browser to authorize your Basecamp account. Tokens are stored locally in ~/.config/basecamp/credentials and refreshed automatically — you only need to do this once.
Via npm (global install)
npm install -g basecamp-skill
basecamp authOr with pnpm:
pnpm add -g basecamp-skill
basecamp authThen register the skill:
npx skills add dicoding-dev/basecamp-skillCommands
All commands work with npx basecamp-skill <cmd> (no install required) or just basecamp <cmd> if installed globally.
Card Tables (Kanban)
| Command | Description |
|---|---|
| npx basecamp-skill projects | List active projects |
| npx basecamp-skill cards <project_id> [board_id] | Show card table; supports --cycle, --priority, --assignee |
| npx basecamp-skill show <card_id> | Card detail with description and comments |
| npx basecamp-skill move <card_id> <column> | Move card to a lane (partial match) |
| npx basecamp-skill create --title "..." | Create a card; supports --points, --priority, --domain, --cycle, --column |
| npx basecamp-skill comment <card_id> --message "..." | Comment on a card |
| npx basecamp-skill steps <card_id> | Card checklist; step create, step complete, step uncomplete |
| npx basecamp-skill carryover <cycle> | Open cards from prior cycles |
| npx basecamp-skill workload [cycle] | Story point totals per assignee |
Todos
| Command | Description |
|---|---|
| npx basecamp-skill todos [project_id] | List todos; --assignee, --overdue, --completed |
| npx basecamp-skill todo show <id> | Todo detail |
| npx basecamp-skill todo create <content> --list <id> | Create a todo |
| npx basecamp-skill done <todo_id> | Complete a todo |
| npx basecamp-skill uncomplete <todo_id> | Reopen a todo |
| npx basecamp-skill todolists [project_id] | List todo lists |
| npx basecamp-skill todolist create <name> | Create a todo list |
People & Communication
| Command | Description |
|---|---|
| npx basecamp-skill people [project_id] | List people |
| npx basecamp-skill me | Current user |
| npx basecamp-skill messages [project_id] | List messages |
| npx basecamp-skill message show <id> | Show message + comments |
| npx basecamp-skill message create <title> <body> | Post a message |
| npx basecamp-skill chat [project_id] | Campfire messages |
| npx basecamp-skill chat post <message> | Post to Campfire |
Discovery, Schedule & Files
| Command | Description |
|---|---|
| npx basecamp-skill search <query> | Full-text search |
| npx basecamp-skill schedule [project_id] | Schedule entries |
| npx basecamp-skill schedule create <title> --starts ... --ends ... | New schedule entry |
| npx basecamp-skill files [project_id] | List vaults and files |
| npx basecamp-skill download <url> [--out ./dir] | Download from storage URL |
| npx basecamp-skill recordings <type> [project_id] | Browse recordings (todos, messages, documents, comments, cards, uploads) |
Account, Assignments & Notifications
| Command | Description |
|---|---|
| npx basecamp-skill account | Account info |
| npx basecamp-skill assignments | My assignments; also overdue, completed |
| npx basecamp-skill notifications | My notifications |
| npx basecamp-skill timeline <project_id> | Timeline events |
Templates & Webhooks
| Command | Description |
|---|---|
| npx basecamp-skill templates | List templates |
| npx basecamp-skill template show <id> | Template detail |
| npx basecamp-skill webhooks [project_id] | List webhooks |
| npx basecamp-skill webhook create <url> [--types "Todo,Comment"] | Create webhook |
| npx basecamp-skill webhook delete <id> | Delete webhook |
Card Title Conventions
[SP][Priority][Domain][Cycle] Clean titleExample: [3][P2][Admin][LX32] Add partner role to user
| Tag | Values | Meaning | |-----|--------|---------| | SP | any number | Story points | | Priority | P1, P2, P3 | P1 = high | | Domain | Admin, Frontend… | Project area | | Cycle | LX32, LX33… | Sprint identifier |
All tags are optional. Order: SP → Priority → Domain → Cycle → title.
How it works
Each user authorizes with their own Basecamp account via OAuth — no shared tokens. The basecamp-skill npm package ships a CLI and a SKILL.md that teaches Claude when and how to call it, including automatic card lifecycle moves (In Progress when work starts, In Review after a PR is opened).
The npx skills add dicoding-dev/basecamp-skill command installs the skill into Claude Code's skills directory (~/.claude/skills/basecamp/) without requiring a global npm install.
License
MIT
