Communitygithub.com

cli-anything-blender

Interface de linha de comando com estado para edição de cenas 3D no Blender, usando formato JSON de descrição de cena e geração de scripts bpy.

O que é cli-anything-blender?

O cli-anything-blender é uma ferramenta de linha de comando projetada para edição programática de cenas 3D no Blender, seguindo os mesmos padrões do harness CLI do GIMP. Ele utiliza um formato JSON de descrição de cena e gera scripts bpy para renderização real no Blender. A ferramenta é ideal para agentes de IA que precisam automatizar a criação, modificação e renderização de cenas 3D sem intervenção manual. Suporta comandos para gerenciamento de objetos, materiais, modificadores, câmeras, luzes, animação e renderização, além de um sistema de preview com captura de bundles e sessões ao vivo. O CLI mantém estado de sessão com suporte a desfazer/refazer (até 50 níveis), persistência de projeto em JSON e modos de saída duplos: legível por humanos e JSON para consumo por agentes. É compatível com Linux, macOS e Windows (via WSL ou terminal nativo), requer Python 3.10+ e Blender 4.2+.

Funciona com~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/HKUDS/CLI-Anything/tree/main/skills/cli-anything-blender

Perguntar na sua IA favorita

Abre um novo chat com esta habilidade de agente já pré-carregada.

Documentação

O que cli-anything-blender faz?

Uma interface de linha de comando com estado para edição de cenas 3D, seguindo os mesmos padrões do harness CLI do GIMP. Utiliza um formato JSON de descrição de cena com geração de scripts bpy para renderização real no Blender.

Instalação

Este CLI é instalado como parte do pacote cli-anything-blender:

pip install cli-anything-blender

Pré-requisitos:

  • Python 3.10+
  • blender (>= 4.2) deve estar instalado no seu sistema

Uso

Comandos Básicos

# Exibir ajuda
cli-anything-blender --help

# Iniciar modo interativo REPL
cli-anything-blender

# Criar um novo projeto de cena
cli-anything-blender scene new -o scene.blend-cli.json

# Executar com saída JSON (para consumo por agentes)
cli-anything-blender --json --project scene.blend-cli.json scene info

Modo REPL

Quando invocado sem um subcomando, o CLI entra em uma sessão interativa REPL:

cli-anything-blender
# Digite comandos interativamente com preenchimento por tab e histórico

Grupos de Comandos

Cena

Comandos de gerenciamento de cena.

ComandoDescrição
newCriar uma nova cena
openAbrir uma cena existente
saveSalvar a cena atual
infoMostrar informações da cena
profilesListar perfis de cena disponíveis
jsonImprimir o JSON bruto da cena

Grupo Objeto

Comandos de gerenciamento de objetos 3D.

ComandoDescrição
addAdicionar um objeto primitivo 3D
removeRemover um objeto pelo índice
duplicateDuplicar um objeto
transformTransformar um objeto (translatar, rotacionar, escalar)
setDefinir uma propriedade do objeto (nome, visível, localização, rotação, escala, pai)
listListar todos os objetos
getObter informações detalhadas sobre um objeto

Material

Comandos de gerenciamento de materiais.

ComandoDescrição
createCriar um novo material
assignAtribuir um material a um objeto
setDefinir uma propriedade do material (cor, metálico, rugosidade, especular, alfa, etc.)
listListar todos os materiais
getObter informações detalhadas sobre um material

Grupo Modificador

Comandos de gerenciamento de modificadores.

ComandoDescrição
list-availableListar todos os modificadores disponíveis
infoMostrar detalhes sobre um modificador
addAdicionar um modificador a um objeto
removeRemover um modificador pelo índice
setDefinir um parâmetro do modificador
listListar modificadores em um objeto

Câmera

Comandos de gerenciamento de câmeras.

ComandoDescrição
addAdicionar uma câmera à cena
setDefinir uma propriedade da câmera
set-activeDefinir a câmera ativa
listListar todas as câmeras

Luz

Comandos de gerenciamento de luzes.

ComandoDescrição
addAdicionar uma luz à cena
setDefinir uma propriedade da luz
listListar todas as luzes

