Skip to content
Back to skills

Codebase Search

ASecurity

Task-specific local codebase-understanding workflow for OpenCode, MCP, Pi, omp, and Codex. Use compact context for unfamiliar repository orientation, direct definition and graph tools for known targets.

  • 215 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added September 29, 2026
ai-agentsgo

Works with

  • mcp

Security analysis

A100/100

Scanned October 7, 2026

npx -y skills add Helweg/open-codebase-index --skill codebase-search --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Codebase Search?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Codebase Search
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/helweg-codebase-search/badge)](https://www.skillsdirectory.com/skills/helweg-codebase-search)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: codebase-search
description: Task-specific local codebase-understanding workflow for OpenCode, MCP, Pi, omp, and Codex. Use compact context for unfamiliar repository orientation, direct definition and graph tools for known targets.
---

# Codebase Search Skill

Use this skill when you need local repository knowledge before web lookup.

## Core workflow

1. Run `index_status` when index readiness or freshness is unknown.
2. When repository orientation is needed (layout, relevant symbols, or cross-file intent), use one compact `codebase_context(query, tokenBudget: 600, limit: 5)` first pass and inspect returned evidence before broad reads or searches. Do not call it mechanically before every task or tool.
3. For a known definition, use `implementation_lookup(query)` directly. For callers or callees, use `call_graph(name, direction)` directly; for relationships between identified endpoints, use `call_graph_path(from, to)` directly.
4. For a change with a known or suspected target symbol, optionally use `codebase_edit_context` for bounded target source plus direct callers and callees.
5. Use `codebase_peek(query, ...)` when only semantic locations are needed, and `codebase_search(query, ...)` when matching source content is needed. Neither requires another context call when the task is already scoped.
6. Read known paths directly and use `grep` for exact identifiers or exhaustive literal matches. Use `find_similar(code)` for analogous implementations and duplicates.

Avoid repeating broad reads or retrieval when existing evidence already answers the question. If results are weak, check readiness, compatibility, and scope with `index_status`; run `index_codebase` only when the index is missing, stale, or incompatible.

## Tool Priority

- `codebase_context` for compact, unfamiliar-repository orientation; explicit `symbol` and `from` + `to` routing remains supported.
- `implementation_lookup` for known definitions.
- `call_graph` and `call_graph_path` for relationships once symbols or endpoints are identified.
- `codebase_edit_context` as an optional bounded pre-edit step.
- `codebase_peek` for metadata-only semantic locations.
- `codebase_search` for matching implementation content.
- `find_similar` for pattern matching and duplication.
- `index_codebase` (force/estimate/dryRun/verbose) for first-time or stale indexes.
- `index_status`, `index_health_check`, `index_metrics`, `index_logs` for operational checks.

## Suggested Commands

- Unfamiliar subsystem: `codebase_context("payment processing flow", tokenBudget: 600, limit: 5)`.
- Known definition: `implementation_lookup("validate")`.
- Callers or callees: `call_graph("chargeCard", "callees")`.
- Known endpoints: `call_graph_path("submitPayment", "chargeCard")`.
- Change target: `codebase_edit_context(query: "reject expired tokens", symbol: "validateToken")`.
- Matching source after scope is known: `codebase_search("payment retry guards")`.
- Analogous code: `find_similar("function validate(data)")`.

## Additional Notes

- Use `grep` for exact identifiers and tiny, deterministic lookups.
- Use `websearch` only when local tools return no results and docs are likely missing.
- Choose the next tool from the evidence needed, not a mandatory context → peek → search chain.

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…