Now liveThe Skillselion MCP - thousands of ranked skills, loaded into your agent mid-task. No install.Get it →
chanjing-ai avatar

Chanjing Text To Digital Person

  • 40 installs
  • 18 repo stars
  • Updated March 28, 2026
  • chanjing-ai/chan-skills

Generates AI portraits and talking videos via Chanjing text-to-digital-person APIs, with optional LoRA training and polling.

About

Calls Chanjing text-to-digital-person APIs to create AI portraits, turn images into talking videos, optionally train LoRA, and poll tasks. A developer uses it to produce a talking digital person from text or images.

  • Text-to-image, image-to-talking-video, optional LoRA training and polling
  • Explicit download only when requested; no ffmpeg dependency

Chanjing Text To Digital Person by the numbers

  • 40 all-time installs (skills.sh)
  • Ranked #927 of 1,335 Generative Media skills by installs in the Skillselion catalog
  • Data as of Jul 28, 2026 (Skillselion catalog sync)
npx skills add https://github.com/chanjing-ai/chan-skills --skill chanjing-text-to-digital-person

Add your badge

Show developers this skill is listed on Skillselion. Paste this into your README.

Listed on Skillselion
Installs40
repo stars18
Last updatedMarch 28, 2026
Repositorychanjing-ai/chan-skills

What it does

Generates AI portraits and talking videos via Chanjing text-to-digital-person APIs, with optional LoRA training and polling.

Files

SKILL.mdMarkdownGitHub ↗

Chanjing Text To Digital Person

功能说明

文生图、图生说话视频、可选 LoRA 训练与轮询;用户明确要求时下载生成物。凭据与权限见 `manifest.yaml`。脚本依赖 ffmpeg/ffprobe。

