The best HelixQL query is usually one someone on your team already wrote. Now you can find it instead of rewriting it.
We kept seeing the same pattern in support calls: an engineer would ask how to write a query that, it turned out, a teammate had already written and run three weeks earlier — but it lived in that teammate's browser tab, never saved, never shared, gone the moment the tab closed.
Query history, automatically
Every query run against a workspace is now retained in a searchable history, scoped to the workspace rather than a single browser, with the author, timestamp, and result shape attached:
from query_history
| where author == "This email address is being protected from spambots. You need JavaScript enabled to view it. " and text contains "checkout"
| project ran_at, text, row_count
| order by ran_at desc
Saved queries as first-class, shareable objects
Beyond automatic history, any query can now be explicitly saved with a name and description, shared with a team or the whole workspace, and — because it's just HelixQL text — dropped straight into a dashboards-as-code panel or an alert routing rule without rewriting it.
hx queries save \
--name "checkout-p95-by-route" \
--query 'from traces | where route startswith "/checkout" | summarize p95(duration) by route' \
--team payments
The quiet benefit: onboarding
The effect we didn't fully predict: new hires ramp on a workspace's actual signals by browsing saved queries and history instead of asking a teammate to write example queries for them. One customer told us their onboarding checklist now just says "read the top 20 saved queries in your team's namespace" as step one.
Keeping saved queries from rotting the same way dashboards did
Having just shipped panel-level usage analytics for dashboards, we weren't going to make the same mistake twice with saved queries. Every saved query carries a last-run timestamp and a staleness badge once a referenced field or table no longer exists in your schema, so a query that breaks because an underlying field got renamed shows up as broken in the library instead of failing silently the next time someone tries to reuse it.
- Automatic, searchable query history scoped to the workspace
- Named, shareable saved queries usable across dashboards and alerts
- No more re-deriving a query a teammate already wrote
- Unexpected benefit: faster onboarding for new team members