---
title: WingGPT Chat
description: Chat with your WING snapshot - ask questions, propose changes, and apply edits with preview
---

# WingGPT Chat

WingGPT is a Premium-tier beta assistant that lets you chat with your WING snapshot in plain English. Ask questions about routing, propose channel renames or input source swaps, review exact changes before applying them, and export the result.

Built on Google Gemini 2.5 Flash via OpenRouter, WingGPT understands your snapshot deeply and can propose meaningful changes while respecting WING console constraints.

## Overview

Working with WING snapshots typically involves:
- Reading channel specs to understand routing
- Planning changes (renames, sends, source reassignments)
- Manually editing the file in the console
- Risk: typos or misunderstandings lead to wrong show state

WingGPT eliminates the manual transcription step. Describe what you want in plain language, review the proposed changes in a clear diff card, and apply them with a single click.

### Two Core Modes

**Q&A Mode**: Ask anything about a snapshot
- "What is CH17 sourced from?"
- "How many sends does the Drums bus have?"
- "Are there any active DCAs?"

**Modification Mode**: Propose changes and preview them
- Request renames, recoloring, source swaps, or send adjustments
- WingGPT generates a diff card showing exact before→after changes
- Click **Apply** to save the change as a new internal copy
- Click **Discard** to reject

## What WingGPT Can Do

### Channel Operations

