1实现原理 · 为什么它能做到
整个能力由单一 Python CLI 实现:argparse 定义 list/create/clone/check/manage_memory 等子命令,main() 分发到对应函数。
parser = argparse.ArgumentParser(description="HiFly Agent Skill Client")
认证读取环境变量 HIFLY_API_TOKEN;若未设置则回落到源码内硬编码的免费试用 token,并在 30 秒/带水印限制下工作。
token = os.environ.get("HIFLY_API_TOKEN")
所有请求指向固定后端 BASE_URL,并以 Bearer 头携带 token。
BASE_URL = "https://hfw-api.hifly.cc/api/v2/hifly"
视频/语音/头像均为异步任务:提交拿到 task_id 后,用 check_task_status/poll_avatar_task 轮询状态码(1 等待/2 处理/3 成功/4 失败),每 2 秒一次。
url = f"{BASE_URL}/{task_type}/task"
本地素材(图片/音频)先经两步上传:向 /tool/create_upload_url 申请上传 URL 与 file_id,再以 PUT 把文件内容传上去,然后以 file_id 提交生成。
url = f"{BASE_URL}/tool/create_upload_url"
说话照片(talking photo)是两段式流水线:先 /avatar/create_by_image 建自定义头像并轮询拿 avatar_id,再用该头像跑 TTS 出视频。
url = f"{BASE_URL}/avatar/create_by_image"
声音克隆以 voice_type=8 提交 /voice/create,任务完成后返回可复用的 Voice ID。
"voice_type": 8
本地别名记忆:把 avatar/voice 的别名映射持久化到脚本同目录的 memory.json,方便跨会话复用。
MEMORY_FILE = Path(__file__).parent / "memory.json"
2核心能力
3外部依赖
| 类型 | 依赖 |
|---|---|
| api | HiFly/Flyworks 数字人 API |
| network | 视频产物 CDN |
| package | requests(HTTP 客户端,requirements.txt) |
| cli | python3(运行 hifly_client.py) |
4风险提醒 风险提醒:橙色 · 评估后使用
- 用户肖像/声音素材外发第三方后端,涉及肖像权与声音权。 — talking photo 与声音克隆会把图片/音频上传至 hfw-api.hifly.cc;合成他人形象/声音需获得授权并披露 AI 生成。
- 源码内嵌明文默认 token。 — DEFAULT_TOKEN 硬编码于 hifly_client.py,属共享试用凭据,可能被滥用或随时失效。
- 生成产物带水印且限 30 秒,商用前需自备 token。 — demo token 限制由 references/authentication.md 明示。
- 错误处理较粗放:轮询与请求失败多处仅打印异常后返回。 — 如 upload_file/create_* 的 except 分支直接 return None,长任务中断恢复能力弱。
5第二遍独立确认
- [ok] 网络端点全部指向 hfw-api.hifly.cc — requests.get/post/put 的 url 均由 BASE_URL 或上传返回的 upload_url 构造,扫到 11 处请求调用,无额外域名。
- [ok] 凭证读取点 — 仅 get_token() 读 HIFLY_API_TOKEN,源码第 15 行;默认 token 第 11 行硬编码。
- [ok] 写盘面 — 仅 save_memory 写 memory.json(第 34 行);未见其它文件写入。
- [ok] 是否有隐藏/混淆脚本 — 目录清单仅 9 个文本文件,无二进制/混淆体;扫描沙箱与危险旗标 0 命中。
- [ok] 能力声明与代码相符 — SKILL/README 声称的公共头像、说话照片、声音克隆在脚本中均有对应函数与端点。
- [ok] 默认 token 有效性声明 — 源码与 references/authentication.md 一致:demo token 自动启用,30s 上限且带水印。
- [ok] 安装方式 — README 的 `npx skills add Flyworks-AI/skills` 属宿主安装行为,非本目录执行,故不计入档位。
6结论
a042e06284f41218…dd0bf35595