weshop-cli 0.2.0 → 0.2.1
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/dist/commands/2d-to-3d-image-converter.js +8 -25
- package/dist/commands/2d-to-3d-image-converter.js.map +1 -1
- package/dist/commands/ai-3d-rendering.js +8 -25
- package/dist/commands/ai-3d-rendering.js.map +1 -1
- package/dist/commands/ai-action-figure-generators.js +8 -29
- package/dist/commands/ai-action-figure-generators.js.map +1 -1
- package/dist/commands/ai-aging.js +8 -33
- package/dist/commands/ai-aging.js.map +1 -1
- package/dist/commands/ai-babe.js +9 -26
- package/dist/commands/ai-babe.js.map +1 -1
- package/dist/commands/ai-bikini-model.js +12 -30
- package/dist/commands/ai-bikini-model.js.map +1 -1
- package/dist/commands/ai-bikini-photo-editor.js +9 -26
- package/dist/commands/ai-bikini-photo-editor.js.map +1 -1
- package/dist/commands/ai-bikini-video.js +10 -28
- package/dist/commands/ai-bikini-video.js.map +1 -1
- package/dist/commands/ai-christmas-photo.js +8 -28
- package/dist/commands/ai-christmas-photo.js.map +1 -1
- package/dist/commands/ai-clothes-changer.js +11 -32
- package/dist/commands/ai-clothes-changer.js.map +1 -1
- package/dist/commands/ai-collage-maker.js +11 -32
- package/dist/commands/ai-collage-maker.js.map +1 -1
- package/dist/commands/ai-dog.js +8 -35
- package/dist/commands/ai-dog.js.map +1 -1
- package/dist/commands/ai-elf.js +8 -25
- package/dist/commands/ai-elf.js.map +1 -1
- package/dist/commands/ai-face-merge.js +11 -40
- package/dist/commands/ai-face-merge.js.map +1 -1
- package/dist/commands/ai-feet.js +8 -25
- package/dist/commands/ai-feet.js.map +1 -1
- package/dist/commands/ai-flag-generator.js +8 -29
- package/dist/commands/ai-flag-generator.js.map +1 -1
- package/dist/commands/ai-generated-bikini-girls.js +11 -29
- package/dist/commands/ai-generated-bikini-girls.js.map +1 -1
- package/dist/commands/ai-generated-perfect-female-body.js +11 -29
- package/dist/commands/ai-generated-perfect-female-body.js.map +1 -1
- package/dist/commands/ai-ghost-mannequin-generator.js +12 -30
- package/dist/commands/ai-ghost-mannequin-generator.js.map +1 -1
- package/dist/commands/ai-group-photo-generator.js +11 -32
- package/dist/commands/ai-group-photo-generator.js.map +1 -1
- package/dist/commands/ai-hair-color-changer.js +8 -28
- package/dist/commands/ai-hair-color-changer.js.map +1 -1
- package/dist/commands/ai-hairstyle-changer.js +8 -29
- package/dist/commands/ai-hairstyle-changer.js.map +1 -1
- package/dist/commands/ai-hot-girl-image.js +11 -29
- package/dist/commands/ai-hot-girl-image.js.map +1 -1
- package/dist/commands/ai-image-animation.js +13 -34
- package/dist/commands/ai-image-animation.js.map +1 -1
- package/dist/commands/ai-image-combiner.js +11 -35
- package/dist/commands/ai-image-combiner.js.map +1 -1
- package/dist/commands/ai-landscape-design-free.js +15 -35
- package/dist/commands/ai-landscape-design-free.js.map +1 -1
- package/dist/commands/ai-lingerie-models.js +11 -29
- package/dist/commands/ai-lingerie-models.js.map +1 -1
- package/dist/commands/ai-photoshoot.js +21 -43
- package/dist/commands/ai-photoshoot.js.map +1 -1
- package/dist/commands/ai-poster-from-images.js +19 -44
- package/dist/commands/ai-poster-from-images.js.map +1 -1
- package/dist/commands/ai-poster.js +22 -42
- package/dist/commands/ai-poster.js.map +1 -1
- package/dist/commands/ai-room-planner.js +8 -29
- package/dist/commands/ai-room-planner.js.map +1 -1
- package/dist/commands/ai-selfie.js +8 -25
- package/dist/commands/ai-selfie.js.map +1 -1
- package/dist/commands/ai-sexy-portrait.js +11 -29
- package/dist/commands/ai-sexy-portrait.js.map +1 -1
- package/dist/commands/ai-sexy-teens.js +11 -29
- package/dist/commands/ai-sexy-teens.js.map +1 -1
- package/dist/commands/ai-spray-paint.js +8 -29
- package/dist/commands/ai-spray-paint.js.map +1 -1
- package/dist/commands/ai-swimsuit-model.js +8 -25
- package/dist/commands/ai-swimsuit-model.js.map +1 -1
- package/dist/commands/ai-tattoo-generator.js +8 -29
- package/dist/commands/ai-tattoo-generator.js.map +1 -1
- package/dist/commands/ai-text-remover-from-video.js +6 -22
- package/dist/commands/ai-text-remover-from-video.js.map +1 -1
- package/dist/commands/ai-translate.js +8 -33
- package/dist/commands/ai-translate.js.map +1 -1
- package/dist/commands/ai-video-enhancer.js +8 -28
- package/dist/commands/ai-video-enhancer.js.map +1 -1
- package/dist/commands/ai-werewolf.js +14 -32
- package/dist/commands/ai-werewolf.js.map +1 -1
- package/dist/commands/ai-xray-clothes.js +8 -25
- package/dist/commands/ai-xray-clothes.js.map +1 -1
- package/dist/commands/ai-zombie.js +8 -25
- package/dist/commands/ai-zombie.js.map +1 -1
- package/dist/commands/anime-image-converter.js +8 -25
- package/dist/commands/anime-image-converter.js.map +1 -1
- package/dist/commands/baby-face-generator.js +15 -35
- package/dist/commands/baby-face-generator.js.map +1 -1
- package/dist/commands/bald-filter.js +8 -28
- package/dist/commands/bald-filter.js.map +1 -1
- package/dist/commands/bangs-filter.js +8 -25
- package/dist/commands/bangs-filter.js.map +1 -1
- package/dist/commands/bikini-contest-photos.js +11 -29
- package/dist/commands/bikini-contest-photos.js.map +1 -1
- package/dist/commands/bikini-try-on.js +8 -25
- package/dist/commands/bikini-try-on.js.map +1 -1
- package/dist/commands/braces-filter.js +8 -25
- package/dist/commands/braces-filter.js.map +1 -1
- package/dist/commands/brat-generator.js +8 -29
- package/dist/commands/brat-generator.js.map +1 -1
- package/dist/commands/buzz-cut-ai.js +8 -33
- package/dist/commands/buzz-cut-ai.js.map +1 -1
- package/dist/commands/celeb-ai.js +11 -32
- package/dist/commands/celeb-ai.js.map +1 -1
- package/dist/commands/chibi-maker.js +8 -33
- package/dist/commands/chibi-maker.js.map +1 -1
- package/dist/commands/clothing-magic-remover.js +9 -26
- package/dist/commands/clothing-magic-remover.js.map +1 -1
- package/dist/commands/custom-bikini.js +11 -29
- package/dist/commands/custom-bikini.js.map +1 -1
- package/dist/commands/cute-anime-girl-ai-bikini.js +11 -29
- package/dist/commands/cute-anime-girl-ai-bikini.js.map +1 -1
- package/dist/commands/demon-slayer-oc-maker.js +8 -29
- package/dist/commands/demon-slayer-oc-maker.js.map +1 -1
- package/dist/commands/dress-remover-magic-eraser.js +9 -26
- package/dist/commands/dress-remover-magic-eraser.js.map +1 -1
- package/dist/commands/face-forge.js +20 -50
- package/dist/commands/face-forge.js.map +1 -1
- package/dist/commands/fat-ai.js +8 -33
- package/dist/commands/fat-ai.js.map +1 -1
- package/dist/commands/firered-image-edit.js +14 -39
- package/dist/commands/firered-image-edit.js.map +1 -1
- package/dist/commands/flat-lay.js +13 -36
- package/dist/commands/flat-lay.js.map +1 -1
- package/dist/commands/free-4k-video-upscaler.js +8 -24
- package/dist/commands/free-4k-video-upscaler.js.map +1 -1
- package/dist/commands/free-ai-girlfriend-generator.js +8 -29
- package/dist/commands/free-ai-girlfriend-generator.js.map +1 -1
- package/dist/commands/free-online-video-quality-enhancer.js +8 -24
- package/dist/commands/free-online-video-quality-enhancer.js.map +1 -1
- package/dist/commands/free-sexy-ai-generator.js +11 -29
- package/dist/commands/free-sexy-ai-generator.js.map +1 -1
- package/dist/commands/futuristic-elegance.js +8 -33
- package/dist/commands/futuristic-elegance.js.map +1 -1
- package/dist/commands/gemini-watermark-remover.js +6 -22
- package/dist/commands/gemini-watermark-remover.js.map +1 -1
- package/dist/commands/gender-swap.js +8 -33
- package/dist/commands/gender-swap.js.map +1 -1
- package/dist/commands/ghibli-art-create.js +8 -29
- package/dist/commands/ghibli-art-create.js.map +1 -1
- package/dist/commands/grok-imagine-video.js +12 -30
- package/dist/commands/grok-imagine-video.js.map +1 -1
- package/dist/commands/grok-imagine.js +8 -29
- package/dist/commands/grok-imagine.js.map +1 -1
- package/dist/commands/hair-color-try-on.js +8 -28
- package/dist/commands/hair-color-try-on.js.map +1 -1
- package/dist/commands/happy-woman-bikini-ai-pic.js +11 -29
- package/dist/commands/happy-woman-bikini-ai-pic.js.map +1 -1
- package/dist/commands/hot-bikini-models.js +11 -29
- package/dist/commands/hot-bikini-models.js.map +1 -1
- package/dist/commands/image-mixer.js +11 -35
- package/dist/commands/image-mixer.js.map +1 -1
- package/dist/commands/image-to-sketch.js +8 -25
- package/dist/commands/image-to-sketch.js.map +1 -1
- package/dist/commands/improve-video-quality-online-free.js +8 -24
- package/dist/commands/improve-video-quality-online-free.js.map +1 -1
- package/dist/commands/kling.js +16 -43
- package/dist/commands/kling.js.map +1 -1
- package/dist/commands/logo-remover-from-video.js +6 -22
- package/dist/commands/logo-remover-from-video.js.map +1 -1
- package/dist/commands/midjourney.js +10 -31
- package/dist/commands/midjourney.js.map +1 -1
- package/dist/commands/mugshot-creator.js +8 -25
- package/dist/commands/mugshot-creator.js.map +1 -1
- package/dist/commands/murder-drones-oc.js +8 -29
- package/dist/commands/murder-drones-oc.js.map +1 -1
- package/dist/commands/outfit-generator.js +8 -33
- package/dist/commands/outfit-generator.js.map +1 -1
- package/dist/commands/personalized-swimsuit.js +11 -29
- package/dist/commands/personalized-swimsuit.js.map +1 -1
- package/dist/commands/photo-to-bikini-ai.js +8 -25
- package/dist/commands/photo-to-bikini-ai.js.map +1 -1
- package/dist/commands/pregnant-ai.js +10 -33
- package/dist/commands/pregnant-ai.js.map +1 -1
- package/dist/commands/ps2-filter.js +8 -25
- package/dist/commands/ps2-filter.js.map +1 -1
- package/dist/commands/qwen-image-edit.js +11 -44
- package/dist/commands/qwen-image-edit.js.map +1 -1
- package/dist/commands/random-animal-generator.js +8 -29
- package/dist/commands/random-animal-generator.js.map +1 -1
- package/dist/commands/remove-filter-from-photo.js +8 -29
- package/dist/commands/remove-filter-from-photo.js.map +1 -1
- package/dist/commands/remove-subtitles-from-video-online-free.js +6 -22
- package/dist/commands/remove-subtitles-from-video-online-free.js.map +1 -1
- package/dist/commands/remove-text-from-video-online-free.js +6 -22
- package/dist/commands/remove-text-from-video-online-free.js.map +1 -1
- package/dist/commands/replace-face-in-video-online-free.js +9 -31
- package/dist/commands/replace-face-in-video-online-free.js.map +1 -1
- package/dist/commands/see-through-clothes-fitler.js +8 -25
- package/dist/commands/see-through-clothes-fitler.js.map +1 -1
- package/dist/commands/seedance.js +14 -32
- package/dist/commands/seedance.js.map +1 -1
- package/dist/commands/seedream.js +19 -51
- package/dist/commands/seedream.js.map +1 -1
- package/dist/commands/sex-ai-generator.js +11 -29
- package/dist/commands/sex-ai-generator.js.map +1 -1
- package/dist/commands/sexy-ai-pics.js +9 -26
- package/dist/commands/sexy-ai-pics.js.map +1 -1
- package/dist/commands/skin-color-changer.js +8 -28
- package/dist/commands/skin-color-changer.js.map +1 -1
- package/dist/commands/sonic-oc.js +8 -29
- package/dist/commands/sonic-oc.js.map +1 -1
- package/dist/commands/sora-2.js +12 -30
- package/dist/commands/sora-2.js.map +1 -1
- package/dist/commands/sprunki-oc-maker.js +8 -29
- package/dist/commands/sprunki-oc-maker.js.map +1 -1
- package/dist/commands/square-face-icon-generator.js +8 -29
- package/dist/commands/square-face-icon-generator.js.map +1 -1
- package/dist/commands/stardew-valley-portrait-maker.js +8 -29
- package/dist/commands/stardew-valley-portrait-maker.js.map +1 -1
- package/dist/commands/string-bikini-beauty-contest.js +11 -29
- package/dist/commands/string-bikini-beauty-contest.js.map +1 -1
- package/dist/commands/swimsuit-try-on-haul.js +11 -29
- package/dist/commands/swimsuit-try-on-haul.js.map +1 -1
- package/dist/commands/video-resolution-enhancer-online-free.js +8 -24
- package/dist/commands/video-resolution-enhancer-online-free.js.map +1 -1
- package/dist/commands/video-upscaler-online-free.js +8 -24
- package/dist/commands/video-upscaler-online-free.js.map +1 -1
- package/dist/commands/video-watermark-remover.js +8 -27
- package/dist/commands/video-watermark-remover.js.map +1 -1
- package/dist/commands/wan-ai.js +11 -29
- package/dist/commands/wan-ai.js.map +1 -1
- package/dist/commands/wild-graffiti.js +8 -29
- package/dist/commands/wild-graffiti.js.map +1 -1
- package/dist/commands/z-image.js +11 -32
- package/dist/commands/z-image.js.map +1 -1
- package/dist/index.js +1 -1
- package/dist/run-helper.d.ts +7 -1
- package/dist/run-helper.js +33 -4
- package/dist/run-helper.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { Command } from "commander";
|
|
2
|
-
import {
|
|
3
|
-
import { printSubmitted, printPollResult, printError } from "../printer.js";
|
|
2
|
+
import { executeRun } from "../run-helper.js";
|
|
4
3
|
const DEFAULT_PROMPT = "naturally undress and change the outfit into a thin bikini while keeping body proportions natural. Keep Model dancing tiktok dance.";
|
|
5
4
|
export const hotBikiniModelsCmd = new Command("hot-bikini-models")
|
|
6
5
|
.summary("Hot bikini models — transform a person photo into a bikini model image or video")
|
|
@@ -21,32 +20,15 @@ export const hotBikiniModelsCmd = new Command("hot-bikini-models")
|
|
|
21
20
|
.option("--task-name <name>", "Human-readable label for this run")
|
|
22
21
|
.option("--no-wait", "Return immediately after submission; use 'weshop status <id>' to check later")
|
|
23
22
|
.action(async (opts) => {
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
if (opts.taskName)
|
|
35
|
-
input.taskName = opts.taskName;
|
|
36
|
-
const body = { agent: { name: "hot-bikini-models", version: "v1.0" }, input, params };
|
|
37
|
-
const { executionId } = await submitRun(body);
|
|
38
|
-
printSubmitted(executionId);
|
|
39
|
-
if (opts.wait !== false) {
|
|
40
|
-
printPollResult(await waitForCompletion(executionId));
|
|
41
|
-
}
|
|
42
|
-
else {
|
|
43
|
-
console.log("[info]");
|
|
44
|
-
console.log(` message: Use 'weshop status ${executionId}' to check progress`);
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
catch (err) {
|
|
48
|
-
printError(err);
|
|
49
|
-
process.exit(1);
|
|
50
|
-
}
|
|
23
|
+
const params = {
|
|
24
|
+
textDescription: opts.prompt ?? DEFAULT_PROMPT,
|
|
25
|
+
generatedType: opts.generatedType ?? "video",
|
|
26
|
+
};
|
|
27
|
+
if (opts.batch != null)
|
|
28
|
+
params.batchCount = opts.batch;
|
|
29
|
+
const extraInput = {};
|
|
30
|
+
if (opts.taskName)
|
|
31
|
+
extraInput.taskName = opts.taskName;
|
|
32
|
+
await executeRun("hot-bikini-models", "v1.0", { image: opts.image, wait: opts.wait }, params, extraInput);
|
|
51
33
|
});
|
|
52
34
|
//# sourceMappingURL=hot-bikini-models.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hot-bikini-models.js","sourceRoot":"","sources":["../../src/commands/hot-bikini-models.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"hot-bikini-models.js","sourceRoot":"","sources":["../../src/commands/hot-bikini-models.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C,MAAM,cAAc,GAClB,qIAAqI,CAAC;AAExI,MAAM,CAAC,MAAM,kBAAkB,GAAG,IAAI,OAAO,CAAC,mBAAmB,CAAC;KAC/D,OAAO,CAAC,iFAAiF,CAAC;KAC1F,WAAW,CACV,iFAAiF;IACjF,sCAAsC;IACtC,8CAA8C;IAC9C,sCAAsC;IACtC,mDAAmD;IACnD,MAAM,cAAc,OAAO;IAC3B,aAAa;IACb,sFAAsF;IACtF,oFAAoF;IACpF,kFAAkF,CACnF;KACA,cAAc,CAAC,oBAAoB,EAAE,4DAA4D,CAAC;KAClG,MAAM,CAAC,iBAAiB,EAAE,yCAAyC,CAAC;KACpE,MAAM,CAAC,yBAAyB,EAAE,uCAAuC,CAAC;KAC1E,MAAM,CAAC,iBAAiB,EAAE,kDAAkD,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;KACxG,MAAM,CAAC,oBAAoB,EAAE,mCAAmC,CAAC;KACjE,MAAM,CAAC,WAAW,EAAE,8EAA8E,CAAC;KACnG,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;IACrB,MAAM,MAAM,GAA4B;QACtC,eAAe,EAAE,IAAI,CAAC,MAAM,IAAI,cAAc;QAC9C,aAAa,EAAE,IAAI,CAAC,aAAa,IAAI,OAAO;KAC7C,CAAC;IACF,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI;QAAE,MAAM,CAAC,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC;IACvD,MAAM,UAAU,GAA4B,EAAE,CAAC;IAC/C,IAAI,IAAI,CAAC,QAAQ;QAAE,UAAU,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;IACvD,MAAM,UAAU,CAAC,mBAAmB,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC;AAC5G,CAAC,CAAC,CAAC"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { Command } from "commander";
|
|
2
|
-
import {
|
|
3
|
-
import { printSubmitted, printPollResult, printError } from "../printer.js";
|
|
2
|
+
import { executeRun } from "../run-helper.js";
|
|
4
3
|
const DEFAULT_PROMPT = "Merge these two photos together naturally. Don't simply put element on the another image, try to generate a merged photo.";
|
|
5
4
|
export const imageMixerCmd = new Command("image-mixer")
|
|
6
5
|
.summary("Image mixer — naturally merge two photos into a single cohesive image")
|
|
@@ -18,40 +17,17 @@ export const imageMixerCmd = new Command("image-mixer")
|
|
|
18
17
|
.option("--task-name <name>", "Human-readable label for this run")
|
|
19
18
|
.option("--no-wait", "Return immediately after submission; use 'weshop status <id>' to check later")
|
|
20
19
|
.action(async (opts) => {
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
console.error("[error]\n message: Exactly 2 images required for image-mixer");
|
|
25
|
-
process.exit(1);
|
|
26
|
-
}
|
|
27
|
-
const urls = [];
|
|
28
|
-
for (const img of imageList) {
|
|
29
|
-
const { url } = await resolveImage(img);
|
|
30
|
-
urls.push(url);
|
|
31
|
-
}
|
|
32
|
-
const params = {
|
|
33
|
-
textDescription: opts.prompt ?? DEFAULT_PROMPT,
|
|
34
|
-
images: urls,
|
|
35
|
-
};
|
|
36
|
-
if (opts.batch != null)
|
|
37
|
-
params.batchCount = opts.batch;
|
|
38
|
-
const input = { originalImage: urls[0] };
|
|
39
|
-
if (opts.taskName)
|
|
40
|
-
input.taskName = opts.taskName;
|
|
41
|
-
const body = { agent: { name: "image-mixer", version: "v1.0" }, input, params };
|
|
42
|
-
const { executionId } = await submitRun(body);
|
|
43
|
-
printSubmitted(executionId);
|
|
44
|
-
if (opts.wait !== false) {
|
|
45
|
-
printPollResult(await waitForCompletion(executionId));
|
|
46
|
-
}
|
|
47
|
-
else {
|
|
48
|
-
console.log("[info]");
|
|
49
|
-
console.log(` message: Use 'weshop status ${executionId}' to check progress`);
|
|
50
|
-
}
|
|
51
|
-
}
|
|
52
|
-
catch (err) {
|
|
53
|
-
printError(err);
|
|
20
|
+
const imageList = opts.image;
|
|
21
|
+
if (imageList.length !== 2) {
|
|
22
|
+
console.error("[error]\n message: Exactly 2 images required for image-mixer");
|
|
54
23
|
process.exit(1);
|
|
55
24
|
}
|
|
25
|
+
const params = { textDescription: opts.prompt ?? DEFAULT_PROMPT };
|
|
26
|
+
if (opts.batch != null)
|
|
27
|
+
params.batchCount = opts.batch;
|
|
28
|
+
const extraInput = {};
|
|
29
|
+
if (opts.taskName)
|
|
30
|
+
extraInput.taskName = opts.taskName;
|
|
31
|
+
await executeRun("image-mixer", "v1.0", { images: imageList, wait: opts.wait }, params, extraInput);
|
|
56
32
|
});
|
|
57
33
|
//# sourceMappingURL=image-mixer.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"image-mixer.js","sourceRoot":"","sources":["../../src/commands/image-mixer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"image-mixer.js","sourceRoot":"","sources":["../../src/commands/image-mixer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C,MAAM,cAAc,GAClB,2HAA2H,CAAC;AAE9H,MAAM,CAAC,MAAM,aAAa,GAAG,IAAI,OAAO,CAAC,aAAa,CAAC;KACpD,OAAO,CAAC,uEAAuE,CAAC;KAChF,WAAW,CACV,oEAAoE;IACpE,0FAA0F;IAC1F,mDAAmD;IACnD,MAAM,cAAc,OAAO;IAC3B,aAAa;IACb,kEAAkE;IAClE,mIAAmI;IACnI,gEAAgE,CACjE;KACA,cAAc,CAAC,uBAAuB,EAAE,mEAAmE,CAAC;KAC5G,MAAM,CAAC,iBAAiB,EAAE,iEAAiE,CAAC;KAC5F,MAAM,CAAC,iBAAiB,EAAE,iDAAiD,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;KACvG,MAAM,CAAC,oBAAoB,EAAE,mCAAmC,CAAC;KACjE,MAAM,CAAC,WAAW,EAAE,8EAA8E,CAAC;KACnG,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;IACrB,MAAM,SAAS,GAAa,IAAI,CAAC,KAAK,CAAC;IACvC,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC3B,OAAO,CAAC,KAAK,CAAC,+DAA+D,CAAC,CAAC;QAC/E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,MAAM,MAAM,GAA4B,EAAE,eAAe,EAAE,IAAI,CAAC,MAAM,IAAI,cAAc,EAAE,CAAC;IAC3F,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI;QAAE,MAAM,CAAC,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC;IACvD,MAAM,UAAU,GAA4B,EAAE,CAAC;IAC/C,IAAI,IAAI,CAAC,QAAQ;QAAE,UAAU,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;IACvD,MAAM,UAAU,CAAC,aAAa,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC;AACtG,CAAC,CAAC,CAAC"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { Command } from "commander";
|
|
2
|
-
import {
|
|
3
|
-
import { printSubmitted, printPollResult, printError } from "../printer.js";
|
|
2
|
+
import { executeRun } from "../run-helper.js";
|
|
4
3
|
const DEFAULT_PROMPT = "Turn this image into rough pencil sketch without changing details.";
|
|
5
4
|
export const imageToSketchCmd = new Command("image-to-sketch")
|
|
6
5
|
.summary("AI image to sketch — convert a photo into a rough pencil sketch")
|
|
@@ -17,28 +16,12 @@ export const imageToSketchCmd = new Command("image-to-sketch")
|
|
|
17
16
|
.option("--task-name <name>", "Human-readable label for this run")
|
|
18
17
|
.option("--no-wait", "Return immediately after submission; use 'weshop status <id>' to check later")
|
|
19
18
|
.action(async (opts) => {
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
input.taskName = opts.taskName;
|
|
28
|
-
const body = { agent: { name: "image-to-sketch", version: "v1.0" }, input, params };
|
|
29
|
-
const { executionId } = await submitRun(body);
|
|
30
|
-
printSubmitted(executionId);
|
|
31
|
-
if (opts.wait !== false) {
|
|
32
|
-
printPollResult(await waitForCompletion(executionId));
|
|
33
|
-
}
|
|
34
|
-
else {
|
|
35
|
-
console.log("[info]");
|
|
36
|
-
console.log(` message: Use 'weshop status ${executionId}' to check progress`);
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
catch (err) {
|
|
40
|
-
printError(err);
|
|
41
|
-
process.exit(1);
|
|
42
|
-
}
|
|
19
|
+
const params = { textDescription: opts.prompt ?? DEFAULT_PROMPT };
|
|
20
|
+
if (opts.batch != null)
|
|
21
|
+
params.batchCount = opts.batch;
|
|
22
|
+
const extraInput = {};
|
|
23
|
+
if (opts.taskName)
|
|
24
|
+
extraInput.taskName = opts.taskName;
|
|
25
|
+
await executeRun("image-to-sketch", "v1.0", { image: opts.image, wait: opts.wait }, params, extraInput);
|
|
43
26
|
});
|
|
44
27
|
//# sourceMappingURL=image-to-sketch.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"image-to-sketch.js","sourceRoot":"","sources":["../../src/commands/image-to-sketch.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"image-to-sketch.js","sourceRoot":"","sources":["../../src/commands/image-to-sketch.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C,MAAM,cAAc,GAAG,oEAAoE,CAAC;AAE5F,MAAM,CAAC,MAAM,gBAAgB,GAAG,IAAI,OAAO,CAAC,iBAAiB,CAAC;KAC3D,OAAO,CAAC,iEAAiE,CAAC;KAC1E,WAAW,CACV,yFAAyF;IACzF,mDAAmD;IACnD,MAAM,cAAc,OAAO;IAC3B,aAAa;IACb,gDAAgD;IAChD,qGAAqG;IACrG,wDAAwD,CACzD;KACA,cAAc,CAAC,oBAAoB,EAAE,sCAAsC,CAAC;KAC5E,MAAM,CAAC,iBAAiB,EAAE,iCAAiC,CAAC;KAC5D,MAAM,CAAC,iBAAiB,EAAE,iDAAiD,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;KACvG,MAAM,CAAC,oBAAoB,EAAE,mCAAmC,CAAC;KACjE,MAAM,CAAC,WAAW,EAAE,8EAA8E,CAAC;KACnG,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;IACrB,MAAM,MAAM,GAA4B,EAAE,eAAe,EAAE,IAAI,CAAC,MAAM,IAAI,cAAc,EAAE,CAAC;IAC3F,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI;QAAE,MAAM,CAAC,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC;IACvD,MAAM,UAAU,GAA4B,EAAE,CAAC;IAC/C,IAAI,IAAI,CAAC,QAAQ;QAAE,UAAU,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;IACvD,MAAM,UAAU,CAAC,iBAAiB,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC;AAC1G,CAAC,CAAC,CAAC"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { Command } from "commander";
|
|
2
|
-
import {
|
|
3
|
-
import { printSubmitted, printPollResult, printError } from "../printer.js";
|
|
2
|
+
import { executeRun } from "../run-helper.js";
|
|
4
3
|
export const improveVideoQualityOnlineFreeCmd = new Command("improve-video-quality-online-free")
|
|
5
4
|
.summary("Improve video quality online free — upscale and enhance video quality using AI")
|
|
6
5
|
.description("Upscale and enhance video quality using AI.\n\n" +
|
|
@@ -16,27 +15,12 @@ export const improveVideoQualityOnlineFreeCmd = new Command("improve-video-quali
|
|
|
16
15
|
.option("--task-name <name>", "Human-readable label for this run")
|
|
17
16
|
.option("--no-wait", "Return immediately after submission; use 'weshop status <id>' to check later")
|
|
18
17
|
.action(async (opts) => {
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
const body = { agent: { name: "improve-video-quality-online-free", version: "v1.0" }, input, params };
|
|
27
|
-
const { executionId } = await submitRun(body);
|
|
28
|
-
printSubmitted(executionId);
|
|
29
|
-
if (opts.wait !== false) {
|
|
30
|
-
printPollResult(await waitForCompletion(executionId));
|
|
31
|
-
}
|
|
32
|
-
else {
|
|
33
|
-
console.log("[info]");
|
|
34
|
-
console.log(` message: Use 'weshop status ${executionId}' to check progress`);
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
catch (err) {
|
|
38
|
-
printError(err);
|
|
39
|
-
process.exit(1);
|
|
40
|
-
}
|
|
18
|
+
const params = {};
|
|
19
|
+
if (opts.videoSize)
|
|
20
|
+
params.videoSize = opts.videoSize;
|
|
21
|
+
const extraInput = {};
|
|
22
|
+
if (opts.taskName)
|
|
23
|
+
extraInput.taskName = opts.taskName;
|
|
24
|
+
await executeRun("improve-video-quality-online-free", "v1.0", { videos: [opts.video], wait: opts.wait }, params, extraInput);
|
|
41
25
|
});
|
|
42
26
|
//# sourceMappingURL=improve-video-quality-online-free.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"improve-video-quality-online-free.js","sourceRoot":"","sources":["../../src/commands/improve-video-quality-online-free.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"improve-video-quality-online-free.js","sourceRoot":"","sources":["../../src/commands/improve-video-quality-online-free.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C,MAAM,CAAC,MAAM,gCAAgC,GAAG,IAAI,OAAO,CAAC,mCAAmC,CAAC;KAC7F,OAAO,CAAC,gFAAgF,CAAC;KACzF,WAAW,CACV,iDAAiD;IACjD,kFAAkF;IAClF,8DAA8D;IAC9D,sEAAsE;IACtE,aAAa;IACb,oFAAoF;IACpF,oGAAoG;IACpG,4FAA4F,CAC7F;KACA,cAAc,CAAC,eAAe,EAAE,iBAAiB,CAAC;KAClD,MAAM,CAAC,qBAAqB,EAAE,yCAAyC,CAAC;KACxE,MAAM,CAAC,oBAAoB,EAAE,mCAAmC,CAAC;KACjE,MAAM,CAAC,WAAW,EAAE,8EAA8E,CAAC;KACnG,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;IACrB,MAAM,MAAM,GAA4B,EAAE,CAAC;IAC3C,IAAI,IAAI,CAAC,SAAS;QAAE,MAAM,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;IACtD,MAAM,UAAU,GAA4B,EAAE,CAAC;IAC/C,IAAI,IAAI,CAAC,QAAQ;QAAE,UAAU,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;IACvD,MAAM,UAAU,CAAC,mCAAmC,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC;AAC/H,CAAC,CAAC,CAAC"}
|
package/dist/commands/kling.js
CHANGED
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { Command } from "commander";
|
|
2
|
-
import {
|
|
3
|
-
import { printSubmitted, printPollResult, printError } from "../printer.js";
|
|
2
|
+
import { executeRun } from "../run-helper.js";
|
|
4
3
|
export const klingCmd = new Command("kling")
|
|
5
4
|
.summary("AI video generation — create cinematic videos from images and text using Kling")
|
|
6
5
|
.description("AI video generation — create cinematic videos from images and text using Kling.\n\n" +
|
|
@@ -30,46 +29,20 @@ export const klingCmd = new Command("kling")
|
|
|
30
29
|
.option("--task-name <name>", "Human-readable label for this run")
|
|
31
30
|
.option("--no-wait", "Return immediately after submission; use 'weshop status <id>' to check later")
|
|
32
31
|
.action(async (opts) => {
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
params.batchCount = opts.batch;
|
|
49
|
-
const input = {
|
|
50
|
-
originalImage: imageUrl,
|
|
51
|
-
};
|
|
52
|
-
if (opts.taskName)
|
|
53
|
-
input.taskName = opts.taskName;
|
|
54
|
-
const body = {
|
|
55
|
-
agent: { name: "kling", version: "v1.0" },
|
|
56
|
-
input,
|
|
57
|
-
params,
|
|
58
|
-
};
|
|
59
|
-
const { executionId } = await submitRun(body);
|
|
60
|
-
printSubmitted(executionId);
|
|
61
|
-
if (opts.wait !== false) {
|
|
62
|
-
const data = await waitForCompletion(executionId);
|
|
63
|
-
printPollResult(data);
|
|
64
|
-
}
|
|
65
|
-
else {
|
|
66
|
-
console.log("[info]");
|
|
67
|
-
console.log(` message: Use 'weshop status ${executionId}' to check progress`);
|
|
68
|
-
}
|
|
69
|
-
}
|
|
70
|
-
catch (err) {
|
|
71
|
-
printError(err);
|
|
72
|
-
process.exit(1);
|
|
73
|
-
}
|
|
32
|
+
const params = {
|
|
33
|
+
textDescription: opts.prompt,
|
|
34
|
+
};
|
|
35
|
+
if (opts.model)
|
|
36
|
+
params.modelName = opts.model;
|
|
37
|
+
if (opts.duration)
|
|
38
|
+
params.duration = opts.duration;
|
|
39
|
+
if (opts.generateAudio !== undefined)
|
|
40
|
+
params.generateAudio = opts.generateAudio;
|
|
41
|
+
if (opts.batch != null)
|
|
42
|
+
params.batchCount = opts.batch;
|
|
43
|
+
const extraInput = {};
|
|
44
|
+
if (opts.taskName)
|
|
45
|
+
extraInput.taskName = opts.taskName;
|
|
46
|
+
await executeRun("kling", "v1.0", { image: opts.image, wait: opts.wait }, params, extraInput);
|
|
74
47
|
});
|
|
75
48
|
//# sourceMappingURL=kling.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"kling.js","sourceRoot":"","sources":["../../src/commands/kling.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"kling.js","sourceRoot":"","sources":["../../src/commands/kling.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C,MAAM,CAAC,MAAM,QAAQ,GAAG,IAAI,OAAO,CAAC,OAAO,CAAC;KACzC,OAAO,CAAC,gFAAgF,CAAC;KACzF,WAAW,CACV,qFAAqF;IACrF,uFAAuF;IACvF,+DAA+D;IAC/D,oBAAoB;IACpB,wFAAwF;IACxF,kDAAkD;IAClD,yDAAyD;IACzD,uDAAuD;IACvD,mCAAmC;IACnC,0BAA0B;IAC1B,yFAAyF;IACzF,0CAA0C;IAC1C,wCAAwC;IACxC,6EAA6E;IAC7E,aAAa;IACb,0FAA0F;IAC1F,4GAA4G;IAC5G,qIAAqI,CACtI;KACA,cAAc,CAAC,oBAAoB,EAAE,iDAAiD,CAAC;KACvF,cAAc,CAAC,iBAAiB,EAAE,sCAAsC,CAAC;KACzE,MAAM,CAAC,gBAAgB,EAAE,0CAA0C,CAAC;KACpE,MAAM,CAAC,mBAAmB,EAAE,4CAA4C,CAAC;KACzE,MAAM,CAAC,yBAAyB,EAAE,8DAA8D,CAAC;KACjG,MAAM,CAAC,iBAAiB,EAAE,iDAAiD,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;KACvG,MAAM,CAAC,oBAAoB,EAAE,mCAAmC,CAAC;KACjE,MAAM,CAAC,WAAW,EAAE,8EAA8E,CAAC;KACnG,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;IACrB,MAAM,MAAM,GAA4B;QACtC,eAAe,EAAE,IAAI,CAAC,MAAM;KAC7B,CAAC;IACF,IAAI,IAAI,CAAC,KAAK;QAAE,MAAM,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC;IAC9C,IAAI,IAAI,CAAC,QAAQ;QAAE,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;IACnD,IAAI,IAAI,CAAC,aAAa,KAAK,SAAS;QAAE,MAAM,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC;IAChF,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI;QAAE,MAAM,CAAC,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC;IAEvD,MAAM,UAAU,GAA4B,EAAE,CAAC;IAC/C,IAAI,IAAI,CAAC,QAAQ;QAAE,UAAU,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;IAEvD,MAAM,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC;AAChG,CAAC,CAAC,CAAC"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { Command } from "commander";
|
|
2
|
-
import {
|
|
3
|
-
import { printSubmitted, printPollResult, printError } from "../printer.js";
|
|
2
|
+
import { executeRun } from "../run-helper.js";
|
|
4
3
|
export const logoRemoverFromVideoCmd = new Command("logo-remover-from-video")
|
|
5
4
|
.summary("Logo remover from video — remove logos or watermarks from a video")
|
|
6
5
|
.description("Remove logos, watermarks, or brand overlays from a video using AI.\n\n" +
|
|
@@ -13,25 +12,10 @@ export const logoRemoverFromVideoCmd = new Command("logo-remover-from-video")
|
|
|
13
12
|
.option("--task-name <name>", "Human-readable label for this run")
|
|
14
13
|
.option("--no-wait", "Return immediately after submission; use 'weshop status <id>' to check later")
|
|
15
14
|
.action(async (opts) => {
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
const body = { agent: { name: "logo-remover-from-video", version: "v1.0" }, input, params };
|
|
22
|
-
const { executionId } = await submitRun(body);
|
|
23
|
-
printSubmitted(executionId);
|
|
24
|
-
if (opts.wait !== false) {
|
|
25
|
-
printPollResult(await waitForCompletion(executionId));
|
|
26
|
-
}
|
|
27
|
-
else {
|
|
28
|
-
console.log("[info]");
|
|
29
|
-
console.log(` message: Use 'weshop status ${executionId}' to check progress`);
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
catch (err) {
|
|
33
|
-
printError(err);
|
|
34
|
-
process.exit(1);
|
|
35
|
-
}
|
|
15
|
+
const params = { watermarkSelectType: "autoDetect" };
|
|
16
|
+
const extraInput = {};
|
|
17
|
+
if (opts.taskName)
|
|
18
|
+
extraInput.taskName = opts.taskName;
|
|
19
|
+
await executeRun("logo-remover-from-video", "v1.0", { videos: [opts.video], wait: opts.wait }, params, extraInput);
|
|
36
20
|
});
|
|
37
21
|
//# sourceMappingURL=logo-remover-from-video.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logo-remover-from-video.js","sourceRoot":"","sources":["../../src/commands/logo-remover-from-video.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"logo-remover-from-video.js","sourceRoot":"","sources":["../../src/commands/logo-remover-from-video.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C,MAAM,CAAC,MAAM,uBAAuB,GAAG,IAAI,OAAO,CAAC,yBAAyB,CAAC;KAC1E,OAAO,CAAC,mEAAmE,CAAC;KAC5E,WAAW,CACV,wEAAwE;IACxE,kFAAkF;IAClF,8DAA8D;IAC9D,aAAa;IACb,0EAA0E;IAC1E,kFAAkF,CACnF;KACA,cAAc,CAAC,eAAe,EAAE,iBAAiB,CAAC;KAClD,MAAM,CAAC,oBAAoB,EAAE,mCAAmC,CAAC;KACjE,MAAM,CAAC,WAAW,EAAE,8EAA8E,CAAC;KACnG,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;IACrB,MAAM,MAAM,GAA4B,EAAE,mBAAmB,EAAE,YAAY,EAAE,CAAC;IAC9E,MAAM,UAAU,GAA4B,EAAE,CAAC;IAC/C,IAAI,IAAI,CAAC,QAAQ;QAAE,UAAU,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;IACvD,MAAM,UAAU,CAAC,yBAAyB,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC;AACrH,CAAC,CAAC,CAAC"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { Command } from "commander";
|
|
2
|
-
import {
|
|
3
|
-
import { printSubmitted, printPollResult, printError } from "../printer.js";
|
|
2
|
+
import { executeRun } from "../run-helper.js";
|
|
4
3
|
export const midjourneyCmd = new Command("midjourney")
|
|
5
4
|
.summary("Midjourney image generator — create high-quality images using Midjourney v6.1, v7, or Niji 6")
|
|
6
5
|
.description("Generate images using Midjourney models. Image is optional.\n\n" +
|
|
@@ -21,34 +20,14 @@ export const midjourneyCmd = new Command("midjourney")
|
|
|
21
20
|
.option("--task-name <name>", "Human-readable label for this run")
|
|
22
21
|
.option("--no-wait", "Return immediately after submission; use 'weshop status <id>' to check later")
|
|
23
22
|
.action(async (opts) => {
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
if (opts.image) {
|
|
34
|
-
const { url: imageUrl } = await resolveImage(opts.image);
|
|
35
|
-
params.images = [imageUrl];
|
|
36
|
-
input.originalImage = imageUrl;
|
|
37
|
-
}
|
|
38
|
-
const body = { agent: { name: "midjourney", version: "v1.0" }, input, params };
|
|
39
|
-
const { executionId } = await submitRun(body);
|
|
40
|
-
printSubmitted(executionId);
|
|
41
|
-
if (opts.wait !== false) {
|
|
42
|
-
printPollResult(await waitForCompletion(executionId));
|
|
43
|
-
}
|
|
44
|
-
else {
|
|
45
|
-
console.log("[info]");
|
|
46
|
-
console.log(` message: Use 'weshop status ${executionId}' to check progress`);
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
catch (err) {
|
|
50
|
-
printError(err);
|
|
51
|
-
process.exit(1);
|
|
52
|
-
}
|
|
23
|
+
const params = {
|
|
24
|
+
textDescription: opts.prompt,
|
|
25
|
+
modelName: opts.model ?? "Midjourney_6_1",
|
|
26
|
+
aspectRatio: opts.aspectRatio ?? "1:1",
|
|
27
|
+
};
|
|
28
|
+
const extraInput = {};
|
|
29
|
+
if (opts.taskName)
|
|
30
|
+
extraInput.taskName = opts.taskName;
|
|
31
|
+
await executeRun("midjourney", "v1.0", { image: opts.image, wait: opts.wait }, params, extraInput);
|
|
53
32
|
});
|
|
54
33
|
//# sourceMappingURL=midjourney.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"midjourney.js","sourceRoot":"","sources":["../../src/commands/midjourney.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"midjourney.js","sourceRoot":"","sources":["../../src/commands/midjourney.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C,MAAM,CAAC,MAAM,aAAa,GAAG,IAAI,OAAO,CAAC,YAAY,CAAC;KACnD,OAAO,CAAC,8FAA8F,CAAC;KACvG,WAAW,CACV,iEAAiE;IACjE,oBAAoB;IACpB,gDAAgD;IAChD,oCAAoC;IACpC,+CAA+C;IAC/C,kCAAkC;IAClC,iDAAiD;IACjD,aAAa;IACb,kFAAkF;IAClF,2GAA2G;IAC3G,qGAAqG,CACtG;KACA,MAAM,CAAC,oBAAoB,EAAE,qDAAqD,CAAC;KACnF,cAAc,CAAC,iBAAiB,EAAE,4BAA4B,CAAC;KAC/D,MAAM,CAAC,gBAAgB,EAAE,qEAAqE,CAAC;KAC/F,MAAM,CAAC,wBAAwB,EAAE,+DAA+D,CAAC;KACjG,MAAM,CAAC,oBAAoB,EAAE,mCAAmC,CAAC;KACjE,MAAM,CAAC,WAAW,EAAE,8EAA8E,CAAC;KACnG,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;IACrB,MAAM,MAAM,GAA4B;QACtC,eAAe,EAAE,IAAI,CAAC,MAAM;QAC5B,SAAS,EAAE,IAAI,CAAC,KAAK,IAAI,gBAAgB;QACzC,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,KAAK;KACvC,CAAC;IAEF,MAAM,UAAU,GAA4B,EAAE,CAAC;IAC/C,IAAI,IAAI,CAAC,QAAQ;QAAE,UAAU,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;IAEvD,MAAM,UAAU,CAAC,YAAY,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC;AACrG,CAAC,CAAC,CAAC"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { Command } from "commander";
|
|
2
|
-
import {
|
|
3
|
-
import { printSubmitted, printPollResult, printError } from "../printer.js";
|
|
2
|
+
import { executeRun } from "../run-helper.js";
|
|
4
3
|
const DEFAULT_PROMPT = "Generate a mugshot of this person, height measurement background, keep face and appearance detail.";
|
|
5
4
|
export const mugshotCreatorCmd = new Command("mugshot-creator")
|
|
6
5
|
.summary("AI mugshot creator — generate a police-style mugshot photo from a portrait")
|
|
@@ -18,28 +17,12 @@ export const mugshotCreatorCmd = new Command("mugshot-creator")
|
|
|
18
17
|
.option("--task-name <name>", "Human-readable label for this run")
|
|
19
18
|
.option("--no-wait", "Return immediately after submission; use 'weshop status <id>' to check later")
|
|
20
19
|
.action(async (opts) => {
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
input.taskName = opts.taskName;
|
|
29
|
-
const body = { agent: { name: "mugshot-creator", version: "v1.0" }, input, params };
|
|
30
|
-
const { executionId } = await submitRun(body);
|
|
31
|
-
printSubmitted(executionId);
|
|
32
|
-
if (opts.wait !== false) {
|
|
33
|
-
printPollResult(await waitForCompletion(executionId));
|
|
34
|
-
}
|
|
35
|
-
else {
|
|
36
|
-
console.log("[info]");
|
|
37
|
-
console.log(` message: Use 'weshop status ${executionId}' to check progress`);
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
catch (err) {
|
|
41
|
-
printError(err);
|
|
42
|
-
process.exit(1);
|
|
43
|
-
}
|
|
20
|
+
const params = { textDescription: opts.prompt ?? DEFAULT_PROMPT };
|
|
21
|
+
if (opts.batch != null)
|
|
22
|
+
params.batchCount = opts.batch;
|
|
23
|
+
const extraInput = {};
|
|
24
|
+
if (opts.taskName)
|
|
25
|
+
extraInput.taskName = opts.taskName;
|
|
26
|
+
await executeRun("mugshot-creator", "v1.0", { image: opts.image, wait: opts.wait }, params, extraInput);
|
|
44
27
|
});
|
|
45
28
|
//# sourceMappingURL=mugshot-creator.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mugshot-creator.js","sourceRoot":"","sources":["../../src/commands/mugshot-creator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"mugshot-creator.js","sourceRoot":"","sources":["../../src/commands/mugshot-creator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C,MAAM,cAAc,GAClB,oGAAoG,CAAC;AAEvG,MAAM,CAAC,MAAM,iBAAiB,GAAG,IAAI,OAAO,CAAC,iBAAiB,CAAC;KAC5D,OAAO,CAAC,4EAA4E,CAAC;KACrF,WAAW,CACV,kFAAkF;IAClF,8DAA8D;IAC9D,mDAAmD;IACnD,MAAM,cAAc,OAAO;IAC3B,aAAa;IACb,iDAAiD;IACjD,wGAAwG;IACxG,yDAAyD,CAC1D;KACA,cAAc,CAAC,oBAAoB,EAAE,+CAA+C,CAAC;KACrF,MAAM,CAAC,iBAAiB,EAAE,4BAA4B,CAAC;KACvD,MAAM,CAAC,iBAAiB,EAAE,iDAAiD,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;KACvG,MAAM,CAAC,oBAAoB,EAAE,mCAAmC,CAAC;KACjE,MAAM,CAAC,WAAW,EAAE,8EAA8E,CAAC;KACnG,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;IACrB,MAAM,MAAM,GAA4B,EAAE,eAAe,EAAE,IAAI,CAAC,MAAM,IAAI,cAAc,EAAE,CAAC;IAC3F,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI;QAAE,MAAM,CAAC,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC;IACvD,MAAM,UAAU,GAA4B,EAAE,CAAC;IAC/C,IAAI,IAAI,CAAC,QAAQ;QAAE,UAAU,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;IACvD,MAAM,UAAU,CAAC,iBAAiB,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC;AAC1G,CAAC,CAAC,CAAC"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { Command } from "commander";
|
|
2
|
-
import {
|
|
3
|
-
import { printSubmitted, printPollResult, printError } from "../printer.js";
|
|
2
|
+
import { executeRun } from "../run-helper.js";
|
|
4
3
|
const DEFAULT_PROMPT = "Convert the person from the reference image into a Murder Drones inspired OC. Strictly maintain facial identity, head shape, and signature traits, while transforming the body into an elegant yet dangerous robotic drone form. Smooth black metal armor, luminous LED accents, claw-like fingers, floating mechanical components, glowing visor or eyes, dark cyberpunk environment, cinematic lighting, high detail sci-fi illustration, clean composition, 4k, character concept art, masterpiece.";
|
|
5
4
|
export const murderDronesOcCmd = new Command("murder-drones-oc")
|
|
6
5
|
.summary("AI Murder Drones OC maker — transform a person into a Murder Drones-inspired robotic drone character")
|
|
@@ -19,32 +18,12 @@ export const murderDronesOcCmd = new Command("murder-drones-oc")
|
|
|
19
18
|
.option("--task-name <name>", "Human-readable label for this run")
|
|
20
19
|
.option("--no-wait", "Return immediately after submission; use 'weshop status <id>' to check later")
|
|
21
20
|
.action(async (opts) => {
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
if (opts.image) {
|
|
30
|
-
const { url: imageUrl } = await resolveImage(opts.image);
|
|
31
|
-
params.images = [imageUrl];
|
|
32
|
-
input.originalImage = imageUrl;
|
|
33
|
-
}
|
|
34
|
-
const body = { agent: { name: "murder-drones-oc", version: "v1.0" }, input, params };
|
|
35
|
-
const { executionId } = await submitRun(body);
|
|
36
|
-
printSubmitted(executionId);
|
|
37
|
-
if (opts.wait !== false) {
|
|
38
|
-
printPollResult(await waitForCompletion(executionId));
|
|
39
|
-
}
|
|
40
|
-
else {
|
|
41
|
-
console.log("[info]");
|
|
42
|
-
console.log(` message: Use 'weshop status ${executionId}' to check progress`);
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
|
-
catch (err) {
|
|
46
|
-
printError(err);
|
|
47
|
-
process.exit(1);
|
|
48
|
-
}
|
|
21
|
+
const params = { textDescription: opts.prompt ?? DEFAULT_PROMPT };
|
|
22
|
+
if (opts.batch != null)
|
|
23
|
+
params.batchCount = opts.batch;
|
|
24
|
+
const extraInput = {};
|
|
25
|
+
if (opts.taskName)
|
|
26
|
+
extraInput.taskName = opts.taskName;
|
|
27
|
+
await executeRun("murder-drones-oc", "v1.0", { image: opts.image, wait: opts.wait }, params, extraInput);
|
|
49
28
|
});
|
|
50
29
|
//# sourceMappingURL=murder-drones-oc.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"murder-drones-oc.js","sourceRoot":"","sources":["../../src/commands/murder-drones-oc.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"murder-drones-oc.js","sourceRoot":"","sources":["../../src/commands/murder-drones-oc.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C,MAAM,cAAc,GAClB,weAAwe,CAAC;AAE3e,MAAM,CAAC,MAAM,iBAAiB,GAAG,IAAI,OAAO,CAAC,kBAAkB,CAAC;KAC7D,OAAO,CAAC,sGAAsG,CAAC;KAC/G,WAAW,CACV,kFAAkF;IAClF,uDAAuD;IACvD,mDAAmD;IACnD,wFAAwF;IACxF,+DAA+D;IAC/D,aAAa;IACb,kDAAkD;IAClD,4FAA4F;IAC5F,0DAA0D,CAC3D;KACA,MAAM,CAAC,oBAAoB,EAAE,4DAA4D,CAAC;KAC1F,MAAM,CAAC,iBAAiB,EAAE,qCAAqC,CAAC;KAChE,MAAM,CAAC,iBAAiB,EAAE,iDAAiD,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;KACvG,MAAM,CAAC,oBAAoB,EAAE,mCAAmC,CAAC;KACjE,MAAM,CAAC,WAAW,EAAE,8EAA8E,CAAC;KACnG,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;IACrB,MAAM,MAAM,GAA4B,EAAE,eAAe,EAAE,IAAI,CAAC,MAAM,IAAI,cAAc,EAAE,CAAC;IAC3F,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI;QAAE,MAAM,CAAC,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC;IACvD,MAAM,UAAU,GAA4B,EAAE,CAAC;IAC/C,IAAI,IAAI,CAAC,QAAQ;QAAE,UAAU,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;IACvD,MAAM,UAAU,CAAC,kBAAkB,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC;AAC3G,CAAC,CAAC,CAAC"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { Command } from "commander";
|
|
2
|
-
import {
|
|
3
|
-
import { printSubmitted, printPollResult, printError } from "../printer.js";
|
|
2
|
+
import { executeRun } from "../run-helper.js";
|
|
4
3
|
const DEFAULT_PROMPT = "Design an complete new and recommended outfit based on the uploaded photo. Keep original face and body proportion, keep original pose and background; Keep original image composition; select the proper texture used for outfit. No annotations required.\n1. Analyze the core characteristics of the model, dressing style and potential personality of the subject.\n2. Extract the disassemblable first-level elements (coat, shoes, big expression)\n3. Generate a composite diagram containing all these elements, ensuring accurate perspective, unified lighting and shadow, keep everything else same.";
|
|
5
4
|
export const outfitGeneratorCmd = new Command("outfit-generator")
|
|
6
5
|
.summary("AI outfit generator — redesign a complete outfit on a person photo based on style prompt")
|
|
@@ -19,36 +18,12 @@ export const outfitGeneratorCmd = new Command("outfit-generator")
|
|
|
19
18
|
.option("--task-name <name>", "Human-readable label for this run")
|
|
20
19
|
.option("--no-wait", "Return immediately after submission; use 'weshop status <id>' to check later")
|
|
21
20
|
.action(async (opts) => {
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
params.batchCount = opts.batch;
|
|
30
|
-
const input = { originalImage: imageUrl };
|
|
31
|
-
if (opts.taskName)
|
|
32
|
-
input.taskName = opts.taskName;
|
|
33
|
-
const body = {
|
|
34
|
-
agent: { name: "outfit-generator", version: "v1.0" },
|
|
35
|
-
input,
|
|
36
|
-
params,
|
|
37
|
-
};
|
|
38
|
-
const { executionId } = await submitRun(body);
|
|
39
|
-
printSubmitted(executionId);
|
|
40
|
-
if (opts.wait !== false) {
|
|
41
|
-
const data = await waitForCompletion(executionId);
|
|
42
|
-
printPollResult(data);
|
|
43
|
-
}
|
|
44
|
-
else {
|
|
45
|
-
console.log("[info]");
|
|
46
|
-
console.log(` message: Use 'weshop status ${executionId}' to check progress`);
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
catch (err) {
|
|
50
|
-
printError(err);
|
|
51
|
-
process.exit(1);
|
|
52
|
-
}
|
|
21
|
+
const params = { textDescription: opts.prompt ?? DEFAULT_PROMPT };
|
|
22
|
+
if (opts.batch != null)
|
|
23
|
+
params.batchCount = opts.batch;
|
|
24
|
+
const extraInput = {};
|
|
25
|
+
if (opts.taskName)
|
|
26
|
+
extraInput.taskName = opts.taskName;
|
|
27
|
+
await executeRun("outfit-generator", "v1.0", { image: opts.image, wait: opts.wait }, params, extraInput);
|
|
53
28
|
});
|
|
54
29
|
//# sourceMappingURL=outfit-generator.js.map
|