Claude-skill-registry github-authenticator
Verify and troubleshoot GitHub CLI authentication. Use when gh commands fail with auth errors or when setting up GitHub integration for the first time.
install
source · Clone the upstream repo
git clone https://github.com/majiayu000/claude-skill-registry
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/majiayu000/claude-skill-registry "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/data/github-authenticator" ~/.claude/skills/majiayu000-claude-skill-registry-github-authenticator && rm -rf "$T"
manifest:
skills/data/github-authenticator/SKILL.mdsource content
GitHub Authenticator
Instructions
When to Invoke This Skill
commands fail with authentication errorsgh- User is setting up GitHub CLI for the first time
- Need to verify current authentication status
- Switching between GitHub accounts
- Troubleshooting permission issues
Standard Workflow
-
Check Current Authentication Status
gh auth status -
Interpret Output
- Logged in: Shows username, scopes, and token status
- Not logged in: Shows "You are not logged in to any GitHub hosts"
- Token expired: Shows authentication but with errors
-
Handle Authentication Issues
If not authenticated:
gh auth login- Choose: GitHub.com or GitHub Enterprise
- Choose: HTTPS (recommended) or SSH
- Authenticate via: Browser (recommended) or Token
- Complete authentication flow
If token expired:
gh auth refreshIf wrong account:
gh auth logout gh auth login
Required Scopes
Verify the token has necessary scopes:
- Full control of private repositoriesrepo
- Update GitHub Action workflowsworkflow
- Read organization data (if working with org repos)admin:org
Error Scenarios
"HTTP 401: Bad credentials"
- Token is invalid or expired
- Run:
or re-authenticategh auth refresh
"HTTP 403: Resource not accessible"
- Insufficient permissions
- Check repository access
- Verify organization membership
"HTTP 404: Not Found"
- Repository doesn't exist
- User doesn't have access
- Check repository name and permissions
Configuration Check
View current configuration:
gh auth status --show-token
(Be careful - this displays the token)
Check which host is configured:
gh config get git_protocol
Set preferences:
gh config set git_protocol https gh config set editor vim
Examples
Example 1: Authentication check before operations
Action: About to create PR Step 1: Run gh auth status Step 2: If authenticated, proceed with PR creation Step 3: If not, guide user through gh auth login
Example 2: Authentication failure during operation
Error: "gh: HTTP 401: Bad credentials" Action: 1. Inform user of authentication issue 2. Run gh auth status to diagnose 3. Guide through gh auth refresh or gh auth login 4. Retry original operation
Example 3: First-time setup
User: "Setup GitHub CLI" Action: 1. Check if gh is installed: gh --version 2. Run gh auth login 3. Guide through authentication flow 4. Verify with gh auth status 5. Test with simple command: gh repo view
Example 4: Switching accounts
User: "I need to use my work GitHub account" Action: 1. Show current account: gh auth status 2. Logout: gh auth logout 3. Login with work account: gh auth login 4. Verify: gh auth status