Struggling with slow, clunky code search in your terminal? As of November 2025, GitHub has quietly turned GitHub Copilot CLI into a powerful, ripgrep‑powered search assistant. The November 18, 2025 Copilot CLI changelog confirms that ripgrep is now bundled directly into Copilot CLI, alongside new grep and glob tools, and support for the latest models like Gemini 3 Pro. That means you can combine the raw speed of rg 15.1.0 (released October 22, 2025) with AI‑driven, context‑aware understanding of your codebase from inside the same terminal session.
This is evergreen, hands‑on tutorial content: you’ll learn how to use the new ripgrep integration in GitHub Copilot CLI for lightning‑fast code discovery, then layer in Gemini 3 Pro for smarter refactors, bug hunts, and architecture exploration. We’ll cover installation, key commands, practical workflows, and how to tune performance and safety so you can confidently supercharge your command‑line workflow.
What changed: ripgrep and Gemini 3 Pro in GitHub Copilot CLI
Two recent updates are key to faster, smarter terminal‑based code search:
- GitHub Copilot CLI ripgrep integration (GitHub Changelog, November 18, 2025): Copilot CLI now bundles ripgrep and exposes
ripgrep,grep, andglobtools to its internal agent. A 0.0.359 release note also introducesUSE_BUILTIN_RIPGREPto control whether Copilot uses its bundledrgor one from yourPATH. - Gemini 3 Pro in GitHub Copilot (GitHub Changelog, November 18, 2025): Gemini 3 Pro, Google’s latest frontier model, is in public preview for GitHub Copilot Pro, Pro+ Business, and Enterprise, and is available in VS Code, GitHub.com, mobile, and GitHub CLI — which includes Copilot CLI.
On the search side, upstream ripgrep is at v15.1.0 (October 22, 2025), a performance‑tuned release that fixes line‑buffering issues and builds on ripgrep 15.0.0’s major engine and gitignore improvements. In practice, that gives Copilot CLI a blazing‑fast, gitignore‑aware search core.
As of November 2025, GitHub Copilot CLI v0.0.361+ can marry ripgrep 15.x–class search performance with frontier LLMs like Gemini 3 Pro for deeply informed, context‑rich code search directly in your terminal.
Based on GitHub Copilot CLI releases & Gemini 3 Pro docs, Nov 2025
Prerequisites: versions, plans, and installation
- GitHub Copilot plan: You need Copilot Pro, Pro+, Business, or Enterprise. Copilot CLI is not available on the free tier. (Docs: “Using GitHub Copilot CLI,” updated 2025.)
- GitHub Copilot CLI: Install or upgrade to a recent build (0.0.359+ to ensure ripgrep integration; 0.0.361+ for Gemini 3 Pro availability).
- ripgrep: Optional to install separately; Copilot CLI comes with a bundled binary but can use your system’s
rgif desired. - Gemini 3 Pro access: Available via GitHub Copilot as a model choice; enterprise/business admins must enable the Gemini 3 Pro policy; individuals on Pro/Pro+ can enable it in the model picker.
Install or upgrade GitHub Copilot CLI
Copilot CLI is distributed via npm. To install or ensure you’re on the latest published version:
# Install
npm install -g @github/copilot
# Or upgrade to the latest release
npm install -g @github/copilot@latest
# Verify version
copilot --versionThe GitHub changelog describes updating exactly this way in the November 18, 2025 entry.
Ensure ripgrep is available
Copilot CLI now bundles ripgrep internally, but many developers still like a standalone rg for manual searches and integration with editors. Official ripgrep 15.1.0 binaries are available on GitHub for Linux, macOS, and Windows, and packaged across major distros:
# macOS (Homebrew)
brew install ripgrep
# Debian/Ubuntu (may be slightly older than 15.1.0)
sudo apt-get install ripgrep
# Windows (Chocolatey)
choco install ripgrepEnable Gemini 3 Pro in Copilot
- Enterprise/Business: An admin must enable the Gemini 3 Pro policy in Copilot settings (per the November 18, 2025 changelog entry “Gemini 3 Pro is in public preview for GitHub Copilot”).
- Pro / Pro+: Select Gemini 3 Pro in the model picker (for example in VS Code), confirm the one‑time prompt, and (optionally) configure “bring your own key.”
- Copilot CLI: Use the
/modelcommand in an interactive session to select Gemini 3 Pro once your account has access.
| Component | Current status (Nov 2025) | Key details |
|---|---|---|
| GitHub Copilot CLI | v0.0.361 latest tagged release | Gemini 3 Pro support; ripgrep tool integration. |
| ripgrep | v15.1.0 (latest GitHub release) | Bug‑fixed line buffering, builds on 15.0.0 engine & gitignore improvements. |
| Gemini 3 Pro | gemini-3-pro-preview (released Nov 18, 2025) | 1M token input context, Jan 2025 cutoff, tuned for deep reasoning. |
How ripgrep is used inside GitHub Copilot CLI
The Copilot CLI changelog for November 18, 2025 calls out:
“Copilot now searches your codebase more efficiently! We’ve bundled ripgrep into Copilot CLI and added
GitHub Changelog, 2025‑11‑18grepandglobtools to quickly and powerfully find the right context.”
Copilot CLI runs as an agent that can use tools: shell, GitHub MCP, file editors, grep/glob/ripgrep, and more. When you ask a question like “Where is the UserService instantiated?”, the agent will typically:
- Call ripgrep to find text and symbol patterns across your repo, respecting
.gitignoreand language types. - Filter and cluster those hits into a smaller set of relevant locations.
- Pull the matching files into the model’s context window.
- Have Gemini 3 Pro (or the configured model) read that code and answer your prompt with explanation, summaries, or edited files.
That combination solves a classic problem: plain ripgrep tells you “where” but not “why”. Copilot CLI uses ripgrep to narrow context fast, then lets the model reason over that context.