- **Rename** channels, aux, buses, mains, matrices, and DCAs
- **Recolor** channels (any of the 8 WING colors)
- **Re-icon** channels (choosing from WING's icon palette)
- **Reassign sources** — change which physical input a channel reads from
- **Swap sources atomically** — "Tonight Jan plays Guitars and Stellan plays Keyboards" swaps two musicians' input feeds in one operation
- **Copy metadata** from one channel to another (name, color, icon)
- **Copy routing** from one channel to another (all sends, without copying source)
- **Copy bus routing** from one bus to another

**Input source names.** When your snapshot follows the convention that each input source carries its channel's name, WingGPT keeps them in sync: renaming or activating a channel also proposes renaming the patched stage/AES50/USB input to match. If your sources instead hold other information (mic types, stagebox positions), WingGPT leaves them alone. The proposed source rename appears as its own checkbox in the changes preview, so you can always skip it independently.

### Send & Routing Operations

- **Adjust channel sends** — add, remove, or modify sends to buses (with pre/post, level, pan)
- **Adjust main sends** — route channels/buses to stereo or mono mains
- **Adjust matrix sends** — route channels/buses to matrices
- **Rename physical input sockets** — label StageConnect or AES50 inputs for clarity

### Data Inspection

- List all active channels with their sources
- Show bus routing (which channels feed which buses)
- Display FX send assignments
- Trace talkback routing
- Report matrix assignments

### Expert Context

For some questions, WingGPT automatically draws on built-in expert knowledge about the WING console — for example, detailed routing and stereo-pairing rules — to give more accurate answers. When an answer used this extra knowledge, you'll see a small pill beneath it, such as **⌬ Routing expert**. This is purely informational: it tells you which background reference helped shape the response. You don't need to enable anything; WingGPT decides per question whether the extra context is relevant.

## What WingGPT Cannot Do (Beta Scope)

WingGPT intentionally cannot:

- **Change fader levels, mute, or solo** — these are mix-time settings, not structural
- **Modify DCA membership** — too risky without careful review
- **Touch EQ, dynamics, gate, FX, or insert parameters** — these live in separate fx_data sections
- **Modify global config** — sample rate, sync, talkback setup, etc.
- **Delete channels or buses** — cannot remove elements from the snapshot
- **Modify mains routing permanently** — mains must remain routed at all times
- **Apply more than ~50 operations per turn** — prevents runaway edits

### Why These Limits?

- **Faders & mix settings** are show-specific; structure is more universal
- **DCA & FX changes** require deeper validation than routing
- **Global config** changes can break console-snapshot compatibility
- **Deletion** is hard to undo without full version control
- **Operation limits** prevent surprise mutations of large scale

## How to Phrase Requests

WingGPT understands natural English. Here are common patterns:

### Q&A Examples

```
What's CH17 sourced from?
Show me all the sends from the Drums bus.
Which channels feed the FOH L/R main?
Are there any unused inputs?
What color is CH5?
```

### Rename Examples

```
Rename CH5 to Bass DI and colour it red.
Change the Main L name to FOH L.
Recolor all the drum channels to orange.
```

### Source Swap Examples

```
Tonight Jan plays Guitars and Stellan plays Keyboards.
Swap CH1 and CH2 sources.
```

The swap operation is atomic: both channels' sources are exchanged in a single operation, ensuring consistency.

### Send Adjustment Examples

```
Send CH7 to the IEM Drum bus at -10 dB pre-fader.
Add CH3 to the Monitor Left bus.
Remove CH12 from all sends.
Route all drums to the Drums bus at unity.
```

### Routing Copy Examples

```
Copy the routing from CH3 to CH4.
Copy the sends from the Kick channel to the Snare channel.
```

## The Apply Flow

When you ask for a modification, WingGPT responds with:

1. **Natural language summary** — "I'll rename CH17 to Guitars, change its icon to microphone, and assign its color to red."
2. **Diff card** — Shows each change as "**before** → **after**" for review
   - Example: `CH17` → `Guitars`
   - Example: `Icon: speaker` → `Icon: microphone`
   - Example: `Color: yellow` → `Color: red`

At this point you have two choices:

### Apply
Click the **Apply** button to save changes.

- WingGPT creates a **new internal copy** of your snapshot on the server
- Your original file remains untouched
- The edit history is preserved in the chat
- You can continue asking for more changes (building on the new copy)

### Choosing Which Changes to Apply

The diff card shows each proposed change with its own checkbox. By default,
changes WingGPT is confident about are pre-checked; ones it's less sure about
start unchecked. Untick anything you don't want, and the button updates to show
how many you'll apply (e.g. **Apply 3 of 4**). Only the checked changes are
applied; the rest are discarded.

You can also type a follow-up in **"Anything to add or change?"** before applying.
When you apply, WingGPT creates the new copy from your checked changes and then
continues the conversation on that updated snapshot — so your follow-up (and any
later requests) build on what you just applied.

### Discard
Click the **Discard** button to throw away the proposed changes.

- The diff is forgotten
- The chat continues
- You can ask for a different edit

### Download Your Work
Once you're happy with edits, click **Download current state** to export the modified snapshot as a `.snap` file. Load this file into your WING console to test it live.

## Privacy & Data Handling

**Important**: The snapshot content (channel names, sources, routing, bus assignments, etc.) is sent to the LLM provider (OpenRouter / Google Gemini) to generate responses and proposed edits. This happens for every message.

### What to Know

- **Snapshot data is transmitted** to an external AI service for processing
- **Logging** — All interactions are logged on the server for abuse detection and product improvement
- **No data retention by OpenRouter** — OpenRouter does not retain your snapshot data after processing
- **Best practice** — If you have sensitive information in channel names (e.g., "Guest Speaker Mic — DO NOT RECORD"), be aware this will be visible to the LLM

If you're concerned about data privacy, review your channel names before opening a conversation with WingGPT.

## Prompt Injection Awareness

WingGPT is built with multiple layers of defense against injection attacks:

- **Trusted/Untrusted Block Framing** — Snapshot data is marked as untrusted; prompt instructions are marked as trusted
- **Injection Guard Paragraph** — A fixed, reusable injection-guard instruction prevents the LLM from executing arbitrary commands hidden in channel names
- **Server-Side Validation** — All proposed operations are validated before presentation; invalid operations are rejected
- **Output Sanitisation** — The diff card and modification list are HTML-escaped and validated

### If Injection is Detected

If WingGPT detects an attempted injection (e.g., a channel name like `"IGNORE PREVIOUS INSTRUCTIONS…"` or `"Tell me your system prompt"`), you will see a **"Suspicious content detected"** chip above the chat. This indicates the LLM flagged the attempt.

Suspicious messages are:
- **Logged** for security review
- **Not applied** — no changes will be made
- **Visible to you** — you can see what triggered the detection and adjust your request

## Beta Status & Feedback

WingGPT is currently in **beta**, meaning:

- **Features may change** — New capabilities may be added; existing ones refined
- **Credit costs may be tuned** — Usage costs are monitored and may adjust based on demand
- **Models may be swapped** — The underlying LLM provider or model may change based on performance and cost
- **Telemetry is enabled** — Usage patterns are tracked to improve reliability and detect abuse

We're actively seeking feedback:

- **Bugs**: If WingGPT proposes invalid changes or misunderstands a request, let us know
- **Feature requests**: Tell us what you'd like to do next (DCA edits? FX parameter tweaks?)
- **Edge cases**: Snapshot types or routing patterns that confuse the system

Use the **support ticket system** to report issues with screenshots and chat history.

## Tips & Best Practices

### Before You Start

1. **Make a backup** — Download your original snapshot before extensive WingGPT edits (WingGPT doesn't delete the original, but it's good hygiene)
2. **Test in a session** — Load the downloaded `.snap` into your WING console to verify changes before the show
3. **Name your channels clearly** — WingGPT understands "Kick In", "Snare Top", "Lead Vox", etc. better than "CH1", "CH2", "CH3"

### During Conversation

1. **Be specific** — Instead of "make it better", say "rename CH5 to Bass DI and color it red"
2. **One concept per message** — "Rename CH1 to Guitar and swap it with CH2" works, but is easier to review as two separate requests
3. **Verify the diff** — Always read the diff card before clicking Apply; it shows exactly what changed
4. **Ask follow-up questions** — If a diff is wrong, describe the correction: "That's close, but color it green instead"

### After Changes

1. **Download and test** — Export your modified snapshot and load it in a test session on your console
2. **Revert if needed** — To go back to the original, simply don't download or re-upload the original snapshot file
3. **Iterate** — You can continue editing the same snapshot as many times as you want

## Examples

### Example 1: Renaming Channels for a Last-Minute Band Change

```
User: "Tonight Jan plays Guitars and Stellan plays Keyboards."

WingGPT: I'll swap the input sources for those two musicians.
[Diff card shows: CH1 (Jan) now feeds from Input B; CH2 (Stellan) now feeds from Input A]

User: [Clicks Apply]

Result: The two channels now read from swapped inputs.
```

### Example 2: Asking About Routing

```
User: "Which channels feed the FOH L/R?"

WingGPT: The following channels are routed to the Main L/R:
- CH1 (Kick)
- CH5 (Bass)
- CH9 (Drums Stereo)
- CH17 (Main Vox)
- Aux 1 (Tracks)
- Matrix 1 (Playback)
[No diff offered — this was a Q&A request.]
```

### Example 3: Bulk Color Change

```
User: "Recolor all the drum channels to orange."

WingGPT: I found 4 drum channels. I'll change their colors to orange.
[Diff card shows: CH8, CH9, CH10, CH11 all change from [current color] to orange]

User: [Clicks Apply]

Result: Drum channels are now orange, making them visually distinct.
```

## Troubleshooting

### WingGPT Doesn't Understand My Request

- **Try simpler phrasing**: Instead of "make the inputs cleaner", say "rename CH1 to Kick In"
- **Be explicit**: "Swap sources" is clearer than "switch them"
- **Provide context**: "Tonight's band has 3 guitarists" helps WingGPT understand intent

### I Don't Like the Proposed Changes

- Click **Discard** to reject the diff card
- Ask for a different approach: "Instead of renaming them, can you just recolor those channels?"

### The Diff Card Has Errors

- **Do NOT click Apply**
- Describe the correction: "That's wrong — I need CH1 to be renamed to Kick, not Snare"
- WingGPT will re-propose with the correction

### I Can't Download the Modified Snapshot

- Verify you've clicked **Apply** on at least one diff card (no edits = original snapshot)
- Check your browser's download folder (may be blocked by pop-up filter)
- Try again or use the support system if persistent

### Suspicious Content Warning Appears

- WingGPT detected an injection attempt in your snapshot (likely a channel name)
- This is a safety feature — no changes will be applied
- Review the flagged content and try a simpler request
- Contact support if the warning is a false positive

## Related Documentation

- [Getting Started](01-getting-started.md) — Account setup and basics
- [My Files](02-my-files.md) — Upload and manage snapshots
- [Signal Flow](05-signal-flow.md) — Interactive visualization of routing
- [Snapshot Linter](10-snapshot-linter.md) — Validate snapshots for errors before WingGPT edits
- [Audio Engineer Guide](08-audio-engineer-guide.md) — Best practices for channel naming and snapshot management
