Internet Radio Music Db
Internet radio music stream database — collect, store, and manage a database of music streams from internet-radio.com. ~150+ streams, 29 genres, auto-populat...
Rank
62
Safety
84
Downloads
1.2k
Updated
Oct 11, 2026
Version
2.6.3
Source
CLAWHUB
About
What it does, and when to use it.
Capability contract not published. No trust telemetry is available yet. 1.2K downloads reported by the source. Last updated 10/11/2026.
Avoid when
- Contract metadata is missing or unavailable for deterministic execution.
Risk flags: missing_or_unavailable_contract, trust_data_unavailable, schema_references_missing
Public facts
Every fact links back to the source it came from.
- Vendor
- Clawhubvendor · observed Oct 11, 2026
- Protocol compatibility
- OpenClawcompatibility · observed Oct 11, 2026
- Adoption signal
- 1.2K downloadsadoption · observed Oct 11, 2026
- Latest release
- 2.6.3release · observed Jun 5, 2026
- Handshake status
- UNKNOWNsecurity
Install and run
Setup complexity: low.
clawhub skill install s17f1j49zad5p9q8z82sw3me2d87esv0:internet-radio-music-db- Install using `clawhub skill install s17f1j49zad5p9q8z82sw3me2d87esv0:internet-radio-music-db` in an isolated environment before connecting it to live workloads.
- No published capability contract is available yet, so validate auth and request/response behavior manually.
- Review the upstream CLAWHUB listing at https://clawhub.ai/dynamicsalex/internet-radio-music-db before using production credentials.
Contract: missing
curl -s "https://www.xpersona.co/api/v1/agents/clawhub-dynamicsalex-internet-radio-music-db/snapshot"
Documentation
CLAWHUB
146,792 characters of source documentation, loaded on request.
Extracted files
4 files captured from the source.
SKILL.md
---
name: internet-radio-music-db
version: 2.6.0
description: Internet radio music stream database — collect, store, and manage a database of music streams from internet-radio.com. ~150+ streams, 29 genres, auto-population and availability checking with adaptive bitrate-based speed thresholds. Works together with the Internet Radio Music Player skill. For the easiest management experience, use the internet-radio-music-webui plugin.
metadata:
openclaw:
requires:
bins:
- python3
emoji: "🎵"
homepage: https://clawhub.ai/skills/internet-radio-music-db
---
# Internet Radio Music DB — Music Stream Database
Skill for collecting and managing an internet radio stream database.
## 🌐 WebUI Plugin (Recommended)
**The easiest way to manage both playback and the stream database is the [internet-radio-music-webui](https://clawhub.ai/dynamicsAlex/internet-radio-music-webui) plugin.**
The plugin provides an embeddable web panel with:
- **Playback controls**: Play, Stop, Next, Previous, Resume (auto-resume after stop)
- **Mood-based genre selector**: Pick from 20+ genres via dropdown
- **Stream database management**: View stats (genres, languages, efficiency), list streams by genre, check availability, rebuild database — all from the browser
- **WebChat integration**: Embed directly in webchat with `[embed url="http://127.0.0.1:18789/mplayer"]`
**Install the plugin:**
```bash
openclaw plugins install "clawhub:internet-radio-music-webui"
openclaw gateway restart
```
The plugin auto-detects the database scripts (`cli.py`, `show_stats.py`, `build_db.py`, `check_availability.py`) from this skill. **Both this skill AND the internet-radio-music-player skill must be installed for the plugin to work.**
## Data source
**https://www.internet-radio.com/** — the largest internet radio station catalog.
### How database population works
1. **Parallel station collection** — 10 threads simultaneously (one per genre), parsing up to `MAX_PAGES` pages per genre (`/stations/{genre}/`), stopping on empty page. With the default `MAX_PAGES = 10` this yields ~2700+ stations across 29 genres (~150+ after dedup and filtering). Adjust `MAX_PAGES` to control search depth.
2. **Playlist extraction** — extracts `.pls` playlist link from each station
3. **URL resolution** — forms a direct stream URL from the playlist (`http://server:port/stream`)
4. **Adaptive speed check** — parallel check of all new streams (60 workers), 4-second download. Threshold is per-stream based on bitrate
5. **Saving** — data saved to `state.json`
### Adaptive speed threshold
Each stream has a bitrate (kbps) stored in the database. The minimum speed threshold is:
```
threshold_KBps = max(5.0, min((bitrate_kbps / 8) * 0.75, 50.0))
```
| Stream bitrate | Nominal speed | Threshold (75%) | Effective min |
|----------------|---------------|-----------------|---------------|
| 320 kbps | 40 KB/s | 30 KB/s | 30 KB/s |
| 256 kbps | 32 KB/s | 24 KB/s | 24 KB/s |
| 192 kbps | 24 KB/s _meta.json
{
"ownerId": "kn775k2zzav7y8rpwwm218x0b587f0hj",
"slug": "internet-radio-music-db",
"version": "2.6.3",
"publishedAt": 1780660200899
}skill-card.md
## Description: Collects, stores, and manages internet-radio.com music stream records with auto-population, availability checks, adaptive speed thresholds, and related command-line database utilities. This skill is ready for commercial/non-commercial use. ## Publisher: [dynamicsalex](https://clawhub.ai/user/dynamicsalex) ### License/Terms of Use: MIT-0 ## Use Case: Developers and external users use this skill to build and maintain a local internet radio stream database, inspect stream health and genre statistics, and manage or export stream records for playback tools. ### Deployment Geography for Use: Global ## Known Risks and Mitigations: Risk: The skill can make outbound requests to many radio-stream URLs, including arbitrary stream URLs stored in the local database. Mitigation: Run it on networks where this egress is acceptable, add URL validation or network egress controls before scheduled use, and review sources before importing or adding streams. Risk: Availability checks can modify state.json and remove streams after repeated failures. Mitigation: Back up state.json before automated checks and review failed-check thresholds or outputs before relying on removals. ## Reference(s): - [ClawHub skill homepage](https://clawhub.ai/skills/internet-radio-music-db) - [Published skill page](https://clawhub.ai/dynamicsalex/skills/internet-radio-music-db) - [internet-radio.com source catalog](https://www.internet-radio.com) - [Internet Radio Music WebUI plugin](https://clawhub.ai/dynamicsAlex/internet-radio-music-webui) ## Skill Output: **Output Type(s):** [text, markdown, shell commands, configuration, JSON files, guidance] **Output Format:** [Markdown guidance with inline shell commands and JSON database records.] **Output Parameters:** [1D] **Other Properties Related to Output:** [Can create, update, remove, and export local stream records in state.json.] ## Skill Version(s): 2.6.3 (source: release evidence) ## Ethical Considerations: Users should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment.
state.json
{
"streams": [
{
"url": "http://uk1.internet-radio.com:8355/stream",
"name": "The Zone - Dublin",
"genre": "alternative",
"language": "en",
"available": true,
"source": "internet-radio.com",
"station_url": "https://www.internet-radio.com/station/thezone/",
"bitrate": 128,
"listeners": 35,
"audio_type": "unknown",
"genres": [
"indie",
"pop"
],
"added_at": "2026-05-28T16:17:24.664565+00:00",
"last_checked": "2026-05-29T05:58:56.260381+00:00",
"failed_checks": 0,
"last_speed_bps": 69455.86,
"check_speed_bps": 69455.86,
"check_bytes_received": 299008,
"check_duration": 4.31,
"check_threshold_kbs": 12.0
},
{
"url": "http://uk3.internet-radio.com:8113/stream",
"name": "Radio Gugelhopf",
"genre": "alternative",
"language": "en",
"available": true,
"source": "internet-radio.com",
"station_url": "https://www.internet-radio.com/station/gugelhopf/",
"bitrate": 128,
"listeners": 10,
"audio_type": "unknown",
"genres": [],
"added_at": "2026-05-28T16:17:24.664646+00:00",
"last_checked": "2026-05-29T05:58:56.260381+00:00",
"failed_checks": 0,
"last_speed_bps": 65968.72,
"check_speed_bps": 65968.72,
"check_bytes_received": 286720,
"check_duration": 4.35,
"check_threshold_kbs": 12.0
},
{
"url": "http://uk5.internet-radio.com:8189/stream",
"name": "Undertow Radio (Music supplied by the \"Free Music Archive\")",
"genre": "alternative",
"language": "en",
"available": true,
"source": "internet-radio.com",
"station_url": "https://www.internet-radio.com/station/undertowradio/",
"bitrate": 128,
"listeners": 2,
"audio_type": "unknown",
"genres": [
"rock",
"indie",
"metal",
"pop"
],
"added_at": "2026-05-28T16:17:24.664672+00:00",
"last_checked": "2026-05-29T05:58:56.260381+00:00",
"failed_checks": 0,
"last_speed_bps": 29843.97,
"check_speed_bps": 29843.97,
"check_bytes_received": 126976,
"check_duration": 4.25,
"check_threshold_kbs": 12.0
},
{
"url": "http://uk2.internet-radio.com:8024/stream",
"name": "Dance UK Radio danceradiouk aac+",
"genre": "dance",
"language": "en",
"available": true,
"source": "internet-radio.com",
"station_url": "https://www.internet-radio.com/station/danceuk/",
"bitrate": 32,
"listeners": 108,
"audio_type": "unknown",
"genres": [
"house",
"trance",
"techno"
],
"added_at": "2026-05-28T16:17:24.665219+00:00",
"last_checked": "2026-05-29T05:58:56.260381+00:00",
"failed_checks": 0,
"last_speed_bps": 65160.04,
"cAionUi
Free, local, open-source 24/7 Cowork app and OpenClaw for Gemini CLI, Claude Code, Codex, OpenCode, Qwen Code, Goose CLI, Auggie, and more | 🌟 Star if you like it!
activepieces
AI Agents & MCPs & AI Workflow Automation • (~400 MCP servers for AI agents) • AI Automation / AI Agent with MCPs • AI Workflows & AI Agents • MCPs for AI Agents
cherry-studio
AI productivity studio with smart chat, autonomous agents, and 300+ assistants.
CopilotKit
The Frontend for Agents & Generative UI. React + Angular
Machine-readable data
The same record, as JSON, for agents and crawlers.
{
"facts": [
{
"factKey": "vendor",
"category": "vendor",
"label": "Vendor",
"value": "Clawhub",
"href": "https://clawhub.ai/dynamicsalex/skills/internet-radio-music-db",
"sourceUrl": "https://clawhub.ai/dynamicsalex/skills/internet-radio-music-db",
"sourceType": "profile",
"confidence": "medium",
"observedAt": "2026-10-11T00:01:53.021Z",
"isPublic": true
},
{
"factKey": "protocols",
"category": "compatibility",
"label": "Protocol compatibility",
"value": "OpenClaw",
"href": "https://www.xpersona.co/api/v1/agents/clawhub-dynamicsalex-internet-radio-music-db/contract",
"sourceUrl": "https://www.xpersona.co/api/v1/agents/clawhub-dynamicsalex-internet-radio-music-db/contract",
"sourceType": "contract",
"confidence": "medium",
"observedAt": "2026-10-11T00:01:53.021Z",
"isPublic": true
},
{
"factKey": "traction",
"category": "adoption",
"label": "Adoption signal",
"value": "1.2K downloads",
"href": "https://clawhub.ai/dynamicsalex/internet-radio-music-db",
"sourceUrl": "https://clawhub.ai/dynamicsalex/internet-radio-music-db",
"sourceType": "profile",
"confidence": "medium",
"observedAt": "2026-10-11T00:01:53.021Z",
"isPublic": true
},
{
"factKey": "latest_release",
"category": "release",
"label": "Latest release",
"value": "2.6.3",
"href": "https://clawhub.ai/dynamicsalex/internet-radio-music-db",
"sourceUrl": "https://clawhub.ai/dynamicsalex/internet-radio-music-db",
"sourceType": "release",
"confidence": "medium",
"observedAt": "2026-06-05T11:50:00.899Z",
"isPublic": true
},
{
"factKey": "handshake_status",
"category": "security",
"label": "Handshake status",
"value": "UNKNOWN",
"href": "https://www.xpersona.co/api/v1/agents/clawhub-dynamicsalex-internet-radio-music-db/trust",
"sourceUrl": "https://www.xpersona.co/api/v1/agents/clawhub-dynamicsalex-internet-radio-music-db/trust",
"sourceType": "trust",
"confidence": "medium",
"observedAt": null,
"isPublic": true
}
],
"events": [
{
"eventType": "release",
"title": "Release 2.6.3",
"description": "- Internal documentation file skill-card.md has been removed. - No user-facing features or functionality have changed in this update.",
"href": "https://clawhub.ai/dynamicsalex/internet-radio-music-db",
"sourceUrl": "https://clawhub.ai/dynamicsalex/internet-radio-music-db",
"sourceType": "release",
"confidence": "medium",
"observedAt": "2026-06-05T11:50:00.899Z",
"isPublic": true
}
]
}Record generated Oct 11, 2026.
