@aswless_854771076/ai_short_studio_cli 0.1.97 → 0.1.99
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 +14 -312
- package/dist/base-command.d.ts +0 -6
- package/dist/base-command.js +1 -39
- package/dist/client/api-client.js +2 -19
- package/dist/commands/auth/login.d.ts +1 -2
- package/dist/commands/auth/login.js +2 -5
- package/dist/commands/auth/logout.d.ts +0 -1
- package/dist/commands/auth/signup.d.ts +0 -1
- package/dist/commands/auth/status.d.ts +0 -1
- package/dist/commands/canvas/apply.d.ts +0 -1
- package/dist/commands/canvas/asset/get.d.ts +0 -1
- package/dist/commands/canvas/asset/list.d.ts +0 -1
- package/dist/commands/canvas/asset/select.d.ts +1 -3
- package/dist/commands/canvas/asset/select.js +3 -22
- package/dist/commands/canvas/asset/upload.d.ts +0 -14
- package/dist/commands/canvas/asset/upload.js +3 -43
- package/dist/commands/canvas/continuity/analyze.d.ts +0 -1
- package/dist/commands/canvas/edge/connect.d.ts +0 -1
- package/dist/commands/canvas/edge/disconnect.d.ts +0 -1
- package/dist/commands/canvas/edge/list.d.ts +0 -1
- package/dist/commands/canvas/edge/list.js +1 -4
- package/dist/commands/canvas/episode/create.d.ts +0 -1
- package/dist/commands/canvas/episode/list.d.ts +0 -1
- package/dist/commands/canvas/folder/copy-cross-project.d.ts +0 -1
- package/dist/commands/canvas/folder/create.d.ts +0 -1
- package/dist/commands/canvas/folder/delete.d.ts +0 -1
- package/dist/commands/canvas/folder/list.d.ts +0 -1
- package/dist/commands/canvas/folder/move.d.ts +0 -1
- package/dist/commands/canvas/folder/rename.d.ts +0 -1
- package/dist/commands/canvas/folder/restore.d.ts +0 -1
- package/dist/commands/canvas/get.d.ts +0 -1
- package/dist/commands/canvas/inspect.d.ts +0 -1
- package/dist/commands/canvas/node/add.d.ts +1 -1
- package/dist/commands/canvas/node/add.js +2 -2
- package/dist/commands/canvas/node/delete.d.ts +0 -1
- package/dist/commands/canvas/node/edit-resource.d.ts +0 -2
- package/dist/commands/canvas/node/edit-resource.js +1 -9
- package/dist/commands/canvas/node/edit-shot.d.ts +0 -1
- package/dist/commands/canvas/node/get.d.ts +0 -1
- package/dist/commands/canvas/node/list.d.ts +0 -5
- package/dist/commands/canvas/node/list.js +2 -43
- package/dist/commands/canvas/node/run.d.ts +0 -15
- package/dist/commands/canvas/node/run.js +6 -142
- package/dist/commands/canvas/node/types.d.ts +0 -1
- package/dist/commands/canvas/node/update-many.d.ts +0 -1
- package/dist/commands/canvas/node/update.d.ts +0 -1
- package/dist/commands/canvas/settings/get.d.ts +0 -1
- package/dist/commands/canvas/settings/set.d.ts +0 -24
- package/dist/commands/canvas/settings/set.js +1 -60
- package/dist/commands/config/get.d.ts +0 -1
- package/dist/commands/config/set.d.ts +0 -2
- package/dist/commands/config/set.js +2 -55
- package/dist/commands/preflight.d.ts +0 -1
- package/dist/commands/preflight.js +1 -9
- package/dist/commands/project/create.d.ts +0 -1
- package/dist/commands/project/delete.d.ts +0 -1
- package/dist/commands/project/get.d.ts +0 -1
- package/dist/commands/project/list.d.ts +0 -1
- package/dist/commands/project/provider/get.d.ts +0 -1
- package/dist/commands/project/provider/set.d.ts +0 -1
- package/dist/commands/project/provider/test.d.ts +0 -1
- package/dist/commands/project/update.d.ts +0 -1
- package/dist/commands/skill/install.d.ts +0 -1
- package/dist/commands/skill/install.js +0 -1
- package/dist/commands/skill/path.d.ts +0 -1
- package/dist/commands/skill/path.js +0 -1
- package/dist/commands/skill/status.d.ts +0 -1
- package/dist/commands/skill/status.js +0 -1
- package/dist/commands/task/cancel.d.ts +0 -1
- package/dist/commands/task/get.d.ts +0 -1
- package/dist/commands/task/wait.d.ts +0 -2
- package/dist/commands/task/wait.js +1 -6
- package/dist/domain/vvicat-api.d.ts +3 -57
- package/dist/domain/vvicat-api.js +9 -65
- package/dist/output/formatter.d.ts +0 -11
- package/dist/output/formatter.js +0 -20
- package/dist/preflight.d.ts +0 -1
- package/dist/preflight.js +1 -14
- package/dist/skill/command-flags.js +4 -7
- package/dist/skill/skill-manager.d.ts +2 -75
- package/dist/skill/skill-manager.js +15 -60
- package/package.json +3 -4
- package/scripts/postinstall.mjs +12 -7
- package/skills/using-vvicat-ai-short-studio-cli/SKILL.md +68 -27
- package/skills/using-vvicat-ai-short-studio-cli/references/commands/canvas.md +4 -3
- package/skills/using-vvicat-ai-short-studio-cli/references/commands/project.md +2 -22
- package/skills/using-vvicat-ai-short-studio-cli/references/commands.md +1 -1
- package/skills/using-vvicat-ai-short-studio-cli/references/editing-delivery.md +1 -1
- package/skills/using-vvicat-ai-short-studio-cli/references/h3-video-delivery.md +1 -1
- package/skills/using-vvicat-ai-short-studio-cli/references/humanizer/humanizer.md +9 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/hypit/SKILL.md +447 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/hypit/creation/brief.md +93 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/hypit/creation/project-files.md +246 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/hypit/creation/reference-video.md +266 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/hypit/creation/script-and-time.md +253 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/hypit/creation/transformations.md +141 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/hypit/environment/distribution.md +176 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/hypit/environment/local-tools.md +411 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/hypit/environment/model-and-provider.md +275 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/hypit/environment/profile.md +286 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/hypit/playbooks/craft/asset-and-shot-preproduction.md +193 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/hypit/playbooks/craft/b-roll.md +94 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/hypit/playbooks/craft/caption-tracking.md +125 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/hypit/playbooks/craft/captions.md +252 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/hypit/playbooks/craft/examples/conversation-images.md +218 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/hypit/playbooks/craft/examples/h3-base-prompt-writing.md +222 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/hypit/playbooks/craft/examples/h3-reference-prompt-writing.md +341 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/hypit/playbooks/craft/examples/image-direction.md +123 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/hypit/playbooks/craft/generated-dependencies.md +38 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/hypit/playbooks/craft/graphic-compositions.md +85 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/hypit/playbooks/craft/h3-prompt-writing.md +54 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/hypit/playbooks/craft/image-direction.md +95 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/hypit/playbooks/craft/motion-graphics.md +68 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/hypit/playbooks/craft/recreation-policy.md +51 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/hypit/playbooks/craft/screen-demonstrations.md +51 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/hypit/playbooks/craft/shot-production-contracts.md +161 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/hypit/playbooks/craft/sound-mix.md +76 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/hypit/playbooks/craft/video-direction.md +433 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/hypit/playbooks/craft/voice-and-performance.md +224 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/hypit/playbooks/craft/voice-direction.md +99 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/hypit/playbooks/formats/narration-led-demo.md +87 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/hypit/playbooks/formats/presenter-led-explainer.md +160 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/hypit/playbooks/formats/ranking-listicle.md +71 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/hypit/playbooks/formats/reference-recreation-canvas.md +8 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/hypit/playbooks/formats/short-drama-workflow.md +165 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/hypit/playbooks/formats/short-drama.md +88 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/hypit/playbooks/formats/street-interview.md +92 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/hypit/playbooks/formats/talking-head.md +82 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/hypit/playbooks/formats/two-person-podcast.md +101 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/hypit/playbooks/index.md +77 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/hypit/production/audio-presentation.md +49 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/hypit/production/authoring.md +228 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/hypit/production/browser-capture.md +112 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/hypit/production/builds.md +330 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/hypit/production/caption-authoring.md +156 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/hypit/production/caption-presentation.md +66 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/hypit/production/component-design.md +217 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/hypit/production/component-sharing.md +150 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/hypit/production/component-visuals.md +152 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/hypit/production/examples/detail.svrun +8 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/hypit/production/examples/direction.svs +14 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/hypit/production/examples/look.svs +6 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/hypit/production/examples/material.svrun +5 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/hypit/production/examples/production.svml +73 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/hypit/production/examples/production.svrun +5 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/hypit/production/examples/visuals.ts +62 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/hypit/production/fonts-and-text.md +138 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/hypit/production/image-operations.md +102 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/hypit/production/index.md +73 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/hypit/production/media-presentation.md +111 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/hypit/production/media.md +246 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/hypit/production/performance.md +114 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/hypit/production/prompt-kits.md +165 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/hypit/production/rendering.md +141 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/hypit/production/review.md +211 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/hypit/production/runs.md +151 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/hypit/production/script-syntax.md +236 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/hypit/production/snapshots.md +90 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/hypit/production/sound.md +75 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/hypit/production/source-syntax.md +163 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/hypit/production/spatial.md +189 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/hypit/production/studio-companions.md +186 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/hypit/production/studio.md +249 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/hypit/production/system.md +169 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/hypit/production/timeline.md +74 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/hypit/production/timing.md +96 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/hypit/production/track-authoring.md +215 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/hypit/production/tracks.md +67 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/hypit/production/video-downloads.md +47 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/hypit/production/vocabulary.md +119 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/project-and-canvas.md +1 -1
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/README.md +11 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/SKILL.md +102 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/art-styles.json +585 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/generate-character-images.md +11 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/generate-character-profiles/character-profile-output.schema.json +99 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/generate-character-profiles.md +7 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/generate-drama-art-style.md +9 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/generate-prop-assets.md +11 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/generate-scene-assets.md +13 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/manage-drama-art-styles.md +9 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/manage-drama-assets.md +9 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/analyze-drama-source/prompts/source_analysis.en.txt +24 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/analyze-drama-source/prompts/source_analysis.zh.txt +24 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/build-drama-storyboard/prompts/agent_acting_direction.en.txt +61 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/build-drama-storyboard/prompts/agent_acting_direction.zh.txt +79 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/build-drama-storyboard/prompts/agent_cinematographer.en.txt +101 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/build-drama-storyboard/prompts/agent_cinematographer.zh.txt +150 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/build-drama-storyboard/prompts/agent_storyboard_detail.en.txt +114 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/build-drama-storyboard/prompts/agent_storyboard_detail.zh.txt +89 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/build-drama-storyboard/prompts/agent_storyboard_plan.en.txt +114 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/build-drama-storyboard/prompts/agent_storyboard_plan.zh.txt +389 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/build-drama-storyboard/prompts/professional_storyboard.en.txt +40 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/build-drama-storyboard/prompts/professional_storyboard.zh.txt +40 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/define-drama-brief/prompts/drama_brief.en.txt +24 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/define-drama-brief/prompts/drama_brief.zh.txt +24 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/design-drama-audio/prompts/character_voice_description.en.txt +19 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/design-drama-audio/prompts/character_voice_description.zh.txt +19 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/design-drama-audio/prompts/character_voice_recommend.en.txt +26 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/design-drama-audio/prompts/character_voice_recommend.zh.txt +26 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/design-drama-audio/prompts/music_track_design.en.txt +33 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/design-drama-audio/prompts/music_track_design.zh.txt +33 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/design-drama-audio/prompts/voice_analysis.en.txt +36 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/design-drama-audio/prompts/voice_analysis.zh.txt +36 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/design-drama-bible/prompts/ai_story_expand.en.txt +33 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/design-drama-bible/prompts/ai_story_expand.zh.txt +33 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-character-images/prompts/agent_character_visual.en.txt +26 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-character-images/prompts/agent_character_visual.zh.txt +26 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-character-images/prompts/character_asset_sheet.en.txt +21 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-character-images/prompts/character_asset_sheet.zh.txt +21 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-character-images/prompts/character_create.en.txt +12 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-character-images/prompts/character_create.zh.txt +12 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-character-images/prompts/character_description_update.en.txt +13 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-character-images/prompts/character_description_update.zh.txt +13 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-character-images/prompts/character_image_to_description.en.txt +11 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-character-images/prompts/character_image_to_description.zh.txt +11 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-character-images/prompts/character_modify.en.txt +15 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-character-images/prompts/character_modify.zh.txt +15 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-character-images/prompts/character_regenerate.en.txt +14 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-character-images/prompts/character_regenerate.zh.txt +14 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-character-profiles/prompts/agent_character_profile.en.txt +50 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-character-profiles/prompts/agent_character_profile.zh.txt +50 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-drama-art-style/prompts/art_style_decision.en.txt +18 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-drama-art-style/prompts/art_style_decision.zh.txt +18 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-drama-art-style/prompts/config_generation.en.txt +67 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-drama-art-style/prompts/config_generation.zh.txt +67 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-prop-assets/prompts/prop_description_update.en.txt +14 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-prop-assets/prompts/prop_description_update.zh.txt +14 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-prop-assets/prompts/prop_generate.en.txt +16 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-prop-assets/prompts/prop_generate.zh.txt +16 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-prop-assets/prompts/select_prop.en.txt +17 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-prop-assets/prompts/select_prop.zh.txt +17 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-scene-assets/prompts/location_create.en.txt +11 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-scene-assets/prompts/location_create.zh.txt +11 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-scene-assets/prompts/location_description_update.en.txt +14 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-scene-assets/prompts/location_description_update.zh.txt +14 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-scene-assets/prompts/location_modify.en.txt +13 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-scene-assets/prompts/location_modify.zh.txt +13 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-scene-assets/prompts/location_regenerate.en.txt +12 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-scene-assets/prompts/location_regenerate.zh.txt +12 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-scene-assets/prompts/scene_asset_sheet.en.txt +19 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-scene-assets/prompts/scene_asset_sheet.zh.txt +19 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-scene-assets/prompts/select_location.en.txt +18 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-scene-assets/prompts/select_location.zh.txt +17 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-storyboard-images/prompts/panel_grid_enhance.en.txt +29 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-storyboard-images/prompts/panel_grid_enhance.zh.txt +29 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-storyboard-images/prompts/panel_grid_image.en.txt +77 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-storyboard-images/prompts/panel_grid_image.zh.txt +77 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-storyboard-images/prompts/panel_storyboard_image.en.txt +109 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-storyboard-images/prompts/panel_storyboard_image.zh.txt +109 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/ideate-drama-from-market/prompts/market_inspiration.en.txt +23 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/ideate-drama-from-market/prompts/market_inspiration.zh.txt +23 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/outline-drama-series/prompts/episode_split.en.txt +42 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/outline-drama-series/prompts/episode_split.zh.txt +42 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/plan-drama-assets/prompts/asset_analysis.en.txt +55 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/plan-drama-assets/prompts/asset_analysis.zh.txt +55 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/plan-drama-production/prompts/production_plan.en.txt +49 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/plan-drama-production/prompts/production_plan.zh.txt +52 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/plan-shot-continuity/prompts/continuity_plan.en.txt +37 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/plan-shot-continuity/prompts/continuity_plan.zh.txt +37 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/review-drama-script/prompts/review_drama_script.en.txt +28 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/review-drama-script/prompts/review_drama_script.zh.txt +28 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/revise-drama-storyboards/prompts/agent_shot_variant_analysis.en.txt +57 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/revise-drama-storyboards/prompts/agent_shot_variant_analysis.zh.txt +169 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/revise-drama-storyboards/prompts/agent_shot_variant_generate.en.txt +64 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/revise-drama-storyboards/prompts/agent_shot_variant_generate.zh.txt +117 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/revise-drama-storyboards/prompts/agent_storyboard_insert.en.txt +34 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/revise-drama-storyboards/prompts/agent_storyboard_insert.zh.txt +34 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/revise-drama-storyboards/prompts/storyboard_edit.en.txt +18 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/revise-drama-storyboards/prompts/storyboard_edit.zh.txt +13 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/transform-drama-media/prompts/2d_to_live_action.en.txt +7 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/transform-drama-media/prompts/2d_to_live_action.zh.txt +7 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/transform-drama-media/prompts/image_prompt_modify.en.txt +28 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/transform-drama-media/prompts/image_prompt_modify.zh.txt +42 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/write-drama-director-book/prompts/director_book.en.txt +35 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/write-drama-director-book/prompts/director_book.zh.txt +35 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/write-drama-episode/prompts/agent_clip.en.txt +21 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/write-drama-episode/prompts/agent_clip.zh.txt +21 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/write-drama-episode/prompts/screenplay_conversion.en.txt +39 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/write-drama-episode/prompts/screenplay_conversion.zh.txt +39 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/write-drama-video-prompts/prompts/h3_video.en.txt +49 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/write-drama-video-prompts/prompts/h3_video.zh.txt +48 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/write-drama-video-prompts/prompts/panel_grid_video.en.txt +51 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/write-drama-video-prompts/prompts/panel_grid_video.zh.txt +51 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/write-drama-video-prompts/prompts/panel_storyboard_video.en.txt +50 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/write-drama-video-prompts/prompts/panel_storyboard_video.zh.txt +50 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/write-drama-video-prompts/prompts/seedance2_video.en.txt +48 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/write-drama-video-prompts/prompts/seedance2_video.zh.txt +46 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/plan-drama-assets.md +7 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/codex-contracts.md +14 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/comfly-provider.md +12 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/controlled-vocabulary.json +115 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/creation/analyze-drama-source.md +7 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/creation/define-drama-brief.md +8 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/creation/design-drama-bible.md +5 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/creation/humanizer.md +9 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/creation/outline-drama-series.md +5 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/creation/short-drama.md +13 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/creation/write-drama-director-book.md +6 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/creation/write-drama-episode.md +6 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/director-composition.md +794 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/editing/edit-deliver-drama.md +5 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/editing/edit-drama-timeline.md +22 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/editing/remotion-best-practices.md +12 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/editing-workflow.md +56 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/feature-completeness.md +111 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/generation/configure-generation-providers.md +17 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/generation/design-drama-audio.md +11 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/generation/drama-generation-service.md +13 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/generation/generate-drama-videos.md +9 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/generation/generate-storyboard-images.md +11 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/generation/monitor-drama-tasks.md +15 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/generation/transform-drama-media.md +9 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/generation/write-drama-video-prompts.md +50 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/market/analyze-drama-market/market-report.schema.json +46 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/market/analyze-drama-market/methodology.md +24 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/market/analyze-drama-market.md +47 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/market/ideate-drama-from-market/market-inspiration.schema.json +109 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/market/ideate-drama-from-market.md +15 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/module-map.json +595 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/music-catalog-providers.md +16 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/operations/manage-drama-projects.md +11 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/operations/orchestrate-short-drama.md +20 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/operations/recover-drama-pipeline.md +5 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/operations/short-drama-skill-index.md +29 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/operations/use-short-drama-studio.md +15 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/pipeline.md +85 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/project-spec-v1.md +217 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/prompt-skill-index.md +62 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/recreation/publish-drama-references/litterbox.md +5 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/review/review-drama-script.md +7 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/review/review-drama-shots.md +39 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/runninghub-provider.md +33 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/starrouter-provider.md +53 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/storyboard/build-drama-storyboard.md +13 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/storyboard/design-fight-video.md +19 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/storyboard/direct-blender-previz/action-previz.md +39 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/storyboard/direct-blender-previz/direction-contract.md +96 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/storyboard/direct-blender-previz/weapons-vfx.md +23 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/storyboard/direct-blender-previz.md +15 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/storyboard/generate-blender-previz.md +20 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/storyboard/plan-drama-production.md +21 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/storyboard/plan-shot-continuity.md +15 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/storyboard/revise-drama-storyboards.md +5 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/usage-guide.md +107 -0
- package/skills/using-vvicat-ai-short-studio-cli/references/special-workflows.md +2 -2
- package/dist/auth/login-provider.d.ts +0 -2
- package/dist/auth/login-provider.js +0 -3
- package/dist/commands/canvas/node/quote.d.ts +0 -17
- package/dist/commands/canvas/node/quote.js +0 -13
- package/dist/commands/config/ai-provider/capabilities.d.ts +0 -60
- package/dist/commands/config/ai-provider/capabilities.js +0 -124
- package/dist/commands/config/ai-provider/get.d.ts +0 -22
- package/dist/commands/config/ai-provider/get.js +0 -21
- package/dist/commands/config/ai-provider/list.d.ts +0 -21
- package/dist/commands/config/ai-provider/list.js +0 -19
- package/dist/commands/config/ai-provider/models.d.ts +0 -22
- package/dist/commands/config/ai-provider/models.js +0 -21
- package/dist/commands/config/ai-provider/set.d.ts +0 -41
- package/dist/commands/config/ai-provider/set.js +0 -65
- package/dist/commands/config/ai-provider/test.d.ts +0 -25
- package/dist/commands/config/ai-provider/test.js +0 -24
- package/dist/domain/ai-provider-capabilities.d.ts +0 -109
- package/dist/domain/ai-provider-capabilities.js +0 -180
- package/dist/domain/ai-provider-command-helpers.d.ts +0 -27
- package/dist/domain/ai-provider-command-helpers.js +0 -55
- package/skills/using-vvicat-ai-short-studio-cli/references/b-roll-and-screen.md +0 -9
- package/skills/using-vvicat-ai-short-studio-cli/references/caption-and-graphics-direction.md +0 -11
- package/skills/using-vvicat-ai-short-studio-cli/references/composition-and-shot-review.md +0 -17
- package/skills/using-vvicat-ai-short-studio-cli/references/craft-index.md +0 -20
- package/skills/using-vvicat-ai-short-studio-cli/references/drama-canvas.md +0 -19
- package/skills/using-vvicat-ai-short-studio-cli/references/format-relationships.md +0 -15
- package/skills/using-vvicat-ai-short-studio-cli/references/h3-prompts.md +0 -7
- package/skills/using-vvicat-ai-short-studio-cli/references/image-and-reference-direction.md +0 -9
- package/skills/using-vvicat-ai-short-studio-cli/references/licensed-music.md +0 -9
- package/skills/using-vvicat-ai-short-studio-cli/references/licenses/oh-my-short-drama-MIT.txt +0 -21
- package/skills/using-vvicat-ai-short-studio-cli/references/licenses/short-drama-MIT.txt +0 -21
- package/skills/using-vvicat-ai-short-studio-cli/references/media-provenance-and-review.md +0 -22
- package/skills/using-vvicat-ai-short-studio-cli/references/paid-plan.md +0 -7
- package/skills/using-vvicat-ai-short-studio-cli/references/production-specialties.md +0 -25
- package/skills/using-vvicat-ai-short-studio-cli/references/recreation.md +0 -21
- package/skills/using-vvicat-ai-short-studio-cli/references/reference-analysis-and-timing.md +0 -19
- package/skills/using-vvicat-ai-short-studio-cli/references/remotion-editing.md +0 -18
- package/skills/using-vvicat-ai-short-studio-cli/references/shot-production.md +0 -9
- package/skills/using-vvicat-ai-short-studio-cli/references/sound-and-captions.md +0 -7
- package/skills/using-vvicat-ai-short-studio-cli/references/sources.md +0 -6
- package/skills/using-vvicat-ai-short-studio-cli/references/story-craft/canvas-production.md +0 -9
- package/skills/using-vvicat-ai-short-studio-cli/references/story-craft/guide.md +0 -7
- package/skills/using-vvicat-ai-short-studio-cli/references/story-craft/index.md +0 -13
- package/skills/using-vvicat-ai-short-studio-cli/references/video-and-performance-direction.md +0 -9
- package/skills/using-vvicat-ai-short-studio-cli/references/voice-and-sound-direction.md +0 -9
- package/skills/using-vvicat-ai-short-studio-cli/references/writing-polish.md +0 -15
- /package/skills/using-vvicat-ai-short-studio-cli/references/{licenses/humanizer-MIT.txt → short-drama/assets/modules/humanizer/LICENSE} +0 -0
- /package/skills/using-vvicat-ai-short-studio-cli/references/{story-craft → short-drama/writing}/compliance-checklist.md +0 -0
- /package/skills/using-vvicat-ai-short-studio-cli/references/{story-craft → short-drama/writing}/genre-guide.md +0 -0
- /package/skills/using-vvicat-ai-short-studio-cli/references/{story-craft → short-drama/writing}/hook-design.md +0 -0
- /package/skills/using-vvicat-ai-short-studio-cli/references/{story-craft → short-drama/writing}/opening-rules.md +0 -0
- /package/skills/using-vvicat-ai-short-studio-cli/references/{story-craft → short-drama/writing}/paywall-design.md +0 -0
- /package/skills/using-vvicat-ai-short-studio-cli/references/{story-craft → short-drama/writing}/rhythm-curve.md +0 -0
- /package/skills/using-vvicat-ai-short-studio-cli/references/{story-craft → short-drama/writing}/satisfaction-matrix.md +0 -0
- /package/skills/using-vvicat-ai-short-studio-cli/references/{story-craft → short-drama/writing}/villain-design.md +0 -0
|
@@ -12,7 +12,6 @@ export default class AuthSignup extends BaseCommand {
|
|
|
12
12
|
locale: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
13
13
|
profile: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
14
14
|
episode: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
15
|
-
output: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
16
15
|
};
|
|
17
16
|
run(): Promise<void>;
|
|
18
17
|
}
|
|
@@ -7,7 +7,6 @@ export default class AuthStatus extends BaseCommand {
|
|
|
7
7
|
locale: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
8
8
|
profile: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
9
9
|
episode: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
10
|
-
output: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
11
10
|
};
|
|
12
11
|
run(): Promise<void>;
|
|
13
12
|
}
|
|
@@ -10,7 +10,6 @@ export default class CanvasApply extends BaseCommand {
|
|
|
10
10
|
locale: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
11
11
|
profile: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
12
12
|
episode: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
13
|
-
output: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
14
13
|
};
|
|
15
14
|
run(): Promise<void>;
|
|
16
15
|
}
|
|
@@ -10,7 +10,6 @@ export default class CanvasAssetGet extends BaseCommand {
|
|
|
10
10
|
locale: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
11
11
|
profile: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
12
12
|
episode: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
13
|
-
output: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
14
13
|
};
|
|
15
14
|
run(): Promise<void>;
|
|
16
15
|
}
|
|
@@ -9,7 +9,6 @@ export default class CanvasAssetList extends BaseCommand {
|
|
|
9
9
|
locale: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
10
10
|
profile: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
11
11
|
episode: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
12
|
-
output: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
13
12
|
};
|
|
14
13
|
run(): Promise<void>;
|
|
15
14
|
}
|
|
@@ -1,18 +1,16 @@
|
|
|
1
1
|
import { BaseCommand } from '../../../base-command.js';
|
|
2
2
|
export default class CanvasAssetSelect extends BaseCommand {
|
|
3
3
|
static args: {
|
|
4
|
-
assetId: import("@oclif/core/interfaces").Arg<string
|
|
4
|
+
assetId: import("@oclif/core/interfaces").Arg<string, Record<string, unknown>>;
|
|
5
5
|
};
|
|
6
6
|
static flags: {
|
|
7
7
|
project: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
8
8
|
version: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
9
|
-
asset: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
10
9
|
'base-url': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
11
10
|
json: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
12
11
|
locale: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
13
12
|
profile: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
14
13
|
episode: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
15
|
-
output: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
16
14
|
};
|
|
17
15
|
run(): Promise<void>;
|
|
18
16
|
}
|
|
@@ -1,27 +1,8 @@
|
|
|
1
1
|
import { Args, Flags } from '@oclif/core';
|
|
2
2
|
import { BaseCommand } from '../../../base-command.js';
|
|
3
3
|
import { commandApi, projectFlag } from '../../../command-helpers.js';
|
|
4
|
-
// 同时支持 positional ASSETID 与 --asset <id>:
|
|
5
|
-
// - 历史 CLI 调用方习惯写 `... select-version <assetId> --version <v>`。
|
|
6
|
-
// - bundled skill 文档 (skills/using-vvicat-ai-short-studio-cli/references/commands/assets-and-tasks.md:9)
|
|
7
|
-
// 写的是 `--asset <assetId>`,agent 容易按文档写错。
|
|
8
|
-
// 两种调用方式都接受,重复给出时报错。
|
|
9
4
|
export default class CanvasAssetSelect extends BaseCommand {
|
|
10
|
-
static args = { assetId: Args.string({ required:
|
|
11
|
-
static flags = {
|
|
12
|
-
|
|
13
|
-
project: projectFlag,
|
|
14
|
-
version: Flags.string({ required: true }),
|
|
15
|
-
asset: Flags.string({ description: '资产 ID(与位置参数 ASSETID 二选一)' }),
|
|
16
|
-
};
|
|
17
|
-
async run() {
|
|
18
|
-
const { args, flags } = await this.parse(CanvasAssetSelect);
|
|
19
|
-
const assetId = args.assetId ?? flags.asset;
|
|
20
|
-
if (!assetId)
|
|
21
|
-
throw new Error('请提供 assetId 作为位置参数或 --asset');
|
|
22
|
-
if (args.assetId && flags.asset)
|
|
23
|
-
throw new Error('请提供 assetId 作为位置参数或 --asset(不能同时给两个)');
|
|
24
|
-
const { api } = await commandApi(flags);
|
|
25
|
-
this.print(await api.selectAssetVersion(flags.project, assetId, flags.version));
|
|
26
|
-
}
|
|
5
|
+
static args = { assetId: Args.string({ required: true }) };
|
|
6
|
+
static flags = { ...BaseCommand.baseFlags, project: projectFlag, version: Flags.string({ required: true }) };
|
|
7
|
+
async run() { const { args, flags } = await this.parse(CanvasAssetSelect); const { api } = await commandApi(flags); this.print(await api.selectAssetVersion(flags.project, args.assetId, flags.version)); }
|
|
27
8
|
}
|
|
@@ -1,30 +1,16 @@
|
|
|
1
1
|
import { BaseCommand } from '../../../base-command.js';
|
|
2
|
-
/**
|
|
3
|
-
* 后端 `/api/assets/upload` 按 `kind` 分发资产域:
|
|
4
|
-
* image / video / audio → GlobalCreativeAsset;voice → GlobalVoice。
|
|
5
|
-
* 允许的取值以 src/lib/asset-core/media-view/types.ts 的 kind 域为准。
|
|
6
|
-
*/
|
|
7
|
-
export declare const UPLOAD_KINDS: readonly ["image", "video", "audio", "voice"];
|
|
8
|
-
export type UploadKind = (typeof UPLOAD_KINDS)[number];
|
|
9
2
|
export declare function mimeTypeForUpload(filename: string): string;
|
|
10
|
-
/**
|
|
11
|
-
* 由扩展名推断 `kind`;无法识别时返回 null 交由调用方显式传 --kind,
|
|
12
|
-
* 避免把未知文件静默送进错误资产域(后端不校验 kind 与实际内容是否一致)。
|
|
13
|
-
*/
|
|
14
|
-
export declare function kindForUpload(filename: string): UploadKind | null;
|
|
15
3
|
export default class CanvasAssetUpload extends BaseCommand {
|
|
16
4
|
static args: {
|
|
17
5
|
file: import("@oclif/core/interfaces").Arg<string, Record<string, unknown>>;
|
|
18
6
|
};
|
|
19
7
|
static flags: {
|
|
20
8
|
project: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
21
|
-
kind: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
22
9
|
'base-url': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
23
10
|
json: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
24
11
|
locale: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
25
12
|
profile: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
26
13
|
episode: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
27
|
-
output: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
28
14
|
};
|
|
29
15
|
run(): Promise<void>;
|
|
30
16
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { basename, extname } from 'node:path';
|
|
2
2
|
import { readFile } from 'node:fs/promises';
|
|
3
|
-
import { Args
|
|
3
|
+
import { Args } from '@oclif/core';
|
|
4
4
|
import { BaseCommand } from '../../../base-command.js';
|
|
5
5
|
import { commandApi, projectFlag } from '../../../command-helpers.js';
|
|
6
6
|
const MIME_BY_EXTENSION = {
|
|
@@ -18,51 +18,11 @@ const MIME_BY_EXTENSION = {
|
|
|
18
18
|
'.aac': 'audio/aac',
|
|
19
19
|
'.ogg': 'audio/ogg',
|
|
20
20
|
};
|
|
21
|
-
/**
|
|
22
|
-
* 后端 `/api/assets/upload` 按 `kind` 分发资产域:
|
|
23
|
-
* image / video / audio → GlobalCreativeAsset;voice → GlobalVoice。
|
|
24
|
-
* 允许的取值以 src/lib/asset-core/media-view/types.ts 的 kind 域为准。
|
|
25
|
-
*/
|
|
26
|
-
export const UPLOAD_KINDS = ['image', 'video', 'audio', 'voice'];
|
|
27
|
-
const EXTENSION_KIND = {
|
|
28
|
-
'.png': 'image', '.jpg': 'image', '.jpeg': 'image', '.webp': 'image', '.gif': 'image',
|
|
29
|
-
'.mp4': 'video', '.mov': 'video', '.webm': 'video',
|
|
30
|
-
'.mp3': 'audio', '.wav': 'audio', '.m4a': 'audio', '.aac': 'audio', '.ogg': 'audio',
|
|
31
|
-
};
|
|
32
21
|
export function mimeTypeForUpload(filename) {
|
|
33
22
|
return MIME_BY_EXTENSION[extname(filename).toLowerCase()] || 'application/octet-stream';
|
|
34
23
|
}
|
|
35
|
-
/**
|
|
36
|
-
* 由扩展名推断 `kind`;无法识别时返回 null 交由调用方显式传 --kind,
|
|
37
|
-
* 避免把未知文件静默送进错误资产域(后端不校验 kind 与实际内容是否一致)。
|
|
38
|
-
*/
|
|
39
|
-
export function kindForUpload(filename) {
|
|
40
|
-
return EXTENSION_KIND[extname(filename).toLowerCase()] ?? null;
|
|
41
|
-
}
|
|
42
24
|
export default class CanvasAssetUpload extends BaseCommand {
|
|
43
25
|
static args = { file: Args.string({ required: true }) };
|
|
44
|
-
static flags = {
|
|
45
|
-
|
|
46
|
-
project: projectFlag,
|
|
47
|
-
kind: Flags.string({ options: [...UPLOAD_KINDS], help: '资产类型;缺省按文件扩展名推断,无法识别时报错退出' }),
|
|
48
|
-
};
|
|
49
|
-
async run() {
|
|
50
|
-
const { args, flags } = await this.parse(CanvasAssetUpload);
|
|
51
|
-
const bytes = await readFile(args.file);
|
|
52
|
-
const kind = flags.kind ?? kindForUpload(args.file);
|
|
53
|
-
if (!kind) {
|
|
54
|
-
this.error(`无法从文件名推断资产类型(${basename(args.file)}),请显式传 --kind <${UPLOAD_KINDS.join('|')}>`);
|
|
55
|
-
}
|
|
56
|
-
const form = new FormData();
|
|
57
|
-
const mime = mimeTypeForUpload(args.file);
|
|
58
|
-
// 后端 kind=voice 分支只接受音频(route.ts:93 isAudioFile),本地先拦一道给出可读错误,
|
|
59
|
-
// 避免把必然 400 的请求发出去。
|
|
60
|
-
if (kind === 'voice' && !mime.startsWith('audio/')) {
|
|
61
|
-
this.error(`--kind voice 仅支持音频文件,当前文件类型为 ${mime}`);
|
|
62
|
-
}
|
|
63
|
-
form.set('file', new Blob([bytes], { type: mime }), basename(args.file));
|
|
64
|
-
form.set('kind', kind);
|
|
65
|
-
const { api } = await commandApi(flags);
|
|
66
|
-
this.print(await api.uploadAsset(flags.project, form));
|
|
67
|
-
}
|
|
26
|
+
static flags = { ...BaseCommand.baseFlags, project: projectFlag };
|
|
27
|
+
async run() { const { args, flags } = await this.parse(CanvasAssetUpload); const bytes = await readFile(args.file); const form = new FormData(); form.set('file', new Blob([bytes], { type: mimeTypeForUpload(args.file) }), basename(args.file)); const { api } = await commandApi(flags); this.print(await api.uploadAsset(flags.project, form)); }
|
|
68
28
|
}
|
|
@@ -9,7 +9,6 @@ export default class CanvasContinuityAnalyze extends BaseCommand {
|
|
|
9
9
|
locale: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
10
10
|
profile: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
11
11
|
episode: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
12
|
-
output: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
13
12
|
};
|
|
14
13
|
run(): Promise<void>;
|
|
15
14
|
}
|
|
@@ -9,7 +9,6 @@ export default class CanvasEdgeConnect extends BaseCommand {
|
|
|
9
9
|
locale: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
10
10
|
profile: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
11
11
|
episode: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
12
|
-
output: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
13
12
|
};
|
|
14
13
|
run(): Promise<void>;
|
|
15
14
|
}
|
|
@@ -11,7 +11,6 @@ export default class CanvasEdgeDisconnect extends BaseCommand {
|
|
|
11
11
|
locale: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
12
12
|
profile: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
13
13
|
episode: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
14
|
-
output: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
15
14
|
};
|
|
16
15
|
run(): Promise<void>;
|
|
17
16
|
}
|
|
@@ -7,7 +7,6 @@ export default class CanvasEdgeList extends BaseCommand {
|
|
|
7
7
|
locale: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
8
8
|
profile: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
9
9
|
episode: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
10
|
-
output: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
11
10
|
};
|
|
12
11
|
run(): Promise<void>;
|
|
13
12
|
}
|
|
@@ -1,13 +1,10 @@
|
|
|
1
1
|
import { BaseCommand } from '../../../base-command.js';
|
|
2
2
|
import { commandApi, projectFlag } from '../../../command-helpers.js';
|
|
3
|
-
// 输出保持 `{edges: [...]}` 与 `canvas node list --json` 对称,方便 agent 统一处理。
|
|
4
|
-
// 历史版本直接 print 数组,agent 拿到的就是裸数组,结构与 nodes 不对称。
|
|
5
3
|
export default class CanvasEdgeList extends BaseCommand {
|
|
6
4
|
static flags = { ...BaseCommand.baseFlags, project: projectFlag };
|
|
7
5
|
async run() {
|
|
8
6
|
const { flags } = await this.parse(CanvasEdgeList);
|
|
9
7
|
const { api } = await commandApi(flags);
|
|
10
|
-
|
|
11
|
-
this.print({ edges });
|
|
8
|
+
this.print(await api.listEdges(flags.project));
|
|
12
9
|
}
|
|
13
10
|
}
|
|
@@ -9,7 +9,6 @@ export default class CanvasEpisodeCreate extends BaseCommand {
|
|
|
9
9
|
locale: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
10
10
|
profile: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
11
11
|
episode: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
12
|
-
output: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
13
12
|
};
|
|
14
13
|
run(): Promise<void>;
|
|
15
14
|
}
|
|
@@ -7,7 +7,6 @@ export default class CanvasEpisodeList extends BaseCommand {
|
|
|
7
7
|
locale: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
8
8
|
profile: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
9
9
|
episode: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
10
|
-
output: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
11
10
|
};
|
|
12
11
|
run(): Promise<void>;
|
|
13
12
|
}
|
|
@@ -20,7 +20,6 @@ export default class CanvasFolderCopyCrossProject extends BaseCommand {
|
|
|
20
20
|
locale: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
21
21
|
profile: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
22
22
|
episode: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
23
|
-
output: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
24
23
|
};
|
|
25
24
|
run(): Promise<void>;
|
|
26
25
|
}
|
|
@@ -15,7 +15,6 @@ export default class CanvasFolderCreate extends BaseCommand {
|
|
|
15
15
|
locale: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
16
16
|
profile: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
17
17
|
episode: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
18
|
-
output: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
19
18
|
};
|
|
20
19
|
run(): Promise<void>;
|
|
21
20
|
}
|
|
@@ -14,7 +14,6 @@ export default class CanvasFolderDelete extends BaseCommand {
|
|
|
14
14
|
locale: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
15
15
|
profile: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
16
16
|
episode: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
17
|
-
output: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
18
17
|
};
|
|
19
18
|
run(): Promise<void>;
|
|
20
19
|
}
|
|
@@ -14,7 +14,6 @@ export default class CanvasFolderList extends BaseCommand {
|
|
|
14
14
|
locale: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
15
15
|
profile: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
16
16
|
episode: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
17
|
-
output: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
18
17
|
};
|
|
19
18
|
run(): Promise<void>;
|
|
20
19
|
}
|
|
@@ -16,7 +16,6 @@ export default class CanvasFolderMove extends BaseCommand {
|
|
|
16
16
|
locale: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
17
17
|
profile: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
18
18
|
episode: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
19
|
-
output: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
20
19
|
};
|
|
21
20
|
run(): Promise<void>;
|
|
22
21
|
}
|
|
@@ -16,7 +16,6 @@ export default class CanvasFolderRename extends BaseCommand {
|
|
|
16
16
|
locale: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
17
17
|
profile: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
18
18
|
episode: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
19
|
-
output: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
20
19
|
};
|
|
21
20
|
run(): Promise<void>;
|
|
22
21
|
}
|
|
@@ -14,7 +14,6 @@ export default class CanvasFolderRestore extends BaseCommand {
|
|
|
14
14
|
locale: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
15
15
|
profile: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
16
16
|
episode: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
17
|
-
output: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
18
17
|
};
|
|
19
18
|
run(): Promise<void>;
|
|
20
19
|
}
|
|
@@ -7,7 +7,6 @@ export default class CanvasGet extends BaseCommand {
|
|
|
7
7
|
locale: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
8
8
|
profile: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
9
9
|
episode: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
10
|
-
output: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
11
10
|
};
|
|
12
11
|
run(): Promise<void>;
|
|
13
12
|
}
|
|
@@ -15,7 +15,6 @@ export default class CanvasInspect extends BaseCommand {
|
|
|
15
15
|
locale: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
16
16
|
profile: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
17
17
|
episode: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
18
|
-
output: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
19
18
|
};
|
|
20
19
|
run(): Promise<void>;
|
|
21
20
|
}
|
|
@@ -8,13 +8,13 @@ export default class CanvasNodeAdd extends BaseCommand {
|
|
|
8
8
|
x: import("@oclif/core/interfaces").OptionFlag<number, import("@oclif/core/interfaces").CustomOptions>;
|
|
9
9
|
y: import("@oclif/core/interfaces").OptionFlag<number, import("@oclif/core/interfaces").CustomOptions>;
|
|
10
10
|
title: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
11
|
+
'asset-id': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
11
12
|
config: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
12
13
|
'base-url': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
13
14
|
json: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
14
15
|
locale: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
15
16
|
profile: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
16
17
|
episode: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
17
|
-
output: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
18
18
|
};
|
|
19
19
|
run(): Promise<void>;
|
|
20
20
|
}
|
|
@@ -3,6 +3,6 @@ import { BaseCommand } from '../../../base-command.js';
|
|
|
3
3
|
import { commandApi, projectFlag, readJsonInput } from '../../../command-helpers.js';
|
|
4
4
|
export default class CanvasNodeAdd extends BaseCommand {
|
|
5
5
|
static args = { kind: Args.string({ required: true }) };
|
|
6
|
-
static flags = { ...BaseCommand.baseFlags, project: projectFlag, x: Flags.integer({ default: 0 }), y: Flags.integer({ default: 0 }), title: Flags.string(), config: Flags.string({ description: '配置 JSON 文件,例如 video-frame-extract 使用 {"position":"first"}' }) };
|
|
7
|
-
async run() { const { args, flags } = await this.parse(CanvasNodeAdd); const { api } = await commandApi(flags); this.print(await api.addNode(flags.project, { kind: args.kind, x: flags.x, y: flags.y, title: flags.title, config: flags.config ? await readJsonInput(flags.config) : {} })); }
|
|
6
|
+
static flags = { ...BaseCommand.baseFlags, project: projectFlag, x: Flags.integer({ default: 0 }), y: Flags.integer({ default: 0 }), title: Flags.string(), 'asset-id': Flags.string({ description: '绑定已有媒体资产 ID,仅用于 image、video、audio 节点' }), config: Flags.string({ description: '配置 JSON 文件,例如 video-frame-extract 使用 {"position":"first"}' }) };
|
|
7
|
+
async run() { const { args, flags } = await this.parse(CanvasNodeAdd); const { api } = await commandApi(flags); this.print(await api.addNode(flags.project, { kind: args.kind, x: flags.x, y: flags.y, title: flags.title, assetId: flags['asset-id'], config: flags.config ? await readJsonInput(flags.config) : {} })); }
|
|
8
8
|
}
|
|
@@ -11,7 +11,6 @@ export default class CanvasNodeDelete extends BaseCommand {
|
|
|
11
11
|
locale: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
12
12
|
profile: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
13
13
|
episode: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
14
|
-
output: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
15
14
|
};
|
|
16
15
|
run(): Promise<void>;
|
|
17
16
|
}
|
|
@@ -6,13 +6,11 @@ export default class CanvasNodeEditResource extends BaseCommand {
|
|
|
6
6
|
static flags: {
|
|
7
7
|
project: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
8
8
|
file: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
9
|
-
'markdown-file': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
10
9
|
'base-url': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
11
10
|
json: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
12
11
|
locale: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
13
12
|
profile: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
14
13
|
episode: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
15
|
-
output: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
16
14
|
};
|
|
17
15
|
run(): Promise<void>;
|
|
18
16
|
}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { Args, Flags } from '@oclif/core';
|
|
2
|
-
import { readFile } from 'node:fs/promises';
|
|
3
2
|
import { BaseCommand } from '../../../base-command.js';
|
|
4
3
|
import { commandApi, projectFlag, readJsonInput } from '../../../command-helpers.js';
|
|
5
4
|
export default class CanvasNodeEditResource extends BaseCommand {
|
|
@@ -8,7 +7,6 @@ export default class CanvasNodeEditResource extends BaseCommand {
|
|
|
8
7
|
...BaseCommand.baseFlags,
|
|
9
8
|
project: projectFlag,
|
|
10
9
|
file: Flags.string({ description: '结构化资源 JSON 文件;省略时读取 stdin' }),
|
|
11
|
-
'markdown-file': Flags.string({ description: '短剧单集剧本 Markdown 文件', exclusive: ['file'] }),
|
|
12
10
|
};
|
|
13
11
|
async run() {
|
|
14
12
|
const { args, flags } = await this.parse(CanvasNodeEditResource);
|
|
@@ -38,16 +36,10 @@ export default class CanvasNodeEditResource extends BaseCommand {
|
|
|
38
36
|
}
|
|
39
37
|
if (!basedOnVersionId)
|
|
40
38
|
throw new Error('结构化资源当前版本不存在');
|
|
41
|
-
if (flags['markdown-file'] && artifact.operation !== 'drama-episode') {
|
|
42
|
-
throw new Error('--markdown-file 只适用于短剧单集剧本资源');
|
|
43
|
-
}
|
|
44
|
-
const resource = flags['markdown-file']
|
|
45
|
-
? { markdown: await readFile(flags['markdown-file'], 'utf8') }
|
|
46
|
-
: await readJsonInput(flags.file);
|
|
47
39
|
this.print(await api.updateStructuredResource(flags.project, args.nodeId, {
|
|
48
40
|
expectedCanvasVersion: canvas.version,
|
|
49
41
|
basedOnVersionId,
|
|
50
|
-
resource,
|
|
42
|
+
resource: await readJsonInput(flags.file),
|
|
51
43
|
}));
|
|
52
44
|
}
|
|
53
45
|
}
|
|
@@ -11,7 +11,6 @@ export default class CanvasNodeEditShot extends BaseCommand {
|
|
|
11
11
|
locale: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
12
12
|
profile: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
13
13
|
episode: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
14
|
-
output: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
15
14
|
};
|
|
16
15
|
run(): Promise<void>;
|
|
17
16
|
}
|
|
@@ -10,7 +10,6 @@ export default class CanvasNodeGet extends BaseCommand {
|
|
|
10
10
|
locale: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
11
11
|
profile: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
12
12
|
episode: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
13
|
-
output: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
14
13
|
};
|
|
15
14
|
run(): Promise<void>;
|
|
16
15
|
}
|
|
@@ -2,16 +2,11 @@ import { BaseCommand } from '../../../base-command.js';
|
|
|
2
2
|
export default class CanvasNodeList extends BaseCommand {
|
|
3
3
|
static flags: {
|
|
4
4
|
project: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
5
|
-
kind: import("@oclif/core/interfaces").OptionFlag<string[] | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
6
|
-
status: import("@oclif/core/interfaces").OptionFlag<string[] | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
7
|
-
search: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
8
|
-
'producer-node': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
9
5
|
'base-url': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
10
6
|
json: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
11
7
|
locale: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
12
8
|
profile: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
13
9
|
episode: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
14
|
-
output: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
15
10
|
};
|
|
16
11
|
run(): Promise<void>;
|
|
17
12
|
}
|
|
@@ -1,51 +1,10 @@
|
|
|
1
|
-
import { Flags } from '@oclif/core';
|
|
2
1
|
import { BaseCommand } from '../../../base-command.js';
|
|
3
2
|
import { commandApi, projectFlag } from '../../../command-helpers.js';
|
|
4
|
-
// list 命令的客户端过滤与 inspect 的 matchesInspectNode(vvicat-api.ts:494) 行为类似,
|
|
5
|
-
// 但不复用服务端过滤,因为 list 返回的 CanvasNode 结构和 inspect 不完全一致。
|
|
6
|
-
// 输出保持 `{nodes: [...]}` 与原版本兼容。
|
|
7
|
-
function matchesListNode(node, filters) {
|
|
8
|
-
if (filters.kinds?.length && !filters.kinds.includes(node.kind))
|
|
9
|
-
return false;
|
|
10
|
-
if (filters.statuses?.length && !filters.statuses.includes(String(node.status ?? 'idle')))
|
|
11
|
-
return false;
|
|
12
|
-
if (filters.producerNodeId) {
|
|
13
|
-
const artifact = node.data?.artifact && typeof node.data.artifact === 'object' && !Array.isArray(node.data.artifact)
|
|
14
|
-
? node.data.artifact
|
|
15
|
-
: {};
|
|
16
|
-
if (artifact.producerNodeId !== filters.producerNodeId)
|
|
17
|
-
return false;
|
|
18
|
-
}
|
|
19
|
-
if (filters.search) {
|
|
20
|
-
const query = filters.search.toLocaleLowerCase();
|
|
21
|
-
const artifact = node.data?.artifact && typeof node.data.artifact === 'object' && !Array.isArray(node.data.artifact)
|
|
22
|
-
? node.data.artifact
|
|
23
|
-
: {};
|
|
24
|
-
const candidates = [node.id, node.title, artifact.name, artifact.resourceKey];
|
|
25
|
-
if (!candidates.some((value) => typeof value === 'string' && value.toLocaleLowerCase().includes(query)))
|
|
26
|
-
return false;
|
|
27
|
-
}
|
|
28
|
-
return true;
|
|
29
|
-
}
|
|
30
3
|
export default class CanvasNodeList extends BaseCommand {
|
|
31
|
-
static flags = {
|
|
32
|
-
...BaseCommand.baseFlags,
|
|
33
|
-
project: projectFlag,
|
|
34
|
-
kind: Flags.string({ description: '按节点 kind 过滤,可重复指定', multiple: true }),
|
|
35
|
-
status: Flags.string({ description: '按节点状态过滤,可重复指定', multiple: true }),
|
|
36
|
-
search: Flags.string({ description: '按节点 ID / 标题 / artifact 名称 / resourceKey 模糊搜索' }),
|
|
37
|
-
'producer-node': Flags.string({ description: '按 artifact.producerNodeId 过滤' }),
|
|
38
|
-
};
|
|
4
|
+
static flags = { ...BaseCommand.baseFlags, project: projectFlag };
|
|
39
5
|
async run() {
|
|
40
6
|
const { flags } = await this.parse(CanvasNodeList);
|
|
41
7
|
const { api } = await commandApi(flags);
|
|
42
|
-
|
|
43
|
-
const filtered = nodes.filter((node) => matchesListNode(node, {
|
|
44
|
-
kinds: flags.kind,
|
|
45
|
-
statuses: flags.status,
|
|
46
|
-
search: flags.search,
|
|
47
|
-
producerNodeId: flags['producer-node'],
|
|
48
|
-
}));
|
|
49
|
-
this.print({ nodes: filtered });
|
|
8
|
+
this.print(await api.listNodes(flags.project));
|
|
50
9
|
}
|
|
51
10
|
}
|
|
@@ -1,15 +1,4 @@
|
|
|
1
1
|
import { BaseCommand } from '../../../base-command.js';
|
|
2
|
-
/**
|
|
3
|
-
* P1-2 契约:调用方必须能从 stdout JSON 直接区分
|
|
4
|
-
* 「已等待到终态」与「仅提交、仍在服务端排队」。
|
|
5
|
-
* 因此每次输出都带 waited / pending / pendingNodeIds / reason,
|
|
6
|
-
* 不再允许出现「空 tasks + exit 0」这种伪装成同步完成的输出。
|
|
7
|
-
*/
|
|
8
|
-
export declare function withWaitState(payload: unknown, state: {
|
|
9
|
-
waited: boolean;
|
|
10
|
-
pendingNodeIds: string[];
|
|
11
|
-
reason?: string;
|
|
12
|
-
}): Record<string, unknown>;
|
|
13
2
|
export default class CanvasNodeRun extends BaseCommand {
|
|
14
3
|
static args: {
|
|
15
4
|
nodeId: import("@oclif/core/interfaces").Arg<string | undefined, Record<string, unknown>>;
|
|
@@ -20,15 +9,11 @@ export default class CanvasNodeRun extends BaseCommand {
|
|
|
20
9
|
concurrency: import("@oclif/core/interfaces").OptionFlag<number, import("@oclif/core/interfaces").CustomOptions>;
|
|
21
10
|
wait: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
22
11
|
interval: import("@oclif/core/interfaces").OptionFlag<number, import("@oclif/core/interfaces").CustomOptions>;
|
|
23
|
-
'max-wait-ms': import("@oclif/core/interfaces").OptionFlag<number, import("@oclif/core/interfaces").CustomOptions>;
|
|
24
|
-
'max-attempts': import("@oclif/core/interfaces").OptionFlag<number, import("@oclif/core/interfaces").CustomOptions>;
|
|
25
|
-
'auto-select-version': import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
26
12
|
'base-url': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
27
13
|
json: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
28
14
|
locale: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
29
15
|
profile: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
30
16
|
episode: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
31
|
-
output: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
32
17
|
};
|
|
33
18
|
run(): Promise<void>;
|
|
34
19
|
}
|