NodeTool
Visual AI workflow builder combining ComfyUI's node-based flexibility with n8n's automation power. Build LLM agents, RAG pipelines, and multimodal data flows on your local machine.
Quick Start
# See system info
nodetool info
# List workflows
nodetool workflows list
# Run a workflow interactively
nodetool run <workflow_id>
# Start of chat interface
nodetool chat
# Start of web server
nodetool serve
Installation
Linux / macOS
Quick one-line installation:
curl -fsSL https://raw.githubusercontent.com/nodetool-ai/nodetool/refs/heads/main/install.sh | bash
With custom directory:
curl -fsSL https://raw.githubusercontent.com/nodetool-ai/nodetool/refs/heads/main/install.sh | bash --prefix ~/.nodetool
Non-interactive mode (automatic, no prompts):
Both scripts support silent installation:
# Linux/macOS - use -y
curl -fsSL https://raw.githubusercontent.com/nodetool-ai/nodetool/refs/heads/main/install.sh | bash -y
# Windows - use -Yes
irm https://raw.githubusercontent.com/nodetool-ai/nodetool/refs/heads/main/install.ps1 | iex; .\install.ps1 -Yes
What happens with non-interactive mode:
- All confirmation prompts are skipped automatically
- Installation proceeds without requiring user input
- Perfect for CI/CD pipelines or automated setups
Windows
Quick one-line installation:
irm https://raw.githubusercontent.com/nodetool-ai/nodetool/refs/heads/main/install.ps1 | iex
With custom directory:
.\install.ps1 -Prefix "C:\nodetool"
Non-interactive mode:
.\install.ps1 -Yes
Core Commands
Workflows
Manage and execute NodeTool workflows:
# List all workflows (user + example)
nodetool workflows list
# Get details for a specific workflow
nodetool workflows get <workflow_id>
# Run workflow by ID
nodetool run <workflow_id>
# Run workflow from file
nodetool run workflow.json
# Run with JSONL output (for automation)
nodetool run <workflow_id> --jsonl
Run Options
Execute workflows in different modes:
# Interactive mode (default) - pretty output
nodetool run workflow_abc123
# JSONL mode - streaming JSON for subprocess use
nodetool run workflow_abc123 --jsonl
# Stdin mode - pipe RunJobRequest JSON
echo '{"workflow_id":"abc","user_id":"1","auth_token":"token","params":{}}' | nodetool run --stdin --jsonl
# With custom user ID
nodetool run workflow_abc123 --user-id "custom_user_id"
# With auth token
nodetool run workflow_abc123 --auth-token "my_auth_token"
Assets
Manage workflow assets (nodes, models, files):
# List all assets
nodetool assets list
# Get asset details
nodetool assets get <asset_id>
Packages
Manage NodeTool packages (export workflows, generate docs):
# List packages
nodetool package list
# Generate documentation
nodetool package docs
# Generate node documentation
nodetool package node-docs
# Generate workflow documentation (Jekyll)
nodetool package workflow-docs
# Scan directory for nodes and create package
nodetool package scan
# Initialize new package project
nodetool package init
Jobs
Manage background job executions:
# List jobs for a user
nodetool jobs list
# Get job details
nodetool jobs get <job_id>
# Get job logs
nodetool jobs logs <job_id>
# Start background job for workflow
nodetool jobs start <workflow_id>
Deployment
Deploy NodeTool to cloud platforms (RunPod, GCP, Docker):
# Initialize deployment.yaml
nodetool deploy init
# List deployments
nodetool deploy list
# Add new deployment
nodetool deploy add
# Apply deployment configuration
nodetool deploy apply
# Check deployment status
nodetool deploy status <deployment_name>
# View deployment logs
nodetool deploy logs <deployment_name>
# Destroy deployment
nodetool deploy destroy <deployment_name>
# Manage collections on deployed instance
nodetool deploy collections
# Manage database on deployed instance
nodetool deploy database
# Manage workflows on deployed instance
nodetool deploy workflows
# See what changes will be made
nodetool deploy plan
Model Management
Discover and manage AI models (HuggingFace, Ollama):
# List cached HuggingFace models by type
nodetool model list-hf <hf_type>
# List all HuggingFace cache entries
nodetool model list-hf-all
# List supported HF types
nodetool model hf-types
# Inspect HuggingFace cache
nodetool model hf-cache
# Scan cache for info
nodetool admin scan-cache
Admin
Maintain model caches and clean up:
# Calculate total cache size
nodetool admin cache-size
# Delete HuggingFace model from cache
nodetool admin delete-hf <model_name>
# Download HuggingFace models with progress
nodetool admin download-hf <model_name>
# Download Ollama models
nodetool admin download-ollama <model_name>
Chat & Server
Interactive chat and web interface:
# Start CLI chat
nodetool chat
# Start chat server (WebSocket + SSE)
nodetool chat-server
# Start FastAPI backend server
nodetool serve --host 0.0.0.0 --port 8000
# With static assets folder
nodetool serve --static-folder ./static --apps-folder ./apps
# Development mode with auto-reload
nodetool serve --reload
# Production mode
nodetool serve --production
Proxy
Start reverse proxy with HTTPS:
# Start proxy server
nodetool proxy
# Check proxy status
nodetool proxy-status
# Validate proxy config
nodetool proxy-validate-config
# Run proxy daemon with ACME HTTP + HTTPS
nodetool proxy-daemon
Other Commands
# View settings and secrets
nodetool settings show
# Generate custom HTML app for workflow
nodetool vibecoding
# Run workflow and export as Python DSL
nodetool dsl-export
# Export workflow as Gradio app
nodetool gradio-export
# Regenerate DSL
nodetool codegen
# Manage database migrations
nodetool migrations
# Synchronize database with remote
nodetool sync
Use Cases
Workflow Execution
Run a NodeTool workflow and get structured output:
# Run workflow interactively
nodetool run my_workflow_id
# Run and stream JSONL output
nodetool run my_workflow_id --jsonl | jq -r '.[] | "\(.status) | \(.output)"'
Package Creation
Generate documentation for a custom package:
# Scan for nodes and create package
nodetool package scan
# Generate complete documentation
nodetool package docs
Deployment
Deploy a NodeTool instance to the cloud:
# Initialize deployment config
nodetool deploy init
# Add RunPod deployment
nodetool deploy add
# Deploy and start
nodetool deploy apply
Model Management
Check and manage cached AI models:
# List all available models
nodetool model list-hf-all
# Inspect cache
nodetool model hf-cache
Installation
Linux / macOS
Quick one-line installation:
curl -fsSL https://raw.githubusercontent.com/nodetool-ai/nodetool/refs/heads/main/install.sh | bash
With custom directory:
curl -fsSL https://raw.githubusercontent.com/nodetool-ai/nodetool/refs/heads/main/install.sh | bash --prefix ~/.nodetool
Non-interactive mode (automatic, no prompts):
Both scripts support silent installation:
# Linux/macOS - use -y
curl -fsSL https://raw.githubusercontent.com/nodetool-ai/nodetool/refs/heads/main/install.sh | bash -y
# Windows - use -Yes
irm https://raw.githubusercontent.com/nodetool-ai/nodetool/refs/heads/main/install.ps1 | iex; .\install.ps1 -Yes
What happens with non-interactive mode:
- All confirmation prompts are skipped automatically
- Installation proceeds without requiring user input
- Perfect for CI/CD pipelines or automated setups
Windows
Quick one-line installation:
irm https://raw.githubusercontent.com/nodetool-ai/nodetool/refs/heads/main/install.ps1 | iex
With custom directory:
.\install.ps1 -Prefix "C:\nodetool"
Non-interactive mode:
.\install.ps1 -Yes
What Gets Installed
The installer sets up:
- micromamba โ Python package manager (conda replacement)
- NodeTool environment โ Conda env at
~/.nodetool/env - Python packages โ
nodetool-core,nodetool-basefrom NodeTool registry - Wrapper scripts โ
nodetoolCLI available from any terminal
Environment Setup
After installation, these variables are automatically configured:
# Conda environment
export MAMBA_ROOT_PREFIX="$HOME/.nodetool/micromamba"
export PATH="$HOME/.nodetool/env/bin:$HOME/.nodetool/env/Library/bin:$PATH"
# Model cache directories
export HF_HOME="$HOME/.nodetool/cache/huggingface"
export OLLAMA_MODELS="$HOME/.nodetool/cache/ollama"
System Info
Check NodeTool environment and installed packages:
nodetool info
Output shows:
- Version
- Python version
- Platform/Architecture
- Installed AI packages (OpenAI, Anthropic, Google, HF, Ollama, fal-client)
- Environment variables
- API key status