Core workflow: interactive code search with ripgrep and Copilot CLI
Most of your day‑to‑day usage will start in interactive mode, which GitHub’s docs recommend as the default.
1. Start Copilot CLI in a trusted project directory
cd /path/to/your/project
copilotOn first run in that directory, Copilot CLI will ask whether you trust the folder. This matters because the agent can read, edit, and execute files beneath that root. Per GitHub’s “About Copilot CLI” documentation, you should:
- Avoid launching from your entire home directory.
- Prefer a project‑specific root (e.g., a single repo checkout).
2. Ask high‑level questions that trigger ripgrep searches
Example: you’re debugging an authentication bug and need to find everywhere verifyToken is referenced.
# Inside Copilot CLI interactive session
Find all the places where verifyToken() is defined or called,
and tell me which ones are involved in the login flow.Under the hood, Copilot CLI will:
- Run something equivalent to
rg "verifyToken" .with additional filters by language and directory. - Cluster matches around controllers, middleware, and service classes.
- Summarize which call sites are on the login path and which are only used in background jobs or tests.
This is where ripgrep’s speed shines: ripgrep’s own benchmarks show it outpacing alternatives like ag, git grep, GNU grep, and ugrep by large factors on large codebases such as the Linux kernel and 13 GB text corpora. That means Copilot CLI can afford to make many focused searches per prompt without feeling sluggish.
3. Drill down with file mentions and inline search hints
GitHub’s Copilot CLI docs explain that you can use @ to bring files into context. Combine that with natural‑language search to guide more precise ripgrep usage:
Explain how authentication works in this repo.
Start from @src/auth/router.ts and follow any functions it calls.
Use ripgrep or other tools to find helper functions as needed.You don’t need to write rg manually. Copilot’s agent will call its ripgrep tool to follow symbol names across the codebase and pull in relevant definitions.

Programmatic mode: scripted code search and summaries
Copilot CLI also supports programmatic mode via -p/--prompt, which is ideal for one‑shot code searches in scripts or CI tasks.
copilot -p "Use ripgrep to list all deprecation warnings in the codebase
and summarize which modules need attention first." \
--allow-tool 'shell(rg)' \
--allow-tool 'write'Here’s what this does:
-pprovides a single prompt and then exits once the response is complete (no interactive UI).--allow-tool 'shell(rg)'gives Copilot permission to runrgvia its shell tool without asking each time.--allow-tool 'write'lets it write temporary files or reports if needed.
Per the “About Copilot CLI” security docs, treat these flags with care: --allow-all-tools or indiscriminate shell approvals let the agent run anything you can run, without review. For CI or read‑only search, consider:
copilot -p "Scan for TODO or FIXME comments related to payment retries
and output a concise Markdown report." \
--allow-tool 'shell(rg)' \
--deny-tool 'shell(rm)' \
--deny-tool 'shell(git push)'Practical patterns: replacing manual ripgrep with Copilot‑powered search
Pattern 1: from raw rg output to ranked root‑cause candidates
Traditional usage:
# Find all uses of an environment variable
rg "PAYMENT_GATEWAY_URL" .With Copilot CLI + ripgrep, you can keep the speed but add triage and explanation:
Find every place PAYMENT_GATEWAY_URL is referenced using ripgrep or grep.
Group results by service or package, and tell me:
1) which code paths are hit in the checkout flow,
2) which are dead or unused,
3) which are test‑only.
Prioritize likely root causes for incorrect URLs in production.Copilot will:
- Use ripgrep to harvest matches quickly.
- Follow import chains and router wiring to narrow to production code paths.
- Explain how the env var flows through your system.
Pattern 2: type‑filtered search without memorizing flags
Ripgrep supports powerful type filtering (for example rg -tjs -g'!*.spec.ts'). If you don’t remember the exact combination, you can ask Copilot to formulate it and run it.
Search only TypeScript and TSX files for any usage of the legacy
UserProfile component, excluding tests. Then show me:
- which imports are dead,
- which code paths still depend on it in production routes.Behind the scenes, Copilot’s agent might build and run a sequence of ripgrep commands (for example using -ttypescript, -g'!*.spec.ts') you never see, but you still get the benefits of type‑aware search.
Pattern 3: guided refactors with Gemini 3 Pro’s long context
Gemini 3 Pro’s 1M‑token context window (per Google’s Gemini 3 docs) is particularly powerful for large‑scale refactors. Combine that with ripgrep‑powered discovery:
Use ripgrep or similar tools to find every implementation of the
Repository pattern in this monorepo.
Cluster them by language and framework.
Then propose a step‑by‑step migration plan to a single shared abstraction
without breaking existing services. Start with read‑only analysis.Gemini 3 Pro can ingest the matching files, reason about differing designs, and output a staged plan. Because it can maintain reasoning via thought signatures internally, follow‑up prompts like “Apply step 1 only” still benefit from earlier search context.

