Agent skill
Procedural Instrument Synthesis
Generate instrument samples for ZX game music. **Spec-Driven Workflow (RECOMMENDED):** 1. Create `.spec.py` in `.studio/specs/instruments/` 2. Run `python .studio/generate.py --only instruments` **Load references when:** - Instrument specs → `procedural-sounds/references/sound-spec-format.md` - Example specs → `examples/bass.spec.py`, `examples/lead.spec.py` - Karplus-Strong → `references/karplus-strong.md` - FM synthesis → `references/fm-synthesis.md` - Drum examples → `references/drum-examples.py` **Before generating:** Check `.studio/sonic-identity.md` for audio specs.
Install this agent skill to your Project
npx add-skill https://github.com/majiayu000/claude-skill-registry/tree/main/skills/other/procedural-instruments
SKILL.md
Procedural Instrument Synthesis
Generate production-quality instrument samples using a spec-driven workflow.
Spec-Driven Workflow
Step 1: Create Spec
# .studio/specs/instruments/bass.spec.py
INSTRUMENT = {
"instrument": {
"name": "bass",
"base_note": "C2",
"synthesis": {
"type": "karplus_strong",
"damping": 0.994,
"brightness": 0.5
},
"envelope": {"attack": 0.01, "decay": 0.4, "sustain": 0.3, "release": 0.3},
"output": {"duration": 1.5, "bit_depth": 16, "loop": True}
}
}
Step 2: Run Generator
python .studio/generate.py --only instruments
See procedural-sounds/references/sound-spec-format.md for complete format.
Technique Selection
| Instrument | Technique | Reference |
|---|---|---|
| Acoustic Guitar | Karplus-Strong | karplus-strong.md |
| Electric Piano | FM Synthesis | fm-synthesis.md |
| Bells | FM (inharmonic) | fm-synthesis.md |
| Organ | Additive | additive-synthesis.md |
| Strings/Pads | Wavetable | wavetable-synthesis.md |
| Synth Lead/Bass | Subtractive | subtractive-synthesis.md |
| Drums | See examples | drum-examples.py |
Why Basic Synthesis Sounds Chiptuney
| Problem | Why It Sounds Bad |
|---|---|
Raw np.sin() |
Static timbre, no evolution |
| Simple ADSR | Real instruments have complex envelopes |
| Instant attack | Real instruments have transients |
| Single oscillator | Real instruments have multiple components |
Quality Checklist
- No clicks (attack/release ramps)
- Pitch correct (verify frequency)
- Timbre evolves (envelope on filter/index)
- Attack has character (transient noise)
- Sounds musical (test in context)
Related Skills
procedural-sounds- SFX synthesissound-design/sonic-style-language- Audio style specstracker-music/xm-format- XM writer
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
agent-ops-spec
Manage specification documents in .agent/specs/. Use when user provides requirements, acceptance criteria, or feature descriptions that need to be tracked and validated against implementation.
agent-ops-state
Maintain .agent state files. Use at session start, after meaningful steps, and before concluding: read/update constitution/memory/focus/issues/baseline consistently.
agent-ops-spec
Manage specification documents in .agent/specs/. Use when user provides requirements, acceptance criteria, or feature descriptions that need to be tracked and validated against implementation.
agent-ops-testing
Test strategy, execution, and coverage analysis. Use when designing tests, running test suites, or analyzing test results beyond baseline checks.
agent-ops-testing
Test strategy, execution, and coverage analysis. Use when designing tests, running test suites, or analyzing test results beyond baseline checks.
agent-ops-state
Maintain .agent state files. Use at session start, after meaningful steps, and before concluding: read/update constitution/memory/focus/issues/baseline consistently.
Didn't find tool you were looking for?