skills/heroku/SKILL.md
Manage Heroku apps, dynos, config and deployments via Platform API
npx skillsauth add alanalvestech/hitank herokuInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Connect to the Heroku Platform API to manage apps, dynos, config vars, releases and more. Pure Ruby, zero gems — stdlib only.
scripts/
├── auth.rb # Bearer token + heroku_request helper (required by all scripts)
├── check_setup.rb # Check if token exists (outputs OK or SETUP_NEEDED)
├── save_token.rb # Save and validate an API token
├── apps.rb # List all apps
├── app.rb # Get app details
├── dynos.rb # List dynos for an app
├── config_vars.rb # List config vars (masked by default)
├── releases.rb # List releases for an app
├── addons.rb # List add-ons for an app
├── domains.rb # List domains for an app
├── formation.rb # List formation (process types/scaling)
├── logs.rb # Create log session and return URL
├── restart.rb # Restart all dynos
└── scale.rb # Scale a process type
ruby ~/.claude/skills/heroku/scripts/check_setup.rb
If the output is OK, proceed to the Flow section.
If the output is SETUP_NEEDED, guide the user step by step. Present ONE step at a time, wait for the user to confirm before moving to the next.
Step 1 — Ask the user to create an API token:
You need a Heroku API token. You can create one with the Heroku CLI:
heroku authorizations:create -d "hitank"Or go to Account Settings on the Heroku Dashboard and find the API Key section: https://dashboard.heroku.com/account
Copy the token and paste it here.
Step 2 — When the user pastes the token, save it:
ruby ~/.claude/skills/heroku/scripts/save_token.rb 'PASTED_TOKEN'
If the script outputs an error, the token is invalid. Ask the user to double-check and try again.
If setup is not complete, DO NOT proceed to the Flow. Complete all steps first.
The argument $ARGUMENTS may contain an app name or ID.
ruby ~/.claude/skills/heroku/scripts/apps.rb
Present the apps to the user. If $ARGUMENTS matches an app name, use that app. Otherwise ask which app to work with.
ruby ~/.claude/skills/heroku/scripts/app.rb APP_NAME
Present the app info and ask what the user wants to do.
List dynos:
ruby ~/.claude/skills/heroku/scripts/dynos.rb APP
List config vars (masked):
ruby ~/.claude/skills/heroku/scripts/config_vars.rb APP
Reveal config vars:
ruby ~/.claude/skills/heroku/scripts/config_vars.rb APP --reveal
List releases:
ruby ~/.claude/skills/heroku/scripts/releases.rb APP
List add-ons:
ruby ~/.claude/skills/heroku/scripts/addons.rb APP
List domains:
ruby ~/.claude/skills/heroku/scripts/domains.rb APP
List formation (scaling info):
ruby ~/.claude/skills/heroku/scripts/formation.rb APP
Get log session URL:
ruby ~/.claude/skills/heroku/scripts/logs.rb APP
ruby ~/.claude/skills/heroku/scripts/logs.rb APP --lines 200
Restart all dynos (requires user confirmation):
Show current dynos first, then ask: "Do you want to restart all dynos for this app?" Only execute after a "yes".
ruby ~/.claude/skills/heroku/scripts/restart.rb APP
Scale a process type (requires user confirmation):
Show current formation first, then ask: "Do you want to scale TYPE to QUANTITY?" Only execute after a "yes".
ruby ~/.claude/skills/heroku/scripts/scale.rb APP TYPE QUANTITY
ruby ~/.claude/skills/heroku/scripts/scale.rb APP TYPE QUANTITY SIZE
~/.config/heroku/token (outside the repo, never commit)https://api.heroku.comdevelopment
Manage Zendesk tickets, users, organizations and knowledge base via REST API
development
Post and manage tweets on X (formerly Twitter) via API v2
development
Manage Vercel projects, deployments, domains and environment variables via API
development
Manage Twilio SMS, calls, phone numbers and usage via REST API