UNPKG

scai

Version:

> AI-powered CLI tool for commit messages **and** pull request reviews — using local models.

18 lines (17 loc) 787 B
import { ensureGitHubAuth } from './auth.js'; import { getRepoDetails } from './repo.js'; export async function validateGitHubTokenAgainstRepo() { const token = await ensureGitHubAuth(); const { owner, repo } = getRepoDetails(); const response = await fetch(`https://api.github.com/repos/${owner}/${repo}`, { headers: { Authorization: `Bearer ${token}`, 'User-Agent': 'scai-cli', }, }); if (!response.ok) { const error = await response.json().catch(() => ({})); throw new Error(`❌ Token is invalid or lacks access to ${owner}/${repo}. GitHub says: ${response.status} ${response.statusText}${error.message ? ` – ${error.message}` : ''}`); } return `✅ GitHub token is valid for ${owner}/${repo}`; }