Not in the top 1,000 by GitHub stars

heygen-com/skills

HeyGen AI agent skills — avatar creation and video production via the v3 Video Agent pipeline

History

Review weekly changes to SKILL.md before updating. Dates mark the weeks in which we observed each version; checks apply to the recorded commits.

View weekly changes

heygen-avatar/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Network or broad shell → After Network or broad shell

1bd5e4d33a02 → 1bd5e4d33a02

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Network or broad shell

First observation → 1bd5e4d33a02

No earlier version was observed for comparison.

Compare on GitHub

heygen-translate/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Network or broad shell → After Network or broad shell

1bd5e4d33a02 → 1bd5e4d33a02

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Network or broad shell

First observation → 1bd5e4d33a02

No earlier version was observed for comparison.

Compare on GitHub

heygen-video/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Network or broad shell → After Network or broad shell

1bd5e4d33a02 → 1bd5e4d33a02

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Network or broad shell

First observation → 1bd5e4d33a02

No earlier version was observed for comparison.

Compare on GitHub

platforms/nanoclaw/heygen/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Network or broad shell → After Network or broad shell

1bd5e4d33a02 → 1bd5e4d33a02

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Network or broad shell

First observation → 1bd5e4d33a02

No earlier version was observed for comparison.

Compare on GitHub

View on GitHubAdd to my skills

Verified commit 1bd5e4d33a028dfed3abf504c5e3dd644fb9ea8a

git clone --filter=blob:none --no-checkout https://github.com/heygen-com/skills.git .hotskills/heygen-com-skills && git -C .hotskills/heygen-com-skills checkout --detach 1bd5e4d33a028dfed3abf504c5e3dd644fb9ea8a # Copy each selected skill directory from .hotskills/heygen-com-skills into .claude/skills/<skill-name>/
539GitHub stars
12stars in 7 days
4skills in this repository
0commits in 30 days

Heat

5.6
  • Star growth, last 7 daysNot available
  • Star growth, last 24 hoursNot available
  • Rank movement, last 7 daysNot available
  • Commits, last 30 daysNot available
  • Accounts asking about it through MCP, last 7 daysNot available
  • Hot votes this weekNot available

Heat never changes the order by stars, and sponsorship never touches it. How heat works

Stars over time

Oct 25, 2026Nov 6, 2026539

30-day change not yet available: not enough history.

Individual skills in this repository

How it works

heygen-avatar

When your agent uses it

Create a persistent HeyGen avatar — a reusable face + voice identity for the agent, the user, or any named character — powered by HeyGen Avatar V technology. Prompt-based creation by default (description → HeyGen builds it); photo upload is optional for real-person digital twins. Use when: (1) giving the agent a face + voice so it can present videos ("bring yourself to life", "create your avatar", "give yourself an avatar", "design a presenter", "set up an avatar", "let's make an avatar"), (2) the user wants to appear in videos as themselves ("create my avatar", "I want my face in a video", "digital twin of me", "build me an avatar"), (3) building a named character presenter ("create an avatar called Cleo", "design a character named X"), (4) establishing HeyGen identity before making videos — the correct FIRST step when no avatar exists yet. Chain signal: when the user says both an identity/avatar action AND a video action in the same request ("create an avatar AND make a video", "set up identity THEN create a video", "design a presenter AND immediately record"), run heygen-avatar first, then heygen-video. Returns avatar_id + voice_id — pass directly to heygen-video to create HeyGen videos. NOT for: generating videos (use heygen-video), translating videos, or TTS-only tasks.

What it loads into context

Frontmatter

359 tokens

Always available to the agent

SKILL.md

6,624 tokens

When the skill is activated

Reference documents

4,259 tokens

Loaded on request

Token counts are estimates. Scripts run separately; they are not counted as reference context.

The playbook

  1. Files & Paths
  2. Language Awareness
  3. UX Rules
  4. Start Here (Critical)
  5. Before You Start (environment detection)
  6. API Mode Detection
  7. Avatar File Convention
  8. Skill Announcement
  9. Workflow
  10. Report feedback (CLI mode)
  11. Iteration Flow
  12. UX Rules
  13. Video Producer Integration
  14. Error Handling

