8000 GitHub - nodetool-ai/nodetool: NodeTool - Privacy-First AI Workflows
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

nodetool-ai/nodetool

Repository files navigation

Privacy‑First AI Workflows

Your Multimodal AI Toolbox

Build Local, Deploy Anywhere

🎨 Drag‑and‑drop Workflow Builder.
πŸš€ Thousands of AI models through Huggingface Hub.

πŸ”“ 100% Open Source β€’ Privacy‑First β€’ Self‑Hosted

Conda Release Lint and Test Docker CodeQL

Why Privacy‑First Matters

Local-first by default Open source & auditable πŸ€— Huggingface Integration
All model inference runs on your machine. No data leaves unless you decide. NodeTool is 100% open source under AGPL – audit every line of code. Need more power? Use the GPU cloud node – and only for the data you select.

πŸ› οΈ The Complete AI Toolbox for Builders

NodeTool is the Swiss-Army Knife for AI builders. Unlike code-first stacks, NodeTool gives you every AI tool in one visual workspace. Connect your models, streamline your workflow, and turn ideas into reality.

  • πŸ”— Drag‑and‑drop multimodal workflows
  • 🧠 LLMs, image, audio, and video nodes
  • πŸ—ƒοΈ Asset and vector store integration
  • πŸ€– Agent orchestration
  • ⚑ AI cloud scaling
  • πŸ’‘ Built-in templates and node packs

πŸ”— Snap Nodes Together

Drag any model into your canvasβ€”LLMs, diffusion, agents, or custom code. Connect with one click and watch your AI workflow come alive.

☁️ Scale to Cloud Providers

Keep data local until you need power. Scale to Huggingface, Anthropic, OpenAI, Gemini, Fal.ai or Replicate.

πŸ’¬ Chat Interface

Access and trigger AI workflows through a unified chat interface.

πŸ€– AI Agent Orchestration

Build intelligent agents that coordinate multiple AI models. Chain reasoning, planning, and execution across complex multi-step workflows.

πŸ“ Vector Storage & RAG

Built-in ChromaDB means your AI remembers everything. Create smart assistants that know your documents.

🎯 Built-in Asset Manager

Import, organize, and manage all your media assets in one place. No more hunting through folders.

Additional Features:

  • Multimodal Capabilities: Process text, images, audio, and video within a single workflow
  • System Tray Integration: Access workflows quickly via the system tray with global shortcuts
  • Ready-to-Use Templates: Start quickly with pre-built workflow templates
  • Mini-App Builder: Convert workflows into standalone desktop applications
  • API Access: Integrate with external applications and services
  • Custom Python Extensions: Extend functionality with custom Python scripts
  • Cross-Platform: Build and run on Mac, Windows, and Linux

πŸ”’ Privacy-First β€’ πŸ€— Huggingface Integration

Keep your data on-device until you need Huggingface Inference API. Unlike cloud-only tools, NodeTool protects your privacy while giving you access to the world's largest AI model collection. Trust through transparencyβ€”every line of code is open source.

Local-First

  • Process sensitive data locally
  • Run LLMs on your hardware
  • Zero data transmission by default

Cloud-Ready

  • Burst to GPU cloud in seconds
  • Connect OpenAI, Anthropic, Fal, Replicate, Gemini
  • Control exactly what data gets shared

How NodeTool Keeps Your Data Safe

All critical execution happens inside the local process unless a cloud node is explicitly connected:

  • Local LLMs via Ollama
  • Local Huggingface models with CUDA and MPS acceleration
  • Chroma Vector database for RAG
  • User-friendly Chat Interface
  • Powerful AI Workflow builder
  • Bring your own API Keys if needed (Huggingface, Anthropic, OpenAI, Gemini, Fal.ai, Replicate)

βœ… AGPL‑3.0 License – zero lock-in β€’ βœ… Privacy-first Desktop App β€’ βœ… Fully self-hostable with no telemetry


NodeTool


βš™οΈ Quickstart Installation

1️⃣ Get Running in Minutes

Note: Requires an Nvidia GPU or Apple Silicon (M1+) and at least 20GB of free disk space for model downloads.

2️⃣ Create Your First AI Workflow

  • Open NodeTool.
  • Choose a prebuilt template or start with a blank canvas.
  • Drag and drop AI nodes and connect them visually.
  • Click Run and watch your local AI workflow execute!

πŸ€– NodeTool Agent System

Design sophisticated AI agents capable of handling complex, multi-step tasks using NodeTool's agent framework.

Core Capabilities:

  • Strategic Task Planning: Automatically break down complex objectives into structured, executable plans.
  • Chain of Thought Reasoning: Enable agents to perform step-by-step problem solving with explicit reasoning paths.
  • Tool Integration: Equip agents with tools for web browsing, file operations, API calls, and more.
  • Streaming Results: Get live updates as agents reason and execute tasks.

Ready-to-Use Agent Examples

NodeTool includes several pre-built agent examples:

  • Wikipedia-Style Research Agent: Generates structured documentation via web research.
  • ChromaDB Research Agent: Processes and indexes documents for semantic querying.
  • Social Media Analysis Agents: Tracks and analyzes content from Twitter/X, Instagram, and Reddit.
  • Professional Research Tools: Analyzes the LinkedIn job market and performs advanced Google searches.
  • Utility Agents: Processes emails and integrates web search capabilities.

Find full implementations and more examples in the examples directory of the nodetool-core repository.

🎯 Build Anything

From simple automations to complex multi-agent systems:

🧠 Build Smart Assistants

Create AI that knows your documents, emails, and notes. Keep everything private on your machine.

⚑ Automate Boring Tasks

