@playcraft/cli 0.1.53-beta → 0.1.54

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.
Files changed (400) hide show
  1. package/README.md +3 -62
  2. package/dist/agent/local-backend.js +1 -1
  3. package/dist/cli-root-help.js +0 -2
  4. package/dist/commands/build-all.js +19 -5
  5. package/dist/commands/build.js +28 -15
  6. package/dist/commands/create.js +33 -26
  7. package/dist/commands/login.js +42 -84
  8. package/dist/commands/skills.js +0 -4
  9. package/dist/commands/tools-3d.js +0 -11
  10. package/dist/commands/tools-generation.js +0 -6
  11. package/dist/commands/tools.js +0 -2
  12. package/dist/config.js +4 -59
  13. package/dist/index.js +3 -42
  14. package/dist/remix/clone.js +0 -2
  15. package/dist/remix/init-template.js +0 -2
  16. package/dist/remix/pull.js +0 -2
  17. package/dist/remix/push.js +1 -21
  18. package/dist/utils/agent-api-client.js +30 -210
  19. package/dist/utils/playcraft-http-client.js +4 -6
  20. package/package.json +5 -15
  21. package/SKILLS_REGISTRY.md +0 -149
  22. package/dist/auth/account-activation.js +0 -157
  23. package/dist/auth/messages.js +0 -30
  24. package/dist/commands/build-temp.js +0 -26
  25. package/dist/commands/platform-skills.generated.js +0 -19
  26. package/dist/commands/playable.js +0 -53
  27. package/dist/commands/preview-runtime.js +0 -21
  28. package/dist/commands/tools-batch.js +0 -113
  29. package/dist/commands/video.js +0 -122
  30. package/dist/commands/workspace-runtime.js +0 -54
  31. package/dist/commands/workspace.js +0 -40
  32. package/dist/preview-runtime/distribution.js +0 -77
  33. package/dist/project-skills/builtin-import.js +0 -225
  34. package/dist/project-skills/commands.js +0 -77
  35. package/dist/project-skills/lifecycle.js +0 -28
  36. package/dist/project-skills/local-run.js +0 -112
  37. package/dist/project-skills/local-store.js +0 -221
  38. package/dist/project-skills/messages.js +0 -80
  39. package/dist/project-skills/reconcile.js +0 -62
  40. package/dist/project-skills/remote-cache.js +0 -51
  41. package/dist/project-skills/validation.js +0 -19
  42. package/dist/recording/messages.js +0 -40
  43. package/dist/recording/project-digest.js +0 -85
  44. package/dist/recording/recorder.js +0 -293
  45. package/dist/recording/scenario.js +0 -50
  46. package/dist/skill-registry/client.js +0 -345
  47. package/dist/skill-registry/commands.js +0 -180
  48. package/dist/skill-registry/evaluation-client.js +0 -156
  49. package/dist/skill-registry/evaluation-commands.js +0 -174
  50. package/dist/skill-registry/messages.js +0 -177
  51. package/dist/skill-registry/package.js +0 -275
  52. package/dist/skill-registry/platform-package.js +0 -100
  53. package/dist/utils/environment-endpoints.js +0 -17
  54. package/dist/utils/error-diagnostics.js +0 -20
  55. package/dist/utils/tool-operation-journal.js +0 -124
  56. package/dist/utils/video-evidence-git.js +0 -81
  57. package/dist/video-replication/client.js +0 -234
  58. package/dist/video-replication/comparison-evidence.js +0 -149
  59. package/dist/video-replication/comparison-files.js +0 -57
  60. package/dist/video-replication/comparison-log.js +0 -72
  61. package/dist/video-replication/comparison-messages.js +0 -104
  62. package/dist/video-replication/comparison-output.js +0 -63
  63. package/dist/video-replication/comparison-preflight.js +0 -66
  64. package/dist/video-replication/comparison.js +0 -230
  65. package/dist/video-replication/diagnostics.js +0 -41
  66. package/dist/video-replication/evidence.js +0 -165
  67. package/dist/video-replication/media.js +0 -112
  68. package/dist/video-replication/messages.js +0 -97
  69. package/dist/workspace/messages.js +0 -67
  70. package/dist/workspace/transfer-client.js +0 -237
  71. package/dist/workspace/transfer-errors.js +0 -48
  72. package/dist/workspace-runtime/batch/content-changes.js +0 -30
  73. package/dist/workspace-runtime/batch/control.js +0 -86
  74. package/dist/workspace-runtime/batch/deliver.js +0 -173
  75. package/dist/workspace-runtime/batch/freeze.js +0 -101
  76. package/dist/workspace-runtime/batch/generate.js +0 -249
  77. package/dist/workspace-runtime/batch/git.js +0 -40
  78. package/dist/workspace-runtime/batch/occupancy.js +0 -8
  79. package/dist/workspace-runtime/batch/policy.js +0 -70
  80. package/dist/workspace-runtime/batch/prepare.js +0 -317
  81. package/dist/workspace-runtime/batch/processes.js +0 -72
  82. package/dist/workspace-runtime/batch/records.js +0 -113
  83. package/dist/workspace-runtime/batch/routes.js +0 -61
  84. package/dist/workspace-runtime/batch/source-candidate.js +0 -86
  85. package/dist/workspace-runtime/batch/source-capture.js +0 -146
  86. package/dist/workspace-runtime/batch/source-failure.js +0 -43
  87. package/dist/workspace-runtime/batch/source-publish.js +0 -130
  88. package/dist/workspace-runtime/codex/app-server.js +0 -1065
  89. package/dist/workspace-runtime/codex/compact.js +0 -46
  90. package/dist/workspace-runtime/codex/config-toml.js +0 -107
  91. package/dist/workspace-runtime/codex/delivery-tools.js +0 -144
  92. package/dist/workspace-runtime/codex/jsonrpc-stdio.js +0 -145
  93. package/dist/workspace-runtime/codex/launcher-client.js +0 -177
  94. package/dist/workspace-runtime/codex/loopback.js +0 -146
  95. package/dist/workspace-runtime/codex/mcp-config.js +0 -39
  96. package/dist/workspace-runtime/codex/model-broker.js +0 -263
  97. package/dist/workspace-runtime/codex/native-adapter.js +0 -9
  98. package/dist/workspace-runtime/codex/permissions.js +0 -79
  99. package/dist/workspace-runtime/codex/thread-image.js +0 -38
  100. package/dist/workspace-runtime/codex/tool-response.js +0 -10
  101. package/dist/workspace-runtime/codex/ui-instructions.js +0 -4
  102. package/dist/workspace-runtime/codex/ui-tools.js +0 -203
  103. package/dist/workspace-runtime/codex/work-mode.js +0 -15
  104. package/dist/workspace-runtime/main.js +0 -10
  105. package/dist/workspace-runtime/persistence/journal.js +0 -365
  106. package/dist/workspace-runtime/persistence/native-subagents.js +0 -162
  107. package/dist/workspace-runtime/persistence/sqlite-client.js +0 -77
  108. package/dist/workspace-runtime/persistence/sqlite-worker.js +0 -1161
  109. package/dist/workspace-runtime/persistence/stopped-execution.js +0 -77
  110. package/dist/workspace-runtime/previews/diagnostics.js +0 -44
  111. package/dist/workspace-runtime/previews/output.js +0 -36
  112. package/dist/workspace-runtime/previews/publish.js +0 -283
  113. package/dist/workspace-runtime/previews/runtime-preview.js +0 -251
  114. package/dist/workspace-runtime/previews/single-file.js +0 -43
  115. package/dist/workspace-runtime/processes/managed-writes.js +0 -69
  116. package/dist/workspace-runtime/serve.js +0 -441
  117. package/dist/workspace-runtime/server/accept-operation.js +0 -61
  118. package/dist/workspace-runtime/server/asset-transfers.js +0 -63
  119. package/dist/workspace-runtime/server/auth.js +0 -21
  120. package/dist/workspace-runtime/server/connectivity.js +0 -211
  121. package/dist/workspace-runtime/server/desktop-host.js +0 -429
  122. package/dist/workspace-runtime/server/desktop-preview-config.js +0 -81
  123. package/dist/workspace-runtime/server/desktop-preview-service.js +0 -157
  124. package/dist/workspace-runtime/server/desktop-preview-static.js +0 -53
  125. package/dist/workspace-runtime/server/desktop-preview.js +0 -189
  126. package/dist/workspace-runtime/server/dispatch.js +0 -1655
  127. package/dist/workspace-runtime/server/endpoints.js +0 -21
  128. package/dist/workspace-runtime/server/execution-group.js +0 -90
  129. package/dist/workspace-runtime/server/http.js +0 -1339
  130. package/dist/workspace-runtime/server/lock.js +0 -53
  131. package/dist/workspace-runtime/server/operation-record.js +0 -33
  132. package/dist/workspace-runtime/server/rfb-watch-gate.js +0 -168
  133. package/dist/workspace-runtime/server/session-restore.js +0 -84
  134. package/dist/workspace-runtime/server/source-uploader.js +0 -138
  135. package/dist/workspace-runtime/server/submit-operation.js +0 -41
  136. package/dist/workspace-runtime/server/terminal-host.js +0 -366
  137. package/dist/workspace-runtime/server/types.js +0 -1
  138. package/dist/workspace-runtime/server/workspace-transfer.js +0 -168
  139. package/dist/workspace-runtime/verify-artifact.js +0 -59
  140. package/dist/workspace-runtime/workspaces/append-only-log.js +0 -62
  141. package/dist/workspace-runtime/workspaces/archive.js +0 -207
  142. package/dist/workspace-runtime/workspaces/artifact-events.js +0 -55
  143. package/dist/workspace-runtime/workspaces/artifact-files.js +0 -199
  144. package/dist/workspace-runtime/workspaces/artifact-receipts.js +0 -89
  145. package/dist/workspace-runtime/workspaces/artifacts.js +0 -282
  146. package/dist/workspace-runtime/workspaces/asset-library-import.js +0 -387
  147. package/dist/workspace-runtime/workspaces/asset-publication-access.js +0 -25
  148. package/dist/workspace-runtime/workspaces/asset-transfer-dependencies.js +0 -81
  149. package/dist/workspace-runtime/workspaces/asset-transfer-publish.js +0 -438
  150. package/dist/workspace-runtime/workspaces/asset-transfer-storage.js +0 -389
  151. package/dist/workspace-runtime/workspaces/attachment-content.js +0 -73
  152. package/dist/workspace-runtime/workspaces/attachments.js +0 -185
  153. package/dist/workspace-runtime/workspaces/batch-commit.js +0 -142
  154. package/dist/workspace-runtime/workspaces/binary-content.js +0 -65
  155. package/dist/workspace-runtime/workspaces/binary-write.js +0 -117
  156. package/dist/workspace-runtime/workspaces/cli-context.js +0 -23
  157. package/dist/workspace-runtime/workspaces/cli-credentials.js +0 -115
  158. package/dist/workspace-runtime/workspaces/composer-context.js +0 -147
  159. package/dist/workspace-runtime/workspaces/context-error.js +0 -2
  160. package/dist/workspace-runtime/workspaces/delivery-build.js +0 -331
  161. package/dist/workspace-runtime/workspaces/delivery-store.js +0 -168
  162. package/dist/workspace-runtime/workspaces/delivery.js +0 -64
  163. package/dist/workspace-runtime/workspaces/dependencies.js +0 -279
  164. package/dist/workspace-runtime/workspaces/developer-command.js +0 -98
  165. package/dist/workspace-runtime/workspaces/directories.js +0 -132
  166. package/dist/workspace-runtime/workspaces/directory-access.js +0 -37
  167. package/dist/workspace-runtime/workspaces/directory-attachments.js +0 -245
  168. package/dist/workspace-runtime/workspaces/directory-create.js +0 -57
  169. package/dist/workspace-runtime/workspaces/directory-maintenance.js +0 -111
  170. package/dist/workspace-runtime/workspaces/directory-mutations.js +0 -238
  171. package/dist/workspace-runtime/workspaces/directory-revisions.js +0 -56
  172. package/dist/workspace-runtime/workspaces/directory-stats.js +0 -49
  173. package/dist/workspace-runtime/workspaces/disk-snapshot.js +0 -31
  174. package/dist/workspace-runtime/workspaces/empty-template.js +0 -42
  175. package/dist/workspace-runtime/workspaces/file-content.js +0 -48
  176. package/dist/workspace-runtime/workspaces/files-search.js +0 -116
  177. package/dist/workspace-runtime/workspaces/files.js +0 -150
  178. package/dist/workspace-runtime/workspaces/git-credential-broker.js +0 -312
  179. package/dist/workspace-runtime/workspaces/git-credential-helper.js +0 -68
  180. package/dist/workspace-runtime/workspaces/git-direct-store.js +0 -155
  181. package/dist/workspace-runtime/workspaces/git.js +0 -670
  182. package/dist/workspace-runtime/workspaces/instructions.js +0 -56
  183. package/dist/workspace-runtime/workspaces/json5-edit.js +0 -313
  184. package/dist/workspace-runtime/workspaces/library-attachments.js +0 -268
  185. package/dist/workspace-runtime/workspaces/operation-log.js +0 -23
  186. package/dist/workspace-runtime/workspaces/optional-platform-skills.js +0 -14
  187. package/dist/workspace-runtime/workspaces/parameter-agent-inputs.js +0 -97
  188. package/dist/workspace-runtime/workspaces/parameter-agent-protocol.js +0 -40
  189. package/dist/workspace-runtime/workspaces/parameter-agent-store.js +0 -58
  190. package/dist/workspace-runtime/workspaces/parameter-agent.js +0 -284
  191. package/dist/workspace-runtime/workspaces/parameter-assets.js +0 -189
  192. package/dist/workspace-runtime/workspaces/parameters.js +0 -329
  193. package/dist/workspace-runtime/workspaces/prepare.js +0 -278
  194. package/dist/workspace-runtime/workspaces/registry.js +0 -251
  195. package/dist/workspace-runtime/workspaces/remix-references.js +0 -301
  196. package/dist/workspace-runtime/workspaces/revisions.js +0 -31
  197. package/dist/workspace-runtime/workspaces/session-image.js +0 -104
  198. package/dist/workspace-runtime/workspaces/shared-git.js +0 -40
  199. package/dist/workspace-runtime/workspaces/skill-artifact-loader.js +0 -95
  200. package/dist/workspace-runtime/workspaces/skills.js +0 -191
  201. package/dist/workspace-runtime/workspaces/theme-asset-index.js +0 -157
  202. package/dist/workspace-runtime/workspaces/transfer-quota.js +0 -69
  203. package/dist/workspace-runtime/workspaces/transfer.js +0 -471
  204. package/dist/workspace-runtime/workspaces/turn-changes.js +0 -75
  205. package/dist/workspace-runtime/workspaces/video-attachments.js +0 -49
  206. package/project-template/.claude/skills/playcraft-replica-validation/SKILL.md +0 -25
  207. package/project-template/.claude/skills/playcraft-replica-validation/references/contracts.md +0 -79
  208. package/project-template/.claude/skills/playcraft-video-understanding/SKILL.md +0 -29
  209. package/project-template/.claude/skills/playcraft-video-understanding/references/contracts.md +0 -37
  210. package/project-template-v2/.claude/agents/artist.md +0 -82
  211. package/project-template-v2/.claude/agents/developer.md +0 -153
  212. package/project-template-v2/.claude/agents/game-designer.md +0 -264
  213. package/project-template-v2/.claude/agents/refs/artist-art-style-catalog.md +0 -533
  214. package/project-template-v2/.claude/agents/refs/artist-color-audio-recipes.md +0 -153
  215. package/project-template-v2/.claude/agents/refs/artist-dimension-axis.md +0 -27
  216. package/project-template-v2/.claude/agents/refs/artist-master-composite-recipes.md +0 -208
  217. package/project-template-v2/.claude/agents/refs/atom-skill-library.md +0 -81
  218. package/project-template-v2/.claude/agents/refs/developer-impl-cookbook.md +0 -432
  219. package/project-template-v2/.claude/agents/refs/framework-5-component-filter.md +0 -252
  220. package/project-template-v2/.claude/agents/refs/framework-game-feel-juice.md +0 -266
  221. package/project-template-v2/.claude/agents/refs/framework-mda.md +0 -147
  222. package/project-template-v2/.claude/agents/refs/game-designer-gameplay-sufficiency.md +0 -123
  223. package/project-template-v2/.claude/agents/refs/ta-3d-flip-recipe.md +0 -88
  224. package/project-template-v2/.claude/agents/refs/ta-atlas-deliverable-standard.md +0 -67
  225. package/project-template-v2/.claude/agents/refs/ta-batch-pipeline-recipes.md +0 -120
  226. package/project-template-v2/.claude/agents/refs/ta-image-generation-detail.md +0 -300
  227. package/project-template-v2/.claude/agents/refs/ta-image-ops-reference.md +0 -495
  228. package/project-template-v2/.claude/agents/refs/ta-pipeline-cookbook.md +0 -1141
  229. package/project-template-v2/.claude/agents/refs/ta-tools-reference.md +0 -111
  230. package/project-template-v2/.claude/agents/refs/ta-vfx-preset-catalog.md +0 -365
  231. package/project-template-v2/.claude/agents/refs/threejs-cannon-pitfalls.md +0 -412
  232. package/project-template-v2/.claude/agents/reviewer.md +0 -75
  233. package/project-template-v2/.claude/agents/technical-artist.md +0 -86
  234. package/project-template-v2/.claude/hooks/snapshot-milestone.mjs +0 -243
  235. package/project-template-v2/.claude/hooks/user-prompt.mjs +0 -133
  236. package/project-template-v2/.claude/settings.json +0 -33
  237. package/project-template-v2/.claude/skills/brainstorming/SKILL.md +0 -161
  238. package/project-template-v2/.claude/skills/brainstorming/scripts/frame-template.html +0 -270
  239. package/project-template-v2/.claude/skills/brainstorming/scripts/helper.js +0 -177
  240. package/project-template-v2/.claude/skills/brainstorming/scripts/server.cjs +0 -354
  241. package/project-template-v2/.claude/skills/brainstorming/scripts/start-server.sh +0 -148
  242. package/project-template-v2/.claude/skills/brainstorming/scripts/stop-server.sh +0 -56
  243. package/project-template-v2/.claude/skills/brainstorming/scripts/wait-for-selection.sh +0 -62
  244. package/project-template-v2/.claude/skills/brainstorming/spec-document-reviewer-prompt.md +0 -49
  245. package/project-template-v2/.claude/skills/brainstorming/visual-companion.md +0 -309
  246. package/project-template-v2/.claude/skills/playcraft-ad-psychology/SKILL.md +0 -182
  247. package/project-template-v2/.claude/skills/playcraft-art-style-guide/SKILL.md +0 -123
  248. package/project-template-v2/.claude/skills/playcraft-asset-state-sheet/SKILL.md +0 -205
  249. package/project-template-v2/.claude/skills/playcraft-audio-generation/SKILL.md +0 -280
  250. package/project-template-v2/.claude/skills/playcraft-batch-pipeline/SKILL.md +0 -184
  251. package/project-template-v2/.claude/skills/playcraft-build-optimizer/SKILL.md +0 -306
  252. package/project-template-v2/.claude/skills/playcraft-image-generation/SKILL.md +0 -370
  253. package/project-template-v2/.claude/skills/playcraft-image-generation/reference/build-sprite-sheet.template.mjs +0 -123
  254. package/project-template-v2/.claude/skills/playcraft-image-generation/reference/compare-style.template.mjs +0 -254
  255. package/project-template-v2/.claude/skills/playcraft-image-generation/reference/gen-batch-sprite.template.mjs +0 -333
  256. package/project-template-v2/.claude/skills/playcraft-image-generation/reference/gen-batch.template.mjs +0 -95
  257. package/project-template-v2/.claude/skills/playcraft-image-generation/reference/gen-edit-variants.template.mjs +0 -118
  258. package/project-template-v2/.claude/skills/playcraft-image-generation/reference/process-batch.template.mjs +0 -136
  259. package/project-template-v2/.claude/skills/playcraft-image-generation/reference/prompt-cookbook.md +0 -397
  260. package/project-template-v2/.claude/skills/playcraft-image-generation/reference/validate-sprite-sheet.template.mjs +0 -296
  261. package/project-template-v2/.claude/skills/playcraft-image-ops/SKILL.md +0 -122
  262. package/project-template-v2/.claude/skills/playcraft-image-processing/SKILL.md +0 -219
  263. package/project-template-v2/.claude/skills/playcraft-masking/SKILL.md +0 -373
  264. package/project-template-v2/.claude/skills/playcraft-playable-optimization/SKILL.md +0 -161
  265. package/project-template-v2/.claude/skills/playcraft-research/SKILL.md +0 -215
  266. package/project-template-v2/.claude/skills/playcraft-skill-recommender/SKILL.md +0 -382
  267. package/project-template-v2/.claude/skills/playcraft-sprite-generation/SKILL.md +0 -423
  268. package/project-template-v2/.claude/skills/playcraft-sprite-remix/SKILL.md +0 -158
  269. package/project-template-v2/.claude/skills/playcraft-sprite-sheet/SKILL.md +0 -100
  270. package/project-template-v2/.claude/skills/playcraft-storyboard/SKILL.md +0 -167
  271. package/project-template-v2/.claude/skills/playcraft-style-qa/SKILL.md +0 -270
  272. package/project-template-v2/.claude/skills/playcraft-text-rendering/SKILL.md +0 -236
  273. package/project-template-v2/.claude/skills/playcraft-vfx-animation/SKILL.md +0 -130
  274. package/project-template-v2/.claude/skills/playwright-cli/SKILL.md +0 -390
  275. package/project-template-v2/.claude/skills/playwright-cli/references/element-attributes.md +0 -23
  276. package/project-template-v2/.claude/skills/playwright-cli/references/playwright-tests.md +0 -39
  277. package/project-template-v2/.claude/skills/playwright-cli/references/request-mocking.md +0 -87
  278. package/project-template-v2/.claude/skills/playwright-cli/references/running-code.md +0 -240
  279. package/project-template-v2/.claude/skills/playwright-cli/references/session-management.md +0 -226
  280. package/project-template-v2/.claude/skills/playwright-cli/references/spec-driven-testing.md +0 -308
  281. package/project-template-v2/.claude/skills/playwright-cli/references/storage-state.md +0 -275
  282. package/project-template-v2/.claude/skills/playwright-cli/references/test-generation.md +0 -134
  283. package/project-template-v2/.claude/skills/playwright-cli/references/tracing.md +0 -142
  284. package/project-template-v2/.claude/skills/playwright-cli/references/video-recording.md +0 -153
  285. package/project-template-v2/.claude/skills/session-analyzer/SKILL.md +0 -386
  286. package/project-template-v2/.claude/skills/session-analyzer/scripts/execution-breakdown.mjs +0 -182
  287. package/project-template-v2/.claude/skills/session-analyzer/scripts/find-turns.mjs +0 -72
  288. package/project-template-v2/.claude/skills/session-analyzer/scripts/heavy-output.mjs +0 -121
  289. package/project-template-v2/.claude/skills/session-analyzer/scripts/resolve-session.mjs +0 -102
  290. package/project-template-v2/.claude/skills/session-analyzer/scripts/subagent-stats.mjs +0 -127
  291. package/project-template-v2/.claude/skills/session-analyzer/scripts/subagent-tool-timeline.mjs +0 -106
  292. package/project-template-v2/.claude/skills/session-analyzer/scripts/time-gaps.mjs +0 -128
  293. package/project-template-v2/.claude/skills/session-analyzer/scripts/turn-timeline.mjs +0 -67
  294. package/project-template-v2/.claude/snapshot.mjs +0 -263
  295. package/project-template-v2/.playcraft/skills.lock.json +0 -152
  296. package/project-template-v2/CLAUDE.md +0 -146
  297. package/project-template-v2/assets/audio/bgm/.gitkeep +0 -0
  298. package/project-template-v2/assets/audio/sfx/.gitkeep +0 -0
  299. package/project-template-v2/assets/bundles/.gitkeep +0 -0
  300. package/project-template-v2/assets/images/bg/.gitkeep +0 -0
  301. package/project-template-v2/assets/images/reference/.gitkeep +0 -0
  302. package/project-template-v2/assets/images/storyboard/.gitkeep +0 -0
  303. package/project-template-v2/assets/images/tiles/.gitkeep +0 -0
  304. package/project-template-v2/assets/images/ui/.gitkeep +0 -0
  305. package/project-template-v2/assets/images/vfx/.gitkeep +0 -0
  306. package/project-template-v2/assets/models/.gitkeep +0 -0
  307. package/project-template-v2/docs/harness/iteration-1/context-flow.md +0 -254
  308. package/project-template-v2/docs/harness/iteration-1/generate-flow.md +0 -91
  309. package/project-template-v2/docs/harness/iteration-1/ideate-flow.md +0 -214
  310. package/project-template-v2/docs/harness/iteration-1/optimize-flow.md +0 -75
  311. package/project-template-v2/docs/harness/iteration-1/wrapup-flow.md +0 -63
  312. package/project-template-v2/docs/harness/iteration-2/context-flow.md +0 -223
  313. package/project-template-v2/docs/harness/iteration-2/generate-flow.md +0 -129
  314. package/project-template-v2/docs/harness/iteration-2/ideate-flow.md +0 -267
  315. package/project-template-v2/docs/harness/iteration-2/optimize-flow.md +0 -164
  316. package/project-template-v2/docs/harness/iteration-2/wrapup-flow.md +0 -115
  317. package/project-template-v2/docs/harness/orchestrator-flow.md +0 -364
  318. package/project-template-v2/docs/project-state.json +0 -60
  319. package/project-template-v2/docs/project-state.md +0 -72
  320. package/project-template-v2/docs/standards/README.md +0 -225
  321. package/project-template-v2/docs/standards/agent-behavior-standards.md +0 -174
  322. package/project-template-v2/docs/standards/artifacts/design-brief.md +0 -19
  323. package/project-template-v2/docs/standards/artifacts/design.md +0 -22
  324. package/project-template-v2/docs/standards/artifacts/game-code.md +0 -41
  325. package/project-template-v2/docs/standards/artifacts/todo-list.md +0 -41
  326. package/project-template-v2/docs/standards/iter1-agent-behavior-standards.md +0 -343
  327. package/project-template-v2/game/index.ts +0 -18
  328. package/project-template-v2/globals.d.ts +0 -51
  329. package/project-template-v2/index.css +0 -34
  330. package/project-template-v2/index.html +0 -18
  331. package/project-template-v2/main.ts +0 -9
  332. package/project-template-v2/package.json +0 -46
  333. package/project-template-v2/skills/_shared/scripts/dispatch-clear.mjs +0 -31
  334. package/project-template-v2/skills/_shared/scripts/dispatch-set.mjs +0 -86
  335. package/project-template-v2/skills/_shared/scripts/dod-check.mjs +0 -153
  336. package/project-template-v2/skills/_shared/scripts/handoff-append.mjs +0 -70
  337. package/project-template-v2/skills/_shared/scripts/lib/validator-artifacts.mjs +0 -91
  338. package/project-template-v2/skills/_shared/scripts/pipeline/dod-config.mjs +0 -131
  339. package/project-template-v2/skills/_shared/scripts/pipeline/index.mjs +0 -80
  340. package/project-template-v2/skills/_shared/scripts/pipeline/iteration-1-core.mjs +0 -90
  341. package/project-template-v2/skills/_shared/scripts/pipeline/iteration-2-wrap.mjs +0 -93
  342. package/project-template-v2/skills/_shared/scripts/pipeline/iteration-3-visual.mjs +0 -23
  343. package/project-template-v2/skills/_shared/scripts/render-project-state.mjs +0 -230
  344. package/project-template-v2/skills/_shared/scripts/state-advance-stage.mjs +0 -58
  345. package/project-template-v2/skills/_shared/scripts/state-get.mjs +0 -339
  346. package/project-template-v2/skills/_shared/scripts/state-handoff.mjs +0 -39
  347. package/project-template-v2/skills/_shared/scripts/state-set.mjs +0 -94
  348. package/project-template-v2/skills/_shared/scripts/state-store.mjs +0 -783
  349. package/project-template-v2/skills/_shared/scripts/todo-add.mjs +0 -88
  350. package/project-template-v2/skills/_shared/scripts/todo-get.mjs +0 -130
  351. package/project-template-v2/skills/_shared/scripts/todo-remove.mjs +0 -33
  352. package/project-template-v2/skills/_shared/scripts/todo-set.mjs +0 -47
  353. package/project-template-v2/skills/_shared/scripts/verify-asset-code-sync.mjs +0 -268
  354. package/project-template-v2/skills/_shared/scripts/verify-env.mjs +0 -285
  355. package/project-template-v2/skills/_shared/scripts/verify-placeholders.mjs +0 -161
  356. package/project-template-v2/skills/playable-autoplay/SKILL.md +0 -176
  357. package/project-template-v2/skills/playable-autoplay/agents/openai.yaml +0 -4
  358. package/project-template-v2/skills/playable-debug/SKILL.md +0 -116
  359. package/project-template-v2/skills/playable-debug/agents/openai.yaml +0 -4
  360. package/project-template-v2/skills/playable-debug/references/debug-config.md +0 -40
  361. package/project-template-v2/skills/playable-record/SKILL.md +0 -140
  362. package/project-template-v2/skills/playable-record/scripts/lib/dev-server.mjs +0 -104
  363. package/project-template-v2/skills/playable-record/scripts/lib/record-audio-bridge.js +0 -141
  364. package/project-template-v2/skills/playable-record/scripts/record-playable.mjs +0 -425
  365. package/project-template-v2/skills/playable-record/scripts/verify-contract.mjs +0 -261
  366. package/project-template-v2/skills/playable-record/scripts/verify-firstwin.mjs +0 -398
  367. package/project-template-v2/skills/playable-record/scripts/verify-fusion.mjs +0 -322
  368. package/project-template-v2/skills/playable-record/scripts/verify-lifecycle.mjs +0 -105
  369. package/project-template-v2/skills/playable-record/scripts/verify-vlm-video.mjs +0 -230
  370. package/project-template-v2/skills/playable-validate/SKILL.md +0 -61
  371. package/project-template-v2/skills/playable-validate/validation-rules.md +0 -14
  372. package/project-template-v2/skills/playable-verify-ui/SKILL.md +0 -63
  373. package/project-template-v2/skills/playable-verify-ui/scripts/lib/__init__.py +0 -1
  374. package/project-template-v2/skills/playable-verify-ui/scripts/lib/config_expr.js +0 -218
  375. package/project-template-v2/skills/playable-verify-ui/scripts/lib/node_utils.js +0 -51
  376. package/project-template-v2/skills/playable-verify-ui/scripts/lib/profile_loader.py +0 -59
  377. package/project-template-v2/skills/playable-verify-ui/scripts/lib/report.py +0 -106
  378. package/project-template-v2/skills/playable-verify-ui/scripts/lib/runtime_contract.js +0 -116
  379. package/project-template-v2/skills/playable-verify-ui/scripts/verify_fetch_antipatterns.py +0 -59
  380. package/project-template-v2/skills/playable-verify-ui/scripts/verify_hardcoded_layout.js +0 -64
  381. package/project-template-v2/skills/playable-verify-ui/scripts/verify_runtime_contract.js +0 -58
  382. package/project-template-v2/skills/playable-verify-ui/scripts/verify_text_overlap.py +0 -333
  383. package/project-template-v2/ta-workspace/scripts/.gitkeep +0 -0
  384. package/project-template-v2/tsconfig.json +0 -20
  385. package/project-template-v2/vite.config.ts +0 -27
  386. package/project-templates/batch-locks/phaser.yaml +0 -922
  387. package/project-templates/batch-locks/threejs.yaml +0 -978
  388. package/project-templates/empty/AGENTS.md +0 -41
  389. package/project-templates/empty/gitignore +0 -33
  390. package/templates/preview-runtime/v1/README.md +0 -71
  391. package/templates/preview-runtime/v1/build-preview.mjs +0 -1324
  392. package/templates/preview-runtime/v1/manifest.json +0 -17
  393. package/templates/preview-runtime/v1/release-guard.mjs +0 -87
  394. package/templates/preview-runtime/v1/runtime.d.mts +0 -3
  395. package/templates/preview-runtime/v1/runtime.d.ts +0 -3
  396. package/templates/preview-runtime/v1/runtime.mjs +0 -1121
  397. package/templates/preview-runtime/v1/types/adapters.d.ts +0 -26
  398. package/templates/preview-runtime/v1/types/preview.d.ts +0 -23
  399. package/templates/preview-runtime/v1/types/protocol.d.ts +0 -94
  400. package/templates/preview-runtime/v1/types/runtime.d.ts +0 -14
