@docyrus/animaguru 0.10.0 → 0.13.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -222,6 +222,49 @@ animaguru assets submit PROJECT_ID --file speech.json --model gemini-3.8-flash-t
222
222
 
223
223
  `--model` overrides the file's model. Unrelated type-specific flags are rejected rather than ignored. Individual downloads and complete ZIP exports refuse to overwrite existing files. Generated files are saved in the project's `assets/<id>/` directory and are shared with the web Assets workspace.
224
224
 
225
+ ## HeyGen avatars
226
+
227
+ CLI 0.13.0 adds `avatars` for HeyGen's avatar API. A group is a character; its looks are outfits, poses or styles, and a look ID is what HeyGen renders with. Any project can browse HeyGen's public catalog. An avatar you create belongs to the project that created it: only that project lists, changes or deletes it.
228
+
229
+ ```sh
230
+ animaguru avatars list PROJECT_ID --limit 10
231
+ animaguru avatars looks PROJECT_ID --avatar-type studio_avatar
232
+ animaguru avatars list PROJECT_ID --ownership private
233
+
234
+ # A synthetic character from a description.
235
+ animaguru avatars create PROJECT_ID --type prompt --name "Ada" \
236
+ --prompt "Woman in her early 30s, warm smile, navy blazer, bright studio, soft key light" \
237
+ --aspect-ratio 16:9 --dry-run
238
+ # A new outfit or setting for one of the project's avatars.
239
+ animaguru avatars create PROJECT_ID --type prompt --name "Ada, keynote" \
240
+ --look LOOK_ID --prompt "On a conference stage under a spotlight" --yes
241
+ # A photo avatar from a saved image, an HTTPS URL or a local file.
242
+ animaguru avatars create PROJECT_ID --type photo --name "Sam" \
243
+ --file portrait.jpg --subject-consent --yes
244
+ animaguru avatars wait PROJECT_ID LOOK_ID
245
+ ```
246
+
247
+ `create` and `add-looks` return the new look IDs. Looks start `processing`; `avatars wait` polls until HeyGen finishes (`completed`) or fails. `--file` and `--reference-images` take a project image's SHA (from `assets list`, or a character's `art`), an HTTPS URL HeyGen downloads (up to 32 MB), or a local file sent inline (up to 8 MB). Photos and footage show a real person: pass `--subject-consent` only when that person agreed to become an avatar.
248
+
249
+ A digital twin trains on footage of a real person (about two minutes of natural talking: a project video SHA, a URL or a local file) and clones their voice. It renders only after that person records consent on camera:
250
+
251
+ ```sh
252
+ animaguru avatars create PROJECT_ID --type digital_twin --name "Sam" \
253
+ --file https://example.com/sam-footage.mp4 --subject-consent --yes
254
+ animaguru avatars consent PROJECT_ID GROUP_ID # a 24-hour link for that person
255
+ animaguru avatars get PROJECT_ID --group GROUP_ID # consentStatus: pending, accepted or rejected
256
+ ```
257
+
258
+ Look Packs dress one of the project's looks in a themed set of five looks; a single template makes two. `avatars templates` lists their IDs, each in a female and a male variant:
259
+
260
+ ```sh
261
+ animaguru avatars templates
262
+ animaguru avatars add-looks PROJECT_ID --look LOOK_ID \
263
+ --template 5a8e6be843ee4321a014946bf62aa322 --aspect-ratio 9:16 --yes
264
+ ```
265
+
266
+ Credits are charged once HeyGen accepts a request: 132 for a photo or prompt avatar, 213 for a digital twin, and 132 for each generated look (a Look Pack makes five). `--dry-run` validates and estimates offline; the server checks files, avatar ownership and credits before calling HeyGen. Paid requests carry a retry key, so a retried request is not charged twice. `avatars rename PROJECT_ID LOOK_ID --name NAME` and `avatars voice PROJECT_ID GROUP_ID --voice VOICE_ID` change the project's own avatars. `avatars delete PROJECT_ID --group GROUP_ID --yes` (or `--look LOOK_ID`) deletes for good; deleting an avatar's last look deletes the avatar. The server needs `AI_PROVIDER_KEY_HEYGEN`.
267
+
225
268
  ## Typed job files
