GPT-6 Astra in Action: Generating 5K/10K Running Routes from a Single Prompt

GPT-6 Astra autonomously generated 5K/10K loop running routes with maps and GPX files from a single prompt.
Developer Simon Willison used a single natural-language prompt to have ChatGPT Work (GPT-6 Astra Max) autonomously plan 5K and 10K loop running routes from his home address using OpenStreetMap data. The model ran for 27 minutes without human intervention, delivering an embedded visual map, a GPX file importable into Garmin watches, and a GeoJSON file for further development. The case highlights three key AI Agent capabilities: ready-to-use file output, genuine spatial reasoning over road topology, and long-running unsupervised execution.
Developer Simon Willison shared a compelling AI use case on his blog: he asked ChatGPT Work (powered by the GPT-6 Astra Max model) to plan 5K and 10K running routes that loop back to his home address, using OpenStreetMap (OSM) data. The model ran autonomously for 27 minutes and delivered everything he asked for.
One Prompt, 27 Minutes of Autonomous Execution
The prompt itself was remarkably simple:
I live at <my address>. Figure out 5K and 10K running routes from me that loop from my house. Use OSM data.
What's worth noting isn't the complexity of the prompt — it's how the model executed the task. Rather than returning a text description, the model worked continuously for 27 minutes, clearly performing a series of steps behind the scenes: fetching map data, computing the road network, and generating closed-loop paths. This kind of long-running, multi-step autonomous execution is precisely where AI Agent capabilities are heading: shifting from "answering questions" to "completing tasks."

The Output Wasn't Just Text — It Was Usable Files
The model delivered three types of output: an embedded visual map, a downloadable GPX file, and a GeoJSON file.
This combination of formats covers real-world use cases neatly. GPX is the standard route file format for running and cycling GPS devices (like Garmin watches) — users can import the generated route directly onto their watch and follow it during a run. GeoJSON is well-suited for further editing in mapping tools or programmatic processing. The embedded visualization lets users preview the route right within the conversation.
From the screenshot, the generated 5K route is a 5.1km loop called "El Granada harbor loop." Starting from the harbor at the lower left, it heads north along Avenue Granada and Paloma Avenue, turns east near Carmel Avenue, heads south along San Carlos Avenue and Francisco Street, and finally returns west along the Coastal Trail back to the starting point. The route follows real streets and forms a complete loop — exactly what "loop from my house" calls for.
GPX (GPS Exchange Format) is an XML-based open standard designed to store GPS tracks, waypoints, and routes. It's widely supported by major sports watches from Garmin, Suunto, and Polar, as well as platforms like Strava and Komoot. Users simply transfer the file to their device to get turn-by-turn navigation guidance. GeoJSON is a JSON-based geospatial data exchange format capable of describing points, lines, polygons, and their attributes. It's commonly used in web mapping libraries like Mapbox and Leaflet, or in Python geospatial toolchains for further development. Delivering both formats simultaneously means the model satisfied both the consumer need for "ready to use" and the developer need for "programmatic processing" — far more versatile than a plain text description.
Why This Case Matters
On the surface, this looks like a modest "plan me a running route" request — and there are plenty of dedicated apps for that. But from an AI capability perspective, this example reveals several important signals.
First, end-to-end task closure. The model didn't return a list of coordinates for the user to piece together. It delivered finished, importable files. Users need almost no post-processing, which dramatically reduces the friction between "AI output" and "actually using it."
Second, reasoning over structured geospatial data. Getting a route to loop precisely back to the starting point while hitting a target distance of 5K or 10K requires the model to genuinely understand OSM's road topology — not hallucinate it. This kind of spatial computation has traditionally been considered a weak spot for general-purpose large language models.
Third, patient execution over a long time horizon. A 27-minute run time means the model (or its underlying toolchain) completed multiple rounds of iteration without continuous human intervention. This "let it run" interaction pattern is becoming the norm for high-value AI applications.
OpenStreetMap (OSM) is an open geographic database maintained by volunteers worldwide. Its core data structures — Nodes, Ways, and Relations — store road attributes like travel direction, pedestrian access, and surface type as tags. Planning a closed-loop running route on OSM data is fundamentally a graph theory problem: finding a path in a road topology graph that starts from a given point, totals close to a target distance, returns to the origin, and excludes motor-vehicle-only roads unsuitable for running. This type of computation typically relies on specialized routing engines like OSRM, Valhalla, or GraphHopper. A general-purpose large model's ability to orchestrate these tools and package the results into user-friendly output is a sign of mature tool-use (Tool Use) capabilities.
A Note of Caution
It's worth noting that this article is based entirely on Simon Willison's first-person account from a single source, with no third-party replication yet. Details like the model name and runtime come from his personal blog. The actual capability boundaries, reliability, and adaptability to varying OSM data quality across different regions — for products like GPT-6 Astra and ChatGPT Work — still need more real-world testing.
That said, this case still clearly illustrates the potential of general-purpose AI agents in everyday scenarios: compressing a task that once required specialized tools and multiple manual steps into a single natural-language instruction. For everyday users, the experience of "say what you want and it gets done" may be the truest sign that AI has genuinely entered daily life.
Related articles

SoulFlow-Orchestrator: A Self-Hosted, Vendor-Lock-In-Free AI Agent Runtime
SoulFlow-Orchestrator is an open-source, self-hosted AI agent runtime with no vendor lock-in. Supports 9 neutral backends (Claude, OpenAI, Ollama), 141-node workflow engine, multi-agent loops, and HITL gates.

Chinese Full-Stack Agent Skills: A Skill Library Tailored for Domestic AI-Assisted Development
chinese-fullstack-skills is an Agent Skills library for Chinese full-stack development, covering Vue/React, Node/Go, and domestic cloud deployment best practices. Compatible with Claude Code, Cursor, Kiro, and Codex.

Paradigm Memory: A Local-First Memory System for AI Coding Assistants
paradigm-memory is a local MCP memory tool for Claude Code, Cursor, and Cline. It uses SQLite local storage, zero cloud, full audit trails, and a navigable cognitive map instead of bloated context files.