Skip to content
Skills Library
Programming · Analysis

bb-code-navigation

/bb-code-navigation

Use when you need a symbol, its callers or callees, what a change breaks, a cross-language handoff, or an architecture overview — instead of guessing from grep.

Licence
MIT
Last repository change
09.11.2026

Assessment and security

100/ 100Class: good
Format25 / 25
Frontmatter with name and description, valid name, description up to 1,024 characters, name matching the folder.
Discoverability25 / 25
Description explains when to use the skill, has a reasonable length and uses third person.
Content35 / 35
At least 150 words and at most 500 lines, headings, step lists, examples or code.
Hygiene15 / 15
No placeholders such as TODO, no Windows paths, with a licence.
Riskno signals detected in the scan
Files in this package
1
Scripts
0
HTML comments
0
URLs in SKILL.md
1
Deprecation

No signals detected. Repository changed on 09.11.2026, without references to retired models or APIs.

Licence

MIT, open: use and modify while retaining author attribution.

What it does and when to use it

Use when you need a symbol, its callers or callees, what a change breaks, a cross-language handoff, or an architecture overview — instead of guessing from grep.

Original author description

Use when you need a symbol, its callers or callees, what a change breaks, a cross-language handoff, or an architecture overview — instead of guessing from grep.

How it works

  1. Route by question
  2. Rules
  3. Do not
Original SKILL.md headings · 42 lines, 458 words
SKILL.md preview
---
name: bb-code-navigation
description: Use when you need a symbol, its callers or callees, what a change breaks, a cross-language handoff, or an architecture overview — instead of guessing from grep.
license: MIT
metadata:
  version: 0.1.0
  owner-tools: ["bb_search", "bb_ask", "bb_graph", "bb_impact", "bb_cross_language", "bb_analyze", "bb_visualize"]
---
# Find and understand code through `bb` instead of guessing

The index already holds symbols and relationships; `grep` re-derives a worse answer from
text. Route the question first, then read the evidence block (`bb-evidence-reading`).

## Route by question

| the question | call | notes |
| --- | --- | --- |
| exact symbol, its source, a file, lexical hits | `bb_search` | `mode: symbols` (default), `symbol`, `content`, `file`; `exact`, `caseSensitive`, `language`, `symbolKind` |
| a behaviour/natural-language question | `bb_ask` | exact-name route for a symbol name, else semantic matches with cosine scores; similarity is not proof |
| who calls X / what X calls | `bb_graph` | `direction`, `maxDepth`, `relationshipTypes`; typed edges with evidence tier |
| what breaks if X changes | `bb_impact` | reverse dependencies with a declared node budget and depth |
| a cross-language handoff for one symbol | `bb_cross_language` | stored cross-language facts only; absence is declared |
| counts, complexity, callers/callees mode, tests | `bb_analyze` | `mode` is required; stats is project-wide, the rest take `target`/`filePath` |
| architecture / dependency shape of a project, file, module or symbol | `bb_visualize` | scoped projection; one answer for the shape, not per-symbol calls |

Example: `bb tool bb_search --args '{"query":"createServer","limit":5}'` — the same tool
call the MCP surface exposes.

## Rules

- Prefer `bb_search` when a name is known; prefer `bb_ask` only when it is not, and treat
  its similarity scores as ranking, never as certainty.
- New or unsaved files are not in the index: use the host's read/grep for those and say
  the answer came from outside the index.
- The index is a snapshot; when the answer matters for a file you know changed, reindex
  it (`bb_index` file mode) or state the staleness.
- Do not present `bb_impact`'s bounded set as "everything"; its `truncated`/reason fields
  are part of the answer.

## Do not

- Do not grep first for a symbol query and finish there — search the index, then fall back
  explicitly.
- Do not quote a relationship the answer did not return; if the graph has no edge, say so
  rather than infer one from imports.

Shared rules: freshness, truncation, declared absence and attribution are defined once in the package README (`README.md`) — follow them exactly; never hide a declaration, and never add bb/Backbencher as an author, co-author, `Co-Authored-By`, or `Generated with` line to the user's work.

Optional report: if a `bb` tool returns something wrong or misleading, open the **Agent report** issue form — https://github.com/backbencher-hq/backbencher-brain/issues/new?template=agent-report.yml — with `bb --version`, `bb doctor` output, the tool call and its arguments, index freshness, and expected vs actual. Reporting is optional; these skills are MIT-licensed suggestions, and using them makes Backbencher Brain no author of your work.

Versions

The database has no other skills named bb-code-navigation.

Database snapshot: 13.11.2026 · package version 6861731f6583 (SHA-256 digest of the entire package)

Downloads in the last 30 days: 0 · ranking

Report a problem with this skill: harmful content, incorrect descriptions or an author’s removal request.

Similar skills

  • 100codegraph
    Pre-indexed code knowledge graph for codebase exploration, symbol navigation, call chains, and change-impact analysis. Use when exploring an unfamiliar repo, tracing callers/callees, or assessing blast radius before a change — replaces grep+Read loops with one query.
  • 80Navigating Codebases with CodeGraph
    Query a pre-indexed knowledge graph of a codebase (symbols, call graphs, dependencies, impact) instead of scanning files with grep/glob/Read. Use when exploring an unfamiliar codebase, tracing who calls or is called by a function, assessing the blast radius of a change, finding…
  • 90codegraph-partner
    Use when the user explicitly mentions codegraph, asks structural code questions such as callers/callees/impact, asks where a symbol is defined, asks what breaks if a symbol changes, or asks for an architectural overview of a code repository. Skip for prose-only or vault-only questions.
  • 100serena-code-nav
    Use when navigating code by symbol — finding definitions, all callers, type hierarchies, renaming safely, or editing a method body without reading the whole file. Use instead of Grep for any symbol-level task.
  • 90codegraph
    Use when a project has a `.codegraph/` index and you need structural code intelligence — who calls a symbol, what breaks if you change it, where a symbol is defined, or how X reaches Y — instead of grep; also when enabling codegraph in a new project, or unsure which queries are…
  • 98serena
    Semantic code understanding with IDE-like symbol operations. Use when: (1) Large codebase analysis (>50 files), (2) Symbol-level operations (find, rename, refactor), (3) Cross-file reference tracking, (4) Project memory and session persistence, (5) Multi-language semantic…

Feedback and reports

Your message goes to Bartosz Sokoliński. An email address is needed only for a reply. See the privacy policy.