Reverse trace
The default (forward) trace walks down from a root paper into its bibliography. --reverse walks up: it finds papers that cite the source while mentioning the keyword in their citation context.
Usage
No PDFs are downloaded. The entire trace runs on Semantic Scholar metadata.
How it works
Semantic Scholar's /paper/{id}/citations endpoint returns a contexts field for each citing paper: 1-2 sentence snippets around each place the paper cites the source. Citracer applies the keyword regex to these snippets locally:
- Match: the citing paper is added to the graph with the snippet as its keyword hit
- No match: the citing paper is skipped
For a paper with 2000+ citations, this runs in ~10-30 seconds and typically surfaces 20-100 relevant papers.
Options
| Flag | Default | Description |
|---|---|---|
--reverse |
off | Enable reverse trace |
--reverse-limit |
500 |
Max citations fetched per level. Protects against papers with thousands of citations |
--depth |
1 |
Recursion depth. --depth 2 finds citers of citers (can expand quickly) |
Deep recursion
--depth > 2 can expand combinatorially. Each level multiplies the number of S2 API calls. Use --reverse-limit to cap growth.
Graph topology
Reverse traces produce a star topology (many nodes pointing to one root), so the visualizer defaults to a force-directed layout instead of Sugiyama. You can switch at runtime.
Limitations
- Depends entirely on Semantic Scholar having indexed the citation contexts
- Papers S2 doesn't know about won't appear
- No cross-graph bibliographic links (bibliographies are not parsed)
--semanticis not available in reverse mode (snippets are too short for embedding-based matching)