Search and discover code context across GitHub Enterprise organizations using the gh CLI. Use when you need to find code implementations, understand how functions are used, trace dependencies, or gather context about deployed or in-development code across multiple repositories. Triggers on requests like "find where X is implemented", "how is Y used across repos", "show me the auth code", or "find context for this feature".
Search for code across GitHub Enterprise and gather comprehensive context including file structure, git history, related files, and usage patterns.
Verify gh CLI authentication before any search:
gh auth status
Expected: Logged in to target host (github.com or your enterprise host).
If not authenticated, run gh auth login --hostname <host>.
User request about code
│
▼
┌─────────────────────┐
│ What type of search?│
└─────────────────────┘
│
┌────┼────┬────────────┐
▼ ▼ ▼ ▼
Find Find Find Understand
code usage related file deeply
│ │ files │
▼ ▼ ▼ ▼
search find_ search get_file_
_code usages _code context
.sh .sh .sh .sh
Run scripts/search_code.sh to locate code matching the query.
# Basic search across enterprise
./scripts/search_code.sh "functionName" --host github.mycompany.com --org org-name
# With language filter
./scripts/search_code.sh "class AuthService" --host github.mycompany.com --language typescript --limit 20
Options:
--host: GitHub hostname (e.g., github.mycompany.com for enterprise)--org: Organization to search within--language: Filter by programming language--limit: Max results (default: 10)For query construction patterns, see references/query-patterns.md.
Once a relevant file is found, run scripts/get_file_context.sh for deep context.
./scripts/get_file_context.sh owner/repo src/path/to/file.ts --host github.mycompany.com
Returns:
To understand how code is used elsewhere, run scripts/find_usages.sh.
# Find all usages of a symbol
./scripts/find_usages.sh "AuthService" --host github.mycompany.com --org org-name
# Exclude the definition file itself
./scripts/find_usages.sh "handleSubmit" --exclude-def --limit 30
Options:
--exclude-def: Filter out files likely containing the definition--limit: Max results (default: 15)./scripts/search_code.sh "function X" --host github.mycompany.com./scripts/get_file_context.sh repo path/file.ts --host github.mycompany.com./scripts/find_usages.sh "Y" --host github.mycompany.com --org org-name./scripts/search_code.sh "auth" --host github.mycompany.com --org org-name --limit 30./scripts/get_file_context.sh owner/repo path/file.ts --host github.mycompany.com./scripts/find_usages.sh "exportedFunction" --host github.mycompany.com| Host | Usage |
|------|-------|
| github.com | Public/personal repos (default) |
| github.mycompany.com | Enterprise repos (example) |
Always specify --host <your-enterprise-host> for enterprise searches.
"No results found"
gh auth status"Rate limit exceeded"
--limit valuesgh api rate_limit"Could not resolve host"
gh auth login --hostname <your-enterprise-host>Search for places (restaurants, cafes, etc.) via Google Places API proxy on localhost.
Interact with GitHub using the `gh` CLI. Use `gh issue`, `gh pr`, `gh run`, and `gh api` for issues, PRs, CI runs, and advanced queries.
Create or update AgentSkills. Use when designing, structuring, or packaging skills with scripts, references, and assets.
Start voice calls via the OpenClaw voice-call plugin.
Notion API for creating and managing pages, databases, and blocks.
Gemini CLI for one-shot Q&A, summaries, and generation.
Category:developer