AI use case HikeOn ERP Search Invoke · parse · apply

Natural-language search, ask in plain English, and see exactly what it understood.

One of eight AI use cases in the HikeOn ERP. Invoked from anywhere with Ctrl+K (⌘K on Mac), it turns a plain-English question, "show me catering orders over $5k from last week that haven't shipped", into a structured query and a filtered view. Built on the shared "AI cell" pattern, so the user always sees the query it built, not just the results.

Trigger
User · ⌘K / Ctrl+K
Global palette
Headline metric
~340 queries / day
Across operators
Surfaces in
Global
Command palette · every screen
Pattern
Shared AI cell
Query · confidence · chips · rerun
01 · The problem

The precise question was possible. Building it was too expensive.

Across 16,000 SKUs, multi-warehouse stock, and complex B2B and catering orders, the answers operators need are specific, "catering orders over $5k from last week that haven't shipped", but the traditional way to get them is a stack of manual filters across several screens.

Most people don't build that query; they scroll, or they ask someone in Slack, or they give up. Buyers and fulfilment leads knew the ERP could answer the question, they just couldn't get to the filter combination without ten minutes of clicking. Power users had saved views; everyone else waited on the person who knew where the filters lived.

02 · How it works

Four steps: invoke, parse, show, apply.

  • Invoke. Ctrl+K (⌘K on Mac) opens a global command palette from any screen. The user types the question in plain language, no need to navigate to Orders first.
  • Parse. An LLM maps the sentence to the ERP's query schema, entities (orders, SKUs, customers), comparisons (amount > $5,000), date ranges (last 7 days), and statuses (not shipped). A grammar layer validates field names and operators against the schema so the model can't invent filters that don't exist.
  • Show the interpretation. Before results load, the derived query appears as editable filter chips, e.g. Catering · > $5,000 · Last 7 days · Not shipped. The user can see and correct what the system understood before trusting the table below.
  • Apply. On accept, the filtered view renders in the palette (and can be opened full-screen). The data table reflects the same query; export and column controls match any standard list view.
03 · How it uses the "AI cell" pattern

The interpreted query is the explainer.

SUGGESTION

The structured query the system built from the sentence, shown as filter chips, not hidden SQL. Catering · > $5,000 · Last 7 days · Status ≠ Shipped is the suggestion; the results table is what you get if it's right.

CONFIDENCE

Per-chip confidence: solid chips parsed cleanly; dashed or amber chips flag ambiguity ("last week" → trailing 7 days vs. calendar week). Low-confidence terms get a tooltip explaining the interpretation chosen.

"WHY THIS?"

There is no separate explainer panel. The chips are the why. Each chip maps to one clause in the sentence. Tap "Why this?" on an ambiguous chip to see alternate readings and pick one without retyping.

ACCEPT · EDIT · DISMISS

Accept runs the query and shows results. Edit a chip inline, change $5k to $3k, swap date range, and rerun with one click. Dismiss clears the palette and returns to the screen underneath.

04 · The design

Keyboard-first: because ~340 queries a day doesn't hunt for a search box.

At ~340 queries per day across operators, search had to be faster than navigating to a module and opening filters. A global Ctrl+K palette, modal, centred, keyboard-driven, beats a buried search field in the header. Recent queries and entity shortcuts appear as the user types; Enter runs the parse.

  • Palette layout. Input at top, interpreted chips directly below, results preview in the lower half. Full-screen expand for large result sets.
  • Chip editing. Click a chip to edit value or operator; remove with ×; add filters from a schema-backed picker if the parse missed a condition.
  • Results table. Same table component as module list views, sort, column pick, export, so results feel native, not a special search sandbox.
  • Misread correction. Wrong chip? Edit it and hit Rerun, no need to retype the whole sentence. The sentence stays in the input for reference; chips are the source of truth.
05 · Edge cases & trust

The risk isn't bad results, it's running the wrong query silently.

  • Ambiguity. "Last week" defaults to trailing 7 days; the chip shows that label with an amber dot. Clicking it offers calendar week vs. trailing 7, user picks, chip updates, no re-parse needed.
  • Partial parse. If the model understood three of four conditions, only three chips appear plus a "Couldn't parse: [fragment]" line with a manual add-filter action. Results don't run until the user accepts or completes the set.
  • No results vs. failed parse. Empty table with valid chips → "No orders match these filters" with a suggestion to widen date or amount. Failed parse → no table; input stays focused with an error hint on the unmapped phrase.
  • Correction without retyping. Chip edit + Rerun is the primary fix path. Power users can drop to an advanced filter builder from the chip row if they prefer clicking to language.
  • Cross-module queries. Questions spanning orders and inventory split into two chip groups with tabs in the results preview. The palette never pretends a single table can answer what needs two.

Trust comes from visibility: the user always sees the query before the answer. Silent interpretation (running a filter the user didn't review) was the failure mode we designed against.

06 · Outcome

~340 queries a day, and questions that never got asked before.

The product logs roughly ~340 natural-language queries per day across purchasing, fulfilment, and customer-service operators, consistent with the card metric. Usage concentrated in order lookup and inventory checks; the catering-order example in the card copy is representative of the multi-filter questions that previously required a power user.

Qualitative signal from operator interviews: people who never built saved filters now run ad-hoc queries daily. The palette replaced "ask Sarah" for anything that used to need someone who knew the filter tree.

~340
QUERIES / DAY
LOGGED IN PRODUCT
⌘K
GLOBAL TRIGGER
EVERY SCREEN
Chips
INTERPRETATION
VISIBLE BEFORE RESULTS
AI cell
SHARED PATTERN
WITH 7 OTHER USE CASES