hair-color-changer
9
总安装量
8
周安装量
#31765
全站排名
安装命令
npx skills add https://github.com/eachlabs/skills --skill hair-color-changer
Agent 安装分布
gemini-cli
8
opencode
7
claude-code
7
github-copilot
7
codex
7
kimi-cli
7
Skill 文档
Hair Color Changer
Transform hair color in photos using each::sense. This skill enables realistic hair color changes from subtle natural variations to bold fantasy colors, with support for complex effects like ombre, highlights, and multi-tone styling.
Features
- Natural Colors: Blonde, brunette, black, red, auburn
- Fantasy Colors: Purple, blue, pink, green, and more
- Ombre & Gradient: Smooth color transitions from roots to tips
- Highlights & Lowlights: Multi-dimensional color effects
- Gray & Silver: Elegant silver, platinum, and gray tones
- Color Correction: Fix or enhance existing hair color
- Multi-Turn Sessions: Iterate on results and try different colors
Quick Start
curl -X POST https://sense.eachlabs.run/chat \
-H "Content-Type: application/json" \
-H "X-API-Key: $EACHLABS_API_KEY" \
-H "Accept: text/event-stream" \
-d '{
"message": "Change the hair color to platinum blonde, keep it looking natural and shiny",
"image_urls": ["https://example.com/portrait.jpg"],
"mode": "max"
}'
Use Case Examples
1. Change Hair to Blonde
curl -X POST https://sense.eachlabs.run/chat \
-H "Content-Type: application/json" \
-H "X-API-Key: $EACHLABS_API_KEY" \
-H "Accept: text/event-stream" \
-d '{
"message": "Change the hair to a warm honey blonde color. Keep the hair texture and shine natural, maintain realistic highlights throughout.",
"image_urls": ["https://example.com/original-photo.jpg"],
"mode": "max"
}'
2. Change Hair to Brunette
curl -X POST https://sense.eachlabs.run/chat \
-H "Content-Type: application/json" \
-H "X-API-Key: $EACHLABS_API_KEY" \
-H "Accept: text/event-stream" \
-d '{
"message": "Transform the hair to a rich chocolate brown color. Add subtle warm undertones and natural-looking dimension to the brunette shade.",
"image_urls": ["https://example.com/portrait.jpg"],
"mode": "max"
}'
3. Change Hair to Red/Auburn
curl -X POST https://sense.eachlabs.run/chat \
-H "Content-Type: application/json" \
-H "X-API-Key: $EACHLABS_API_KEY" \
-H "Accept: text/event-stream" \
-d '{
"message": "Change the hair color to a vibrant auburn red. Make it look like natural ginger hair with copper highlights that catch the light.",
"image_urls": ["https://example.com/model-photo.jpg"],
"mode": "max"
}'
4. Fantasy Colors (Purple, Blue, Pink)
curl -X POST https://sense.eachlabs.run/chat \
-H "Content-Type: application/json" \
-H "X-API-Key: $EACHLABS_API_KEY" \
-H "Accept: text/event-stream" \
-d '{
"message": "Transform the hair to a vivid galaxy purple color. Make it look like professionally dyed hair with deep violet tones and subtle blue undertones. Keep the hair healthy and shiny looking.",
"image_urls": ["https://example.com/portrait.jpg"],
"mode": "max"
}'
# Electric blue hair
curl -X POST https://sense.eachlabs.run/chat \
-H "Content-Type: application/json" \
-H "X-API-Key: $EACHLABS_API_KEY" \
-H "Accept: text/event-stream" \
-d '{
"message": "Change the hair to electric blue color, like a bold fashion statement. Mix of deep blue and bright cyan tones throughout.",
"image_urls": ["https://example.com/photo.jpg"],
"mode": "max"
}'
# Pastel pink hair
curl -X POST https://sense.eachlabs.run/chat \
-H "Content-Type: application/json" \
-H "X-API-Key: $EACHLABS_API_KEY" \
-H "Accept: text/event-stream" \
-d '{
"message": "Transform the hair to a soft pastel pink color. Think rose gold meets cotton candy - delicate, feminine, and Instagram-worthy.",
"image_urls": ["https://example.com/headshot.jpg"],
"mode": "max"
}'
5. Ombre/Gradient Effect
curl -X POST https://sense.eachlabs.run/chat \
-H "Content-Type: application/json" \
-H "X-API-Key: $EACHLABS_API_KEY" \
-H "Accept: text/event-stream" \
-d '{
"message": "Create an ombre hair effect - dark brown roots transitioning smoothly to caramel blonde at the ends. Make the gradient look natural and well-blended like salon balayage.",
"image_urls": ["https://example.com/full-portrait.jpg"],
"mode": "max"
}'
# Fantasy ombre
curl -X POST https://sense.eachlabs.run/chat \
-H "Content-Type: application/json" \
-H "X-API-Key: $EACHLABS_API_KEY" \
-H "Accept: text/event-stream" \
-d '{
"message": "Create a fantasy ombre effect with dark purple roots fading into bright pink, then to peachy coral at the tips. Smooth gradient transitions like a sunset.",
"image_urls": ["https://example.com/model.jpg"],
"mode": "max"
}'
6. Highlights and Lowlights
curl -X POST https://sense.eachlabs.run/chat \
-H "Content-Type: application/json" \
-H "X-API-Key: $EACHLABS_API_KEY" \
-H "Accept: text/event-stream" \
-d '{
"message": "Add dimensional highlights and lowlights to the hair. Keep the base color but add face-framing blonde highlights and subtle caramel lowlights throughout for depth and dimension.",
"image_urls": ["https://example.com/brunette-photo.jpg"],
"mode": "max"
}'
# Babylights effect
curl -X POST https://sense.eachlabs.run/chat \
-H "Content-Type: application/json" \
-H "X-API-Key: $EACHLABS_API_KEY" \
-H "Accept: text/event-stream" \
-d '{
"message": "Add subtle babylights throughout the hair - very fine, delicate highlights like sun-kissed natural lightening. Keep it soft and natural looking.",
"image_urls": ["https://example.com/portrait.jpg"],
"mode": "max"
}'
7. Gray/Silver Hair
curl -X POST https://sense.eachlabs.run/chat \
-H "Content-Type: application/json" \
-H "X-API-Key: $EACHLABS_API_KEY" \
-H "Accept: text/event-stream" \
-d '{
"message": "Transform the hair to an elegant silver gray color. Make it look like intentional fashion-forward silver hair, not aging gray - metallic, shiny, and well-maintained.",
"image_urls": ["https://example.com/fashion-photo.jpg"],
"mode": "max"
}'
# Platinum silver
curl -X POST https://sense.eachlabs.run/chat \
-H "Content-Type: application/json" \
-H "X-API-Key: $EACHLABS_API_KEY" \
-H "Accept: text/event-stream" \
-d '{
"message": "Change hair to platinum silver with icy undertones. Think high fashion editorial silver - cool-toned, luminous, and striking.",
"image_urls": ["https://example.com/model-headshot.jpg"],
"mode": "max"
}'
8. Natural Color Variations
curl -X POST https://sense.eachlabs.run/chat \
-H "Content-Type: application/json" \
-H "X-API-Key: $EACHLABS_API_KEY" \
-H "Accept: text/event-stream" \
-d '{
"message": "Adjust the hair color to be 2 shades darker, turning it from medium brown to a deep espresso brown. Keep all the natural texture and shine.",
"image_urls": ["https://example.com/natural-photo.jpg"],
"mode": "max"
}'
# Warm up cool tones
curl -X POST https://sense.eachlabs.run/chat \
-H "Content-Type: application/json" \
-H "X-API-Key: $EACHLABS_API_KEY" \
-H "Accept: text/event-stream" \
-d '{
"message": "Add warm golden undertones to the existing hair color. Keep the same overall shade but remove any ashy tones and make it warmer and more vibrant.",
"image_urls": ["https://example.com/portrait.jpg"],
"mode": "eco"
}'
9. Multiple Color Options from Same Photo
Use session_id to try different colors on the same photo:
# First option - Blonde
curl -X POST https://sense.eachlabs.run/chat \
-H "Content-Type: application/json" \
-H "X-API-Key: $EACHLABS_API_KEY" \
-H "Accept: text/event-stream" \
-d '{
"message": "Change my hair to platinum blonde. I want to see how I would look with this color.",
"image_urls": ["https://example.com/my-photo.jpg"],
"session_id": "hair-color-tryout-001",
"mode": "eco"
}'
# Second option - Red (same session)
curl -X POST https://sense.eachlabs.run/chat \
-H "Content-Type: application/json" \
-H "X-API-Key: $EACHLABS_API_KEY" \
-H "Accept: text/event-stream" \
-d '{
"message": "Now show me the same photo but with fiery red hair instead.",
"session_id": "hair-color-tryout-001",
"mode": "eco"
}'
# Third option - Black (same session)
curl -X POST https://sense.eachlabs.run/chat \
-H "Content-Type: application/json" \
-H "X-API-Key: $EACHLABS_API_KEY" \
-H "Accept: text/event-stream" \
-d '{
"message": "And one more variation with jet black hair please.",
"session_id": "hair-color-tryout-001",
"mode": "eco"
}'
10. Before/After Comparison
curl -X POST https://sense.eachlabs.run/chat \
-H "Content-Type: application/json" \
-H "X-API-Key: $EACHLABS_API_KEY" \
-H "Accept: text/event-stream" \
-d '{
"message": "Change the hair to rose gold color, then create a side-by-side before and after comparison showing the original on the left and the new color on the right.",
"image_urls": ["https://example.com/original-portrait.jpg"],
"mode": "max"
}'
# Iterative refinement for comparison
curl -X POST https://sense.eachlabs.run/chat \
-H "Content-Type: application/json" \
-H "X-API-Key: $EACHLABS_API_KEY" \
-H "Accept: text/event-stream" \
-d '{
"message": "Transform the hair to strawberry blonde.",
"image_urls": ["https://example.com/client-photo.jpg"],
"session_id": "client-consultation-001",
"mode": "max"
}'
# Follow-up to adjust
curl -X POST https://sense.eachlabs.run/chat \
-H "Content-Type: application/json" \
-H "X-API-Key: $EACHLABS_API_KEY" \
-H "Accept: text/event-stream" \
-d '{
"message": "Make the strawberry blonde a bit more pink and less orange. Also make it slightly lighter overall.",
"session_id": "client-consultation-001",
"mode": "max"
}'
Best Practices
Getting Realistic Results
- Good Lighting: Use photos with clear, even lighting on the hair
- Hair Visibility: Ensure the hair is clearly visible and not obscured
- Face Forward: Front-facing or 3/4 angle photos work best
- High Resolution: Higher quality source images yield better results
Prompt Tips
- Be Specific: Describe the exact shade you want (e.g., “warm honey blonde” vs just “blonde”)
- Reference Tones: Mention undertones (warm, cool, neutral, ashy, golden)
- Texture Preservation: Request to maintain natural texture and shine
- Realistic Expectations: Fantasy colors may look more vibrant on lighter base colors
Example Prompt Structure
"Change the hair to [specific color with undertones].
[Additional details about dimension, highlights, or effects].
Keep the hair looking [natural/healthy/shiny/textured]."
Mode Selection
“Do you want fast results or highest quality?”
| Mode | Best For | Speed | Quality |
|---|---|---|---|
max |
Final results, client presentations, portfolio work | Slower | Highest |
eco |
Quick previews, trying multiple colors, concept exploration | Faster | Good |
Multi-Turn Color Exploration
Use session_id to iterate and explore colors:
# Start with a base change
curl -X POST https://sense.eachlabs.run/chat \
-H "Content-Type: application/json" \
-H "X-API-Key: $EACHLABS_API_KEY" \
-H "Accept: text/event-stream" \
-d '{
"message": "Change my hair to copper red",
"image_urls": ["https://example.com/selfie.jpg"],
"session_id": "hair-exploration"
}'
# Request adjustment
curl -X POST https://sense.eachlabs.run/chat \
-H "Content-Type: application/json" \
-H "X-API-Key: $EACHLABS_API_KEY" \
-H "Accept: text/event-stream" \
-d '{
"message": "Make it more auburn and less orange, add some brown lowlights",
"session_id": "hair-exploration"
}'
# Try a completely different direction
curl -X POST https://sense.eachlabs.run/chat \
-H "Content-Type: application/json" \
-H "X-API-Key: $EACHLABS_API_KEY" \
-H "Accept: text/event-stream" \
-d '{
"message": "Actually, let me see the original photo with silver gray hair instead",
"session_id": "hair-exploration"
}'
Error Handling
| Error | Cause | Solution |
|---|---|---|
Failed to create prediction: HTTP 422 |
Insufficient balance | Top up at eachlabs.ai |
| No hair detected | Hair not visible in image | Use a clearer photo with visible hair |
| Unnatural results | Low quality source image | Use higher resolution photo with good lighting |
| Timeout | Complex generation | Set client timeout to minimum 10 minutes |
Related Skills
each-sense– Core API documentationface-swap– Face swapping capabilitiesimage-edit– General image editingproduct-photo-generation– E-commerce product shots