UNPKG

vibe-tools

Version:
54 lines (53 loc) 1.87 kB
import { Config } from '../../types.js'; /** * Interface for GitHub repository search results */ export interface GitHubRepository { name: string; full_name: string; html_url: string; description: string; stargazers_count: number; created_at: string; updated_at: string; topics: string[]; } /** * Class for handling GitHub repository search operations specifically for MCP */ export declare class GitHubMCPSearch { private config; constructor(config: Config); /** * Extract keywords from a natural language query for GitHub search * @param query Original user query * @returns Array of extracted keywords for GitHub search */ extractSearchKeywords(query: string): Promise<string[]>; /** * Basic keyword extraction from query as fallback * @param query Original user query * @returns Array of extracted keywords */ private extractKeywordsBasic; /** * Search GitHub repositories for a specific keyword * @param keyword Search keyword * @param maxResults Maximum number of results to return * @returns Array of GitHub repositories */ searchGitHubReposForKeyword(keyword: string, maxResults?: number): Promise<GitHubRepository[]>; /** * Process user query to find relevant GitHub repositories with "mcp" in the name * @param query User's original query * @param maxResultsPerKeyword Maximum number of results per keyword * @returns Array of unique GitHub repositories matching the query */ findGitHubRepositories(query: string, maxResultsPerKeyword?: number): Promise<GitHubRepository[]>; /** * Filter out duplicate repositories based on full_name * @param repos Array of GitHub repositories * @returns Array of unique GitHub repositories */ private filterDuplicateRepositories; }