media_artist
Direct interface to the robot's creative visual generation system (TTI) and audio playback via the mixer.
Skill by bob-ros2
Chalk Labs
Need help deploying media_artist?
Chalk Labs sets up agents like this inside real teams: connected to your tools, tested on your data, with a human in the loop where it matters.
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/bob-ros2-media-artist
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
- Runs as
- Python package
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/media-artist
What's inside
- Skill name
media_artist- Description
- Direct interface to the robot's creative visual generation system (TTI) and audio playback via the mixer.
- License
- Apache-2.0
- Instructions
- 90 lines in SKILL.md · view on GitHub
Before installing
- Ships executable scripts
Agent Skills spec issues
- name: only lowercase letters, digits and single hyphens allowed
Files (8)
- SKILL.md
- bass_session.txt · notes/
- .ament_ignore · scripts/
- artist_tool.py · scripts/
- list_media.py · scripts/
- play_music.py · scripts/
- my_playlist.txt · scripts/playlists/
- stop_music.py · scripts/
SKILL.md (first lines)
# Media Artist Skill
Eva can use this skill to generate images and play audio files.
## Known Media Repository (temporary / dynamic)
> **Note:** The directory `/root/eva/media/` is continuously updated – the listing below is only an example. Use `list_media` to obtain the current file list.
```
/root/eva/media/
├─ a_song_file.mp3
├─ eva_artist.jpg
├─ eva_vision.jpg
├─ status_bg.png
└─ status_ready.png
```
## Functions
### `play_music`
Sends a playback request to the background `music_daemon`. The daemon strictly processes one song at a time using a queue, preventing any overlapping streams or blocking issues. You can clear the queue and start a new song immediately, or use `--enqueue` to add it to the waitlist. The daemon handles the actual audio streaming to `/eva/streamer/in1` and broadcasts the title to `/eva/streamer/current_song`.
#### Invocation by Eva (JSON example for `execute_skill_script`)
```json
execute_skill_script({
"skill_name": "media_artist",
"script_path": "scripts/play_music.py",
"args": "/root/eva/media/a_song_file.mp3"
})
```
#### Options (arguments)
- `files` : List of audio files, directories, or playlist files (positional arguments). *required*.
- `--audio-topic` : ROS topic for PCM data (default: `/eva/streamer/in1`).
- `--status-topic` : ROS string topic for title broadcast (default: `/eva/streamer/current_song`).
- `--loop` : loop the specified song indefinitely.
- `--loop-all` : loop the entire playlist indefinitely.
- `--enqueue` : add the file to the currently playing queue instead of interrupting the current playback immediately.
**CRITICAL NOTE FOR EVA:** Do NOT use `--list` or run python commands here. If you need to see what files exist, you MUST run the `scripts/list_media.py` script instead!
#### Playlist file
A playlist is a simple text file with one path per line. Lines starting with `#` are comments.
Example `my_playlist.txt`:
```
my_song.mp3
another-one.mp3
# this is a comment
oster-lied.mp3
```
Paths may be relative to the playlist location or absolute.
### `list_media`
Lists all current media files in `/root/eva/media`.
```json
execute_skill_script({
"skill_name": "media_artist",
"script_path": "scripts/list_media.py",
"args": ""
})
```
### `draw_image`
Generates an image via the Moondream/Flux backend.
```json
execute_skill_script({
"skill_name": "media_artist",
"script_path": "scripts/artist_tool.py",
"args": "--prompt 'a futuristic robot in a workshop, cinematic lighting'"
})
```
The resulting image is saved to `/root/eva/media/eva_artist.jpg`.
---
**Note for Eva:** Publishing to `/eva/streamer/current_song` allows the UI to display the currently playing title.From bob-ros2/bob_central, Apache-2.0.
More from bob-ros2/bob_central
- 0.469score
nviz_dashboard
bob-ros2
Unified manager for dashboard layouts, images, and system recovery.
SkillCFreshness: CClaude Code +9 - 0.469score
social_memory
bob-ros2
Interface for querying long-term chat history and user interactions from CouchDB.
SkillCFreshness: CClaude Code +9 - 0.469score
system_management
bob-ros2
Access system telemetry, explore workspace structure, and monitor processes.
SkillCFreshness: CClaude Code +9 - 0.469score
core_coder
bob-ros2
Professional filesystem and shell power for software engineering tasks.
SkillCFreshness: CClaude Code +9 - 0.467score
self_monitoring
bob-ros2
INTERNAL system health monitoring and logging
SkillCFreshness: CClaude Code +9 - 0.465score
recursive_thought
bob-ros2
Enables Eva to perform multi-step internal reasoning using specialized expert personas (RLM Core).
SkillCFreshness: CClaude Code +9 - 0.460score
repl_kernel
bob-ros2
Provides a persistent Python REPL environment for iterative system engineering and stateful calculations.
SkillCFreshness: CClaude Code +9 - 0.405score
vision_llm
bob-ros2
Send multimodal queries (text + image) to the vision subsystem and WAIT for the response.
SkillDFreshness: DClaude Code +9 - 0.405score
knowledge_researcher
bob-ros2
Search the web and gather external information using SearXNG.
SkillDFreshness: DClaude Code +9 - 0.405score
qdrant_memory
bob-ros2
A skill for storing and retrieving text data with optional embeddings using Qdrant vector database
SkillDFreshness: DClaude Code +9 - 0.405score
browser_agent
bob-ros2
Control a headless Playwright browser to interact with websites and stream results to Twitch.
SkillDFreshness: DClaude Code +9
Signals
- Stars
- 0
- Forks
- 0
- Open issues
- 0
- Last commit (this folder)
- May 3, 2026 (6 months ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- Apache-2.0
- Repository
- github.com/bob-ros2/bob_central
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from bob-ros2
- 0.469score
nviz_dashboard
bob-ros2
Unified manager for dashboard layouts, images, and system recovery.
SkillCFreshness: CClaude Code +9 - 0.469score
social_memory
bob-ros2
Interface for querying long-term chat history and user interactions from CouchDB.
SkillCFreshness: CClaude Code +9 - 0.469score
system_management
bob-ros2
Access system telemetry, explore workspace structure, and monitor processes.
SkillCFreshness: CClaude Code +9 - 0.469score
core_coder
bob-ros2
Professional filesystem and shell power for software engineering tasks.
SkillCFreshness: CClaude Code +9 - 0.467score
self_monitoring
bob-ros2
INTERNAL system health monitoring and logging
SkillCFreshness: CClaude Code +9 - 0.465score
recursive_thought
bob-ros2
Enables Eva to perform multi-step internal reasoning using specialized expert personas (RLM Core).
SkillCFreshness: CClaude Code +9
Done for you
Rather not set it up yourself?
Chalk Labs scopes, builds and runs agents for your team: the task audit, the eval harness, the integrations and the weekly ops report. Fixed scope, priced before we start.
See how we build AI agents →Read the case studies
Chalk Labs is a two-founder AI and growth studio. We build AI agents, CRMs and MVPs for Web3 and AI companies, and have shipped 50+ product and token launches.
- launches shipped
- 50+
- launches shipped
- media placements
- 500+
- media placements
- founders on every account
- 2
- founders on every account
Press we've placed: Forbes · CoinDesk · Decrypt · Cointelegraph · The Block
Rahil Jain, Co-founder, Chalk Labs. Ex-Goldman Sachs engineer. You talk to the person who builds it.
Get media_artist running in your business
Tell us what you want to automate. A founder replies within one working day with a plan, not a pitch deck.
Cite this page
media_artist skill. Agent Mart. https://agentmart.dev/skills/bob-ros2-media-artist (last updated 2026-10-24)