pixelkiln 0.68.1 → 0.69.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 +1 -1
- package/dist/cli.js +250 -18
- package/dist/cli.js.map +1 -1
- package/dist/index.cjs +31 -3
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +73 -58
- package/dist/index.d.ts +73 -58
- package/dist/index.js +31 -3
- package/dist/index.js.map +1 -1
- package/docs/CLI.md +41 -13
- package/docs/REVISIONS.md +10 -4
- package/package.json +1 -1
- package/skills/pixelkiln/SKILL.md +2 -2
- package/skills/pixelkiln/references/pixellab.md +2 -1
- package/skills/pixelkiln/references/revisions.md +5 -1
package/docs/CLI.md
CHANGED
|
@@ -6,8 +6,8 @@ pixelkiln <command> [options]
|
|
|
6
6
|
|
|
7
7
|
Unknown commands, positional arguments, and flags are errors. The only
|
|
8
8
|
positional words accepted are a command's own subcommands (`refine approve`,
|
|
9
|
-
`workspace add <manifest>`, and the like)
|
|
10
|
-
path. Repeated `--style`, `--only`, `--claims`, and `--output-role` values
|
|
9
|
+
`workspace add <manifest>`, and the like), `estimate-skeleton`'s one image
|
|
10
|
+
path, and `skeleton-preview`'s keypoints file or asset id. Repeated `--style`, `--only`, `--claims`, and `--output-role` values
|
|
11
11
|
accumulate; comma-separated values work too. This strict parsing prevents a misspelled filter
|
|
12
12
|
from widening a paid run.
|
|
13
13
|
|
|
@@ -55,6 +55,7 @@ Which command:
|
|
|
55
55
|
| shrink upscaled outside art to its native grid before using it as a reference | `pixelkiln unzoom --from refs/knight-512.png --out refs/knight.png` |
|
|
56
56
|
| generate a pixel font (`.ttf` plus glyph atlas) | `pixelkiln font --description "warm orange arcade font" --out fonts/arcade` |
|
|
57
57
|
| start an `animate-skeleton` keypoints file from an image | `pixelkiln estimate-skeleton poses/hero.png --out poses/hero-swing.json` |
|
|
58
|
+
| see a keypoints file's poses over the source before paying | `pixelkiln skeleton-preview hero-swing` |
|
|
58
59
|
| work across several projects | `pixelkiln workspace add ../other/pixelkiln.manifest.json`, then `--workspace` on `gallery` and `salvage` |
|
|
59
60
|
|
|
60
61
|
Every command takes `--manifest <file>` when the manifest is not in the
|
|
@@ -875,7 +876,8 @@ See [derived artifacts](./ARTIFACTS.md) and [tiles](./TILES.md).
|
|
|
875
876
|
Three commands call PixelLab on loose files rather than manifest assets. None
|
|
876
877
|
reads the manifest or touches the lockfile; all three load `PIXELLAB_API_KEY`
|
|
877
878
|
from the environment or a `.env.local`/`.env` beside `--manifest` or in the
|
|
878
|
-
working directory, the same as every other command.
|
|
879
|
+
working directory, the same as every other command. A fourth,
|
|
880
|
+
`skeleton-preview`, is their local companion and calls nothing.
|
|
879
881
|
|
|
880
882
|
### `unzoom`
|
|
881
883
|
|
|
@@ -929,19 +931,44 @@ an image, so there is nothing for the lockfile's provenance model to hold.
|
|
|
929
931
|
### `estimate-skeleton`
|
|
930
932
|
|
|
931
933
|
```bash
|
|
932
|
-
pixelkiln estimate-skeleton <image> [--out keypoints.json]
|
|
934
|
+
pixelkiln estimate-skeleton <image> [--out keypoints.json] [--frames 4] [--force]
|
|
933
935
|
```
|
|
934
936
|
|
|
935
937
|
PixelLab only. Derives an 18-joint skeleton from an image via
|
|
936
|
-
`/estimate-skeleton
|
|
937
|
-
|
|
938
|
-
|
|
939
|
-
|
|
940
|
-
|
|
941
|
-
|
|
942
|
-
|
|
943
|
-
|
|
944
|
-
|
|
938
|
+
`/estimate-skeleton`. The image must be square at 16, 32, 64, 128, or 256
|
|
939
|
+
pixels, the sizes the endpoint takes; anything else is refused before the
|
|
940
|
+
call. Same category as `balance`: a direct, un-budgeted account call outside
|
|
941
|
+
the manifest/plan/lock pipeline — no manifest is read beyond locating
|
|
942
|
+
`.env.local`, and nothing is written to a lockfile.
|
|
943
|
+
|
|
944
|
+
The output is a whole keypoints file, the shape an `animate-skeleton`
|
|
945
|
+
revision's `keypointsFile` must be (see
|
|
946
|
+
[Controlled asset revisions](./REVISIONS.md#skeleton-driven-animation)): the
|
|
947
|
+
estimated pose as `firstFrameKeypoints`, and `--frames` copies of it (3–15,
|
|
948
|
+
default 4) as the frames to move into the motion. It prints, or writes to
|
|
949
|
+
`--out`; `--out` refuses to replace an existing file, which is usually hand
|
|
950
|
+
edits, unless `--force` is given.
|
|
951
|
+
|
|
952
|
+
### `skeleton-preview`
|
|
953
|
+
|
|
954
|
+
```bash
|
|
955
|
+
pixelkiln skeleton-preview <keypoints.json> [--from image.png] [--out sheet.png]
|
|
956
|
+
pixelkiln skeleton-preview <asset> [--style <id>] [--out sheet.png]
|
|
957
|
+
```
|
|
958
|
+
|
|
959
|
+
Draws every pose of a keypoints file over its source image as one PNG, the
|
|
960
|
+
starting pose first at full strength and each frame after it over a dimmed
|
|
961
|
+
copy. Right-side bones are orange, left-side blue, the head and spine white.
|
|
962
|
+
Local and free: nothing is sent anywhere. Given an `animate-skeleton` asset
|
|
963
|
+
id, it reads the revision's `keypointsFile` and source image from the
|
|
964
|
+
manifest; given a file, `--from` names the image (without one, poses are drawn
|
|
965
|
+
on a plain ground). The sheet is written beside the keypoints file as
|
|
966
|
+
`<name>.preview.png` unless `--out` says otherwise. A file that does not parse
|
|
967
|
+
fails with the same message `plan` would give.
|
|
968
|
+
|
|
969
|
+
Use it after `estimate-skeleton` and after every hand edit: PixelKiln cannot
|
|
970
|
+
check that the starting pose matches what the image shows, and a mismatch
|
|
971
|
+
degrades every generated frame without an error.
|
|
945
972
|
|
|
946
973
|
## Utility commands
|
|
947
974
|
|
|
@@ -958,6 +985,7 @@ Print the package version. `-v` is an alias.
|
|
|
958
985
|
| Option | Applies to | Meaning |
|
|
959
986
|
|---|---|---|
|
|
960
987
|
| `--manifest <path>` | manifest commands | Manifest path; defaults to `pixelkiln.manifest.json`. |
|
|
988
|
+
| `--frames <n>` | `estimate-skeleton` | Frames to scaffold after the estimated pose, 3–15; default 4. |
|
|
961
989
|
| `--lock <path>` | manifest commands | Lock path; defaults beside the manifest. |
|
|
962
990
|
| `--style a,b` | most workflows | Restrict styles; repeatable. |
|
|
963
991
|
| `--only id1,id2` | most workflows | Restrict asset ids; repeatable. An `animation.directions` shorthand id selects every loop and mirror it expands into. |
|
package/docs/REVISIONS.md
CHANGED
|
@@ -344,10 +344,16 @@ inline pixels. It must match the shape `src/skeleton.ts`'s `SkeletonSetSchema`
|
|
|
344
344
|
validates: `{"firstFrameKeypoints": [...18 joints], "frames": [[...18
|
|
345
345
|
joints], ...3 to 15 of them]}`, each joint `{"label": "RIGHT KNEE", "x": 0.52,
|
|
346
346
|
"y": 0.71, "z_index": 9, "depth": 4}` (`depth` optional — PixelLab fills it
|
|
347
|
-
from `skeletonTemplate`, default `mannequin`, when omitted).
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
347
|
+
from `skeletonTemplate`, default `mannequin`, when omitted). `label` is one
|
|
348
|
+
of PixelLab's 18 joints (`NOSE`, `NECK`, `RIGHT`/`LEFT` `SHOULDER`, `ELBOW`,
|
|
349
|
+
`ARM` for the wrist, `HIP`, `KNEE`, `LEG` for the ankle, `EYE`, `EAR`), each
|
|
350
|
+
exactly once per pose; a misspelled or repeated joint fails when the manifest
|
|
351
|
+
loads. Bootstrap this file with
|
|
352
|
+
`pixelkiln estimate-skeleton <image> --out poses/hero-swing.json` (see
|
|
353
|
+
[CLI reference](./CLI.md#estimate-skeleton)), which writes the estimated pose
|
|
354
|
+
and four copies of it as frames, then move joints frame by frame. Check each
|
|
355
|
+
edit with `pixelkiln skeleton-preview hero-swing`, which draws every pose
|
|
356
|
+
over the source image, locally and for free.
|
|
351
357
|
|
|
352
358
|
`direction` is **required** for this mode (unlike `animate-pixminimax`,
|
|
353
359
|
where it is optional). `frames`/`fps`/`lastFrame`/`enhancePrompt` are all
|
package/package.json
CHANGED
|
@@ -111,8 +111,8 @@ Read only the reference needed for the current decision:
|
|
|
111
111
|
|
|
112
112
|
- For PixelLab configuration, generators (including `uiElement` for single UI
|
|
113
113
|
pieces and `imageProFlash` for styled stills), costs, alpha behavior,
|
|
114
|
-
account operations, or the `unzoom`, `font`,
|
|
115
|
-
utilities, read [references/pixellab.md](references/pixellab.md). For a
|
|
114
|
+
account operations, or the `unzoom`, `font`, `estimate-skeleton`, and
|
|
115
|
+
`skeleton-preview` utilities, read [references/pixellab.md](references/pixellab.md). For a
|
|
116
116
|
PixelLab style aimed at a specific resolution or fidelity tier (retro,
|
|
117
117
|
high-detail, or matching an existing set's look), read
|
|
118
118
|
[references/pixellab-fidelity.md](references/pixellab-fidelity.md) first.
|
|
@@ -460,7 +460,8 @@ pixel art to its native grid; run it before outside art becomes a
|
|
|
460
460
|
cost unmeasured). `pixelkiln font --description <text> --out <base>` writes a
|
|
461
461
|
`.ttf` and an 80-glyph atlas for PixelLab's documented 25 generations, and
|
|
462
462
|
asks first. `pixelkiln estimate-skeleton <image> --out <file>` starts an
|
|
463
|
-
`animate-skeleton` keypoints file
|
|
463
|
+
`animate-skeleton` keypoints file, and `pixelkiln skeleton-preview <asset>`
|
|
464
|
+
draws its poses over the source for free. See `docs/CLI.md`, "PixelLab utilities".
|
|
464
465
|
|
|
465
466
|
For a style aimed at a specific look (a
|
|
466
467
|
retro/console feel or a
|
|
@@ -50,7 +50,11 @@ Read this reference when an asset declares `revision`.
|
|
|
50
50
|
poses. It needs `direction`; `prompt` names the motion and the optional
|
|
51
51
|
`description` says what the subject looks like. Bootstrap the file with
|
|
52
52
|
`pixelkiln estimate-skeleton <image> --out <file>` (a direct call, outside
|
|
53
|
-
any budget, like `balance
|
|
53
|
+
any budget, like `balance`; square 16–256px images only), which writes the
|
|
54
|
+
estimated pose plus `--frames` copies (default 4) to edit. Joint labels are
|
|
55
|
+
PixelLab's 18 names, each once per pose. After every edit, run
|
|
56
|
+
`pixelkiln skeleton-preview <asset>` (local, free) and look at the sheet:
|
|
57
|
+
the starting pose must match the sprite, or every frame degrades silently. Plan cost
|
|
54
58
|
interpolates PixelLab's documented anchors (3 frames = 2, 8 = 3, 15 = 4);
|
|
55
59
|
like the other animate modes it lands in candidate review and is
|
|
56
60
|
unmeasured live.
|