---
title: "CORS Chat: A Browser Tool for Testing OpenAI-Responses-Compatible Chat Endpoints"
source: "Simon Willison 博客（Atom）"
source_tier: "t2"
url: "https://simonwillison.net/2026/Aug/15/cors-chat/"
permalink: "https://feed.astralor.com/items/itm_e25d8c268c6a65abf77640d3"
published: "2026-08-15T14:49:54.000Z"
score: 72
channel: "tech"
tags: ["CORS Chat","LM Studio","OpenAI-Responses","OpenRouter","Simon Willison","SVG"]
---

# CORS Chat: A Browser Tool for Testing OpenAI-Responses-Compatible Chat Endpoints

## AI commentary

> This small tool hits a real pain point for local model testing: when you quickly want to verify a compatible chat endpoint, a lightweight UI is missing. If you develop LLM apps or debug local deployments, this is worth a try, especially the progressive SVG rendering which is far more intuitive than plain-text logs.

## At a glance

Simon Willison built CORS Chat today with GPT-5.6-Sol xhigh to test OpenAI-Responses-compatible chat endpoints. It works with LM Studio (using the --cors option) and OpenRouter, and has been exercised against Qwen 3.8 27B running locally on both an M5 MacBook Pro and an NVIDIA DGX Spark. Conversations persist in the browser and can be exported as copy-pasted JSON. A neat feature is that it detects SVG images being generated and progressively renders them in chat while tokens stream in, making it handy for multimodal testing.

## Key points

- CORS Chat is a browser-based web UI for interacting with OpenAI-Responses-compatible endpoints, supporting LM Studio and OpenRouter.
- Conversations are persisted in the browser and can be exported as JSON for replay and debugging.
- It progressively renders SVG images as tokens stream in, enabling real-time multimodal output viewing.
- Verified with local models on M5 MacBook Pro and NVIDIA DGX Spark, as well as remote APIs.

## Full text

Tool: CORS Chat I built this today (with GPT-5.6-Sol xhigh) to help test Qwen 3.8 27B running in LM Studio on both my M5 MacBook Pro and an NVIDIA DGX Spark. It provides a web UI for exercising an OpenAI-Responses-compatible chat endpoint. I've tried it against LM Studio with the --cors option and OpenRouter, and both work fine. Conversations are persisted in the browser and can be exported as copy-pasted JSON. One fun detail is that it notices SVG images that are being generated and progressively renders them in the chat while the tokens are still streaming in. Tags: svg, ai, generative-ai, llms, cors, openrouter, lm-studio

---

Verify against the original before citing; curated by Astral Feed: https://feed.astralor.com/items/itm_e25d8c268c6a65abf77640d3
