Query library
Folders, pins, #tags, full-text search, recent runs, history, previous responses and environments with {{variables}}.
Every request you save — and every aggregation pipeline — goes into the query library, shown in the sidebar of the Query workspace. Saved queries aren’t tied to one cluster: open the same query against staging and production.
Saving a query
- Drag a block’s header onto a folder, or use ⋯ → Save to folder… on the block.
- From the Index view, click Save to library.
- In the save dialog, give it a Name, pick a Folder (or type a new folder name) and add tags like
#relevance #ops.
Blocks that aren’t in a folder yet are listed under Unsaved (in tabs).
Folders
Folders can be nested. Use New folder at the top of the sidebar, or a folder’s ⋯ menu: New query here, New subfolder, Rename, Delete folder (its queries move up one level, nothing is lost). Double-click to rename, drag queries between folders, and collapse folders you aren’t using.
Each query’s ⋯ menu offers Open in workspace, Move to …, Remove from folder and Delete query. Aggregation pipelines, marked with ∑, also have Open in Aggregations. The star pins a query.
Finding queries
The search box (⌘F) searches names, request bodies, paths, index names, field names and tags at once:
| You type | It finds |
|---|---|
price | queries whose name, body, path or tags contain a word starting with price |
city.name active | queries containing both — every word must match |
#ops | queries tagged ops |
#ops health | tagged ops and mentioning health |
Words match as prefixes, so agg finds aggregation. Field names like city.name and index names like listings-v7 are matched as a whole. Esc clears the search.
The chips under the search box filter further: All, Pinned, Recent (the last 50 queries you ran), History and your most used #tags.
History
History lists the newest 200 requests you ran (kabanos keeps the last 20,000). Click one to reopen it as a new block. History stores requests exactly as written — with {{placeholders}}, never the secret values they resolved to. Clear it in Settings → Request history.
For saved queries, the response pane’s Previous menu keeps the last five responses so you can compare runs.
Environments and variables
Environments let one query run against different targets. Click Env → Manage environments… in the workspace toolbar:
- New environment — e.g. staging and production.
- Add variables:
index = listings-staging,user_id = 42, … - Tick secret for values like tokens: they’re encrypted with the Keychain and never shown again (stored — leave blank to keep).
Then write {{index}} anywhere in a request:
POST {{index}}/_search
{ "query": { "term": { "user_id": {{user_id}} } } }
Pick the environment in the tab’s Env menu. Variables are substituted when the request is sent — inside the app’s main process, so secret values never reach the screen or the history. An unknown variable stops the request with Unknown variable {{x}} — define it in the active environment.
Routines have their own variables — see Routines.