/quickstart — discover USD Search
Your job is the first two stages of docs/quickstart-user-journey.svg:
- Open the journey, ask "where do you want to search?"
- Pick one of three backend lanes, set
USD_SEARCH_API_URL.
Then hand off to /search — it runs Stages 3 (query) → 4 (hybrid
search) → 5 (ranked results) per the diagram.
Be terse. No preamble, no per-step narration. The user reads the
tool output. Two prompts max — one for the backend, one for the
search query (which /search will collect).
Step 1 — Ask "where do you want to search?"
Ask the user once (a single structured question). Three options —
these match the three lanes in docs/quickstart-user-journey.svg:
- "NVIDIA-hosted" — zero setup, the default
lane in the diagram. Set
USD_SEARCH_API_URL=https://search.simready.omniverse.nvidia.com.
Public NVIDIA dev deployment; answers unauthenticated requests. Proceed to Step 2.
- "Your own deployment" — the user already has a USD Search
instance. Ask for the name of a shell env var holding the URL
(and optionally a token / Basic auth pair). Never accept a pasted
secret. Probe
curl ${URL}/info/backend/storage; on non-200, ask
for a different var or fall back to the NVIDIA-hosted default.
- "Local deployment" — one-command setup. Hand off to the
deploy-usdsearch skill with "Locally with docker compose"
already selected. The deploy skill must run its Local branch,
including L1 pre-flight and references/local-runbook.md L2-L6,
before returning. When it returns it will have set
USD_SEARCH_API_URL for you. Then proceed to Step 2.
Step 2 — Hand off to /search with a seed query
Hand off to the search skill with a suggested seed query. Offer
four one-click nouns plus an "Other" escape so the "I don't know what
to try" path is one click and a specific request is exact:
- "a chair"
- "a robot"
- "a warehouse"
- "a vehicle"
- Other — free-text (e.g. "yellow leather armchair")
The /search skill takes it from there: builds the hybrid query,
saves five thumbnails to ./search-results/<slug>/, writes a
manifest.json, and inspects the JPEGs visually.
Do not auto-pick the query — the single most personal thing this
journey does is reflect the user's own words back as a 3D asset.
Step 3 — Print the "now you can…" list
After /search returns, end with a short pointer list (not a question):
/search — refine with a different query, image, or filter
/inspect-asset — deep-dive a single result
/search-in-scene — spatial / scene-graph queries
/deploy-usdsearch — run USD Search yourself
The manifest at ./search-results/<slug>/manifest.json lets these
skills pick up where you left off.
Important rules
- Two prompts max. Q1 (backend) + Q2 (query, asked by
/search).
- Never auto-pick the search query.
- Check the env before asking for keys. Before prompting for any
*_API_KEY or URL token, grep ~/.zshrc ~/.zshenv ~/.zprofile ~/.profile ~/.bashrc ~/.bash_profile ~/.env* for export <NAME>=.
If absent, ask the user to export it themselves — never accept a
pasted secret.
- Indirect credentials. When asking for a URL or token, accept
only the name of a shell env var that already holds the value.
- Three lanes, not four. Match the SVG: NVIDIA-hosted (default),
your own URL, local deployment. No fourth "I have an OpenSearch
index" branch — that's an advanced flow that lives in
/deploy-usdsearch if it's ever needed.
- Hand off, don't reimplement.
/search owns the query, the
scoring config, the thumbnail fetch, the visual verification. This
skill only chooses the backend.
1---2name: quickstart3description: Get a first-time user to a real 3D asset in seconds. Asks one question — "where do you want to search?" — with three backend lanes (NVIDIA-hosted default, your own URL, or a local deployment), then hands off to /search for the actual query. The journey is the SVG at docs/quickstart-user-journey.svg: Stage 1 (entry) + Stage 2 (backend pick), then /search drives Stages 3-5. Use when: "quickstart", "try usd search", "show me what this does", "getting started", "what is usd search", "tour", "first time".4license: Apache-2.05---67# /quickstart — discover USD Search89Your job is the **first two stages** of `docs/quickstart-user-journey.svg`:10111. Open the journey, ask "where do you want to search?"122. Pick one of three backend lanes, set `USD_SEARCH_API_URL`.1314Then hand off to `/search` — it runs Stages 3 (query) → 4 (hybrid15search) → 5 (ranked results) per the diagram.1617**Be terse.** No preamble, no per-step narration. The user reads the18tool output. Two prompts max — one for the backend, one for the19search query (which `/search` will collect).2021## Step 1 — Ask "where do you want to search?"2223Ask the user once (a single structured question). Three options —24these match the three lanes in `docs/quickstart-user-journey.svg`:2526- **"NVIDIA-hosted"** — zero setup, the default27 lane in the diagram. Set28 `USD_SEARCH_API_URL=https://search.simready.omniverse.nvidia.com`.29 Public NVIDIA dev deployment; answers unauthenticated requests. Proceed to Step 2.30- **"Your own deployment"** — the user already has a USD Search31 instance. Ask for the **name** of a shell env var holding the URL32 (and optionally a token / Basic auth pair). Never accept a pasted33 secret. Probe `curl ${URL}/info/backend/storage`; on non-200, ask34 for a different var or fall back to the NVIDIA-hosted default.35- **"Local deployment"** — one-command setup. Hand off to the36 `deploy-usdsearch` skill with **"Locally with docker compose"**37 already selected. The deploy skill must run its Local branch,38 including L1 pre-flight and `references/local-runbook.md` L2-L6,39 before returning. When it returns it will have set40 `USD_SEARCH_API_URL` for you. Then proceed to Step 2.4142## Step 2 — Hand off to /search with a seed query4344Hand off to the `search` skill with a suggested seed query. Offer45four one-click nouns plus an "Other" escape so the "I don't know what46to try" path is one click and a specific request is exact:4748- **"a chair"**49- **"a robot"**50- **"a warehouse"**51- **"a vehicle"**52- *Other* — free-text (e.g. "yellow leather armchair")5354The `/search` skill takes it from there: builds the hybrid query,55saves five thumbnails to `./search-results/<slug>/`, writes a56`manifest.json`, and inspects the JPEGs visually.5758Do **not** auto-pick the query — the single most personal thing this59journey does is reflect the user's own words back as a 3D asset.6061## Step 3 — Print the "now you can…" list6263After `/search` returns, end with a short pointer list (not a question):6465- `/search` — refine with a different query, image, or filter66- `/inspect-asset` — deep-dive a single result67- `/search-in-scene` — spatial / scene-graph queries68- `/deploy-usdsearch` — run USD Search yourself6970The manifest at `./search-results/<slug>/manifest.json` lets these71skills pick up where you left off.7273## Important rules7475- **Two prompts max.** Q1 (backend) + Q2 (query, asked by `/search`).76- **Never auto-pick the search query.**77- **Check the env before asking for keys.** Before prompting for any78 `*_API_KEY` or URL token, grep `~/.zshrc ~/.zshenv ~/.zprofile79 ~/.profile ~/.bashrc ~/.bash_profile ~/.env*` for `export <NAME>=`.80 If absent, ask the user to `export` it themselves — never accept a81 pasted secret.82- **Indirect credentials.** When asking for a URL or token, accept83 only the **name** of a shell env var that already holds the value.84- **Three lanes, not four.** Match the SVG: NVIDIA-hosted (default),85 your own URL, local deployment. No fourth "I have an OpenSearch86 index" branch — that's an advanced flow that lives in87 `/deploy-usdsearch` if it's ever needed.88- **Hand off, don't reimplement.** `/search` owns the query, the89 scoring config, the thumbnail fetch, the visual verification. This90 skill only chooses the backend.