Airgentic Help
Catalog Search lets an agent recommend programs (or similar catalog items) using a structured, descriptor-validated plan — not a hand-built search URL. The agent calls search_catalog(), the platform validates fields against your Search Configuration, and runs the exact search. When the search matches more items than anyone wants to read, summarisation is handed to Search Guide; a short list stays with the agent that ran the search.
Use this guide for catalog / program agents such as EducationPlannerBC and Eastern Florida.
| Area | Where |
|---|---|
| Scopes, filters, and which facets the AI may use | Search Configuration → Catalog Search |
| Facet allowlists and range syntax | Catalog Search → Refresh Catalog Allowlists |
| Wire an agent | Configure Agents → Enable Catalog Search |
| Validate a plan before demos | Catalog Search → Structured plan test console |
Open Search Configuration → Catalog Search. The readiness panel reports whether:
search_guide) exists with a public results URLsearch_catalog attached{{prompt:Catalog Allowlists}}Use the deep-links on each row to jump to Scopes, Filters, Agents, or Search Guide.
Each non-hierarchy filter on a catalog scope can be marked Available to AI. UI filters stay on for the public search page even when AI is off.
Date and numeric range filters default to off for AI catalog search (website date presets still work on the public search page). Turn them on only when the agent should filter by bounds such as “after July 1” or “under $100”; the allowlist prompt documents range syntax instead of listing every timestamp or number.
Saving facet toggles (including via the sticky Save bar) also refreshes Catalog Allowlists automatically. Use Refresh Catalog Allowlists manually when index values change without facet-toggle edits.
Example: keep Career Interest as a website filter, but turn off AI so the agent uses Academic Community instead.
Refresh Catalog Allowlists writes sub_catalog_allowlists.prompt from live index values and ensures Query Building references {{prompt:Catalog Allowlists}}.
Keep language mappings and JSON examples in Query Building. Do not hand-maintain long “Allowed exact values” lists there — refresh the allowlists after facet or index changes. Range-capable facets document op: "range" with gte, lte, gt, and lt bounds instead of indexed values.
On an agent’s Configure Agent page:
programs)search attached for discoveryThis will:
search_catalog (and optional search) to the agent’s promptagent_search_guide.conf)Before chatting demos, use the test console on the Catalog Search tab:
filters and/or filter_groups as JSONCross-field OR (for example “Melbourne or online”) belongs in filter_groups, not as two top-level filters. Top-level filters are ANDed.
Range filters belong in top-level filters, not filter_groups. Use op: "range" with at least one bound:
{"attribute": "date", "op": "range", "gte": "2026-07-01", "lte": "2026-07-31"}
Presets cover common cases: Melbourne or online, same-attribute OR, date range, and topic-only.
search_catalog()Every result carries its own metadata (dates, campus, duration, and similar) regardless of how many matched, so whichever agent answers can read a specific fact such as an event date from the results.
New catalog agents should use search_catalog only.
Only a page of results is returned, but the counts describe the whole match set. On a large result set the platform works out which filters would actually divide it, and passes them to the answering agent so it can offer a useful next question instead of listing the first twenty-five matches.
A filter is offered only when:
The three strongest are passed on, with up to six values each and a count of the rest. When nothing qualifies, nothing is passed on, and the agent is instructed to ask an open question rather than invent groupings from the page it can see.
To influence what gets offered, adjust which facets are enabled for catalog search on the scope. Removing near-duplicate facets (two versions of "study level", say) makes the offered questions noticeably cleaner.
admin/docs/UNIFIED_CATALOG_SEARCH.md