Skip to main content
Glama
MIT License
27,120
19,787
  • Linux
  • Apple
calculateGitLogMetrics.ts•1.57 kB
import type { RepomixConfigMerged } from '../../config/configSchema.js'; import { logger } from '../../shared/logger.js'; import type { TaskRunner } from '../../shared/processConcurrency.js'; import type { GitLogResult } from '../git/gitLogHandle.js'; import type { TokenCountTask } from './workers/calculateMetricsWorker.js'; /** * Calculate token count for git logs if included */ export const calculateGitLogMetrics = async ( config: RepomixConfigMerged, gitLogResult: GitLogResult | undefined, deps: { taskRunner: TaskRunner<TokenCountTask, number> }, ): Promise<{ gitLogTokenCount: number }> => { // Return zero token count if git logs are disabled or no result if (!config.output.git?.includeLogs || !gitLogResult) { return { gitLogTokenCount: 0, }; } // Return zero token count if no git log content if (!gitLogResult.logContent) { return { gitLogTokenCount: 0, }; } try { const startTime = process.hrtime.bigint(); logger.trace('Starting git log token calculation using worker'); const result = await deps.taskRunner.run({ content: gitLogResult.logContent, encoding: config.tokenCount.encoding, }); const endTime = process.hrtime.bigint(); const duration = Number(endTime - startTime) / 1e6; logger.trace(`Git log token calculation completed in ${duration.toFixed(2)}ms`); return { gitLogTokenCount: result, }; } catch (error) { logger.error('Failed to calculate git log metrics:', error); return { gitLogTokenCount: 0, }; } };

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/yamadashy/repomix'

If you have feedback or need assistance with the MCP directory API, please join our Discord server