Skip to main content

NativeBlend CLI - Generate 3D models in Blender using AI

Project description

NativeBlend CLI

Open-source command-line interface for generating 3D models in Blender using AI.

Features

  • 🎨 Text & Image to 3D - Generate models from natural language descriptions
  • Local Blender Execution - Fast rendering on your machine, no bandwidth waste
  • 🔄 Real-time Progress - Live streaming updates from the AI agent
  • 🎯 Multiple Quality Modes - Express, Standard, and Pro generation modes
  • 🔐 Secure - API keys stored in system keychain

Installation

pip install nativeblend

Or install from source:

git clone https://github.com/addy999/nativeblend-cli.git
cd nativeblend-cli
uv sync
alias nativeblend="uv run nativeblend --"

Then use nativeblend command in your terminal.

Quick Start

  1. Initialize the CLI:
nativeblend init
# You'll be asked if you want to start background workers
  1. Get your API key from nativeblend

  2. Configure your API key:

nativeblend auth login
# Enter your API key when prompted
  1. Generate your first model:
nativeblend generate "a low poly spaceship"

Usage

Generate a 3D Model

# Basic generation
nativeblend generate "a red cube"

# Use different quality modes
nativeblend generate "a spaceship" --mode pro

# Use a reference image
nativeblend generate "a car" --image reference.jpg

# Enable verbose output
nativeblend generate "a tree" --verbose

Modes

  • express - Fast generation, single iteration (~30s)
  • standard - Balanced quality with refinement (~2min)
  • pro - High quality with multiple refinement passes (~5min)

Change output dir

By default renders and outputs are saved to ./outputs. Change this in your config:

nativeblend config set output.default_dir /path/to/outputs

Background Workers

Run workers in the background to execute Blender tasks without blocking your terminal.

Workers can be started during nativeblend init, or manually anytime:

# Start workers in the background
nativeblend worker start

# Start with custom settings
nativeblend worker start --workers 2 --poll-interval 10

# Check worker status
nativeblend worker status

# View worker logs
nativeblend worker logs

# Follow logs in real-time
nativeblend worker logs --follow

# Stop workers
nativeblend worker stop

Worker Options:

  • --workers, -w - Number of concurrent workers (1-10, default: 1)
  • --poll-interval, -p - Polling interval in seconds (default: 5)
  • --lines, -n - Number of log lines to show (default: 50)
  • --follow, -f - Follow log output like tail -f

Workers run as background daemons and will continue executing tasks even after closing your terminal.

Authentication

# Login with API key
nativeblend auth login

# Check authentication status
nativeblend auth status

# Logout
nativeblend auth logout

How It Works

  1. CLI sends prompt - Your prompt is sent to NativeBlend's cloud API
  2. AI generates code - NativeBlend creates Blender Python scripts
  3. Local execution - Code runs on YOUR Blender (fast, private)
  4. Iterative refinement - NativeBlend reviews renders and improves until perfect

Your Blender installation stays local - only prompts and small images are sent to the cloud.

Configuration

Configuration file location: ~/.config/nativeblend/config.toml

[api]
endpoint = "https://blender-ai.fly.dev"
timeout = 300

[blender]
executable = "/Applications/Blender.app/Contents/MacOS/Blender"  # macOS
# executable = "/usr/bin/blender"  # Linux
# executable = "C:\\Program Files\\Blender Foundation\\Blender\\blender.exe"  # Windows

[output]
default_dir = "./outputs"
save_renders = true

Requirements

  • Python 3.12 or higher
  • Blender 4.5 or higher installed locally
  • NativeBlend API key

Pricing

  • Free Tier: 5 generations/month (express or standard mode)
  • Indie: $29/month - Unlimited generations (express + standard + pro)
  • Team: $79/month - Unlimited generations + 3 seats + team collaboration features

See pricing for details.

Troubleshooting

Blender Not Found

If you get "Blender executable not found":

# Set blender path explicitly
nativeblend config set blender.executable /path/to/blender

Development

# Clone the repository
git clone https://github.com/addy999/nativeblend-cli.git
cd nativeblend-cli

# Install development dependencies
uv sync

# Format code
black src/
ruff check src/

License

MIT License - see LICENSE for details.

Support

Powered By

NativeBlend CLI is powered by NativeBlend's proprietary AI agent infrastructure, combining industry knowledge with advanced vision models for iterative 3D generation.


Made with ❤️ by the NativeBlend team

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

nativeblend-0.1.0.tar.gz (38.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

nativeblend-0.1.0-py3-none-any.whl (21.2 kB view details)

Uploaded Python 3

File details

Details for the file nativeblend-0.1.0.tar.gz.

File metadata

  • Download URL: nativeblend-0.1.0.tar.gz
  • Upload date:
  • Size: 38.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.7.18

File hashes

Hashes for nativeblend-0.1.0.tar.gz
Algorithm Hash digest
SHA256 1a29dc6ad1808a0e858ea047a08df781a04d31c5e3b1229dd4a40d837088fd4a
MD5 def1100871bc339080e8bac645845d87
BLAKE2b-256 4d6fed566a95896aa04175400afa9df65ac606e3165caa4c09f5dbaae301e576

See more details on using hashes here.

File details

Details for the file nativeblend-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for nativeblend-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 c2056a1fbd5852b13fd6bb648505b0750a9cd22d6ec20365458b59fcbb4157ad
MD5 acfea0d5fc4074141197676966ddc6da
BLAKE2b-256 69dd06266351edc74da1b58ea6debd84de3403d439fe50c34603b42dc33a350d

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page