sourcegraph-search

Sourcegraph Code Search Skill

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "sourcegraph-search" with this command: npx skills add markus1189/nixos-config/markus1189-nixos-config-sourcegraph-search

Sourcegraph Code Search Skill

This skill enables autonomous code searching across repositories using the Sourcegraph CLI (src command).

When to Invoke This Skill

Use this skill when you need to:

  • Research how features are implemented across codebases

  • Find examples of API usage, patterns, or libraries

  • Locate specific code patterns (functions, classes, imports)

  • Analyze code across repositories (not just local files)

  • Search commit history or diffs for changes

  • Find security issues or credential leaks

  • Understand architecture by searching for patterns

  • Answer "where is X used?" questions across projects

Do NOT use for local file searches - use Grep/Glob instead.

Reference Navigation

The reference files are comprehensive. To find specific topics quickly:

Search reference.md sections

grep -n "^##" references/reference.md

Find specific filter documentation

grep -n "^### `repo:" references/reference.md grep -n "^### `file:" references/reference.md grep -n "^### `lang:" references/reference.md

Find examples by use case

grep -n "^##" references/examples.md

See reference.md for complete syntax documentation. See examples.md for practical search patterns organized by use case.

Quick Start

Basic Search Syntax

src search 'PATTERN' # Simple text search src search -json 'PATTERN' # JSON output for parsing src search 'repo:REGEX PATTERN' # Search specific repos src search 'lang:go PATTERN' # Search Go files only

Common Search Patterns

  1. Find function/method implementations

src search 'lang:go func handleRequest' src search 'lang:python def authenticate'

  1. Search in specific repository

src search 'repo:github.com/org/repo$ TODO' src search 'repo:sourcegraph/sourcegraph auth'

  1. Search with multiple filters

src search 'repo:kubernetes lang:go file:test fmt.Errorf' src search 'TODO -file:test -file:spec'

See examples.md for more patterns including file types, commit history, and boolean operators.

Workflow

When searching code:

  • Understand the goal - What pattern? Which repos/languages?

  • Construct the query - Start with pattern, add filters (repo: , lang: , file: ), use operators (AND , OR , NOT )

  • Execute - Run src search 'query' or src search -json 'query' for programmatic parsing

  • Parse results - Extract matches, identify patterns, note files for investigation

  • Refine - Too many results? Add filters. Too few? Broaden search.

Key Filters

Most common filters: repo: , lang: , file: , type: , case: , - prefix for exclusion.

See reference.md for complete filter documentation and syntax.

Pattern Types

Sourcegraph supports three pattern types:

Literal (default): Exact text matching

src search 'func main('

Regexp: Use patternType:regexp for regex (RE2 syntax)

src search 'patternType:regexp func \w+Handler'

Structural: Use patternType:structural for syntax-aware matching

src search 'patternType:structural fmt.Sprintf(:[format], :[...])'

See reference.md for complete pattern syntax, regex reference, and structural search details.

CLI Flags

  • -json : Output results as JSON (for parsing)

  • -stream : Stream results as they arrive

  • -display N : Limit displayed results (with -stream )


: Separate flags from query (for queries starting with - )

Important Notes

Negation in Queries

Queries starting with negation need -- separator:

src search -- '-repo:foo/bar error'

Use -json for programmatic parsing. Set NO_COLOR=t to disable colors or COLOR=t to force colors when piping.

Default search scope excludes forks and archived repos. Include with fork:yes or archived:yes .

Examples by Use Case

Finding Implementation Examples

How do people handle authentication in Go?

src search 'lang:go repo:.auth. middleware'

React hooks usage

src search 'lang:typescript repo:facebook/react use.*Hook'

Security Auditing

Find hardcoded credentials

src search 'patternType:regexp (password|secret|api_key)\s*=\s*["'][^"']+["']'

Exposed private keys

src search 'type:diff BEGIN.*PRIVATE KEY'

API Research

How is this library used?

src search 'lang:python import requests'

Find all GraphQL mutations

src search 'file:.graphql$ type Mutation'

Refactoring Research

Find deprecated API usage

src search 'repo:myorg/ oldDeprecatedFunction'

Find TODO comments in non-test files

src search 'TODO -file:test -file:spec'

Advanced Features

For comprehensive syntax reference, pattern types, and advanced operators, see reference.md.

For more practical examples and complex query patterns, see examples.md.

Troubleshooting

No results?

  • Check repository access/permissions

  • Verify repository is indexed by Sourcegraph

  • Try broader search terms

  • Remove restrictive filters

Too many results?

  • Add more specific filters

  • Use lang: to narrow by language

  • Use repo: with regex for specific repositories

  • Combine with file: for specific paths

Syntax errors?

  • Check regex syntax (RE2 format)

  • Quote the entire query

  • Use -- before queries starting with -

  • Verify filter names are correct

Integration with Other Tools

After finding results with Sourcegraph:

  • Use Read tool to examine specific files locally

  • Use Grep for more detailed local searching

  • Use Bash for git operations on repositories

  • Use WebFetch to access repository URLs

Best Practices

  • Start broad, then narrow: Begin with simple patterns, add filters incrementally

  • Use appropriate pattern types: Literal for exact matches, regexp for patterns

  • Combine filters effectively: repo:

  • lang:
  • file: for precision
  • Parse JSON for programmatic analysis: Use -json when processing results

  • Respect quotas and limits: Sourcegraph may have rate limits or result limits

  • Cache insights: Remember patterns that work for future searches

Performance Tips

  • Specific repo: filters are faster than broad searches

  • Language filters (lang: ) significantly narrow scope

  • File filters (file: ) reduce search surface

  • Use count: to limit results when you just need examples

  • Streaming (-stream ) is better for large result sets

Reference Files

  • reference.md: Complete syntax documentation, all filters, operators, pattern types

  • examples.md: Practical search patterns organized by use case

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

General

proxmox

No summary provided by upstream source.

Repository SourceNeeds Review
General

cve

No summary provided by upstream source.

Repository SourceNeeds Review
General

mermaid-to-png

No summary provided by upstream source.

Repository SourceNeeds Review