Turn repetitive work into smart workflows. Let AI handle the routine while you focus on creating.

🎨 Generate Creative Content

From text to images to music β€” create anything with AI. Combine models for unique results.

πŸ“Έ Enhance Images & Video

Upscale, enhance, and transform visual content. Professional results with consumer hardware.

🎡 Process Voice & Audio

Transcribe, analyze, and generate speech. Build voice-first applications that actually work.

πŸ“Š Analyze Data Visually

Turn spreadsheets into insights. Create charts, find patterns, and make decisions faster.

πŸ”— Connect Multiple Models

Chain LLMs with diffusion models. Create workflows that no single AI can handle alone.

πŸš€ Deploy Anywhere

From desktop shortcuts to web APIs. Your workflows run where your users are. (Coming soon)

πŸ› οΈ Extend with Code

Add custom Python nodes when you need them. The visual canvas grows with your expertise.

πŸ” Monitor & Debug

See exactly what your AI is thinking. Debug workflows with clear visual feedback.

🀝 Share & Collaborate

Export workflows as code or templates. Build on what others have created. (Coming soon)

πŸ’‘ Join Our Community

Connect with other NodeTool users and the development team:

Let's build amazing AI workflows together! ✨

πŸš€ Quickstart (Release Info)

Release 0.6 is in pre-release.

πŸ› οΈ Development Setup

Follow these steps to set up a local development environment for the entire NodeTool platform, including the UI, backend services, and the core library (nodetool-core). If you are primarily interested in contributing to the core library itself, please also refer to the nodetool-core repository for its specific development setup using Poetry.

Prerequisites

  • Python 3.11: Required for the backend.
  • Conda: Download and install from miniconda.org.
  • Node.js (Latest LTS): Required for the frontend. Download and install from nodejs.org.

1. Set Up Conda Environment

# Create and activate the Conda environment
conda create -n nodetool python=3.11 -y
conda activate nodetool

# Install essential system dependencies via Conda
conda install -c conda-forge ffmpeg cairo x264 x265 aom libopus libvorbis lame pandoc uv -y

2. Install Core Python Dependencies

These are the essential packages to run NodeTool.

Make sure to activate the conda environment.

# Install nodetool-core and nodetool-base
# On macOS / Linux / Windows:
uv pip install git+https://github.com/nodetool-ai/nodetool-core
uv pip install git+https://github.com/nodetool-ai/nodetool-base

3. Install Optional Node Packs (As Needed)

NodeTool's functionality is extended via packs. Install only the ones you need.

NOTE:

  • Activate the conda environment first
  • Always use uv as we define extra index for pytorch
# List available packs (optional)
nodetool package list -a

# Example: Install packs for specific integrations
uv pip install git+https://github.com/nodetool-ai/nodetool-huggingface
uv pip install git+https://github.com/nodetool-ai/nodetool-fal
uv pip install git+https://github.com/nodetool-ai/nodetool-replicate
uv pip install git+https://github.com/nodetool-ai/nodetool-elevenlabs

Note: Some packs like nodetool-huggingface may require specific PyTorch versions or CUDA drivers. Use the --extra-index-url when necessary.

4. Run NodeTool Backend & Web UI

Ensure the nodetool Conda environment is active.

Option A: Run Backend with Web UI (for Development)

This command starts the backend server:

# On macOS / Linux / Windows:
nodetool serve --reload

Run frontend in web folder:

npm start

Access the UI in your browser at http://localhost:3000.

Option B: Run with Electron App

This provides the full desktop application experience.

Configure Conda Path: Ensure your settings.yaml file points to your Conda environment path:

  • macOS/Linux: ~/.config/nodetool/settings.yaml
  • Windows: %APPDATA%/nodetool/settings.yaml
CONDA_ENV: /path/to/your/conda/envs/nodetool # e.g., /Users/me/miniconda3/envs/nodetool

Build Frontends: You only need to do this once or when frontend code changes.

# Build the main web UI
cd web
npm install
npm run build
cd ..

# Build the apps UI (if needed)
cd apps
npm install
npm run build
cd ..

# Build the Electron UI
cd electron
npm install
npm run build
cd ..

Start Electron:

cd electron
npm start  # launches the desktop app using the previously built UI

The Electron app will launch, automatically starting the backend and frontend.

🀝 Contributing

We welcome community contributions!

  1. Fork the repository on GitHub.
  2. Create a new branch for your feature (git checkout -b feature/your-feature-name).
  3. Make your changes and commit them (git commit -am 'Add some amazing feature').
  4. Push your branch to your fork (git push origin feature/your-feature-name).
  5. Open a Pull Request against the main branch of the original repository.

Please follow our contribution guidelines and code of conduct.

πŸ“„ License

AGPL

πŸ“¬ Get in Touch

We'd love to hear from you! Whether you have questions, suggestions, or feedback, feel free to reach out through any of the following channels:

We're excited to collaborate and build amazing AI workflows together! πŸš€βœ¨

πŸ“¦ NodeTool Packs Registry

Extend NodeTool's capabilities with specialized Node Packs. The NodeTool Packs Registry manages discovery, installation, and distribution.

Using Packs (For Users)

Manage packs easily through the NodeTool UI:

  • Browse available packs.
  • Install, uninstall, and update packs (uses pip behind the scenes).
  • View pack details and documentation.

Alternatively, install directly via pip (see Development Setup).

Refer to the NodeTool Registry repository for detailed guidelines on creating and publishing packs.

πŸ“š Documentation

The documentation site is built with Jekyll on GitHub Pages. Markdown files live in the docs/ directory and changes on main are deployed automatically. Start with the Getting Started guide and browse our new Tips and Tricks section for handy workflow shortcuts.

0