home / skills / openclaw / skills / free-resource
This skill helps you find and download royalty-free media from Pixabay Freesound and Jamendo, speeding content creation.
npx playbooks add skill openclaw/skills --skill free-resourceReview the files below or copy the command above to add this skill to your agents.
---
name: free-resource
description: "Search and retrieve royalty-free media from Pixabay (images/videos), Freesound (audio effects), and Jamendo (music/BGM). Use when the user needs to find stock photos, illustrations, vectors, videos, sound effects, or background music, download media, or query media libraries with filters."
---
# Free Resource
Search and download royalty-free images, videos, sound effects, and music from Pixabay, Freesound, and Jamendo.
## Quick Start
```bash
# 1. Copy config template and fill in your API keys
cp config.example.json config.json
# 2. Edit config.json with your API keys
# 3. Use without passing API keys
bun ./scripts/jamendo.ts search --query "background" --limit 5
bun ./scripts/freesound.ts search --query "piano"
bun ./scripts/pixabay.ts search-images --query "nature"
```
## Configuration
API keys are stored in `config.json`. Copy `config.example.json` and fill in your keys:
```json
{
"pixabay": {
"api_key": "YOUR_PIXABAY_API_KEY"
},
"freesound": {
"api_token": "YOUR_FREESOUND_TOKEN"
},
"jamendo": {
"client_id": "YOUR_JAMENDO_CLIENT_ID"
}
}
```
### Get API Keys
| Platform | Type | Get API Key |
|----------|------|-------------|
| Pixabay | Images/Videos | https://pixabay.com/accounts/register/ |
| Freesound | Audio Effects | https://freesound.org/apiv2/apply |
| Jamendo | Music/BGM | https://devportal.jamendo.com/ |
### API Key Priority
1. **CLI flag**: `--key`, `--token`, or `--client-id`
2. **Environment variable**: `PIXABAY_API_KEY`, `FREESOUND_API_TOKEN`, `JAMENDO_CLIENT_ID`
3. **Config file**: `config.json`
---
## Pixabay (Images & Videos)
### Search Images
```bash
bun ./scripts/pixabay.ts search-images --query "yellow flowers" --image-type photo --orientation horizontal --per-page 5
```
Flags: `--query`, `--id`, `--lang`, `--image-type` (all|photo|illustration|vector), `--orientation` (all|horizontal|vertical), `--category`, `--colors` (comma-separated), `--min-width`, `--min-height`, `--editors-choice`, `--safesearch`, `--order` (popular|latest), `--page`, `--per-page` (5-200), `--output` (save to file).
### Search Videos
```bash
bun ./scripts/pixabay.ts search-videos --query "ocean waves" --video-type film --per-page 5
```
### Download
```bash
bun ./scripts/pixabay.ts download --url "https://pixabay.com/get/..." --output "/path/to/save.jpg"
```
---
## Freesound (Audio Effects)
### Search Sounds
```bash
bun ./scripts/freesound.ts search --query "piano note" --page-size 10
```
Flags: `--query`, `--filter`, `--sort`, `--fields`, `--page`, `--page-size` (max 150), `--group-by-pack`, `--output`.
### Filter Examples
```bash
bun ./scripts/freesound.ts search --query "drum" --filter "duration:[0 TO 2]"
bun ./scripts/freesound.ts search --query "ambient" --filter "type:wav"
bun ./scripts/freesound.ts search --query "explosion" --sort downloads_desc
```
### Get Sound Details
```bash
bun ./scripts/freesound.ts get --id 12345 --fields id,name,previews,duration
```
### Download Preview
```bash
bun ./scripts/freesound.ts download --id 12345 --output ./sound.mp3
```
---
## Jamendo (Music & BGM)
### Search Music
```bash
bun ./scripts/jamendo.ts search --query "rock" --limit 10
```
Flags: `--query`, `--tags`, `--fuzzytags`, `--artist-name`, `--album-name`, `--order`, `--limit` (max 200), `--offset`, `--output`.
### Music Attribute Filters
```bash
# Instrumental background music
bun ./scripts/jamendo.ts search --query "background" --vocalinstrumental instrumental
# Search by tags (AND logic)
bun ./scripts/jamendo.ts search --tags "electronic+chill" --order popularity_total_desc
# Search by speed
bun ./scripts/jamendo.ts search --query "energetic" --speed high+veryhigh
```
### Get Track Details
```bash
bun ./scripts/jamendo.ts track --id 12345 --include musicinfo,stats
```
### Download Track
```bash
bun ./scripts/jamendo.ts download --id 12345 --output ./music.mp3
```
---
## API Reference
For full parameter tables, response field descriptions, and rate limit details, see `./references/api_reference.md`.
This skill searches and retrieves royalty-free images, videos, sound effects, and music from Pixabay, Freesound, and Jamendo. It provides unified search, filtering, and download commands so you can quickly find stock photos, vectors, clips, audio effects, or background music and save them locally.
The skill queries each provider's public API using an API key (CLI flag, environment variable, or config file). It supports provider-specific filters (image type, orientation, duration, tags, speed, etc.), previews result metadata, and can download selected files to a specified output path. Command-line scripts encapsulate search, detail, and download workflows for each service.
How do I provide API keys?
You can pass keys via CLI flags, set environment variables (PIXABAY_API_KEY, FREESOUND_API_TOKEN, JAMENDO_CLIENT_ID), or place them in config.json created from the example template.
Can I filter results by duration or image orientation?
Yes. Each provider exposes filters: Pixabay supports image-type and orientation, Freesound supports duration and type filters, and Jamendo supports tags, vocal/instrumental, and speed.