with one click
discover-scripts
// Find the right the-power script by category, keyword, or goal. Covers all ~980 scripts organised by operation type with safety labels for destructive, GHES-only, and bulk operations.
// Find the right the-power script by category, keyword, or goal. Covers all ~980 scripts organised by operation type with safety labels for destructive, GHES-only, and bulk operations.
| name | discover-scripts |
| description | Find the right the-power script by category, keyword, or goal. Covers all ~980 scripts organised by operation type with safety labels for destructive, GHES-only, and bulk operations. |
| keywords | ["find","search","list","discover","scripts","available","what can","how to"] |
the-power contains ~980 scripts for GitHub API operations. This skill helps you find the right one.
ls *.sh | grep -i "webhook"
ls *.sh | grep -i "branch-protection"
Scripts prefixed create- that create a single resource via the API.
| Pattern | Examples | Notes |
|---|---|---|
create-a-*.sh | create-a-deploy-key.sh, create-a-fork.sh | Single REST resource |
create-an-*.sh | create-an-issue.sh, create-an-organization-webhook.sh | Single REST resource |
create-commit-*.sh | create-commit-readme.sh, create-commit-workflow-simple.sh | Git commits via API |
create-many-*.sh | create-many-repos.sh, create-many-users.sh | ⚠️ BULK — see safety labels |
create-branch*.sh | create-branch.sh, create-branch-protected.sh | Branch creation |
create-label*.sh | create-label.sh, create-labels.sh | Issue labels |
create-team*.sh | create-team.sh, create-child-team.sh | Teams |
Scripts prefixed list- that retrieve collections.
| Pattern | Examples |
|---|---|
list-organization-*.sh | list-organization-members.sh, list-organization-repos.sh |
list-repo-*.sh | list-repo-collaborators.sh, list-repo-webhooks.sh |
list-repository-*.sh | list-repository-issues.sh, list-repository-secrets.sh |
list-pull-request*.sh | list-pull-requests.sh, list-pull-request-files.sh |
list-team-*.sh | list-team-members.sh, list-team-repositories.sh |
list-self-hosted-*.sh | list-self-hosted-runners-for-an-organization.sh |
Scripts prefixed get- for retrieving a single resource.
| Pattern | Examples |
|---|---|
get-a-*.sh | get-a-repo.sh, get-a-pull-request.sh, get-a-check-run.sh |
get-an-*.sh | get-an-organization.sh, get-an-issue.sh |
get-the-*.sh | get-the-audit-log-for-an-enterprise.sh |
Scripts prefixed graphql- for GraphQL API operations.
| Pattern | Examples |
|---|---|
graphql-list-*.sh | graphql-list-organization-repositories.sh |
graphql-create-*.sh | graphql-create-issue.sh |
graphql-get-*.sh | graphql-get-repo-size.sh |
Scripts prefixed delete- that permanently remove resources.
| Pattern | Examples | Safety |
|---|---|---|
delete-repo.sh | Delete a repository | ⚠️ Irreversible |
delete-team.sh | Delete a team | ⚠️ Irreversible |
delete-many-teams.sh | Delete all nato-alphabet teams | ⚠️ BULK + destructive |
delete-branch-protection.sh | Remove branch protection | ⚠️ Irreversible |
delete-environment.sh | Delete a deployment environment | ⚠️ Irreversible |
Scripts prefixed update- that modify existing resources.
| Pattern | Examples |
|---|---|
update-a-repo.sh | Update repository settings |
update-a-pull-request-branch.sh | Update PR branch |
update-branch-protection-with-required-check.sh | Add required checks |
Scripts prefixed add- that create relationships between resources.
| Pattern | Examples |
|---|---|
add-team-to-repo.sh | Add team to a repository |
add-user-to-team.sh | Add user to a team |
add-many-users-to-org.sh | Bulk add users to org |
add-collaborator-to-repo.sh | Add repo collaborator |
Scripts prefixed build- that orchestrate multiple API calls.
See the create-test-repo skill for the full decision matrix.
Python scripts for high-throughput resource creation.
| Script | Speed | Notes |
|---|---|---|
python-create-many-repos-connection-reuse.py | ~2× bash | Connection reuse |
python-create-many-repos-connection-reuse-pool.py | ~4× bash | urllib3 pooling |
python-create-many-users-connection-reuse.py | ~2× bash | 🔒 GHES only |
python-create-many-orgs-connection-reuse.py | ~2× bash | 🔒 GHES only |
Scripts that require GHES site-admin privileges.
| Pattern | Examples |
|---|---|
ghes-*.sh | ghes-get-settings.sh, ghes-list-license.sh |
ghe-manage-v1-*.sh | ghe-manage-v1-get-the-ghes-settings.sh |
create-user*.sh | create-user.sh, create-users.sh |
suspend-a-user.sh | 🔒 GHES only, ⚠️ destructive |
promote-*.sh | promote-a-user-to-be-a-site-administrator.sh |
| Script | Feature |
|---|---|
enable-secret-scanning.sh | Enable secret scanning |
enable-push-protection.sh | Enable push protection |
enable-dependabot-alerts.sh | Enable Dependabot |
enable-code-scanning-default-setup.sh | Enable CodeQL |
build-testcase-secret-scanning | Full secret scanning scenario |
build-testcase-push-protection | Full push protection scenario |
Scripts prefixed gh- that wrap gh CLI commands.
| Pattern | Examples |
|---|---|
gh-graphql-*.sh | gh-graphql-list-organization-repo-count.sh |
gh-list-*.sh | gh-list-deploy-keys-on-org-repos.sh |
| Label | Meaning |
|---|---|
| ⚠️ DESTRUCTIVE | Permanently deletes resources. Cannot be undone. |
| ⚠️ BULK | Creates or deletes many resources at once. |
| 🔒 GHES only | Requires GitHub Enterprise Server admin API. |
| 🌐 Dotcom only | Designed for github.com, may not work on GHES. |
Every script follows the same pattern (see skeleton.sh):
. ./.gh-api-examples.confjq -n → write to tmp/curl with bearer-token auth and API version headerScript names often match the REST API docs page title. For example:
create-a-repository-for-the-authenticated-user.shlist-repository-webhooks.shget-a-pull-request.shClean up GitHub resources created by the-power test environment scripts. Delete repositories, teams, members, rulesets, webhooks, environments, and other resources. Suspend or unsuspend users on GHES.
Configure the-power for a target GitHub instance. Run configure.py to generate .gh-api-examples.conf with hostname, token, org, repo, and other settings. Covers interactive and non-interactive setup, GHES vs dotcom differences, curl flags for self-signed certs, and GitHub App configuration.
Create a fully populated test organisation on a GitHub instance using the-power's build-all.sh script. Includes users, teams, repos, PRs, branch protection, and more. Requires .gh-api-examples.conf to be configured first.
Create a test repository using the-power's build-testcase scripts. Covers the full decision matrix of 30+ testcase scripts for repos with PRs, issues, workflows, secret scanning, rulesets, runners, and more.
Execute any the-power script with guided parameter input. Covers prerequisites, working directory, output interpretation, HTTP status codes, error patterns, and debugging techniques.
Scale up a test environment by bulk-creating repos, users, orgs, teams, issues, branches, PRs, and commits using the-power's create-many scripts. Three performance tiers: shell, Python connection reuse, and Python pooling.