Free Resource
name: free-resource
by darknoah · published 2026-03-22
$ claw add gh:darknoah/darknoah-free-resource---
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
# 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:
{
"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
bun ./scripts/pixabay.ts search-images --query "yellow flowers" --image-type photo --orientation horizontal --per-page 5Flags: `--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
bun ./scripts/pixabay.ts search-videos --query "ocean waves" --video-type film --per-page 5Download
bun ./scripts/pixabay.ts download --url "https://pixabay.com/get/..." --output "/path/to/save.jpg"---
Freesound (Audio Effects)
Search Sounds
bun ./scripts/freesound.ts search --query "piano note" --page-size 10Flags: `--query`, `--filter`, `--sort`, `--fields`, `--page`, `--page-size` (max 150), `--group-by-pack`, `--output`.
Filter Examples
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_descGet Sound Details
bun ./scripts/freesound.ts get --id 12345 --fields id,name,previews,durationDownload Preview
bun ./scripts/freesound.ts download --id 12345 --output ./sound.mp3---
Jamendo (Music & BGM)
Search Music
bun ./scripts/jamendo.ts search --query "rock" --limit 10Flags: `--query`, `--tags`, `--fuzzytags`, `--artist-name`, `--album-name`, `--order`, `--limit` (max 200), `--offset`, `--output`.
Music Attribute Filters
# 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+veryhighGet Track Details
bun ./scripts/jamendo.ts track --id 12345 --include musicinfo,statsDownload Track
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`.
More tools from the same signal band
Order food/drinks (点餐) on an Android device paired as an OpenClaw node. Uses in-app menu and cart; add goods, view cart, submit order (demo, no real payment).
Sign plugins, rotate agent credentials without losing identity, and publicly attest to plugin behavior with verifiable claims and authenticated transfers.
The philosophical layer for AI agents. Maps behavior to Spinoza's 48 affects, calculates persistence scores, and generates geometric self-reports. Give your...