Animação

Comandos de animação e quadros-chave.

ComandoDescrição
keyframeDefinir um quadro-chave em um objeto
remove-keyframeRemover um quadro-chave de um objeto
frame-rangeDefinir o intervalo de quadros da animação
fpsDefinir os FPS da animação
list-keyframesListar quadros-chave para um objeto

Grupo Renderização

Comandos de configuração e saída de renderização.

ComandoDescrição
settingsConfigurar as definições de renderização
infoMostrar as definições de renderização atuais
presetsListar predefinições de renderização disponíveis
executeRenderizar a cena (gera script bpy)
scriptGerar script bpy sem renderizar

Preview

Comandos de captura de bundle de preview em tempo real e sessão ao vivo.

ComandoDescrição
preview recipesListar receitas de preview disponíveis
preview captureRenderizar um bundle de preview real para a cena ativa
preview latestRetornar o bundle de preview existente mais recente
preview live startIniciar uma sessão de preview ao vivo e publicar o primeiro bundle
preview live pushPublicar um bundle atualizado na sessão ao vivo
preview live statusLer o estado atual da sessão ao vivo sem renderizar
preview live stopParar a sessão ao vivo sem excluir artefatos

Artefatos típicos de bundle para a receita quick:

  • hero.png da renderização de preview real do Eevee
  • workbench.png da renderização real do Blender Workbench

Sessões ao vivo persistem:

  • session.json como o cabeçalho mutável
  • diretórios de bundle imutáveis
  • trajectory.json como histórico de comando-para-preview somente anexação

Lado do visualizador:

  • cli-hub previews inspect <bundle-ou-sessao>
  • cli-hub previews html <bundle-ou-sessao> -o pagina.html
  • cli-hub previews watch <diretorio-da-sessao> --open
  • cli-hub previews open <bundle-ou-sessao>

Sessão

Comandos de gerenciamento de sessão.

ComandoDescrição
statusMostrar o status da sessão
undoDesfazer a última operação
redoRefazer a última operação desfeita
historyMostrar o histórico de desfazer

Exemplos

Criar um Novo Projeto

Crie um arquivo de projeto de cena do Blender.

cli-anything-blender scene new -o minha-cena.blend-cli.json
# Ou com saída JSON para uso programático
cli-anything-blender --json scene new -o minha-cena.blend-cli.json

Sessão Interativa REPL

Inicie uma sessão interativa com suporte a desfazer/refazer.

cli-anything-blender
# Digite comandos interativamente
# Use 'help' para ver os comandos disponíveis
# Use 'undo' e 'redo' para navegação no histórico

Gerenciamento de Estado

O CLI mantém o estado da sessão com:

  • Desfazer/Refazer: Até 50 níveis de histórico
  • Persistência de projeto: Salvar/carregar estado do projeto como JSON
  • Rastreamento de sessão: Rastrear modificações e mudanças

Formatos de Saída

Todos os comandos suportam modos de saída duplos:

  • Legível por humanos (padrão): Tabelas, cores, texto formatado
  • Legível por máquina (flag --json): JSON estruturado para consumo por agentes
# Saída humana
cli-anything-blender --project cena.blend-cli.json scene info

# Saída JSON para agentes
cli-anything-blender --json --project cena.blend-cli.json scene info

Fluxo de Preview

Use previews do Blender quando o agente precisar de pontos de verificação visuais verdadeiros:

# Listar receitas de preview
cli-anything-blender --project cena.blend-cli.json preview recipes

# Capturar um bundle de preview real
cli-anything-blender --json --project cena.blend-cli.json preview capture --recipe quick

# Iniciar um loop de preview ao vivo
cli-anything-blender --json --project cena.blend-cli.json preview live start --recipe quick --mode poll --source-poll-ms 500

# Consultar o cabeçalho atual ao vivo sem renderizar
cli-anything-blender --json --project cena.blend-cli.json preview live status --recipe quick

Para agentes, preview capture --json retorna metadados do bundle mais caminhos de arquivos de artefatos. preview live status --json retorna metadados da sessão mais um trajectory_summary compacto.

Para Agentes de IA

