Sourcegraph search
My personal directory of AI Agent skills
npx -y skills add tkolleh/skills --skill sourcegraph-searchAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 1 stars1 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its author says it does
Copied from the file, not written here
Search code, commits, and diffs across millions of open source and private repositories using the Sourcegraph CLI (src).
The file declares its own license as MIT. That is the author’s claim about this one file, and it is not the same thing as the license GitHub reports for the repository, which is listed with the other numbers below.
SKILL.md
3.8 KB, as published. Nobody here has run it
What I do
I help you perform large-scale code analysis and discovery by searching Sourcegraph. I use the src CLI to execute precise queries that can match literal strings, regular expressions, or structural code patterns. I can filter results by repository, file type, language, commit history, and time ranges. I am particularly effective at finding usage examples, security vulnerabilities, deprecated patterns, and architectural inconsistencies across massive codebases.
When to use me
Use this skill when:
- You need to search across a large codebase or multiple repositories for specific patterns, functions, or dependencies.
- You need to find real-world usage examples of a function or API across many repositories.
- You are auditing a codebase for security tokens, keys, or vulnerable dependencies.
- You want to perform "structural search" to match code patterns regardless of whitespace or formatting (e.g., finding all try-catch blocks with empty catches).
- You need to track recent changes or history using
type:diffortype:commit(e.g., "what changed in the last week"). - You want to find projects that use specific dependencies (e.g., "who relies on
lodashversion 4.17.19"). - You need to identify repositories that are contributor-friendly (e.g., contain
CONTRIBUTING.md).
Instructions
1. Basic Search
Execute searches using the src search command. Always use the -json flag to ensure the output is machine-readable and easy to parse. Enclose your query in single quotes to prevent shell expansion.
src search -json 'query'
2. Advanced Filtering
Refine your search results using these standard filters within your query string:
- Repository:
repo:^github\.com/owner/name$(supports regex) - File:
file:\.js$orfile:package\.json - Language:
lang:TypeScript - Content:
content:"string to find"(optional, content is searched by default) - Boolean Operators:
AND,OR,NOT(e.g.,error AND NOT file:test)
3. Structural Search
Use patternType:structural to match code structures rather than exact strings. This is powerful for finding code regardless of line breaks or formatting.
- Syntax: Use
:[name]as a placeholder (hole) to match any code between delimiters. - Example: Find
console.logwith any argument:
src search -json 'console.log(:[args]) patternType:structural'
4. Search Tricks & Best Practices
Use these specific patterns for high-value tasks:
Find Usage of a Method (Structural) Find where a method is called, even with different arguments or formatting.
src search -json 'myMethod(:[args]) patternType:structural'
Find Security Vulnerabilities (Regex) Scan for potential leaked secrets or keys.
src search -json '(key|secret|token)-[\w+]{32,} patternType:regexp'
Find Specific Dependency Versions
Check package.json files for a specific vulnerable library version.
src search -json 'file:package.json lodash 4.17.19'
Find Recent Changes (Diffs/Commits) See what changed in a repository recently.
src search -json 'repo:^github\.com/owner/repo$ type:diff after:"1 week ago"'
Find Contributor-Friendly Projects Locate repositories with contribution guidelines.
src search -json 'contributing lang:Markdown'
5. Output Interpretation
The -json output will provide a list of matches. Key fields to observe:
repository: The repository name.file: The path to the matching file.lineMatches: Specific lines and line numbers where the match occurred.commit: If searching history, the commit hash and author.