Choroboros Documentation

Version target: 2.02.2-beta

Kaizen DSP 2026
Official links:

This document explains how Choroboros is organized today: the front panel workflow, the Dev Panel architecture, the modular core assignment system, the tutorial flow, and the full interactive console command surface.

It is written as one continuous learning path so you can read top-to-bottom without jumping around.

2. Quick Start

  1. Load Choroboros on a track in your DAW.
  2. Choose an engine color and HQ mode.
  3. Set rate, depth, offset, width, color, mix.
  4. Open Dev Panel for deep tuning and diagnostics.
  5. In Dev Panel, use this loop:
    1. Set target: Profile + Core + HQ.
    2. Shape movement in Modulation.
    3. Shape frequency and response in Tone.
    4. Validate telemetry and trace matrix.
    5. Persist with JSON/script/defaults only after validation.
Tip: If you are debugging or building a repeatable sound, use the Validation Console early. It is faster and easier to audit than manual mouse edits.

3. Main Plugin Controls

The front panel is the fast performance surface: six macro controls, engine and quality selectors, and utility actions. It is intentionally compact so host automation stays stable while deeper DSP tuning lives in Dev Panel.

3.1 Primary Automation Surface

These are the host-visible control IDs exposed by the processor:

ControlParameter IDWhat It Does
RaterateModulation speed (0.01 Hz to 10.0 Hz).
DepthdepthModulation amount (0% to 100%).
OffsetoffsetL/R phase relationship (0 deg to 180 deg).
WidthwidthStereo spread (0% to 200%).
ColorcolorEngine-dependent character macro.
MixmixDry/wet blend (0% dry to 100% wet).
Engine ColorengineColorSelect Green, Blue, Red, Purple, Black engine slot.
HQhqToggle Normal Quality (NQ) / High Quality (HQ).
Note: These IDs are the stable automation contract. Dev Panel core assignment and internals are additive and do not replace this surface.

3.2 What the Color Macro Means Per Engine

EngineColor Macro Intent
GreenBloom body and softness response.
BlueFocus and presence response.
Red NQBBD/post-chorus drive behavior.
Red HQTape tone and drive balance.
PurpleWarp/orbit style motion character.
BlackModulation intensity and ensemble spread.

3.3 Direct Value Editing and Units

Each value readout under a control is editable. Double-click a value text field, type a value, and commit.

3.4 Fast Gestures and Defaults

3.5 Engine and HQ Visual Behavior

3.6 Utility Buttons (Top Bar)

ButtonAction
DEVToggle Dev Panel window (always-on-top, min 1028 x 525).
AboutOpen version/company dialog.
HelpLaunch help contact link.
FeedbackOpen feedback form dialog with collected usage context.

3.7 Front Panel Workflow (Practical)

  1. Choose Engine + HQ first, because Color meaning depends on target engine/mode.
  2. Set mix to 40% to 60% as a starting point.
  3. Use Rate/Depth to set movement amount and speed.
  4. Set Offset/Width for stereo behavior.
  5. Use Color last for engine character shaping.
  6. If needed, open Dev Panel and continue with engine internals and validation.
Tip: If you are aligning chorus rate to tempo, use the Rate right-click sync menu first, then fine-trim by ear.

3.8 Tooltips and Discoverability

The front panel ships with contextual hover help for all major controls:

3.9 Main Window Behavior


4. Dev Panel Manual

4.1 Open and Window Behavior

4.2 Mental Model

The Dev Panel is split into two columns:

The top row of controls defines the active editing target, then each tab changes what you can inspect and edit for that target.

4.3 Top Target Controls

At the top of the right column, these controls are always visible:

ControlPurposeExample
Profile Select which engine color slot you are editing. Set to Red to tune red slot values.
Core Select the algorithm package for the active slot/mode. Set to tape for Red HQ tape behavior.
HQ Choose NQ or HQ side for that slot. HQ off + Red usually maps to BBD in legacy map.
Important: Profile, Core, and HQ are context selectors. If you change them, you are editing a different state target even if the visible tab stays the same.

4.4 Overview Tab

Subtabs

What you see

How to use it

  1. Confirm target (Profile/Core/HQ).
  2. Read raw to mapped values in inspector.
  3. Use Delay Visual to confirm smooth movement before deep tuning.