Tuning performance and configuration
Choosing which ripgrep binary Copilot CLI uses
The Copilot CLI 0.0.359 release notes add an environment variable:
“Enable
Copilot CLI v0.0.359 release notesUSE_BUILTIN_RIPGREPenvironment variable to optionally use ripgrep from PATH.”
That means you can prefer your own ripgrep installation (for example a bleeding‑edge build) over the bundled one:
# On Unix shells
export USE_BUILTIN_RIPGREP=false # tells Copilot CLI to use rg from PATH
export PATH="$HOME/.cargo/bin:$PATH" # if you install rg via cargo
# Then start Copilot
copilotOr to force use of the bundled binary:
export USE_BUILTIN_RIPGREP=true
copilotConfiguring Copilot CLI behavior
GitHub’s docs describe a config.json under ~/.copilot which controls:
- Trusted directories (
trusted_folders) - Default model (which you can override via
/model) - Log levels, network settings, and other runtime behavior
For performance‑tuned search workflows, consider:
- Limiting trusted folders to the smallest project root you actually need.
- Using
/usageto monitor token usage and avoid unintentionally massive contexts. - Configuring MCP servers only when necessary to reduce tool overhead.
Model selection: when to use Gemini 3 Pro in the CLI
By default, Copilot CLI currently uses Anthropic’s Claude Sonnet 4 for interactive sessions (per GitHub’s “Model usage” docs), but you can switch models with /model once Gemini 3 Pro is enabled for your account.
Use Gemini 3 Pro in Copilot CLI when:
- You’re analyzing large, multi‑language codebases and need long context windows.
- You depend on strong reasoning over complex refactors, concurrency issues, or deep architectural questions.
- You want to future‑proof for potential multimodal tasks (for example, combining screenshots, diagrams, and code), which Gemini 3 is designed to handle.
In many day‑to‑day tasks, the speed of the default Sonnet models is sufficient. Treat Gemini 3 Pro as a “high‑effort reasoning mode” to call on when necessary.
Safety and best practices for ripgrep‑powered Copilot search
Because Copilot CLI can both search and modify your filesystem, combine ripgrep’s reach with Copilot’s power carefully:
- Restrict trust: Only trust directories you’d be comfortable giving a human teammate full shell access to.
- Review commands: When Copilot asks to run tools (especially
shell(rg)vsshell(rm)vsshell(git)), review each command before approving, unless you’re in a locked‑down environment. - Use deny‑lists: Prefer targeted
--allow-tool 'shell(rg)'and--deny-tool 'shell(rm)'over blanket--allow-all-tools. - Version control everything: Work in git repos so you can always inspect and revert AI‑made changes.
- Run in containers/VMs for experimental scripts that combine automatic search with automatic edits or shell execution, as GitHub’s risk‑mitigation section recommends.
Conclusion: using ripgrep and Gemini 3 Pro to level up terminal search
GitHub Copilot CLI’s November 2025 updates have quietly turned the terminal into a first‑class, AI‑driven development environment. By bundling ripgrep 15.x–class search and exposing it as a tool to the Copilot agent, the CLI can scan huge codebases in milliseconds, then feed only the most relevant snippets into frontier models like Gemini 3 Pro for deep reasoning and high‑level understanding.
To get the most out of this stack:
- Install or upgrade GitHub Copilot CLI and optionally your own ripgrep, then configure
USE_BUILTIN_RIPGREPas needed. - Use interactive mode for exploratory debugging and refactors, letting Copilot orchestrate ripgrep under the hood.
- Adopt programmatic mode for scripted searches and reports in CI pipelines, with carefully chosen tool approvals.
- Switch to Gemini 3 Pro when tackling complex, cross‑cutting changes or large‑scale architectural questions where its long context and reasoning shine.
- Respect security best practices around trusted directories, tool approvals, and isolation.
If you’ve been juggling rg in one terminal and an LLM in a browser tab, Copilot CLI’s ripgrep integration and Gemini 3 Pro support let you collapse that workflow into a single, powerful interface. Start in your favorite project folder with copilot, ask your next “where is this coming from?” question, and let ripgrep and Gemini do the heavy lifting.