Files

  • ../.claude-plugin/marketplace.jsonasset810 bytes
  • ../.claude-plugin/plugin.jsonasset767 bytes
  • SKILL.mdcore27,313 bytes
  • SKILL.mdcore27,313 bytes
  • SKILL.mdcore27,313 bytes
  • SKILL.mdcore27,313 bytes
  • SKILL.mdcore27,313 bytes
  • references/asset-routing.mddoc4,217 bytes
  • references/avatar-creation.mddoc5,762 bytes
  • references/troubleshooting.mddoc7,588 bytes
Read SKILL.md

# HeyGen Avatar Designer

Create and manage HeyGen avatars for anyone: the agent, the user, or named characters. Handles identity extraction, avatar generation, voice selection, and saves everything to `AVATAR-<NAME>.md` for consistent reuse.

## Files & Paths

This skill reads and writes the following. No other files are accessed without explicit user instruction.

| Operation | Path | Purpose |
|-----------|------|---------|
| Read | `SOUL.md`, `IDENTITY.md` | Extract identity details when creating an avatar for the agent |
| Read | `AVATAR-<NAME>.md` | Load existing avatar identity (for variant looks, voice updates) |
| Write | `AVATAR-<NAME>.md` | Save new avatar identity after creation |
| Write | `AVATAR-AGENT.md`, `AVATAR-USER.md` (symlinks) | Role aliases, see Phase 5 |
View the complete source on GitHub

Skills included

  • heygen-avatar
  • heygen-translate
  • heygen-video

Repository facts

License
MIT
Created
Jan 22, 2026
Last pushed
Jul 14, 2026
Forks
90
Open issues
5
Project activity
Slowing

Before you install

Network or broad shell

Automated signals, not a guarantee

Checked Nov 5, 2026

Not fully analyzed: some files were too long, unreadable or missing. This never lowers the level.

Show 44 notes
  • heygen-avatar/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • heygen-avatar/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • heygen-avatar/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • heygen-avatar/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • heygen-translate/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • heygen-translate/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • heygen-translate/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • heygen-translate/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • heygen-translate/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • heygen-translate/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • heygen-translate/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • heygen-translate/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • heygen-translate/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • heygen-translate/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • heygen-translate/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • heygen-translate/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • heygen-translate/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • heygen-translate/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • heygen-translate/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • heygen-translate/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
Show all 142 signals by file

.claude-plugin/marketplace.json

  • Network accessline 3
    "owner": {     "name": "HeyGen",     "url": "https://heygen.com"
  • Network accessline 4
    "name": "HeyGen",     "url": "https://heygen.com"   },
  • Network accessline 5
    "url": "https://heygen.com"

.claude-plugin/plugin.json

  • Network accessline 5
    "author": {     "name": "HeyGen",     "url": "https://heygen.com"
  • Network accessline 6
    "name": "HeyGen",     "url": "https://heygen.com"   },
  • Network accessline 7
    "url": "https://heygen.com"
  • Network accessline 8
    },   "repository": "https://github.com/heygen-com/skills",   "license": "MIT",
  • Network accessline 9
    "repository": "https://github.com/heygen-com/skills",

heygen-avatar/SKILL.md

  • Broad permissionsline 1
    Bash, WebFetch, Read, Write, mcp__heygen__*
  • Access to secretsline 90
    [Credential-related source omitted]
  • Dangerous shell operationline 92
    **Neither available:** Only if MCP is unavailable AND the CLI doesn't work, tell the user once: "To use this skill, connect the HeyGen MCP server or install the HeyGen CLI: `curl -fsSL https://static.heygen.ai/cli/install.sh | bash` then `h
  • Network accessline 92
    **Neither available:** Only if MCP is unavailable AND the CLI doesn't work, tell the user once: "To use this skill, connect the HeyGen MCP server or install the HeyGen CLI: `curl -fsSL https://static.heygen.ai/cli/install.sh | bash` then `h
  • Network accessline 96
    **Docs-first rule:** Before calling any endpoint you're unsure about: - **Index:** `GET https://developers.heygen.com/llms.txt` — full sitemap
  • Network accessline 97
    - **Index:** `GET https://developers.heygen.com/llms.txt` — full sitemap
  • Network accessline 265
    File options for Type B: - `{ "type": "url", "url": "https://..." }` — public image URL
  • Network accessline 266
    - `{ "type": "url", "url": "https://..." }` — public image URL

heygen-avatar/references/asset-routing.md

  • Network accessline 62
    {"type": "url", "url": "https://example.com/image.png"}

