name: nodetool
description: 可视化 AI 工作流构建器——融合 ComfyUI 的节点式灵活性与 n8n 的自动化能力,用于构建 LLM 智能体、RAG 管道和多模态数据流。本地优先,开源(AGPL-3.0)。
可视化 AI 工作流构建器,将 ComfyUI 基于节点的灵活性与 n8n 的自动化能力相结合。在本地机器上构建 LLM 智能体、RAG 管道和多模态数据流。
# 查看系统信息
nodetool info
# 列出工作流
nodetool workflows list
# 交互式运行工作流
nodetool run <workflow_id>
# 启动聊天界面
nodetool chat
# 启动 Web 服务器
nodetool serve
快速单行安装:
curl -fsSL https://raw.githubusercontent.com/nodetool-ai/nodetool/refs/heads/main/install.sh | bash
自定义安装目录:
curl -fsSL https://raw.githubusercontent.com/nodetool-ai/nodetool/refs/heads/main/install.sh | bash --prefix ~/.nodetool
非交互模式(自动安装,无提示):
两种脚本均支持静默安装:
# Linux/macOS - 使用 -y 参数
curl -fsSL https://raw.githubusercontent.com/nodetool-ai/nodetool/refs/heads/main/install.sh | bash -y
# Windows - 使用 -Yes 参数
irm https://raw.githubusercontent.com/nodetool-ai/nodetool/refs/heads/main/install.ps1 | iex; .\install.ps1 -Yes
非交互模式的特点:
- 自动跳过所有确认提示
- 无需用户输入即可完成安装
- 非常适合 CI/CD 流水线或自动化部署
快速单行安装:
irm https://raw.githubusercontent.com/nodetool-ai/nodetool/refs/heads/main/install.ps1 | iex
自定义安装目录:
.\install.ps1 -Prefix "C:\nodetool"
非交互模式:
.\install.ps1 -Yes
管理和执行 NodeTool 工作流:
# 列出所有工作流(用户工作流 + 示例)
nodetool workflows list
# 获取特定工作流的详细信息
nodetool workflows get <workflow_id>
# 通过 ID 运行工作流
nodetool run <workflow_id>
# 从文件运行工作流
nodetool run workflow.json
# 以 JSONL 格式输出运行(用于自动化)
nodetool run <workflow_id> --jsonl
以不同模式执行工作流:
# 交互模式(默认)- 美观的输出
nodetool run workflow_abc123
# JSONL 模式 - 流式 JSON 输出,供子进程使用
nodetool run workflow_abc123 --jsonl
# 标准输入模式 - 通过管道输入 RunJobRequest JSON
echo '{"workflow_id":"abc","user_id":"1","auth_token":"token","params":{}}' | nodetool run --stdin --jsonl
# 使用自定义用户 ID
nodetool run workflow_abc123 --user-id "custom_user_id"
# 使用认证令牌
nodetool run workflow_abc123 --auth-token "my_auth_token"
管理工作流资产(节点、模型、文件):
# 列出所有资产
nodetool assets list
# 获取资产详情
nodetool assets get <asset_id>
管理 NodeTool 包(导出工作流、生成文档):
# 列出包
nodetool package list
# 生成文档
nodetool package docs
# 生成节点文档
nodetool package node-docs
# 生成工作流文档(Jekyll)
nodetool package workflow-docs
# 扫描目录中的节点并创建包
nodetool package scan
# 初始化新的包项目
nodetool package init
管理后台作业执行:
# 列出用户的作业
nodetool jobs list
# 获取作业详情
nodetool jobs get <job_id>
# 获取作业日志
nodetool jobs logs <job_id>
# 为工作流启动后台作业
nodetool jobs start <workflow_id>
将 NodeTool 部署到云平台(RunPod、GCP、Docker):
# 初始化 deployment.yaml
nodetool deploy init
# 列出部署
nodetool deploy list
# 添加新部署
nodetool deploy add
# 应用部署配置
nodetool deploy apply
# 检查部署状态
nodetool deploy status <deployment_name>
# 查看部署日志
nodetool deploy logs <deployment_name>
# 销毁部署
nodetool deploy destroy <deployment_name>
# 管理已部署实例上的集合
nodetool deploy collections
# 管理已部署实例上的数据库
nodetool deploy database
# 管理已部署实例上的工作流
nodetool deploy workflows
# 预览将要进行的更改
nodetool deploy plan
发现和管理 AI 模型(HuggingFace、Ollama):
# 按类型列出缓存的 HuggingFace 模型
nodetool model list-hf <hf_type>
# 列出所有 HuggingFace 缓存条目
nodetool model list-hf-all
# 列出支持的 HF 类型
nodetool model hf-types
# 检查 HuggingFace 缓存
nodetool model hf-cache
# 扫描缓存以获取信息
nodetool admin scan-cache
维护模型缓存和清理:
# 计算缓存总大小
nodetool admin cache-size
# 从缓存中删除 HuggingFace 模型
nodetool admin delete-hf <model_name>
# 下载 HuggingFace 模型并显示进度
nodetool admin download-hf <model_name>
# 下载 Ollama 模型
nodetool admin download-ollama <model_name>
交互式聊天和 Web 界面:
# 启动 CLI 聊天
nodetool chat
# 启动聊天服务器(WebSocket + SSE)
nodetool chat-server
# 启动 FastAPI 后端服务器
nodetool serve --host 0.0.0.0 --port 8000
# 指定静态资源文件夹
nodetool serve --static-folder ./static --apps-folder ./apps
# 开发模式,支持自动重载
nodetool serve --reload
# 生产模式
nodetool serve --production
启动支持 HTTPS 的反向代理:
# 启动代理服务器
nodetool proxy
# 检查代理状态
nodetool proxy-status
# 验证代理配置
nodetool proxy-validate-config
# 运行代理守护进程,支持 ACME HTTP + HTTPS
nodetool proxy-daemon
# 查看设置和密钥
nodetool settings show
# 为工作流生成自定义 HTML 应用
nodetool vibecoding
# 运行工作流并导出为 Python DSL
nodetool dsl-export
# 将工作流导出为 Gradio 应用
nodetool gradio-export
# 重新生成 DSL
nodetool codegen
# 管理数据库迁移
nodetool migrations
# 与远程同步数据库
nodetool sync
运行 NodeTool 工作流并获取结构化输出:
# 交互式运行工作流
nodetool run my_workflow_id
# 运行并流式输出 JSONL
nodetool run my_workflow_id --jsonl | jq -r '.[] | "\(.status) | \(.output)"'
为自定义包生成文档:
# 扫描节点并创建包
nodetool package scan
# 生成完整文档
nodetool package docs
将 NodeTool 实例部署到云端:
# 初始化部署配置
nodetool deploy init
# 添加 RunPod 部署
nodetool deploy add
# 部署并启动
nodetool deploy apply
检查和管理的缓存 AI 模型:
# 列出所有可用模型
nodetool model list-hf-all
# 检查缓存
nodetool model hf-cache
安装程序会设置:
- micromamba — Python 包管理器(conda 替代品)
- NodeTool 环境 — 位于 ~/.nodetool/env 的 Conda 环境
- Python 包 — 来自 NodeTool 注册表的 nodetool-core、nodetool-base
- 包装脚本 — 可从任何终端访问的 nodetool CLI
安装后,以下变量会自动配置:
# Conda 环境
export MAMBA_ROOT_PREFIX="$HOME/.nodetool/micromamba"
export PATH="$HOME/.nodetool/env/bin:$HOME/.nodetool/env/Library/bin:$PATH"
# 模型缓存目录
export HF_HOME="$HOME/.nodetool/cache/huggingface"
export OLLAMA_MODELS="$HOME/.nodetool/cache/ollama"
检查 NodeTool 环境和已安装的包:
nodetool info
输出显示:
- 版本
- Python 版本
- 平台/架构
- 已安装的 AI 包(OpenAI、Anthropic、Google、HF、Ollama、fal-client)
- 环境变量
- API 密钥状态