Skip to content
cccskills
FreePublished on GitHubEnglish overview

Headshot

Create professional profile headshots of the configured subject from one to three reference photos. The skill generates and critiques image variants, then stages approved results for review, with framing suited to uses such as LinkedIn profiles and publication bios.

OriginalShow the original description

Generates professional AI headshots of the principal via Nano Banana Pro from 1-3 reference images, staged to Downloads for review. USE WHEN headshot, profile picture, avatar, photo of me, LinkedIn photo, profile image, new headshot, portrait, generate my photo, professional photo, casual headshot, update profile pic. NOT FOR general art or diagrams (Art), non-headshot images of the principal (Art with reference images), video avatars (HyperFrames), headshots of anyone else.

danielmiessler/LifeOS19,635 stars(GitHub 19,635 + cccskills 0)
Works withLinkedIn

Run score Not tested

See how to install

Good for

  • Create a LinkedIn profile headshot from reference photos
  • Make a new profile picture for a public website
  • Request a portrait with specific lighting or framing
  • Review several headshot variants before choosing one

Overview

What it does

Headshot creates AI profile headshots based on one to three reference photos of the configured subject. You can specify details such as square or portrait framing, lighting, clothing, and background; images are usually generated at 2K resolution. The results go through a critique and review process, then are staged as options or a selection sheet. Generated images are saved in the configured user data rather than in the skill itself. The skill is intended for profile photos, LinkedIn, author bios, and similar uses where a photo of the person is needed.

When it helps

Use it to refresh a profile image or prepare a portrait with framing suited to a particular use. It can adjust the look or aspect ratio based on approved reference photos without arranging a new photo shoot. It is not for general illustrations or diagrams, video avatars, or headshots of other people.

Example requests

  • “Please create a headshot for my LinkedIn profile.”
  • “I’d like a new profile photo for my website.”
  • “Use professional lighting and a 3:4 portrait format.”

Notes

First-time use requires a configuration file and approved reference photos. Before generation, the skill checks the configuration, photo availability, and GOOGLE_API_KEY. It uses Nano Banana Pro and reads the API key from the environment settings. Use photos only of yourself or people who have agreed to likeness use. Results are delivered for review after critique; the subject chooses an image before it is made public.

This overview was written by AI (OpenAI Codex) from the public SKILL.md. Check the original below for the exact behavior.

Document check

AI checked the SKILL.md for operations that need care and for setup requirements. The score comes only from actually running the skill (hands-on test).

SafetyAre sending data, deleting files, and running commands disclosed?
AGoodIt requires consent for likeness use, subject selection before public release, and critique before delivery.
Easy setupDoes it need few tools or API keys, and are they documented?
BPartly lackingIt requires a config file, approved photos, and `GOOGLE_API_KEY`, with checks and `Setup.md` referenced.

Not counted in the score. Rated by AI (OpenAI Codex) as of Oct 28, 2026. Treat it as a guide and read the original before installing.

Disagree? Request a re-evaluation

Tell us which point is wrong and why. No login needed. We will check it against the SKILL.md, redo the evaluation, and show the result here.

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

Files included (6)

  • SKILL.md6.2 KB
  • Intents/CreateHeadshot.md7.9 KB
  • References/ReferenceLibrary.md2.3 KB
  • Setup.md3.4 KB
  • Tools/headshot.help.md5.2 KB
  • Tools/Headshot.ts16.6 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

Headshot Skill

Generates professional AI headshots of the principal with Tools/Headshot.ts, which calls the Gemini image model named geminiImage in LIFEOS/TOOLS/models.ts. Matches facial structure from approved reference photos (which ones go in is the CreateHeadshot rule), and defaults to 2K resolution and 1:1 square (3:4 for portrait). A real photoshoot is slow and expensive to redo every time the look needs to change, and generic AI image tools drift off the actual face; anchoring generation to approved reference photos keeps the output recognizably the subject, at the size and ratio each use (LinkedIn, profile pics, publication bios) needs.

Ideal State

  • Every headshot is recognizably the subject, because its face comes from approved real reference photos whose energy matches the requested expression.
  • Each output lands at the size and ratio its use needs and is saved in the subject's USER data, never in the skill tree.
  • Nothing reaches the principal as a first draft, and nothing public ships until the principal has picked it.

Intent Routing

IntentTriggerFile
CreateHeadshot"headshot", "profile picture", "LinkedIn photo", "professional photo", "update profile pic"Intents/CreateHeadshot.md
FileRead when
References/ReferenceLibrary.mdchoosing references: the approved pool, scene plates, energy-matching rules, growing the pool
Setup.mdfirst-time setup, or Headshot.ts check exits non-zero
Tools/Tools/headshot.help.md holds the full CLI flag reference

Data & Config

