github-code-search
jaredpalmer/claude-plugins
Ищите код на GitHub среди миллионов репозиториев с помощью grep.app. Используйте этот инструмент, когда вам нужно найти шаблоны кода, реализации, примеры или понять, как реализуются те или иные функции в открытых кодовых базах. (проект)
...Расширить всеО навыке «github-code-search»
Скилл «github-code-search» позволяет пользователям выполнять поиск по миллионам общедоступных репозиториев GitHub с помощью сервиса grep.app. Этот скилл предоставляет мощный и эффективный способ поиска шаблонов кода, реализаций и примеров в обширном массиве открытого исходного кода. Благодаря использованию сервера grep.app MCP пользователи могут искать конкретные шаблоны кода, например, узнавать, как в других проектах реализованы определенные функции или как библиотеки и API используются в разных репозиториях. Это простой и эффективный способ запроса кода из GitHub, будь то для обучения, анализа существующих реализаций или сбора примеров конкретных шаблонов кода.
К основным функциям этого навыка относится возможность локального выполнения кода TypeScript для поиска, фильтрации и обработки результатов, что позволяет проводить поиск более эффективно и сократить расход токенов. Встроенный скрипт поиска на TypeScript предоставляет удобный интерфейс командной строки для выполнения поиска с различными параметрами, такими как фильтрация по языку, ограничение результатов и использование регулярных выражений. Пользователи также могут выполнять пользовательские поиски, написав встроенный код TypeScript для настраиваемой фильтрации и обработки. Кроме того, этот навык предлагает прямой API для быстрого поиска с помощью простых инструментов, таких как curl, что обеспечивает гибкость как для опытных, так и для начинающих пользователей.
Этот навык идеально подходит для разработчиков, исследователей и всех, кто занимается анализом проектов с открытым исходным кодом. Он отлично подойдет тем, кто хочет найти реализации кода или примеры, проанализировать шаблоны программирования или изучить передовой опыт. Этот навык особенно полезен разработчикам, которые ищут фрагменты кода для повторного использования, изучают, как реализуются функции в проектах с открытым исходным кодом, или получают представление об использовании библиотек и API в общедоступных репозиториях.
Часто задаваемые вопросы
Как с помощью этого навыка искать конкретные фрагменты кода?
Вы можете искать конкретные фрагменты кода с помощью встроенного скрипта поиска на TypeScript. Запустите скрипт с нужным поисковым запросом и дополнительными фильтрами, такими как язык или репозиторий. Например, вы можете найти «use cache» в файлах TypeScript с помощью команды: «bun run skills/github-code-search/scripts/search.ts "use cache" --lang=TypeScript».
Можно ли выполнять поиск в пределах конкретного репозитория?
Да, вы можете выполнять поиск в конкретном репозитории, используя флаг «--repo», за которым следует имя владельца или название репозитория. Например, чтобы выполнить поиск в репозитории «vercel/next.js», используйте команду: «bun run skills/ github-code-search /scripts/search.ts "cacheLife" --repo=vercel/next.js».
Каковы требования к настройке для использования этого навыка?
Для использования этого навыка необходимо настроить сервер grep.app MCP. Вы можете добавить сервер с помощью команды: «claude mcp add --transport http grep https://mcp.grep.app». Проверьте настройку, запустив «/mcp» — в списке должен появиться «grep».
Как работает опция встроенного TypeScript?
Опция встроенного TypeScript позволяет выполнять настраиваемый поиск и фильтрацию. Вы можете написать код на TypeScript, который вызывает API grep.app, а затем обрабатывает результаты локально для фильтрации или преобразования данных по мере необходимости. Это обеспечивает большую гибкость для сложных сценариев использования, таких как объединение результатов нескольких запросов или фильтрация по имени репозитория.
GitHub Code Search via grep.app
Overview
This skill enables searching across millions of public GitHub repositories using the grep.app service. It uses a code mode pattern where you write and execute TypeScript code to query the grep.app MCP server, filter results locally, and return only relevant findings.
When to Use
- Find implementations of specific patterns (e.g., "how do other projects implement OAuth2?")
- Search for usage examples of APIs or libraries
- Analyze architectural patterns across codebases
- Find code snippets matching regex patterns
- Research best practices by examining popular repositories
Setup Requirements
The grep.app MCP server must be configured. Add it with:
claude mcp add --transport http grep https://mcp.grep.app
Verify with /mcp - you should see grep listed.
Code Mode Pattern
Instead of calling MCP tools directly (which loads all tool definitions into context), this skill uses code execution for efficiency:
- Write TypeScript code that calls the grep MCP server
- Execute the code via Bash with
bunornpx tsx - Filter and process results in the execution environment
- Return only relevant findings to minimize token usage
This approach reduces token usage by 90%+ compared to direct tool calls with large result sets.
Implementation
Option 1: Use the bundled search script (recommended)
A ready-to-use TypeScript search script is included:
bun run skills/github-code-search/scripts/search.ts "query" [--lang=Language] [--repo=owner/repo] [--limit=N] [--regexp]
Examples:
# Search for "use cache" in TypeScript filesbun run skills/github-code-search/scripts/search.ts "use cache" --lang=TypeScript --limit=5# Search in a specific repositorybun run skills/github-code-search/scripts/search.ts "cacheLife" --repo=vercel/next.js --limit=10# Use regex patternsbun run skills/github-code-search/scripts/search.ts "async.*await" --regexp --lang=TypeScript
Output format (JSON):
{ "query": "cacheLife", "options": { "language": "TypeScript", "limit": 3 }, "total": 2931, "results": [ { "repo": "vercel/next.js", "path": "packages/next/src/server/use-cache/cache-life.ts", "url": "https://github.com/vercel/next.js/blob/canary/packages/next/src/server/use-cache/cache-life.ts", "matches": [{ "lineNumber": 5, "content": "export type »CacheLife« = {" }] } ]}The » and « markers indicate where the search term was matched.
Option 2: Inline TypeScript (for custom processing)
For more complex searches with custom filtering, write inline TypeScript:
// Execute with: bun -e "..."const response = await fetch( 'https://grep.app/api/search?q=useOptimistic&l=TypeScript')const data = await response.json()// Process results locally - this is the efficiency gain!const filtered = data.hits.hits .filter((hit: any) => hit.repo.includes('react')) .slice(0, 5) .map((hit: any) => ({ repo: hit.repo, path: hit.path }))console.log(JSON.stringify(filtered, null, 2))
Quick Search (Direct API)
For simple searches, use curl directly:
curl -s "https://grep.app/api/search?q=useOptimistic+hook&l=TypeScript" | jq '.hits.hits[:5] | .[] | {repo: .repo.raw, path: .path.raw}'
Parameters
| Parameter | Description | Example |
|---|---|---|
q | Search query (required). Supports regex with regexp:true | "use cache", async.*await |
l | Language filter | TypeScript, Python, Go |
r | Repository filter | vercel/next.js, facebook/react |
regexp | Enable regex mode | true |
Example Queries
Find "use cache" implementations in Next.js projects
curl -s "https://grep.app/api/search?q=%22use%20cache%22&l=TypeScript" | jq '.hits.hits[:10] | .[] | {repo: .repo.raw, path: .path.raw}'
Search for error handling patterns
curl -s "https://grep.app/api/search?q=catch.*error.*log®exp=true&l=TypeScript" | jq '.hits.total'
Find implementations in a specific repo
curl -s "https://grep.app/api/search?q=cacheLife&r=vercel/next.js" | jq '.hits.hits[] | {path: .path.raw, lines: .content.lines}'
Best Practices
- Start broad, then narrow: Begin with a general query, then add language/repo filters
- Use regex for patterns: Enable
regexp=truefor complex pattern matching - Limit results locally: Process and filter in code before returning to save tokens
- Cache common searches: Store results for frequently-used queries
- Respect rate limits: The grep.app API has rate limits; batch queries when possible
Integration with MCP Tools
If the grep MCP server is configured, you can also use it via MCP tools:
// Via MCP (if mcp__grep__search is available)mcp__grep__search({ query: 'authentication middleware', language: 'TypeScript', useRegexp: false,})
However, the code mode approach (curl + jq or TypeScript script) is preferred for:
- Large result sets that need filtering
- Complex post-processing logic
- Chaining multiple searches
- Minimizing context window usage
Troubleshooting
- No results: Try broadening the query or removing filters
- Rate limited: Wait a few seconds and retry, or use the MCP server which may have higher limits
- Timeout: Large queries may timeout; add more specific filters
Установить github-code-search
Скачайте файлы навыков и распакуйте их в каталог .claude/skills/.
Скачать ZIPКлонируйте репозиторий и скопируйте файлы навыка в свой проект.
git clone https://github.com/jaredpalmer/claude-plugins/blob/main/skills/github-code-search/SKILL.md # Copy SKILL.md to your .claude/skills/ directory
Копировать





Дом
