agentCLAWHUBUnverified

Internet Radio Music Player

Plays internet radio streams via Foobar2000 based on your mood, selecting a genre and stream from the Internet Radio Music DB with control and history support.

OpenClaw

Rank

62

Safety

84

Downloads

1.1k

Updated

Oct 11, 2026

Version

2.5.3

Source

CLAWHUB

About

What it does, and when to use it.

Capability contract not published. No trust telemetry is available yet. 1.1K 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.1K downloadsadoption · observed Oct 11, 2026
Latest release
2.5.3release · observed Jun 5, 2026
Handshake status
UNKNOWNsecurity

Install and run

Setup complexity: low.

clawhub skill install s17f1j49zad5p9q8z82sw3me2d87esv0:internet-radio-music-player
  1. Install using `clawhub skill install s17f1j49zad5p9q8z82sw3me2d87esv0:internet-radio-music-player` in an isolated environment before connecting it to live workloads.
  2. No published capability contract is available yet, so validate auth and request/response behavior manually.
  3. Review the upstream CLAWHUB listing at https://clawhub.ai/dynamicsalex/internet-radio-music-player before using production credentials.

Contract: missing

curl -s "https://www.xpersona.co/api/v1/agents/clawhub-dynamicsalex-internet-radio-music-player/snapshot"

Documentation

CLAWHUB

146,195 characters of source documentation, loaded on request.

Extracted files

4 files captured from the source.

SKILL.md

---
name: internet-radio-music-player
version: 2.5.0
description: Internet radio stream player via Foobar2000. Smart 4-level relevance sorting by genre. Supports: play/stop/next/prev/resume, playback history with filters and export. Requires the Internet Radio Music DB skill. For the easiest management experience, use the internet-radio-music-webui plugin.
summary: Internet radio stream player via Foobar2000. Plays music by mood, selecting genre and stream from the Internet Radio Music DB with playback controls and history. Use the internet-radio-music-webui plugin for the simplest playback and DB management.
metadata:
  openclaw:
    requires:
      bins:
        - python3
    emoji: "🎶"
    homepage: https://clawhub.ai/skills/internet-radio-music-player
---

# Internet Radio Music Player

**⚠️ WARNING: This skill REQUIRES the Internet Radio Music DB skill to work!**

Without the stream database skill installed, playback is impossible.

## 🌐 WebUI Plugin (Recommended)

**The easiest way to manage 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, 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 `play_music.py` and the database scripts from this skill and the Internet Radio Music DB skill.

## Install dependencies

```bash
# 1. Install the stream database skill (required!)
openclaw skills install internet-radio-music-db

# 2. Restart Gateway
openclaw gateway restart
```

## How it works

1. User specifies a mood (e.g. "play happy music")
2. Skill determines suitable genres from the mood map
3. **Streams are fetched from the Internet Radio Music DB** (`~/.openclaw/skills/internet-radio-music-db/state.json`)
4. Streams are sorted by relevance to the requested genre (see algorithm below)
5. Stream availability is checked (HTTP request)
6. Foobar2000 is launched with the found URL
7. History is saved to `state.json`

## Stream selection algorithm

When selecting a stream from the database, a 4-level relevance sorting is applied:

### 1. Primary `genre` match (highest priority)

Streams with an exact `genre` match (database field) are always ranked higher than those matched only via the `genres` list.

### 2. Genre position in `genres` field

The requested genre is searched in the stream's `genres` list. The **closer to the beginning** — the higher the priority. If `genre` matches exactly and `genres` is empty — p

_meta.json

{
  "ownerId": "kn775k2zzav7y8rpwwm218x0b587f0hj",
  "slug": "internet-radio-music-player",
  "version": "2.5.3",
  "publishedAt": 1780660206082
}

skill-card.md

## Description:

Plays internet radio streams via Foobar2000 by mapping mood or genre requests to stations from the Internet Radio Music DB, with playback controls and history support.

This skill is ready for commercial/non-commercial use.

## Publisher:

