Skill: ivangdavila/stock-images (version 1.0.0)

--- name: Stock Images slug: stock-images version: 1.0.0 homepage: https://clawic.com/skills/stock-images description: Source free stock photos and placeholder images with direct URLs for Unsplash, Pexels, Pixabay, and Lorem Picsum. metadata: {"clawdbot":{"emoji":"📸","requires":{"bins":[]},"os":["linux","darwin","win32"]}} --- ## Setup On first use, read `setup.md` silently. No setup needed for basic use. ## When to Use User needs stock photos or placeholder images for mockups, prototypes, websites, or presentations. Agent provides direct URLs without API keys when possible. ## Architecture No persistent storage needed. Reference files loaded on demand. ## Quick Reference | Topic | File | |-------|------| | Setup | `setup.md` | | Memory template | `memory-template.md` | | All providers with examples | `providers.md` | | Unsplash category URLs | `unsplash-categories.md` | ## Core Rules ### 1. Prefer Direct URL Services For quick mockups and prototypes, use services that work without API keys: - **Lorem Picsum** — random photos by size - **Placehold.co** — colored placeholders with text - **PlaceKeanu** — Keanu Reeves placeholder photos - **Unsplash Source** — direct links to Unsplash photos ### 2. Match Content to Context | Need | Best Source | |------|-------------| | Generic photo placeholders | Lorem Picsum, Unsplash Source | | Specific subjects (business, nature) | Unsplash, Pexels, Pixabay | | Colored boxes with dimensions | Placehold.co | | Avatars/faces | UI Faces, This Person Does Not Exist | | Icons | Iconify, Feather Icons | ### 3. Know the URL Patterns Quick patterns that work immediately: ``` # Lorem Picsum - random photo at size https://picsum.photos/800/600 # Lorem Picsum - specific image by ID https://picsum.photos/id/237/800/600 # Lorem Picsum - grayscale https://picsum.photos/800/600?grayscale # Placehold.co - gray placeholder with text https://placehold.co/800x600 # Placehold.co - custom colors https://placehold.co/800x600/000/fff # Unsplash Source - specific search https://source.unsplash.com/800x600/?nature # PlaceKeanu - with size https://placekeanu.com/800/600 ``` ### 4. Use Cached URLs for Consistency When building prototypes that need consistent images across sessions: - Use `id` parameter in Lorem Picsum - Save specific Unsplash photo URLs - Use `?random=1` only when variety is needed ### 5. Respect Licensing | Service | License | Attribution | |---------|---------|-------------| | Unsplash | Unsplash License | Not required but appreciated | | Pexels | Pexels License | Not required | | Pixabay | Pixabay License | Not required | | Lorem Picsum | Various | Photos from Unsplash | For commercial projects, verify license on original photo page. ### 6. Load Category Index for Specific Needs When user needs specific subjects (business people, landscapes, food), load `unsplash-categories.md` for curated URLs by category. ### 7. Optimize for Performance - Use WebP format when supported: `https://picsum.photos/800/600.webp` - Use exact dimensions needed (no oversized images) - For retina: Placehold.co supports `@2x` and `@3x` ## Common Traps - Using random URLs in production without caching → inconsistent images - Hotlinking without checking terms → service blocks requests - Using placeholder services for final production → unprofessional - Requesting too large images → slow load times ## External Endpoints | Endpoint | Data Sent | Purpose | |----------|-----------|---------| | picsum.photos | Image dimensions | Random photo | | placehold.co | Dimensions, colors, text | Placeholder image | | source.unsplash.com | Search terms | Unsplash photos | | placekeanu.com | Dimensions | Keanu placeholder | No authentication required. No user data sent. ## Security & Privacy **Data that leaves your machine:** - HTTP requests with dimensions and optional search terms **Data that stays local:** - Cached images in browser - No tracking, no API keys needed **This skill does NOT:** - Store credentials - Track usage - Require API registration ## Related Skills Install with `clawhub install <slug>` if user confirms: - `image` — image analysis and manipulation - `image-generation` — AI image generation - `frontend` — frontend development - `design` — design principles - `ui` — UI design patterns ## Feedback - If useful: `clawhub star stock-images` - Stay updated: `clawhub sync`

path: memory-template.md
content: # Memory Template — Stock Images

Create `~/stock-images/memory.md` if user wants to save preferences:

