Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add jxoesneon/Ciel --skill procedural-audiogit clone --depth 1 https://github.com/jxoesneon/CielWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/jxoesneon/ciel/procedural-audio)<a href="https://agentmods.dev/skills/jxoesneon/ciel/procedural-audio"><img src="https://agentmods.dev/badge/skills/jxoesneon/ciel/procedural-audio/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/jxoesneon/ciel/procedural-audio"><img src="https://agentmods.dev/badge/skills/jxoesneon/ciel/procedural-audio.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00038 | $0.01558 |
| Opus 5 | $0.00019 | $0.00779 |
| Sonnet 5 | $0.00008 | $0.00312 |
| Haiku 4.5 | $0.00004 | $0.00156 |
Grade A, and why
procedural-audio scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 5d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 72 lines — stays where its author put it; the contents beside it link to each section on GitHub.
CIEL ADAPTATION: Procedural Audio & Autonomous Audiography
Synthesizes studio-grade sound effects, adaptive music, and spatial acoustic environments purely from code and mathematical DSP. Given a minimalist prompt like "create the audio for this screen", autonomously extracts the scene's visual palette, node hierarchy, physics properties, and narrative context to emit production-ready, zero-dependency procedural audio. Writes audio files to disk (declared fs side effect).
4-Layer Sound Architecture
- Layer 1 — Ambient Soundscape: Sub-bass fundamentals (35–110 Hz), continuous room tones/wind, multi-band colored noise.
- Layer 2 — Generative Music: Neo-Riemannian Tonnetz & modal progressions, 5-tier adaptive stems modulated by Dynamic Tension Index (DTI), 1/f Voss-McCartney pink-noise melody + Euclidean grooves.
- Layer 3 — Interactive Foley & SFX: Kinetic physics impacts (E=½mv²), dual-sine/chirp UI clicks, physical modeling (Karplus-Strong).
- Layer 4 — Spatial Acoustics: ITD/ILD/pinna-notch binaural spatializer, distance attenuation (1/r) + ISO 9613-1 air absorption, raycast occlusion filter (20 kHz → 350 Hz).
One-Shot Audiographer Protocol
- Scene ingestion: Scan
.tscn/DOM/Unity YAML forBaseButton(UI),RigidBody2D/3D+CollisionShape(impacts),TileMapLayer(footsteps),GPUParticles(weather),Camera/AudioListener3D. - Synesthetic mapping: Compute Valence-Arousal-Dominance (VAD) vector; extract dominant hex codes → map to mode/key, synthesis model, filter cutoff/resonance, spatial effects.
- DTI derivation: Real-time tension
DTI ∈ [0,1]from HP ratio, threat count, target distance, time remaining. - Code emission: Emit complete zero-dependency engine script (Godot
AudioStreamGenerator, Web AudioAudioWorklet, or Python baker). - Signal binding: Connect
pressed/mouse_entered/body_entereddirectly to synthesis functions; hot reload.
Core DSP Synthesis Patterns
- Karplus-Strong: Delay
D = f_s/f_0 − 0.5; loop filter with decay10^(−3/(f_0·T_60)). - Modal synthesis: Per-mode damped sinusoid
y_k[n] = 2e^(−αT)cos(ω_d T)y_k[n−1] − e^(−2αT)y_k[n−2] + a_k sin(ω_d T)x[n]. Material mode ratios: cast iron[1,1.414,2.14,2.76,3.82,5.12], hardwood[1,1.84,2.72,3.91], glass[1,2.32,4.15,6.47,9.28], granite[1,1.29,1.74,2.21,2.94]. - PolyBLEP anti-aliased oscillators: Apply residual correction
R(t,dt)at phase discontinuities for saw/square. - Moog Ladder 4-pole TPT:
g = tan(πf_c/f_s),G = g/(1+g), tanh feedback for self-oscillation. - Minnaert bubble:
f_0 ≈ 3.0/R(meters); decaying chirp for raindrops/liquid.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 5d ago First seen · 72 lines · 38 tokens per session scan A 4a9716599004
procedural-audio is a skill published in the GitHub repository jxoesneon/Ciel (1 stars, last pushed yesterday), licensed Apache-2.0. It adds 38 tokens to every session and 1,558 once invoked, about $0.0002 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-03.
Other skills, from other repositories
game-audio-engineer
!cat skills/shared/game-visual-foundations.md 2>/dev/null || echo "=== Visual Foundations not loaded ===" !cat skills/shared/protocols/ux-protocol.md 2>/dev/null || true !cat skills/shared/protocols/input-validation.md 2>/dev/null || true !cat skills/shared/protocols/tool-efficiency.md 2>/dev/null || true !cat…
metasounds
Create and modify MetaSound Source assets — add/connect nodes, wire pins, set input defaults, and play procedurally (MetaSoundService). Use when the user asks to create a MetaSound, build or edit a MetaSound graph, add operator/input/output nodes, or generate procedural audio.
voice-line
Use when generating TTS voice lines — NPC barks, narrator, dialogue. Covers where voice ids come from, a character-to-voice decision tree, stability/style/similarity guidance, and the multi-line dialogue case via texttodialogue. Trigger on "make a voice line", "narrator", "NPC says", "voice for the merchant", "TTS…
ambient-bed
Use when generating a long looping location ambience — forest at dawn, dungeon air, city street, spaceship hum, cave drip. Non-melodic, low-energy, never draws attention. Wires as a looping AudioStreamPlayer on the Ambient bus with a marked seamless loop. Trigger on "ambient bed", "room tone", "background ambience"…
audio-direction
Use when defining the sonic identity — music style, instruments, SFX vocabulary, dynamic music plan. Outputs an audio bible at .summer/audio-bible.md. Trigger on "audio direction", "audio bible", "music style", "sound design", "what should it sound like", "dynamic music".
music-track
Use when generating a looped or cinematic music track. Loops are authored at >=30s with a marked loop point; cinematic tracks at >=60s linear. Trigger on "generate music", "make a calm track", "boss music", "title screen music", "main theme", "exploration loop", "combat track".