Screens - cruisinme30/spelunk GitHub Wiki
The 56 design mocks from the design canvas, grouped by the wiki page that documents each one. Tests cite them by screen id,
e.g. @covers screen:file-names-only (mocks.md).
Each screen's block on that page shows the mock and, under The built panel, a screenshot of the real panel. Screens 16 and 18 are VS Code's own editor and Settings, which the screenshot tool can't draw, so they have no screenshot.
Getting Started
Installing and the first run.
| # | Screen | Screen id | Milestone | Built |
|---|---|---|---|---|
| 15 | First run: pick a shortcut, index repos | first-run |
M5 | ✓ screenshot |
Words, regex and logic
How words, regexes, case and logic match.
| # | Screen | Screen id | Milestone | Built |
|---|---|---|---|---|
| 1 | Plain text: names and contents | plain-text-search |
M1 | ✓ screenshot |
| 7 | AND / OR / ( ) / - / since: in history |
boolean-history |
M3 | ✓ screenshot |
| 8 | case: + /regex/ + lang: |
case-regex-language |
M1 | ✓ screenshot |
| 28 | word:yes keeps whole words |
whole-words |
1.1 | ✓ screenshot |
| 29 | case:smart matches case when the query has a capital |
smart-case |
1.1 | ✓ screenshot |
| 33 | match:fuzzy finds file names by their letters in order; without it, a note offers them |
fuzzy-file-names |
2.1 | ✓ screenshot |
| 39 | Multiline regex: a regex with \n matches across lines, one result per match |
multiline-regex |
1.2 | ✓ screenshot |
| 57 | Comments, quoted text or code: in:comments, in:strings and in:code keep each match by where it is; -in: leaves one place out |
comments-strings |
2.1 | ✓ screenshot |
Files and repos
Narrowing by path, repo, language, file state, owner and VS Code's excludes.
| # | Screen | Screen id | Milestone | Built |
|---|---|---|---|---|
| 2 | f: path regex + text |
path-scoped-search |
M1 | ✓ screenshot |
| 12 | type:file + lang: |
file-names-only |
M2 | ✓ screenshot |
| 26 | is:test keeps test files |
test-files |
1.1 | ✓ screenshot |
| 37 | -is:generated / -is:vendored leave tool-written and third-party files out |
generated-vendored |
1.2 | ✓ screenshot |
| 42 | owner: keeps the files a team owns in CODEOWNERS |
owner-filter |
1.2 | ✓ screenshot |
| 52 | VS Code's files.exclude and search.exclude hide results too; a note counts them, and Show them adds excludes:no |
editor-excludes |
2.1 | ✓ screenshot |
Definitions and code shape
Definitions, uses and code by its shape.
| # | Screen | Screen id | Milestone | Built |
|---|---|---|---|---|
| 9 | sym: definitions |
symbol-definitions |
M4 | ✓ screenshot |
| 35 | kind: keeps one kind of definition; ref: finds a name's uses |
symbol-kinds |
1.1 | ✓ screenshot |
| 45 | Uses inside definitions: kind: with ref:, content: or struct: lists each line inside the definitions it keeps, naming the one it is in |
uses-in-definitions |
2.1 | ✓ screenshot |
| 40 | struct: finds code by its shape: a template's holes take any code, over lines |
structural-search |
1.2 | ✓ screenshot |
Commits and time
Commits, time windows and past revisions.
| # | Screen | Screen id | Milestone | Built |
|---|---|---|---|---|
| 3 | author: + f: + text → commit diffs |
author-history |
M3 | ✓ screenshot |
| 10 | since: on current files |
since-on-files |
M4 | ✓ screenshot |
| 11 | msg:"phrase" + repo: + count: |
message-repo-count |
M3 | ✓ screenshot |
| 23 | Bare words match commit messages too | words-in-messages |
M3 | ✓ screenshot |
| 27 | author: + is:test → the test changes in commits |
test-history |
1.1 | ✓ screenshot |
| 34 | type:added finds the commits that added a line |
added-removed-lines |
1.1 | ✓ screenshot |
| 41 | at: searches the files as they were at a tag, branch, commit or time |
past-revision |
1.2 | ✓ screenshot |
Results and ranking
Order, counts, facets, context lines and syntax colors.
| # | Screen | Screen id | Milestone | Built |
|---|---|---|---|---|
| 24 | Best match first: definitions and names first, tests last | ranked-results |
1.1 | ✓ screenshot |
| 25 | order:file keeps path order |
path-order |
1.1 | ✓ screenshot |
| 30 | Facets — counts by repo, language and folder (author and month for commits) narrow the results | result-facets |
1.1 | ✓ screenshot |
| 36 | Context lines: a few lines around each code match, merged when they touch | context-lines |
1.2 | ✓ screenshot |
| 43 | Syntax colors and whitespace: code in the theme's colors, by VS Code's grammars | syntax-colors |
2.1 | ✓ screenshot |
| 54 | Recently changed first: the order name above the results is a menu, with an arrow for the direction; each code result says when its file changed | recent-order |
2.1 | ✓ screenshot |
Error index
Query errors and their fixes.
| # | Screen | Screen id | Milestone | Built |
|---|---|---|---|---|
| 13 | Query errors with fixes | query-errors |
M1 | ✓ screenshot |
Using the Panel
The empty box, pins, watches, opening, Replace and Help.
Autocomplete
What the box suggests after each operator.
| # | Screen | Screen id | Milestone | Built |
|---|---|---|---|---|
| 5 | Autocomplete: operators | operator-suggestions |
M2 | ✓ screenshot |
| 6 | Autocomplete: author values | value-suggestions |
M3 | ✓ screenshot |
| 19 | Values: every author for author: |
author-values |
M3 | ✓ screenshot |
| 20 | Values: time windows for since: |
since-values |
M2 | ✓ screenshot |
| 21 | Values: file types and folders for f: |
path-values |
M2 | ✓ screenshot |
| 22 | Values: repo:, lang:, type:, kind:, case:, word:, count:, order:, is:, sym:, msg: |
other-values |
M2 | ✓ screenshot |
Agents and the Terminal
Claude Code, Copilot and the Terminal searching with Spelunk.
| # | Screen | Screen id | Milestone | Built |
|---|---|---|---|---|
| 56 | Agents and the terminal: the spelunk command and Claude Code or Copilot search the same index, live from VS Code or from the saved index |
agent-access |
2.1 | ✓ screenshot |
Settings and Commands
Settings in VS Code.
| # | Screen | Screen id | Milestone | Built |
|---|---|---|---|---|
| 18 | Settings in VS Code | settings |
M5 | VS Code's own UI |
Troubleshooting
While a repo is still indexing.
| # | Screen | Screen id | Milestone | Built |
|---|---|---|---|---|
| 14 | No results while indexing | no-results-while-indexing |
M4 | ✓ screenshot |
Next: Contributing: make your first change.