Files
gemini-cli/tools/gemini-cli-bot/metrics/scripts/open_issues.ts
T

26 lines
815 B
TypeScript
Raw Normal View History

/**
* @license
* Copyright 2026 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
import { execSync } from 'node:child_process';
import { GITHUB_OWNER, GITHUB_REPO } from '../types.js';
try {
2026-04-30 21:07:41 +00:00
const query = 'query($owner: String!, $repo: String!) { repository(owner: $owner, name: $repo) { issues(states: OPEN) { totalCount } } }';
const output = execSync(
2026-04-30 21:07:41 +00:00
`gh api graphql -F owner=${GITHUB_OWNER} -F repo=${GITHUB_REPO} -f query='${query}'`,
{
encoding: 'utf-8',
2026-04-30 21:07:41 +00:00
stdio: ['ignore', 'pipe', 'ignore'],
},
).trim();
const parsed = JSON.parse(output);
const totalCount = parsed?.data?.repository?.issues?.totalCount ?? 0;
2026-04-30 21:07:41 +00:00
process.stdout.write(`open_issues,${totalCount}\n`);
} catch {
// Fallback if gh fails or no issues found
2026-04-30 21:07:41 +00:00
process.stdout.write('open_issues,0\n');
}