```markdown
# Stock Images Memory

## Status
status: ongoing
version: 1.0.0
last: YYYY-MM-DD
integration: done

## Context
<!-- What you've learned about their image needs -->
<!-- E.g., "Building a SaaS app, needs professional mockups" -->

## Preferences
<!-- Observed preferences, not asked directly -->
<!-- E.g., "Prefers minimal, light backgrounds" -->
<!-- E.g., "Always asks for 1200x800 dimensions" -->

## Saved Images
<!-- URLs they've used and liked -->

---
*Updated: YYYY-MM-DD*
```

## Status Values

| Value | Meaning | Behavior |
|-------|---------|----------|
| `ongoing` | Learning their preferences | Note what they use |
| `complete` | Know their style | Apply preferences automatically |
| `declined` | Doesn't want tracking | Just provide URLs, no memory |

## Most Users

Most users don't need persistent memory. They just need URLs. Only create memory.md if they ask for saved preferences or consistent style guidance.


path: providers.md
content: # Stock Image Providers — Complete Reference

## No-API Placeholder Services

### Lorem Picsum
The Lorem Ipsum for photos. Random images from Unsplash.

```
# Basic usage
https://picsum.photos/800/600

# Square
https://picsum.photos/400

# Specific image (consistent)
https://picsum.photos/id/237/800/600

# Grayscale
https://picsum.photos/800/600?grayscale

# Blur (1-10)
https://picsum.photos/800/600?blur=2

# Combined
https://picsum.photos/id/870/800/600?grayscale&blur=2

# WebP format
https://picsum.photos/800/600.webp

# JPEG format
https://picsum.photos/800/600.jpg

# Multiple random (prevent caching)
https://picsum.photos/800/600?random=1
https://picsum.photos/800/600?random=2

# List all images (API)
https://picsum.photos/v2/list
https://picsum.photos/v2/list?page=2&limit=100
```

### Placehold.co
Customizable placeholder images with text.

```
# Basic (gray background)
https://placehold.co/800x600

# Custom colors (bg/text in hex)
https://placehold.co/800x600/000000/ffffff

# Named colors
https://placehold.co/800x600/orange/white

# Custom text
https://placehold.co/800x600?text=Hello+World

# Retina
https://placehold.co/400x300@2x
https://placehold.co/400x300@3x

# Formats
https://placehold.co/800x600.png
https://placehold.co/800x600.jpg
https://placehold.co/800x600.webp

# Transparent background
https://placehold.co/800x600/transparent/black
```

### PlaceKeanu
Keanu Reeves placeholder images.

```
# Basic
https://placekeanu.com/800/600

# Grayscale
https://placekeanu.com/g/800/600

# Young Keanu
https://placekeanu.com/y/800/600
```

### Placeholder.com
Simple dimension placeholders.

```
# Basic
https://via.placeholder.com/800x600

# Custom colors
https://via.placeholder.com/800x600/000000/ffffff

# With text
https://via.placeholder.com/800x600?text=Placeholder
```

---

## Stock Photo APIs (Free Tier)

### Unsplash
The largest library of high-quality free photos.

**Direct URL (no API):**
```
# Random from search
https://source.unsplash.com/800x600/?nature
https://source.unsplash.com/800x600/?office,work
https://source.unsplash.com/800x600/?food,restaurant

# Specific photo by ID
https://source.unsplash.com/PHOTO_ID/800x600

# Random featured
https://source.unsplash.com/featured/800x600

# From specific user
https://source.unsplash.com/user/USERNAME/800x600
```

**API (requires free key):**
- 50 requests/hour free tier
- Sign up: https://unsplash.com/developers

### Pexels
Free stock photos and videos.

**API (requires free key):**
- Unlimited requests for non-commercial
- Sign up: https://www.pexels.com/api/

```bash
curl -H "[REDACTED_SECRET]" \
  "https://api.pexels.com/v1/search?query=nature&per_page=10"
```

### Pixabay
6M+ free images, vectors, videos.

**API (requires free key):**
- Sign up: https://pixabay.com/api/docs/

```bash
curl "https://pixabay.com/api/?key=YOUR_KEY&q=nature&image_type=photo"
```

---

## Specialized Services

### Faces & Avatars

| Service | URL | Description |
|---------|-----|-------------|
| UI Faces | uifaces.co | Real human faces for mockups |
| This Person Does Not Exist | thispersondoesnotexist.com | AI-generated faces |
| RoboHash | robohash.org | Robot/alien avatars from hash |
| Boring Avatars | boringavatars.com | Abstract avatars |
| DiceBear | dicebear.com | Avatar library (API) |