4.5 Modulation Tab

Modulation is unified (no second row subtabs).

What you see

LFO Control Workbench controls

Tip: Keep one eye on LFO cards and one eye on trajectory while adjusting offset and width. It is the fastest way to avoid unstable stereo movement.

4.6 Tone Tab

Subtabs

Spectrum subtab

Engine Response subtab

Cards are engine and HQ specific. The panel chooses cards based on active Profile and HQ mode.

Profile/ModeCurve CardControls Card
Green (NQ/HQ)Green Bloom Response CurveGreen Bloom Tone Controls
Blue (NQ/HQ)Blue Focus Response CurveBlue Focus Tone Controls
Red NQRed NQ Saturation Transfer CurveRed NQ Saturation Controls
Red HQRed HQ Tape Transfer CurveRed HQ Tape Controls
Purple NQPurple NQ Warp Response CurvePurple Warp Tone Controls
Purple HQPurple HQ Orbit Response CurvePurple Orbit Tone Controls
Black NQBlack NQ Intensity Response CurveBlack Intensity Tone Controls
Black HQBlack HQ Ensemble Response CurveBlack Ensemble Tone Controls

4.7 Engine Tab

Subtabs

Signal Flow subtab

Engine Identity subtab

Third Engine subtab (dynamic label)

Internals panels below Engine visual deck

In Engine tab, active internals panels are laid out below the deck on the right side. These include the active per-engine internals panel and conditional Red BBD/Tape sections when visible.

Core tokens

lagrange3, lagrange5, cubic, thiran, bbd, tape, phase_warp, orbit, linear, ensemble.

Legacy assignment map (when modular cores disabled)

SlotNQHQ
Greenlagrange3lagrange5
Bluecubicthiran
Redbbdtape
Purplephase_warporbit
Blacklinearensemble
Duplicate policy: assigning the same core to multiple slots/modes is allowed. The UI and console warn, but do not block.

4.8 Look and Feel Tab

Subtabs

Engine Layout propagation menu

Many Engine Layout numeric controls support right-click propagation with two actions:

4.9 Validation Tab

Subtabs

Telemetry

Telemetry readouts include:

Trace Matrix

Shows control flow from UI to runtime using rows like Rate/Depth/Offset/Width/Color/Mix with columns for raw, mapped, snapshot, and effective.

Console

Interactive command console with watch HUD, history, and direct state editing. Full command guide is in section 6 below.

4.10 Settings Tab

Top action rows (right side)

Inspector sections in Settings tab

SectionWhat It Controls
TutorialTopic picker, run/skip controls, focus-hint preference.
UI TextText size and text color mode.
ThemeTheme preset, accent source, manual accent color.
Core RoutingEnable modular cores and restore legacy map action.
AccessibilityColor vision assist, reduced motion, large hit targets, strong focus ring, scope hint visibility.
PerformanceLazy UI Refresh toggle.
Validation ConsoleAuto-scroll, timestamps, wrap, max lines (300/600/1000/2000).
SafetyConfirm reset and confirm defaults actions.
Help and FeedbackOpen console help, website, feedback form, support email.

5. Interactive Tutorials

Tutorials are available from Settings and from console commands.

How to launch

Available topics

core, overview, modulation, tone, engine, validation, bbd, tape, phase, bimodulation, saturation, envelope

Controls while tutorial is active

Tip: Use tutorial next section when you already know basics and only need tab-by-tab orientation.

6. Interactive Console Manual

6.1 Syntax and Input Rules

6.2 Engine and State Commands

engine <green|blue|red|purple|black>
hq <on|off>
view <overview|modulation|tone|engine|layout|validation|settings>
bypass <on|off>
solo <node>
unsolo

Notes

6.3 Parameter Tuning Commands

set <target> <value>
add <target> <delta>
sub <target> <delta>
get <target>
reset <target>
reset all
lock <target>
unlock <target>
toggle <target>
macro <rate|depth|offset|width|color|mix> <0..100>
sweep <target> <start> <end> <time_ms>

Usage tips

6.4 History and Undo

undo [n]
redo [n]
history

