| name | opencli-scan |
| description | DEPRECATED for routine use — superseded by the listing → ingest-listing pipeline (see docs/listings/design.md). Still available for ad-hoc keyword-driven discovery via `tours scan`, but do NOT wire into cron. Use opencli-routine + per-platform listing instructions for scheduled runs. Trigger only when: user explicitly says "tours scan", "keyword search and enrich", or asks for ad-hoc discovery without a destination URL. Owner: Ryan Huang.
|
opencli-scan (deprecated for routine)
Keyword-search-then-detail discovery for one (POI, platform) pair. Replaced by
the listing pipeline (docs/listings/design.md) for routine and weekly coverage
runs — that path uses platform destination URLs which are more precise and
cron-friendly. Keep using tours scan only for ad-hoc exploration when no
destination URL is known.
Companion to opencli-pricing and opencli-routine.
Scope
In scope: search activities, enrich with detail, report coverage delta.
Out of scope: SKU writes, tours pricing, platform quirks (those live in opencli-<platform>).
Pre-flight
- Run
opencli doctor for any Browser Bridge platform (trip, getyourguide, kkday, airbnb).
- Confirm locale is en-US — adapters are written against en-US DOM; zh-TW breaks them silently.
Check:
opencli <platform> search-activities "test" --limit 1 -f json and inspect url field.
Run
node dist/cli.js tours scan --platform <platform> --poi "<POI>"
Example:
node dist/cli.js tours scan --platform klook --poi "Mount Fuji"
Per-activity failure
If the scan command logs an error for a specific activity ID, delegate to the matching
opencli-<platform> skill's fallback playbook (snapshot + manual ingest if needed).
Post-run
After a successful scan, optionally suggest:
node dist/cli.js tours pin --platform <platform> --poi "<POI>" --top 5
Only suggest this if the user wants to start tracking prices. Explain that pinning selects
the top N activities for daily price refresh via opencli-pricing.
Report
At the end of every scan, report:
- Count of activities discovered
- Count newly enriched (had detail ingested for first time)
- Coverage % before → after (activities with full detail / total discovered)
- Any per-activity failures with activity IDs
Companion skills
| Skill | When to use |
|---|
opencli-pricing | After scan + pin, to start daily price refresh |
opencli-<platform> | Per-activity failures; platform-specific quirks |
opencli-routine | Orchestrator that dispatches this skill automatically |