```
# RoboHash
https://robohash.org/username.png

# Boring Avatars
https://source.boringavatars.com/beam/120/username

# DiceBear
https://api.dicebear.com/7.x/avataaars/svg?seed=username
```

### Icons

| Service | URL | Description |
|---------|-----|-------------|
| Iconify | iconify.design | 100k+ icons, unified API |
| Feather | feathericons.com | Clean open source icons |
| Heroicons | heroicons.com | By Tailwind CSS team |
| Lucide | lucide.dev | Feather fork, more icons |

### Illustrations

| Service | URL | Description |
|---------|-----|-------------|
| unDraw | undraw.co | Open source illustrations |
| Open Peeps | openpeeps.com | Hand-drawn illustrations |
| Humaaans | humaaans.com | Mix-and-match humans |
| Open Doodles | opendoodles.com | Sketchy illustrations |

---

## Background Removal APIs

| Service | Free Tier | API |
|---------|-----------|-----|
| Remove.bg | 50/month | Yes |
| PhotoRoom | Limited | Yes |
| Poof | Limited | Yes |
| ObjectCut | Limited | Yes |

---

## Image Optimization APIs

| Service | Free Tier | Features |
|---------|-----------|----------|
| ReSmush.it | Unlimited | Compression, no auth |
| CheetahO | Limited | Resize, optimize |
| Sirv | Limited | CDN, manipulation |

```bash
# ReSmush.it (no auth needed)
curl -X POST "http://api.resmush.it/ws.php?img=https://example.com/image.jpg"
```


path: setup.md
content: # Setup — Stock Images

Read this silently when user first asks for stock images. No visible setup needed.

## Your Attitude

You're a helpful resource librarian. Know exactly where to find the right image for any need.

## When to Start Using

This skill works immediately with no setup. The reference files contain everything needed.

## What to Remember (internally)

If user has preferences, note them for future:
- Preferred providers (Unsplash vs Pexels vs Pixabay)
- Preferred image sizes (e.g., "always 1200x800")
- Style preferences (minimal, colorful, professional)
- Common use cases (mockups, presentations, blog posts)

## Workflow

1. **Understand the need** — What's the image for? Mockup, production, placeholder?
2. **Quick placeholder?** — Use Lorem Picsum or Placehold.co (no API needed)
3. **Specific subject?** — Load `unsplash-categories.md` for direct URLs
4. **API needed?** — Guide to Unsplash/Pexels/Pixabay API signup
5. **Provide ready-to-use URLs** — Not instructions, actual URLs

## Common Scenarios

### "I need a placeholder image"
→ Give Lorem Picsum URL immediately
```
https://picsum.photos/800/600
```

### "I need an image of [specific thing]"
→ Use Unsplash Source with search terms
```
https://source.unsplash.com/800x600/?office,work
```

### "I need consistent images for a mockup"
→ Use Lorem Picsum with specific IDs
```
https://picsum.photos/id/237/400/300
https://picsum.photos/id/238/400/300
https://picsum.photos/id/239/400/300
```

### "I need professional stock photos for production"
→ Recommend Unsplash/Pexels with proper attribution


path: unsplash-categories.md
content: # Unsplash Direct URLs by Category

Use these URLs directly without API keys. Replace `WIDTHxHEIGHT` with your dimensions.

## Business & Work

```
# Office
https://source.unsplash.com/WIDTHxHEIGHT/?office
https://source.unsplash.com/WIDTHxHEIGHT/?workspace,desk
https://source.unsplash.com/WIDTHxHEIGHT/?meeting,business

# People working
https://source.unsplash.com/WIDTHxHEIGHT/?team,work
https://source.unsplash.com/WIDTHxHEIGHT/?laptop,working
https://source.unsplash.com/WIDTHxHEIGHT/?startup,office

# Corporate
https://source.unsplash.com/WIDTHxHEIGHT/?corporate,business
https://source.unsplash.com/WIDTHxHEIGHT/?handshake,deal
https://source.unsplash.com/WIDTHxHEIGHT/?presentation,meeting
```

## Technology

```
# Devices
https://source.unsplash.com/WIDTHxHEIGHT/?computer,technology
https://source.unsplash.com/WIDTHxHEIGHT/?smartphone,phone
https://source.unsplash.com/WIDTHxHEIGHT/?laptop,macbook

# Code
https://source.unsplash.com/WIDTHxHEIGHT/?code,programming
https://source.unsplash.com/WIDTHxHEIGHT/?developer,coding
https://source.unsplash.com/WIDTHxHEIGHT/?software,tech

# Data
https://source.unsplash.com/WIDTHxHEIGHT/?data,analytics
https://source.unsplash.com/WIDTHxHEIGHT/?server,datacenter
https://source.unsplash.com/WIDTHxHEIGHT/?network,cloud
```