heygen-avatar/references/avatar-creation.md

  • Network accessline 9
    For *avatar discovery* (finding an existing avatar at video time), see [`heygen-video/references/avatar-discovery.md`](https://github.com/heygen-com/skills/blob/master/heygen-video/references/avatar-discovery.md).
  • Network accessline 10
    [`heygen-video/references/avatar-discovery.md`](https://github.com/heygen-com/skills/blob/master/heygen-video/references/avatar-discovery.md).
  • Network accessline 40
    "type": "photo",   "name": "My Avatar",   "file": {"type": "url", "url": "https://example.com/headshot.jpg"},
  • Network accessline 41
    "name": "My Avatar",   "file": {"type": "url", "url": "https://example.com/headshot.jpg"},   "avatar_group_id": "<optional>"
  • Network accessline 42
    "file": {"type": "url", "url": "https://example.com/headshot.jpg"},
  • Network accessline 94
    // Public URL (no auth, no paywall) { "type": "url", "url": "https://example.com/headshot.jpg" }
  • Network accessline 95
    { "type": "url", "url": "https://example.com/headshot.jpg" }

heygen-avatar/references/troubleshooting.md

  • Access to secretsline 97
    [Credential-related source omitted]

heygen-translate/SKILL.md

  • Broad permissionsline 1
    Bash, WebFetch, Read, Write, mcp__heygen__*
  • Network accessline 28
    output), or text-only translation. argument-hint: "[video_url_or_path] [--to language]" homepage: https://docs.heygen.com/reference/video-translate
  • Network accessline 29
    argument-hint: "[video_url_or_path] [--to language]" homepage: https://docs.heygen.com/reference/video-translate allowed-tools: Bash, WebFetch, Read, Write, mcp__heygen__*
  • Network accessline 30
    homepage: https://docs.heygen.com/reference/video-translate
  • Access to secretsline 36
    [Credential-related source omitted]
  • Access to secretsline 37
    [Credential-related source omitted]
  • Access to secretsline 68
    [Credential-related source omitted]
  • Network accessline 69
    [Credential-related source omitted]
  • Access to secretsline 69
    [Credential-related source omitted]
  • Dangerous shell operationline 71
    5. **Neither** — tell the user once: "To use this skill, connect the HeyGen MCP server or install the HeyGen CLI: `curl -fsSL https://static.heygen.ai/cli/install.sh | bash` then `heygen auth login`."
  • Network accessline 71
    5. **Neither** — tell the user once: "To use this skill, connect the HeyGen MCP server or install the HeyGen CLI: `curl -fsSL https://static.heygen.ai/cli/install.sh | bash` then `heygen auth login`."
  • Network accessline 77
    - **MCP mode:** auth is handled by OAuth — no check needed. - **CLI mode:** run `heygen auth status` (silent). If it exits 0, proceed. If it exits non-zero (no key, expired, invalid):   1. Ask the user: *"I need your HeyGen API key to proce
  • Network accessline 78
    - **CLI mode:** run `heygen auth status` (silent). If it exits 0, proceed. If it exits non-zero (no key, expired, invalid):   1. Ask the user: *"I need your HeyGen API key to proceed. You can grab one from https://app.heygen.com/settings?na
  • Network accessline 79
    1. Ask the user: *"I need your HeyGen API key to proceed. You can grab one from https://app.heygen.com/settings?nav=API — paste it here."*
  • Network accessline 87
    - **Never call `curl api.heygen.com/...`** Every operation in this skill has a CLI command and (where supported) an MCP tool. Use those.
  • Network accessline 227
    heygen video-translate create \   -d '{"video":{"type":"url","url":"https://..."},"output_languages":["Spanish (Spain)","Japanese (Japan)"]}' \
  • Network accessline 228
    -d '{"video":{"type":"url","url":"https://..."},"output_languages":["Spanish (Spain)","Japanese (Japan)"]}' \
  • Network accessline 261
    # 1. Create proofread session — returns proofread_ids (one per language) heygen video-translate proofreads create \   -d '{"video":{"type":"url","url":"https://..."}}' \
  • Network accessline 262
    heygen video-translate proofreads create    -d '{"video":{"type":"url","url":"https://..."}}'
  • Network accessline 263
    -d '{"video":{"type":"url","url":"https://..."}}' \
  • Network accessline 278
    SRT_URL=$(jq -r '.data.srt_url'          /tmp/srt-resp.json)  # target-lang, edit this ORIG_URL=$(jq -r '.data.original_srt_url' /tmp/srt-resp.json) # source-lang transcript curl -s "$SRT_URL" -o /tmp/proofread.srt
  • Network accessline 280
    curl -s "$SRT_URL" -o /tmp/proofread.srt

heygen-translate/references/asset-routing.md

  • Network accessline 12
    { "type": "url", "url": "https://example.com/source.mp4" }
  • Network accessline 53
    curl -sI "$URL" | head -5
  • Network accessline 64
    - `Content-Type: text/html` → It's a webpage embedding the video, not the file. Won't work. - `Content-Type: application/octet-stream` → Server isn't declaring MIME. Usually still works but mark as risk. - 30x redirect → Follow with `curl -
  • Network accessline 65
    - `Content-Type: application/octet-stream` → Server isn't declaring MIME. Usually still works but mark as risk. - 30x redirect → Follow with `curl -sIL` to see where it lands. If the final destination is a login page, auth-walled. - `Conten
  • Network accessline 66
    - 30x redirect → Follow with `curl -sIL` to see where it lands. If the final destination is a login page, auth-walled.
  • Network accessline 74
    heygen asset create --file /path/to/video.mp4 # returns {"data":{"asset_id":"<asset-id>","url":"https://...","mime_type":"...","size_bytes":123}}
  • Network accessline 75
    # returns {"data":{"asset_id":"<asset-id>","url":"https://...","mime_type":"...","size_bytes":123}}
  • Network accessline 104
    # Example: AWS S3 with public-read ACL on the object aws s3 cp output.mp4 s3://my-bucket/source.mp4 --acl public-read # Then pass: https://my-bucket.s3.amazonaws.com/source.mp4
  • Network accessline 106
    # Then pass: https://my-bucket.s3.amazonaws.com/source.mp4
  • Network accessline 178
    - **Don't paste raw `curl https://api.heygen.com/v3/assets ...` calls.** Use `heygen asset create` (CLI) or `upload_asset` (MCP).

heygen-translate/references/proofreads-workflow.md

  • Network accessline 127
    {   "data": {     "original_srt_url": "https://resource2.heygen.ai/video_translate/.../<title>_proofread_original.srt?...",
  • Network accessline 128
    "data": {     "original_srt_url": "https://resource2.heygen.ai/video_translate/.../<title>_proofread_original.srt?...",     "srt_url":          "https://resource2.heygen.ai/video_translate/.../<title>_proofread.srt?..."
  • Network accessline 129
    "original_srt_url": "https://resource2.heygen.ai/video_translate/.../<title>_proofread_original.srt?...",
  • Network accessline 130
    "srt_url":          "https://resource2.heygen.ai/video_translate/.../<title>_proofread.srt?..."
  • Network accessline 138
    SRT_URL=$(heygen video-translate proofreads srt get "$PR_ID" \   | jq -r '.data.srt_url') curl -s "$SRT_URL" -o /tmp/proofread.srt
  • Network accessline 140
    curl -s "$SRT_URL" -o /tmp/proofread.srt
  • Network accessline 183
    |---------------------|--------------------------| | Local file | Upload to S3 / Cloud Storage with public-read OR a presigned URL ≥2 h | | GitHub gist | Use the raw URL: `https://gist.githubusercontent.com/<user>/<id>/raw/<file>.srt` |
  • Network accessline 184
    | Local file | Upload to S3 / Cloud Storage with public-read OR a presigned URL ≥2 h | | GitHub gist | Use the raw URL: `https://gist.githubusercontent.com/<user>/<id>/raw/<file>.srt` | | GitHub repo | Use the raw URL: `https://raw.githubus
  • Network accessline 185
    | GitHub gist | Use the raw URL: `https://gist.githubusercontent.com/<user>/<id>/raw/<file>.srt` |
  • Network accessline 186
    | GitHub repo | Use the raw URL: `https://raw.githubusercontent.com/<owner>/<repo>/<branch>/<path>.srt` |
  • Network accessline 190
    The URL must return `Content-Type` of `application/x-subrip` or `text/plain` and the SRT body. Verify with `curl -sI "$URL"` before submitting.
  • Network accessline 235
    # 1. Submit proofread session heygen video-translate proofreads create \   -d '{"video":{"type":"url","url":"https://example.com/source.mp4"}}' \
  • Network accessline 236
    heygen video-translate proofreads create    -d '{"video":{"type":"url","url":"https://example.com/source.mp4"}}'
  • Network accessline 237
    -d '{"video":{"type":"url","url":"https://example.com/source.mp4"}}' \
  • Network accessline 252
    SRT_URL=$(jq -r '.data.srt_url' /tmp/srt-resp.json) ORIG_URL=$(jq -r '.data.original_srt_url' /tmp/srt-resp.json) curl -s "$SRT_URL"  -o /tmp/proofread.srt
  • Network accessline 253
    ORIG_URL=$(jq -r '.data.original_srt_url' /tmp/srt-resp.json) curl -s "$SRT_URL"  -o /tmp/proofread.srt curl -s "$ORIG_URL" -o /tmp/proofread-original.srt
  • Network accessline 254
    curl -s "$SRT_URL"  -o /tmp/proofread.srt
  • Network accessline 255
    curl -s "$ORIG_URL" -o /tmp/proofread-original.srt
  • Network accessline 390
    | Symptom | Verified `failure_message` | Cause | Fix | |---------|----------------------------|-------|-----| | `failed` immediately on submit | `Failed to download video from url, please check the url is valid or the video is public` | Sou
  • Network accessline 391
    |---------|----------------------------|-------|-----| | `failed` immediately on submit | `Failed to download video from url, please check the url is valid or the video is public` | Source URL was 401/403/404, returned HTML, redirected to a
  • Network accessline 392
    | `failed` immediately on submit | `Failed to download video from url, please check the url is valid or the video is public` | Source URL was 401/403/404, returned HTML, redirected to a login page, or had wrong MIME | HEAD-check the URL wit

heygen-translate/references/troubleshooting.md

  • Network accessline 92
    heygen video-translate create -d '...' \   --callback-url "https://example.com/heygen-webhooks" \
  • Network accessline 93
    --callback-url "https://example.com/heygen-webhooks" \
  • Access to secretsline 106
    [Credential-related source omitted]
  • Network accessline 108
    [Credential-related source omitted]
  • Access to secretsline 108
    [Credential-related source omitted]
  • Network accessline 110
    3. If that fails, regenerate the key at <https://app.heygen.com/api>
  • Network accessline 122
    curl -sI "<URL>" | head -5
  • Network accessline 172
    **`failed` with `failure_message: "Failed to download video from url, please check the url is valid or the video is public"`** (verified empirically): Fails almost instantly on submit. Source URL was 401/403/404, returned HTML instead of a 
  • Network accessline 173
    Fails almost instantly on submit. Source URL was 401/403/404, returned HTML instead of a video, redirected to a login page, or had a presigned URL that already expired. HEAD-check first with `curl -sI "$URL"` — expect `200` + `Content-Type:
  • Network accessline 213
    heygen video-translate proofreads srt update <proofread-id> \   -d '{"srt":{"type":"url","url":"https://example.com/proofread-edited.srt"}}'
  • Network accessline 214
    -d '{"srt":{"type":"url","url":"https://example.com/proofread-edited.srt"}}'
  • Network accessline 217
    Working host options: GitHub gists (raw URL), GitHub repo files (raw URL), S3/GCS with public-read or a presigned URL ≥2 h, Vercel/static hosts. The URL must serve `application/x-subrip` or `text/plain` with the SRT body — verify with `curl
  • Network accessline 255
    2. **CLI version:** `heygen --version` returns v0.0.6 or newer 3. **Languages list:** `heygen video-translate languages list | jq '.data.languages | length'` returns >0 4. **Source URL reachable:** `curl -sI "<URL>" | head -1` returns `200`
  • Network accessline 256
    3. **Languages list:** `heygen video-translate languages list | jq '.data.languages | length'` returns >0 4. **Source URL reachable:** `curl -sI "<URL>" | head -1` returns `200` 5. **Source MIME:** `curl -sI "<URL>" | grep -i content-type` 
  • Network accessline 257
    4. **Source URL reachable:** `curl -sI "<URL>" | head -1` returns `200`
  • Network accessline 258
    5. **Source MIME:** `curl -sI "<URL>" | grep -i content-type` shows `video/...`

heygen-video/SKILL.md

  • Broad permissionsline 1
    Bash, WebFetch, Read, Write, mcp__heygen__*
  • Network accessline 21
    or b-roll without a presenter, translating videos, TTS-only, or streaming avatars. argument-hint: "[topic_or_script] [--avatar avatar_id]" homepage: https://developers.heygen.com/docs/quick-start
  • Network accessline 22
    argument-hint: "[topic_or_script] [--avatar avatar_id]" homepage: https://developers.heygen.com/docs/quick-start allowed-tools: Bash, WebFetch, Read, Write, mcp__heygen__*
  • Network accessline 23
    homepage: https://developers.heygen.com/docs/quick-start
  • Access to secretsline 29
    [Credential-related source omitted]
  • Access to secretsline 30
    [Credential-related source omitted]
  • Network accessline 45
    **Docs:** https://developers.heygen.com/docs/quick-start (API) · https://developers.heygen.com/cli (CLI)
  • Network accessline 91
    [Credential-related source omitted]
  • Access to secretsline 91
    [Credential-related source omitted]
  • Access to secretsline 92
    [Credential-related source omitted]
  • Network accessline 93
    [Credential-related source omitted]
  • Access to secretsline 93
    [Credential-related source omitted]
  • Dangerous shell operationline 95
    5. **Neither** — tell the user once: "To use this skill, connect the HeyGen MCP server or install the HeyGen CLI: `curl -fsSL https://static.heygen.ai/cli/install.sh | bash` then `heygen auth login`."
  • Network accessline 95
    5. **Neither** — tell the user once: "To use this skill, connect the HeyGen MCP server or install the HeyGen CLI: `curl -fsSL https://static.heygen.ai/cli/install.sh | bash` then `heygen auth login`."
  • Network accessline 97
    **Hard rules:** - **Never call `curl api.heygen.com/...`** — every mode routes through its own surface.
  • Network accessline 98
    - **Never call `curl api.heygen.com/...`** — every mode routes through its own surface.
  • Network accessline 121
    Plugin install (one-time, by the user): `openclaw plugins install clawhub:@heygen/openclaw-plugin-heygen`. Plugin docs: <https://github.com/heygen-com/openclaw-plugin-heygen>.
  • Network accessline 620
    **⚠<U+FE0F> Always capture `session_id` immediately.** Session URL: `https://app.heygen.com/video-agent/{session_id}`. If lost, it is recoverable via `heygen video-agent list` (items include `session_id`, `created_at`, and `title`), but immediate 
  • Network accessline 636
    2. Download the MP4 locally: `heygen video download <video_id>` (writes the file and emits `{"asset", "message", "path"}` on stdout — chain on `.path`). 3. Send inline via message tool: `message(action:send, media:"<downloaded-path>", capti
  • Network accessline 638
    4. Also share the HeyGen dashboard link for editing: `https://app.heygen.com/videos/<video_id>`

heygen-video/references/asset-routing.md

  • Network accessline 62
    {"type": "url", "url": "https://example.com/image.png"}

heygen-video/references/avatar-discovery.md

  • Network accessline 4
    finds an appropriate presenter (or skips presenter entirely) before calling the Video Agent. For *avatar creation*, see `heygen-avatar` and [`heygen-avatar/references/avatar-creation.md`](https://github.com/heygen-com/skills/blob/master/hey
  • Network accessline 6
    [`heygen-avatar/references/avatar-creation.md`](https://github.com/heygen-com/skills/blob/master/heygen-avatar/references/avatar-creation.md).
  • Network accessline 113
    If no existing avatar fits and the user wants one created, route to the `heygen-avatar` skill. See [`heygen-avatar/references/avatar-creation.md`](https://github.com/heygen-com/skills/blob/master/heygen-avatar/references/avatar-creation.md)
  • Network accessline 114
    `heygen-avatar` skill. See [`heygen-avatar/references/avatar-creation.md`](https://github.com/heygen-com/skills/blob/master/heygen-avatar/references/avatar-creation.md) for the full creation API surface (photo / prompt / digital twin), file
  • Network accessline 115
    [`heygen-avatar/references/avatar-creation.md`](https://github.com/heygen-com/skills/blob/master/heygen-avatar/references/avatar-creation.md)
  • Network accessline 131
    heygen video create -d '{   "type": "image",   "image": {"type": "url", "url": "https://example.com/headshot.jpg"},
  • Network accessline 132
    "type": "image",   "image": {"type": "url", "url": "https://example.com/headshot.jpg"},   "script": "<script>",
  • Network accessline 133
    "image": {"type": "url", "url": "https://example.com/headshot.jpg"},
  • Network accessline 156
    For voice *design* (semantic search by description) and the full voice selection workflow during avatar setup, see [`heygen-avatar/references/avatar-creation.md`](https://github.com/heygen-com/skills/blob/master/heygen-avatar/references/ava
  • Network accessline 158
    [`heygen-avatar/references/avatar-creation.md`](https://github.com/heygen-com/skills/blob/master/heygen-avatar/references/avatar-creation.md).

heygen-video/references/official-prompt-guide.md

  • Network accessline 1
    # HeyGen Video Agent — Official Prompt Guide (Complete) Source: https://www.notion.so/heygen/Video-Agent-Prompt-Guide-2e6449792c69801d9353c885aad92c9e
  • Network accessline 2
    Source: https://www.notion.so/heygen/Video-Agent-Prompt-Guide-2e6449792c69801d9353c885aad92c9e

heygen-video/references/troubleshooting.md

  • Access to secretsline 97
    [Credential-related source omitted]

heygen-video/scripts/update-check.sh

  • Executable scriptline 1
    #!/usr/bin/env bash
  • Network accessline 23
    VERSION_FILE="$SKILL_DIR/VERSION" LOCAL_SKILL_MD="$SKILL_DIR/SKILL.md" REMOTE_URL="${HEYGEN_REMOTE_URL:-https://raw.githubusercontent.com/heygen-com/skills/master/VERSION}"
  • Network accessline 25
    REMOTE_URL="${HEYGEN_REMOTE_URL:-https://raw.githubusercontent.com/heygen-com/skills/master/VERSION}"
  • Dangerous shell operationline 29
    rm -f "$CACHE_FILE"
  • Dangerous shell operationline 30
    rm -f "$SNOOZE_FILE"
  • Dangerous shell operationline 104
    rm -f "$MARKER_FILE"
  • Dangerous shell operationline 105
    rm -f "$SNOOZE_FILE"
  • Network accessline 149
    REMOTE="" REMOTE="$(curl -sf --max-time 5 "$REMOTE_URL" 2>/dev/null || true)"
  • Network accessline 150
    REMOTE="$(curl -sf --max-time 5 "$REMOTE_URL" 2>/dev/null || true)"

platforms/nanoclaw/heygen/SKILL.md

  • Network accessline 13
    [Credential-related source omitted]
  • Access to secretsline 13
    [Credential-related source omitted]
  • Dangerous shell operationline 14
    - `heygen` CLI — install: `curl -fsSL https://static.heygen.ai/cli/install.sh | bash`. Verify: `heygen auth status`.
  • Network accessline 14
    - `heygen` CLI — install: `curl -fsSL https://static.heygen.ai/cli/install.sh | bash`. Verify: `heygen auth status`.
  • Access to secretsline 99
    [Credential-related source omitted]

How the signals fit together

Facts from a static read of the files at the pinned commit. They describe what the code does, not why.

Some files could not be read; the facts below still hold.

Declared and executed: 1 fact
Signal confidence: 134 facts

and 84 more

Works with

Agent compatibility, from the files in this repository
AgentStatusEvidenceInstall to
Claude CodeNativeManifest .claude-plugin/marketplace.json.claude/skills/<skill-name>/
CodexCompatibleStandard SKILL.md heygen-avatar/SKILL.md.agents/skills/<skill-name>/
CursorCompatibleStandard SKILL.md heygen-avatar/SKILL.md.cursor/skills/<skill-name>/
Gemini CLICompatibleStandard SKILL.md heygen-avatar/SKILL.md.gemini/skills/<skill-name>/
GitHub CopilotCompatibleStandard SKILL.md heygen-avatar/SKILL.md.github/skills/<skill-name>/
OpenCodeCompatibleStandard SKILL.md heygen-avatar/SKILL.md.opencode/skills/<skill-name>/
  • Native The repository ships a manifest, folder or frontmatter field for this agent.
  • Compatible A standard SKILL.md that this agent can read.
  • Unknown No evidence either way.

Derived automatically from paths, manifests and frontmatter. Not tested on each agent.