@docyrus/animaguru 0.9.0 → 0.11.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/NOTICE.md +1272 -0
- package/README.md +51 -0
- package/dist/animaguru.js +20633 -456
- package/package.json +1 -1
- package/skills/animaguru/SKILL.md +18 -0
- package/skills/animaguru-video/SKILL.md +5 -1
- package/templates/video/AGENTS.md +5 -1
- package/templates/video/CLAUDE.md +1 -1
- package/templates/video/README.md +5 -1
- package/templates/video/WORKSPACE-AGENTS.md +1 -0
- package/templates/video/gitignore +1 -0
package/README.md
CHANGED
|
@@ -273,6 +273,16 @@ animaguru submit --file production/exports/film.zip --dry-run
|
|
|
273
273
|
|
|
274
274
|
An optional positional directory selects the workspace; file and poster paths are relative to it. HTML5 exports upload the compiled animation and local media; source code, project instructions, credentials and generation receipts are not submitted. MP4 and AnimaGuru HTML5 ZIP are both supported. The CLI prints the video ID and full watch URL. Public HTML5 videos offer embed markup on the watch page; private sharing requires the selected AnimaGuru users to sign in.
|
|
275
275
|
|
|
276
|
+
MP4 subtitles: CLI 0.10.0 uploads an MP4's subtitles with it, and the AnimaGuru player shows them over the picture with a CC button to turn them off and a menu when there are several languages. The MP4 itself stays clean. With the default `--subtitles auto`, `submit --file FILM.mp4` adds `FILM.vtt` (or else `FILM.srt`), which `npm run export:mp4` writes beside it. `--subtitles FILE` chooses another `.vtt`/`.srt` file and `--subtitles none` skips them. The language comes from `--subtitle-language`, a WebVTT `Language:` header, the export receipt (`FILM.json`) or `film.config.json`. The file is checked before any video bytes are sent, and the dry run lists it. An MP4's width, height and duration now come from the MP4 itself and its default title from the export receipt, so another language's cut no longer takes the current `film.config.json` values. Burned-in `--burn-captions` exports have no subtitle files, so nothing is added. To add, replace or remove one language on an uploaded MP4:
|
|
277
|
+
|
|
278
|
+
```sh
|
|
279
|
+
animaguru videos subtitles VIDEO_ID --file production/exports/film-tr.vtt --yes # language from the file or its export receipt
|
|
280
|
+
animaguru videos subtitles VIDEO_ID --file subtitles.srt --language de --yes
|
|
281
|
+
animaguru videos subtitles VIDEO_ID --remove de --yes
|
|
282
|
+
```
|
|
283
|
+
|
|
284
|
+
Each upload of up to 1 MiB is stored as WebVTT, up to 20 languages per video. HTML5 films draw their own captions and take no subtitle files. New subtitles on a public video send it back for staff review, like a new poster; removing a language does not.
|
|
285
|
+
|
|
276
286
|
To request public gallery publication, upload privately, open the video in My videos on the website, choose Share → Public, and accept the public video sharing agreement. Staff must approve the submission before anyone else can access its public link, download or embed. Direct CLI public-sharing requests without agreement acceptance are refused by the API.
|
|
277
287
|
|
|
278
288
|
`videos list --scope mine|shared|public` lists films. Owners can edit metadata, change visibility and replace recipients on the website, or use `videos share VIDEO_ID --visibility private --share "alex@example.com" --yes`. `videos delete VIDEO_ID --yes` removes the film and files. Making a film private or removing a recipient revokes access to existing playback links.
|
|
@@ -324,6 +334,47 @@ Tokens, client configuration and resumable receipts stay under `~/.config/animag
|
|
|
324
334
|
|
|
325
335
|
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.
|
|
326
336
|
|
|
337
|
+
## Cloud sync and versions
|
|
338
|
+
|
|
339
|
+
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.
|
|
340
|
+
|
|
341
|
+
```sh
|
|
342
|
+
animaguru auth login
|
|
343
|
+
animaguru workspaces use TEAM_ID # optional: create the cloud project in a team
|
|
344
|
+
animaguru cloud link # creates a cloud project for this folder
|
|
345
|
+
animaguru cloud push -m "First cut" # saves a version
|
|
346
|
+
animaguru cloud status # unsaved changes, and whether the cloud is newer
|
|
347
|
+
animaguru cloud pull # brings in versions saved elsewhere
|
|
348
|
+
animaguru cloud versions # newest first, with who saved each one
|
|
349
|
+
animaguru cloud restore VERSION --path animations/intro/src
|
|
350
|
+
animaguru cloud push # saves the restored files as the newest version
|
|
351
|
+
animaguru cloud clone PROJECT_ID my-films # another computer; run npm install afterwards
|
|
352
|
+
animaguru cloud list
|
|
353
|
+
```
|
|
354
|
+
|
|
355
|
+
Run the commands anywhere inside the workspace; `--dir PATH` chooses another folder. What is not synced:
|
|
356
|
+
|
|
357
|
+
- `node_modules/`, `dist/`, `production/exports/` and `production/frames/`;
|
|
358
|
+
- `.env` files except `.env.example`, `.npmrc`, `*credentials*.json`, `*secrets*.json`, keys and logs;
|
|
359
|
+
- anything matched by `.gitignore` or `.animaguruignore`;
|
|
360
|
+
- symbolic links.
|
|
361
|
+
|
|
362
|
+
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:
|
|
363
|
+
|
|
364
|
+
- **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.
|
|
365
|
+
- **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.
|
|
366
|
+
|
|
367
|
+
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.
|
|
368
|
+
|
|
369
|
+
`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:
|
|
370
|
+
|
|
371
|
+
- `--prefer local` keeps yours, and the next push replaces the cloud copy;
|
|
372
|
+
- `--prefer cloud` takes the cloud's, and keeps your copy in `.animaguru/sync/backups/`.
|
|
373
|
+
|
|
374
|
+
`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.
|
|
375
|
+
|
|
376
|
+
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.
|
|
377
|
+
|
|
327
378
|
## One brand, many animations
|
|
328
379
|
|
|
329
380
|
```sh
|