226
269
 
227
270
  Use `animaguru jobs submit PROJECT_ID --file job.json --yes`. The server and CLI validate the same schema. Available job bodies:
@@ -334,6 +377,47 @@ Tokens, client configuration and resumable receipts stay under `~/.config/animag
334
377
 
335
378
  Only one YouTube command may run at a time. Normal cancellation releases its lock. After a forced process kill, check that no YouTube command is running before removing `youtube/operation.lock` in the configuration directory.
336
379
 
380
+ ## Cloud sync and versions
381
+
382
+ CLI 0.11.0 adds `animaguru cloud` for Individual Pro and Team plans. It saves a video workspace, or a standalone video project, to AnimaGuru with every version. Use it to continue on another computer, work with your team and return to earlier versions. Personal cloud projects need your own Individual Pro or Team plan. A team's cloud projects need the team owner's Team plan, and every member can then save and download them.
383
+
384
+ ```sh
385
+ animaguru auth login
386
+ animaguru workspaces use TEAM_ID # optional: create the cloud project in a team
387
+ animaguru cloud link # creates a cloud project for this folder
388
+ animaguru cloud push -m "First cut" # saves a version
389
+ animaguru cloud status # unsaved changes, and whether the cloud is newer
390
+ animaguru cloud pull # brings in versions saved elsewhere
391
+ animaguru cloud versions # newest first, with who saved each one
392
+ animaguru cloud restore VERSION --path animations/intro/src
393
+ animaguru cloud push # saves the restored files as the newest version
394
+ animaguru cloud clone PROJECT_ID my-films # another computer; run npm install afterwards
395
+ animaguru cloud list
396
+ ```
397
+
398
+ Run the commands anywhere inside the workspace; `--dir PATH` chooses another folder. What is not synced:
399
+
400
+ - `node_modules/`, `dist/`, `production/exports/` and `production/frames/`;
401
+ - `.env` files except `.env.example`, `.npmrc`, `*credentials*.json`, `*secrets*.json`, keys and logs;
402
+ - anything matched by `.gitignore` or `.animaguruignore`;
403
+ - symbolic links.
404
+
405
+ Each version is a Git commit in the project's own Cloudflare Artifacts repository. Where a file is stored depends on its type, not its size:
406
+
407
+ - **Media** (images except SVG, video, audio and ZIP bundles) is uploaded once by SHA-256 at any size, however many versions use it, and Git keeps a small pointer. Media counts toward the plan's media storage: 20 GB for Individual Pro and 100 GB for each team.
408
+ - **Work files** (code, configs, briefs, JSON, SVG, fonts and everything else) are stored in Git at any size up to Artifacts' 32 MB per-file limit. A larger work file stops the push and is named; add it to `.animaguruignore` or move it.
409
+
410
+ The sync store lives in `.animaguru/sync/`, separate from any Git repository you keep for the folder, and linking adds it to `.gitignore`. Git credentials are short-lived and repository-scoped.
411
+
412
+ `push` refuses when the cloud has a newer version; `pull` brings it in first. Your other unsaved changes stay. When the same file changed on both sides, `pull` stops and lists it. Then:
413
+
414
+ - `--prefer local` keeps yours, and the next push replaces the cloud copy;
415
+ - `--prefer cloud` takes the cloud's, and keeps your copy in `.animaguru/sync/backups/`.
416
+
417
+ `restore` makes the folder, or the `--path` files and folders, match an earlier version without rewriting history. Push afterwards to save the result as the newest version. Replacing unsaved changes requires `--yes` and keeps backups.
418
+
419
+ Cloud files are never written into ignored or secret paths, through links, or outside the folder. If a plan ends, cloud projects stay readable: list, versions, pull, clone and download still work, but pushing waits until the plan is active again. `cloud unlink` stops syncing a folder without touching the cloud. `cloud delete PROJECT_ID --yes` deletes the project, all its versions and its stored files. The studio's Cloud page lists projects, versions and their files, with downloads.
420
+
337
421
  ## One brand, many animations
338
422
 
339
423
  ```sh