Skip to content

Repository files navigation

POD Go Tones

Edit Line 6 POD Go guitar tones as data — and design them by describing what you want to any LLM you already use (Claude, ChatGPT, a local model). POD Go Edit has no scripting interface, but its preset files (.pgp) are editable JSON, so this tool reads, edits, builds, and validates presets from the command line, and ships a knowledge pack you hand to your LLM.

Unofficial — not affiliated with or endorsed by Line 6 / Yamaha Guitar Group. POD Go and Helix are trademarks of their respective owners. Works only on your own unencrypted exports; DRM (hxmp) commercial packs are detected and refused.

▶ Try it now — no install, no signup

seannyquest.github.io/tonemaker — the full builder in your browser. Nothing is uploaded; it all runs on your machine.

The tonemaker tone library — ready-made POD Go tones by genre

Three tabs:

  • Tone library — ready-made, fully dialed tones across clean, blues, rock, country, jazz, funk, surf, ambient and metal. Filter by genre, download, drag into POD Go Edit. No AI, no account.
  • From your AI — copy the cheat sheet, paste it into any LLM (free ChatGPT, Gemini, Claude…), describe a tone, paste the reply back, and it builds the preset. The cheat sheet keeps the AI from inventing model names that won't load.
  • Open a preset — drag in one of your own .pgp files to see its full chain and check it.

Every preset is validated before you download it, so it imports first try. The command-line package below is the same engine for people who prefer a terminal.

Chat instead — the Claude Project

If you use Claude, claude-project/ is a drop-in setup, not a hosted thing you log into: paste one file into a new project's custom instructions, upload five knowledge files, and you're done in about three minutes. After that you describe a tone in chat and get a preset back, with no cheat sheet to paste each time. Setup guide →

An LLM does the final assembly here, so it's less airtight than the browser app or the CLI, both of which build and validate deterministically. Run tonemaker validate on anything you want to be sure of.

Install (command line)

pip install tonemaker

The LLM workflow (the point)

tonemaker context | pbcopy          # copy the knowledge pack (macOS; use xclip/clip elsewhere)
  1. Paste it into your LLM and describe a tone ("doomy, downtuned, big cave reverb").
  2. The LLM replies with a tone spec (JSON) or a set of tonemaker commands.
  3. Build and check it, then import the .pgp into POD Go Edit:
tonemaker build doom.json --out doom.pgp    # build from the spec the LLM gave you
tonemaker validate doom.pgp                 # confirms it will import (no unrecognized models)

validate is the safety net: if the LLM invents a model id that POD Go wouldn't recognize, you find out here — not when the device rejects the whole preset.

Commands

tonemaker inspect tone.pgp                              # show the full chain + params
tonemaker set tone.pgp block2.Drive=0.62 output.gain=8  # edit params (validates before writing)
tonemaker add tone.pgp block1=HD2_DistScream808Mono     # add/replace a block
tonemaker build spec.json --out tone.pgp                # build a full preset from a tone spec
tonemaker new --template metal-4snapshot --out t.pgp    # start from a template
tonemaker validate tone.pgp                             # check it will import
tonemaker models --category amp                         # list verified model ids
tonemaker harvest ~/Downloads/MyExport.pgp              # extend the library from your own export
tonemaker context                                       # emit the LLM knowledge pack

Import a .pgp into POD Go Edit by dragging it onto a slot (or right-click → Import).

How it works

A preset is a signal chain of 10 blocks (block0..block9) plus an input gate and a master output, ordered by each block's position. Six blocks are dedicated (Volume, Wah, Amp, Cab, EQ, FX Loop); up to four are user effects. Snapshots (up to 4) override which blocks are on and the values of chosen parameters. Model ids are exact and POD Go-specific (they carry Mono/Stereo suffixes) — a single wrong id makes POD Go reject the whole preset, which is why the shipped library is verified from real exports and every write is validated first.

Extending the model library

The library is built only from real POD Go exports (never guessed). To add a model the tool doesn't know yet: add the block in POD Go Edit, export the preset, then:

tonemaker harvest that-export.pgp     # adds the model's exact id + params (+ a build template)

Contributions that widen coverage are welcome via PR.

Feedback & bugs

Open an issue — a preset that won't load, a model the library doesn't know yet, a bug, or a request. If a preset misbehaves, attach the .pgp and the output of tonemaker inspect on it; that's usually enough to track it down.

Also reachable as u/seannyquest, mostly around r/Line6podgo.

Development

pip install -e ".[dev]"
pytest                 # lossless round-trip, validation, build, knowledge-pack drift

Built with spec-driven development (GitHub Spec Kit) — see .specify/memory/constitution.md and specs/001-podgo-tone-builder/.