## Nature & Landscapes

```
# General nature
https://source.unsplash.com/WIDTHxHEIGHT/?nature
https://source.unsplash.com/WIDTHxHEIGHT/?landscape
https://source.unsplash.com/WIDTHxHEIGHT/?scenery

# Mountains
https://source.unsplash.com/WIDTHxHEIGHT/?mountain
https://source.unsplash.com/WIDTHxHEIGHT/?peak,summit
https://source.unsplash.com/WIDTHxHEIGHT/?alps,mountain

# Water
https://source.unsplash.com/WIDTHxHEIGHT/?ocean,sea
https://source.unsplash.com/WIDTHxHEIGHT/?beach,coast
https://source.unsplash.com/WIDTHxHEIGHT/?lake,water
https://source.unsplash.com/WIDTHxHEIGHT/?waterfall

# Forest
https://source.unsplash.com/WIDTHxHEIGHT/?forest,trees
https://source.unsplash.com/WIDTHxHEIGHT/?jungle,rainforest
https://source.unsplash.com/WIDTHxHEIGHT/?woodland,nature

# Sky
https://source.unsplash.com/WIDTHxHEIGHT/?sky,clouds
https://source.unsplash.com/WIDTHxHEIGHT/?sunset
https://source.unsplash.com/WIDTHxHEIGHT/?sunrise
https://source.unsplash.com/WIDTHxHEIGHT/?stars,night
```

## Food & Drink

```
# General food
https://source.unsplash.com/WIDTHxHEIGHT/?food
https://source.unsplash.com/WIDTHxHEIGHT/?meal,dish
https://source.unsplash.com/WIDTHxHEIGHT/?restaurant,dining

# Specific
https://source.unsplash.com/WIDTHxHEIGHT/?coffee,cafe
https://source.unsplash.com/WIDTHxHEIGHT/?pizza,italian
https://source.unsplash.com/WIDTHxHEIGHT/?sushi,japanese
https://source.unsplash.com/WIDTHxHEIGHT/?burger,fastfood
https://source.unsplash.com/WIDTHxHEIGHT/?salad,healthy
https://source.unsplash.com/WIDTHxHEIGHT/?dessert,cake
https://source.unsplash.com/WIDTHxHEIGHT/?wine,drinks
https://source.unsplash.com/WIDTHxHEIGHT/?cocktail,bar
```

## People & Portraits

```
# Portraits
https://source.unsplash.com/WIDTHxHEIGHT/?portrait,face
https://source.unsplash.com/WIDTHxHEIGHT/?woman,portrait
https://source.unsplash.com/WIDTHxHEIGHT/?man,portrait
https://source.unsplash.com/WIDTHxHEIGHT/?people,crowd

# Lifestyle
https://source.unsplash.com/WIDTHxHEIGHT/?lifestyle,happy
https://source.unsplash.com/WIDTHxHEIGHT/?family,together
https://source.unsplash.com/WIDTHxHEIGHT/?friends,group
https://source.unsplash.com/WIDTHxHEIGHT/?couple,romantic
```

## Architecture & Urban

```
# Buildings
https://source.unsplash.com/WIDTHxHEIGHT/?architecture,building
https://source.unsplash.com/WIDTHxHEIGHT/?skyscraper,city
https://source.unsplash.com/WIDTHxHEIGHT/?interior,design
https://source.unsplash.com/WIDTHxHEIGHT/?home,house

# Urban
https://source.unsplash.com/WIDTHxHEIGHT/?city,urban
https://source.unsplash.com/WIDTHxHEIGHT/?street,downtown
https://source.unsplash.com/WIDTHxHEIGHT/?night,cityscape
```

## Travel & Adventure

```
# Destinations
https://source.unsplash.com/WIDTHxHEIGHT/?travel,adventure
https://source.unsplash.com/WIDTHxHEIGHT/?paris,france
https://source.unsplash.com/WIDTHxHEIGHT/?tokyo,japan
https://source.unsplash.com/WIDTHxHEIGHT/?newyork,manhattan
https://source.unsplash.com/WIDTHxHEIGHT/?london,uk

# Activities
https://source.unsplash.com/WIDTHxHEIGHT/?hiking,trail
https://source.unsplash.com/WIDTHxHEIGHT/?camping,outdoor
https://source.unsplash.com/WIDTHxHEIGHT/?backpacker,travel
```

