{"id":"ff5c03d2-7bf0-4d35-89f1-4747c0de2d23","shortId":"ykXRJu","kind":"skill","title":"higgsfield-soul-id","tagline":"Use when the user wants to train a reusable face-faithful Soul Character identity\non Higgsfield. One-time training returns a reference_id passed to Soul models in\nhiggsfield-generate via `--soul-id`.\nUse this skill whenever: \"train soul character\", \"create my Soul\", \"train my fac","description":"# /higgsfield-soul-id — Train a Reusable Face Identity\n\nTrain a face-faithful Soul Character model. Reusable across all Soul-powered image and video generations in `higgsfield-generate`.\n\n## When to use\n\n- User wants their face (or a specific person's face) in Higgsfield-generated images/videos\n- \"train my soul\", \"create soul character\", \"make a digital twin\", \"brand character training\"\n- Setting up a reusable identity before a campaign requiring consistent character appearance\n- The user has 5–20 photos of a face and wants them persisted as a model reference\n\n**Route elsewhere if:**\n- User just wants a one-shot image with a face reference → `higgsfield-generate` with `--image`\n- User wants a fictional/non-photo avatar from a text description → `higgsfield-generate` with a prompt\n\n## On Activation\n\n1. Read `brand/visual-style.md` if present — check for brand character or persona notes.\n2. Ask for the name to assign to the Soul (one word, used for later reference).\n3. Ask for photos (5–20 face photos, local paths or upload UUIDs).\n4. Confirm plan tier: Soul training requires Basic+ plan. Check `higgsfield account status`.\n\n## Optional dependency — Higgsfield account\n\nThis skill requires the `@higgsfield/cli` binary and a Higgsfield account.\n\n**Without the CLI installed**, return a clear actionable error:\n```\nhiggsfield CLI not found. Install with:\n  curl -fsSL https://raw.githubusercontent.com/higgsfield-ai/cli/main/install.sh | sh\nThen authenticate:\n  higgsfield auth login\n```\n\n**Without an authed Higgsfield account**, the CLI itself surfaces the auth prompt — no special handling needed in the skill.\n\n**Fallback for image generation only:** if the user just needs a one-off image and doesn't have a Higgsfield account, route them to `image-gen` (Gemini, model `gemini-3.1-flash-image-preview`, free tier). Soul Character training has no fallback — it requires Higgsfield.\n\n## Step 0 — Bootstrap\n\nBefore any other command:\n\n1. If `higgsfield` is not on `$PATH`, install it:\n   ```bash\n   curl -fsSL https://raw.githubusercontent.com/higgsfield-ai/cli/main/install.sh | sh\n   ```\n2. If `higgsfield account status` fails with `Session expired` / `Not authenticated`, ask the user to run `higgsfield auth login` (interactive) and wait for confirmation.\n3. Soul training requires a paid plan (Basic+). If `higgsfield account status` shows free plan, tell the user before submitting.\n\n## UX Rules\n\n1. Be concise. No raw IDs in chat. Just say \"Soul ready\" with a name reference.\n2. Detect language and respond in it. CLI flags stay English.\n3. Ask for the smallest set of inputs: name + photos. Pick a sensible model variant.\n4. Polling is silent — training takes minutes. Don't repeat status updates.\n\n## Workflow\n\n1. **Get name.** One word, used for later reference. Ask if missing.\n2. **Get photos.** 5–20 face photos, varied angles and lighting. Local paths or already-uploaded IDs both work — `--image` accepts either.\n3. **Pick variant.**\n   - `--soul-2` — for image generation (default)\n   - `--soul-cinematic` — for cinematic / video work\n   Choose based on user's stated downstream use. Default to `--soul-2`.\n4. **Submit.**\n   ```bash\n   higgsfield soul-id create --name \"<name>\" --soul-2 --image ./photo1.png --image ./photo2.png ...\n   higgsfield soul-id create --name \"<name>\" --soul-2 --image <upload_id> --image <upload_id> ...\n   ```\n   CLI auto-uploads paths. Captures returned reference id.\n5. **Wait.** `higgsfield soul-id wait <id>`. Silent. Default timeout 30m.\n6. **Deliver.** \"Soul `<name>` ready. Use in generate with `--soul-id <id>`.\"\n7. **Log to brand assets.** Append the soul reference_id to `brand/assets.md` so it's discoverable in future sessions without re-asking.\n\n## Use the Soul\n\nOnce trained, pass to `higgsfield-generate`:\n\n```bash\nhiggsfield generate create text2image_soul_v2 --prompt \"...\" --soul-id <ref_id> --wait\nhiggsfield generate create soul_cinema_studio --prompt \"...\" --soul-id <ref_id> --wait\n```\n\n## Listing existing Souls\n\n```bash\nhiggsfield soul-id list                   # all references\nhiggsfield soul-id get <id>               # one by id\n```\n\n## Errors\n\n- `Minimum Basic plan required` — user is on free plan; tell them.\n- `Training failed` — check photos quality (5+ unique faces, well-lit).\n- `Session expired` → `higgsfield auth login`.\n\n## Anti-Patterns\n\n| Anti-pattern | Why it fails | Instead |\n|---|---|---|\n| Submitting fewer than 5 photos | Training with too few images produces a weak identity — the soul drifts from the source face in generation. | Ask for at least 5 photos, ideally 10–15, varied angles and lighting conditions. See `references/photo-guide.md`. |\n| Using the wrong variant for the job | `--soul-2` for a cinematic video generates identity but the model wasn't optimized for motion fidelity. | Pick `--soul-2` for stills, `--soul-cinematic` for video/cinematic work. |\n| Not logging the reference_id | The user will need to re-ask for their soul IDs in every future session. | Always append the soul reference_id to `brand/assets.md` on success. |\n| Trying to train on free plan | Command fails mid-run with a plan error. | Check `higgsfield account status` before submitting. Surface the plan requirement upfront. |\n\n## Reference docs\n\n- `references/photo-guide.md` — what photos work best\n- `references/troubleshooting.md` — common training failures\n\n## Attribution\n\nPorted from [higgsfield-ai/skills](https://github.com/higgsfield-ai/skills) — MIT License, Copyright (c) 2026 Higgsfield AI. Adapted for mktg's drop-in contract on 2026-05-05.\n\nUpstream version: 0.3.0\nUpstream commit: 1dcfe2687c3a9092232bac55c2b6b9ae3fc717d7\n\nDrift detection: if the upstream skill changes, re-run `mktg-steal https://github.com/higgsfield-ai/skills` to evaluate the diff.","tags":["higgsfield","soul","marketing","cli","moizibnyousaf","agent-skills","ai-agents","ai-marketing","brand-memory","brand-voice","claude-code","claude-code-skills"],"capabilities":["skill","source-moizibnyousaf","skill-higgsfield-soul-id","topic-agent-skills","topic-ai-agents","topic-ai-marketing","topic-brand-memory","topic-brand-voice","topic-claude-code","topic-claude-code-skills","topic-cli","topic-cmo","topic-marketing-automation","topic-marketing-cli","topic-seo"],"categories":["marketing-cli"],"synonyms":[],"warnings":[],"endpointUrl":"https://skills.sh/MoizIbnYousaf/marketing-cli/higgsfield-soul-id","protocol":"skill","transport":"skills-sh","auth":{"type":"none","details":{"cli":"npx skills add MoizIbnYousaf/marketing-cli","source_repo":"https://github.com/MoizIbnYousaf/marketing-cli","install_from":"skills.sh"}},"qualityScore":"0.459","qualityRationale":"deterministic score 0.46 from registry signals: · indexed on github topic:agent-skills · 18 github stars · SKILL.md body (5,766 chars)","verified":false,"liveness":"unknown","lastLivenessCheck":null,"agentReviews":{"count":0,"score_avg":null,"cost_usd_avg":null,"success_rate":null,"latency_p50_ms":null,"narrative_summary":null,"summary_updated_at":null},"enrichmentModel":"deterministic:skill-github:v1","enrichmentVersion":1,"enrichedAt":"2026-05-18T19:05:49.972Z","embedding":null,"createdAt":"2026-05-05T13:05:58.771Z","updatedAt":"2026-05-18T19:05:49.972Z","lastSeenAt":"2026-05-18T19:05:49.972Z","tsv":"'-05':865,866 '-2':503,526,537,549,743,761 '-3.1':324 '/higgsfield-ai/cli/main/install.sh':267,361 '/higgsfield-ai/skills':888 '/higgsfield-ai/skills)':847 '/higgsfield-soul-id':55 '/photo1.png':539 '/photo2.png':541 '/skills':844 '0':341 '0.3.0':869 '1':180,347,409,464 '10':726 '15':727 '1dcfe2687c3a9092232bac55c2b6b9ae3fc717d7':872 '2':192,363,425,476 '20':130,213,480 '2026':852,864 '3':208,387,436,499 '30m':571 '4':221,451,527 '5':129,212,479,561,675,699,723 '6':572 '7':583 'accept':497 'account':232,237,247,278,314,366,397,818 'across':70 'action':255 'activ':179 'adapt':855 'ai':843,854 'alreadi':491 'already-upload':490 'alway':791 'angl':484,729 'anti':687,690 'anti-pattern':686,689 'appear':125 'append':588,792 'ask':193,209,374,437,473,605,719,782 'asset':587 'assign':198 'attribut':838 'auth':272,276,284,380,684 'authent':270,373 'auto':554 'auto-upload':553 'avatar':167 'base':516 'bash':356,529,616,642 'basic':228,394,660 'best':833 'binari':243 'bootstrap':342 'brand':111,187,586 'brand/assets.md':594,798 'brand/visual-style.md':182 'c':851 'campaign':121 'captur':557 'chang':879 'charact':18,48,67,106,112,124,188,332 'chat':416 'check':185,230,672,816 'choos':515 'cinema':632 'cinemat':510,512,746,766 'clear':254 'cli':250,258,280,432,552 'command':346,807 'commit':871 'common':835 'concis':411 'condit':732 'confirm':222,386 'consist':123 'contract':862 'copyright':850 'creat':49,104,534,546,619,630 'curl':263,357 'default':507,523,569 'deliv':573 'depend':235 'descript':171 'detect':426,874 'diff':892 'digit':109 'discover':598 'doc':828 'doesn':309 'downstream':521 'drift':712,873 'drop':860 'drop-in':859 'either':498 'elsewher':144 'english':435 'error':256,658,815 'evalu':890 'everi':788 'exist':640 'expir':371,682 'fac':54 'face':15,59,64,89,95,134,156,214,481,677,716 'face-faith':14,63 'fail':368,671,694,808 'failur':837 'faith':16,65 'fallback':293,336 'fewer':697 'fictional/non-photo':166 'fidel':758 'flag':433 'flash':326 'flash-image-preview':325 'found':260 'free':329,400,666,805 'fssl':264,358 'futur':600,789 'gemini':321,323 'gen':320 'generat':37,78,82,99,160,174,296,506,578,615,618,629,718,748 'get':465,477,654 'github.com':846,887 'github.com/higgsfield-ai/skills':886 'github.com/higgsfield-ai/skills)':845 'handl':288 'higgsfield':2,21,36,81,98,159,173,231,236,246,257,271,277,313,339,349,365,379,396,530,542,563,614,617,628,643,650,683,817,842,853 'higgsfield-ai':841 'higgsfield-gener':35,80,97,158,172,613 'higgsfield-soul-id':1 'higgsfield/cli':242 'id':4,29,41,414,493,533,545,560,566,582,592,626,637,646,653,657,774,786,796 'ideal':725 'ident':19,60,118,709,749 'imag':75,153,162,295,307,319,327,496,505,538,540,550,551,705 'image-gen':318 'images/videos':100 'input':443 'instal':251,261,354 'instead':695 'interact':382 'job':741 'languag':427 'later':206,471 'least':722 'licens':849 'light':486,731 'list':639,647 'lit':680 'local':216,487 'log':584,771 'login':273,381,685 'make':107 'mid':810 'mid-run':809 'minimum':659 'minut':457 'miss':475 'mit':848 'mktg':857,884 'mktg-steal':883 'model':33,68,141,322,449,752 'motion':757 'name':196,423,444,466,535,547 'need':289,302,778 'note':191 'one':23,151,202,305,467,655 'one-off':304 'one-shot':150 'one-tim':22 'optim':755 'option':234 'paid':392 'pass':30,611 'path':217,353,488,556 'pattern':688,691 'persist':138 'person':93 'persona':190 'photo':131,211,215,445,478,482,673,700,724,831 'pick':446,500,759 'plan':223,229,393,401,661,667,806,814,824 'poll':452 'port':839 'power':74 'present':184 'preview':328 'produc':706 'prompt':177,285,623,634 'qualiti':674 'raw':413 'raw.githubusercontent.com':266,360 'raw.githubusercontent.com/higgsfield-ai/cli/main/install.sh':265,359 're':604,781,881 're-ask':603,780 're-run':880 'read':181 'readi':420,575 'refer':28,142,157,207,424,472,559,591,649,773,795,827 'references/photo-guide.md':734,829 'references/troubleshooting.md':834 'repeat':460 'requir':122,227,240,338,390,662,825 'respond':429 'return':26,252,558 'reusabl':13,58,69,117 'rout':143,315 'rule':408 'run':378,811,882 'say':418 'see':733 'sensibl':448 'session':370,601,681,790 'set':114,441 'sh':268,362 'shot':152 'show':399 'silent':454,568 'skill':44,239,292,878 'skill-higgsfield-soul-id' 'smallest':440 'soul':3,17,32,40,47,51,66,73,103,105,201,225,331,388,419,502,509,525,532,536,544,548,565,574,581,590,608,621,625,631,636,641,645,652,711,742,760,765,785,794 'soul-cinemat':508,764 'soul-id':39,531,543,564,580,624,635,644,651 'soul-pow':72 'sourc':715 'source-moizibnyousaf' 'special':287 'specif':92 'state':520 'status':233,367,398,461,819 'stay':434 'steal':885 'step':340 'still':763 'studio':633 'submit':406,528,696,821 'success':800 'surfac':282,822 'take':456 'tell':402,668 'text':170 'text2image':620 'tier':224,330 'time':24 'timeout':570 'topic-agent-skills' 'topic-ai-agents' 'topic-ai-marketing' 'topic-brand-memory' 'topic-brand-voice' 'topic-claude-code' 'topic-claude-code-skills' 'topic-cli' 'topic-cmo' 'topic-marketing-automation' 'topic-marketing-cli' 'topic-seo' 'train':11,25,46,52,56,61,101,113,226,333,389,455,610,670,701,803,836 'tri':801 'twin':110 'uniqu':676 'updat':462 'upfront':826 'upload':219,492,555 'upstream':867,870,877 'use':5,42,85,204,469,522,576,606,735 'user':8,86,127,146,163,300,376,404,518,663,776 'uuid':220 'ux':407 'v2':622 'vari':483,728 'variant':450,501,738 'version':868 'via':38 'video':77,513,747 'video/cinematic':768 'wait':384,562,567,627,638 'want':9,87,136,148,164 'wasn':753 'weak':708 'well':679 'well-lit':678 'whenev':45 'without':248,274,602 'word':203,468 'work':495,514,769,832 'workflow':463 'wrong':737","prices":[{"id":"727f42f6-db36-4129-9810-02b8521471b4","listingId":"ff5c03d2-7bf0-4d35-89f1-4747c0de2d23","amountUsd":"0","unit":"free","nativeCurrency":null,"nativeAmount":null,"chain":null,"payTo":null,"paymentMethod":"skill-free","isPrimary":true,"details":{"org":"MoizIbnYousaf","category":"marketing-cli","install_from":"skills.sh"},"createdAt":"2026-05-05T13:05:58.771Z"}],"sources":[{"listingId":"ff5c03d2-7bf0-4d35-89f1-4747c0de2d23","source":"github","sourceId":"MoizIbnYousaf/marketing-cli/higgsfield-soul-id","sourceUrl":"https://github.com/MoizIbnYousaf/marketing-cli/tree/main/skills/higgsfield-soul-id","isPrimary":false,"firstSeenAt":"2026-05-05T13:05:58.771Z","lastSeenAt":"2026-05-18T19:05:49.972Z"}],"details":{"listingId":"ff5c03d2-7bf0-4d35-89f1-4747c0de2d23","quickStartSnippet":null,"exampleRequest":null,"exampleResponse":null,"schema":null,"openapiUrl":null,"agentsTxtUrl":null,"citations":[],"useCases":[],"bestFor":[],"notFor":[],"kindDetails":{"org":"MoizIbnYousaf","slug":"higgsfield-soul-id","github":{"repo":"MoizIbnYousaf/marketing-cli","stars":18,"topics":["agent-skills","ai-agents","ai-marketing","brand-memory","brand-voice","claude-code","claude-code-skills","cli","cmo","marketing-automation","marketing-cli","seo","skills-sh","typescript"],"license":"mit","html_url":"https://github.com/MoizIbnYousaf/marketing-cli","pushed_at":"2026-05-13T21:06:05Z","description":"Agent-native marketing cli: 51 skills, 5 research agents, brand memory that compounds, plus a local Studio dashboard (beta). single agent-native cli, then /cmo in ur coding agent..","skill_md_sha":"fe1c714b911602e5d547719f78ad92036d0f717a","skill_md_path":"skills/higgsfield-soul-id/SKILL.md","default_branch":"main","skill_tree_url":"https://github.com/MoizIbnYousaf/marketing-cli/tree/main/skills/higgsfield-soul-id"},"layout":"multi","source":"github","category":"marketing-cli","frontmatter":{"name":"higgsfield-soul-id","license":"MIT","description":"Use when the user wants to train a reusable face-faithful Soul Character identity\non Higgsfield. One-time training returns a reference_id passed to Soul models in\nhiggsfield-generate via `--soul-id`.\nUse this skill whenever: \"train soul character\", \"create my Soul\", \"train my face\",\n\"make my digital twin\", \"build me an avatar\", \"create a character of me\",\n\"set up identity for video\", \"I want my face in generated images\",\n\"face-faithful character\", \"reusable character\", \"brand character training\",\n\"build a character from photos\", \"soul training\", \"soul-id create\".\nAfter training, logs the soul_reference_id to `brand/assets.md`.\nNOT for: one-shot face swaps (use higgsfield-generate with --image),\nfictional/non-photo avatars (use higgsfield-generate with a prompt).\nRequires Higgsfield CLI + Basic plan or higher."},"skills_sh_url":"https://skills.sh/MoizIbnYousaf/marketing-cli/higgsfield-soul-id"},"updatedAt":"2026-05-18T19:05:49.972Z"}}