@12ui/design 0.2.71 → 0.2.73
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 +248 -55
- package/SKILL.md +28 -33
- package/dist/cli-arguments.d.ts.map +1 -1
- package/dist/cli-arguments.js +3 -0
- package/dist/cli-arguments.js.map +1 -1
- package/dist/cli-branch-command.d.ts.map +1 -1
- package/dist/cli-branch-command.js +4 -0
- package/dist/cli-branch-command.js.map +1 -1
- package/dist/cli-capabilities.d.ts +35 -1
- package/dist/cli-capabilities.d.ts.map +1 -1
- package/dist/cli-capabilities.js +36 -1
- package/dist/cli-capabilities.js.map +1 -1
- package/dist/cli-corpus-command.d.ts +5 -4
- package/dist/cli-corpus-command.d.ts.map +1 -1
- package/dist/cli-corpus-command.js +17 -26
- package/dist/cli-corpus-command.js.map +1 -1
- package/dist/cli-corpus-run.js +1 -1
- package/dist/cli-corpus-run.js.map +1 -1
- package/dist/cli-draft-command.js +1 -1
- package/dist/cli-draft-command.js.map +1 -1
- package/dist/cli-help/design.d.ts +26 -6
- package/dist/cli-help/design.d.ts.map +1 -1
- package/dist/cli-help/design.js +39 -7
- package/dist/cli-help/design.js.map +1 -1
- package/dist/cli-help/index.d.ts +206 -7
- package/dist/cli-help/index.d.ts.map +1 -1
- package/dist/cli-help/index.js +4 -0
- package/dist/cli-help/index.js.map +1 -1
- package/dist/cli-help/meta.d.ts +1 -1
- package/dist/cli-help/meta.d.ts.map +1 -1
- package/dist/cli-help/meta.js +2 -1
- package/dist/cli-help/meta.js.map +1 -1
- package/dist/cli-help/scene.d.ts +96 -0
- package/dist/cli-help/scene.d.ts.map +1 -0
- package/dist/cli-help/scene.js +162 -0
- package/dist/cli-help/scene.js.map +1 -0
- package/dist/cli-help/workflow.d.ts +90 -0
- package/dist/cli-help/workflow.d.ts.map +1 -0
- package/dist/cli-help/workflow.js +89 -0
- package/dist/cli-help/workflow.js.map +1 -0
- package/dist/cli-open-browser.d.ts +7 -0
- package/dist/cli-open-browser.d.ts.map +1 -0
- package/dist/cli-open-browser.js +25 -0
- package/dist/cli-open-browser.js.map +1 -0
- package/dist/cli-prototype-command.d.ts +3 -1
- package/dist/cli-prototype-command.d.ts.map +1 -1
- package/dist/cli-prototype-command.js +33 -7
- package/dist/cli-prototype-command.js.map +1 -1
- package/dist/cli-review-command.d.ts.map +1 -1
- package/dist/cli-review-command.js +1 -16
- package/dist/cli-review-command.js.map +1 -1
- package/dist/cli-run.d.ts.map +1 -1
- package/dist/cli-run.js +41 -3
- package/dist/cli-run.js.map +1 -1
- package/dist/cli-scene-command.d.ts +3 -0
- package/dist/cli-scene-command.d.ts.map +1 -0
- package/dist/cli-scene-command.js +292 -0
- package/dist/cli-scene-command.js.map +1 -0
- package/dist/cli-usage.d.ts +8 -0
- package/dist/cli-usage.d.ts.map +1 -1
- package/dist/cli-usage.js +65 -6
- package/dist/cli-usage.js.map +1 -1
- package/dist/cli-workflow-command.d.ts +8 -0
- package/dist/cli-workflow-command.d.ts.map +1 -0
- package/dist/cli-workflow-command.js +97 -0
- package/dist/cli-workflow-command.js.map +1 -0
- package/dist/cli-workspace-command.d.ts +25 -0
- package/dist/cli-workspace-command.d.ts.map +1 -0
- package/dist/cli-workspace-command.js +95 -0
- package/dist/cli-workspace-command.js.map +1 -0
- package/dist/config.d.ts +6 -0
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +12 -4
- package/dist/config.js.map +1 -1
- package/dist/corpus-access.d.ts +11 -0
- package/dist/corpus-access.d.ts.map +1 -0
- package/dist/corpus-access.js +18 -0
- package/dist/corpus-access.js.map +1 -0
- package/dist/corpus-client.d.ts +11 -11
- package/dist/corpus-client.d.ts.map +1 -1
- package/dist/corpus-client.js +17 -6
- package/dist/corpus-client.js.map +1 -1
- package/dist/corpus-inspiration-failure.d.ts +1 -1
- package/dist/corpus-inspiration-failure.js +2 -2
- package/dist/corpus-inspiration-failure.js.map +1 -1
- package/dist/corpus-reference-download-retry.d.ts.map +1 -1
- package/dist/corpus-reference-download-retry.js +11 -1
- package/dist/corpus-reference-download-retry.js.map +1 -1
- package/dist/corpus-request-error.d.ts +2 -0
- package/dist/corpus-request-error.d.ts.map +1 -1
- package/dist/corpus-request-error.js +2 -0
- package/dist/corpus-request-error.js.map +1 -1
- package/dist/corpus-retry-guidance.d.ts +5 -0
- package/dist/corpus-retry-guidance.d.ts.map +1 -0
- package/dist/corpus-retry-guidance.js +18 -0
- package/dist/corpus-retry-guidance.js.map +1 -0
- package/dist/improve-pricing-plan.d.ts.map +1 -1
- package/dist/improve-pricing-plan.js +2 -4
- package/dist/improve-pricing-plan.js.map +1 -1
- package/dist/index.d.ts +10 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +10 -1
- package/dist/index.js.map +1 -1
- package/dist/legacy-skill-catalog.d.ts.map +1 -1
- package/dist/legacy-skill-catalog.js +52 -0
- package/dist/legacy-skill-catalog.js.map +1 -1
- package/dist/mcp-slate-command.d.ts +31 -0
- package/dist/mcp-slate-command.d.ts.map +1 -0
- package/dist/mcp-slate-command.js +118 -0
- package/dist/mcp-slate-command.js.map +1 -0
- package/dist/mcp-slate-image.d.ts +22 -0
- package/dist/mcp-slate-image.d.ts.map +1 -0
- package/dist/mcp-slate-image.js +28 -0
- package/dist/mcp-slate-image.js.map +1 -0
- package/dist/mcp-slate-latest.d.ts +13 -0
- package/dist/mcp-slate-latest.d.ts.map +1 -0
- package/dist/mcp-slate-latest.js +34 -0
- package/dist/mcp-slate-latest.js.map +1 -0
- package/dist/mcp-slate-names.d.ts +25 -0
- package/dist/mcp-slate-names.d.ts.map +1 -0
- package/dist/mcp-slate-names.js +49 -0
- package/dist/mcp-slate-names.js.map +1 -0
- package/dist/mcp-slate-resource.d.ts +5 -0
- package/dist/mcp-slate-resource.d.ts.map +1 -0
- package/dist/mcp-slate-resource.js +37 -0
- package/dist/mcp-slate-resource.js.map +1 -0
- package/dist/mcp-slate-run.d.ts +41 -0
- package/dist/mcp-slate-run.d.ts.map +1 -0
- package/dist/mcp-slate-run.js +88 -0
- package/dist/mcp-slate-run.js.map +1 -0
- package/dist/mcp-slate-tool-defs.d.ts +61 -0
- package/dist/mcp-slate-tool-defs.d.ts.map +1 -0
- package/dist/mcp-slate-tool-defs.js +247 -0
- package/dist/mcp-slate-tool-defs.js.map +1 -0
- package/dist/mcp-slate-tools.d.ts +8 -0
- package/dist/mcp-slate-tools.d.ts.map +1 -0
- package/dist/mcp-slate-tools.js +45 -0
- package/dist/mcp-slate-tools.js.map +1 -0
- package/dist/mcp-slate-ui-copy.d.ts +134 -0
- package/dist/mcp-slate-ui-copy.d.ts.map +1 -0
- package/dist/mcp-slate-ui-copy.js +136 -0
- package/dist/mcp-slate-ui-copy.js.map +1 -0
- package/dist/mcp-slate-ui-script-bridge.d.ts +18 -0
- package/dist/mcp-slate-ui-script-bridge.d.ts.map +1 -0
- package/dist/mcp-slate-ui-script-bridge.js +137 -0
- package/dist/mcp-slate-ui-script-bridge.js.map +1 -0
- package/dist/mcp-slate-ui-script-browser.d.ts +12 -0
- package/dist/mcp-slate-ui-script-browser.d.ts.map +1 -0
- package/dist/mcp-slate-ui-script-browser.js +19 -0
- package/dist/mcp-slate-ui-script-browser.js.map +1 -0
- package/dist/mcp-slate-ui-script-dialog.d.ts +20 -0
- package/dist/mcp-slate-ui-script-dialog.d.ts.map +1 -0
- package/dist/mcp-slate-ui-script-dialog.js +332 -0
- package/dist/mcp-slate-ui-script-dialog.js.map +1 -0
- package/dist/mcp-slate-ui-script-inline.d.ts +10 -0
- package/dist/mcp-slate-ui-script-inline.d.ts.map +1 -0
- package/dist/mcp-slate-ui-script-inline.js +221 -0
- package/dist/mcp-slate-ui-script-inline.js.map +1 -0
- package/dist/mcp-slate-ui-script-inspiration.d.ts +12 -0
- package/dist/mcp-slate-ui-script-inspiration.d.ts.map +1 -0
- package/dist/mcp-slate-ui-script-inspiration.js +216 -0
- package/dist/mcp-slate-ui-script-inspiration.js.map +1 -0
- package/dist/mcp-slate-ui-script-more.d.ts +30 -0
- package/dist/mcp-slate-ui-script-more.d.ts.map +1 -0
- package/dist/mcp-slate-ui-script-more.js +225 -0
- package/dist/mcp-slate-ui-script-more.js.map +1 -0
- package/dist/mcp-slate-ui-script-progress.d.ts +7 -0
- package/dist/mcp-slate-ui-script-progress.d.ts.map +1 -0
- package/dist/mcp-slate-ui-script-progress.js +9 -0
- package/dist/mcp-slate-ui-script-progress.js.map +1 -0
- package/dist/mcp-slate-ui-script-remote.d.ts +28 -0
- package/dist/mcp-slate-ui-script-remote.d.ts.map +1 -0
- package/dist/mcp-slate-ui-script-remote.js +147 -0
- package/dist/mcp-slate-ui-script-remote.js.map +1 -0
- package/dist/mcp-slate-ui-script-scribble.d.ts +19 -0
- package/dist/mcp-slate-ui-script-scribble.d.ts.map +1 -0
- package/dist/mcp-slate-ui-script-scribble.js +114 -0
- package/dist/mcp-slate-ui-script-scribble.js.map +1 -0
- package/dist/mcp-slate-ui-script-select.d.ts +16 -0
- package/dist/mcp-slate-ui-script-select.d.ts.map +1 -0
- package/dist/mcp-slate-ui-script-select.js +73 -0
- package/dist/mcp-slate-ui-script-select.js.map +1 -0
- package/dist/mcp-slate-ui-script-stage.d.ts +11 -0
- package/dist/mcp-slate-ui-script-stage.d.ts.map +1 -0
- package/dist/mcp-slate-ui-script-stage.js +181 -0
- package/dist/mcp-slate-ui-script-stage.js.map +1 -0
- package/dist/mcp-slate-ui-script-state.d.ts +13 -0
- package/dist/mcp-slate-ui-script-state.d.ts.map +1 -0
- package/dist/mcp-slate-ui-script-state.js +306 -0
- package/dist/mcp-slate-ui-script-state.js.map +1 -0
- package/dist/mcp-slate-ui-script-thumbtools.d.ts +23 -0
- package/dist/mcp-slate-ui-script-thumbtools.d.ts.map +1 -0
- package/dist/mcp-slate-ui-script-thumbtools.js +103 -0
- package/dist/mcp-slate-ui-script-thumbtools.js.map +1 -0
- package/dist/mcp-slate-ui-script.d.ts +28 -0
- package/dist/mcp-slate-ui-script.d.ts.map +1 -0
- package/dist/mcp-slate-ui-script.js +58 -0
- package/dist/mcp-slate-ui-script.js.map +1 -0
- package/dist/mcp-slate-ui-styles-dialog.d.ts +17 -0
- package/dist/mcp-slate-ui-styles-dialog.d.ts.map +1 -0
- package/dist/mcp-slate-ui-styles-dialog.js +73 -0
- package/dist/mcp-slate-ui-styles-dialog.js.map +1 -0
- package/dist/mcp-slate-ui-styles-stage.d.ts +12 -0
- package/dist/mcp-slate-ui-styles-stage.d.ts.map +1 -0
- package/dist/mcp-slate-ui-styles-stage.js +53 -0
- package/dist/mcp-slate-ui-styles-stage.js.map +1 -0
- package/dist/mcp-slate-ui-styles-thumbtools.d.ts +10 -0
- package/dist/mcp-slate-ui-styles-thumbtools.d.ts.map +1 -0
- package/dist/mcp-slate-ui-styles-thumbtools.js +25 -0
- package/dist/mcp-slate-ui-styles-thumbtools.js.map +1 -0
- package/dist/mcp-slate-ui-styles.d.ts +13 -0
- package/dist/mcp-slate-ui-styles.d.ts.map +1 -0
- package/dist/mcp-slate-ui-styles.js +117 -0
- package/dist/mcp-slate-ui-styles.js.map +1 -0
- package/dist/mcp-slate-ui.d.ts +16 -0
- package/dist/mcp-slate-ui.d.ts.map +1 -0
- package/dist/mcp-slate-ui.js +58 -0
- package/dist/mcp-slate-ui.js.map +1 -0
- package/dist/mcp-slate-workspace-tools.d.ts +15 -0
- package/dist/mcp-slate-workspace-tools.d.ts.map +1 -0
- package/dist/mcp-slate-workspace-tools.js +155 -0
- package/dist/mcp-slate-workspace-tools.js.map +1 -0
- package/dist/mcp-tool-definitions.d.ts.map +1 -1
- package/dist/mcp-tool-definitions.js +9 -7
- package/dist/mcp-tool-definitions.js.map +1 -1
- package/dist/mcp-tool-handler.d.ts +8 -2
- package/dist/mcp-tool-handler.d.ts.map +1 -1
- package/dist/mcp-tool-handler.js +34 -13
- package/dist/mcp-tool-handler.js.map +1 -1
- package/dist/mcp-workflow-tools.d.ts +6 -0
- package/dist/mcp-workflow-tools.d.ts.map +1 -0
- package/dist/mcp-workflow-tools.js +108 -0
- package/dist/mcp-workflow-tools.js.map +1 -0
- package/dist/prototype-browsers.d.ts +8 -2
- package/dist/prototype-browsers.d.ts.map +1 -1
- package/dist/prototype-browsers.js +8 -3
- package/dist/prototype-browsers.js.map +1 -1
- package/dist/prototype-label-client.d.ts +5 -0
- package/dist/prototype-label-client.d.ts.map +1 -1
- package/dist/prototype-label-client.js.map +1 -1
- package/dist/prototype-poststep.d.ts +2 -2
- package/dist/prototype-poststep.d.ts.map +1 -1
- package/dist/prototype-poststep.js +3 -0
- package/dist/prototype-poststep.js.map +1 -1
- package/dist/prototype-process.js +1 -1
- package/dist/prototype-process.js.map +1 -1
- package/dist/prototype-run-record.d.ts +6 -2
- package/dist/prototype-run-record.d.ts.map +1 -1
- package/dist/prototype-run-record.js +6 -0
- package/dist/prototype-run-record.js.map +1 -1
- package/dist/prototype-runner.d.ts +2 -2
- package/dist/prototype-runner.d.ts.map +1 -1
- package/dist/prototype-runner.js +5 -2
- package/dist/prototype-runner.js.map +1 -1
- package/dist/prototype-workflow-contract.d.ts +13 -0
- package/dist/prototype-workflow-contract.d.ts.map +1 -0
- package/dist/prototype-workflow-contract.js +82 -0
- package/dist/prototype-workflow-contract.js.map +1 -0
- package/dist/prototype-workflow-labels.d.ts +29 -0
- package/dist/prototype-workflow-labels.d.ts.map +1 -0
- package/dist/prototype-workflow-labels.js +93 -0
- package/dist/prototype-workflow-labels.js.map +1 -0
- package/dist/run-journal-commands.d.ts.map +1 -1
- package/dist/run-journal-commands.js +24 -5
- package/dist/run-journal-commands.js.map +1 -1
- package/dist/scene/camera-model.d.ts +48 -0
- package/dist/scene/camera-model.d.ts.map +1 -0
- package/dist/scene/camera-model.js +89 -0
- package/dist/scene/camera-model.js.map +1 -0
- package/dist/scene/camera-solve.d.ts +58 -0
- package/dist/scene/camera-solve.d.ts.map +1 -0
- package/dist/scene/camera-solve.js +288 -0
- package/dist/scene/camera-solve.js.map +1 -0
- package/dist/scene/capture-plan.d.ts +28 -0
- package/dist/scene/capture-plan.d.ts.map +1 -0
- package/dist/scene/capture-plan.js +79 -0
- package/dist/scene/capture-plan.js.map +1 -0
- package/dist/scene/capture.d.ts +21 -0
- package/dist/scene/capture.d.ts.map +1 -0
- package/dist/scene/capture.js +118 -0
- package/dist/scene/capture.js.map +1 -0
- package/dist/scene/image-colors.d.ts +25 -0
- package/dist/scene/image-colors.d.ts.map +1 -0
- package/dist/scene/image-colors.js +110 -0
- package/dist/scene/image-colors.js.map +1 -0
- package/dist/scene/image-rectify.d.ts +25 -0
- package/dist/scene/image-rectify.d.ts.map +1 -0
- package/dist/scene/image-rectify.js +82 -0
- package/dist/scene/image-rectify.js.map +1 -0
- package/dist/scene/image-sheet.d.ts +19 -0
- package/dist/scene/image-sheet.d.ts.map +1 -0
- package/dist/scene/image-sheet.js +118 -0
- package/dist/scene/image-sheet.js.map +1 -0
- package/dist/scene/least-squares.d.ts +31 -0
- package/dist/scene/least-squares.d.ts.map +1 -0
- package/dist/scene/least-squares.js +173 -0
- package/dist/scene/least-squares.js.map +1 -0
- package/dist/scene/numbers.d.ts +17 -0
- package/dist/scene/numbers.d.ts.map +1 -0
- package/dist/scene/numbers.js +39 -0
- package/dist/scene/numbers.js.map +1 -0
- package/dist/scene/placement.d.ts +43 -0
- package/dist/scene/placement.d.ts.map +1 -0
- package/dist/scene/placement.js +107 -0
- package/dist/scene/placement.js.map +1 -0
- package/dist/scene/raster.d.ts +18 -0
- package/dist/scene/raster.d.ts.map +1 -0
- package/dist/scene/raster.js +31 -0
- package/dist/scene/raster.js.map +1 -0
- package/dist/scene/scene-kit.d.ts +20 -0
- package/dist/scene/scene-kit.d.ts.map +1 -0
- package/dist/scene/scene-kit.js +74 -0
- package/dist/scene/scene-kit.js.map +1 -0
- package/dist/scene/scene-verbs.d.ts +4 -0
- package/dist/scene/scene-verbs.d.ts.map +1 -0
- package/dist/scene/scene-verbs.js +5 -0
- package/dist/scene/scene-verbs.js.map +1 -0
- package/dist/scene/seeded-random.d.ts +20 -0
- package/dist/scene/seeded-random.d.ts.map +1 -0
- package/dist/scene/seeded-random.js +42 -0
- package/dist/scene/seeded-random.js.map +1 -0
- package/dist/scene/spec-expression.d.ts +25 -0
- package/dist/scene/spec-expression.d.ts.map +1 -0
- package/dist/scene/spec-expression.js +234 -0
- package/dist/scene/spec-expression.js.map +1 -0
- package/dist/scene/static-server.d.ts +13 -0
- package/dist/scene/static-server.d.ts.map +1 -0
- package/dist/scene/static-server.js +99 -0
- package/dist/scene/static-server.js.map +1 -0
- package/dist/server.d.ts +22 -2
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +44 -8
- package/dist/server.js.map +1 -1
- package/dist/slate-actions.d.ts +38 -0
- package/dist/slate-actions.d.ts.map +1 -0
- package/dist/slate-actions.js +102 -0
- package/dist/slate-actions.js.map +1 -0
- package/dist/slate-annotate.d.ts +36 -0
- package/dist/slate-annotate.d.ts.map +1 -0
- package/dist/slate-annotate.js +71 -0
- package/dist/slate-annotate.js.map +1 -0
- package/dist/slate-approvals.d.ts +61 -0
- package/dist/slate-approvals.d.ts.map +1 -0
- package/dist/slate-approvals.js +153 -0
- package/dist/slate-approvals.js.map +1 -0
- package/dist/slate-browser-decision.d.ts +30 -0
- package/dist/slate-browser-decision.d.ts.map +1 -0
- package/dist/slate-browser-decision.js +24 -0
- package/dist/slate-browser-decision.js.map +1 -0
- package/dist/slate-browser-host-script.d.ts +14 -0
- package/dist/slate-browser-host-script.d.ts.map +1 -0
- package/dist/slate-browser-host-script.js +125 -0
- package/dist/slate-browser-host-script.js.map +1 -0
- package/dist/slate-browser-host.d.ts +9 -0
- package/dist/slate-browser-host.d.ts.map +1 -0
- package/dist/slate-browser-host.js +37 -0
- package/dist/slate-browser-host.js.map +1 -0
- package/dist/slate-browser-server.d.ts +37 -0
- package/dist/slate-browser-server.d.ts.map +1 -0
- package/dist/slate-browser-server.js +186 -0
- package/dist/slate-browser-server.js.map +1 -0
- package/dist/slate-commit.d.ts +28 -0
- package/dist/slate-commit.d.ts.map +1 -0
- package/dist/slate-commit.js +218 -0
- package/dist/slate-commit.js.map +1 -0
- package/dist/slate-corpus.d.ts +14 -0
- package/dist/slate-corpus.d.ts.map +1 -0
- package/dist/slate-corpus.js +32 -0
- package/dist/slate-corpus.js.map +1 -0
- package/dist/slate-edit-prompt.d.ts +18 -0
- package/dist/slate-edit-prompt.d.ts.map +1 -0
- package/dist/slate-edit-prompt.js +41 -0
- package/dist/slate-edit-prompt.js.map +1 -0
- package/dist/slate-edit-runner.d.ts +4 -0
- package/dist/slate-edit-runner.d.ts.map +1 -0
- package/dist/slate-edit-runner.js +90 -0
- package/dist/slate-edit-runner.js.map +1 -0
- package/dist/slate-editability.d.ts +20 -0
- package/dist/slate-editability.d.ts.map +1 -0
- package/dist/slate-editability.js +19 -0
- package/dist/slate-editability.js.map +1 -0
- package/dist/slate-errors.d.ts +15 -0
- package/dist/slate-errors.d.ts.map +1 -0
- package/dist/slate-errors.js +21 -0
- package/dist/slate-errors.js.map +1 -0
- package/dist/slate-handoff-options.d.ts +40 -0
- package/dist/slate-handoff-options.d.ts.map +1 -0
- package/dist/slate-handoff-options.js +127 -0
- package/dist/slate-handoff-options.js.map +1 -0
- package/dist/slate-handoff.d.ts +11 -0
- package/dist/slate-handoff.d.ts.map +1 -0
- package/dist/slate-handoff.js +56 -0
- package/dist/slate-handoff.js.map +1 -0
- package/dist/slate-ids.d.ts +33 -0
- package/dist/slate-ids.d.ts.map +1 -0
- package/dist/slate-ids.js +47 -0
- package/dist/slate-ids.js.map +1 -0
- package/dist/slate-image-executor.d.ts +39 -0
- package/dist/slate-image-executor.d.ts.map +1 -0
- package/dist/slate-image-executor.js +52 -0
- package/dist/slate-image-executor.js.map +1 -0
- package/dist/slate-inspiration.d.ts +22 -0
- package/dist/slate-inspiration.d.ts.map +1 -0
- package/dist/slate-inspiration.js +112 -0
- package/dist/slate-inspiration.js.map +1 -0
- package/dist/slate-labels.d.ts +11 -0
- package/dist/slate-labels.d.ts.map +1 -0
- package/dist/slate-labels.js +32 -0
- package/dist/slate-labels.js.map +1 -0
- package/dist/slate-ledger.d.ts +29 -0
- package/dist/slate-ledger.d.ts.map +1 -0
- package/dist/slate-ledger.js +65 -0
- package/dist/slate-ledger.js.map +1 -0
- package/dist/slate-liveness.d.ts +26 -0
- package/dist/slate-liveness.d.ts.map +1 -0
- package/dist/slate-liveness.js +49 -0
- package/dist/slate-liveness.js.map +1 -0
- package/dist/slate-local-image.d.ts +19 -0
- package/dist/slate-local-image.d.ts.map +1 -0
- package/dist/slate-local-image.js +36 -0
- package/dist/slate-local-image.js.map +1 -0
- package/dist/slate-lock.d.ts +64 -0
- package/dist/slate-lock.d.ts.map +1 -0
- package/dist/slate-lock.js +178 -0
- package/dist/slate-lock.js.map +1 -0
- package/dist/slate-paths.d.ts +45 -0
- package/dist/slate-paths.d.ts.map +1 -0
- package/dist/slate-paths.js +132 -0
- package/dist/slate-paths.js.map +1 -0
- package/dist/slate-pick.d.ts +29 -0
- package/dist/slate-pick.d.ts.map +1 -0
- package/dist/slate-pick.js +55 -0
- package/dist/slate-pick.js.map +1 -0
- package/dist/slate-reference-ids.d.ts +6 -0
- package/dist/slate-reference-ids.d.ts.map +1 -0
- package/dist/slate-reference-ids.js +17 -0
- package/dist/slate-reference-ids.js.map +1 -0
- package/dist/slate-reference-store.d.ts +23 -0
- package/dist/slate-reference-store.d.ts.map +1 -0
- package/dist/slate-reference-store.js +46 -0
- package/dist/slate-reference-store.js.map +1 -0
- package/dist/slate-resume.d.ts +19 -0
- package/dist/slate-resume.d.ts.map +1 -0
- package/dist/slate-resume.js +94 -0
- package/dist/slate-resume.js.map +1 -0
- package/dist/slate-round-params.d.ts +20 -0
- package/dist/slate-round-params.d.ts.map +1 -0
- package/dist/slate-round-params.js +32 -0
- package/dist/slate-round-params.js.map +1 -0
- package/dist/slate-round-prompt.d.ts +18 -0
- package/dist/slate-round-prompt.d.ts.map +1 -0
- package/dist/slate-round-prompt.js +20 -0
- package/dist/slate-round-prompt.js.map +1 -0
- package/dist/slate-round-runner.d.ts +4 -0
- package/dist/slate-round-runner.d.ts.map +1 -0
- package/dist/slate-round-runner.js +125 -0
- package/dist/slate-round-runner.js.map +1 -0
- package/dist/slate-round-search.d.ts +7 -0
- package/dist/slate-round-search.d.ts.map +1 -0
- package/dist/slate-round-search.js +77 -0
- package/dist/slate-round-search.js.map +1 -0
- package/dist/slate-run-action.d.ts +14 -0
- package/dist/slate-run-action.d.ts.map +1 -0
- package/dist/slate-run-action.js +81 -0
- package/dist/slate-run-action.js.map +1 -0
- package/dist/slate-runner-context.d.ts +57 -0
- package/dist/slate-runner-context.d.ts.map +1 -0
- package/dist/slate-runner-context.js +79 -0
- package/dist/slate-runner-context.js.map +1 -0
- package/dist/slate-runner-failure.d.ts +8 -0
- package/dist/slate-runner-failure.d.ts.map +1 -0
- package/dist/slate-runner-failure.js +17 -0
- package/dist/slate-runner-failure.js.map +1 -0
- package/dist/slate-runner-flag.d.ts +3 -0
- package/dist/slate-runner-flag.d.ts.map +1 -0
- package/dist/slate-runner-flag.js +3 -0
- package/dist/slate-runner-flag.js.map +1 -0
- package/dist/slate-runner-main.d.ts +31 -0
- package/dist/slate-runner-main.d.ts.map +1 -0
- package/dist/slate-runner-main.js +132 -0
- package/dist/slate-runner-main.js.map +1 -0
- package/dist/slate-runner-spawn.d.ts +23 -0
- package/dist/slate-runner-spawn.d.ts.map +1 -0
- package/dist/slate-runner-spawn.js +27 -0
- package/dist/slate-runner-spawn.js.map +1 -0
- package/dist/slate-runtime.d.ts +38 -0
- package/dist/slate-runtime.d.ts.map +1 -0
- package/dist/slate-runtime.js +48 -0
- package/dist/slate-runtime.js.map +1 -0
- package/dist/slate-versions.d.ts +26 -0
- package/dist/slate-versions.d.ts.map +1 -0
- package/dist/slate-versions.js +110 -0
- package/dist/slate-versions.js.map +1 -0
- package/dist/slate-view-contract.d.ts +233 -0
- package/dist/slate-view-contract.d.ts.map +1 -0
- package/dist/slate-view-contract.js +17 -0
- package/dist/slate-view-contract.js.map +1 -0
- package/dist/slate-view-types.d.ts +2 -0
- package/dist/slate-view-types.d.ts.map +1 -0
- package/dist/slate-view-types.js +2 -0
- package/dist/slate-view-types.js.map +1 -0
- package/dist/slate-view.d.ts +19 -0
- package/dist/slate-view.d.ts.map +1 -0
- package/dist/slate-view.js +184 -0
- package/dist/slate-view.js.map +1 -0
- package/dist/slate-workspace-parse.d.ts +20 -0
- package/dist/slate-workspace-parse.d.ts.map +1 -0
- package/dist/slate-workspace-parse.js +437 -0
- package/dist/slate-workspace-parse.js.map +1 -0
- package/dist/slate-workspace-store.d.ts +44 -0
- package/dist/slate-workspace-store.d.ts.map +1 -0
- package/dist/slate-workspace-store.js +270 -0
- package/dist/slate-workspace-store.js.map +1 -0
- package/dist/slate-workspace-types.d.ts +176 -0
- package/dist/slate-workspace-types.d.ts.map +1 -0
- package/dist/slate-workspace-types.js +13 -0
- package/dist/slate-workspace-types.js.map +1 -0
- package/dist/workflow/adapter-12ui.d.ts +4 -0
- package/dist/workflow/adapter-12ui.d.ts.map +1 -0
- package/dist/workflow/adapter-12ui.js +147 -0
- package/dist/workflow/adapter-12ui.js.map +1 -0
- package/dist/workflow/adapter-layerdoc.d.ts +16 -0
- package/dist/workflow/adapter-layerdoc.d.ts.map +1 -0
- package/dist/workflow/adapter-layerdoc.js +116 -0
- package/dist/workflow/adapter-layerdoc.js.map +1 -0
- package/dist/workflow/adapter-openai.d.ts +4 -0
- package/dist/workflow/adapter-openai.d.ts.map +1 -0
- package/dist/workflow/adapter-openai.js +166 -0
- package/dist/workflow/adapter-openai.js.map +1 -0
- package/dist/workflow/adapter-process.d.ts +7 -0
- package/dist/workflow/adapter-process.d.ts.map +1 -0
- package/dist/workflow/adapter-process.js +174 -0
- package/dist/workflow/adapter-process.js.map +1 -0
- package/dist/workflow/adapter-prototype-labels.d.ts +15 -0
- package/dist/workflow/adapter-prototype-labels.d.ts.map +1 -0
- package/dist/workflow/adapter-prototype-labels.js +71 -0
- package/dist/workflow/adapter-prototype-labels.js.map +1 -0
- package/dist/workflow/adapter-types.d.ts +40 -0
- package/dist/workflow/adapter-types.d.ts.map +1 -0
- package/dist/workflow/adapter-types.js +2 -0
- package/dist/workflow/adapter-types.js.map +1 -0
- package/dist/workflow/adapter-utils.d.ts +11 -0
- package/dist/workflow/adapter-utils.d.ts.map +1 -0
- package/dist/workflow/adapter-utils.js +72 -0
- package/dist/workflow/adapter-utils.js.map +1 -0
- package/dist/workflow/adapters.d.ts +6 -0
- package/dist/workflow/adapters.d.ts.map +1 -0
- package/dist/workflow/adapters.js +25 -0
- package/dist/workflow/adapters.js.map +1 -0
- package/dist/workflow/artifact.d.ts +11 -0
- package/dist/workflow/artifact.d.ts.map +1 -0
- package/dist/workflow/artifact.js +94 -0
- package/dist/workflow/artifact.js.map +1 -0
- package/dist/workflow/bundle-collect.d.ts +8 -0
- package/dist/workflow/bundle-collect.d.ts.map +1 -0
- package/dist/workflow/bundle-collect.js +56 -0
- package/dist/workflow/bundle-collect.js.map +1 -0
- package/dist/workflow/bundle-export.d.ts +16 -0
- package/dist/workflow/bundle-export.d.ts.map +1 -0
- package/dist/workflow/bundle-export.js +174 -0
- package/dist/workflow/bundle-export.js.map +1 -0
- package/dist/workflow/bundle-paths.d.ts +7 -0
- package/dist/workflow/bundle-paths.d.ts.map +1 -0
- package/dist/workflow/bundle-paths.js +35 -0
- package/dist/workflow/bundle-paths.js.map +1 -0
- package/dist/workflow/bundle.d.ts +4 -0
- package/dist/workflow/bundle.d.ts.map +1 -0
- package/dist/workflow/bundle.js +4 -0
- package/dist/workflow/bundle.js.map +1 -0
- package/dist/workflow/capture.d.ts +36 -0
- package/dist/workflow/capture.d.ts.map +1 -0
- package/dist/workflow/capture.js +81 -0
- package/dist/workflow/capture.js.map +1 -0
- package/dist/workflow/continuation-branch.d.ts +15 -0
- package/dist/workflow/continuation-branch.d.ts.map +1 -0
- package/dist/workflow/continuation-branch.js +103 -0
- package/dist/workflow/continuation-branch.js.map +1 -0
- package/dist/workflow/continuation-plans.d.ts +38 -0
- package/dist/workflow/continuation-plans.d.ts.map +1 -0
- package/dist/workflow/continuation-plans.js +78 -0
- package/dist/workflow/continuation-plans.js.map +1 -0
- package/dist/workflow/continuation.d.ts +25 -0
- package/dist/workflow/continuation.d.ts.map +1 -0
- package/dist/workflow/continuation.js +89 -0
- package/dist/workflow/continuation.js.map +1 -0
- package/dist/workflow/layerdoc-reader.d.ts +27 -0
- package/dist/workflow/layerdoc-reader.d.ts.map +1 -0
- package/dist/workflow/layerdoc-reader.js +81 -0
- package/dist/workflow/layerdoc-reader.js.map +1 -0
- package/dist/workflow/project-evidence.d.ts +48 -0
- package/dist/workflow/project-evidence.d.ts.map +1 -0
- package/dist/workflow/project-evidence.js +200 -0
- package/dist/workflow/project-evidence.js.map +1 -0
- package/dist/workflow/providers.d.ts +35 -0
- package/dist/workflow/providers.d.ts.map +1 -0
- package/dist/workflow/providers.js +110 -0
- package/dist/workflow/providers.js.map +1 -0
- package/dist/workflow/recipes-layerdoc-validation.d.ts +4 -0
- package/dist/workflow/recipes-layerdoc-validation.d.ts.map +1 -0
- package/dist/workflow/recipes-layerdoc-validation.js +98 -0
- package/dist/workflow/recipes-layerdoc-validation.js.map +1 -0
- package/dist/workflow/recipes-result-validation.d.ts +6 -0
- package/dist/workflow/recipes-result-validation.d.ts.map +1 -0
- package/dist/workflow/recipes-result-validation.js +38 -0
- package/dist/workflow/recipes-result-validation.js.map +1 -0
- package/dist/workflow/recipes-schemas.d.ts +7 -0
- package/dist/workflow/recipes-schemas.d.ts.map +1 -0
- package/dist/workflow/recipes-schemas.js +67 -0
- package/dist/workflow/recipes-schemas.js.map +1 -0
- package/dist/workflow/recipes-validation.d.ts +14 -0
- package/dist/workflow/recipes-validation.d.ts.map +1 -0
- package/dist/workflow/recipes-validation.js +68 -0
- package/dist/workflow/recipes-validation.js.map +1 -0
- package/dist/workflow/recipes.d.ts +20 -0
- package/dist/workflow/recipes.d.ts.map +1 -0
- package/dist/workflow/recipes.js +167 -0
- package/dist/workflow/recipes.js.map +1 -0
- package/dist/workflow/routing.d.ts +4 -0
- package/dist/workflow/routing.d.ts.map +1 -0
- package/dist/workflow/routing.js +28 -0
- package/dist/workflow/routing.js.map +1 -0
- package/dist/workflow/schema.d.ts +5 -0
- package/dist/workflow/schema.d.ts.map +1 -0
- package/dist/workflow/schema.js +29 -0
- package/dist/workflow/schema.js.map +1 -0
- package/dist/workflow/service.d.ts +59 -0
- package/dist/workflow/service.d.ts.map +1 -0
- package/dist/workflow/service.js +170 -0
- package/dist/workflow/service.js.map +1 -0
- package/dist/workflow/store-json.d.ts +5 -0
- package/dist/workflow/store-json.d.ts.map +1 -0
- package/dist/workflow/store-json.js +35 -0
- package/dist/workflow/store-json.js.map +1 -0
- package/dist/workflow/store-lock.d.ts +3 -0
- package/dist/workflow/store-lock.d.ts.map +1 -0
- package/dist/workflow/store-lock.js +85 -0
- package/dist/workflow/store-lock.js.map +1 -0
- package/dist/workflow/store-paths.d.ts +17 -0
- package/dist/workflow/store-paths.d.ts.map +1 -0
- package/dist/workflow/store-paths.js +67 -0
- package/dist/workflow/store-paths.js.map +1 -0
- package/dist/workflow/store-validation.d.ts +7 -0
- package/dist/workflow/store-validation.d.ts.map +1 -0
- package/dist/workflow/store-validation.js +119 -0
- package/dist/workflow/store-validation.js.map +1 -0
- package/dist/workflow/store.d.ts +10 -0
- package/dist/workflow/store.d.ts.map +1 -0
- package/dist/workflow/store.js +193 -0
- package/dist/workflow/store.js.map +1 -0
- package/dist/workflow/types.d.ts +120 -0
- package/dist/workflow/types.d.ts.map +1 -0
- package/dist/workflow/types.js +15 -0
- package/dist/workflow/types.js.map +1 -0
- package/dist/workflow-transport.d.ts +28 -0
- package/dist/workflow-transport.d.ts.map +1 -0
- package/dist/workflow-transport.js +184 -0
- package/dist/workflow-transport.js.map +1 -0
- package/open-design.json +2 -2
- package/package.json +4 -1
- package/prototype-kit/tests/rules-check.mjs +9 -0
- package/runtime/codex-conversion/src/images/native-invoke.mjs +1 -1
- package/runtime/codex-conversion/src/images/native.mjs +8 -4
- package/runtime/layerdoc-validator.mjs +1860 -0
- package/scene-kit/starter/camera.js +10 -0
- package/scene-kit/starter/gobo.js +60 -0
- package/scene-kit/starter/index.html +23 -0
- package/scene-kit/starter/lib.js +84 -0
- package/scene-kit/starter/main.js +78 -0
- package/scene-kit/starter/scene.js +33 -0
- package/scene-kit/vendor/LICENSE +21 -0
- package/scene-kit/vendor/addons/geometries/RoundedBoxGeometry.js +216 -0
- package/scene-kit/vendor/addons/renderers/CSS3DRenderer.js +454 -0
- package/scene-kit/vendor/three.core.js +60586 -0
- package/scene-kit/vendor/three.module.js +19719 -0
- package/skills/12ui-design/SKILL.md +21 -61
- package/skills/12ui-design/improve.md +5 -1
- package/skills/12ui-design/inspire.md +8 -5
- package/skills/12ui-design/outputs.md +23 -2
- package/skills/12ui-design/scene.md +172 -0
- package/skills/12ui-design/session.md +161 -0
package/dist/cli-run.js
CHANGED
|
@@ -16,14 +16,18 @@ import { runPackageCommand, runPackageTemplateCommand } from './cli-package-comm
|
|
|
16
16
|
import { runReviewCommand } from './cli-review-command.js';
|
|
17
17
|
import { runPrototypeCommand } from './cli-prototype-command.js';
|
|
18
18
|
import { runRedesignCommand } from './cli-redesign-command.js';
|
|
19
|
+
import { runSceneCommand } from './cli-scene-command.js';
|
|
19
20
|
import { runSkillCommand } from './cli-skill-command.js';
|
|
20
21
|
import { runSpendCommand, writeRunDirectorySpendSummary } from './cli-spend-command.js';
|
|
21
22
|
import { printUsage } from './cli-usage.js';
|
|
22
|
-
import { readConversionConfig } from './config.js';
|
|
23
|
+
import { readConversionConfig, readCorpusConfig } from './config.js';
|
|
23
24
|
import { planRunJournal } from './run-journal-commands.js';
|
|
24
25
|
import { withRunJournal } from './run-journal.js';
|
|
25
26
|
import { startMcpServer } from './server.js';
|
|
27
|
+
import { runSlateRunner } from './slate-runner-main.js';
|
|
26
28
|
import { printVersion } from './cli-version.js';
|
|
29
|
+
import { runWorkflowCommand } from './cli-workflow-command.js';
|
|
30
|
+
import { runWorkspaceCommand } from './cli-workspace-command.js';
|
|
27
31
|
/**
|
|
28
32
|
* The CLI dispatcher, separated from the executable entry point so the whole
|
|
29
33
|
* command surface can be driven in a test without spawning a process.
|
|
@@ -56,7 +60,8 @@ const dispatch = async (args) => {
|
|
|
56
60
|
}
|
|
57
61
|
if (command[0] === 'corpus') {
|
|
58
62
|
const result = await runCorpusCommand(command[1], flags);
|
|
59
|
-
|
|
63
|
+
if ('manifest' in result)
|
|
64
|
+
journal.note({ artifacts: [result.manifest] });
|
|
60
65
|
return;
|
|
61
66
|
}
|
|
62
67
|
// One argument, dispatched on shape. It replaced the old per-subsystem
|
|
@@ -154,9 +159,28 @@ const dispatch = async (args) => {
|
|
|
154
159
|
});
|
|
155
160
|
return;
|
|
156
161
|
}
|
|
162
|
+
if (command[0] === 'slate-runner') {
|
|
163
|
+
// Internal: started only by the design workspace's MCP server (see slate-runner-spawn.ts).
|
|
164
|
+
process.exitCode = await runSlateRunner({ root: command[1] ?? '', opId: command[2] ?? '' });
|
|
165
|
+
return;
|
|
166
|
+
}
|
|
167
|
+
// Local Three.js scene helpers: no service, no run, no authentication.
|
|
168
|
+
if (command[0] === 'scene') {
|
|
169
|
+
await runSceneCommand(command.slice(1), flags);
|
|
170
|
+
return;
|
|
171
|
+
}
|
|
172
|
+
// The design workspace as a web page, for an agent that has no workspace tools: no service, no account.
|
|
173
|
+
if (command[0] === 'workspace') {
|
|
174
|
+
await runWorkspaceCommand(command, flags);
|
|
175
|
+
return;
|
|
176
|
+
}
|
|
157
177
|
if (command[0] === 'mcp') {
|
|
158
178
|
await startMcpServer({
|
|
159
|
-
|
|
179
|
+
corpusConfig: () => readCorpusConfig({
|
|
180
|
+
origin: stringFlag(flags, 'origin'),
|
|
181
|
+
apiKey: stringFlag(flags, 'api-key'),
|
|
182
|
+
}),
|
|
183
|
+
config: () => readConversionConfig({
|
|
160
184
|
origin: stringFlag(flags, 'origin'),
|
|
161
185
|
apiKey: stringFlag(flags, 'api-key'),
|
|
162
186
|
}),
|
|
@@ -179,9 +203,23 @@ export const runCli = async (argv, options = {}) => {
|
|
|
179
203
|
await printVersion();
|
|
180
204
|
return;
|
|
181
205
|
}
|
|
206
|
+
// The workflow owns its durable ledger and resolves hosted credentials only
|
|
207
|
+
// after execution routing has selected an explicitly authorized provider.
|
|
208
|
+
if (command[0] === 'workflow') {
|
|
209
|
+
await runWorkflowCommand(command, flags);
|
|
210
|
+
return;
|
|
211
|
+
}
|
|
212
|
+
if (['providers', 'allow-paid', 'session-capabilities', 'trust-codex-config'].some(name => flags[name] !== undefined)
|
|
213
|
+
|| stringFlag(flags, 'engine') === 'session') {
|
|
214
|
+
throw new CliRefusal('Provider routing flags require the shared workflow commands. Use 12ui workflow --help; legacy commands will not ignore these flags and start hosted work.', 'workflow_routing_required');
|
|
215
|
+
}
|
|
182
216
|
if (await dispatchLocalCommand(command, flags))
|
|
183
217
|
return;
|
|
184
218
|
const plan = await planRunJournal({ command, flags, argv });
|
|
219
|
+
if (command[0] === 'corpus') {
|
|
220
|
+
await withRunJournal(plan, journal => dispatch({ command, flags, journal }));
|
|
221
|
+
return;
|
|
222
|
+
}
|
|
185
223
|
await withRunJournal(plan, (journal) => runWithPendingAuthRedemption(() => dispatch({
|
|
186
224
|
command,
|
|
187
225
|
flags,
|
package/dist/cli-run.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli-run.js","sourceRoot":"","sources":["../src/cli-run.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAC/D,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAE,UAAU,EAAiB,MAAM,oBAAoB,CAAC;AAC/F,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EACL,4BAA4B,GAE7B,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,iBAAiB,EAAE,yBAAyB,EAAE,MAAM,0BAA0B,CAAC;AACxF,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,eAAe,EAAE,6BAA6B,EAAE,MAAM,wBAAwB,CAAC;AACxF,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"cli-run.js","sourceRoot":"","sources":["../src/cli-run.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAC/D,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAE,UAAU,EAAiB,MAAM,oBAAoB,CAAC;AAC/F,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EACL,4BAA4B,GAE7B,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,iBAAiB,EAAE,yBAAyB,EAAE,MAAM,0BAA0B,CAAC;AACxF,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,eAAe,EAAE,6BAA6B,EAAE,MAAM,wBAAwB,CAAC;AACxF,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AACrE,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAwB,MAAM,kBAAkB,CAAC;AACxE,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAEjE;;;;;;;;;GASG;AAEH,MAAM,iBAAiB,GAAG,GAAS,EAAE;IACnC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,gBAAgB,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;AACzD,CAAC,CAAC;AAEF,MAAM,QAAQ,GAAG,KAAK,EAAE,IAIvB,EAAiB,EAAE;IAClB,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC;IACzC,IAAI,OAAO,CAAC,CAAC,CAAC,KAAK,OAAO,EAAE,CAAC;QAC3B,MAAM,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;QACzC,OAAO;IACT,CAAC;IACD,IAAI,OAAO,CAAC,CAAC,CAAC,KAAK,MAAM,EAAE,CAAC;QAC1B,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACvB,MAAM,IAAI,UAAU,CAAC,mDAAmD,EAAE,gBAAgB,CAAC,CAAC;QAC9F,CAAC;QACD,MAAM,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;QACpD,OAAO;IACT,CAAC;IACD,IAAI,OAAO,CAAC,CAAC,CAAC,KAAK,KAAK,EAAE,CAAC;QACzB,MAAM,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;QACvC,OAAO;IACT,CAAC;IACD,IAAI,OAAO,CAAC,CAAC,CAAC,KAAK,QAAQ,EAAE,CAAC;QAC5B,MAAM,MAAM,GAAG,MAAM,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;QACzD,IAAI,UAAU,IAAI,MAAM;YAAE,OAAO,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;QACzE,OAAO;IACT,CAAC;IACD,uEAAuE;IACvE,oBAAoB;IACpB,IAAI,OAAO,CAAC,CAAC,CAAC,KAAK,MAAM,EAAE,CAAC;QAC1B,MAAM,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;QACrD,OAAO;IACT,CAAC;IACD,IAAI,OAAO,CAAC,CAAC,CAAC,KAAK,OAAO,EAAE,CAAC;QAC3B,IAAI,OAAO,CAAC,CAAC,CAAC,KAAK,QAAQ,EAAE,CAAC;YAC5B,MAAM,IAAI,UAAU,CAClB,0FAA0F;kBACxF,8DACA,OAAO,CAAC,CAAC,CAAC,IAAI,WAChB,wDAAwD,EACxD,sBAAsB,CACvB,CAAC;QACJ,CAAC;QACD,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,KAAK,EAAE;YAC1C,cAAc,EAAE,CAAC,MAAM,EAAE,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC;SACrE,CAAC,CAAC;QACH,OAAO,CAAC,IAAI,CAAC;YACX,KAAK,EAAE,MAAM,CAAC,QAAQ,CAAC,KAAK;YAC5B,SAAS,EAAE,MAAM,CAAC,SAAS;YAC3B,SAAS,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC;YAClC,QAAQ,EAAE,MAAM,CAAC,QAAQ;SAC1B,CAAC,CAAC;QACH,OAAO;IACT,CAAC;IACD,IAAI,OAAO,CAAC,CAAC,CAAC,KAAK,QAAQ,EAAE,CAAC;QAC5B,MAAM,cAAc,GAAG,OAAO,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC;QAC1C,MAAM,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE;YACxC,OAAO;YACP,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC7C,cAAc,EAAE,CAAC,MAAM,EAAE,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;SAC1F,CAAC,CAAC;QACH,OAAO;IACT,CAAC;IACD,IAAI,OAAO,CAAC,CAAC,CAAC,KAAK,OAAO,EAAE,CAAC;QAC3B,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACvB,MAAM,IAAI,UAAU,CAAC,qDAAqD,EAAE,iBAAiB,CAAC,CAAC;QACjG,CAAC;QACD,MAAM,eAAe,CAAC,KAAK,CAAC,CAAC;QAC7B,OAAO;IACT,CAAC;IACD,IAAI,OAAO,CAAC,CAAC,CAAC,KAAK,UAAU,EAAE,CAAC;QAC9B,MAAM,MAAM,GAAG,MAAM,kBAAkB,CAAC,OAAO,EAAE,KAAK,EAAE;YACtD,OAAO;YACP,cAAc,EAAE,CAAC,MAAM,EAAE,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC;SACrE,CAAC,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,6BAA6B,CAAC;YAClD,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,MAAM,EAAE,oBAAoB,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,KAAK,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,KAAK,EAAE,SAAS,CAAC,EAAE,CAAC;SAC5G,CAAC,CAAC;QACH,OAAO,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC5C,OAAO;IACT,CAAC;IACD,IAAI,OAAO,CAAC,CAAC,CAAC,KAAK,SAAS,EAAE,CAAC;QAC7B,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,OAAO,EAAE,KAAK,EAAE;YACrD,OAAO;YACP,cAAc,EAAE,CAAC,MAAM,EAAE,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC;SACrE,CAAC,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,6BAA6B,CAAC;YAClD,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,MAAM,EAAE,oBAAoB,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,KAAK,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,KAAK,EAAE,SAAS,CAAC,EAAE,CAAC;SAC5G,CAAC,CAAC;QACH,OAAO,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC5C,OAAO;IACT,CAAC;IACD,IAAI,OAAO,CAAC,CAAC,CAAC,KAAK,cAAc,EAAE,CAAC;QAClC,iBAAiB,EAAE,CAAC;QACpB,OAAO;IACT,CAAC;IACD,IAAI,OAAO,CAAC,CAAC,CAAC,KAAK,WAAW,EAAE,CAAC;QAC/B,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACvB,MAAM,IAAI,UAAU,CAAC,0DAA0D,EAAE,0BAA0B,CAAC,CAAC;QAC/G,CAAC;QACD,MAAM,mBAAmB,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;QAC1D,OAAO;IACT,CAAC;IACD,IAAI,OAAO,CAAC,CAAC,CAAC,KAAK,QAAQ,EAAE,CAAC;QAC5B,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACvB,MAAM,IAAI,UAAU,CAAC,gDAAgD,EAAE,uBAAuB,CAAC,CAAC;QAClG,CAAC;QACD,MAAM,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;QAC1C,OAAO;IACT,CAAC;IACD,4EAA4E;IAC5E,IAAI,OAAO,CAAC,CAAC,CAAC,KAAK,SAAS,IAAI,OAAO,CAAC,CAAC,CAAC,KAAK,SAAS,EAAE,CAAC;QACzD,IAAI,yBAAyB,CAAC,KAAK,CAAC;YAAE,OAAO;QAC7C,MAAM,SAAS,GAAG,MAAM,iBAAiB,CAAC,KAAK,CAAC,CAAC;QACjD,OAAO,CAAC,IAAI,CAAC;YACX,KAAK,EAAE,SAAS,CAAC,SAAS;YAC1B,GAAG,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACtE,SAAS,EAAE;gBACT,SAAS,CAAC,SAAS;gBACnB,GAAG,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;aACrF;SACF,CAAC,CAAC;QACH,OAAO;IACT,CAAC;IACD,IAAI,OAAO,CAAC,CAAC,CAAC,KAAK,cAAc,EAAE,CAAC;QAClC,2FAA2F;QAC3F,OAAO,CAAC,QAAQ,GAAG,MAAM,cAAc,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QAC5F,OAAO;IACT,CAAC;IACD,uEAAuE;IACvE,IAAI,OAAO,CAAC,CAAC,CAAC,KAAK,OAAO,EAAE,CAAC;QAC3B,MAAM,eAAe,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;QAC/C,OAAO;IACT,CAAC;IACD,wGAAwG;IACxG,IAAI,OAAO,CAAC,CAAC,CAAC,KAAK,WAAW,EAAE,CAAC;QAC/B,MAAM,mBAAmB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QAC1C,OAAO;IACT,CAAC;IACD,IAAI,OAAO,CAAC,CAAC,CAAC,KAAK,KAAK,EAAE,CAAC;QACzB,MAAM,cAAc,CAAC;YACnB,YAAY,EAAE,GAAG,EAAE,CAAC,gBAAgB,CAAC;gBACnC,MAAM,EAAE,UAAU,CAAC,KAAK,EAAE,QAAQ,CAAC;gBACnC,MAAM,EAAE,UAAU,CAAC,KAAK,EAAE,SAAS,CAAC;aACrC,CAAC;YACF,MAAM,EAAE,GAAG,EAAE,CAAC,oBAAoB,CAAC;gBACjC,MAAM,EAAE,UAAU,CAAC,KAAK,EAAE,QAAQ,CAAC;gBACnC,MAAM,EAAE,UAAU,CAAC,KAAK,EAAE,SAAS,CAAC;aACrC,CAAC;SACH,CAAC,CAAC;QACH,OAAO;IACT,CAAC;IACD,MAAM,oBAAoB,CAAC,OAAO,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;AACtD,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,MAAM,GAAG,KAAK,EACzB,IAAc,EACd,UAAkE,EAAE,EACrD,EAAE;IACjB,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC;IACnD,IAAI,WAAW,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC;QAC/B,2EAA2E;QAC3E,4EAA4E;QAC5E,0EAA0E;QAC1E,6DAA6D;QAC7D,UAAU,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,WAAW,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;QAC1F,OAAO;IACT,CAAC;IACD,IAAI,WAAW,CAAC,KAAK,EAAE,SAAS,CAAC,IAAI,OAAO,CAAC,CAAC,CAAC,KAAK,SAAS,EAAE,CAAC;QAC9D,MAAM,YAAY,EAAE,CAAC;QACrB,OAAO;IACT,CAAC;IACD,4EAA4E;IAC5E,0EAA0E;IAC1E,IAAI,OAAO,CAAC,CAAC,CAAC,KAAK,UAAU,EAAE,CAAC;QAC9B,MAAM,kBAAkB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QACzC,OAAO;IACT,CAAC;IACD,IAAI,CAAC,WAAW,EAAE,YAAY,EAAE,sBAAsB,EAAE,oBAAoB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,SAAS,CAAC;WAChH,UAAU,CAAC,KAAK,EAAE,QAAQ,CAAC,KAAK,SAAS,EAAE,CAAC;QAC/C,MAAM,IAAI,UAAU,CAAC,2JAA2J,EAAE,2BAA2B,CAAC,CAAC;IACjN,CAAC;IACD,IAAI,MAAM,oBAAoB,CAAC,OAAO,EAAE,KAAK,CAAC;QAAE,OAAO;IACvD,MAAM,IAAI,GAAG,MAAM,cAAc,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IAC5D,IAAI,OAAO,CAAC,CAAC,CAAC,KAAK,QAAQ,EAAE,CAAC;QAC5B,MAAM,cAAc,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC;QAC7E,OAAO;IACT,CAAC;IACD,MAAM,cAAc,CAAC,IAAI,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,4BAA4B,CAClE,GAAG,EAAE,CAAC,QAAQ,CAAC;QACb,OAAO;QACP,KAAK;QACL,OAAO;KACR,CAAC,EACF;QACE,GAAG,OAAO,CAAC,WAAW;QACtB,MAAM,EAAE,UAAU,CAAC,KAAK,EAAE,QAAQ,CAAC,IAAI,OAAO,CAAC,WAAW,EAAE,MAAM;QAClE,WAAW,EAAE,UAAU,CAAC,KAAK,EAAE,cAAc,CAAC,IAAI,OAAO,CAAC,WAAW,EAAE,WAAW;KACnF,CACF,CAAC,CAAC;AACL,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli-scene-command.d.ts","sourceRoot":"","sources":["../src/cli-scene-command.ts"],"names":[],"mappings":"AAGA,OAAO,EAAc,KAAK,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AA8Q/D,eAAO,MAAM,eAAe,GAAU,MAAM,SAAS,MAAM,EAAE,EAAE,OAAO,QAAQ,KAAG,OAAO,CAAC,IAAI,CAiB5F,CAAC"}
|
|
@@ -0,0 +1,292 @@
|
|
|
1
|
+
import { readFile, writeFile } from 'node:fs/promises';
|
|
2
|
+
import path from 'node:path';
|
|
3
|
+
import { stringFlag } from './cli-arguments.js';
|
|
4
|
+
import { CliRefusal } from './cli-refusal.js';
|
|
5
|
+
import { usageRefusal } from './cli-usage.js';
|
|
6
|
+
import { cameraFromFile, projectPoints } from './scene/camera-model.js';
|
|
7
|
+
import { CameraSpecError, parseCameraSpec, solveCamera } from './scene/camera-solve.js';
|
|
8
|
+
import { captureScene } from './scene/capture.js';
|
|
9
|
+
import { isLoopbackPageUrl, parseCaptureView, parseOrbits } from './scene/capture-plan.js';
|
|
10
|
+
import { compareWithSource, sampleSourceBox } from './scene/image-colors.js';
|
|
11
|
+
import { rectifyFile } from './scene/image-rectify.js';
|
|
12
|
+
import { writeBlend, writeContactSheet } from './scene/image-sheet.js';
|
|
13
|
+
import { parseBox, parseNumberTuple, parseSize, SceneArgumentError, splitList } from './scene/numbers.js';
|
|
14
|
+
import { castRays, formatProjectLine, formatRayLine, rectOfKnownSize, rectOnPlane } from './scene/placement.js';
|
|
15
|
+
import { initSceneFolder, SceneInitConflict } from './scene/scene-kit.js';
|
|
16
|
+
import { SCENE_VERBS } from './scene/scene-verbs.js';
|
|
17
|
+
import { SpecExpressionError } from './scene/spec-expression.js';
|
|
18
|
+
import { startStaticServer } from './scene/static-server.js';
|
|
19
|
+
/**
|
|
20
|
+
* `12ui scene <verb>`: the local helpers an agent uses to rebuild a design
|
|
21
|
+
* image as a live Three.js scene (the 12ui-design skill's scene.md). Every verb reads and
|
|
22
|
+
* writes only the paths on its command line and calls no service; capture uses
|
|
23
|
+
* the managed Chromium and blocks every request that would leave the machine.
|
|
24
|
+
*/
|
|
25
|
+
/** Per-verb flags; `quiet` and `help` are accepted everywhere. */
|
|
26
|
+
const VERB_FLAGS = {
|
|
27
|
+
init: [],
|
|
28
|
+
solve: ['out'],
|
|
29
|
+
ray: ['plane-y'],
|
|
30
|
+
project: [],
|
|
31
|
+
rect: ['corners', 'plane-y', 'width', 'height'],
|
|
32
|
+
serve: ['port'],
|
|
33
|
+
capture: ['out-dir', 'size', 'orbit', 'hide', 'eval'],
|
|
34
|
+
sheet: ['out', 'cols', 'note'],
|
|
35
|
+
blend: ['out'],
|
|
36
|
+
colors: ['box', 'exclude', 'exclude-dom', 'region'],
|
|
37
|
+
rectify: ['corners', 'size', 'out'],
|
|
38
|
+
};
|
|
39
|
+
const isSceneVerb = (value) => (SCENE_VERBS.includes(value ?? ''));
|
|
40
|
+
const refuse = (verb, reason) => {
|
|
41
|
+
throw usageRefusal({ reason, code: 'scene_arguments', verb: verb ? ['scene', verb] : ['scene'] });
|
|
42
|
+
};
|
|
43
|
+
const requireFlag = (verb, flags, name) => {
|
|
44
|
+
const value = stringFlag(flags, name);
|
|
45
|
+
if (value === undefined || value.trim() === '')
|
|
46
|
+
refuse(verb, `12ui scene ${verb} needs --${name}.`);
|
|
47
|
+
return value;
|
|
48
|
+
};
|
|
49
|
+
const numberFlag = (verb, flags, name) => {
|
|
50
|
+
const value = stringFlag(flags, name);
|
|
51
|
+
if (value === undefined)
|
|
52
|
+
return undefined;
|
|
53
|
+
const parsed = Number(value);
|
|
54
|
+
if (!Number.isFinite(parsed))
|
|
55
|
+
refuse(verb, `--${name} must be a number, got "${value}".`);
|
|
56
|
+
return parsed;
|
|
57
|
+
};
|
|
58
|
+
/** Input mistakes are refusals (nothing ran); everything else is a failure. */
|
|
59
|
+
const asRefusal = async (verb, work) => {
|
|
60
|
+
try {
|
|
61
|
+
return await work();
|
|
62
|
+
}
|
|
63
|
+
catch (error) {
|
|
64
|
+
if (error instanceof CliRefusal)
|
|
65
|
+
throw error;
|
|
66
|
+
if (error instanceof CameraSpecError || error instanceof SpecExpressionError
|
|
67
|
+
|| error instanceof SceneInitConflict || error instanceof SceneArgumentError) {
|
|
68
|
+
throw new CliRefusal(error.message, 'scene_arguments');
|
|
69
|
+
}
|
|
70
|
+
const code = error.code;
|
|
71
|
+
if (code === 'ENOENT' || code === 'EISDIR') {
|
|
72
|
+
throw new CliRefusal(`12ui scene ${verb}: ${error.message}`, 'scene_arguments');
|
|
73
|
+
}
|
|
74
|
+
throw error;
|
|
75
|
+
}
|
|
76
|
+
};
|
|
77
|
+
const readJsonFile = async (file, what) => {
|
|
78
|
+
const text = await readFile(file, 'utf8');
|
|
79
|
+
try {
|
|
80
|
+
return JSON.parse(text);
|
|
81
|
+
}
|
|
82
|
+
catch (error) {
|
|
83
|
+
throw new CliRefusal(`${what} ${file} is not valid JSON: ${error.message}`, 'scene_arguments');
|
|
84
|
+
}
|
|
85
|
+
};
|
|
86
|
+
const readCamera = async (file) => cameraFromFile(await readJsonFile(file, 'camera file'), file);
|
|
87
|
+
const cornerList = (verb, text) => {
|
|
88
|
+
const corners = splitList(text).map((pair) => parseNumberTuple(pair, 2, 'each corner'));
|
|
89
|
+
if (corners.length !== 4)
|
|
90
|
+
refuse(verb, '--corners must be four u,v pixels separated by ";" in the order TL;TR;BR;BL.');
|
|
91
|
+
return corners;
|
|
92
|
+
};
|
|
93
|
+
const positionalCount = (verb, args, min, max = min) => {
|
|
94
|
+
if (args.length < min || args.length > max) {
|
|
95
|
+
refuse(verb, `12ui scene ${verb} takes ${min === max ? min : `${min} or more`} argument(s); got ${args.length}.`);
|
|
96
|
+
}
|
|
97
|
+
};
|
|
98
|
+
const waitForStopSignal = () => new Promise((resolve) => {
|
|
99
|
+
const stop = () => {
|
|
100
|
+
process.off('SIGINT', stop);
|
|
101
|
+
process.off('SIGTERM', stop);
|
|
102
|
+
resolve();
|
|
103
|
+
};
|
|
104
|
+
process.on('SIGINT', stop);
|
|
105
|
+
process.on('SIGTERM', stop);
|
|
106
|
+
});
|
|
107
|
+
const VERBS = {
|
|
108
|
+
init: async (args) => {
|
|
109
|
+
positionalCount('init', args, 1);
|
|
110
|
+
const directory = path.resolve(args[0]);
|
|
111
|
+
const written = await asRefusal('init', () => initSceneFolder(directory));
|
|
112
|
+
console.log(`wrote ${written.length} files to ${directory}: the starter harness and three.js r186`
|
|
113
|
+
+ ' (vendor/, MIT licence in vendor/LICENSE). Nothing was downloaded.');
|
|
114
|
+
console.log('next:');
|
|
115
|
+
console.log(` 12ui scene serve ${args[0]} --port <port>`);
|
|
116
|
+
console.log(` 12ui scene capture http://127.0.0.1:<port>/index.html --out-dir ${path.join(args[0], 'shots', 'i01')}`);
|
|
117
|
+
},
|
|
118
|
+
solve: async (args, flags) => {
|
|
119
|
+
positionalCount('solve', args, 1);
|
|
120
|
+
const result = await asRefusal('solve', async () => solveCamera(parseCameraSpec(await readJsonFile(args[0], 'spec'), args[0])));
|
|
121
|
+
const text = JSON.stringify(result, null, 1);
|
|
122
|
+
const out = stringFlag(flags, 'out');
|
|
123
|
+
if (out)
|
|
124
|
+
await writeFile(out, `${text}\n`);
|
|
125
|
+
console.log(text);
|
|
126
|
+
},
|
|
127
|
+
ray: async (args, flags) => {
|
|
128
|
+
positionalCount('ray', args, 2, Number.POSITIVE_INFINITY);
|
|
129
|
+
const planeY = numberFlag('ray', flags, 'plane-y');
|
|
130
|
+
if (planeY === undefined)
|
|
131
|
+
return refuse('ray', '12ui scene ray needs --plane-y.');
|
|
132
|
+
const { camera, size } = await asRefusal('ray', () => readCamera(args[0]));
|
|
133
|
+
const pixels = await asRefusal('ray', () => args.slice(1).map((pair) => parseNumberTuple(pair, 2, 'each pixel')));
|
|
134
|
+
const lines = castRays(camera, size, pixels, planeY);
|
|
135
|
+
if (lines.some((line) => line.behind))
|
|
136
|
+
console.error('warning: a ray points away from that plane (above the horizon?)');
|
|
137
|
+
for (const line of lines)
|
|
138
|
+
console.log(formatRayLine(line));
|
|
139
|
+
},
|
|
140
|
+
project: async (args) => {
|
|
141
|
+
positionalCount('project', args, 2, Number.POSITIVE_INFINITY);
|
|
142
|
+
const { camera, size } = await asRefusal('project', () => readCamera(args[0]));
|
|
143
|
+
const points = await asRefusal('project', () => args.slice(1).map((triple) => parseNumberTuple(triple, 3, 'each point')));
|
|
144
|
+
projectPoints(camera, points, size).forEach((projection, index) => {
|
|
145
|
+
console.log(formatProjectLine(points[index], projection.u, projection.v));
|
|
146
|
+
});
|
|
147
|
+
},
|
|
148
|
+
rect: async (args, flags) => {
|
|
149
|
+
positionalCount('rect', args, 1);
|
|
150
|
+
const corners = await asRefusal('rect', () => cornerList('rect', requireFlag('rect', flags, 'corners')));
|
|
151
|
+
const planeY = numberFlag('rect', flags, 'plane-y');
|
|
152
|
+
const width = numberFlag('rect', flags, 'width');
|
|
153
|
+
const height = numberFlag('rect', flags, 'height');
|
|
154
|
+
if (planeY !== undefined && (width !== undefined || height !== undefined)) {
|
|
155
|
+
refuse('rect', 'Give --plane-y for a rectangle lying on a plane, or --width and/or --height for a free pose; not both.');
|
|
156
|
+
}
|
|
157
|
+
if (planeY === undefined && width === undefined && height === undefined) {
|
|
158
|
+
refuse('rect', 'Give --plane-y, or --width and/or --height (an omitted side is solved: a non-square object of unknown depth).');
|
|
159
|
+
}
|
|
160
|
+
for (const [name, value] of [['width', width], ['height', height]]) {
|
|
161
|
+
if (value !== undefined && !(value > 0))
|
|
162
|
+
refuse('rect', `--${name} must be a positive length.`);
|
|
163
|
+
}
|
|
164
|
+
const { camera, size } = await asRefusal('rect', () => readCamera(args[0]));
|
|
165
|
+
if (planeY !== undefined) {
|
|
166
|
+
const { pose, behind } = rectOnPlane(camera, size, corners, planeY);
|
|
167
|
+
if (behind)
|
|
168
|
+
console.error('warning: a ray points away from that plane (above the horizon?)');
|
|
169
|
+
console.log(JSON.stringify(pose, null, 1));
|
|
170
|
+
return;
|
|
171
|
+
}
|
|
172
|
+
console.log(JSON.stringify(rectOfKnownSize(camera, size, corners, {
|
|
173
|
+
...(width !== undefined ? { width } : {}),
|
|
174
|
+
...(height !== undefined ? { height } : {}),
|
|
175
|
+
}), null, 1));
|
|
176
|
+
},
|
|
177
|
+
serve: async (args, flags) => {
|
|
178
|
+
positionalCount('serve', args, 1);
|
|
179
|
+
const port = numberFlag('serve', flags, 'port') ?? 0;
|
|
180
|
+
if (!Number.isInteger(port) || port < 0 || port > 65535)
|
|
181
|
+
refuse('serve', '--port must be an integer from 0 to 65535.');
|
|
182
|
+
const directory = path.resolve(args[0]);
|
|
183
|
+
const server = await asRefusal('serve', () => startStaticServer({ directory, port }));
|
|
184
|
+
console.log(`serving ${directory} on http://127.0.0.1:${server.port} pid ${process.pid}`);
|
|
185
|
+
console.log(`stop it with: kill ${process.pid}`);
|
|
186
|
+
await waitForStopSignal();
|
|
187
|
+
await server.close();
|
|
188
|
+
},
|
|
189
|
+
capture: async (args, flags) => {
|
|
190
|
+
positionalCount('capture', args, 1, Number.POSITIVE_INFINITY);
|
|
191
|
+
const url = args[0];
|
|
192
|
+
if (!isLoopbackPageUrl(url)) {
|
|
193
|
+
refuse('capture', `capture loads only a page served on this machine (127.0.0.1 or localhost); got ${url}.`
|
|
194
|
+
+ ' Serve the scene folder with 12ui scene serve first.');
|
|
195
|
+
}
|
|
196
|
+
const outDir = requireFlag('capture', flags, 'out-dir');
|
|
197
|
+
const options = await asRefusal('capture', () => ({
|
|
198
|
+
url,
|
|
199
|
+
outDir: path.resolve(outDir),
|
|
200
|
+
size: parseSize(stringFlag(flags, 'size') ?? '1536x1024', '--size'),
|
|
201
|
+
orbits: parseOrbits(stringFlag(flags, 'orbit') ?? '-15,-10,10,15'),
|
|
202
|
+
hide: (stringFlag(flags, 'hide') ?? '').split(',').map((part) => part.trim()).filter(Boolean),
|
|
203
|
+
...(stringFlag(flags, 'eval') ? { evalScript: stringFlag(flags, 'eval') } : {}),
|
|
204
|
+
views: args.slice(1).map(parseCaptureView),
|
|
205
|
+
}));
|
|
206
|
+
await captureScene(options, (line) => console.log(line));
|
|
207
|
+
},
|
|
208
|
+
sheet: async (args, flags) => {
|
|
209
|
+
positionalCount('sheet', args, 2, Number.POSITIVE_INFINITY);
|
|
210
|
+
const out = requireFlag('sheet', flags, 'out');
|
|
211
|
+
const columns = numberFlag('sheet', flags, 'cols');
|
|
212
|
+
const note = stringFlag(flags, 'note');
|
|
213
|
+
const size = await asRefusal('sheet', () => writeContactSheet({
|
|
214
|
+
sourceFile: args[0],
|
|
215
|
+
captureFiles: args.slice(1),
|
|
216
|
+
outFile: out,
|
|
217
|
+
...(columns !== undefined ? { columns } : {}),
|
|
218
|
+
...(note ? { note } : {}),
|
|
219
|
+
}));
|
|
220
|
+
console.log(`wrote ${out} ${size.width}x${size.height}`);
|
|
221
|
+
},
|
|
222
|
+
blend: async (args, flags) => {
|
|
223
|
+
positionalCount('blend', args, 2);
|
|
224
|
+
const out = requireFlag('blend', flags, 'out');
|
|
225
|
+
const size = await asRefusal('blend', () => writeBlend({ sourceFile: args[0], renderFile: args[1], outFile: out }));
|
|
226
|
+
console.log(`wrote ${out} ${size.width}x${size.height}`);
|
|
227
|
+
},
|
|
228
|
+
colors: async (args, flags) => {
|
|
229
|
+
const box = stringFlag(flags, 'box');
|
|
230
|
+
if (box !== undefined) {
|
|
231
|
+
positionalCount('colors', args, 1);
|
|
232
|
+
for (const other of ['exclude', 'exclude-dom', 'region']) {
|
|
233
|
+
if (stringFlag(flags, other) !== undefined)
|
|
234
|
+
refuse('colors', `--box samples the source alone; --${other} needs a render.`);
|
|
235
|
+
}
|
|
236
|
+
console.log(await asRefusal('colors', () => sampleSourceBox(args[0], parseBox(box, '--box'))));
|
|
237
|
+
return;
|
|
238
|
+
}
|
|
239
|
+
positionalCount('colors', args, 2);
|
|
240
|
+
const lines = await asRefusal('colors', async () => {
|
|
241
|
+
const exclude = splitList(stringFlag(flags, 'exclude') ?? '').map((entry) => parseBox(entry, 'each --exclude box'));
|
|
242
|
+
const domFile = stringFlag(flags, 'exclude-dom');
|
|
243
|
+
if (domFile) {
|
|
244
|
+
const boxes = await readJsonFile(domFile, '--exclude-dom');
|
|
245
|
+
if (!Array.isArray(boxes))
|
|
246
|
+
throw new CliRefusal(`--exclude-dom ${domFile} must hold a JSON list of [x0,y0,x1,y1]`, 'scene_arguments');
|
|
247
|
+
for (const entry of boxes) {
|
|
248
|
+
if (!Array.isArray(entry) || entry.length !== 4 || !entry.every((v) => typeof v === 'number' && Number.isFinite(v))) {
|
|
249
|
+
throw new CliRefusal(`--exclude-dom ${domFile}: every entry must be [x0,y0,x1,y1]`, 'scene_arguments');
|
|
250
|
+
}
|
|
251
|
+
exclude.push(entry.map(Math.trunc));
|
|
252
|
+
}
|
|
253
|
+
}
|
|
254
|
+
const regions = splitList(stringFlag(flags, 'region') ?? '').map((entry) => {
|
|
255
|
+
const colon = entry.indexOf(':');
|
|
256
|
+
if (colon < 1)
|
|
257
|
+
throw new CliRefusal(`each --region must be name:x0,y0,x1,y1, got "${entry}"`, 'scene_arguments');
|
|
258
|
+
return { name: entry.slice(0, colon), box: parseBox(entry.slice(colon + 1), `region ${entry.slice(0, colon)}`) };
|
|
259
|
+
});
|
|
260
|
+
return compareWithSource({ sourceFile: args[0], renderFile: args[1], exclude, regions });
|
|
261
|
+
});
|
|
262
|
+
for (const line of lines)
|
|
263
|
+
console.log(line);
|
|
264
|
+
},
|
|
265
|
+
rectify: async (args, flags) => {
|
|
266
|
+
positionalCount('rectify', args, 1);
|
|
267
|
+
const out = requireFlag('rectify', flags, 'out');
|
|
268
|
+
const corners = await asRefusal('rectify', () => cornerList('rectify', requireFlag('rectify', flags, 'corners')));
|
|
269
|
+
const [width, height] = await asRefusal('rectify', () => parseSize(requireFlag('rectify', flags, 'size'), '--size'));
|
|
270
|
+
await asRefusal('rectify', () => rectifyFile({ sourceFile: args[0], corners, width, height, outFile: out }));
|
|
271
|
+
console.log(`wrote ${out} ${width}x${height}`);
|
|
272
|
+
},
|
|
273
|
+
};
|
|
274
|
+
export const runSceneCommand = async (args, flags) => {
|
|
275
|
+
const [verb, ...rest] = args;
|
|
276
|
+
for (const hosted of ['origin', 'api-key']) {
|
|
277
|
+
if (flags[hosted] !== undefined) {
|
|
278
|
+
throw new CliRefusal('scene tools are local and take no hosted authentication; drop --origin and --api-key.', 'scene_hosted_flag');
|
|
279
|
+
}
|
|
280
|
+
}
|
|
281
|
+
if (!isSceneVerb(verb)) {
|
|
282
|
+
return refuse(undefined, `${verb ? `\`${verb}\` is not` : 'No verb was given, and'} a \`12ui scene\` verb.`
|
|
283
|
+
+ ` The verbs are ${SCENE_VERBS.join(', ')}.`);
|
|
284
|
+
}
|
|
285
|
+
const allowed = new Set([...VERB_FLAGS[verb], 'quiet', 'help']);
|
|
286
|
+
const unknown = Object.keys(flags).filter((flag) => !allowed.has(flag));
|
|
287
|
+
if (unknown.length) {
|
|
288
|
+
refuse(verb, `12ui scene ${verb} does not take ${unknown.map((flag) => `--${flag}`).join(', ')}.`);
|
|
289
|
+
}
|
|
290
|
+
await VERBS[verb](rest, flags);
|
|
291
|
+
};
|
|
292
|
+
//# sourceMappingURL=cli-scene-command.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli-scene-command.js","sourceRoot":"","sources":["../src/cli-scene-command.ts"],"names":[],"mappings":"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"}
|
package/dist/cli-usage.d.ts
CHANGED
|
@@ -11,6 +11,14 @@ export declare const CLI_USAGE_COMMAND_LINES: readonly string[];
|
|
|
11
11
|
* decisions in the summary above.
|
|
12
12
|
*/
|
|
13
13
|
export declare const DEMOTED_USAGE_LINES: readonly string[];
|
|
14
|
+
/**
|
|
15
|
+
* The local Three.js scene tools (the 12ui-design skill's scene.md). They are
|
|
16
|
+
* advertised, so the skill contract, help coverage and refusals all read them,
|
|
17
|
+
* but the root summary names the family in one footer sentence instead of
|
|
18
|
+
* eleven lines: they are an agent's helpers, not a product decision a caller
|
|
19
|
+
* picks from the list.
|
|
20
|
+
*/
|
|
21
|
+
export declare const SCENE_USAGE_LINES: readonly string[];
|
|
14
22
|
/** Every invocation the CLI states anywhere, summary and demoted alike. */
|
|
15
23
|
export declare const ALL_USAGE_LINES: readonly string[];
|
|
16
24
|
/**
|
package/dist/cli-usage.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli-usage.d.ts","sourceRoot":"","sources":["../src/cli-usage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAkD9C,eAAO,MAAM,SAAS,
|
|
1
|
+
{"version":3,"file":"cli-usage.d.ts","sourceRoot":"","sources":["../src/cli-usage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAkD9C,eAAO,MAAM,SAAS,QAmGsC,CAAC;AAE7D,iFAAiF;AACjF,eAAO,MAAM,uBAAuB,EAAE,SAAS,MAAM,EAER,CAAC;AAE9C;;;;;;;GAOG;AACH,eAAO,MAAM,mBAAmB,EAAE,SAAS,MAAM,EAIhD,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,iBAAiB,EAAE,SAAS,MAAM,EAe9C,CAAC;AAEF,2EAA2E;AAC3E,eAAO,MAAM,eAAe,EAAE,SAAS,MAAM,EAI5C,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,eAAe,EAAE,SAAS,MAAM,EAA2C,CAAC;AAEzF,gFAAgF;AAChF,eAAO,MAAM,eAAe,GAAI,QAAO,SAAS,MAAM,EAAoB,KAAG,GAAG,CAAC,MAAM,CAMtF,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,aAAa,GAAI,GAAG,MAAM,SAAS,MAAM,EAAE,KAAG,SAAS,MAAM,EAczE,CAAC;AAEF,yEAAyE;AACzE,eAAO,MAAM,YAAY,GAAI,GAAG,MAAM,SAAS,MAAM,EAAE,KAAG,MAEzD,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,WAAW,GAAI,GAAG,MAAM,SAAS,MAAM,EAAE,KAAG,MAaxD,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,YAAY,GAAI,MAAM;IACjC,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,SAAS,MAAM,EAAE,CAAC;CACzB,KAAG,UAGH,CAAC;AAEF,gFAAgF;AAChF,eAAO,MAAM,WAAW,GAAI,MAAM;IAChC,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,SAAS,MAAM,EAAE,CAAC;CACzB,KAAG,KAEH,CAAC;AAEF,2FAA2F;AAC3F,eAAO,MAAM,UAAU,GAAI,UAAS,SAAS,MAAM,EAAO,KAAG,IAE5D,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,KAAK,QAAO,KAExB,CAAC"}
|
package/dist/cli-usage.js
CHANGED
|
@@ -47,6 +47,25 @@ import { CLI_CONVERSION_OUTPUTS } from './conversion-outputs.js';
|
|
|
47
47
|
*/
|
|
48
48
|
const CONCEPT_PLACEHOLDER = `<text>`;
|
|
49
49
|
export const CLI_USAGE = `Usage:
|
|
50
|
+
12ui workflow prepare <request.json> --workspace <directory> --key <stable-key>
|
|
51
|
+
12ui workflow execute <operation-id> --workspace <directory> [--providers session,codex,claude,openai,12ui] [--allow-paid openai,12ui] [--session-capabilities text,image,image-edit,code,convert] [--trust-codex-config]
|
|
52
|
+
12ui workflow register <operation-id> --workspace <directory> --attempt <number> --result <result.json>
|
|
53
|
+
12ui workflow continue <operation-id> --workspace <directory>
|
|
54
|
+
12ui workflow fail <operation-id> --workspace <directory> --attempt <number> --failure <failure.json>
|
|
55
|
+
12ui workflow status [operation-id] --workspace <directory>
|
|
56
|
+
12ui workflow import <file> --workspace <directory> [--media-type <type>] [--role <role>]
|
|
57
|
+
12ui workflow capabilities [--workspace <directory>] [--session-capabilities text,image,image-edit,code,convert] [--trust-codex-config]
|
|
58
|
+
12ui workflow export <operation-id> --workspace <directory> --destination <new-or-empty-directory>
|
|
59
|
+
12ui workflow capture <url> --workspace <directory> [--width <px>] [--height <px>] [--full-page]
|
|
60
|
+
12ui workflow layerdoc <operation-id> --workspace <directory>
|
|
61
|
+
12ui workflow draft <input.json> --workspace <directory> --key <stable-key>
|
|
62
|
+
12ui workflow branch <input.json> --workspace <directory> --key <stable-key>
|
|
63
|
+
12ui workflow edit <input.json> --workspace <directory> --key <stable-key>
|
|
64
|
+
12ui workflow redesign <input.json> --workspace <directory> --key <stable-key>
|
|
65
|
+
12ui workflow labels <input.json> --workspace <directory> --key <stable-key>
|
|
66
|
+
12ui workflow convert <input.json> --workspace <directory> --key <stable-key>
|
|
67
|
+
12ui workflow implement <input.json> --workspace <directory> --key <stable-key>
|
|
68
|
+
12ui workflow review <input.json> --workspace <directory> --key <stable-key>
|
|
50
69
|
12ui auth login [--login-origin <url>] [--key-name <name>]
|
|
51
70
|
12ui auth connect <8-character-link-code> [--login-origin <url>]
|
|
52
71
|
12ui auth status [--login-origin <url>] [--json]
|
|
@@ -55,18 +74,20 @@ export const CLI_USAGE = `Usage:
|
|
|
55
74
|
12ui cli status [--json]
|
|
56
75
|
12ui skill install [--skill 12ui-design] [--client codex|claude-code|grok|cursor|antigravity|copilot] [--home <client-home>] [--login-origin <url>] [--key-name <name>] [--force] [--skip-auth]
|
|
57
76
|
12ui skill status [--skill 12ui-design] [--client codex|claude-code|grok|cursor|antigravity|copilot] [--home <client-home>] [--json]
|
|
58
|
-
12ui corpus
|
|
77
|
+
12ui corpus status
|
|
78
|
+
12ui corpus inspire --query <text>|--query-file <file> --out-dir <directory> [--mode direct|balanced|adventurer|hedge,default-balanced] [--count <1-48>] [--reference-image <png|jpeg|webp>] [--idempotency-key <key>]
|
|
59
79
|
12ui corpus resume --out-dir <directory>
|
|
60
|
-
12ui draft --concept ${CONCEPT_PLACEHOLDER} [--corpus-query <visual-caption|@file,hedge-max-400>] [--candidates <2-16,default-4>] [--reference <path-or-url>] [--retain <comma-separated>] [--retain-source inspiration|subject,default-inspiration] [--redesign-source <png|jpeg|webp>] [--mode exploratory|reskin] [--corpus-mode direct|balanced|adventurer|hedge,default-
|
|
80
|
+
12ui draft --concept ${CONCEPT_PLACEHOLDER} [--corpus-query <visual-caption|@file,hedge-max-400>] [--candidates <2-16,default-4>] [--reference <path-or-url>] [--retain <comma-separated>] [--retain-source inspiration|subject,default-inspiration] [--redesign-source <png|jpeg|webp>] [--mode exploratory|reskin] [--corpus-mode direct|balanced|adventurer|hedge,default-balanced] [--aspect landscape|portrait|square] [--wait]
|
|
61
81
|
12ui branch execute --start <png|jpeg|webp> --concept ${CONCEPT_PLACEHOLDER}|--concept-file <file> --scope page|site [--convert html] [--prototype] [--polish] [--convert-model fast|standard|pro] [--convert-quality standard|pro] [--source-conversion-id <id>] [--max-screens <n,keeps-the-first-n-planned-screens-and-names-any-page-left-out>] [--page-concurrency <n>] [--idempotency-key <key>] [--out-dir <run-directory>] [--dry-run] [--wait]
|
|
62
82
|
12ui branch resume <run-dir>
|
|
63
|
-
12ui prototype <run-dir> [--polish]
|
|
83
|
+
12ui prototype <run-dir> [--labels none|workflow|12ui,default-none] [--workspace <directory,required-for-workflow>] [--polish]
|
|
64
84
|
12ui redesign <url> --direction ${CONCEPT_PLACEHOLDER} [--bootstrap '<url>|<click-selector>|<wait-url>'] [--redraw] [--pages <1-10,default-5>] [--candidates <2-16,default-4>] [--max-screens <1-8,default-8>] [--convert-model fast|standard|pro,default-standard] [--slot <A-P,default-A>] [--from capture|plan|draft|pick|branch|polish] [--to capture|plan|draft|pick|branch|polish] [--out-dir <run-directory>] [--dry-run]
|
|
65
85
|
12ui improve <url|image.png|jpg|webp> [--scope page|site,default-page] [--target <image.png|layerdoc.json>] [--direction <text>] [--candidates <2-16,default-4>] [--corpus-mode direct|balanced|adventurer,default-balanced] [--retain <set,default-assets,content>] [--pick <A-P,required-before-convert>] [--convert-model fast|standard|pro,default-standard] [--responsive-quality standard|pro,default-standard] [--convert-stall-seconds <seconds,default-no-progress-bound>] [--viewport <WxH,default-1440x900>] [--full-page] [--bootstrap '<url>|<click-selector>|<wait-url>'] [--allow-redirect] [--repo <source-repo>] [--plan-source-convert] [--pages <2-8,default-5>] [--page <url>] [--page-concurrency <1-10,default-3>] [--reference-order current-first|root-first,default-current-first] [--recheck] [--fresh] [--redraw] [--from capture|draft|pick|branch|convert|plan|site] [--to capture|draft|pick|branch|convert|plan|site] [--out-dir <directory>] [--dry-run]
|
|
66
86
|
12ui improve <url> --repo <source-repo> --apply [--target <png|jpeg|webp>] [--direction <text>] [--pick <A-P>] [--from capture|draft|pick] [--to capture|draft|pick] [--out-dir <directory-outside-repo>]
|
|
67
87
|
12ui next <run-dir|run-id> [--wait] [--timeout-ms <ms>] [--json]
|
|
68
88
|
12ui review <run-dir>
|
|
69
89
|
12ui review --all
|
|
90
|
+
12ui workspace open [<run-dir>] [--latest] [--wait] [--port <n>] [--no-open]
|
|
70
91
|
12ui spend [--run-dir <kit-or-redesign-dir>] [--conversion <id>] [--run <id>] [--days <1-365>] [--limit <runs,1-200>] [--json]
|
|
71
92
|
12ui capabilities
|
|
72
93
|
12ui convert <image.png|jpg|webp|layerdoc.json> --output ${CLI_CONVERSION_OUTPUTS.join('|')} [--engine auto|codex|api,default-auto] [--image-backend external|native] [--clean-assets crop|enhance] [--model fast|standard|pro] [--width <px>] [--responsive-quality standard|pro] [--out-dir <directory>] [--timeout-ms <ms>] [--idempotency-key <key,API-only>]
|
|
@@ -101,16 +122,30 @@ can use \`12ui next <run-dir>\` to report what is moving. Bare --wait has no hid
|
|
|
101
122
|
interval the agent invents. Never list a directory to decide that.
|
|
102
123
|
|
|
103
124
|
\`branch execute --prototype\` runs after \`--convert html\` and buys one cheap
|
|
104
|
-
four-way interaction-label call per screen. \`prototype <run-dir>\`
|
|
105
|
-
|
|
125
|
+
four-way interaction-label call per screen. Standalone \`prototype <run-dir>\`
|
|
126
|
+
defaults to local deterministic interactions; \`--labels 12ui\` explicitly buys
|
|
127
|
+
hosted interaction labels. \`--labels workflow --workspace <directory>\` prepares
|
|
128
|
+
exact DOM-bound local label operations and returns awaiting_labels; execute/register
|
|
129
|
+
them through workflow, then repeat prototype to consume their results without inference.
|
|
130
|
+
Add \`--polish\` explicitly to run the
|
|
106
131
|
retained deterministic polish rules before runtime verification; it is opt-in.
|
|
107
132
|
|
|
133
|
+
Workflow prepare and recipe commands do not dispatch models. Execute selects a
|
|
134
|
+
capable provider; declare host-session capabilities to receive a handoff, then
|
|
135
|
+
register its outputs with the handoff's --attempt number. --allow-paid explicitly permits OpenAI API or 12ui credit
|
|
136
|
+
spend. Credentials alone never enable a paid workflow fallback. Local execution
|
|
137
|
+
can consume the user's model plan and hardware. Keep the same workspace and key
|
|
138
|
+
for recovery; uncertain dispatched work never silently moves to another provider.
|
|
139
|
+
Codex child execution requires --trust-codex-config because existing configured
|
|
140
|
+
tools and hooks may run. This trust does not authorize paid API or 12ui fallback.
|
|
141
|
+
|
|
108
142
|
Hosted work accepts --origin <url> and --api-key <key> (defaulting to
|
|
109
143
|
TWELVE_UI_ORIGIN / TWELVE_UI_API_KEY, then \`12ui auth login\`). Local next, resume,
|
|
110
144
|
and export do not accept hosted authentication flags. --quiet suppresses progress. Omit
|
|
111
145
|
--client to target every supported CLI installation. \`12ui <command> --help\`
|
|
112
146
|
prints any command in full, including the forms this summary leaves out:
|
|
113
|
-
\`convert package --template\`, \`skill print\`, \`skill remove
|
|
147
|
+
\`convert package --template\`, \`skill print\`, \`skill remove\`.
|
|
148
|
+
\`12ui scene --help\` lists the local Three.js scene tools.`;
|
|
114
149
|
/** Every line of {@link CLI_USAGE} that states an invocation, without indent. */
|
|
115
150
|
export const CLI_USAGE_COMMAND_LINES = CLI_USAGE.split('\n')
|
|
116
151
|
.map((line) => line.trim())
|
|
@@ -128,10 +163,34 @@ export const DEMOTED_USAGE_LINES = [
|
|
|
128
163
|
'12ui skill remove [--skill 12ui-design] [--client codex|claude-code|grok|cursor|antigravity|copilot] [--home <client-home>]',
|
|
129
164
|
'12ui convert package --template > package.json',
|
|
130
165
|
];
|
|
166
|
+
/**
|
|
167
|
+
* The local Three.js scene tools (the 12ui-design skill's scene.md). They are
|
|
168
|
+
* advertised, so the skill contract, help coverage and refusals all read them,
|
|
169
|
+
* but the root summary names the family in one footer sentence instead of
|
|
170
|
+
* eleven lines: they are an agent's helpers, not a product decision a caller
|
|
171
|
+
* picks from the list.
|
|
172
|
+
*/
|
|
173
|
+
export const SCENE_USAGE_LINES = [
|
|
174
|
+
'12ui scene init <scene-dir>',
|
|
175
|
+
'12ui scene solve <spec.json> [--out <cam.json>]',
|
|
176
|
+
'12ui scene ray <cam.json> --plane-y <y> <u,v> [<u,v>...]',
|
|
177
|
+
'12ui scene project <cam.json> <x,y,z> [<x,y,z>...]',
|
|
178
|
+
"12ui scene rect <cam.json> --corners '<TL;TR;BR;BL>' --plane-y <y>|--width <w> [--height <h>]",
|
|
179
|
+
'12ui scene serve <scene-dir> [--port <port>]',
|
|
180
|
+
'12ui scene capture <url> --out-dir <directory> [--size <WxH>] [--orbit <deg,deg,...>] [--hide <name,...>]'
|
|
181
|
+
+ ' [--eval <js>] [<name=az:el:action=t,...>...]',
|
|
182
|
+
'12ui scene sheet <source.png> <capture.png>... --out <sheet.png> [--cols <n>] [--note <text>]',
|
|
183
|
+
'12ui scene blend <source.png> <render.png> --out <blend.png>',
|
|
184
|
+
'12ui scene colors <source.png> --box <x0,y0,x1,y1>',
|
|
185
|
+
"12ui scene colors <source.png> <render.png> [--exclude '<box;box>'] [--exclude-dom <boxes.json>]"
|
|
186
|
+
+ " [--region '<name:box;name:box>']",
|
|
187
|
+
"12ui scene rectify <source.png> --corners '<TL;TR;BR;BL>' --size <WxH> --out <texture.png>",
|
|
188
|
+
];
|
|
131
189
|
/** Every invocation the CLI states anywhere, summary and demoted alike. */
|
|
132
190
|
export const ALL_USAGE_LINES = [
|
|
133
191
|
...CLI_USAGE_COMMAND_LINES,
|
|
134
192
|
...DEMOTED_USAGE_LINES,
|
|
193
|
+
...SCENE_USAGE_LINES,
|
|
135
194
|
];
|
|
136
195
|
/**
|
|
137
196
|
* Flags every command takes, stated in the footer rather than on 25 lines.
|
package/dist/cli-usage.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli-usage.js","sourceRoot":"","sources":["../src/cli-usage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACvF,OAAO,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AAEjE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH;;;;;;;;;;GAUG;AACH,MAAM,mBAAmB,GAAG,QAAQ,CAAC;AAErC,MAAM,CAAC,MAAM,SAAS,GAAG
|
|
1
|
+
{"version":3,"file":"cli-usage.js","sourceRoot":"","sources":["../src/cli-usage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACvF,OAAO,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AAEjE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH;;;;;;;;;;GAUG;AACH,MAAM,mBAAmB,GAAG,QAAQ,CAAC;AAErC,MAAM,CAAC,MAAM,SAAS,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yBA+BA,mBAAmB;0DACc,mBAAmB;;;oCAGzC,mBAAmB;;;;;;;;;6DASM,sBAAsB,CAAC,IAAI,CAAC,GAAG,CAAC;2DAClC,sBAAsB,CAAC,IAAI,CAAC,GAAG,CAAC;;;sFAGL,sBAAsB,CAAC,IAAI,CAAC,GAAG,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4DAmD1D,CAAC;AAE7D,iFAAiF;AACjF,MAAM,CAAC,MAAM,uBAAuB,GAAsB,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC;KAC5E,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;KAC1B,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC;AAE9C;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAsB;IACpD,sCAAsC;IACtC,6HAA6H;IAC7H,gDAAgD;CACjD,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAsB;IAClD,6BAA6B;IAC7B,iDAAiD;IACjD,0DAA0D;IAC1D,oDAAoD;IACpD,+FAA+F;IAC/F,8CAA8C;IAC9C,2GAA2G;UACvG,+CAA+C;IACnD,+FAA+F;IAC/F,8DAA8D;IAC9D,oDAAoD;IACpD,kGAAkG;UAC9F,mCAAmC;IACvC,4FAA4F;CAC7F,CAAC;AAEF,2EAA2E;AAC3E,MAAM,CAAC,MAAM,eAAe,GAAsB;IAChD,GAAG,uBAAuB;IAC1B,GAAG,mBAAmB;IACtB,GAAG,iBAAiB;CACrB,CAAC;AAEF;;;;GAIG;AACH,MAAM,CAAC,MAAM,eAAe,GAAsB,CAAC,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;AAEzF,gFAAgF;AAChF,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,QAA2B,eAAe,EAAe,EAAE;IACzF,MAAM,KAAK,GAAG,IAAI,GAAG,CAAS,eAAe,CAAC,CAAC;IAC/C,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,QAAQ,CAAC,uBAAuB,CAAC;YAAE,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAE,CAAC,CAAC;IACnF,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,GAAG,IAAuB,EAAqB,EAAE;IAC7E,0EAA0E;IAC1E,0EAA0E;IAC1E,2DAA2D;IAC3D,MAAM,UAAU,GAAG,IAAI,CAAC,CAAC,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAClF,KAAK,IAAI,KAAK,GAAG,UAAU,CAAC,MAAM,EAAE,KAAK,GAAG,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;QAC1D,MAAM,MAAM,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;QAC1C,MAAM,OAAO,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE;YAC9C,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YACxD,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,KAAK,CAAC,CAAC;QACjE,CAAC,CAAC,CAAC;QACH,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC;YAAE,OAAO,OAAO,CAAC;IACzC,CAAC;IACD,OAAO,uBAAuB,CAAC;AACjC,CAAC,CAAC;AAEF,yEAAyE;AACzE,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,GAAG,IAAuB,EAAU,EAAE,CAAC,CAClE,WAAW,aAAa,CAAC,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAC1E,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,GAAG,IAAuB,EAAU,EAAE;IAChE,MAAM,SAAS,GAAG,YAAY,CAAC,GAAG,IAAI,CAAC,CAAC;IACxC,MAAM,OAAO,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC;IACrC,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAChC,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC7B,MAAM,KAAK,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,KAAK,SAAS,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACpF,MAAM,IAAI,UAAU,CAClB,wBAAwB,KAAK,qBAAqB,KAAK,GAAG;cACtD,6CAA6C,EACjD,oBAAoB,CACrB,CAAC;IACJ,CAAC;IACD,OAAO,OAAO,CAAC,CAAC,CAAC,GAAG,SAAS,OAAO,iBAAiB,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;AAC/E,CAAC,CAAC;AAEF;;;;;GAKG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,IAI5B,EAAc,EAAE,CAAC,IAAI,UAAU,CAC9B,GAAG,IAAI,CAAC,MAAM,OAAO,WAAW,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,EAChD,IAAI,CAAC,IAAI,CACV,CAAC;AAEF,gFAAgF;AAChF,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,IAI3B,EAAS,EAAE;IACV,MAAM,YAAY,CAAC,IAAI,CAAC,CAAC;AAC3B,CAAC,CAAC;AAEF,2FAA2F;AAC3F,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,UAA6B,EAAE,EAAQ,EAAE;IAClE,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;AAC1E,CAAC,CAAC;AAEF;;;;GAIG;AACH,MAAM,CAAC,MAAM,KAAK,GAAG,GAAU,EAAE;IAC/B,MAAM,IAAI,UAAU,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;AAC/C,CAAC,CAAC"}
|