Skip to content
Back to skills

Ai Headshot Generator

ASecurity

Generate professional AI headshots using each::sense AI. Create LinkedIn-ready portraits, corporate team photos, and business profile pictures from selfies or text descriptions. Supports formal, creative, and casual business styles with studio-quality lighting. Use for: LinkedIn profile photos, corporate headshots, team page portraits, business cards, professional bios, speaker profiles. Triggers: ai headshot, professional headshot, linkedin photo, corporate portrait, business headshot, profi...

  • 29 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added June 2, 2026
content-marketingpythonrustbashexpressapidocumentation

Works with

  • cli
  • api

Security analysis

A100/100

Scanned June 2, 2026

npx -y skills add awesome-genmedia/skills --skill ai-headshot-generator --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Ai Headshot Generator?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Ai Headshot Generator
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/awesome-genmedia-ai-headshot-generator/badge)](https://www.skillsdirectory.com/skills/awesome-genmedia-ai-headshot-generator)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: ai-headshot-generator
description: "Generate professional AI headshots using each::sense AI. Create LinkedIn-ready portraits, corporate team photos, and business profile pictures from selfies or text descriptions. Supports formal, creative, and casual business styles with studio-quality lighting. Use for: LinkedIn profile photos, corporate headshots, team page portraits, business cards, professional bios, speaker profiles. Triggers: ai headshot, professional headshot, linkedin photo, corporate portrait, business headshot, profile photo, team headshot, professional photo, executive portrait, headshot generator"
allowed-tools: Bash(curl *), WebFetch
---

# AI Headshot Generator

Generate professional headshots for LinkedIn, corporate profiles, and business use using [each::sense](https://docs.eachlabs.ai/sense/overview) — the intelligent AI agent that automatically selects the best model for your request.

## Quick Start

> Requires an each::labs API key. Get one at [eachlabs.ai](https://eachlabs.ai).

### Using curl

```bash
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -d '{
    "messages": [
      {
        "role": "user",
        "content": "Professional corporate headshot of a confident woman in her 30s, wearing a navy blazer over a white blouse, soft studio lighting, neutral gray background, sharp focus on face, shoulders up, warm natural smile, DSLR quality"
      }
    ],
    "stream": false
  }'
```

### Using Python (OpenAI SDK)

```python
from openai import OpenAI

client = OpenAI(
    api_key="YOUR_EACHLABS_API_KEY",
    base_url="https://eachsense-agent.core.eachlabs.run/v1"
)

response = client.chat.completions.create(
    model="eachsense/beta",
    messages=[{
        "role": "user",
        "content": "Professional corporate headshot of a confident woman in her 30s, wearing a navy blazer over a white blouse, soft studio lighting, neutral gray background, sharp focus on face, shoulders up, warm natural smile, DSLR quality"
    }]
)

print(response.choices[0].message.content)
```

### With Reference Photo

Upload a selfie or casual photo to generate a professional headshot version:

```bash
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -d '{
    "messages": [
      {
        "role": "user",
        "content": [
              {"type": "text", "text": "Transform this photo into a professional corporate headshot. Keep the same person, add studio lighting, neutral background, professional attire, shoulders-up framing, sharp focus"},
              {"type": "image_url", "image_url": {"url": "https://example.com/my-selfie.jpg"}}
            ]
          }
    ],
    "stream": false
  }'
```

> Images are sent inside messages using the OpenAI multimodal content format. Maximum 4 images per request.

### Streaming

Set `"stream": true` for real-time Server-Sent Events (SSE) responses, or `"stream": false` to receive the complete result in a single response. Streaming is useful for showing progress in UIs; non-streaming is simpler for scripts and automation.

## Headshot Styles

| Style | Description | Best For |
|-------|-------------|----------|
| **Corporate Formal** | Suit/blazer, neutral background, traditional lighting | Finance, law, consulting |
| **Business Casual** | Smart-casual attire, warm tones, approachable | Tech, marketing, startups |
| **Creative Professional** | Bold colors, environmental background, personality | Design, media, entertainment |
| **Medical/Clinical** | White coat, clinical setting, trustworthy | Healthcare professionals |
| **Academic** | Office/library background, intellectual warmth | Professors, researchers |

## Prompt Tips

### What Makes a Great Headshot Prompt

```
Professional headshot + [subject description] + [attire] + [lighting] + [background] + [framing] + [expression]
```

### Background Options

- `neutral gray background` — safest, works everywhere
- `soft white background` — clean, modern
- `blurred office environment` — contextual, professional
- `outdoor bokeh` — approachable, creative
- `dark charcoal background` — dramatic, executive

### Lighting Keywords

- `soft studio lighting` — even, flattering
- `Rembrandt lighting` — dramatic, executive
- `butterfly lighting` — glamorous, beauty
- `natural window light` — approachable, warm
- `rim light with soft fill` — separation from background

## Examples

### LinkedIn Executive Portrait

```bash
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -d '{
    "messages": [
      {
        "role": "user",
        "content": "Executive headshot of a man in his 50s, silver hair, wearing a charcoal suit with a burgundy tie, Rembrandt lighting, dark background, confident expression, head and shoulders, 85mm lens look, sharp eyes"
      }
    ],
    "stream": false
  }'
```

### Startup Founder Casual

```bash
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -d '{
    "messages": [
      {
        "role": "user",
        "content": "Business casual headshot of a young man in a dark crew-neck sweater, natural window lighting from the left, blurred modern office background, genuine smile, upper body, clean-shaven, approachable and confident"
      }
    ],
    "stream": false
  }'
```

### Creative Professional

```bash
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -d '{
    "messages": [
      {
        "role": "user",
        "content": "Creative professional headshot of a woman with colorful braids, wearing a black turtleneck, bold teal background, soft directional lighting, artistic but professional, editorial quality, slight smile"
      }
    ],
    "stream": false
  }'
```

## Team Headshot Batch

Generate consistent headshots for a team page:

```bash
# Use the same style parameters for consistency
STYLE="soft studio lighting, neutral gray background, shoulders up, professional, 85mm portrait lens, DSLR quality"

DESCRIPTIONS=(
  "Professional headshot of a woman in her 30s, dark hair, navy blazer, $STYLE"
  "Professional headshot of a man in his 40s, glasses, light blue dress shirt, $STYLE"
  "Professional headshot of a young woman, curly hair, white blouse, $STYLE"
)

for DESC in "${DESCRIPTIONS[@]}"; do
  curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
    -H "Content-Type: application/json" \
    -H "X-API-Key: $EACHLABS_API_KEY" \
    -d "{
      \"messages\": [{\"role\": \"user\", \"content\": \"$DESC\"}],
      \"stream\": false
    }"
  echo "---"
done
```

## Output Specifications

| Platform | Recommended Size | Aspect Ratio |
|----------|-----------------|--------------|
| LinkedIn | 400x400 px | 1:1 |
| Corporate Website | 600x800 px | 3:4 |
| Email Signature | 200x200 px | 1:1 |
| Business Card | 300x400 px | 3:4 |
| Slack/Teams Avatar | 512x512 px | 1:1 |

## Related Skills

- [AI Portrait Photo](../ai-portrait-photo/SKILL.md) — Studio-quality portrait photography
- [AI Avatar Generator](../ai-avatar-generator/SKILL.md) — Stylized avatars from photos
- [Background Removal](../background-removal/SKILL.md) — Swap headshot backgrounds
- [AI Photo Enhancer](../ai-photo-enhancer/SKILL.md) — Improve photo quality

## Related Models

- [flux-2-max](../../../models/flux-2-max/SKILL.md) — Highest quality image generation
- [flux-kontext-pro](../../../models/flux-kontext-pro/SKILL.md) — Best for reference-based generation
- [seedream-v4-5](../../../models/seedream-v4-5/SKILL.md) — Creative and artistic styles

## Documentation

- [each::sense Overview](https://docs.eachlabs.ai/sense/overview)
- [each::labs API](https://docs.eachlabs.ai)

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.