Skip to main content
Recipes

Recipe: Dogfood Travsr on your own repo

Use Travsr to navigate and understand your own codebase the same way the Travsr team uses it on the Travsr repo itself.

Step 1: Index once

cd your-repo
travsr init
travsr daemon start

Step 2: Connect Claude Desktop

Add to claude_desktop_config.json and restart Claude Desktop (see Quickstart).

Step 3: Build muscle memory for these prompts

Before touching any file:

"What is the blast radius of src/auth/middleware.ts?"

This tells you exactly what you'll need to test.

Before changing a function signature:

"Find all callers of UserService.findById in this repo."

Your update checklist, generated in seconds.

When onboarding to a new area of the codebase:

"Give me a structural overview of the src/payments module."

Uses get_repo_map to produce a module dependency breakdown.

When debugging a subtle bug:

"Trace the execution path from the /api/checkout route to the database write."

Uses get_execution_path to find hidden intermediate calls.

Before a PR review:

"What changed in this PR, and what does it affect?"

Feed the diff files into get_blast_radius for each changed file.

Step 4: Embed Travsr in your git workflow

Add a pre-push hook that prints the blast radius of any changed files:

# .git/hooks/pre-push
#!/bin/sh
CHANGED=$(git diff --name-only origin/main...HEAD | grep -E '\.(ts|rs|py|go)$')
for f in $CHANGED; do
echo "Blast radius check: $f"
# --direction callers lists everything that depends on this file.
travsr graph "$f" --direction callers --format json 2>/dev/null \
| jq -r '.nodes | length as $n | " \($n) affected nodes"' || true
done

Tip: keep .travsr/graph.db in .gitignore

The graph is derived from source: don't commit it. Add to .gitignore:

.travsr/graph.db
.travsr/graph.db-shm
.travsr/graph.db-wal