Orby operator assistant: natural-language settings lookup
One of Orby’s load-bearing skills is answering a “where do I configure X?” question with the dashboard route where the setting actually lives, not a paraphrase from memory. The settings-resolution helper behind it is ranked, grounded, and available to every signed-in operator role — from the billing-only viewer to the super-admin. For the full operator experience (panel, threads, approvals), see Using Orby in the dashboard; for the endpoint contract, see the Orby API reference. This guide walks through the settings-lookup surface itself: where it sits in the dashboard, what a ranked match contains, how to phrase the lookup, how the knowledge base degrades while it initializes, and how tool actions pair with the lookup.Where Orby lives in the dashboard
Orby is available on any dashboard page — open the panel with the Orby button (sparkles icon) in the top bar, or Ctrl+J / Cmd+J. Inside the panel, every question goes through Orby’s operator session, and settings lookups are part of the panel’s read-only surface. Beyond the panel, the Cmd+K docs-search shortcut anywhere in the dashboard opens the same knowledge-base surface that powers settings lookup. Every Orby request runs in the context of the signed-in operator:- Operator-session auth only. Orby runs on the operator-session auth layer — requests authenticated with an API key (
X-API-Keyor adv_*Bearer token) are rejected with403 ORBY_SESSION_REQUIREDbefore any handler runs. There is no server-to-server path. - Any operator role can look up a setting. The
owner,admin,developer,viewer, andbillingroles all reach the lookup surface — a billing-only operator can ask “where do I set quiet hours?” and get the route back. Super-admin-only endpoints in the knowledge base (reindex,status) exist for index maintenance, not for lookup. - Same permissions, not more. Orby can only reach the settings and pages the operator’s role could already navigate to. There’s no separate assistant identity.
Natural-language settings resolution
When you ask Orby a question of the form “Where do I configure X?” — or pick a result from the Cmd+K docs search — Orby resolves the free-text query against the knowledge base and returns ranked matches. Each match carries:
The endpoint behind this is
POST /api/v1/orby/kb/find-setting. Public endpoint and field names stay as-is — the table above states the order the JSON body arrives in.
Phrasing the lookup
- Use natural language, not setting names — “Where do I set quiet hours for SMS campaigns?” resolves better than
quiet_hours. The endpoint rewrites the query with a settings bias, so the prose form finds the match the keyword form would. - Ask for one thing at a time. “Where do I set quiet hours and quiet hours for voice?” splits the ranking.
- The
descriptionfield accepts up to 500 characters — long multi-sentence questions still resolve, but the first sentence carries most of the weight. - Ask a follow-up command (“Where do I set X?”) rather than a statement (“quiet hours”) — the ranked matcher is tuned for intent phrasing.
Tool actions: read-only lookup, guarded execution
The settings lookup is read-only — it proposes nothing and never pauses for approval. Orby’s tool actions run when a turn’s intent is a change (send a message, reassign a conversation, pause a campaign) and they pause behind the same approval gate described in Using Orby. The knowledge-base endpoints power both sides of the surface:GET /api/v1/orby/kb/search— free-text docs search (query: 1–500 chars, optional section/category filter).POST /api/v1/orby/kb/find-setting— natural-language settings resolution (description:z.string().min(1).max(500)— one to 500 characters).- Both endpoints are available to any authenticated operator role, and both scope their audit rows to the organization, tenant, and operator.
POST /kb/reindexandGET /kb/statusare super-admin-only maintenance endpoints; they appear in the operator surface only in the rare event of a stuck index, never in the lookup flow itself.
- “Where do I configure quiet hours?”
- “Where do I upload my 10DLC brand documents?”
- “Where do I see the campaign cost per send?”
- “Where do I pause an ACD queue?”
Degradation behavior: kb_outage_hint
While the knowledge base is initializing — the orbit_docs Qdrant collection is cold, or being reindexed — the lookup does not error. Instead it returns an empty matches array plus a kb_outage_hint:
- Wait a few seconds and re-ask — the index typically initializes on the first hit after a deploy or a reindex.
- If you’re a super-admin, check
GET /api/v1/orby/kb/statusfor index health (total and stale chunk counts, last run, cache hit rate). - If the hint persists for more than a few minutes, the worker that owns reindex is likely unavailable — escalate to your super-admin to trigger
POST /api/v1/orby/kb/reindexonce the worker is back.
FAQ
Am I rate-limited on lookups? Lookups share Orby’s per-operator limits.POST /assistant (a free-form turn that also does settings lookup) is 60 turns per minute per operator; exceeding it returns 429 ORBY_RATE_LIMITED with a Retry-After seconds header. Knowledge-base search / find-setting calls are not separately limited beyond this — they cost one turn each from the dashboard panel.
What queries are recorded? Every lookup is audit-logged with orby.kb.find_setting (or orby.kb.searched) — the organization, tenant, operator identity, query text (truncated to 200 characters), result count, latency, and the cold-index flag. Audit rows are for SOC-2 / ops reconstruction only; they never see the outside of your workspace.
Do trial orgs get access? Yes. Orby’s settings lookup is on for every organization, including trials — any authenticated operator role can use it. The only role-gated endpoints are the super-admin maintenance pair (reindex, status), which no trial org typically needs. Contacts, threads, and query logs stay scoped to the trial tenant.
See also
- Using Orby, the in-dashboard operator assistant — the panel, threads, and approval gate
- Orby API reference — endpoint shapes for turns, threads, tool confirmations, knowledge-base search, and settings lookup
- Troubleshooting: Orby operator errors —
ORBY_*codes, including the rate-limit and cold-index cases - Orby operator assistant architecture — session boundary, thread model, and tool registry on the inside