<provider-id>
Free<What it does, one line>. Trigger phrases: <phrases>.
The English summary is being prepared. Showing the original description.
Use when generating sexy/NSFW or posed images with local Qwen-Image 2.1 — pose/NSFW LoRAs (tawsLoRa femaledVaginus, TheseAlpacas, posture-v3), pose transfer from an existing image, or exact pose control via VNCCS PoseStudio 3D pose library. Triggers: 性感姿势, 摆姿势, NSFW 出图, 换姿势, 姿势控制, pose transfer, pose lora, VNCCS, 人偶姿势, 姿势库. Independent of any general image-generation skill (which handles SFW text/edit/cutout work).
The English summary is being prepared. Showing the original description.
Run score Not tested
See how to installReview the instructions the agent will receive before you install.
Local photorealistic NSFW + pose control: ComfyUI + Qwen-Image 2.1 (int8 convrot)
Path convention: everything in this skill is relative to the skill root
(this directory). Scripts in scripts/, workflow graphs in workflows/,
author prompts in prompts/, reference images in references/,
author sample data (originals + metadata) in downloads/samples/.
ComfyUI-side locations (models, LoRAs, pose library) are configurable via env
vars — see install/setup.md and §2. The default host for ComfyUI is
http://127.0.0.1:8188 (override with COMFYUI_URL).
This file is self-contained: setup, recipe, pose selection, and a first-run author case are all inside.
The fastest way to trust the pipeline is re-running the author's own sample prompt and comparing against the author's published image (verified 2026-10-12):
python3 scripts/qwen_pose_test.py \
--mode t2i --name author_case_shower \
--prompt "$(cat prompts/taws_v13_shower.txt)" \
--seed 80964 \
--steps 50 --cfg 2.5 --sampler er_sde --scheduler beta \
--width 1152 --height 1728 \
--lora "qwen2_1-femaledVaginus-nsfw-v1_3-fine_L22-31.safetensors" \
--lora-strength 1.0 \
--out outputs/author_case/shower.png
prompts/taws_v13_massage.txt (30 steps, same seed, per its
.params.json) and prompts/thesealpacas_v2_selfie.txt (CFG 4.0 +
thesealpacas-nsfw-v2 @0.8; its .txt ends with a [negative] section —
pass that to --negative).downloads/samples/*_author.jpg
(shower / massage / selfie). Full author metadata (prompts/params/seed/
complete ComfyUI graph) in downloads/samples/phase5_meta.json.| Request | Route | Tool |
|---|---|---|
| New sexy/NSFW image from a text idea | ① T2I + NSFW LoRA (mandatory) | scripts/qwen_pose_test.py --mode t2i |
| Change pose of an existing character image (keep face/clothes) | ② Edit | scripts/qwen_pose_test.py --mode edit |
| Change pose from a 3D mannequin render (script, no browser) | ③ Pose transfer | scripts/run_pose_transfer.py |
| Exact pose from the 3D pose library (136 poses) | ④ VNCCS PoseStudio | scripts/run_vnccs_ui.py (browser automation) |
| Do NOT use: a plain photo or illustration as pose reference — the model composites it as a second person, or redraws the reference person entirely (tested twice); use a textureless 3D mannequin render with route ③/④ instead |
Outputs land under ./outputs/ (the scripts create directories as needed).
| Path | Content |
|---|---|
SKILL.md | this file |
scripts/ | doctor.py (read-only environment self-check: ComfyUI, models, LoRAs, VNCCS, pose library, browser stack — every check degrades to WARN/SKIP with a fix hint), qwen_pose_test.py (routes ①②), run_pose_transfer.py (route ③: pose transfer from a 3D mannequin render, no browser), run_vnccs_ui.py (route ④), make_custom_pose.py (new pose from a library pose by bone rotation), run_phase5.py + build_phase5_sheet.py (case re-run & comparison sheet), media_lock.py (shared media lock, bundled), browser_fallback.py (standalone CDP fallback when the OpenClaw adapter is absent), validate_package.py (offline package integrity check) |
workflows/ | qwen21_t2i.json, qwen21_edit.json (official Qwen-Image 2.1 graphs), VNCCS_PoseStudio_QI2.1.json |
prompts/ | the 3 author prompts + .params.json (the exact local-test settings) |
references/ | pose_examples/ (L0/L1/L2 seaside examples), src_standing.png (default character for route ④) |
downloads/samples/ | author originals *_author.jpg (shower/massage/selfie) + phase5_meta.json (prompt, params, seed, complete graph JSONs) + the 3 raw ComfyUI graph files — used by scripts/run_phase5.py & build_phase5_sheet.py |
pose_library/local_user_poses/Uncategorized/ | 55 curated extra pose JSONs + previews — copy into ComfyUI's PoseLibrary/local_user_poses/Uncategorized/ after installing the node |
install/setup.md | full install guide (models, LoRAs, node, pose repos, commands) |
install/setup.md for exact commands)Comfy-Org/Qwen-Image-2.1:
diffusion_models/qwen_image_2.1_int8_convrot.safetensors,
text_encoders/qwen3vl_8b_int8_convrot.safetensors,
vae/qwen_image_2.1_vae_bf16.safetensors — into the ComfyUI model dirs.models/loras/):| File (size) | Use | Source |
|---|---|---|
qwen2_1-femaledVaginus-nsfw-v1_3-fine_L22-31.safetensors (608M) | default: anatomy + pose, sharpest | Civitai model 2986844 — tawsLoRa "Qwen Image 2.1 - FemaledVaginus-NSFW" |
qwen2_1-femaledVaginus-nsfw-v1.3-fine.safetensors (608M) | same family, v1.3 | Civitai model 2986844 |
thesealpacas-nsfw-v2.safetensors (79.7M) | most reveal, "influencer" face drift | Civitai model 2958918 |
nsfw-posture-v3.safetensors (84M) | strongest pose/body emphasis | Civitai model 2988215 |
qwen21-nsfw-image-edit.safetensors (84M) | edit-route undress/pose changes | HF RunningHubAI/Qwen-Image-2.1-NSFW-Image-Edit (mirror of oreolove "Nude Edit"; original Civitai page delisted) |
VNCCS_QI2_PoseStudioV1.1.safetensors (159M) | only for route ④ | HF MIUProject/VNCCS_PoseStudio_QI2.1 (same repo as the workflow JSON) |
ComfyUI/custom_nodes/, then restart ComfyUI once.Totemistyk/General_Poses_PoseStudio (50), Totemistyk/Ballet_PoseStudio
(3 in manifest; the repo actually ships 58 — register + refresh, then copy
this package's 55 curated extras into local_user_poses/Uncategorized/),
MIUProject/VNCCS_PoseLibrary_Main (16), MIUProject/MySuperPoseRepo (12).
Register: curl -X POST 127.0.0.1:8188/vnccs/pose_library/repositories/add -d '{"repo_id":"<owner>/<repo>"}'. Total after setup: 136.
A repo refresh deletes local files not in the remote manifest — extra/
curated poses belong in PoseLibrary/local_user_poses/<Category>/
(always listed, never auto-cleaned). Pose list API: GET /vnccs/pose_library/list.127.0.0.1:18800) +
browser_client.py + playwright. On the original host these live in
~/.openclaw/tools/browser/; elsewhere point run_vnccs_ui.py at an
equivalent CDP endpoint (it only needs connect_sync(playwright) to return a
browser with one context — a minimal stand-in is fine).scripts/; both scripts import it first from the
package, then fall back to ~/.openclaw/tools.The base model is qwen_image_2.1_int8_convrot.safetensors — the same model
the Civitai authors of these LoRAs used, so their published prompts/params
transfer well. (Note: one of the three author samples actually ran on a
different base with 5 stacked LoRAs; we reproduced it with the single
thesealpacas-v2 LoRA on the convrot base — see Parameter provenance below.)
Download tips (verified): Civitai via the official CLI or
curl -H "Authorization: Bearer <token>" <file-url>; HuggingFace via
hf-mirror.com directly (no proxy — a proxy causes SSL_ERROR).
This recipe reproduces Civitai showcase-level results. All of the following are part of the recipe; a deviation changes the result and must be told to the user:
er_sde + scheduler beta (not euler/simple)--width 1152 --height 1728); keep
--resolution 1024 (that flag feeds TextEncodeQwenImage21, it is not pixel size)qwen2_1-femaledVaginus-nsfw-v1_3-fine_L22-31.safetensors @ 1.0Parameter provenance (source: scripts/run_phase5.py + each run's *.png.json):
| Run record | Steps | CFG | Seed | LoRA strength (local test) |
|---|---|---|---|---|
| A1 shower (primary reference) | 50 | 2.5 | 80964 | 1.0 |
| A2 massage (separate sample) | 30 | 2.5 | 80964 | 1.0 |
| B1 selfie | 50 | 4.0 | 124880844757561 | 0.8 (thesealpacas-v2) |
| C1 control | 50 | 2.5 | 80964 | no LoRA |
Preserve each sample's settings as a unit; do not mix one sample's prompt with another sample's params and present it as "the author recipe".
The working prompts all contain, in this order — write all 7, no omissions:
Template (a real author prompt runs 300–1500 chars):
A hyper-realistic, {camera} shot {subject with age/build/hair state},
{one pose from §4, limb by limb}. {Setting + lighting}. Her skin is
{glistening/visible pores/slick oily sheen}. {explicit anatomy/reveal wording}.
{face/expression}. 8k resolution, cinematic lighting, candid "caught in the
moment" atmosphere, photorealistic anatomy.
Before writing, load a verified author prompt and rewrite it for your scene —
prompts/*.txt (+ matching .params.json). Writing from scratch is what makes
results look generic.
If the user asks for a shorter prompt, a SFW-generic prompt, "no LoRA", fewer steps, or a different sampler — and if you (the agent) ever need to deviate from the recipe for any reason (model refuses a token, out-of-memory, etc.): say the expected cost out loud, show the evidence, and proceed only after confirmation. Never present a weakened run as "the recipe's result"; label what was changed next to the delivered image. Evidence to cite:
C1 (author prompt,
50 steps, seed 80964, no LoRA) vs A1 (identical prompt/params + LoRA):
no-LoRA still looks showcase-grade as a photograph, but the LoRA is what adds
the skin/gloss/anatomy detail the author's images have. So "no LoRA" ≈
"good photograph, not the author's texture".references/pose_examples/01_seaside.png (L0, no LoRA) vs
01b_seaside_lora.png (L1 + LoRA) vs 06_l2_squat_lowangle.png
(L2 + low angle + LoRA) — shows the ladder of how much the full recipe adds.
It demonstrates the effect but does not isolate any single factor.qwen_pose_test.py injects a single LoraLoaderModelOnly
(node id 99) between UNETLoader and KSampler. Civitai showcase workflows
often stack 3–5 LoRAs; to reproduce those, chain extra LoraLoaderModelOnly
nodes in build_workflow().denoise 0.35 pass and EasyCache; QwenImage21Cache is broken on the
original host (aimdo memory compile error) and the route ④ runner removes it.
A/B runs matched the authors' look without the refine pass — add it only when
a job needs extra sharpness.Read the user's request (clothes state, desired mood, scene) → pick a tier → give a concrete pose, not a vague one. "Bold" is three levers combined: pose openness × camera angle × clothing/wet state.
| User asks for (examples) | Tier | Route ④ library pose families (--list-poses names) | Route ① prompt wording |
|---|---|---|---|
| 全着装、自然/编辑感 (standing, portrait, office/street) | L0 | Standing / Sitting / Walking / Close Up | standing with weight on one leg, hand in pocket; seated on a chair, legs crossed at the ankles |
| 泳装/湿身/海滩/浴室 (swimwear, wet, relaxed) | L1 | Squatting / Kneeling / Laying Back | crouching with knees apart, hands on the floor, looking back over the shoulder |
| 大胆/NSFW (nude + LoRA, low angle, "author style") | L2 | Kneeling / Laying Back / Prone / Splits / Crawling / Dancing on knees | standing with legs apart from a low angle; prone with hips lifted toward the camera; seated wide, leaning forward on elbows |
| 极端/特写构图 (crop, extreme low, overhead) | L3 | Splits / any L2 family + crop framing | extreme low angle looking up between open legs; overhead, lying flat with legs open |
Rules:
python3 scripts/run_vnccs_ui.py --list-poses (136 entries with file paths).python3 scripts/qwen_pose_test.py \
--mode edit --name pose_change --input /absolute/base.png \
--prompt "change her pose to kneeling on one knee, hands on hips, keep face hair and outfit" \
--cfg 3 --sampler er_sde --scheduler beta --steps 20 \
--out outputs/pose_change.png
CFG 3 is more stable for edit mode. SFW instruction prompts keep NSFW LoRAs from
triggering; add --lora qwen21-nsfw-image-edit.safetensors only when undressing.
python3 scripts/run_pose_transfer.py \
--char /absolute/character.png \
--pose-ref /absolute/doll_render.png \
--out outputs/pose_transfer.png [--seed N] [--steps 25]
The pose source must be a textureless 3D mannequin render — e.g. the
doll_*.png captures that route ④ saves under the ComfyUI output dir, or any
3D poser render of the target pose. Photos and illustrations as pose references
do NOT work: the model composites the reference person as a second person, or
redraws the reference person entirely (retested 2026-10-16 — all variants
failed).
Verified recipe (2026-10-16) — the script sets it up automatically:
replace the pose of <image 2> with the pose of <image 1>. keep the character of <image 2>;The VNCCS_PoseStudio node needs the ComfyUI web frontend for its 3D "live
capture"; the headless API fails with "Live capture timed out". So the runner
drives a CDP browser: load the official graph → set character image + pose
JSON → queue → collect outputs from disk. ~60–90 s each.
# list all 136 poses with resolved file paths
python3 scripts/run_vnccs_ui.py --list-poses
# run one pose on a character image (+ optional scene prompt)
python3 scripts/run_vnccs_ui.py --pose "squatting leaning back" \
[--char /absolute/face.png] [--prompt "on a rooftop at night, city bokeh"] [--timeout 900]
--pose takes the name/slug case-insensitively (crawling, Squatting Leaning Back, arabesque). 9 names exist in more than one repository
(Standing A, CloseUp A, …); qualify with <repo>/<category>/<name>
(exact keys printed by --list-poses, e.g.
miuproject_vnccs_poselibrary_main/standing/standing_a).
Scene prompt (--prompt): the capture prompt is rebuilt at execution
time from the scene document's export block (default template
Draw character from image2\n<lighting>\n<user_prompt>); --prompt "..."
injects export.user_prompt before the graph loads. Editing the
TextEncodeQwenImage21 widget or adding export.user_prompt to a library
pose file has no effect. To change the scene of an existing route ④ result,
re-run it through route ② (qwen_pose_test.py --mode edit).
The runner reaches a CDP browser through the OpenClaw adapter when present,
otherwise through the bundled scripts/browser_fallback.py (reuses a
reachable COMFY_BROWSER_CDP endpoint, else launches a throwaway headless
Chromium; COMFY_BROWSER_MODE=auto|attach|launch).
The runner re-indexes the pose library on every call — newly downloaded poses
are usable immediately. Each run writes <pose>_<stamp>.meta.json next to
the outputs and never clobbers previous results (unique comfy prefix per run).
Output: ./outputs/vnccs_ui/ (override with VNCCS_UI_OUT). The 3D doll is a
bare MakeHuman mannequin — nude prompts + pose transfer can produce nude
output (expected: the model reads the doll's state).
Custom poses from code: scripts/make_custom_pose.py loads a library
pose into the PoseStudio editor, adds bone rotations, and saves through the
editor's own Save (JSON + preview in
PoseLibrary/local_user_poses/poses/<category>/). The new pose works with
run_vnccs_ui.py --pose at once. --list-bones prints the base pose's
euler angles; pass the full library id when a name is not unique.
python3 scripts/make_custom_pose.py \
--base "MIUProject__VNCCS_PoseLibrary_Main/poses/Standing/Standing A" \
--name "Arms Out" --rotate upperarm_l:1:90 --rotate upperarm_r:1:-90
Pose fidelity caveat: each pose JSON carries its own cameraParams
(yaw/pitch/zoom); the generated image inherits that viewpoint. Poses whose
shape only reads from another angle (e.g. a true arabesque's extended back
leg) come out front-facing and ambiguous — rotate the doll in the UI and
re-run, or pick a pose that reads from the front.
systemctl --user status|restart comfyui.service). After installing new custom nodes, one restart is required.media_lock(exclusive=False, wait_timeout=...)) so they don't fight video
jobs on a shared machine; route ④ wraps the whole browser run in it.QwenImage21Cache and the host errors on it
(aimdo memory compile error), remove the node and rewire LoRA → KSampler
(the route ④ runner does this automatically in the browser).workflows/ while a run is
in flight; the harness works on in-memory copies anyway.ok: true and the output file is non-empty.downloads/samples/*_author.jpg; comparison-sheet
example: scripts/build_phase5_sheet.py).*.json meta file (harnesses
write one automatically for routes ①②③④).Last full verification: 2026-10-12 — route ① (4 author-prompt reproductions),
route ② (9/9 pose edits with identity preserved), route ④ (6 pose runs:
crawling, kneeling side, leaning back, sitting side, squatting leaning back,
arabesque — the last one verified for output only, pose-shape match unverified;
its doll capture turned out to be a stale legacy capture),
pose index count 136 == GET /vnccs/pose_library/list, pose-ladder A/B images
in references/pose_examples/.
Follow-up checks 2026-10-14: route ④ --prompt (scene follows the prompt, pose
preserved), bundled browser fallback launch path, and custom pose creation via
scripts/make_custom_pose.py (save + output verified).
Follow-up checks 2026-10-16 (route ③): 6 mannequin-reference transfers passed
(sit ×3 seeds, crawling, kneel-side, lean-back): single person, identity kept,
pose follows the render; 3 no-LoRA controls ignored the mannequin; photo and
illustration references still fail (composite / redraw of the reference
person). Script scripts/run_pose_transfer.py added and end-to-end tested.
No reviews yet. Tell others what you thought.
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.
<What it does, one line>. Trigger phrases: <phrases>.
The English summary is being prepared. Showing the original description.
Use this skill whenever the user wants to create or improve a presentation for an academic context — conference papers, seminar talks, thesis defenses, grant briefings, lab meetings, invited lectures, or any presentation where the audience will evaluate reasoning and evidence. Triggers include: 'conference talk', 'seminar slides', 'thesis defense', 'research presentation', 'academic deck', 'academic presentation'. Also triggers when the user asks to 'make slides' in combination with academic content (e.g., 'make slides for my paper on X', 'create a presentation for my dissertation defense', 'build a deck for my grant proposal'). This skill governs CONTENT and STRUCTURE decisions. For the technical work of creating or editing the .pptx file itself, also read the pptx SKILL.md.
The English summary is being prepared. Showing the original description.
Shortest English alias for web-adapt / universal-web-adaptation. Use this when adapting an unfamiliar public website generically before creating any site-specific rules.
The English summary is being prepared. Showing the original description.
Use this skill to audit CLI adapter projects (like opencli) for missing output fields, then batch-generate fixes and submit PRs. Turns AI agents into adapter quality reviewers.
The English summary is being prepared. Showing the original description.
Operate professional paid advertising across Google, Meta, YouTube, LinkedIn, TikTok, Microsoft, Apple, Amazon, Reddit, Pinterest, Snapchat, and X. Use for account intake, source-grounded audits, strategy, budget and measurement planning, creative production, experiments, reporting, monitoring, and explicitly approved campaign changes. Also trigger on PPC, paid social, retail media, attribution, tracking, landing pages, cross-platform conversion totals, negative keywords or search terms, beta-feature scoring, stale platform claims, API-token or credential setup, campaign deletion, and safe Claude Ads installation or uninstall.
The English summary is being prepared. Showing the original description.
Audit Amazon Ads profiles, regions, Sponsored Products, Sponsored Brands, Sponsored Display, DSP, portfolios, targeting, search terms, retail readiness, creative, budgets, ACOS, TACOS, reporting, and policy. Use for Amazon Ads, sponsored ads, Amazon PPC, ACOS, TACOS, ASIN advertising, Amazon DSP, or retail-media optimization.
The English summary is being prepared. Showing the original description.