@sogni-ai/sogni-intelligence-client 3.0.0-alpha.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.env.example +33 -0
- package/LICENSE +22 -0
- package/README.md +823 -0
- package/contracts/index.d.ts +1 -0
- package/contracts/index.js +2 -0
- package/dist/client/SogniClientWrapper.d.ts +86 -0
- package/dist/client/SogniClientWrapper.d.ts.map +1 -0
- package/dist/client/SogniClientWrapper.js +914 -0
- package/dist/client/SogniClientWrapper.js.map +1 -0
- package/dist/contracts/backboneDurableWorkflow.d.ts +82 -0
- package/dist/contracts/backboneDurableWorkflow.d.ts.map +1 -0
- package/dist/contracts/backboneDurableWorkflow.js +96 -0
- package/dist/contracts/backboneDurableWorkflow.js.map +1 -0
- package/dist/contracts/backboneToolCatalog.d.ts +7 -0
- package/dist/contracts/backboneToolCatalog.d.ts.map +1 -0
- package/dist/contracts/backboneToolCatalog.js +62 -0
- package/dist/contracts/backboneToolCatalog.js.map +1 -0
- package/dist/contracts/composeWorkflowTypes.d.ts +6 -0
- package/dist/contracts/composeWorkflowTypes.d.ts.map +1 -0
- package/dist/contracts/composeWorkflowTypes.js +3 -0
- package/dist/contracts/composeWorkflowTypes.js.map +1 -0
- package/dist/contracts/data/costEstimation.d.ts +5 -0
- package/dist/contracts/data/costEstimation.d.ts.map +1 -0
- package/dist/contracts/data/costEstimation.js +22 -0
- package/dist/contracts/data/costEstimation.js.map +1 -0
- package/dist/contracts/data/gatingPolicies.d.ts +6 -0
- package/dist/contracts/data/gatingPolicies.d.ts.map +1 -0
- package/dist/contracts/data/gatingPolicies.js +218 -0
- package/dist/contracts/data/gatingPolicies.js.map +1 -0
- package/dist/contracts/data/gatingPoliciesToolSurface.d.ts +7 -0
- package/dist/contracts/data/gatingPoliciesToolSurface.d.ts.map +1 -0
- package/dist/contracts/data/gatingPoliciesToolSurface.js +61 -0
- package/dist/contracts/data/gatingPoliciesToolSurface.js.map +1 -0
- package/dist/contracts/data/index.d.ts +14 -0
- package/dist/contracts/data/index.d.ts.map +1 -0
- package/dist/contracts/data/index.js +57 -0
- package/dist/contracts/data/index.js.map +1 -0
- package/dist/contracts/data/promptContracts.d.ts +5 -0
- package/dist/contracts/data/promptContracts.d.ts.map +1 -0
- package/dist/contracts/data/promptContracts.js +1173 -0
- package/dist/contracts/data/promptContracts.js.map +1 -0
- package/dist/contracts/data/repairRecipes.d.ts +5 -0
- package/dist/contracts/data/repairRecipes.d.ts.map +1 -0
- package/dist/contracts/data/repairRecipes.js +197 -0
- package/dist/contracts/data/repairRecipes.js.map +1 -0
- package/dist/contracts/data/toolCatalog.d.ts +31 -0
- package/dist/contracts/data/toolCatalog.d.ts.map +1 -0
- package/dist/contracts/data/toolCatalog.js +129 -0
- package/dist/contracts/data/toolCatalog.js.map +1 -0
- package/dist/contracts/data/toolCostMetadata.d.ts +16 -0
- package/dist/contracts/data/toolCostMetadata.d.ts.map +1 -0
- package/dist/contracts/data/toolCostMetadata.js +284 -0
- package/dist/contracts/data/toolCostMetadata.js.map +1 -0
- package/dist/contracts/data/toolPermissions.d.ts +27 -0
- package/dist/contracts/data/toolPermissions.d.ts.map +1 -0
- package/dist/contracts/data/toolPermissions.js +78 -0
- package/dist/contracts/data/toolPermissions.js.map +1 -0
- package/dist/contracts/evaluators.d.ts +94 -0
- package/dist/contracts/evaluators.d.ts.map +1 -0
- package/dist/contracts/evaluators.js +468 -0
- package/dist/contracts/evaluators.js.map +1 -0
- package/dist/contracts/hostedComposition.d.ts +85 -0
- package/dist/contracts/hostedComposition.d.ts.map +1 -0
- package/dist/contracts/hostedComposition.js +139 -0
- package/dist/contracts/hostedComposition.js.map +1 -0
- package/dist/contracts/hostedToolValidation.d.ts +47 -0
- package/dist/contracts/hostedToolValidation.d.ts.map +1 -0
- package/dist/contracts/hostedToolValidation.js +301 -0
- package/dist/contracts/hostedToolValidation.js.map +1 -0
- package/dist/contracts/idLoraPrompt.d.ts +13 -0
- package/dist/contracts/idLoraPrompt.d.ts.map +1 -0
- package/dist/contracts/idLoraPrompt.js +78 -0
- package/dist/contracts/idLoraPrompt.js.map +1 -0
- package/dist/contracts/imagePrompt.d.ts +16 -0
- package/dist/contracts/imagePrompt.d.ts.map +1 -0
- package/dist/contracts/imagePrompt.js +148 -0
- package/dist/contracts/imagePrompt.js.map +1 -0
- package/dist/contracts/index.d.ts +48 -0
- package/dist/contracts/index.d.ts.map +1 -0
- package/dist/contracts/index.js +156 -0
- package/dist/contracts/index.js.map +1 -0
- package/dist/contracts/index.mjs +102 -0
- package/dist/contracts/musicComposition.d.ts +17 -0
- package/dist/contracts/musicComposition.d.ts.map +1 -0
- package/dist/contracts/musicComposition.js +188 -0
- package/dist/contracts/musicComposition.js.map +1 -0
- package/dist/contracts/promptContract.d.ts +11 -0
- package/dist/contracts/promptContract.d.ts.map +1 -0
- package/dist/contracts/promptContract.js +37 -0
- package/dist/contracts/promptContract.js.map +1 -0
- package/dist/contracts/promptOverrideMarker.d.ts +2 -0
- package/dist/contracts/promptOverrideMarker.d.ts.map +1 -0
- package/dist/contracts/promptOverrideMarker.js +5 -0
- package/dist/contracts/promptOverrideMarker.js.map +1 -0
- package/dist/contracts/randomThemes.d.ts +5 -0
- package/dist/contracts/randomThemes.d.ts.map +1 -0
- package/dist/contracts/randomThemes.js +159 -0
- package/dist/contracts/randomThemes.js.map +1 -0
- package/dist/contracts/registry.d.ts +29 -0
- package/dist/contracts/registry.d.ts.map +1 -0
- package/dist/contracts/registry.js +104 -0
- package/dist/contracts/registry.js.map +1 -0
- package/dist/contracts/repairRecipe.d.ts +14 -0
- package/dist/contracts/repairRecipe.d.ts.map +1 -0
- package/dist/contracts/repairRecipe.js +38 -0
- package/dist/contracts/repairRecipe.js.map +1 -0
- package/dist/contracts/storyboard.d.ts +112 -0
- package/dist/contracts/storyboard.d.ts.map +1 -0
- package/dist/contracts/storyboard.js +7 -0
- package/dist/contracts/storyboard.js.map +1 -0
- package/dist/contracts/telemetry.d.ts +57 -0
- package/dist/contracts/telemetry.d.ts.map +1 -0
- package/dist/contracts/telemetry.js +37 -0
- package/dist/contracts/telemetry.js.map +1 -0
- package/dist/contracts/toolGatingPolicy.d.ts +19 -0
- package/dist/contracts/toolGatingPolicy.d.ts.map +1 -0
- package/dist/contracts/toolGatingPolicy.js +63 -0
- package/dist/contracts/toolGatingPolicy.js.map +1 -0
- package/dist/contracts/toolPromptMarkers.d.ts +9 -0
- package/dist/contracts/toolPromptMarkers.d.ts.map +1 -0
- package/dist/contracts/toolPromptMarkers.js +13 -0
- package/dist/contracts/toolPromptMarkers.js.map +1 -0
- package/dist/contracts/toolSurface.d.ts +46 -0
- package/dist/contracts/toolSurface.d.ts.map +1 -0
- package/dist/contracts/toolSurface.js +119 -0
- package/dist/contracts/toolSurface.js.map +1 -0
- package/dist/contracts/turnPolicy.d.ts +22 -0
- package/dist/contracts/turnPolicy.d.ts.map +1 -0
- package/dist/contracts/turnPolicy.js +16 -0
- package/dist/contracts/turnPolicy.js.map +1 -0
- package/dist/contracts/videoComposition.d.ts +35 -0
- package/dist/contracts/videoComposition.d.ts.map +1 -0
- package/dist/contracts/videoComposition.js +224 -0
- package/dist/contracts/videoComposition.js.map +1 -0
- package/dist/index.d.ts +8 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +46 -0
- package/dist/index.js.map +1 -0
- package/dist/media/aspectRatio.d.ts +15 -0
- package/dist/media/aspectRatio.d.ts.map +1 -0
- package/dist/media/aspectRatio.js +72 -0
- package/dist/media/aspectRatio.js.map +1 -0
- package/dist/media/audioReference.d.ts +57 -0
- package/dist/media/audioReference.d.ts.map +1 -0
- package/dist/media/audioReference.js +194 -0
- package/dist/media/audioReference.js.map +1 -0
- package/dist/media/cameraAngle.d.ts +170 -0
- package/dist/media/cameraAngle.d.ts.map +1 -0
- package/dist/media/cameraAngle.js +48 -0
- package/dist/media/cameraAngle.js.map +1 -0
- package/dist/media/characterSheet.d.ts +9 -0
- package/dist/media/characterSheet.d.ts.map +1 -0
- package/dist/media/characterSheet.js +54 -0
- package/dist/media/characterSheet.js.map +1 -0
- package/dist/media/danceMontage.d.ts +18 -0
- package/dist/media/danceMontage.d.ts.map +1 -0
- package/dist/media/danceMontage.js +34 -0
- package/dist/media/danceMontage.js.map +1 -0
- package/dist/media/enhancementProfiles.d.ts +158 -0
- package/dist/media/enhancementProfiles.d.ts.map +1 -0
- package/dist/media/enhancementProfiles.js +224 -0
- package/dist/media/enhancementProfiles.js.map +1 -0
- package/dist/media/generationJob.d.ts +81 -0
- package/dist/media/generationJob.d.ts.map +1 -0
- package/dist/media/generationJob.js +91 -0
- package/dist/media/generationJob.js.map +1 -0
- package/dist/media/gptImage.d.ts +21 -0
- package/dist/media/gptImage.d.ts.map +1 -0
- package/dist/media/gptImage.js +162 -0
- package/dist/media/gptImage.js.map +1 -0
- package/dist/media/imageDimensions.d.ts +24 -0
- package/dist/media/imageDimensions.d.ts.map +1 -0
- package/dist/media/imageDimensions.js +64 -0
- package/dist/media/imageDimensions.js.map +1 -0
- package/dist/media/index.d.ts +16 -0
- package/dist/media/index.d.ts.map +1 -0
- package/dist/media/index.js +32 -0
- package/dist/media/index.js.map +1 -0
- package/dist/media/index.mjs +116 -0
- package/dist/media/musicSettings.d.ts +86 -0
- package/dist/media/musicSettings.d.ts.map +1 -0
- package/dist/media/musicSettings.js +234 -0
- package/dist/media/musicSettings.js.map +1 -0
- package/dist/media/vendorModelPremium.d.ts +21 -0
- package/dist/media/vendorModelPremium.d.ts.map +1 -0
- package/dist/media/vendorModelPremium.js +89 -0
- package/dist/media/vendorModelPremium.js.map +1 -0
- package/dist/media/videoAppSettings.d.ts +41 -0
- package/dist/media/videoAppSettings.d.ts.map +1 -0
- package/dist/media/videoAppSettings.js +128 -0
- package/dist/media/videoAppSettings.js.map +1 -0
- package/dist/media/videoContentLimit.d.ts +15 -0
- package/dist/media/videoContentLimit.d.ts.map +1 -0
- package/dist/media/videoContentLimit.js +169 -0
- package/dist/media/videoContentLimit.js.map +1 -0
- package/dist/media/videoReference.d.ts +35 -0
- package/dist/media/videoReference.d.ts.map +1 -0
- package/dist/media/videoReference.js +77 -0
- package/dist/media/videoReference.js.map +1 -0
- package/dist/media/videoSettings.d.ts +50 -0
- package/dist/media/videoSettings.d.ts.map +1 -0
- package/dist/media/videoSettings.js +200 -0
- package/dist/media/videoSettings.js.map +1 -0
- package/dist/public-skill-runtime/index.d.ts +1220 -0
- package/dist/public-skill-runtime/index.d.ts.map +1 -0
- package/dist/public-skill-runtime/index.js +6396 -0
- package/dist/public-skill-runtime/index.js.map +1 -0
- package/dist/public-skill-runtime/index.mjs +141 -0
- package/dist/replay/index.d.ts +4 -0
- package/dist/replay/index.d.ts.map +1 -0
- package/dist/replay/index.js +12 -0
- package/dist/replay/index.js.map +1 -0
- package/dist/replay/index.mjs +12 -0
- package/dist/replay/redact.d.ts +7 -0
- package/dist/replay/redact.d.ts.map +1 -0
- package/dist/replay/redact.js +108 -0
- package/dist/replay/redact.js.map +1 -0
- package/dist/replay/types.d.ts +61 -0
- package/dist/replay/types.d.ts.map +1 -0
- package/dist/replay/types.js +24 -0
- package/dist/replay/types.js.map +1 -0
- package/dist/runtime/chatTypes.d.ts +47 -0
- package/dist/runtime/chatTypes.d.ts.map +1 -0
- package/dist/runtime/chatTypes.js +3 -0
- package/dist/runtime/chatTypes.js.map +1 -0
- package/dist/runtime/durableWorkflowClient.d.ts +80 -0
- package/dist/runtime/durableWorkflowClient.d.ts.map +1 -0
- package/dist/runtime/durableWorkflowClient.js +312 -0
- package/dist/runtime/durableWorkflowClient.js.map +1 -0
- package/dist/runtime/index.d.ts +3 -0
- package/dist/runtime/index.d.ts.map +1 -0
- package/dist/runtime/index.js +18 -0
- package/dist/runtime/index.js.map +1 -0
- package/dist/runtime/index.mjs +21 -0
- package/dist/skills/asset_reference_management/index.d.ts +6 -0
- package/dist/skills/asset_reference_management/index.d.ts.map +1 -0
- package/dist/skills/asset_reference_management/index.js +18 -0
- package/dist/skills/asset_reference_management/index.js.map +1 -0
- package/dist/skills/asset_reference_management/index.mjs +18 -0
- package/dist/skills/asset_reference_management/manifest.d.ts +42 -0
- package/dist/skills/asset_reference_management/manifest.d.ts.map +1 -0
- package/dist/skills/asset_reference_management/manifest.js +237 -0
- package/dist/skills/asset_reference_management/manifest.js.map +1 -0
- package/dist/skills/asset_reference_management/modelRefRegistry.d.ts +24 -0
- package/dist/skills/asset_reference_management/modelRefRegistry.d.ts.map +1 -0
- package/dist/skills/asset_reference_management/modelRefRegistry.js +136 -0
- package/dist/skills/asset_reference_management/modelRefRegistry.js.map +1 -0
- package/dist/skills/asset_reference_management/types.d.ts +31 -0
- package/dist/skills/asset_reference_management/types.d.ts.map +1 -0
- package/dist/skills/asset_reference_management/types.js +3 -0
- package/dist/skills/asset_reference_management/types.js.map +1 -0
- package/dist/tools/definitions/add-subtitles/definition.d.ts +4 -0
- package/dist/tools/definitions/add-subtitles/definition.d.ts.map +1 -0
- package/dist/tools/definitions/add-subtitles/definition.js +83 -0
- package/dist/tools/definitions/add-subtitles/definition.js.map +1 -0
- package/dist/tools/definitions/animate-photo/definition.d.ts +3 -0
- package/dist/tools/definitions/animate-photo/definition.d.ts.map +1 -0
- package/dist/tools/definitions/animate-photo/definition.js +124 -0
- package/dist/tools/definitions/animate-photo/definition.js.map +1 -0
- package/dist/tools/definitions/apply-style/definition.d.ts +3 -0
- package/dist/tools/definitions/apply-style/definition.d.ts.map +1 -0
- package/dist/tools/definitions/apply-style/definition.js +50 -0
- package/dist/tools/definitions/apply-style/definition.js.map +1 -0
- package/dist/tools/definitions/change-angle/definition.d.ts +3 -0
- package/dist/tools/definitions/change-angle/definition.d.ts.map +1 -0
- package/dist/tools/definitions/change-angle/definition.js +49 -0
- package/dist/tools/definitions/change-angle/definition.js.map +1 -0
- package/dist/tools/definitions/dance-montage/dances.d.ts +11 -0
- package/dist/tools/definitions/dance-montage/dances.d.ts.map +1 -0
- package/dist/tools/definitions/dance-montage/dances.js +90 -0
- package/dist/tools/definitions/dance-montage/dances.js.map +1 -0
- package/dist/tools/definitions/dance-montage/definition.d.ts +3 -0
- package/dist/tools/definitions/dance-montage/definition.d.ts.map +1 -0
- package/dist/tools/definitions/dance-montage/definition.js +45 -0
- package/dist/tools/definitions/dance-montage/definition.js.map +1 -0
- package/dist/tools/definitions/edit-image/definition.d.ts +3 -0
- package/dist/tools/definitions/edit-image/definition.d.ts.map +1 -0
- package/dist/tools/definitions/edit-image/definition.js +128 -0
- package/dist/tools/definitions/edit-image/definition.js.map +1 -0
- package/dist/tools/definitions/extend-video/definition.d.ts +3 -0
- package/dist/tools/definitions/extend-video/definition.d.ts.map +1 -0
- package/dist/tools/definitions/extend-video/definition.js +51 -0
- package/dist/tools/definitions/extend-video/definition.js.map +1 -0
- package/dist/tools/definitions/generate-image/definition.d.ts +3 -0
- package/dist/tools/definitions/generate-image/definition.d.ts.map +1 -0
- package/dist/tools/definitions/generate-image/definition.js +107 -0
- package/dist/tools/definitions/generate-image/definition.js.map +1 -0
- package/dist/tools/definitions/generate-music/definition.d.ts +3 -0
- package/dist/tools/definitions/generate-music/definition.d.ts.map +1 -0
- package/dist/tools/definitions/generate-music/definition.js +75 -0
- package/dist/tools/definitions/generate-music/definition.js.map +1 -0
- package/dist/tools/definitions/generate-video/definition.d.ts +3 -0
- package/dist/tools/definitions/generate-video/definition.d.ts.map +1 -0
- package/dist/tools/definitions/generate-video/definition.js +120 -0
- package/dist/tools/definitions/generate-video/definition.js.map +1 -0
- package/dist/tools/definitions/index.d.ts +25 -0
- package/dist/tools/definitions/index.d.ts.map +1 -0
- package/dist/tools/definitions/index.js +66 -0
- package/dist/tools/definitions/index.js.map +1 -0
- package/dist/tools/definitions/orbit-video/definition.d.ts +3 -0
- package/dist/tools/definitions/orbit-video/definition.d.ts.map +1 -0
- package/dist/tools/definitions/orbit-video/definition.js +103 -0
- package/dist/tools/definitions/orbit-video/definition.js.map +1 -0
- package/dist/tools/definitions/overlay-video/definition.d.ts +4 -0
- package/dist/tools/definitions/overlay-video/definition.d.ts.map +1 -0
- package/dist/tools/definitions/overlay-video/definition.js +142 -0
- package/dist/tools/definitions/overlay-video/definition.js.map +1 -0
- package/dist/tools/definitions/refine-result/definition.d.ts +3 -0
- package/dist/tools/definitions/refine-result/definition.d.ts.map +1 -0
- package/dist/tools/definitions/refine-result/definition.js +56 -0
- package/dist/tools/definitions/refine-result/definition.js.map +1 -0
- package/dist/tools/definitions/replace-video-segment/definition.d.ts +3 -0
- package/dist/tools/definitions/replace-video-segment/definition.d.ts.map +1 -0
- package/dist/tools/definitions/replace-video-segment/definition.js +65 -0
- package/dist/tools/definitions/replace-video-segment/definition.js.map +1 -0
- package/dist/tools/definitions/restore-photo/definition.d.ts +3 -0
- package/dist/tools/definitions/restore-photo/definition.d.ts.map +1 -0
- package/dist/tools/definitions/restore-photo/definition.js +58 -0
- package/dist/tools/definitions/restore-photo/definition.js.map +1 -0
- package/dist/tools/definitions/sound-to-video/definition.d.ts +3 -0
- package/dist/tools/definitions/sound-to-video/definition.d.ts.map +1 -0
- package/dist/tools/definitions/sound-to-video/definition.js +91 -0
- package/dist/tools/definitions/sound-to-video/definition.js.map +1 -0
- package/dist/tools/definitions/stitch-video/definition.d.ts +4 -0
- package/dist/tools/definitions/stitch-video/definition.d.ts.map +1 -0
- package/dist/tools/definitions/stitch-video/definition.js +89 -0
- package/dist/tools/definitions/stitch-video/definition.js.map +1 -0
- package/dist/tools/definitions/types.d.ts +15 -0
- package/dist/tools/definitions/types.d.ts.map +1 -0
- package/dist/tools/definitions/types.js +3 -0
- package/dist/tools/definitions/types.js.map +1 -0
- package/dist/tools/definitions/video-to-video/definition.d.ts +3 -0
- package/dist/tools/definitions/video-to-video/definition.d.ts.map +1 -0
- package/dist/tools/definitions/video-to-video/definition.js +101 -0
- package/dist/tools/definitions/video-to-video/definition.js.map +1 -0
- package/dist/tools/index.d.ts +19 -0
- package/dist/tools/index.d.ts.map +1 -0
- package/dist/tools/index.js +70 -0
- package/dist/tools/index.js.map +1 -0
- package/dist/tools/index.mjs +86 -0
- package/dist/tools/normalizeArgs.d.ts +2 -0
- package/dist/tools/normalizeArgs.d.ts.map +1 -0
- package/dist/tools/normalizeArgs.js +40 -0
- package/dist/tools/normalizeArgs.js.map +1 -0
- package/dist/tools/result.d.ts +47 -0
- package/dist/tools/result.d.ts.map +1 -0
- package/dist/tools/result.js +38 -0
- package/dist/tools/result.js.map +1 -0
- package/dist/tools/shared/downloadFilename.d.ts +18 -0
- package/dist/tools/shared/downloadFilename.d.ts.map +1 -0
- package/dist/tools/shared/downloadFilename.js +157 -0
- package/dist/tools/shared/downloadFilename.js.map +1 -0
- package/dist/tools/shared/errorClassification.d.ts +15 -0
- package/dist/tools/shared/errorClassification.d.ts.map +1 -0
- package/dist/tools/shared/errorClassification.js +78 -0
- package/dist/tools/shared/errorClassification.js.map +1 -0
- package/dist/tools/shared/imageEncoding.d.ts +2 -0
- package/dist/tools/shared/imageEncoding.d.ts.map +1 -0
- package/dist/tools/shared/imageEncoding.js +11 -0
- package/dist/tools/shared/imageEncoding.js.map +1 -0
- package/dist/tools/shared/llmHelpers.d.ts +14 -0
- package/dist/tools/shared/llmHelpers.d.ts.map +1 -0
- package/dist/tools/shared/llmHelpers.js +145 -0
- package/dist/tools/shared/llmHelpers.js.map +1 -0
- package/dist/tools/shared/modelRegistry.d.ts +10 -0
- package/dist/tools/shared/modelRegistry.d.ts.map +1 -0
- package/dist/tools/shared/modelRegistry.js +98 -0
- package/dist/tools/shared/modelRegistry.js.map +1 -0
- package/dist/tools/shared/policyChecks.d.ts +25 -0
- package/dist/tools/shared/policyChecks.d.ts.map +1 -0
- package/dist/tools/shared/policyChecks.js +79 -0
- package/dist/tools/shared/policyChecks.js.map +1 -0
- package/dist/tools/shared/promptRefinementCache.d.ts +10 -0
- package/dist/tools/shared/promptRefinementCache.d.ts.map +1 -0
- package/dist/tools/shared/promptRefinementCache.js +81 -0
- package/dist/tools/shared/promptRefinementCache.js.map +1 -0
- package/dist/tools/shared/promptSanitizer.d.ts +2 -0
- package/dist/tools/shared/promptSanitizer.d.ts.map +1 -0
- package/dist/tools/shared/promptSanitizer.js +73 -0
- package/dist/tools/shared/promptSanitizer.js.map +1 -0
- package/dist/tools/shared/seedancePolicyErrors.d.ts +33 -0
- package/dist/tools/shared/seedancePolicyErrors.d.ts.map +1 -0
- package/dist/tools/shared/seedancePolicyErrors.js +239 -0
- package/dist/tools/shared/seedancePolicyErrors.js.map +1 -0
- package/dist/tools/shared/slotFailureSummary.d.ts +7 -0
- package/dist/tools/shared/slotFailureSummary.d.ts.map +1 -0
- package/dist/tools/shared/slotFailureSummary.js +63 -0
- package/dist/tools/shared/slotFailureSummary.js.map +1 -0
- package/dist/tools/shared/visionDescriptionCache.d.ts +5 -0
- package/dist/tools/shared/visionDescriptionCache.d.ts.map +1 -0
- package/dist/tools/shared/visionDescriptionCache.js +35 -0
- package/dist/tools/shared/visionDescriptionCache.js.map +1 -0
- package/dist/types/index.d.ts +224 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +34 -0
- package/dist/types/index.js.map +1 -0
- package/dist/utils/errors.d.ts +38 -0
- package/dist/utils/errors.d.ts.map +1 -0
- package/dist/utils/errors.js +99 -0
- package/dist/utils/errors.js.map +1 -0
- package/dist/utils/helpers.d.ts +36 -0
- package/dist/utils/helpers.d.ts.map +1 -0
- package/dist/utils/helpers.js +445 -0
- package/dist/utils/helpers.js.map +1 -0
- package/dist/workflows/bindings.d.ts +23 -0
- package/dist/workflows/bindings.d.ts.map +1 -0
- package/dist/workflows/bindings.js +190 -0
- package/dist/workflows/bindings.js.map +1 -0
- package/dist/workflows/executor-ports.d.ts +11 -0
- package/dist/workflows/executor-ports.d.ts.map +1 -0
- package/dist/workflows/executor-ports.js +3 -0
- package/dist/workflows/executor-ports.js.map +1 -0
- package/dist/workflows/executor.d.ts +17 -0
- package/dist/workflows/executor.d.ts.map +1 -0
- package/dist/workflows/executor.js +526 -0
- package/dist/workflows/executor.js.map +1 -0
- package/dist/workflows/index.d.ts +8 -0
- package/dist/workflows/index.d.ts.map +1 -0
- package/dist/workflows/index.js +25 -0
- package/dist/workflows/index.js.map +1 -0
- package/dist/workflows/index.mjs +22 -0
- package/dist/workflows/summarize.d.ts +7 -0
- package/dist/workflows/summarize.d.ts.map +1 -0
- package/dist/workflows/summarize.js +54 -0
- package/dist/workflows/summarize.js.map +1 -0
- package/dist/workflows/types.d.ts +302 -0
- package/dist/workflows/types.d.ts.map +1 -0
- package/dist/workflows/types.js +3 -0
- package/dist/workflows/types.js.map +1 -0
- package/dist/workflows/validation.d.ts +10 -0
- package/dist/workflows/validation.d.ts.map +1 -0
- package/dist/workflows/validation.js +340 -0
- package/dist/workflows/validation.js.map +1 -0
- package/dist-esm/client/SogniClientWrapper.js +877 -0
- package/dist-esm/client/SogniClientWrapper.js.map +1 -0
- package/dist-esm/contracts/backboneDurableWorkflow.js +90 -0
- package/dist-esm/contracts/backboneDurableWorkflow.js.map +1 -0
- package/dist-esm/contracts/backboneToolCatalog.js +59 -0
- package/dist-esm/contracts/backboneToolCatalog.js.map +1 -0
- package/dist-esm/contracts/composeWorkflowTypes.js +2 -0
- package/dist-esm/contracts/composeWorkflowTypes.js.map +1 -0
- package/dist-esm/contracts/data/costEstimation.js +18 -0
- package/dist-esm/contracts/data/costEstimation.js.map +1 -0
- package/dist-esm/contracts/data/gatingPolicies.js +214 -0
- package/dist-esm/contracts/data/gatingPolicies.js.map +1 -0
- package/dist-esm/contracts/data/gatingPoliciesToolSurface.js +57 -0
- package/dist-esm/contracts/data/gatingPoliciesToolSurface.js.map +1 -0
- package/dist-esm/contracts/data/index.js +23 -0
- package/dist-esm/contracts/data/index.js.map +1 -0
- package/dist-esm/contracts/data/promptContracts.js +1169 -0
- package/dist-esm/contracts/data/promptContracts.js.map +1 -0
- package/dist-esm/contracts/data/repairRecipes.js +193 -0
- package/dist-esm/contracts/data/repairRecipes.js.map +1 -0
- package/dist-esm/contracts/data/toolCatalog.js +122 -0
- package/dist-esm/contracts/data/toolCatalog.js.map +1 -0
- package/dist-esm/contracts/data/toolCostMetadata.js +277 -0
- package/dist-esm/contracts/data/toolCostMetadata.js.map +1 -0
- package/dist-esm/contracts/data/toolPermissions.js +70 -0
- package/dist-esm/contracts/data/toolPermissions.js.map +1 -0
- package/dist-esm/contracts/evaluators.js +463 -0
- package/dist-esm/contracts/evaluators.js.map +1 -0
- package/dist-esm/contracts/hostedComposition.js +128 -0
- package/dist-esm/contracts/hostedComposition.js.map +1 -0
- package/dist-esm/contracts/hostedToolValidation.js +296 -0
- package/dist-esm/contracts/hostedToolValidation.js.map +1 -0
- package/dist-esm/contracts/idLoraPrompt.js +72 -0
- package/dist-esm/contracts/idLoraPrompt.js.map +1 -0
- package/dist-esm/contracts/imagePrompt.js +143 -0
- package/dist-esm/contracts/imagePrompt.js.map +1 -0
- package/dist-esm/contracts/index.js +27 -0
- package/dist-esm/contracts/index.js.map +1 -0
- package/dist-esm/contracts/musicComposition.js +182 -0
- package/dist-esm/contracts/musicComposition.js.map +1 -0
- package/dist-esm/contracts/promptContract.js +34 -0
- package/dist-esm/contracts/promptContract.js.map +1 -0
- package/dist-esm/contracts/promptOverrideMarker.js +2 -0
- package/dist-esm/contracts/promptOverrideMarker.js.map +1 -0
- package/dist-esm/contracts/randomThemes.js +154 -0
- package/dist-esm/contracts/randomThemes.js.map +1 -0
- package/dist-esm/contracts/registry.js +100 -0
- package/dist-esm/contracts/registry.js.map +1 -0
- package/dist-esm/contracts/repairRecipe.js +35 -0
- package/dist-esm/contracts/repairRecipe.js.map +1 -0
- package/dist-esm/contracts/storyboard.js +4 -0
- package/dist-esm/contracts/storyboard.js.map +1 -0
- package/dist-esm/contracts/telemetry.js +33 -0
- package/dist-esm/contracts/telemetry.js.map +1 -0
- package/dist-esm/contracts/toolGatingPolicy.js +60 -0
- package/dist-esm/contracts/toolGatingPolicy.js.map +1 -0
- package/dist-esm/contracts/toolPromptMarkers.js +10 -0
- package/dist-esm/contracts/toolPromptMarkers.js.map +1 -0
- package/dist-esm/contracts/toolSurface.js +110 -0
- package/dist-esm/contracts/toolSurface.js.map +1 -0
- package/dist-esm/contracts/turnPolicy.js +13 -0
- package/dist-esm/contracts/turnPolicy.js.map +1 -0
- package/dist-esm/contracts/videoComposition.js +216 -0
- package/dist-esm/contracts/videoComposition.js.map +1 -0
- package/dist-esm/index.js +7 -0
- package/dist-esm/index.js.map +1 -0
- package/dist-esm/media/aspectRatio.js +65 -0
- package/dist-esm/media/aspectRatio.js.map +1 -0
- package/dist-esm/media/audioReference.js +186 -0
- package/dist-esm/media/audioReference.js.map +1 -0
- package/dist-esm/media/cameraAngle.js +41 -0
- package/dist-esm/media/cameraAngle.js.map +1 -0
- package/dist-esm/media/characterSheet.js +48 -0
- package/dist-esm/media/characterSheet.js.map +1 -0
- package/dist-esm/media/danceMontage.js +29 -0
- package/dist-esm/media/danceMontage.js.map +1 -0
- package/dist-esm/media/enhancementProfiles.js +219 -0
- package/dist-esm/media/enhancementProfiles.js.map +1 -0
- package/dist-esm/media/generationJob.js +87 -0
- package/dist-esm/media/generationJob.js.map +1 -0
- package/dist-esm/media/gptImage.js +150 -0
- package/dist-esm/media/gptImage.js.map +1 -0
- package/dist-esm/media/imageDimensions.js +59 -0
- package/dist-esm/media/imageDimensions.js.map +1 -0
- package/dist-esm/media/index.js +16 -0
- package/dist-esm/media/index.js.map +1 -0
- package/dist-esm/media/musicSettings.js +230 -0
- package/dist-esm/media/musicSettings.js.map +1 -0
- package/dist-esm/media/vendorModelPremium.js +81 -0
- package/dist-esm/media/vendorModelPremium.js.map +1 -0
- package/dist-esm/media/videoAppSettings.js +125 -0
- package/dist-esm/media/videoAppSettings.js.map +1 -0
- package/dist-esm/media/videoContentLimit.js +162 -0
- package/dist-esm/media/videoContentLimit.js.map +1 -0
- package/dist-esm/media/videoReference.js +72 -0
- package/dist-esm/media/videoReference.js.map +1 -0
- package/dist-esm/media/videoSettings.js +191 -0
- package/dist-esm/media/videoSettings.js.map +1 -0
- package/dist-esm/package.json +3 -0
- package/dist-esm/public-skill-runtime/index.js +6294 -0
- package/dist-esm/public-skill-runtime/index.js.map +1 -0
- package/dist-esm/replay/index.js +3 -0
- package/dist-esm/replay/index.js.map +1 -0
- package/dist-esm/replay/redact.js +102 -0
- package/dist-esm/replay/redact.js.map +1 -0
- package/dist-esm/replay/types.js +20 -0
- package/dist-esm/replay/types.js.map +1 -0
- package/dist-esm/runtime/chatTypes.js +2 -0
- package/dist-esm/runtime/chatTypes.js.map +1 -0
- package/dist-esm/runtime/durableWorkflowClient.js +295 -0
- package/dist-esm/runtime/durableWorkflowClient.js.map +1 -0
- package/dist-esm/runtime/index.js +2 -0
- package/dist-esm/runtime/index.js.map +1 -0
- package/dist-esm/skills/asset_reference_management/index.js +3 -0
- package/dist-esm/skills/asset_reference_management/index.js.map +1 -0
- package/dist-esm/skills/asset_reference_management/manifest.js +228 -0
- package/dist-esm/skills/asset_reference_management/manifest.js.map +1 -0
- package/dist-esm/skills/asset_reference_management/modelRefRegistry.js +129 -0
- package/dist-esm/skills/asset_reference_management/modelRefRegistry.js.map +1 -0
- package/dist-esm/skills/asset_reference_management/types.js +2 -0
- package/dist-esm/skills/asset_reference_management/types.js.map +1 -0
- package/dist-esm/tools/definitions/add-subtitles/definition.js +80 -0
- package/dist-esm/tools/definitions/add-subtitles/definition.js.map +1 -0
- package/dist-esm/tools/definitions/animate-photo/definition.js +121 -0
- package/dist-esm/tools/definitions/animate-photo/definition.js.map +1 -0
- package/dist-esm/tools/definitions/apply-style/definition.js +47 -0
- package/dist-esm/tools/definitions/apply-style/definition.js.map +1 -0
- package/dist-esm/tools/definitions/change-angle/definition.js +46 -0
- package/dist-esm/tools/definitions/change-angle/definition.js.map +1 -0
- package/dist-esm/tools/definitions/dance-montage/dances.js +86 -0
- package/dist-esm/tools/definitions/dance-montage/dances.js.map +1 -0
- package/dist-esm/tools/definitions/dance-montage/definition.js +42 -0
- package/dist-esm/tools/definitions/dance-montage/definition.js.map +1 -0
- package/dist-esm/tools/definitions/edit-image/definition.js +125 -0
- package/dist-esm/tools/definitions/edit-image/definition.js.map +1 -0
- package/dist-esm/tools/definitions/extend-video/definition.js +48 -0
- package/dist-esm/tools/definitions/extend-video/definition.js.map +1 -0
- package/dist-esm/tools/definitions/generate-image/definition.js +104 -0
- package/dist-esm/tools/definitions/generate-image/definition.js.map +1 -0
- package/dist-esm/tools/definitions/generate-music/definition.js +72 -0
- package/dist-esm/tools/definitions/generate-music/definition.js.map +1 -0
- package/dist-esm/tools/definitions/generate-video/definition.js +117 -0
- package/dist-esm/tools/definitions/generate-video/definition.js.map +1 -0
- package/dist-esm/tools/definitions/index.js +41 -0
- package/dist-esm/tools/definitions/index.js.map +1 -0
- package/dist-esm/tools/definitions/orbit-video/definition.js +100 -0
- package/dist-esm/tools/definitions/orbit-video/definition.js.map +1 -0
- package/dist-esm/tools/definitions/overlay-video/definition.js +139 -0
- package/dist-esm/tools/definitions/overlay-video/definition.js.map +1 -0
- package/dist-esm/tools/definitions/refine-result/definition.js +53 -0
- package/dist-esm/tools/definitions/refine-result/definition.js.map +1 -0
- package/dist-esm/tools/definitions/replace-video-segment/definition.js +62 -0
- package/dist-esm/tools/definitions/replace-video-segment/definition.js.map +1 -0
- package/dist-esm/tools/definitions/restore-photo/definition.js +55 -0
- package/dist-esm/tools/definitions/restore-photo/definition.js.map +1 -0
- package/dist-esm/tools/definitions/sound-to-video/definition.js +88 -0
- package/dist-esm/tools/definitions/sound-to-video/definition.js.map +1 -0
- package/dist-esm/tools/definitions/stitch-video/definition.js +86 -0
- package/dist-esm/tools/definitions/stitch-video/definition.js.map +1 -0
- package/dist-esm/tools/definitions/types.js +2 -0
- package/dist-esm/tools/definitions/types.js.map +1 -0
- package/dist-esm/tools/definitions/video-to-video/definition.js +98 -0
- package/dist-esm/tools/definitions/video-to-video/definition.js.map +1 -0
- package/dist-esm/tools/index.js +15 -0
- package/dist-esm/tools/index.js.map +1 -0
- package/dist-esm/tools/normalizeArgs.js +37 -0
- package/dist-esm/tools/normalizeArgs.js.map +1 -0
- package/dist-esm/tools/result.js +31 -0
- package/dist-esm/tools/result.js.map +1 -0
- package/dist-esm/tools/shared/downloadFilename.js +147 -0
- package/dist-esm/tools/shared/downloadFilename.js.map +1 -0
- package/dist-esm/tools/shared/errorClassification.js +74 -0
- package/dist-esm/tools/shared/errorClassification.js.map +1 -0
- package/dist-esm/tools/shared/imageEncoding.js +8 -0
- package/dist-esm/tools/shared/imageEncoding.js.map +1 -0
- package/dist-esm/tools/shared/llmHelpers.js +137 -0
- package/dist-esm/tools/shared/llmHelpers.js.map +1 -0
- package/dist-esm/tools/shared/modelRegistry.js +91 -0
- package/dist-esm/tools/shared/modelRegistry.js.map +1 -0
- package/dist-esm/tools/shared/policyChecks.js +73 -0
- package/dist-esm/tools/shared/policyChecks.js.map +1 -0
- package/dist-esm/tools/shared/promptRefinementCache.js +70 -0
- package/dist-esm/tools/shared/promptRefinementCache.js.map +1 -0
- package/dist-esm/tools/shared/promptSanitizer.js +70 -0
- package/dist-esm/tools/shared/promptSanitizer.js.map +1 -0
- package/dist-esm/tools/shared/seedancePolicyErrors.js +232 -0
- package/dist-esm/tools/shared/seedancePolicyErrors.js.map +1 -0
- package/dist-esm/tools/shared/slotFailureSummary.js +60 -0
- package/dist-esm/tools/shared/slotFailureSummary.js.map +1 -0
- package/dist-esm/tools/shared/visionDescriptionCache.js +29 -0
- package/dist-esm/tools/shared/visionDescriptionCache.js.map +1 -0
- package/dist-esm/types/index.js +31 -0
- package/dist-esm/types/index.js.map +1 -0
- package/dist-esm/utils/errors.js +86 -0
- package/dist-esm/utils/errors.js.map +1 -0
- package/dist-esm/utils/helpers.js +419 -0
- package/dist-esm/utils/helpers.js.map +1 -0
- package/dist-esm/workflows/bindings.js +182 -0
- package/dist-esm/workflows/bindings.js.map +1 -0
- package/dist-esm/workflows/executor-ports.js +2 -0
- package/dist-esm/workflows/executor-ports.js.map +1 -0
- package/dist-esm/workflows/executor.js +522 -0
- package/dist-esm/workflows/executor.js.map +1 -0
- package/dist-esm/workflows/index.js +7 -0
- package/dist-esm/workflows/index.js.map +1 -0
- package/dist-esm/workflows/summarize.js +51 -0
- package/dist-esm/workflows/summarize.js.map +1 -0
- package/dist-esm/workflows/types.js +2 -0
- package/dist-esm/workflows/types.js.map +1 -0
- package/dist-esm/workflows/validation.js +330 -0
- package/dist-esm/workflows/validation.js.map +1 -0
- package/media/index.d.ts +1 -0
- package/media/index.js +2 -0
- package/package.json +134 -0
- package/public-skill-runtime/index.d.ts +1 -0
- package/public-skill-runtime/index.js +2 -0
- package/replay/index.d.ts +1 -0
- package/replay/index.js +2 -0
- package/runtime/index.d.ts +1 -0
- package/runtime/index.js +2 -0
- package/skills/asset_reference_management/index.d.ts +1 -0
- package/skills/asset_reference_management/index.js +2 -0
- package/tools/index.d.ts +1 -0
- package/tools/index.js +2 -0
- package/workflows/index.d.ts +1 -0
- package/workflows/index.js +2 -0
|
@@ -0,0 +1,143 @@
|
|
|
1
|
+
import { getRandomTheme } from './randomThemes.js';
|
|
2
|
+
export const IMAGE_PROMPT_MAX_TOKENS = 1024;
|
|
3
|
+
const FLUX_GUIDE = `FLUX & Next-Gen models use natural language descriptions, not keyword lists.
|
|
4
|
+
- Write flowing, descriptive prose: subject, environment, lighting, mood.
|
|
5
|
+
- Be specific about what you want rather than using abstract quality boosters.
|
|
6
|
+
- You can mix descriptive phrases with comma-separated keywords, but lean toward sentences.
|
|
7
|
+
- Camera/lens terms and lighting descriptions work well.
|
|
8
|
+
- Keep guidance context in mind: these models use very low guidance (1-5), so prompts should be clear and direct.`;
|
|
9
|
+
const SDXL_GUIDE = `SDXL models work well with a hybrid approach: natural language descriptions combined with comma-separated quality/style keywords.
|
|
10
|
+
Prompt structure (in this order):
|
|
11
|
+
1. Subject — what/who is in the image
|
|
12
|
+
2. Details — appearance, clothing, expression, pose
|
|
13
|
+
3. Environment — setting, background, time of day
|
|
14
|
+
4. Lighting & mood — lighting setup, atmosphere
|
|
15
|
+
5. Quality/style boosters — technical quality keywords (e.g. "highly detailed, 8K, photorealistic")
|
|
16
|
+
For anime SDXL models, use danbooru-style tags: "1girl, long hair, blue eyes" with quality tags first: "masterpiece, best quality".
|
|
17
|
+
Camera/lens terminology helps photorealistic models: "Canon EOS R5, 85mm lens, f/1.4, shallow depth of field".`;
|
|
18
|
+
const SD15_GUIDE = `SD 1.5 models are most responsive to keyword/tag-based prompts. Structured comma-separated tags give the best results.
|
|
19
|
+
Prompt structure (in this order):
|
|
20
|
+
1. Quality boosters first: "RAW photo, best quality, masterpiece, highly detailed"
|
|
21
|
+
2. Subject description
|
|
22
|
+
3. Environment/setting
|
|
23
|
+
4. Style/medium: "watercolor, oil painting, digital art, photograph"
|
|
24
|
+
5. Lighting/camera: "studio lighting, golden hour, Fujifilm XT3, 85mm"
|
|
25
|
+
For photorealistic: start with "RAW photo" or "photograph", include camera references and film grain.
|
|
26
|
+
For anime: use danbooru tags "1girl, solo, long_hair", quality tags first "masterpiece, best quality", higher guidance (8-14).
|
|
27
|
+
Keep prompts keyword-rich rather than conversational.`;
|
|
28
|
+
const PONY_GUIDE = `Pony Diffusion models use a unique score-based tag system for quality control.
|
|
29
|
+
Add score tags at the BEGINNING of the prompt:
|
|
30
|
+
- Full range: "score_9, score_8_up, score_7_up, score_6_up, score_5_up, score_4_up"
|
|
31
|
+
- Short range: "score_9, score_8_up, score_7_up"
|
|
32
|
+
After score tags, describe the subject using comma-separated tags similar to SDXL.
|
|
33
|
+
Content rating tags are available: "rating_safe", "rating_suggestive".
|
|
34
|
+
The model understands character names from anime/cartoon/anthro fandoms.
|
|
35
|
+
Example: "score_9, score_8_up, score_7_up, punk rock singer, leather jacket, crazy hair, dynamic angle, highly detailed, film grain, 8k"`;
|
|
36
|
+
const FAST_GUIDE = `Turbo, Lightning, and LCM models are optimized for speed (2-7 steps). They have less capacity to process complex prompts.
|
|
37
|
+
- Keep prompts concise and direct — under ~50 tokens for best results.
|
|
38
|
+
- Focus on the core subject and one clear style direction.
|
|
39
|
+
- Use strong, specific descriptors.
|
|
40
|
+
- Don't overload with quality boosters — at very low guidance they have minimal effect.
|
|
41
|
+
- Don't use extremely long, multi-sentence prompts.
|
|
42
|
+
Example: "a majestic lion in golden savanna, sunset, cinematic"`;
|
|
43
|
+
const SD3_GUIDE = `SD3 has improved natural language understanding, multi-subject composition, and typography rendering.
|
|
44
|
+
- Write clear, descriptive natural language prompts — not keyword lists.
|
|
45
|
+
- You can be specific about spatial relationships: "on the left", "in the background", "above".
|
|
46
|
+
- Multi-subject scenes work well: describe each subject and their relationship.
|
|
47
|
+
- For text in images, spell out exactly what to render in quotes.
|
|
48
|
+
- Don't over-tag with "masterpiece, best quality" etc. — just describe what you want.
|
|
49
|
+
- SD3 handles complex scenes better than SD1.5/SDXL.`;
|
|
50
|
+
const EDITING_GUIDE = `Image editing models accept reference images alongside text prompts. The prompt acts as an instruction for how to modify or build upon the input image(s).
|
|
51
|
+
- Write prompts as transformation instructions referencing the existing image.
|
|
52
|
+
- Describe changes as transformations: "is now wearing", "now has", "the background changes to".
|
|
53
|
+
- You can reference elements in the image: "she", "the background", "his jacket".
|
|
54
|
+
- For text rendering: include text in quotes — 'Title text "SOMETHING"'.
|
|
55
|
+
- Short, clear instructions often work better than long detailed descriptions.
|
|
56
|
+
- The reference image drives the result more than the prompt.`;
|
|
57
|
+
const PROMPTING_GUIDES = {
|
|
58
|
+
flux: FLUX_GUIDE,
|
|
59
|
+
sdxl: SDXL_GUIDE,
|
|
60
|
+
sd15: SD15_GUIDE,
|
|
61
|
+
pony: PONY_GUIDE,
|
|
62
|
+
fast: FAST_GUIDE,
|
|
63
|
+
sd3: SD3_GUIDE,
|
|
64
|
+
editing: EDITING_GUIDE,
|
|
65
|
+
video: '',
|
|
66
|
+
};
|
|
67
|
+
function buildSystemPrompt(promptingType, modelTitle) {
|
|
68
|
+
const guide = PROMPTING_GUIDES[promptingType] || PROMPTING_GUIDES.sdxl;
|
|
69
|
+
return `You are an expert prompt engineer for AI image generation models. The user will give you a short idea or rough prompt. Your job is to expand and enhance it into an optimized prompt for the "${modelTitle}" model, then return it via the enhance_prompt tool.
|
|
70
|
+
|
|
71
|
+
MODEL-SPECIFIC PROMPTING GUIDE:
|
|
72
|
+
${guide}
|
|
73
|
+
|
|
74
|
+
RULES:
|
|
75
|
+
- Enhance and expand the user's idea while preserving their creative intent.
|
|
76
|
+
- Add vivid details: lighting, textures, atmosphere, composition, colors.
|
|
77
|
+
- Write the prompt in the style that best suits this model type (see guide above).
|
|
78
|
+
- Do NOT add negative prompt content — only write the positive prompt.
|
|
79
|
+
- If the user provides a style context, complement it — don't repeat or contradict it.
|
|
80
|
+
- Keep the result focused: one coherent scene or subject, not a list of disconnected ideas.
|
|
81
|
+
- Output only the prompt text — no explanations, no preamble.`;
|
|
82
|
+
}
|
|
83
|
+
export const IMAGE_PROMPT_TOOL = {
|
|
84
|
+
type: 'function',
|
|
85
|
+
function: {
|
|
86
|
+
name: 'enhance_prompt',
|
|
87
|
+
description: 'Output the enhanced image generation prompt',
|
|
88
|
+
parameters: {
|
|
89
|
+
type: 'object',
|
|
90
|
+
properties: {
|
|
91
|
+
prompt: {
|
|
92
|
+
type: 'string',
|
|
93
|
+
description: 'The enhanced image generation prompt optimized for the target model',
|
|
94
|
+
},
|
|
95
|
+
},
|
|
96
|
+
required: ['prompt'],
|
|
97
|
+
},
|
|
98
|
+
},
|
|
99
|
+
};
|
|
100
|
+
function normalizeBuildImagePromptInput(inputOrPrompt, stylePrompt = '', promptingType = 'sdxl', modelTitle = 'Unknown Model') {
|
|
101
|
+
if (typeof inputOrPrompt === 'string') {
|
|
102
|
+
return {
|
|
103
|
+
prompt: inputOrPrompt,
|
|
104
|
+
stylePrompt,
|
|
105
|
+
promptingType,
|
|
106
|
+
modelTitle,
|
|
107
|
+
randomTheme: '',
|
|
108
|
+
};
|
|
109
|
+
}
|
|
110
|
+
return {
|
|
111
|
+
prompt: inputOrPrompt.prompt,
|
|
112
|
+
stylePrompt: inputOrPrompt.stylePrompt ?? '',
|
|
113
|
+
promptingType: inputOrPrompt.promptingType ?? 'sdxl',
|
|
114
|
+
modelTitle: inputOrPrompt.modelTitle ?? 'Unknown Model',
|
|
115
|
+
randomTheme: inputOrPrompt.randomTheme ?? '',
|
|
116
|
+
};
|
|
117
|
+
}
|
|
118
|
+
export function buildImagePromptMessages(inputOrPrompt, stylePrompt = '', promptingType = 'sdxl', modelTitle = 'Unknown Model') {
|
|
119
|
+
const input = normalizeBuildImagePromptInput(inputOrPrompt, stylePrompt, promptingType, modelTitle);
|
|
120
|
+
const messages = [
|
|
121
|
+
{ role: 'system', content: buildSystemPrompt(input.promptingType, input.modelTitle) },
|
|
122
|
+
];
|
|
123
|
+
let userMessage;
|
|
124
|
+
if (input.prompt.trim()) {
|
|
125
|
+
userMessage = input.prompt;
|
|
126
|
+
if (input.stylePrompt) {
|
|
127
|
+
userMessage += `\n\nCurrent style context (complement this, don't repeat): ${input.stylePrompt}`;
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
else {
|
|
131
|
+
const theme = input.randomTheme || getRandomTheme();
|
|
132
|
+
userMessage = `Come up with a unique, creative image inspired by: ${theme}. Be original and surprising — avoid clichés.`;
|
|
133
|
+
if (input.stylePrompt) {
|
|
134
|
+
userMessage += `\n\nUse this style as inspiration: ${input.stylePrompt}`;
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
messages.push({ role: 'user', content: userMessage });
|
|
138
|
+
return messages;
|
|
139
|
+
}
|
|
140
|
+
export function parseToolCallPrompt(args) {
|
|
141
|
+
return String(args.prompt || '').trim();
|
|
142
|
+
}
|
|
143
|
+
//# sourceMappingURL=imagePrompt.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"imagePrompt.js","sourceRoot":"","sources":["../../src/contracts/imagePrompt.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
export { isPromptContract } from './promptContract.js';
|
|
2
|
+
export { isToolGatingPolicy } from './toolGatingPolicy.js';
|
|
3
|
+
export { isRepairRecipe } from './repairRecipe.js';
|
|
4
|
+
export { emptyTurnPolicy } from './turnPolicy.js';
|
|
5
|
+
export { ContractRegistry } from './registry.js';
|
|
6
|
+
export { classifyTurn } from './evaluators.js';
|
|
7
|
+
export { compileToolsForTurn } from './evaluators.js';
|
|
8
|
+
export { dispatchToolCall } from './evaluators.js';
|
|
9
|
+
export { DEFAULT_CONTRACT_CONTEXT_PREFIX, appendContractsContextToSystemContent, buildContractTurnPolicy, compileContractToolSurface, formatContractsContextBlock, normalizeContractMessages, reconcileToolChoiceForCompiledTools, } from './toolSurface.js';
|
|
10
|
+
export { isContractsTelemetryEvent, makeBufferedSink } from './telemetry.js';
|
|
11
|
+
export { MEDIA_TOOL_NAMES, PHASE_3_GATING_POLICIES, TOOL_SURFACE_GATING_POLICIES, IMAGE_CONTEXT_TOOL_NAMES, VIDEO_CONTEXT_TOOL_NAMES, PHASE_4_REPAIR_RECIPES, PHASE_5_PROMPT_CONTRACTS, CANONICAL_TOOL_CATALOG, TOOL_COST_METADATA, TOOL_PERMISSIONS, getCanonicalToolCatalogEntry, populateContractsGatingPolicies, populateContractsToolSurfaceGatingPolicies, populateContractsRepairRecipes, populateContractsPromptContracts, populateToolCostMetadata, populateToolPermissions, populateContractsDefaults, getToolCostMetadata, getToolPermission, getToolPermissionDecision, evaluatePermissionGate, toolRequiresUserApproval, listPaidTools, listToolsByRiskLevel, listCanonicalToolCatalogEntries, listHostedApiImplementedToolNames, listHostedApiToolCatalogEntries, } from './data/index.js';
|
|
12
|
+
export { LITERAL_PROMPT_OVERRIDE } from './promptOverrideMarker.js';
|
|
13
|
+
export { BACKBONE_APP_TOOL_NAMES, BACKBONE_COMPOSITION_TOOL_NAMES, BACKBONE_DURABLE_HOSTED_CREATIVE_TOOL_NAMES, BACKBONE_GENERATION_TOOL_NAMES, BACKBONE_HOSTED_APP_TOOL_NAMES, } from './backboneToolCatalog.js';
|
|
14
|
+
export { BACKBONE_DURABLE_HOSTED_STEP_TOOL_NAMES, BACKBONE_MODEL_KB_VERSION, BACKBONE_ROUTING_POLICY_VERSION, BACKBONE_SCHEMA_VERSION, } from './backboneDurableWorkflow.js';
|
|
15
|
+
export { CAMPAIGN_STORYBOARD_METADATA_PREFIX, CAMPAIGN_STORYBOARD_SCHEMA_VERSION, } from './storyboard.js';
|
|
16
|
+
export * from './hostedToolValidation.js';
|
|
17
|
+
export { RANDOM_THEMES, RANDOM_LYRICS_THEMES, getRandomTheme, getRandomLyricsTheme, } from './randomThemes.js';
|
|
18
|
+
export { ID_LORA_MAX_TOKENS, ID_LORA_COMPOSITION_TOOL, buildIdLoRaConversionMessages, parseToolCallIdLoRaParts, formatIdLoRaPrompt, } from './idLoraPrompt.js';
|
|
19
|
+
export { IMAGE_PROMPT_MAX_TOKENS, IMAGE_PROMPT_TOOL, buildImagePromptMessages, parseToolCallPrompt, } from './imagePrompt.js';
|
|
20
|
+
export { LYRICS_MAX_TOKENS, LYRICS_COMPOSITION_TOOL, INSTRUMENTAL_COMPOSITION_TOOL, buildLyricsMessages, buildInstrumentalMessages, parseToolCallResult, } from './musicComposition.js';
|
|
21
|
+
export { SCRIPT_MAX_TOKENS, SCRIPT_COMPOSITION_TOOL, CHARACTER_REFERENCE_VIDEO_COMPOSITION_SYSTEM_PROMPT, buildLtxScriptMessages, buildWanScriptMessages, parseToolCallScript, buildCharacterReferenceVideoCompositionMessages, parseCompositionToolScriptFromResult, } from './videoComposition.js';
|
|
22
|
+
export { HOSTED_COMPOSITION_ROUTER_MAX_TOKENS, buildEnhancePromptToolArgs, buildLyricsCompositionToolArgs, buildInstrumentalCompositionToolArgs, buildScriptCompositionToolArgs, buildComposeWorkflowToolArgs, buildComposeWorkflowTemplateToolArgs, buildWanScriptCompositionToolArgs, buildHostedCompositionToolMessages, } from './hostedComposition.js';
|
|
23
|
+
export { SEEDANCE_STORYBOARD_REFERENCE_PROMPT, } from './storyboard.js';
|
|
24
|
+
export { LITERAL_VIDEO_PROMPT_OVERRIDE, LITERAL_SEEDANCE_PROMPT_OVERRIDE, SEEDANCE_EXPAND_PROMPT_DESCRIPTION, GENERATE_VIDEO_SKIP_PROMPT_PROCESSING_DESCRIPTION, ANIMATE_PHOTO_SKIP_PROMPT_PROCESSING_DESCRIPTION, SEEDANCE_TOOL_MULTIMODAL_REFERENCE_GUIDANCE, SEEDANCE_TOOL_AUDIO_REFERENCE_GUIDANCE, SEEDANCE_TOOL_V2V_REFERENCE_GUIDANCE, } from './toolPromptMarkers.js';
|
|
25
|
+
export { BACKBONE_VERSIONS, BackboneWorkflowValidationError, MAX_HOSTED_TOOL_SEQUENCE_STEPS, normalizeBackboneDurableWorkflowSteps, buildBackboneDurableWorkflowRun, } from './backboneDurableWorkflow.js';
|
|
26
|
+
export { getCostClassNumericWeight, UNKNOWN_COST_CLASS_FALLBACK_WEIGHT, COST_CLASS_NUMERIC_WEIGHTS, } from './data/costEstimation.js';
|
|
27
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/contracts/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,182 @@
|
|
|
1
|
+
import { LANGUAGE_LABELS, MUSIC_BPM, MUSIC_DURATION, MUSIC_KEY_SCALES, MUSIC_TIME_SIGNATURES, } from '../media/musicSettings.js';
|
|
2
|
+
import { getRandomLyricsTheme } from './randomThemes.js';
|
|
3
|
+
export const LYRICS_MAX_TOKENS = 2048;
|
|
4
|
+
const LYRICS_SYSTEM_PROMPT = `You are an expert songwriter. Generate song lyrics using the ACE-Step structured format and return them via the compose_lyrics tool.
|
|
5
|
+
|
|
6
|
+
Section headers — each section tag can optionally include a vocal/performance modifier after a hyphen, e.g. [Section - modifier]. Choose modifiers that fit the song's mood and vary them across sections.
|
|
7
|
+
Common structures: Verse, Chorus, Bridge, Intro, Outro, Instrumental, Interlude, Build, Drop, Breakdown — but you can use any descriptive section name like Guitar Solo, Piano Interlude, Fade Out, etc.
|
|
8
|
+
Modifiers are free-form — describe vocal delivery or performance feel in your own words. Not every section needs one. Examples for inspiration: raspy, breathy, falsetto, belting, spoken word, humming, anthemic, gentle, building, harmonies, a cappella
|
|
9
|
+
Keep modifiers to one or two words per tag.
|
|
10
|
+
|
|
11
|
+
Rules:
|
|
12
|
+
- Write natural, creative lyrics that match the requested style/mood
|
|
13
|
+
- Keep line lengths appropriate for singing (6-10 syllables per line for optimal rhythm)
|
|
14
|
+
- Use CAPS for intense/shouted lines: "WE ARE THE FIRE!"
|
|
15
|
+
- Use parentheses for background vocals: "We rise together (together)"
|
|
16
|
+
- The lyrics should be suitable for a song, not a poem
|
|
17
|
+
|
|
18
|
+
Suggest a duration that fits the lyrics naturally at the chosen tempo.`;
|
|
19
|
+
const INSTRUMENTAL_SYSTEM_PROMPT = `You are an expert music composer and arranger. Design an instrumental music structure using the ACE-Step structured format and return it via the compose_instrumental tool.
|
|
20
|
+
|
|
21
|
+
Output ONLY section tags in brackets — one per line, nothing else between them. The AI music model interprets any text outside brackets as lyrics to sing, so do NOT include descriptions, directions, or any other text between section tags.
|
|
22
|
+
|
|
23
|
+
Section tags — use tags like [Intro], [Main Theme], [Bridge], [Build], [Drop], [Breakdown], [Climax], [Outro], [Guitar Solo], [Piano Interlude], [Fade Out], etc.
|
|
24
|
+
Each tag can optionally include a performance modifier after a hyphen, e.g. [Section - modifier]. Choose modifiers that describe the instrumental feel.
|
|
25
|
+
Modifiers are free-form — describe the energy, dynamics, or featured instruments. Examples: building, ambient, driving, melodic, percussive, atmospheric, powerful, delicate, syncopated, distorted
|
|
26
|
+
|
|
27
|
+
Example output format:
|
|
28
|
+
[Intro - ambient pads]
|
|
29
|
+
[Main Theme - driving guitar]
|
|
30
|
+
[Bridge - stripped back piano]
|
|
31
|
+
[Build - percussive, rising]
|
|
32
|
+
[Drop - powerful, full band]
|
|
33
|
+
[Outro - fade out]
|
|
34
|
+
|
|
35
|
+
Rules:
|
|
36
|
+
- Output ONLY bracketed section tags, one per line — NO text between sections
|
|
37
|
+
- Use modifiers within the brackets to convey dynamics, instrumentation, and energy
|
|
38
|
+
- Structure the sections to create a natural musical arc
|
|
39
|
+
- Match the requested style/mood
|
|
40
|
+
|
|
41
|
+
Suggest a duration that fits the structure naturally at the chosen tempo.`;
|
|
42
|
+
export const LYRICS_COMPOSITION_TOOL = {
|
|
43
|
+
type: 'function',
|
|
44
|
+
function: {
|
|
45
|
+
name: 'compose_lyrics',
|
|
46
|
+
description: 'Output the composed song lyrics and musical parameters',
|
|
47
|
+
parameters: {
|
|
48
|
+
type: 'object',
|
|
49
|
+
properties: {
|
|
50
|
+
lyrics: {
|
|
51
|
+
type: 'string',
|
|
52
|
+
description: 'Song lyrics with enriched section headers (e.g. [Verse 1 - soft vocal]). Use \\n for newlines.',
|
|
53
|
+
},
|
|
54
|
+
bpm: { type: 'number', description: 'Tempo in beats per minute, e.g. 120 for a pop song' },
|
|
55
|
+
keyscale: {
|
|
56
|
+
type: 'string',
|
|
57
|
+
description: 'Musical key and scale, e.g. "D minor", "A major", "F# minor"',
|
|
58
|
+
},
|
|
59
|
+
timesignature: {
|
|
60
|
+
type: 'string',
|
|
61
|
+
enum: ['2/4', '3/4', '4/4', '6/8'],
|
|
62
|
+
description: 'Time signature. Most songs use 4/4; waltzes use 3/4',
|
|
63
|
+
},
|
|
64
|
+
duration: {
|
|
65
|
+
type: 'number',
|
|
66
|
+
description: 'Estimated song duration in seconds that fits the lyrics at the chosen tempo',
|
|
67
|
+
},
|
|
68
|
+
},
|
|
69
|
+
required: ['lyrics', 'bpm', 'keyscale', 'timesignature', 'duration'],
|
|
70
|
+
},
|
|
71
|
+
},
|
|
72
|
+
};
|
|
73
|
+
export const INSTRUMENTAL_COMPOSITION_TOOL = {
|
|
74
|
+
type: 'function',
|
|
75
|
+
function: {
|
|
76
|
+
name: 'compose_instrumental',
|
|
77
|
+
description: 'Output the composed instrumental music structure and musical parameters',
|
|
78
|
+
parameters: {
|
|
79
|
+
type: 'object',
|
|
80
|
+
properties: {
|
|
81
|
+
structure: {
|
|
82
|
+
type: 'string',
|
|
83
|
+
description: 'Instrumental structure as ONLY bracketed section tags, one per line, with NO text between them (e.g. [Intro - ambient pads]\\n[Main Theme - driving guitar]\\n[Bridge - stripped back]). Use \\n for newlines.',
|
|
84
|
+
},
|
|
85
|
+
bpm: {
|
|
86
|
+
type: 'number',
|
|
87
|
+
description: 'Tempo in beats per minute, e.g. 120 for an upbeat track',
|
|
88
|
+
},
|
|
89
|
+
keyscale: {
|
|
90
|
+
type: 'string',
|
|
91
|
+
description: 'Musical key and scale, e.g. "D minor", "A major", "F# minor"',
|
|
92
|
+
},
|
|
93
|
+
timesignature: {
|
|
94
|
+
type: 'string',
|
|
95
|
+
enum: ['2/4', '3/4', '4/4', '6/8'],
|
|
96
|
+
description: 'Time signature. Most songs use 4/4; waltzes use 3/4',
|
|
97
|
+
},
|
|
98
|
+
duration: {
|
|
99
|
+
type: 'number',
|
|
100
|
+
description: 'Estimated track duration in seconds that fits the structure at the chosen tempo',
|
|
101
|
+
},
|
|
102
|
+
},
|
|
103
|
+
required: ['structure', 'bpm', 'keyscale', 'timesignature', 'duration'],
|
|
104
|
+
},
|
|
105
|
+
},
|
|
106
|
+
};
|
|
107
|
+
export function buildLyricsMessages(prompt, language, musicPrompt, randomTheme) {
|
|
108
|
+
const messages = [{ role: 'system', content: LYRICS_SYSTEM_PROMPT }];
|
|
109
|
+
let userMessage;
|
|
110
|
+
if (prompt.trim()) {
|
|
111
|
+
userMessage = prompt;
|
|
112
|
+
}
|
|
113
|
+
else {
|
|
114
|
+
const theme = randomTheme || getRandomLyricsTheme();
|
|
115
|
+
userMessage = `Come up with a unique, original song about: ${theme}. Be creative and surprising.`;
|
|
116
|
+
}
|
|
117
|
+
if (musicPrompt) {
|
|
118
|
+
userMessage += `\n\nMusic style context: ${musicPrompt}`;
|
|
119
|
+
}
|
|
120
|
+
if (language && language !== 'unknown') {
|
|
121
|
+
userMessage += `\n\nWrite the lyrics in: ${LANGUAGE_LABELS[language]}`;
|
|
122
|
+
}
|
|
123
|
+
messages.push({ role: 'user', content: userMessage });
|
|
124
|
+
return messages;
|
|
125
|
+
}
|
|
126
|
+
export function buildInstrumentalMessages(prompt, musicPrompt, randomTheme) {
|
|
127
|
+
const messages = [{ role: 'system', content: INSTRUMENTAL_SYSTEM_PROMPT }];
|
|
128
|
+
let userMessage;
|
|
129
|
+
if (prompt.trim()) {
|
|
130
|
+
userMessage = prompt;
|
|
131
|
+
}
|
|
132
|
+
else {
|
|
133
|
+
const theme = randomTheme || getRandomLyricsTheme();
|
|
134
|
+
userMessage = `Come up with a unique, original instrumental piece inspired by: ${theme}. Be creative and surprising.`;
|
|
135
|
+
}
|
|
136
|
+
if (musicPrompt) {
|
|
137
|
+
userMessage += `\n\nMusic style context: ${musicPrompt}`;
|
|
138
|
+
}
|
|
139
|
+
messages.push({ role: 'user', content: userMessage });
|
|
140
|
+
return messages;
|
|
141
|
+
}
|
|
142
|
+
function parseTimeSignature(value) {
|
|
143
|
+
const str = String(value ?? '');
|
|
144
|
+
const map = { '2/4': '2', '3/4': '3', '4/4': '4', '6/8': '6' };
|
|
145
|
+
if (map[str])
|
|
146
|
+
return map[str];
|
|
147
|
+
const signatures = Object.keys(MUSIC_TIME_SIGNATURES);
|
|
148
|
+
if (signatures.includes(str))
|
|
149
|
+
return str;
|
|
150
|
+
return null;
|
|
151
|
+
}
|
|
152
|
+
function parseTempo(value) {
|
|
153
|
+
const num = Number(value);
|
|
154
|
+
if (!isNaN(num) && num >= MUSIC_BPM.min && num <= MUSIC_BPM.max)
|
|
155
|
+
return Math.round(num);
|
|
156
|
+
return null;
|
|
157
|
+
}
|
|
158
|
+
function parseDuration(value) {
|
|
159
|
+
const num = Number(value);
|
|
160
|
+
if (!isNaN(num) && num >= MUSIC_DURATION.min && num <= MUSIC_DURATION.max)
|
|
161
|
+
return Math.round(num);
|
|
162
|
+
return null;
|
|
163
|
+
}
|
|
164
|
+
function parseKeyScale(value) {
|
|
165
|
+
if (!value)
|
|
166
|
+
return null;
|
|
167
|
+
const str = String(value);
|
|
168
|
+
const found = MUSIC_KEY_SCALES.find((k) => k.toLowerCase() === str.toLowerCase());
|
|
169
|
+
return found || null;
|
|
170
|
+
}
|
|
171
|
+
export function parseToolCallResult(args) {
|
|
172
|
+
const rawText = String(args.lyrics || args.structure || '');
|
|
173
|
+
const lyrics = rawText.includes('\n') ? rawText : rawText.replace(/\\n/g, '\n');
|
|
174
|
+
return {
|
|
175
|
+
lyrics: lyrics.trim(),
|
|
176
|
+
tempo: parseTempo(args.bpm),
|
|
177
|
+
key: parseKeyScale(args.keyscale),
|
|
178
|
+
timeSignature: parseTimeSignature(args.timesignature),
|
|
179
|
+
duration: parseDuration(args.duration),
|
|
180
|
+
};
|
|
181
|
+
}
|
|
182
|
+
//# sourceMappingURL=musicComposition.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"musicComposition.js","sourceRoot":"","sources":["../../src/contracts/musicComposition.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,eAAe,EACf,SAAS,EACT,cAAc,EACd,gBAAgB,EAChB,qBAAqB,GAEtB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAUzD,MAAM,CAAC,MAAM,iBAAiB,GAAG,IAAI,CAAC;AAEtC,MAAM,oBAAoB,GAAG;;;;;;;;;;;;;;uEAc0C,CAAC;AAExE,MAAM,0BAA0B,GAAG;;;;;;;;;;;;;;;;;;;;;;0EAsBuC,CAAC;AAE3E,MAAM,CAAC,MAAM,uBAAuB,GAAmB;IACrD,IAAI,EAAE,UAAU;IAChB,QAAQ,EAAE;QACR,IAAI,EAAE,gBAAgB;QACtB,WAAW,EAAE,wDAAwD;QACrE,UAAU,EAAE;YACV,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,MAAM,EAAE;oBACN,IAAI,EAAE,QAAQ;oBACd,WAAW,EACT,gGAAgG;iBACnG;gBACD,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,oDAAoD,EAAE;gBAC1F,QAAQ,EAAE;oBACR,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,8DAA8D;iBAC5E;gBACD,aAAa,EAAE;oBACb,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC;oBAClC,WAAW,EAAE,qDAAqD;iBACnE;gBACD,QAAQ,EAAE;oBACR,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,6EAA6E;iBAC3F;aACF;YACD,QAAQ,EAAE,CAAC,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,eAAe,EAAE,UAAU,CAAC;SACrE;KACF;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,6BAA6B,GAAmB;IAC3D,IAAI,EAAE,UAAU;IAChB,QAAQ,EAAE;QACR,IAAI,EAAE,sBAAsB;QAC5B,WAAW,EAAE,yEAAyE;QACtF,UAAU,EAAE;YACV,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,SAAS,EAAE;oBACT,IAAI,EAAE,QAAQ;oBACd,WAAW,EACT,gNAAgN;iBACnN;gBACD,GAAG,EAAE;oBACH,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,yDAAyD;iBACvE;gBACD,QAAQ,EAAE;oBACR,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,8DAA8D;iBAC5E;gBACD,aAAa,EAAE;oBACb,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC;oBAClC,WAAW,EAAE,qDAAqD;iBACnE;gBACD,QAAQ,EAAE;oBACR,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,iFAAiF;iBAC/F;aACF;YACD,QAAQ,EAAE,CAAC,WAAW,EAAE,KAAK,EAAE,UAAU,EAAE,eAAe,EAAE,UAAU,CAAC;SACxE;KACF;CACF,CAAC;AAEF,MAAM,UAAU,mBAAmB,CACjC,MAAc,EACd,QAAgB,EAChB,WAAmB,EACnB,WAAoB;IAEpB,MAAM,QAAQ,GAAuB,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,oBAAoB,EAAE,CAAC,CAAC;IACzF,IAAI,WAAmB,CAAC;IACxB,IAAI,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC;QAClB,WAAW,GAAG,MAAM,CAAC;IACvB,CAAC;SAAM,CAAC;QACN,MAAM,KAAK,GAAG,WAAW,IAAI,oBAAoB,EAAE,CAAC;QACpD,WAAW,GAAG,+CAA+C,KAAK,+BAA+B,CAAC;IACpG,CAAC;IACD,IAAI,WAAW,EAAE,CAAC;QAChB,WAAW,IAAI,4BAA4B,WAAW,EAAE,CAAC;IAC3D,CAAC;IACD,IAAI,QAAQ,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QACvC,WAAW,IAAI,4BAA4B,eAAe,CAAC,QAAQ,CAAC,EAAE,CAAC;IACzE,CAAC;IACD,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC,CAAC;IACtD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,MAAM,UAAU,yBAAyB,CACvC,MAAc,EACd,WAAmB,EACnB,WAAoB;IAEpB,MAAM,QAAQ,GAAuB,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,0BAA0B,EAAE,CAAC,CAAC;IAC/F,IAAI,WAAmB,CAAC;IACxB,IAAI,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC;QAClB,WAAW,GAAG,MAAM,CAAC;IACvB,CAAC;SAAM,CAAC;QACN,MAAM,KAAK,GAAG,WAAW,IAAI,oBAAoB,EAAE,CAAC;QACpD,WAAW,GAAG,mEAAmE,KAAK,+BAA+B,CAAC;IACxH,CAAC;IACD,IAAI,WAAW,EAAE,CAAC;QAChB,WAAW,IAAI,4BAA4B,WAAW,EAAE,CAAC;IAC3D,CAAC;IACD,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC,CAAC;IACtD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,SAAS,kBAAkB,CAAC,KAAc;IACxC,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;IAChC,MAAM,GAAG,GAAkC,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC;IAC9F,IAAI,GAAG,CAAC,GAAG,CAAC;QAAE,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC;IAC9B,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;IACtD,IAAI,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC;QAAE,OAAO,GAAoB,CAAC;IAC1D,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,UAAU,CAAC,KAAc;IAChC,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAC1B,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,GAAG,IAAI,SAAS,CAAC,GAAG,IAAI,GAAG,IAAI,SAAS,CAAC,GAAG;QAAE,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACxF,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,aAAa,CAAC,KAAc;IACnC,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAC1B,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,GAAG,IAAI,cAAc,CAAC,GAAG,IAAI,GAAG,IAAI,cAAc,CAAC,GAAG;QAAE,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAClG,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,aAAa,CAAC,KAAc;IACnC,IAAI,CAAC,KAAK;QAAE,OAAO,IAAI,CAAC;IACxB,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAC1B,MAAM,KAAK,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,KAAK,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC;IAClF,OAAO,KAAK,IAAI,IAAI,CAAC;AACvB,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,IAA6B;IAC/D,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC;IAC5D,MAAM,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAChF,OAAO;QACL,MAAM,EAAE,MAAM,CAAC,IAAI,EAAE;QACrB,KAAK,EAAE,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC;QAC3B,GAAG,EAAE,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC;QACjC,aAAa,EAAE,kBAAkB,CAAC,IAAI,CAAC,aAAa,CAAC;QACrD,QAAQ,EAAE,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC;KACvC,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
function isStringRecord(value) {
|
|
2
|
+
if (value === null || typeof value !== 'object')
|
|
3
|
+
return false;
|
|
4
|
+
for (const v of Object.values(value)) {
|
|
5
|
+
if (typeof v !== 'string')
|
|
6
|
+
return false;
|
|
7
|
+
}
|
|
8
|
+
return true;
|
|
9
|
+
}
|
|
10
|
+
export function isPromptContract(value) {
|
|
11
|
+
if (value === null || typeof value !== 'object')
|
|
12
|
+
return false;
|
|
13
|
+
const v = value;
|
|
14
|
+
if (typeof v.contractId !== 'string' || v.contractId.length === 0)
|
|
15
|
+
return false;
|
|
16
|
+
if (typeof v.version !== 'string' || v.version.length === 0)
|
|
17
|
+
return false;
|
|
18
|
+
if (typeof v.toolName !== 'string' || v.toolName.length === 0)
|
|
19
|
+
return false;
|
|
20
|
+
if (typeof v.baseDescription !== 'string')
|
|
21
|
+
return false;
|
|
22
|
+
if (!isStringRecord(v.parameterDocs))
|
|
23
|
+
return false;
|
|
24
|
+
if (v.voiceExamples !== undefined) {
|
|
25
|
+
if (!Array.isArray(v.voiceExamples))
|
|
26
|
+
return false;
|
|
27
|
+
if (v.voiceExamples.some((x) => typeof x !== 'string'))
|
|
28
|
+
return false;
|
|
29
|
+
}
|
|
30
|
+
if (v.conditionalNotes !== undefined && !isStringRecord(v.conditionalNotes))
|
|
31
|
+
return false;
|
|
32
|
+
return true;
|
|
33
|
+
}
|
|
34
|
+
//# sourceMappingURL=promptContract.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"promptContract.js","sourceRoot":"","sources":["../../src/contracts/promptContract.ts"],"names":[],"mappings":"AA0BA,SAAS,cAAc,CAAC,KAAc;IACpC,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC9D,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,KAAgC,CAAC,EAAE,CAAC;QAChE,IAAI,OAAO,CAAC,KAAK,QAAQ;YAAE,OAAO,KAAK,CAAC;IAC1C,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,KAAc;IAC7C,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC9D,MAAM,CAAC,GAAG,KAAgC,CAAC;IAC3C,IAAI,OAAO,CAAC,CAAC,UAAU,KAAK,QAAQ,IAAI,CAAC,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IAChF,IAAI,OAAO,CAAC,CAAC,OAAO,KAAK,QAAQ,IAAI,CAAC,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IAC1E,IAAI,OAAO,CAAC,CAAC,QAAQ,KAAK,QAAQ,IAAI,CAAC,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IAC5E,IAAI,OAAO,CAAC,CAAC,eAAe,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IACxD,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,aAAa,CAAC;QAAE,OAAO,KAAK,CAAC;IACnD,IAAI,CAAC,CAAC,aAAa,KAAK,SAAS,EAAE,CAAC;QAClC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,aAAa,CAAC;YAAE,OAAO,KAAK,CAAC;QAClD,IAAI,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC;YAAE,OAAO,KAAK,CAAC;IACvE,CAAC;IACD,IAAI,CAAC,CAAC,gBAAgB,KAAK,SAAS,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,gBAAgB,CAAC;QAAE,OAAO,KAAK,CAAC;IAC1F,OAAO,IAAI,CAAC;AACd,CAAC"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export const LITERAL_PROMPT_OVERRIDE = 'LITERAL PROMPT OVERRIDE: If the user explicitly says not to modify the prompt, or to use it exactly/verbatim/as-is, copy the identified prompt text verbatim instead of applying these construction rules unless a hard requirement is missing.';
|
|
2
|
+
//# sourceMappingURL=promptOverrideMarker.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"promptOverrideMarker.js","sourceRoot":"","sources":["../../src/contracts/promptOverrideMarker.ts"],"names":[],"mappings":"AAIA,MAAM,CAAC,MAAM,uBAAuB,GAClC,iPAAiP,CAAC"}
|
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
export const RANDOM_THEMES = [
|
|
2
|
+
'a mountain summit',
|
|
3
|
+
'a bamboo forest',
|
|
4
|
+
'a frozen waterfall',
|
|
5
|
+
'a lavender field',
|
|
6
|
+
'a volcanic coastline',
|
|
7
|
+
'a bay at night',
|
|
8
|
+
'a salt flat with cracked earth',
|
|
9
|
+
'a redwood forest',
|
|
10
|
+
'a coral reef with sea life',
|
|
11
|
+
'a rolling prairie',
|
|
12
|
+
'a narrow alley in the rain',
|
|
13
|
+
'an old movie theater',
|
|
14
|
+
'a busy outdoor market',
|
|
15
|
+
'a concrete overpass',
|
|
16
|
+
'a rooftop garden above a city',
|
|
17
|
+
'a canal with boats',
|
|
18
|
+
'a glass skyscraper',
|
|
19
|
+
'a subway station',
|
|
20
|
+
'a cobblestone square',
|
|
21
|
+
'an open-air night market',
|
|
22
|
+
'a bookshop with tall shelves',
|
|
23
|
+
'an arcade with game machines',
|
|
24
|
+
'a cathedral interior',
|
|
25
|
+
'a cabin interior during a storm',
|
|
26
|
+
'an artist studio with paint everywhere',
|
|
27
|
+
'an abandoned hallway',
|
|
28
|
+
'a spaceship control room',
|
|
29
|
+
'a greenhouse full of plants',
|
|
30
|
+
'a small music club with a stage',
|
|
31
|
+
'a pottery workshop',
|
|
32
|
+
'a street musician playing violin',
|
|
33
|
+
'a fisherman mending nets',
|
|
34
|
+
'a dancer practicing alone',
|
|
35
|
+
'a blacksmith forging metal',
|
|
36
|
+
'a child chasing fireflies',
|
|
37
|
+
'a surfer riding a wave',
|
|
38
|
+
'a chef preparing food in a kitchen',
|
|
39
|
+
'a climber resting on a ridge',
|
|
40
|
+
'a painter working on a mural',
|
|
41
|
+
'a person walking through a temple garden',
|
|
42
|
+
'a wolf pack crossing a river',
|
|
43
|
+
'a hummingbird near flowers',
|
|
44
|
+
'an octopus moving through a shipwreck',
|
|
45
|
+
'wild horses galloping on a beach',
|
|
46
|
+
'a leopard on a cliff edge',
|
|
47
|
+
'an owl swooping through a forest',
|
|
48
|
+
'jellyfish drifting in deep water',
|
|
49
|
+
'a fox on a forest floor',
|
|
50
|
+
'a whale breaching the surface',
|
|
51
|
+
'flamingos on a lake',
|
|
52
|
+
'a city floating above clouds',
|
|
53
|
+
'a street vendor selling unusual wares',
|
|
54
|
+
'a dragon on a tower',
|
|
55
|
+
'an explorer in an alien jungle',
|
|
56
|
+
'a knight crossing a stone bridge',
|
|
57
|
+
'a person stepping out of a portal',
|
|
58
|
+
'a robot tending a garden',
|
|
59
|
+
'a potion brewer in a tower',
|
|
60
|
+
'a warrior standing in a flower field',
|
|
61
|
+
'a domed city underwater',
|
|
62
|
+
'a locomotive crossing a bridge',
|
|
63
|
+
'a sailboat on the open ocean',
|
|
64
|
+
'a motorcycle on a coastal road',
|
|
65
|
+
'a hot air balloon over a valley',
|
|
66
|
+
'a truck on a desert road',
|
|
67
|
+
'a fishing boat in rough seas',
|
|
68
|
+
'a bicycle leaning against a wall',
|
|
69
|
+
'a cable car over a gorge',
|
|
70
|
+
'a canoe on a still lake',
|
|
71
|
+
'a spaceship landing on a planet',
|
|
72
|
+
'a lightning storm over a field',
|
|
73
|
+
'a rainbow over a waterfall',
|
|
74
|
+
'a sandstorm approaching an oasis',
|
|
75
|
+
'an aurora over a tundra',
|
|
76
|
+
'fog rolling through a harbor',
|
|
77
|
+
'a downpour flooding a street',
|
|
78
|
+
'snowfall covering a village',
|
|
79
|
+
'heat shimmer over a highway',
|
|
80
|
+
'a wildfire on a ridge',
|
|
81
|
+
'rain falling on a garden',
|
|
82
|
+
'a table set for a feast outdoors',
|
|
83
|
+
'a bowl of soup in a small shop',
|
|
84
|
+
'a market stall with tropical fruits',
|
|
85
|
+
'a pastry display in a bakery',
|
|
86
|
+
'a campfire under the stars',
|
|
87
|
+
'ink dissolving in water',
|
|
88
|
+
'glass fragments mid-explosion',
|
|
89
|
+
'paint splashing on a canvas',
|
|
90
|
+
'smoke forming spirals',
|
|
91
|
+
'leaves caught in wind',
|
|
92
|
+
];
|
|
93
|
+
export const RANDOM_LYRICS_THEMES = [
|
|
94
|
+
'missing someone far away',
|
|
95
|
+
'falling for a stranger',
|
|
96
|
+
'letting go of the past',
|
|
97
|
+
'a love that came too late',
|
|
98
|
+
'growing apart from a friend',
|
|
99
|
+
'forgiving someone who hurt you',
|
|
100
|
+
'the moment before a first kiss',
|
|
101
|
+
'a letter you never sent',
|
|
102
|
+
'dancing alone in your room',
|
|
103
|
+
'waiting for a phone call',
|
|
104
|
+
'finding yourself after losing everything',
|
|
105
|
+
'pretending to be fine',
|
|
106
|
+
'the person you used to be',
|
|
107
|
+
'learning to trust yourself',
|
|
108
|
+
'the mask you wear for others',
|
|
109
|
+
'outgrowing your hometown',
|
|
110
|
+
'starting over in a new place',
|
|
111
|
+
'the voice inside your head',
|
|
112
|
+
'becoming someone unexpected',
|
|
113
|
+
'celebrating your own flaws',
|
|
114
|
+
'a road trip with no destination',
|
|
115
|
+
'the last day of summer',
|
|
116
|
+
'a conversation at 3am',
|
|
117
|
+
'running away from responsibility',
|
|
118
|
+
'a promise made in the rain',
|
|
119
|
+
'sneaking out at midnight',
|
|
120
|
+
'a goodbye at a train station',
|
|
121
|
+
'waking up in an unfamiliar place',
|
|
122
|
+
'a party that changed everything',
|
|
123
|
+
'chasing a dream everyone doubts',
|
|
124
|
+
'the ocean at night',
|
|
125
|
+
'walking through an empty city',
|
|
126
|
+
'a fire burning low',
|
|
127
|
+
'stars seen from a rooftop',
|
|
128
|
+
'a storm rolling in',
|
|
129
|
+
'footprints in fresh snow',
|
|
130
|
+
'a river that keeps flowing',
|
|
131
|
+
'the silence after thunder',
|
|
132
|
+
'a garden growing wild',
|
|
133
|
+
'the horizon at sunrise',
|
|
134
|
+
'time moving too fast',
|
|
135
|
+
'the weight of unspoken words',
|
|
136
|
+
'chasing shadows',
|
|
137
|
+
'a door that only opens once',
|
|
138
|
+
'the space between heartbeats',
|
|
139
|
+
'colors you cannot name',
|
|
140
|
+
'echoes of a forgotten song',
|
|
141
|
+
'building something from nothing',
|
|
142
|
+
'the price of freedom',
|
|
143
|
+
'a world inside a dream',
|
|
144
|
+
];
|
|
145
|
+
function pickRandom(items, random) {
|
|
146
|
+
return items[Math.floor(random() * items.length)];
|
|
147
|
+
}
|
|
148
|
+
export function getRandomTheme(random = Math.random) {
|
|
149
|
+
return pickRandom(RANDOM_THEMES, random);
|
|
150
|
+
}
|
|
151
|
+
export function getRandomLyricsTheme(random = Math.random) {
|
|
152
|
+
return pickRandom(RANDOM_LYRICS_THEMES, random);
|
|
153
|
+
}
|
|
154
|
+
//# sourceMappingURL=randomThemes.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"randomThemes.js","sourceRoot":"","sources":["../../src/contracts/randomThemes.ts"],"names":[],"mappings":"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"}
|