Use these while listening to quickly A/B sequences of changes.

6.5 Introspection and Utilities

watch <target>
unwatch <target>
dump <color>
diff factory
search <term>
stats
list <color> [all] [full]
list globals [full]
fx <0|1|2>
clear

How list works

6.6 Core and Slot Commands

core list
core show <id>
slot show
slot set <green|blue|red|purple|black> <nq|hq> <core_id>

Behavior details

6.7 Import Export and Defaults

export script
import script [file_path]
cp json
save defaults
alias <name> <command>
help

I/O behavior

6.8 Practical Command Examples

Example A: Switch profile and tweak movement

engine purple
hq off
set rate 0.75
set depth 0.42
set width 1.40
stats

Example B: Core routing test

slot show
slot set red nq bbd
slot set red hq tape
slot show

Example C: Safe tune workflow with rollback

search bloom
watch green_bloom_gain
set green_bloom_gain 0.42
diff factory
undo
redo
export script

7. File Locations and Persistence

State and recovery files are stored in the user application data directory under Choroboros/.

Note: Legacy defaults.json is handled by migration logic when present.

8. Performance and Troubleshooting

Performance checklist

  1. Enable Lazy UI Refresh in Settings -> Performance for lower UI overhead.
  2. Use Validation -> Telemetry to watch process time and write activity.
  3. Keep Console output line cap reasonable (300 or 600) during long sessions.
  4. Use list ... in deduped mode unless you specifically need full.

Common issues and fixes

IssueWhat to checkFix
A control seems to edit the wrong sound Profile/Core/HQ context Re-check top row context, then retry edit.
Console list output feels too long Command options Use deduped list first, then full only when needed.
Unexpected startup state User defaults and save action history Use Reset to Factory, then re-apply desired state and save defaults again.
Duplicate core assignments warning Slot table Run slot show, then reassign conflicting slots if unwanted.

9. Glossary

10. Licenses and Attribution

This section documents what third-party frameworks and SDKs are used, where their licenses live in this repository, and what should ship with binaries for transparency.

10.1 Project Ownership and Primary License Files

ItemPathNotes
Project copyright noticeCMakeLists.txtBuild metadata identifies Kaizen Strategic AI Inc. and 2026 copyright string.
GPL text bundleLICENSE, COPYINGRepository currently contains GPLv3 license text files.
EULA textEULA.mdEnd-user agreement file is also present and embedded in plugin binary data.
Transparency note: This repository currently contains both GPL and EULA artifacts. For releases, ship one clear licensing model and matching notices so users are not given conflicting terms.

10.2 Frameworks and SDKs Used in Build

Framework / SDKUsed ForLicense / Notice Location
JUCE FrameworkPlugin runtime, UI, DSP plumbing, format clientsJUCE/LICENSE.md (dual-license model described there)
Steinberg VST3 SDK (via JUCE)VST3 format supportJUCE/modules/juce_audio_processors_headless/format_types/VST3_SDK/LICENSE.txt (MIT)
Avid AAX SDK (via JUCE)AAX format supportJUCE/modules/juce_audio_plugin_client/AAX/SDK/LICENSE.txt (Avid license terms / GPL option as stated by SDK)
Apple AudioUnit SDK (via JUCE)AU format supportJUCE/modules/juce_audio_plugin_client/AU/AudioUnitSDK/LICENSE.txt (Apache 2.0)
Scope note: JUCE contains many optional third-party dependencies. Only a subset is exercised by this plugin's enabled modules and target formats.

10.3 Fonts, Branding, and UI Assets

AssetPathAttribution Status
Choroboros brand fontAssets/fonts/choroboros.ttfProject-specific branding font.
JetBrains Mono variantsAssets/fonts/labels/, Assets/fonts/titles/, Assets/fonts/tooltips/Font files are present; ensure upstream license text is included in distribution packages.
Plugin art and iconsAssets/, Assets/gui_icons/Owned project art unless separately licensed.

10.4 Third-Party Notice Bundles in Repository

Additional vendor notices are archived under Licenses/, including:

These folders contain notices from SDK/toolchain bundles and historical packaging work. Not every file in those folders is necessarily linked into the current shipping binary.

10.5 Public Project Links

End of manual.