Pollinations AI
v1.0.4Generate images, music, and videos from text prompts using Pollinations AI with models like flux, zimage, and suno-4 via API key.
Security Scan
OpenClaw
Benign
high confidencePurpose & Capability
Name/description match the code: three CLI scripts call Pollinations endpoints to generate images, audio, and video. The only capability that extends beyond pure generation is an optional Telegram send implemented via an 'openclaw message send' subprocess call — the skill does not declare 'openclaw' as a required binary in metadata, so that dependency is undocumented.
Instruction Scope
SKILL.md instructions align with the code: require POLLINATIONS_API_KEY, explain optional TELEGRAM_CHAT_ID, and show how to run the scripts. The scripts only read the declared env vars (POLLINATIONS_API_KEY, TELEGRAM_CHAT_ID, ALLOWED_OUTPUT_DIRS, OPENCLAW_WORKSPACE) and write output files to allowed directories according to sanitizers. No unexpected file reads, secret harvesting, or external endpoints beyond gen.pollinations.ai are present.
Install Mechanism
No install spec is provided (instruction-only install). The included requirements.txt and meta.json list reasonable Python dependencies (requests, Pillow). There are no downloads from arbitrary URLs or archive extraction.
Credentials
Only POLLINATIONS_API_KEY is required (with TELEGRAM_CHAT_ID, ALLOWED_OUTPUT_DIRS, OPENCLAW_WORKSPACE optional). This is proportionate to the stated functionality. The scripts avoid hardcoding secrets and mask the API key in logged URLs.
Persistence & Privilege
The skill does not request permanent 'always' inclusion and does not modify other skills or system-wide settings. It creates output files under a workspace but does not persist credentials or change agent configuration.
Assessment
This skill appears to do what it says: call Pollinations API to generate images, audio, and video. Before installing: (1) only provide a Pollinations API key — avoid giving unrelated secrets; (2) note the optional Telegram feature uses an external 'openclaw' CLI that is not declared in the metadata, so Telegram sending will fail unless you have an appropriate 'openclaw' command installed and trust it; (3) verify ALLOWED_OUTPUT_DIRS and OPENCLAW_WORKSPACE values so generated files are written only where you expect (SKILL.md mentions '/tmp' as a default but the code primarily uses the workspace outputs directory); (4) review network policy if you need to restrict outbound calls to gen.pollinations.ai. If any of the undocumented behaviors (use of 'openclaw' or differences in ALLOWED_OUTPUT_DIRS defaults) are unacceptable, ask the author to update metadata and docs before use.Like a lobster shell, security has layers — review code before you run it.
latest
Pollinations AI - Image, Music & Video Generation
A comprehensive skill for generating images, music, and video using the Pollinations AI API.
Overview
Pollinations.ai provides free AI generation with API key support. This skill enables:
- Image Generation - Create images from text prompts using state-of-the-art models
- Music/Audio Generation - Generate background music and audio tracks
- Video Generation - Create videos from text descriptions
Prerequisites
1. Get an API Key
Visit pollinations.ai to get your free API key.
2. Set Environment Variable
Add to your shell profile (~/.bashrc or ~/.zshrc):
export POLLINATIONS_API_KEY="your_api_key_here"
Then reload:
source ~/.bashrc
3. Install Dependencies
pip install requests Pillow
Security Configuration
Required Environment Variables
| Variable | Required | Description |
|---|---|---|
POLLINATIONS_API_KEY | Yes | Your API key from pollinations.ai |
Optional Environment Variables
| Variable | Default | Description |
|---|---|---|
TELEGRAM_CHAT_ID | (none) | Chat ID for Telegram sending. If not set, --telegram flag is disabled |
ALLOWED_OUTPUT_DIRS | ., /tmp | Comma-separated list of allowed output directories |
OPENCLAW_WORKSPACE | ~/.openclaw/workspace | Workspace directory for output files |
Note: The --telegram flag requires TELEGRAM_CHAT_ID to be explicitly set. If not set, the feature is disabled for security.
Available Scripts
| Script | Purpose |
|---|---|
pollinations_image_gen.py | Generate images from text prompts |
pollinations_audio_gen.py | Generate music and audio |
pollinations_video_gen.py | Generate videos from text |
Usage
Image Generation
# Basic usage
python pollinations_image_gen.py "a cute cat" --output cat.jpg
# With specific model and enhancements
python pollinations_image_gen.py "cyberpunk city at night" --model flux --enhance --width 1920 --height 1080 --output city.jpg
# Using different models
python pollinations_image_gen.py "your prompt" --model zimage
python pollinations_image_gen.py "your prompt" --model flux-2-dev # Free tier
Parameters:
| Parameter | Description | Default |
|---|---|---|
prompt | Text description of desired image | (required) |
--model | AI model to use | flux |
--width | Image width in pixels | 1024 |
--height | Image height in pixels | 1024 |
--enhance | Enable AI prompt enhancement | false |
--seed | Fixed random seed for reproducibility | random |
--safe | Enable safe mode | false |
--output | Output filename | output.jpg |
--telegram | Send result via Telegram (requires TELEGRAM_CHAT_ID) | false |
Music/Audio Generation
# Generate music from prompt
python pollinations_audio_gen.py "upbeat electronic dance music" --output music.mp3
# With custom duration
python pollinations_audio_gen.py "calm piano melody" --duration 60 --output piano.mp3
Parameters:
| Parameter | Description | Default |
|---|---|---|
prompt | Description of desired music | (required) |
--model | Audio model | suno-4 |
--duration | Length in seconds | 30 |
--output | Output filename | output.mp3 |
Video Generation
# Generate video
python pollinations_video_gen.py "a cat playing with a ball" --output video.mp4
# Custom duration and aspect ratio
python pollinations_video_gen.py "ocean waves" --duration 30 --aspectRatio 16:9 --output ocean.mp4
Parameters:
| Parameter | Description | Default |
|---|---|---|
prompt | Description of desired video | (required) |
--model | Video model | suno-4 |
--duration | Length in seconds | 10 |
--aspectRatio | Video aspect ratio (16:9 or 9:16) | 16:9 |
--output | Output filename | output.mp4 |
Supported Models
Image Models
| Model | Description | Quality |
|---|---|---|
flux | Default high-quality model | ⭐⭐⭐⭐⭐ |
flux-2-dev | Latest flux (FREE) | ⭐⭐⭐⭐⭐ |
zimage | Fast generation | ⭐⭐⭐⭐ |
nanobanana | Creative/artistic | ⭐⭐⭐⭐ |
gptimage | OpenAI-based | ⭐⭐⭐⭐ |
seedream | High detail | ⭐⭐⭐⭐ |
Audio Models
| Model | Description |
|---|---|
suno-4 | Latest (recommended) ⭐ |
suno-3.5 | Previous version |
suno-3 | Legacy model |
Video Models
| Model | Description |
|---|---|
suno | Music video generation ⭐ |
veo-3.1 | Google video AI |
seedance | High quality |
wan | Open source option |
ltx-2 | Fast generation |
Security Features
This skill includes several security measures:
- Path Traversal Protection - All output paths are validated against allowed directories
- Environment Variable Validation - Telegram sending requires explicit opt-in
- No Hardcoded Credentials - All credentials come from environment variables
- File Access Whitelist - Only configured directories can be written to
Troubleshooting
| Error | Cause | Solution |
|---|---|---|
| 401 Unauthorized | Missing or invalid API key | Set POLLINATIONS_API_KEY correctly |
| 403 Forbidden | API key lacks permission | Check your key permissions at pollinations.ai |
| 429 Too Many Requests | Rate limit exceeded | Wait before making more requests |
| 402 Payment Required | Insufficient balance | Add credits at pollinations.ai |
References
- API Documentation: https://gen.pollinations.ai/api/docs
- Pollinations Website: https://pollinations.ai/
Comments
Loading comments...