## Sports & Fitness

```
# General
https://source.unsplash.com/WIDTHxHEIGHT/?sport,fitness
https://source.unsplash.com/WIDTHxHEIGHT/?gym,workout
https://source.unsplash.com/WIDTHxHEIGHT/?running,athlete

# Specific
https://source.unsplash.com/WIDTHxHEIGHT/?soccer,football
https://source.unsplash.com/WIDTHxHEIGHT/?basketball
https://source.unsplash.com/WIDTHxHEIGHT/?tennis
https://source.unsplash.com/WIDTHxHEIGHT/?yoga,meditation
https://source.unsplash.com/WIDTHxHEIGHT/?swimming,pool
```

## Products & Objects

```
# General
https://source.unsplash.com/WIDTHxHEIGHT/?product,minimal
https://source.unsplash.com/WIDTHxHEIGHT/?flatlay,objects

# Specific
https://source.unsplash.com/WIDTHxHEIGHT/?watch,accessories
https://source.unsplash.com/WIDTHxHEIGHT/?shoes,fashion
https://source.unsplash.com/WIDTHxHEIGHT/?camera,photography
https://source.unsplash.com/WIDTHxHEIGHT/?book,reading
https://source.unsplash.com/WIDTHxHEIGHT/?headphones,music
```

## Abstract & Textures

```
# Textures
https://source.unsplash.com/WIDTHxHEIGHT/?texture,pattern
https://source.unsplash.com/WIDTHxHEIGHT/?marble,stone
https://source.unsplash.com/WIDTHxHEIGHT/?wood,grain
https://source.unsplash.com/WIDTHxHEIGHT/?fabric,cloth

# Abstract
https://source.unsplash.com/WIDTHxHEIGHT/?abstract,art
https://source.unsplash.com/WIDTHxHEIGHT/?gradient,color
https://source.unsplash.com/WIDTHxHEIGHT/?geometric,shape
https://source.unsplash.com/WIDTHxHEIGHT/?minimal,simple
```

## Seasons & Weather

```
# Seasons
https://source.unsplash.com/WIDTHxHEIGHT/?spring,flowers
https://source.unsplash.com/WIDTHxHEIGHT/?summer,beach
https://source.unsplash.com/WIDTHxHEIGHT/?autumn,fall,leaves
https://source.unsplash.com/WIDTHxHEIGHT/?winter,snow

# Weather
https://source.unsplash.com/WIDTHxHEIGHT/?rain,rainy
https://source.unsplash.com/WIDTHxHEIGHT/?fog,mist
https://source.unsplash.com/WIDTHxHEIGHT/?storm,lightning
```

## Animals

```
# Pets
https://source.unsplash.com/WIDTHxHEIGHT/?dog,puppy
https://source.unsplash.com/WIDTHxHEIGHT/?cat,kitten
https://source.unsplash.com/WIDTHxHEIGHT/?pet,animal

# Wildlife
https://source.unsplash.com/WIDTHxHEIGHT/?wildlife,animal
https://source.unsplash.com/WIDTHxHEIGHT/?bird,birds
https://source.unsplash.com/WIDTHxHEIGHT/?lion,safari
https://source.unsplash.com/WIDTHxHEIGHT/?elephant
```

## Health & Wellness

```
https://source.unsplash.com/WIDTHxHEIGHT/?health,wellness
https://source.unsplash.com/WIDTHxHEIGHT/?spa,relaxation
https://source.unsplash.com/WIDTHxHEIGHT/?medical,doctor
https://source.unsplash.com/WIDTHxHEIGHT/?medicine,healthcare
```

## Education

```
https://source.unsplash.com/WIDTHxHEIGHT/?education,learning
https://source.unsplash.com/WIDTHxHEIGHT/?school,classroom
https://source.unsplash.com/WIDTHxHEIGHT/?university,campus
https://source.unsplash.com/WIDTHxHEIGHT/?student,studying
https://source.unsplash.com/WIDTHxHEIGHT/?library,books
```

---

## Usage Tips

1. **Combine terms** with commas: `?office,work,team`
2. **Be specific** for better results: `?italian,pasta` vs just `?food`
3. **Use common sizes**: 1920x1080, 1200x800, 800x600, 400x300
4. **Cache important images** by saving the final URL after redirect
5. **For consistency**, get the image ID after redirect and use `/id/PHOTO_ID/`


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: suspicious | SkillSpector: suspicious (MEDIUM)