Skill: omactiengartelle/3d-anime-poster-generator (version 1.0.0)

--- name: 3d-anime-poster-generator description: Create stunning 3D anime posters with volumetric lighting, cinematic depth, and dynamic compositions. Perfect for wallpapers, merch designs, print-on-demand art, anime fan posters, cyberpunk-style artwork, and decorative prints. AI-powered 3D anime art poster maker and designer via the Neta AI image generation API (free trial at neta.art/open). tools: Bash --- # 3D Anime Poster Generator Create stunning 3D anime posters with volumetric lighting, cinematic depth, and dynamic compositions. Perfect for wallpapers, merch designs, print-on-demand art, anime fan posters, cyberpunk-style artwork, and decorative prints. AI-powered 3D anime art poster maker and designer. ## Token Requires a Neta API token (free trial at <https://www.neta.art/open/>). Pass it via the `--token` flag. ```bash node <script> "your prompt" --token YOUR_TOKEN ``` ## When to use Use when someone asks to generate or create 3d anime poster generator images. ## Quick start ```bash node 3danimepostergenerator.js "your description here" --token YOUR_TOKEN ``` ## Options - `--size` — `portrait`, `landscape`, `square`, `tall` (default: `portrait`) - `--ref` — reference image UUID for style inheritance ## Install ```bash npx skills add omactiengartelle/3d-anime-poster-generator ```

path: 3danimepostergenerator.js
content: #!/usr/bin/env node

const args = process.argv.slice(2);

// Parse CLI arguments
let prompt = null;
let size = "portrait";
let token = null;
let ref = null;

for (let i = 0; i < args.length; i++) {
  if (args[i] === "--token" && i + 1 < args.length) {
    [REDACTED_SECRET];
  } else if (args[i] === "--size" && i + 1 < args.length) {
    size = args[++i];
  } else if (args[i] === "--ref" && i + 1 < args.length) {
    ref = args[++i];
  } else if (!prompt && !args[i].startsWith("--")) {
    prompt = args[i];
  }
}

const TOKEN = token;

if (!TOKEN) {
  console.error("\n\u2717 Token required. Pass via: --token YOUR_TOKEN");
  console.error("  Get yours at: https://www.neta.art/open/");
  process.exit(1);
}

if (!prompt) {
  prompt =
    "3D anime poster, volumetric lighting, cinematic depth of field, vibrant colors, dynamic composition, detailed character art, cyberpunk-infused atmosphere, dramatic scene layout, high detail rendering";
}

const SIZES = {
  square: { width: 1024, height: 1024 },
  portrait: { width: 832, height: 1216 },
  landscape: { width: 1216, height: 832 },
  tall: { width: 704, height: 1408 },
};

const chosen = SIZES[size] || SIZES.portrait;

const HEADERS = {
  "x-token": TOKEN,
  "x-platform": "nieta-app/web",
  "content-type": "application/json",
};

async function createImage() {
  const body = {
    storyId: "DO_NOT_USE",
    jobType: "universal",
    rawPrompt: [{ type: "freetext", value: prompt, weight: 1 }],
    width: chosen.width,
    height: chosen.height,
    meta: { entrance: "PICTURE,VERSE" },
    context_model_series: "8_image_edit",
  };

  if (ref) {
    body.inherit_params = {
      collection_uuid: ref,
      picture_uuid: ref,
    };
  }

  console.error(`Creating 3D anime poster (${size} ${chosen.width}x${chosen.height})...`);
  console.error(`Prompt: ${prompt}`);

  const res = await fetch("https://api.talesofai.com/v3/make_image", {
    method: "POST",
    headers: HEADERS,
    body: JSON.stringify(body),
  });

  if (!res.ok) {
    const text = await res.text();
    console.error(`\u2717 Image creation failed (${res.status}): ${text}`);
    process.exit(1);
  }

  const data = await res.json();
  const taskUuid = typeof data === "string" ? data : data.task_uuid;

  if (!taskUuid) {
    console.error("\u2717 No task_uuid returned from API");
    console.error(JSON.stringify(data));
    process.exit(1);
  }

  console.error(`Task UUID: ${taskUuid}`);
  console.error("Polling for result...");

  for (let attempt = 0; attempt < 90; attempt++) {
    await new Promise((r) => setTimeout(r, 2000));

    const pollRes = await fetch(
      `https://api.talesofai.com/v1/artifact/task/${taskUuid}`,
      { headers: HEADERS }
    );

    if (!pollRes.ok) {
      console.error(`Poll error (${pollRes.status}), retrying...`);
      continue;
    }

    const pollData = await pollRes.json();
    const status = pollData.task_status;

    if (status === "PENDING" || status === "MODERATION") {
      console.error(`  Status: ${status} (attempt ${attempt + 1}/90)`);
      continue;
    }

    const imageUrl =
      (pollData.artifacts && pollData.artifacts[0] && pollData.artifacts[0].url) ||
      pollData.result_image_url;

    if (imageUrl) {
      console.log(imageUrl);
      process.exit(0);
    } else {
      console.error("\u2717 Task completed but no image URL found");
      console.error(JSON.stringify(pollData));
      process.exit(1);
    }
  }

  console.error("\u2717 Timed out waiting for image (180s)");
  process.exit(1);
}

createImage();


path: README.md
content: # 3D Anime Poster Generator

Generate stunning 3D anime posters from text descriptions with volumetric lighting, cinematic depth of field, and dynamic compositions. Perfect for wallpapers, merch designs, print-on-demand art, anime fan posters, cyberpunk-style artwork, and decorative prints.

Powered by the Neta AI image generation API (api.talesofai.com) — the same service as neta.art/open.

## Install

```bash
npx skills add omactiengartelle/3d-anime-poster-generator
```

or

```bash
clawhub install 3d-anime-poster-generator
```

## Token Setup

This skill requires a Neta API token (free trial available at <https://www.neta.art/open/>).

Pass it via the `--token` flag:

```bash
node <script> "your prompt" --token YOUR_TOKEN
```

## Usage

Generate a 3D anime poster with the default style:

```bash
node 3danimepostergenerator.js "cyberpunk samurai standing on a neon rooftop at night" --token YOUR_TOKEN
```

Generate a landscape poster:

```bash
node 3danimepostergenerator.js "epic mecha battle in a ruined city, sunset lighting" --size landscape --token YOUR_TOKEN
```

Use a reference image UUID for style inheritance:

```bash
node 3danimepostergenerator.js "warrior princess in enchanted forest" --ref PICTURE_UUID --token YOUR_TOKEN
```

## Output

Returns a direct image URL.

## Options

| Option | Description | Default |
|--------|-------------|---------|
| `--token` | Neta API token (required) | — |
| `--size` | Image size: `portrait`, `landscape`, `square`, `tall` | `portrait` |
| `--ref` | Reference image UUID for style inheritance | — |

### Size Details

| Size | Dimensions |
|------|-----------|
| `square` | 1024 x 1024 |
| `portrait` | 832 x 1216 |
| `landscape` | 1216 x 832 |
| `tall` | 704 x 1408 |

This skill requires a Neta API token (free trial available at https://www.neta.art/open/).


path: package.json
content: name: 3d-anime-poster-generator
version: 1.0.0
type: module
description: 3D Anime Poster Generator — AI-powered 3d anime poster generator
license: MIT

Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: suspicious (MEDIUM)