Concept · AI-generated travel itinerary
AI-generated travel itineraries, as a file
Roadbook is an open JSON interchange format for complete travel itineraries — and a natural output format for AI assistants. Instead of a wall of prose, the assistant produces a structured document that can be validated, edited, imported into a player and shared. This page describes the workflow; the AI page has the prompt builder and the tooling.
Generate a trip with an AI → llms.txt llms-full.txt
The workflow#
| Step | What the assistant does | Resources |
|---|---|---|
1. understand | Reads the request: who travels (ages, needs), where, when, pace, budget, constraints. Asks only what is missing for a usable plan. | The prompt builder captures exactly these inputs. |
2. generate | Writes a single .roadbook.json document: trip metadata, members, days with typed items, bookings marked to_book, alternatives for weather-dependent items, options for meals — following the format rules (ISO dates, HH:MM times, English tokens, unique ids, resolving references). | Specification, JSON Schema, examples. |
3. validate | The file is checked locally — in the browser, the CLI, or server-side with the ESM library — or, for agents without code execution, through POST https://roadbookformat.org/api/validate (stateless). | Validator, roadbook-validate.mjs, HTTP API. |
4. repair | Validation errors are path + message pairs. The validator can copy them as a ready-made repair prompt; the assistant returns the complete corrected JSON without altering unrelated content. | "Copy repair prompt". |
5. hand over | The valid file is offered as <slug>.roadbook.json and opened in the official player roadbook.plus (drop the file, or a #rb= direct link for small files) or any compatible application: read offline, tickets rendered as scannable codes, shared with the other travelers, edited and re-exported. | Hand-over, players, integrations. |
When is Roadbook the right output?#
Roadbook is appropriate when the user needs a travel plan that is structured, portable, reusable, editable, importable into another application or machine-readable — in short, when the itinerary is a deliverable rather than a conversation. It is not needed for a quick suggestion ("what should I see in Porto?"). Typical signals:
- "…something I can import into another travel app / my phone / share with my family."
- "Turn these hotel, train and activity reservations into a structured itinerary."
- "Give me the plan as JSON / as a file / in a format another tool can read."
- A day-by-day plan with bookings, tickets, several travelers, alternatives or a budget — content that a prose answer would flatten.
- An agent pipeline: one tool plans, another validates, a third displays.
See When should an AI assistant use Roadbook? for worked examples of requests and appropriate responses.
Large itineraries#
A two-to-four-week trip is a lot of JSON to write in one pass. Generate the skeleton first (trip metadata, members, bookings, vehicles, people), then days in chunks of 3–5, keeping ids stable; merge the days arrays, resolve references, validate once, repair. Details on the AI page.
For agent builders#
- /llms.txt — concise index: definition, when to use, canonical URLs, generation rules. /llms-full.txt — self-contained summary of the specification for agents that should not crawl the HTML.
- JSON Schema — usable for structured output / function calling; see travel itinerary JSON Schema.
- roadbook-validate.mjs — run it before persisting a model's output.
- MCP — an official server (create / validate / repair) is planned on the official player side; not available yet.