@@ -1,495 +0,0 @@
1
- > 本文件是 `playcraft image` 子命令的完整 CLI 参数速查表。生产上下文指南见 `playcraft-image-ops` skill。
2
-
3
- # PlayCraft 图形操作完整指南
4
-
5
- ## 0. 命令总览
6
-
7
- 所有命令均为 `playcraft image <子命令>` 格式,基于 sharp 本地处理,无需后端。
8
-
9
- | 命令 | 核心用途 |
10
- | ----------- | ----------------------------- |
11
- | `crop` | 精确裁切矩形区域 |
12
- | `overlay` | 底图 + 叠加图合成 |
13
- | `pad` | 扩展画布(加边距) |
14
- | `trim` | 自动裁掉透明/纯色边缘 |
15
- | `resize` | 缩放 |
16
- | `rotate` | 旋转 |
17
- | `flip` | 水平/垂直翻转 |
18
- | `blur` | 高斯模糊 |
19
- | `tint` | 色调叠加 |
20
- | `grayscale` | 灰度化 |
21
- | `negate` | 反色 |
22
- | `convert` | 格式转换(PNG/WebP/AVIF/JPG) |
23
- | `info` | 查看尺寸/格式/文件大小 |
24
-
25
- ---
26
-
27
- ## 1. crop — 精确裁切
28
-
29
- ### 基础用法
30
-
31
- ```bash
32
- playcraft image crop \
33
- --input assets/images/source.png \
34
- --output assets/images/cropped.png \
35
- --x 100 \ # 左边缘(像素,从左上角起)
36
- --y 200 \ # 上边缘(像素)
37
- --width 512 \ # 裁切宽度
38
- --height 512 # 裁切高度
39
- ```
40
-
41
- **参数说明**:`x` + `y` 是左上角起点坐标,`width` + `height` 是裁切区域大小。所有参数为像素整数。
42
-
43
- ### 常用裁切模式
44
-
45
- #### 居中裁(最常用)
46
-
47
- 从图片中心裁取目标尺寸:
48
-
49
- ```bash
50
- # 从 1080×1920 图居中裁取 512×512
51
- # x = (1080 - 512) / 2 = 284
52
- # y = (1920 - 512) / 2 = 704
53
- playcraft image crop \
54
- --input assets/images/bg/background.png \
55
- --output assets/images/tiles/center_crop.png \
56
- --x 284 --y 704 --width 512 --height 512
57
- ```
58
-
59
- **居中裁公式**:
60
-
61
- - `x = (原图宽 - 目标宽) / 2`(取整)
62
- - `y = (原图高 - 目标高) / 2`(取整)
63
-
64
- #### 顶部裁(保留上半部分)
65
-
66
- ```bash
67
- # 裁取图片顶部 1/3 区域
68
- playcraft image crop \
69
- --input source.png \
70
- --output top_crop.png \
71
- --x 0 --y 0 --width 1080 --height 640
72
- ```
73
-
74
- #### 提取局部区域(制作素材变体)
75
-
76
- ```bash
77
- # 从精灵图提取单个帧(已知帧位置时用 crop,不规则布局用 sprite-split)
78
- playcraft image crop \
79
- --input assets/images/tiles/tile_sheet.png \
80
- --output assets/images/tiles/tile_001.png \
81
- --x 0 --y 0 --width 128 --height 128
82
-
83
- # 提取第 2 帧(横向排列,每帧 128px)
84
- playcraft image crop \
85
- --input assets/images/tiles/tile_sheet.png \
86
- --output assets/images/tiles/tile_002.png \
87
- --x 128 --y 0 --width 128 --height 128
88
- ```
89
-
90
- ### crop vs sprite-split 选型
91
-
92
- | 场景 | 推荐 |
93
- | -------------------------- | --------------------------------------------- |
94
- | 精确知道帧位置(均匀网格) | `crop` 或 `sprite-split --rows N --columns N` |
95
- | 不规则布局 / 不知道帧位置 | `sprite-split --auto-detect` |
96
- | 只提取图片的一个局部区域 | `crop` |
97
-
98
- > **注意**:`crop` 不支持在 `playcraft image batch --steps` 中使用(已知 CLI 限制,运行时报 `unsupported command "crop"`)。批量裁切请用 Node.js 脚本或 for 循环。
99
-
100
- ---
101
-
102
- ## 2. overlay — 合成叠图
103
-
104
- 将一张图叠加在另一张图上。用于:添加阴影/光晕、叠加徽章/标签、合成多个素材层。
105
-
106
- ### 基础用法
107
-
108
- ```bash
109
- playcraft image overlay \
110
- --base assets/images/bg/background.png \ # 底图(决定输出尺寸)
111
- --overlay assets/images/ui/badge.png \ # 叠加图
112
- --output assets/images/composite.png
113
- ```
114
-
115
- 输出尺寸 = 底图尺寸(与叠加图大小无关)。
116
-
117
- ### Gravity 模式(对齐位置)
118
-
119
- 不指定 `--x`/`--y` 时,用 `--gravity` 控制叠加图的对齐位置:
120
-
121
- | gravity 值 | 对齐位置 |
122
- | ---------------- | -------- |
123
- | `center`(默认) | 居中 |
124
- | `north` | 顶部居中 |
125
- | `south` | 底部居中 |
126
- | `east` | 右侧居中 |
127
- | `west` | 左侧居中 |
128
- | `northeast` | 右上角 |
129
- | `northwest` | 左上角 |
130
- | `southeast` | 右下角 |
131
- | `southwest` | 左下角 |
132
-
133
- ```bash
134
- # 将徽章放在右上角
135
- playcraft image overlay \
136
- --base assets/images/tiles/tile_001.png \
137
- --overlay assets/images/ui/new_badge.png \
138
- --output assets/images/tiles/tile_001_badge.png \
139
- --gravity northeast
140
-
141
- # 将 CTA 按钮放在底部居中
142
- playcraft image overlay \
143
- --base assets/images/bg/endcard_bg.png \
144
- --overlay assets/images/ui/cta_button.png \
145
- --output assets/images/endcard_composite.png \
146
- --gravity south
147
- ```
148
-
149
- ### 精确定位(--x + --y)
150
-
151
- **同时提供** `--x` 和 `--y` 时,叠加图左上角放置在底图的 `(x, y)` 坐标处(忽略 gravity):
152
-
153
- ```bash
154
- # 精确放置:叠加图左上角在底图 (200, 150) 处
155
- playcraft image overlay \
156
- --base assets/images/bg/background.png \
157
- --overlay assets/images/ui/icon.png \
158
- --output assets/images/composite.png \
159
- --x 200 \
160
- --y 150
161
- ```
162
-
163
- ### 典型场景配方
164
-
165
- #### 添加阴影(先生成阴影层再叠加)
166
-
167
- ```bash
168
- # 1. 用 tint 把原图变成纯黑色版本作为阴影
169
- playcraft image tint \
170
- --input assets/images/character.png \
171
- --output /tmp/shadow.png \
172
- --color "#000000"
173
-
174
- # 2. 把阴影叠加到背景,位置偏移 +4px
175
- playcraft image overlay \
176
- --base assets/images/bg/background.png \
177
- --overlay /tmp/shadow.png \
178
- --output /tmp/bg_with_shadow.png \
179
- --x 4 --y 4
180
-
181
- # 3. 再把原图叠到正确位置(居中)
182
- playcraft image overlay \
183
- --base /tmp/bg_with_shadow.png \
184
- --overlay assets/images/character.png \
185
- --output assets/images/final_composite.png \
186
- --gravity center
187
- ```
188
-
189
- #### 给素材添加光晕边框
190
-
191
- ```bash
192
- # 先 pad 扩大原图作为光晕层(用半透明背景),再叠回原图
193
- playcraft image pad \
194
- --input assets/images/tiles/tile_001.png \
195
- --output /tmp/glow_layer.png \
196
- --all 8 \
197
- --background "#FFD70088" # 半透明金色
198
-
199
- playcraft image overlay \
200
- --base /tmp/glow_layer.png \
201
- --overlay assets/images/tiles/tile_001.png \
202
- --output assets/images/tiles/tile_001_glow.png \
203
- --gravity center
204
- ```
205
-
206
- ---
207
-
208
- ## 3. pad — 扩展画布
209
-
210
- 在图片四周添加边距,常用于:统一精灵图尺寸、添加安全边距、适配不同宽高比。
211
-
212
- ### 基础用法
213
-
214
- ```bash
215
- # 四边均等扩展 16px(透明填充)
216
- playcraft image pad \
217
- --input assets/images/tiles/tile_001.png \
218
- --output assets/images/tiles/tile_001_padded.png \
219
- --all 16
220
-
221
- # 四边分别指定
222
- playcraft image pad \
223
- --input assets/images/ui/button.png \
224
- --output assets/images/ui/button_safe.png \
225
- --top 24 \
226
- --bottom 24 \
227
- --left 32 \
228
- --right 32 \
229
- --background "#00000000" # 透明(默认)
230
- ```
231
-
232
- ### 典型场景
233
-
234
- #### 统一精灵图尺寸(大小不一的图片变成相同画布)
235
-
236
- ```bash
237
- # 将 96×112 的角色精灵扩展到 128×128(居中内容)
238
- # top = (128-112)/2 = 8, bottom = 8, left = (128-96)/2 = 16, right = 16
239
- playcraft image pad \
240
- --input assets/images/character_sprite.png \
241
- --output assets/images/character_128x128.png \
242
- --top 8 --bottom 8 --left 16 --right 16
243
- ```
244
-
245
- #### 添加安全边距(防止 UI 元素贴边)
246
-
247
- ```bash
248
- playcraft image pad \
249
- --input assets/images/ui/cta_button.png \
250
- --output assets/images/ui/cta_button_safe.png \
251
- --all 48 \
252
- --background "#00000000"
253
- ```
254
-
255
- #### 白色/彩色填充背景(不透明)
256
-
257
- ```bash
258
- playcraft image pad \
259
- --input assets/images/icon.png \
260
- --output assets/images/icon_white_bg.png \
261
- --all 20 \
262
- --background "#FFFFFF"
263
- ```
264
-
265
- ---
266
-
267
- ## 4. trim — 自动裁掉边缘
268
-
269
- 自动检测并移除图片边缘的透明区域或纯色边缘。常用于:精灵图去白边、AI 生成图去冗余透明边。
270
-
271
- ```bash
272
- # 移除透明边缘(默认阈值 10)
273
- playcraft image trim \
274
- --input assets/images/tiles/tile_001.png \
275
- --output assets/images/tiles/tile_001_trimmed.png
276
-
277
- # 调整阈值(0-255,越高容错越大)
278
- # 阈值 30:稍微偏白的背景也会被裁掉
279
- playcraft image trim \
280
- --input assets/images/ui/icon.png \
281
- --output assets/images/ui/icon_trimmed.png \
282
- --threshold 30
283
- ```
284
-
285
- **什么时候用 trim**:
286
-
287
- - AI 生成的图片四周有半透明区域
288
- - 精灵图合并前需要统一去掉白色/透明边距
289
- - `remove-background` 处理后的图片有冗余透明像素
290
-
291
- **trim 后通常接 pad**:先 trim 去掉不需要的边,再 pad 统一添加所需的安全边距。
292
-
293
- ---
294
-
295
- ## 5. rotate / flip — 旋转与翻转
296
-
297
- ```bash
298
- # 旋转 90 度(顺时针),填充透明
299
- playcraft image rotate \
300
- --input assets/images/arrow.png \
301
- --output assets/images/arrow_rotated.png \
302
- --angle 90
303
-
304
- # 旋转并指定填充色
305
- playcraft image rotate \
306
- --input assets/images/bg/background.png \
307
- --output assets/images/bg/background_rotated.png \
308
- --angle 15 \
309
- --background "#1A1A2E"
310
-
311
- # 水平翻转(左右镜像)
312
- playcraft image flip \
313
- --input assets/images/character/run_right.png \
314
- --output assets/images/character/run_left.png \
315
- --direction horizontal
316
-
317
- # 垂直翻转(上下镜像)
318
- playcraft image flip \
319
- --input assets/images/tiles/water.png \
320
- --output assets/images/tiles/water_flipped.png \
321
- --direction vertical
322
- ```
323
-
324
- **典型用途**:
325
-
326
- - `rotate 90/180/270`:调整素材方向
327
- - `flip horizontal`:从"向右跑"生成"向左跑",节省一半动画生成成本
328
- - `rotate 15` + 透明背景:制作倾斜装饰元素
329
-
330
- ---
331
-
332
- ## 6. 滤镜命令(blur / tint / grayscale / negate)
333
-
334
- ### blur — 高斯模糊
335
-
336
- ```bash
337
- # sigma 越大,模糊程度越高(默认 3)
338
- playcraft image blur \
339
- --input assets/images/bg/background.png \
340
- --output assets/images/bg/background_blurred.png \
341
- --sigma 8
342
-
343
- # 背景虚化(大 sigma)
344
- playcraft image blur --input bg.png --output bg_bokeh.png --sigma 15
345
- ```
346
-
347
- **典型用途**:背景虚化强调前景角色;制作毛玻璃效果底图;对参考图模糊处理减少 AI 参考图的细节影响。
348
-
349
- ### tint — 色调叠加
350
-
351
- ```bash
352
- # 整体染色(不影响透明通道)
353
- playcraft image tint \
354
- --input assets/images/tiles/tile_001.png \
355
- --output assets/images/tiles/tile_001_gold.png \
356
- --color "#FFD700"
357
-
358
- # 制作禁用状态(灰色叠加)
359
- playcraft image tint \
360
- --input assets/images/ui/button.png \
361
- --output assets/images/ui/button_disabled.png \
362
- --color "#808080"
363
- ```
364
-
365
- **注意**:tint 是颜色混合,不是替换颜色。深色图像 tint 效果不明显,用 `overlay` + 纯色图层效果更可控。
366
-
367
- ### grayscale — 灰度化
368
-
369
- ```bash
370
- playcraft image grayscale \
371
- --input assets/images/tiles/tile_001.png \
372
- --output assets/images/tiles/tile_001_gray.png
373
- ```
374
-
375
- **典型用途**:制作"锁定/未解锁"状态的灰色版本素材;从彩色图快速生成黑白版本作为蒙版参考。
376
-
377
- ### negate — 反色
378
-
379
- ```bash
380
- playcraft image negate \
381
- --input assets/images/ui/icon.png \
382
- --output assets/images/ui/icon_inverted.png
383
-
384
- # 仅反色 RGB,保留透明通道
385
- playcraft image negate \
386
- --input assets/images/ui/icon.png \
387
- --output assets/images/ui/icon_inverted.png \
388
- --no-alpha
389
- ```
390
-
391
- ---
392
-
393
- ## 7. convert — 格式转换
394
-
395
- ```bash
396
- # 转换为 WebP(有损,质量 85)
397
- playcraft image convert \
398
- --input assets/images/bg/background.png \
399
- --output assets/images/bg/background.webp \
400
- --format webp \
401
- --quality 85
402
-
403
- # 转换为 WebP 无损(适合像素艺术和 UI)
404
- playcraft image convert \
405
- --input assets/images/ui/icon.png \
406
- --output assets/images/ui/icon.webp \
407
- --format webp \
408
- --lossless
409
-
410
- # 转换为 AVIF(更小体积,兼容性稍差)
411
- playcraft image convert \
412
- --input assets/images/bg/background.png \
413
- --output assets/images/bg/background.avif \
414
- --format avif \
415
- --quality 80
416
- ```
417
-
418
- **格式选型建议**(生产阶段):
419
-
420
- - 生产阶段统一用 **PNG**(无损,最大兼容性,方便后续处理)
421
- - 格式转换交给构建阶段的 `playcraft build --convert-webp` 批量处理
422
-
423
- ---
424
-
425
- ## 8. info — 查看图片信息
426
-
427
- ```bash
428
- # 查看尺寸、格式、文件大小
429
- playcraft image info --input assets/images/bg/background.png
430
-
431
- # JSON 格式输出(方便脚本解析)
432
- playcraft image info --input assets/images/bg/background.png --json
433
- ```
434
-
435
- 输出包含:`width`、`height`、`format`、`channels`、`size`(字节)、`hasAlpha`。
436
-
437
- ---
438
-
439
- ## 9. 完整参数速查表
440
-
441
- | 命令 | 必填参数 | 可选参数 | 默认值 |
442
- | ----------- | -------------------------------------------------------- | -------------------------------------------------- | -------------- |
443
- | `crop` | `--input --output --x --y --width --height` | — | — |
444
- | `overlay` | `--base --overlay --output` | `--x --y --gravity` | gravity=center |
445
- | `pad` | `--input --output` | `--top --bottom --left --right --all --background` | 0px / 透明 |
446
- | `trim` | `--input --output` | `--threshold` | 10 |
447
- | `resize` | `--input --output` + (`--width`/`--height` 或 `--scale`) | `--fit` | fit=cover |
448
- | `rotate` | `--input --output --angle` | `--background` | 透明 |
449
- | `flip` | `--input --output` | `--direction` | horizontal |
450
- | `blur` | `--input --output` | `--sigma` | 3 |
451
- | `tint` | `--input --output --color` | — | — |
452
- | `grayscale` | `--input --output` | — | — |
453
- | `negate` | `--input --output` | `--no-alpha` | — |
454
- | `convert` | `--input --output` | `--format --quality --lossless` | quality=85 |
455
- | `info` | `--input` | `--json` | — |
456
-
457
- ---
458
-
459
- ## 10. 常用组合配方
460
-
461
- ### 配方 A:统一精灵图尺寸
462
-
463
- ```bash
464
- # 1. 裁掉冗余透明边
465
- playcraft image trim --input raw_sprite.png --output /tmp/trimmed.png
466
-
467
- # 2. 用 pad 统一到目标尺寸(128×128)
468
- # (trim 后获取尺寸:playcraft image info --input /tmp/trimmed.png --json)
469
- playcraft image pad \
470
- --input /tmp/trimmed.png \
471
- --output final_sprite_128x128.png \
472
- --top 8 --bottom 8 --left 16 --right 16
473
- ```
474
-
475
- ### 配方 B:制作"选中高亮"效果
476
-
477
- ```bash
478
- # 1. 生成发光边框层(pad + tint)
479
- playcraft image pad --input tile.png --output /tmp/glow.png --all 6 --background "#FFD70099"
480
- # 2. 把原图叠回
481
- playcraft image overlay --base /tmp/glow.png --overlay tile.png --output tile_selected.png --gravity center
482
- ```
483
-
484
- ### 配方 C:批量生成镜像动画帧
485
-
486
- ```bash
487
- # 已有向右跑的动画帧,批量生成向左跑
488
- for f in assets/images/character/run_right_*.png; do
489
- name=$(basename "$f" .png)
490
- playcraft image flip \
491
- --input "$f" \
492
- --output "assets/images/character/${name/right/left}.png" \
493
- --direction horizontal
494
- done
495
- ```