[dynamicsalex](https://clawhub.ai/user/dynamicsalex)

### License/Terms of Use:

MIT-0

## Use Case:

External users and developers use this skill to control internet radio playback from an agent, including mood-based station selection, playback controls, status checks, and listening history review.

### Deployment Geography for Use:

Global

## Known Risks and Mitigations:

Risk: The skill opens external stream URLs and performs outbound stream checks.

Mitigation: Install only in environments where outbound radio stream access is acceptable, and prefer explicit radio-specific requests to reduce accidental activation.

Risk: The skill can control and force-stop local Foobar2000 processes.

Mitigation: Use it on systems where agent-driven Foobar2000 control is expected, and avoid running it during unrelated manual Foobar2000 sessions.

Risk: Playback history exports can include stream metadata in HTML or CSV formats.

Mitigation: Sanitize exported history before opening files that contain untrusted stream metadata.

## Reference(s):

- [ClawHub Skill Page](https://clawhub.ai/dynamicsalex/skills/internet-radio-music-player)
- [Internet Radio Music WebUI Plugin](https://clawhub.ai/dynamicsAlex/internet-radio-music-webui)

## Skill Output:

**Output Type(s):** [text, shell commands, configuration, files]

**Output Format:** [Plain text command output with optional CSV, HTML, or JSON history exports.]

**Output Parameters:** [1D]

**Other Properties Related to Output:** [Requires Python 3, Foobar2000, and the Internet Radio Music DB skill.]

## Skill Version(s):

2.5.3 (source: server release evidence; artifact frontmatter says 2.5.0)

## 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

{
  "History": [
    {
      "Time": "2026-05-28 20:23:11",
      "Genre": "country",
      "Name": "Y Country - Today's Best Country",
      "Url": "http://us5.internet-radio.com:8125/stream",
      "Duration": "01:25:03",
      "Note": "Mood: country"
    },
    {
      "Time": "2026-05-28 21:48:17",
      "Genre": "country",
      "Name": "Spirit Country Radio",
      "Url": "http://us2.internet-radio.com:8035/stream",
      "Duration": "00:44:06"
    },
    {
      "Time": "2026-05-28 22:43:31",
      "Genre": "ambient",
      "Name": "Brown Noise Radio",
      "Url": "http://uk1.internet-radio.com:8280/stream",
      "Duration": null
    },
    {
      "Time": "2026-05-29 09:14:24",
      "Genre": "country",
      "Name": "Spirit Country Radio",
      "Url": "http://us2.internet-radio.com:8035/stream",
      "Duration": "00:04:16",
      "Note": "Mood: country"
    },
    {
      "Time": "2026-05-29 09:18:43",
      "Genre": "country",
      "Name": "Y Country - Today's Best Country",
      "Url": "http://us5.internet-radio.com:8125/stream",
      "Duration": "01:27:13"
    },
    {
      "Time": "2026-05-29 10:45:59",
      "Genre": "country",
      "Name": "All Country Radio",
      "Url": "http://uk3.internet-radio.com:8024/stream",
      "Duration": "00:19:22"
    },
    {
      "Time": "2026-05-29 11:05:24",
      "Genre": "country",
      "Name": "Y Country - Today's Best Country",
      "Url": "http://us5.internet-radio.com:8125/stream",
      "Duration": "00:36:58"
    },
    {
      "Time": "2026-05-29 11:42:36",
      "Genre": "ambient",
      "Name": "White Noise Radio",
      "Url": "http://uk1.internet-radio.com:8267/stream",
      "Duration": "00:00:03",
      "Note": "Mood: ambient"
    },
    {
      "Time": "2026-05-29 11:42:43",
      "Genre": "ambient",
      "Name": "Brown Noise Radio",
      "Url": "http://uk1.internet-radio.com:8280/stream",
      "Duration": "00:00:04"
    },
    {
      "Time": "2026-05-29 11:42:50",
      "Genre": "ambient",
      "Name": "White Noise Radio",
      "Url": "http://uk1.internet-radio.com:8267/stream",
      "Duration": "00:00:19"
    },
    {
      "Time": "2026-05-29 11:43:12",
      "Genre": "ambient",
      "Name": "Brown Noise Radio",
      "Url": "http://uk1.internet-radio.com:8280/stream",
      "Duration": "00:00:10"
    },
    {
      "Time": "2026-05-29 11:43:25",
      "Genre": "ambient",
      "Name": "White Noise Radio",
      "Url": "http://uk1.internet-radio.com:8267/stream",
      "Duration": "00:00:10"
    },
    {
      "Time": "2026-05-29 11:43:38",
      "Genre": "ambient",
      "Name": "Brown Noise Radio",
      "Url": "http://uk1.internet-radio.com:8280/stream",
      "Duration": "00:00:08"
    },
    {
      "Time": "2026-05-29 11:43:49",
      "Genre": "ambient",
      "Name": "White Noise Radio",
      "Url": "http://uk1.internet-radio.com:8267/stream",
      "D
Github ReposUpdated 2d agoRank 70

AionUi

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!

MCPOPENCLAW
Github ReposUpdated 6mo agoRank 70

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

OPENCLAW
Github ReposUpdated 6mo agoRank 70

cherry-studio

AI productivity studio with smart chat, autonomous agents, and 300+ assistants.

MCPOPENCLAW
Github ReposUpdated 7mo agoRank 70

CopilotKit

The Frontend for Agents & Generative UI. React + Angular

OPENCLAW

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-player",
      "sourceUrl": "https://clawhub.ai/dynamicsalex/skills/internet-radio-music-player",
      "sourceType": "profile",
      "confidence": "medium",
      "observedAt": "2026-10-11T07:30:40.191Z",
      "isPublic": true
    },
    {
      "factKey": "protocols",
      "category": "compatibility",
      "label": "Protocol compatibility",
      "value": "OpenClaw",
      "href": "https://www.xpersona.co/api/v1/agents/clawhub-dynamicsalex-internet-radio-music-player/contract",
      "sourceUrl": "https://www.xpersona.co/api/v1/agents/clawhub-dynamicsalex-internet-radio-music-player/contract",
      "sourceType": "contract",
      "confidence": "medium",
      "observedAt": "2026-10-11T07:30:40.191Z",
      "isPublic": true
    },
    {
      "factKey": "traction",
      "category": "adoption",
      "label": "Adoption signal",
      "value": "1.1K downloads",
      "href": "https://clawhub.ai/dynamicsalex/internet-radio-music-player",
      "sourceUrl": "https://clawhub.ai/dynamicsalex/internet-radio-music-player",
      "sourceType": "profile",
      "confidence": "medium",
      "observedAt": "2026-10-11T07:30:40.191Z",
      "isPublic": true
    },
    {
      "factKey": "latest_release",
      "category": "release",
      "label": "Latest release",
      "value": "2.5.3",
      "href": "https://clawhub.ai/dynamicsalex/internet-radio-music-player",
      "sourceUrl": "https://clawhub.ai/dynamicsalex/internet-radio-music-player",
      "sourceType": "release",
      "confidence": "medium",
      "observedAt": "2026-06-05T11:50:06.082Z",
      "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-player/trust",
      "sourceUrl": "https://www.xpersona.co/api/v1/agents/clawhub-dynamicsalex-internet-radio-music-player/trust",
      "sourceType": "trust",
      "confidence": "medium",
      "observedAt": null,
      "isPublic": true
    }
  ],
  "events": [
    {
      "eventType": "release",
      "title": "Release 2.5.3",
      "description": "- Removed the file: skill-card.md - No changes to code or features; only documentation file removal.",
      "href": "https://clawhub.ai/dynamicsalex/internet-radio-music-player",
      "sourceUrl": "https://clawhub.ai/dynamicsalex/internet-radio-music-player",
      "sourceType": "release",
      "confidence": "medium",
      "observedAt": "2026-06-05T11:50:06.082Z",
      "isPublic": true
    }
  ]
}

Record generated Oct 11, 2026.

Sponsored

Ads related to Internet Radio Music Player and adjacent AI workflows.