Ao usar este CLI programaticamente:

  1. Sempre use a flag --json para saída analisável
  2. Verifique os códigos de retorno - 0 para sucesso, diferente de zero para erros
  3. Analise o stderr para mensagens de erro em caso de falha
  4. OBRIGATÓRIO: Use caminhos absolutos para todas as operações de arquivo (renderização, arquivos de projeto). Caminhos relativos são propensos a falhas em execução em segundo plano.
  5. Use preview capture ou preview live ... para verificação visual em vez de inferir a qualidade da cena apenas a partir do JSON
  6. Leia os caminhos dos artefatos retornados, como hero.png e workbench.png; a carga JSON referencia arquivos, não incorpora bytes de imagem
  7. Trate _bundle_dir como apenas um instantâneo; para um histórico ao vivo estável, use _session_dir mais _trajectory_path
  8. Use cli-hub previews ... apenas para inspecionar/abrir previews existentes; a geração de preview em si sempre ocorre através de cli-anything-blender preview ...

Mais Informações

  • Documentação completa: Consulte README.md no pacote
  • Cobertura de testes: Consulte TEST.md no pacote
  • Metodologia: Consulte HARNESS.md no plugin cli-anything

Versão

1.0.0

Individual skills in this repo

This repo contains 20 individual skills — each has its own dedicated page.

cli-anything-adguardhome

>-

cli-anything-anygen

>-

cli-anything-audacity

>-

cli-anything-browser

Browser automation CLI using DOMShell MCP server. Maps Chrome

cli-anything-calibre

>-

cli-anything-ccswitch

CLI interface for CC Switch — manage AI coding tool configurations from the terminal

cli-anything-chromadb

>-

cli-anything-cloudanalyzer

Command-line interface for CloudAnalyzer — Agent-friendly harness for CloudAnalyzer, a QA platform for mapping, localization, and perception outputs. Supports 27 commands across 8 groups: point cloud evaluation, trajectory evaluation, ground segmentation QA, config-driven quality gates, baseline evolution, processing, visualization, and interactive REPL.

cli-anything-cloudcompare

Command-line interface for CloudCompare — Agent-friendly harness for CloudCompare, the open-source 3D point cloud and mesh processing software. Supports 41 commands across 9 groups: project management, session control, point cloud operations (subsample, filter, segment, analyze), mesh operations, distance computation (C2C, C2M), transformations (ICP, matrix), export (LAS/LAZ/PLY/PCD/OBJ/STL/E57), and interactive REPL.

cli-anything-comfyui

>-

cli-anything-dify-workflow

Wrapper for the Dify workflow DSL CLI. Create, inspect, validate, edit, and export Dify workflow files through a CLI-Anything harness.

cli-anything-drawio

>-

cli-anything-eez-studio

Use EEZ Studio from the command line: inspect and modify native .eez-project files, edit LVGL screens/widgets, manage SCPI commands, and invoke the real EEZ Studio backend for LVGL builds.

cli-anything-eth2-quickstart

>-

cli-anything-exa

>-

cli-anything-firefly-iii

Firefly III CLI - Personal finance management via CLI-Anything

cli-anything-freecad

Complete CLI harness for FreeCAD parametric 3D CAD modeler (258 commands). Covers ALL workbenches: Part (29 primitives + boolean + mirror + loft + sweep), Sketcher (26 cmds: geometry + constraints + editing), PartDesign (38 cmds: pad/pocket/groove/fillet/chamfer/patterns/hole/datum), Assembly (11 cmds), Mesh (16 cmds), TechDraw (15 cmds: views + dimensions + PDF/SVG), Draft (33 cmds: 2D shapes + arrays + transforms), FEM (12 cmds), CAM/CNC (10 cmds), Surface (6 cmds), Spreadsheet (7 cmds), Import (13 formats), Export (17 formats), Measure (12 cmds), Materials (21 presets). Headless FreeCAD export to STEP/IGES/STL/OBJ/DXF/PDF/glTF/3MF.

cli-anything-gimp

>-

cli-anything-godot

>-

cli-anything-inkscape

>-

Habilidades Relacionadas