From eachlabs-skills
Add or remove watermarks from videos using each::sense AI. Add logo watermarks, text overlays, transparent watermarks, animated watermarks, and remove unwanted watermarks from TikTok, stock footage, and other sources.
npx claudepluginhub joshuarweaver/cascade-content-creation-misc-1 --plugin eachlabs-skillsThis skill uses the workspace's default tool permissions.
Add professional watermarks to your videos or remove unwanted watermarks using each::sense. This skill handles all watermarking needs including logo placement, text overlays, animated watermarks, and intelligent watermark removal.
Guides Next.js Cache Components and Partial Prerendering (PPR) with cacheComponents enabled. Implements 'use cache', cacheLife(), cacheTag(), revalidateTag(), static/dynamic optimization, and cache debugging.
Guides building MCP servers enabling LLMs to interact with external services via tools. Covers best practices, TypeScript/Node (MCP SDK), Python (FastMCP).
Generates original PNG/PDF visual art via design philosophy manifestos for posters, graphics, and static designs on user request.
Add professional watermarks to your videos or remove unwanted watermarks using each::sense. This skill handles all watermarking needs including logo placement, text overlays, animated watermarks, and intelligent watermark removal.
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
-H "Content-Type: application/json" \
-H "X-API-Key: $EACHLABS_API_KEY" \
-H "Accept: text/event-stream" \
-d '{
"messages": [{"role": "user", "content": "Add a logo watermark to this video in the bottom right corner with 50% opacity"}],
"model": "eachsense/beta",
"stream": true,
"mode": "max",
"image_urls": ["https://example.com/my-video.mp4", "https://example.com/my-logo.png"]
}'
| Position | Description | Best Use Case |
|---|---|---|
| Bottom Right | Most common placement | Corporate videos, vlogs |
| Bottom Left | Alternative corner | When bottom right has content |
| Top Right | Upper corner | News-style, live streams |
| Top Left | Upper corner | Documentary style |
| Center | Middle of frame | Preview/draft watermarks |
| Full Frame | Diagonal across video | Stock footage protection |
Add your brand logo to a video with customizable placement and opacity.
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
-H "Content-Type: application/json" \
-H "X-API-Key: $EACHLABS_API_KEY" \
-H "Accept: text/event-stream" \
-d '{
"messages": [{"role": "user", "content": "Add this logo as a watermark to the video. Place it in the bottom right corner with 40% opacity. Keep the logo small, about 10% of the video width."}],
"model": "eachsense/beta",
"stream": true,
"mode": "max",
"image_urls": ["https://example.com/product-video.mp4", "https://example.com/company-logo.png"]
}'
Add text-based watermarks like copyright notices or channel names.
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
-H "Content-Type: application/json" \
-H "X-API-Key: $EACHLABS_API_KEY" \
-H "Accept: text/event-stream" \
-d '{
"messages": [{"role": "user", "content": "Add a text watermark to this video saying \"Copyright 2024 MyBrand\" in white text with black outline. Position it in the bottom left corner, make it subtle but readable."}],
"model": "eachsense/beta",
"stream": true,
"mode": "max",
"image_urls": ["https://example.com/my-video.mp4"]
}'
Create subtle, semi-transparent watermarks that protect content without being intrusive.
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
-H "Content-Type: application/json" \
-H "X-API-Key: $EACHLABS_API_KEY" \
-H "Accept: text/event-stream" \
-d '{
"messages": [{"role": "user", "content": "Add a very subtle transparent watermark with my logo. Use only 20% opacity so it is barely visible but still present. Position in the bottom right corner."}],
"model": "eachsense/beta",
"stream": true,
"mode": "max",
"image_urls": ["https://example.com/cinematic-video.mp4", "https://example.com/watermark-logo.png"]
}'
Precisely control watermark placement for different video styles.
# Corner placement for vlog style
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
-H "Content-Type: application/json" \
-H "X-API-Key: $EACHLABS_API_KEY" \
-H "Accept: text/event-stream" \
-d '{
"messages": [{"role": "user", "content": "Add my channel logo in the top left corner of this video. Make it small and semi-transparent. The watermark should have a slight drop shadow for visibility on light backgrounds."}],
"model": "eachsense/beta",
"stream": true,
"mode": "max",
"image_urls": ["https://example.com/vlog-video.mp4", "https://example.com/channel-logo.png"]
}'
# Center placement for preview/draft
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
-H "Content-Type: application/json" \
-H "X-API-Key: $EACHLABS_API_KEY" \
-H "Accept: text/event-stream" \
-d '{
"messages": [{"role": "user", "content": "Add a large DRAFT watermark text diagonally across the center of this video. Use white text with black stroke, 50% opacity. This is for preview purposes."}],
"model": "eachsense/beta",
"stream": true,
"mode": "max",
"image_urls": ["https://example.com/preview-video.mp4"]
}'
Add dynamic, animated watermarks that draw attention or add visual interest.
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
-H "Content-Type: application/json" \
-H "X-API-Key: $EACHLABS_API_KEY" \
-H "Accept: text/event-stream" \
-d '{
"messages": [{"role": "user", "content": "Add an animated watermark to this video. The logo should have a subtle pulsing glow effect. Place it in the bottom right corner. The animation should loop smoothly every 2 seconds."}],
"model": "eachsense/beta",
"stream": true,
"mode": "max",
"image_urls": ["https://example.com/promo-video.mp4", "https://example.com/animated-logo.gif"]
}'
Intelligently remove existing watermarks while preserving video quality.
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
-H "Content-Type: application/json" \
-H "X-API-Key: $EACHLABS_API_KEY" \
-H "Accept: text/event-stream" \
-d '{
"messages": [{"role": "user", "content": "Remove the watermark from this video. There is a logo watermark in the bottom right corner that needs to be removed cleanly without affecting the rest of the video."}],
"model": "eachsense/beta",
"stream": true,
"mode": "max",
"image_urls": ["https://example.com/watermarked-video.mp4"]
}'
Remove TikTok logos and username watermarks from downloaded videos.
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
-H "Content-Type: application/json" \
-H "X-API-Key: $EACHLABS_API_KEY" \
-H "Accept: text/event-stream" \
-d '{
"messages": [{"role": "user", "content": "Remove the TikTok watermark from this video. There is a TikTok logo and username in the corner that needs to be removed. Preserve the original video quality and ensure no artifacts remain."}],
"model": "eachsense/beta",
"stream": true,
"mode": "max",
"image_urls": ["https://example.com/tiktok-video.mp4"]
}'
Remove watermarks from stock footage that you have licensed.
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
-H "Content-Type: application/json" \
-H "X-API-Key: $EACHLABS_API_KEY" \
-H "Accept: text/event-stream" \
-d '{
"messages": [{"role": "user", "content": "Remove the stock footage watermark from this video. It has a repeating diagonal text watermark across the entire frame saying the stock site name. I have licensed this footage and need a clean version."}],
"model": "eachsense/beta",
"stream": true,
"mode": "max",
"image_urls": ["https://example.com/stock-footage-preview.mp4"]
}'
Add watermarks that move or change position throughout the video to prevent easy removal.
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
-H "Content-Type: application/json" \
-H "X-API-Key: $EACHLABS_API_KEY" \
-H "Accept: text/event-stream" \
-d '{
"messages": [{"role": "user", "content": "Add a dynamic watermark to this video that changes position every 5 seconds. The watermark should move between all four corners of the video. Use my logo with 30% opacity. This makes the watermark harder to remove."}],
"model": "eachsense/beta",
"stream": true,
"mode": "max",
"image_urls": ["https://example.com/protected-content.mp4", "https://example.com/brand-logo.png"]
}'
Apply consistent watermarks across multiple videos in a session.
# First video in batch
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
-H "Content-Type: application/json" \
-H "X-API-Key: $EACHLABS_API_KEY" \
-H "Accept: text/event-stream" \
-d '{
"messages": [{"role": "user", "content": "I need to add the same watermark to multiple videos. Start with this first video. Add my logo in the bottom right corner with 35% opacity. Remember these settings for the next videos."}],
"model": "eachsense/beta",
"stream": true,
"session_id": "batch-watermark-001",
"mode": "eco",
"image_urls": ["https://example.com/video-1.mp4", "https://example.com/company-logo.png"]
}'
# Second video (same session for consistency)
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
-H "Content-Type: application/json" \
-H "X-API-Key: $EACHLABS_API_KEY" \
-H "Accept: text/event-stream" \
-d '{
"messages": [{"role": "user", "content": "Apply the same watermark settings to this second video."}],
"model": "eachsense/beta",
"stream": true,
"session_id": "batch-watermark-001",
"mode": "eco",
"image_urls": ["https://example.com/video-2.mp4"]
}'
# Third video (same session)
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
-H "Content-Type: application/json" \
-H "X-API-Key: $EACHLABS_API_KEY" \
-H "Accept: text/event-stream" \
-d '{
"messages": [{"role": "user", "content": "Apply the same watermark settings to this third video."}],
"model": "eachsense/beta",
"stream": true,
"session_id": "batch-watermark-001",
"mode": "eco",
"image_urls": ["https://example.com/video-3.mp4"]
}'
Ask your users before generating:
"Do you want fast & cheap, or high quality?"
| Mode | Best For | Speed | Quality |
|---|---|---|---|
max | Final output, professional content, watermark removal | Slower | Highest |
eco | Batch processing, drafts, testing placement | Faster | Good |
Use session_id to refine watermark placement:
# Initial watermark
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
-H "Content-Type: application/json" \
-H "X-API-Key: $EACHLABS_API_KEY" \
-H "Accept: text/event-stream" \
-d '{
"messages": [{"role": "user", "content": "Add my logo watermark to this video in the bottom right corner"}],
"model": "eachsense/beta",
"stream": true,
"session_id": "watermark-project-001",
"image_urls": ["https://example.com/my-video.mp4", "https://example.com/logo.png"]
}'
# Adjust based on feedback
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
-H "Content-Type: application/json" \
-H "X-API-Key: $EACHLABS_API_KEY" \
-H "Accept: text/event-stream" \
-d '{
"messages": [{"role": "user", "content": "The watermark is too large and too opaque. Make it 50% smaller and reduce opacity to 25%"}],
"model": "eachsense/beta",
"stream": true,
"session_id": "watermark-project-001"
}'
# Final adjustment
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
-H "Content-Type: application/json" \
-H "X-API-Key: $EACHLABS_API_KEY" \
-H "Accept: text/event-stream" \
-d '{
"messages": [{"role": "user", "content": "Move it slightly more to the center to avoid the video controls overlay area"}],
"model": "eachsense/beta",
"stream": true,
"session_id": "watermark-project-001"
}'
| Error | Cause | Solution |
|---|---|---|
Failed to create prediction: HTTP 422 | Insufficient balance | Top up at eachlabs.ai |
| Content policy violation | Prohibited content | Ensure content complies with terms of service |
| Timeout | Long video processing | Set client timeout to minimum 10 minutes |
| Invalid video format | Unsupported format | Convert to MP4, MOV, or WebM |
| Watermark not detected | AI cannot locate watermark | Specify watermark location more precisely |
each-sense - Core API documentationvideo-generation - Create videos from scratchvideo-edit - General video editing capabilitiesimage-edit - Image watermarking and editing