strudel

Featured

Write a live-coded track as a Strudel pattern — mini-notation, synths, effects, song structure — and check it with the verdict. Use whenever the workspace holds a .strudel file or the user asks for a beat, a groove, a bassline, a loop, a track, or music in the pane.

AI & Automation 957 stars 79 forks Updated today MIT

Install

View on GitHub

Quality Score: 93/100

Stars 20%
99
Recency 20%
100
Frontmatter 20%
70
Documentation 15%
100
Issue Health 10%
50
License 10%
100
Description 5%
100

Skill Content

# Strudel Strudel is TidalCycles in JavaScript. A track is **one expression** that describes a cycle; the REPL plays that cycle forever until you change it. You write one file, `track.strudel`, and the pane plays it — a save hot-swaps the pattern on the next cycle without stopping the transport. The whole file is evaluated as ECMAScript 2022 (top-level `await` allowed), so JavaScript syntax rules apply: balanced brackets, balanced quotes, `//` and `/* */` comments. There is no module loader — **never write `import` or `require`**. Everything Strudel offers is already in scope. Check after every save: ```sh python3 "$STRUDEL_TOOLCHAIN/verdict.py" # track.strudel python3 "$STRUDEL_TOOLCHAIN/verdict.py" b.strudel ``` It parses the file with the same parser the REPL uses, says whether the track will play, and writes `.harness/verdict.json`, which is what the pane header shows. It cannot hear anything — no headless check can. **Playing is the pane's job and the user's ears.** ## Offline first: use synths, not samples The REPL preloads sample *maps* from GitHub at start and fetches each `.wav` the first time it is triggered. So `s("bd sd hh")` needs the internet, twice. These sound sources need nothing: | Source | Names | |---|---| | Oscillators | `sine` `sawtooth` `square` `triangle` (aliases `sin` `saw` `sqr` `tri`) | | Richer | `supersaw` (`unison`, `spread`, `detune`), `pulse` (`pw`, `pwrate`, `pwsweep`) | | Noise | `white` `pink` `brown` (hard → soft), `crackl...

Details

Author
autonomous-ai
Repository
autonomous-ai/openharness
Created
1 months ago
Last Updated
today
Language
C
License
MIT

Similar Skills

Semantically similar based on skill content — not just same category

AI & Automation Listed

strudel

Expert assistant for Strudel live coding music. Use this skill whenever the user mentions Strudel, live coding music, TidalCycles patterns in the browser, or asks for help writing, explaining, debugging, or improving music patterns using code. Also trigger when the user pastes Strudel code snippets, asks "how do I make a beat in code", "write me a Strudel pattern", "what does this Strudel code do", or anything involving pattern-based music coding (note(), s(), stack(), mini-notation, etc.). Do NOT wait for explicit "use Strudel skill" — if music + code are both present, trigger.

0 Updated 3 weeks ago
kaushikhegde11
Data & Documents Listed

midi-synth

Synthesize and render MIDI/MusicXML files to audio (WAV/MP3) and generate Strudel live-coding patterns for creative music manipulation. Uses analysis data (tempo, key, chords, dynamics) from audio-to-midi for intelligent ghost-note removal and accurate reproduction. Two workflows: (1) Convert MIDI/MusicXML to Strudel/TidalCycles code with note durations for interactive tweaking in the browser at strudel.cc, (2) Render MIDI/MusicXML to WAV/MP3 with FluidSynth or built-in synthesis, with controls for tempo, transposition, instrument override, and ghost-note cleaning. Trigger when the user wants to: play a MIDI file, render MIDI to audio, synthesize MIDI, convert MIDI to Strudel code, create live-coding patterns from MIDI, change instruments, transpose or tempo-shift, clean ghost notes, or any MIDI playback/synthesis task.

23 Updated 1 months ago
maystudios
AI & Automation Listed

livecoding

Algorave-grade livecoded music workflow — TidalCycles patterns (Haskell DSL driving SuperDirt over OSC) + Hydra-synth visuals (browser or VS Code Simple Browser via a local HTML page that loads hydra-synth from CDN). Wraps the boot ritual (SuperCollider → SuperDirt → Tidal → Hydra), a vibe-descriptor pattern generator (industrial, ambient, DnB, footwork, techno, algorave-glitch), and a reference tunnel-visuals page for the @lo.fi.sci.fi-projected aesthetic. Mac-first; ports to Linux with package-name swaps.

4 Updated yesterday
broomva