@mevdragon/vidfarm-devcli 0.2.9 → 0.2.10
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/SKILL.developer.md +92 -4
- package/package.json +1 -1
package/SKILL.developer.md
CHANGED
|
@@ -144,16 +144,18 @@ This boundary matters because job results are saved in SQLite, returned by REST
|
|
|
144
144
|
If the user gives you a media file, a screenshot, a folder of source assets, or a link to an original viral post and says some variant of "turn this into a template", you should default to this workflow:
|
|
145
145
|
|
|
146
146
|
1. inspect the source media and extract the repeatable format
|
|
147
|
-
2.
|
|
148
|
-
3.
|
|
149
|
-
4.
|
|
150
|
-
5. run `analyze-visual-dna`
|
|
147
|
+
2. start the native harness workflow with `vidfarm-devcli autocreate-template <input_path> <output_path>`
|
|
148
|
+
3. review the generated run folder, manifest, and `agent_prompt.md`
|
|
149
|
+
4. generate the preservation decision, production graph, and template plan
|
|
150
|
+
5. run or consume `analyze-viral-dna` and `analyze-visual-dna`
|
|
151
151
|
6. implement the template operations and jobs
|
|
152
152
|
7. wire prompt logic, provider usage, storage writes, and local Remotion output
|
|
153
153
|
8. expose the template through the standard REST routes
|
|
154
154
|
9. validate the template locally with `validate-template` plus at least one real job run
|
|
155
155
|
10. update the template-local `SKILL.md` so future agents can operate it
|
|
156
156
|
|
|
157
|
+
Use `generate-template` directly only when the developer already knows the template architecture and wants a plain starter scaffold. Use `autocreate-template` when source media needs to be analyzed into a reusable format.
|
|
158
|
+
|
|
157
159
|
Do not stop after scaffolding. The expected outcome is a runnable template, not just a folder.
|
|
158
160
|
|
|
159
161
|
If the user gives revision feedback in natural language, treat that as a normal template-authoring input, not as a vague suggestion. Example revision prompts:
|
|
@@ -491,6 +493,63 @@ Keep the identifiers separate:
|
|
|
491
493
|
- `about.title` is the user-facing display title and should not be prefixed with `Vidfarm Template` unless that phrase is genuinely part of the brand or concept
|
|
492
494
|
- avoid redundant titles like `Vidfarm Template UGC Hooks V1` when `UGC Hooks V1` is the actual display name
|
|
493
495
|
|
|
496
|
+
### 3a. Use the native auto-create harness for media-to-template work
|
|
497
|
+
|
|
498
|
+
When the developer says "autocreate a template based on media in `<input_path>` and output template to `<output_path>`", use:
|
|
499
|
+
|
|
500
|
+
```bash
|
|
501
|
+
npx @mevdragon/vidfarm-devcli autocreate-template <input_path> <output_path>
|
|
502
|
+
```
|
|
503
|
+
|
|
504
|
+
Alias:
|
|
505
|
+
|
|
506
|
+
```bash
|
|
507
|
+
npx @mevdragon/vidfarm-devcli autocreate <input_path> <output_path>
|
|
508
|
+
```
|
|
509
|
+
|
|
510
|
+
The command accepts either positional paths or explicit flags:
|
|
511
|
+
|
|
512
|
+
```bash
|
|
513
|
+
npx @mevdragon/vidfarm-devcli autocreate-template \
|
|
514
|
+
--input-path ./drafts/my_format \
|
|
515
|
+
--output-path ./templates/vidfarm_template_my_format \
|
|
516
|
+
--link-to-original "https://www.tiktok.com/@example/video/1234567890"
|
|
517
|
+
```
|
|
518
|
+
|
|
519
|
+
What this does:
|
|
520
|
+
|
|
521
|
+
- creates `auto-create-templates/runs/<run_id>/`
|
|
522
|
+
- stages source notes and preview media under `source/`
|
|
523
|
+
- creates the standard analyzer artifact folders: `frames`, `audio`, `transcripts`, `ocr`, `motion`, `dna`, `extraction`, and `plan`
|
|
524
|
+
- snapshots the current reusable harness files into `runs/<run_id>/harness/` for traceability
|
|
525
|
+
- runs basic `ffprobe`/`ffmpeg` extraction when source video and local tools are available
|
|
526
|
+
- scaffolds the output template with the same starter logic as `generate-template`
|
|
527
|
+
- writes `manifest.json` and `agent_prompt.md` as the agent handoff
|
|
528
|
+
|
|
529
|
+
Useful options:
|
|
530
|
+
|
|
531
|
+
- `--run-id <id>`: choose the run folder name
|
|
532
|
+
- `--slug-id <slug>`: override the slug derived from the output folder
|
|
533
|
+
- `--template-id <uuid>`: pin the template UUID
|
|
534
|
+
- `--skip-dna-analysis`: scaffold without calling Gemini DNA analysis
|
|
535
|
+
- `--skip-media-probes`: skip local `ffprobe`/`ffmpeg` artifact generation
|
|
536
|
+
- `--skip-scaffold`: create only the run artifacts and handoff prompt
|
|
537
|
+
- `--harness-dir <path>`: use a local harness checkout other than `auto-create-templates/`
|
|
538
|
+
- `--force`: replace an existing output template folder
|
|
539
|
+
|
|
540
|
+
After running `autocreate-template`, continue the harness workflow instead of stopping at scaffold:
|
|
541
|
+
|
|
542
|
+
1. inspect `auto-create-templates/runs/<run_id>/agent_prompt.md`
|
|
543
|
+
2. create `dna/preservation_decision.json`
|
|
544
|
+
3. create `extraction/production_graph.json` matching `production-graph.schema.json`
|
|
545
|
+
4. create `plan/template_plan.json` matching `template-plan.schema.json`
|
|
546
|
+
5. implement `src/template.ts`, metadata, prompts, operations, jobs, and template-local `SKILL.md`
|
|
547
|
+
6. run `validate-template` and at least one real local job
|
|
548
|
+
|
|
549
|
+
The reusable harness lives in `auto-create-templates/AUTO_CREATE_TEMPLATES.md`. It is intentionally included in the devcli package as editable source material. Future improvements to the harness should be made there; each auto-create run stores a snapshot of the harness files used for that run so older runs remain explainable.
|
|
550
|
+
|
|
551
|
+
### 3b. Generate a plain starter template
|
|
552
|
+
|
|
494
553
|
Example:
|
|
495
554
|
|
|
496
555
|
```bash
|
|
@@ -852,6 +911,14 @@ Required fields checklist:
|
|
|
852
911
|
|
|
853
912
|
For TikTok-native captions, use the platform caption standard exposed by `vidfarm-devcli session` under `starter_style_options`.
|
|
854
913
|
|
|
914
|
+
Check the currently installed CLI values with:
|
|
915
|
+
|
|
916
|
+
```bash
|
|
917
|
+
npx @mevdragon/vidfarm-devcli session
|
|
918
|
+
```
|
|
919
|
+
|
|
920
|
+
The current standard version is `2026-05-30`. The CLI response includes `caption_standard_version`, `fonts`, `text_background_colors`, `presets`, `package_dependencies`, the source standard file, and the starter template style file.
|
|
921
|
+
|
|
855
922
|
Canonical font IDs:
|
|
856
923
|
|
|
857
924
|
- `tiktok_sans_semibold`: default native TikTok caption font, backed by `@fontsource/tiktok-sans` or the bundled `TikTokSans-SemiBold.ttf` starter asset
|
|
@@ -866,6 +933,21 @@ Legacy aliases remain accepted for older starters:
|
|
|
866
933
|
- `montserrat` -> `montserrat_semibold`
|
|
867
934
|
- `source_code_pro` -> `source_code_pro_bold`
|
|
868
935
|
|
|
936
|
+
Font package dependencies exposed by the CLI:
|
|
937
|
+
|
|
938
|
+
- `@fontsource/tiktok-sans`
|
|
939
|
+
- `@fontsource/montserrat`
|
|
940
|
+
- `@fontsource/source-code-pro`
|
|
941
|
+
- `@fontsource/libre-baskerville`
|
|
942
|
+
|
|
943
|
+
Bundled starter assets may also be available for template-local rendering:
|
|
944
|
+
|
|
945
|
+
- `TikTokSans-SemiBold.ttf`
|
|
946
|
+
- `Montserrat[wght].ttf`
|
|
947
|
+
- `SourceCodePro[wght].ttf`
|
|
948
|
+
- `Yesteryear-Regular.ttf`
|
|
949
|
+
- `Abel-Regular.ttf`
|
|
950
|
+
|
|
869
951
|
Canonical text background color IDs:
|
|
870
952
|
|
|
871
953
|
- `black`: `#000000`
|
|
@@ -884,6 +966,12 @@ Canonical text background color IDs:
|
|
|
884
966
|
- `light_gray`: `#92979E`
|
|
885
967
|
- `dark_gray`: `#333333`
|
|
886
968
|
|
|
969
|
+
Canonical style presets:
|
|
970
|
+
|
|
971
|
+
- `tiktok_native_white`: TikTok Sans SemiBold, white fill, no color chip, native black shadow
|
|
972
|
+
- `tiktok_native_chip`: TikTok Sans SemiBold, white fill, red default color chip, native black shadow
|
|
973
|
+
- `tiktok_editor_gray`: TikTok Sans SemiBold, dark fill, light gray default chip, no shadow
|
|
974
|
+
|
|
887
975
|
Templates that expose caption styling should use these IDs in `configSchema`, operation payloads, manifests, and docs instead of inventing local names or hardcoding unrelated font stacks. If a template intentionally uses a format-specific typography system, document the exception in the template-local `SKILL.md`.
|
|
888
976
|
|
|
889
977
|
The caption standard is a default, not a hard lock. Templates may support `captionFont: "custom"` or template-specific text rendering when the user explicitly needs typography outside the standard. In that case, keep the standard options available, document the custom fields, and prefer bundled or template-local font assets over system fonts or remote Google Fonts URLs.
|