UNPKG

scai

Version:

> **A local-first AI CLI for understanding, querying, and iterating on large codebases.** > **100% local • No token costs • No cloud • No prompt injection • Private by design**

18 lines (17 loc) 793 B
import { ensureGitHubAuth } from './auth.js'; import { getRepoDetails } from './repo.js'; export async function validateGitHubTokenAgainstRepo() { const token = await ensureGitHubAuth(); const { owner, repo } = await 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}`; }