运行依赖

  • python3 与同仓库 scripts/*.py(含 _auth.py_task_api.py
  • ffmpeg/ffprobe 门控

环境变量与机器可读声明

  • 环境变量键名与说明:`manifest.yaml`environment 段)及本文
  • 变量、凭据模型、合规 `permissions``clientPermissions`、`agentPolicy``manifest.yaml`

使用命令

  • ClawHub(slug 以注册表为准):clawhub run chanjing-text-to-digital-person
  • 本仓库python skills/chanjing-text-to-digital-person/scripts/create_photo_task.py …(见 Standard Workflow

---

登记与审稿(单一事实来源)

路径、primaryEnv 省略、`persistAccessTokenOnDisk`、敏感字段、`agentPolicy`、可选 env 等:以 `manifest.yaml` 为准。实现上由 `_auth.py``_task_api.py` 与各 CLI 脚本承担;本篇从 When to Use 起写流程。

When to Use This Skill

当用户要做这些事时使用本 Skill:

  • 根据人物提示词生成数字人形象图
  • 把生成的人物图转成会说话的短视频
  • 查询文生图 / 图生视频 / LoRA 任务状态
  • 在用户明确要求时,把生成图片或视频下载到本地

如果需求是“上传真人素材训练定制数字人”,优先使用 chanjing-customised-person。 如果需求是“拿已有数字人做口播视频合成”,优先使用 chanjing-video-compose

Preconditions

执行本 Skill 前,必须先通过 chanjing-credentials-guard 完成 AK/SK 与 Token 校验。

本 Skill 与 guard 共用:

  • ~/.chanjing/credentials.json
  • https://open-api.chanjing.cc

无凭证时,脚本会自动打开蝉镜登录页(若同仓库存在则执行 `chanjing-credentials-guard/scripts/open_login_page.py`,否则 `webbrowser.open`),并提示本地执行 `chanjing_config.py`

审阅与安全(凭据)

Purpose / Credentials / Persistence 相关的逐项说明见 `manifest.yaml`(缺凭证时可能子进程调用 guard 的 `open_login_page.py` 等行为见 `clientPermissions`)。

Standard Workflow

主流程通常分两段,且都是异步任务:

1. 调用 create_photo_task.py 创建文生图任务,得到 photo_unique_id 2. 调用 poll_photo_task.py 轮询到成功,选一张 photo_path 3. 调用 create_motion_task.py 创建图生视频任务,得到 motion_unique_id 4. 调用 poll_motion_task.py 轮询到成功,得到最终 video_url 5. 只有在用户明确要求保存到本地时,才调用 download_result.py

可选扩展:

  • 若用户想做 LoRA 训练,调用 create_lora_task.pypoll_lora_task.py
  • poll_lora_task.py 成功后会返回一条 photo_task_id,可继续用 poll_photo_task.py 拿图

Covered APIs

本 Skill 当前覆盖:

  • POST /open/v1/aigc/photo
  • GET /open/v1/aigc/photo/task
  • GET /open/v1/aigc/photo/task/page
  • POST /open/v1/aigc/motion
  • GET /open/v1/aigc/motion/task
  • POST /open/v1/aigc/lora/task/create
  • GET /open/v1/aigc/lora/task

Scripts

脚本目录:

  • skills/chanjing-text-to-digital-person/scripts/

本仓库随附文件(勿与仅含 _auth.py 的精简包混淆)

完整包内含 `_auth.py``_task_api.py`(供任务脚本复用)及下列 `.py` CLI;请用 `python3 <路径>/<脚本名>.py` 调用(与仓库内其它蝉镜 skill 约定一致)。

文件名(仓库内)说明
_auth.py`credentials.json`、刷新并 写回 `access_token` / `expire_in`;缺 AK/SK 时尝试 `open_login_page.py`
_task_api.py任务 API 共用逻辑(由各 CLI import)
create_photo_task.py创建文生图任务 → photo_unique_id
get_photo_task.py单个文生图任务详情
list_tasks.py任务列表(type=1 photo,type=2 motion)
poll_photo_task.py轮询文生图至完成 → 默认首张图 URL
create_motion_task.py创建图生视频 → motion_unique_id
get_motion_task.py单个图生视频任务详情
poll_motion_task.py轮询图生视频至完成 → 默认视频 URL
create_lora_task.py创建 LoRA 训练 → lora_id
get_lora_task.pyLoRA 任务详情
poll_lora_task.py轮询 LoRA 至完成 → 默认首条 photo_task_id
download_result.py仅在需要落盘时:下载到 outputs/text-to-digital-person/(或 --output

若环境中 缺少 上表任一入口或 `_task_api.py`,属于 分发/打包不完整

Usage Examples

示例 1:文生图后直接图生视频

PHOTO_TASK_ID=$(python3 skills/chanjing-text-to-digital-person/scripts/create_photo_task.py \
  --age "Young adult" \
  --gender Female \
  --number-of-images 1 \
  --industry "教育培训" \
  --background "现代直播间背景" \
  --detail "短发,亲和力强,职业装" \
  --talking-pose "上半身特写,站立讲解")

PHOTO_URL=$(python3 skills/chanjing-text-to-digital-person/scripts/poll_photo_task.py \
  --unique-id "$PHOTO_TASK_ID")

MOTION_TASK_ID=$(python3 skills/chanjing-text-to-digital-person/scripts/create_motion_task.py \
  --photo-unique-id "$PHOTO_TASK_ID" \
  --photo-path "$PHOTO_URL" \
  --emotion "自然播报,语气清晰自信" \
  --gesture)

python3 skills/chanjing-text-to-digital-person/scripts/poll_motion_task.py \
  --unique-id "$MOTION_TASK_ID"

示例 2:LoRA 训练

LORA_ID=$(python3 skills/chanjing-text-to-digital-person/scripts/create_lora_task.py \
  --name "演示LoRA" \
  --photo-url https://example.com/1.jpg \
  --photo-url https://example.com/2.jpg \
  --photo-url https://example.com/3.jpg \
  --photo-url https://example.com/4.jpg \
  --photo-url https://example.com/5.jpg)

python3 skills/chanjing-text-to-digital-person/scripts/poll_lora_task.py \
  --lora-id "$LORA_ID"

Download Rule

下载是显式动作,不是默认动作:

  • poll_photo_task.pypoll_motion_task.py 成功后应先返回远端 URL
  • 不要自动下载结果文件
  • 只有当用户明确表达“下载到本地”“保存到 outputs”“帮我落盘”时,才执行 download_result.py

Output Convention

默认本地输出目录:

  • outputs/text-to-digital-person/

Additional Resources

更多接口细节见:

  • skills/chanjing-text-to-digital-person/reference.md
  • skills/chanjing-text-to-digital-person/examples.md

Related skills

This week in AI coding

Five minutes, every Monday - the tools, releases and tactics for developers.

unsubscribe anytime.