code-search
Search code symbols, find function calls, and analyze codebase
What this skill does
# Code Search
**Recommended model tier:** balanced (sonnet) - this skill performs straightforward operations
Search for code symbols (functions, classes, methods, types) and find their call sites.
## Available Tools
### 1. Search Symbols (`mcp__plugin_aide_aide__code_search`)
Find functions, classes, methods, interfaces, and types by name or signature.
**Example usage:**
```
Search for: "getUserById"
→ Uses code_search tool
→ Returns: function signatures, file locations, line numbers
```
### 2. Find References (`mcp__plugin_aide_aide__code_references`)
Find all places where a symbol is called/used.
**Example usage:**
```
Who calls "getUserById"?
→ Uses code_references tool
→ Returns: all call sites with file:line and context
```
### 3. List File Symbols (`mcp__plugin_aide_aide__code_symbols`)
List all symbols defined in a specific file.
**Example usage:**
```
What functions are in src/auth.ts?
→ Uses code_symbols tool
→ Returns: all functions, classes, types in that file
```
### 4. File Outline (`mcp__plugin_aide_aide__code_outline`)
Get a collapsed structural outline of a file — signatures preserved, bodies replaced with `{ ... }`.
Uses ~5-15% of the tokens of the full file. **Use this before reading a file** to understand its
structure, then use `Read` with offset/limit for specific sections.
**Example usage:**
```
Outline src/auth.ts
→ Uses code_outline tool
→ Returns: collapsed view with signatures, line ranges, bodies collapsed
```
### 5. Check Index Status (`mcp__plugin_aide_aide__code_stats`)
Check if the codebase has been indexed.
**Example usage:**
```
Is the code indexed?
→ Uses code_stats tool
→ Returns: file count, symbol count, reference count
```
### 6. Search Findings (`mcp__plugin_aide_aide__findings_search`)
Search static analysis findings (complexity hotspots, secrets, code clones, coupling issues).
**Example usage:**
```
Any complexity issues in src/auth?
→ Uses findings_search tool with query "auth" or file filter
→ Returns: findings with file, line, severity, description
```
## Workflow
1. **First, check if codebase is indexed:**
- Use `code_stats` to verify indexing
- If not indexed, tell user to run: `./.aide/bin/aide code index`
**Binary location:** The aide binary is at `.aide/bin/aide`. If it's on your `$PATH`, you can use `aide` directly.
2. **Search for symbols:**
- Use `code_search` with the symbol name or pattern
- Filter by kind (function, method, class, interface, type)
- Filter by language (typescript, javascript, go, python)
3. **Find call sites:**
- Use `code_references` to find where a symbol is used
- Shows all callers with context
4. **Explore specific files:**
- Use `code_symbols` to list all definitions in a file
## Example Session
**User:** "Where is the authentication function?"
**Assistant action:**
1. Use `code_search` with query "auth" or "authenticate"
2. Show matching functions with file locations
**User:** "Who calls authenticateUser?"
**Assistant action:**
1. Use `code_references` with symbol "authenticateUser"
2. Show all call sites grouped by file
## What These Tools Cover
`code_search` and `code_references` work from the tree-sitter symbol index. They find:
- Function, method, class, interface, type definitions by name
- Symbol signatures (parameter types, return types)
- Doc comments attached to definitions
- Call sites for a specific symbol name (via `code_references`)
For anything else — patterns inside function bodies, method call chains, string literals,
SQL queries, imports, variable declarations — use **Grep**, which searches code content directly.
In short: `code_search` finds _where things are defined_; Grep finds _patterns in code content_.
## Notes
- Code must be indexed first: `./.aide/bin/aide code index`
- Indexing is incremental - only changed files are re-parsed
- Supports: TypeScript, JavaScript, Go, Python, Rust, and more
- For file watching: `AIDE_CODE_WATCH=1 claude`
Related in General
modeling-omnistudio-epc-catalog
IncludedSalesforce Industries CME EPC product-modeling skill for Product2-based catalog creation. Use when creating EPC products, configuring product attributes, building offer bundles with Product Child Items, or reviewing EPC DataPack JSON metadata for product catalog changes. TRIGGER when: user creates or updates Product2 EPC records, AttributeAssignment payloads, AttributeMetadata/AttributeDefaultValues, Offer bundles, or ProductChildItem relationships. DO NOT TRIGGER when: designing OmniScripts/FlexCards/Integration Procedures (use building-omnistudio-omniscript, building-omnistudio-flexcard, or building-omnistudio-integration-procedure), implementing Apex business logic (use generating-apex), or troubleshooting deployment pipelines (use deploying-metadata).
relationship-science-coach
IncludedUse this skill for direct, practical adult relationship coaching: couples conflict, repair, trust, marriage, dating, flirting, attachment patterns, emotional connection, sex, desire differences, eroticism, kink negotiation, affection, love languages, breakups, and long-term passion. Draw on Gottman, EFT and Hold Me Tight, attachment science, modern sex research, Perel, Nagoski, Kerner, Schnarch, Love and Stosny, and flexible love-language tools. Be concrete and low-hedge. Redirect only for imminent danger, abuse, coercive control, minors, non-consent, self-harm, stalking, or medical/legal/psychiatric decisions.
building-sf-integrations
IncludedSalesforce integration architecture and runtime plumbing with 120-point scoring. Use this skill to set up Named Credentials, External Credentials, External Services, REST/SOAP callout patterns, Platform Events, and Change Data Capture. TRIGGER when: user sets up Named Credentials, External Services, REST/SOAP callouts, Platform Events, CDC, or touches .namedCredential-meta.xml files. DO NOT TRIGGER when: Connected App/OAuth config (use configuring-connected-apps), Apex-only logic (use generating-apex), or data import/export (use handling-sf-data).
venue-templates
IncludedAccess comprehensive LaTeX templates, formatting requirements, and submission guidelines for major scientific publication venues (Nature, Science, PLOS, IEEE, ACM), academic conferences (NeurIPS, ICML, CVPR, CHI), research posters, and grant proposals (NSF, NIH, DOE, DARPA). This skill should be used when preparing manuscripts for journal submission, conference papers, research posters, or grant proposals and need venue-specific formatting requirements and templates.
let-fate-decide
IncludedDraws the 12 Houses of the Zodiac Tarot spread to inject entropy into planning when prompts are vague, ambiguous, or casually delegated. Interprets the spread to guide next steps. Use when the user says 'let fate decide', 'YOLO', 'whatever', 'idk', or other nonchalant phrases, makes Yu-Gi-Oh references, or when you are about to arbitrarily pick between multiple reasonable approaches. Prefer over ask-questions-if-underspecified when the user's tone is casual or playful rather than precision-seeking.
net-ops
IncludedCross-platform network troubleshooting (Windows, macOS, Linux) via local or remote shell. Use for: DNS broken, can't resolve hostnames, nslookup/dig works but apps fail, NRPT, WFP, scutil, /etc/resolver, systemd-resolved, /etc/resolv.conf, NetworkManager, VPN DNS leak residue (ProtonVPN/Mullvad/WireGuard/AnyConnect), AV/firewall blocking DNS or DoH, Tailscale DNS interaction, intermittent connectivity, remote diagnostics over SSH.