Show HN: NodeTool – Open-Source Visual Builder for AI Workflows
nodetool.aiNodeTool is an open-source, no-code tool that lets you build and test AI workflows through a visual interface.
Why NodeTool? We started building NodeTool 1.5 years ago to make working with AI more straightforward and accessible. Technical challenges like Python dependencies often slow down the process, so we designed a tool that simplifies the workflow and helps you focus on creating and experimenting.
Key Features: - Visual Workflow Editor: Create AI workflows using a drag-and-drop interface, supporting text, images, audio, and video.
- Seamless Integration: Combine local models (HuggingFace, Ollama) with remote services (OpenAI, Anthropic, Replicate, Luma, Kling) within the same environment.
- Model and Asset Management: Download models directly from HuggingFace. Easily import and organize media assets for use in your AI creations.
- ComfyUI Integration: Import your existing ComfyUI workflows into NodeTool. Use Comfy nodes directly within NodeTool without leaving the platform.
- Cross-Platform: Available as a standalone application for macOS, Windows, and Linux.
Try It Out: - https://nodetool.ai/ - https://github.com/nodetool-ai/nodetool
We’d Love Your Thoughts:
- What workflows should we support next?
- Which features or integrations are you missing?
- What would make NodeTool part of your regular workflow?
Thanks for checking it out! I like that you can use it locally with Ollama. But is it just for local development and experimenting? One of the features that I like about Dify is when I create a workflow, I can call it via API, see logs, and debug each node. Is there a way to export workflows from NodeTool to an API? It's possible to call the API locally: We'll be launching a cloud version soon that let's you deploy your workflow in the cloud with easy API access. Try out the AIME modules. These run via the AIME API server in the AIME Cloud.
See here for more details: https://github.com/nodetool-ai/nodetool const response = await fetch("http://localhost:8000/api/jobs/run", {
method: "POST",
headers: {
"Content-Type": "application/json",
},
body: JSON.stringify({
workflow_id: workflowId,
params: params,
}),
});
const outputs = await response.json();