Skip to content
Back to skills

Sfx

ASecurity

Render a retro sound effect to WAV from an sfxr-style parameter set, standard library only. Use when: 'sound effect', '8-bit sfx', 'pickup sound', 'jump sound', 'explosion sfx', 'chiptune effect'. Not for a song or loop (use /retro-audio:music) or a picture.

  • 20 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added September 29, 2026
ai-agentspythongobash

Security analysis

A100/100

Pro scans all 2 files and shows the line behind each finding

Scanned September 29, 2026

npx -y skills add melodic-software/claude-code-plugins --skill sfx --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Sfx?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Sfx
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/melodic-software-sfx/badge)](https://www.skillsdirectory.com/skills/melodic-software-sfx)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
description: "Render a retro sound effect to WAV from an sfxr-style parameter set, standard library only. Use when: 'sound effect', '8-bit sfx', 'pickup sound', 'jump sound', 'explosion sfx', 'chiptune effect'. Not for a song or loop (use /retro-audio:music) or a picture."
argument-hint: "<effect> [preset coin|jump|laser|explosion]"
user-invocable: true
disable-model-invocation: false
metadata:
  workflow-stage: implement
  summary: Render one retro sound effect to a WAV file
---

# Sound effect

Write one WAV the user can drop into a game or hand to a scene.

## 1. Pick the sound

A preset (`coin`, `jump`, `laser`, `explosion`) is enough when the request names that kind of
effect. Otherwise write a JSON object. Parameter names and the envelope shape are in
[`${CLAUDE_PLUGIN_ROOT}/scripts/presets.py`](${CLAUDE_PLUGIN_ROOT}/scripts/presets.py) and
[`${CLAUDE_PLUGIN_ROOT}/scripts/sfx.py`](${CLAUDE_PLUGIN_ROOT}/scripts/sfx.py). State any field you default in one line.
Do not ask a list of questions for a one-shot effect.

## 2. Render

```bash
python3 "${CLAUDE_PLUGIN_ROOT}/scripts/sfx.py" --preset jump --out <dir>/jump.wav
python3 "${CLAUDE_PLUGIN_ROOT}/scripts/sfx.py" --params '<json>' --out <dir>/effect.wav
```

`--params` is either an inline JSON object or a path to one. The file is 16-bit mono PCM.

## 3. Deliver

Give the WAV path. If the user wants it inside a pixel-art scene, the scene skill takes that path
as an argument. Do not open or edit the scene plugin's files from here.

## Next

/retro-audio:music to score a loop in the same chip voice.

## Gotchas

- `attack`, `sustain`, and `decay` are seconds. Their sum is the file length.
- `volume` is 0 to 1. A value of 1 on a square wave is already full scale.

Files in this skill

  • SKILL.md1.7 KB
  • evals/evals.json1.5 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…