Everything about the subject lives in <configRoot>/LIFEOS/USER/CUSTOMIZATIONS/SKILLS/Headshot/Config.md (configRoot is $CLAUDE_CONFIG_DIR when set, else ~/.claude): the directory of approved reference photos with a sentiment for each, the default look (attire, backdrop, mood), and optional scene plates. This skill body is generic and ships no photos or looks; first-time setup is Setup.md.

  • Tools/Headshot.ts check verifies the config, that the listed photos exist, and that GOOGLE_API_KEY is set. Run it before any generation; when it exits non-zero, stop and report what it printed, which points at Setup.md.
  • Generated headshots (the subject's face) are written to LIFEOS/USER/CUSTOMIZATIONS/SKILLS/Headshot/generated-headshots/, never into the skill tree. API keys come from the env file: GOOGLE_API_KEY (from <configRoot>/.env).

Quality loop

Nothing this skill produces reaches the owner as a first draft. The artifact goes through Skill("ArtDirection"): a direction council before new or large work, then the cross-vendor critique panel (skills/ArtDirection/Tools/Critique.ts) scores it against the rubric and names defects, then this skill iterates on those defects until the bar or reports the shortfall. Hand-over is skills/ArtDirection/Tools/Deliver.ts, which refuses without a passing critique. Record the owner's verdict with skills/ArtDirection/Tools/Calibrate.ts.

Gotchas

  • Consent. Use only photos of yourself or of people who agreed to have their likeness used. Never generate a headshot of anyone else from their photo without their consent.
  • Generation never writes to ~/Downloads/ (ArtDirection, 2026-09-17). Output goes to generated-headshots/; a copy reaches ~/Downloads/ only through Deliver.ts after a passing critique. This replaces the 2026-03-22 rule to output there first, as all Art outputs once did.
  • Edits inherit the base image's energy. An expression-only edit keeps the mood of the image it starts from, so a tired-looking base (a paused video frame, say) stays tired through any number of expression prompts. If the base's energy is wrong, no prompt fixes it: add a reference photo that already has the energy you want (for example one tagged with an upbeat sentiment in your config) and let it own the face.
  • Edit vs regenerate tradeoff. Full regeneration invents the scene and tends to look generated; strict single-image edits inherit the base's flaws. What usually works is a composite: an approved reference for the face, a real background plate, and an instruction to place the subject in that scene.
  • Likeness for video thumbnails or posters must match the footage. Details visible in the video (clothing, accessories, grooming) and a background taken from the video itself should be checked against real frames, not approved by eye alone. If your install has a thumbnail or video workflow that checks likeness against the footage, use it for this case.

Examples

Example 1: LinkedIn Profile Update

User: "Generate a headshot for my LinkedIn profile"
→ CreateHeadshot
→ A critiqued 2K 1:1 headshot in the default look, delivered to ~/Downloads, original kept under generated-headshots/

Example 2: New profile image for a public site

User: "Make me a new profile picture for the site"
→ CreateHeadshot
→ A labeled pick sheet of 2-4 critiqued variants; nothing on the site changes until the principal picks one

Example 3: Specific Style Request

User: "I need a headshot with professional lighting, 3:4 ratio"
→ CreateHeadshot
→ A 3:4 portrait-format headshot with the requested lighting, delivered after a passing critique

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

AnnualReports

FreeSummary

Find and fetch vendor cybersecurity reports, then compare their findings on topics such as ransomware, breaches, cloud security, and AI. Analyses identify the reports consulted and cite each figure by vendor, year, and report, including where sources disagree.

  • Find reports in a cybersecurity topic area
  • Fetch a specific vendor report
  • Compare ransomware findings across reports
danielmiessler/LifeOS19.6KUpdated Oct 28, 2026

Compare a component's own design needs with the goals of the larger system through three structured passes. The result identifies conflicts, recommends an appropriate scope, and assesses whether the proposed design fits the whole.

  • Choosing between a service, a library, and inline code
  • Comparing feature requests with product goals
  • Checking how new components fit an existing system
danielmiessler/LifeOS19.6KUpdated Oct 28, 2026

Aphorisms

FreeSummary

Find quotes that fit a text’s themes, with attribution and a short reason for each suggestion. Add sourced quotes, research thinkers, and organize a quote collection by theme and usage history to avoid repetition.

  • Finding a fitting quote for a newsletter
  • Saving sourced quotes without duplicates
  • Researching a thinker’s quotes by theme
danielmiessler/LifeOS19.6KUpdated Oct 28, 2026

Art

FreeSummary

Create blog illustrations, technical diagrams, comparisons, comics, and icons through workflows tailored to each format. The skill guides composition, color, and model selection, then stages generated images for review before they are used in a project.

  • Creating blog header illustrations
  • Explaining a system with a technical diagram
  • Visualizing comparisons and timelines
danielmiessler/LifeOS19.6KUpdated Oct 28, 2026

ArtDirection

FreeSummary

Assess the visual quality of images, films, slides, and site captures against a brief and craft criteria. Two vision judges score the work and rank defects, guiding bounded revision; delivery is gated on a passing critique, with human calibration labels recorded separately.

  • Reviewing a render and listing the most important visual defects
  • Iterating on a film or slide deck until it meets a defined bar
  • Checking whether an image reads as professional
danielmiessler/LifeOS19.6KUpdated Oct 28, 2026

ArXiv

FreeSummary

Find arXiv papers by topic, research category, or paper ID. Retrieve titles, authors, abstracts, and links, check new submissions, and add AlphaXiv's AI-generated overviews when available to help decide which papers to read.

  • Checking new AI and machine learning papers
  • Finding papers on a specific research topic
  • Looking up a paper by its ID or arXiv URL
danielmiessler/LifeOS19.6KUpdated Oct 28, 2026

See all skills by danielmiessler

Report a problem with this skill