Overview
Flowise is an open-source visual tool for building LLM workflows. It provides a drag-drop interface to connect LLMs, document loaders, vector stores, tools, and chains — then deploy as API endpoints.
Capabilities
- Build chatflows visually with drag-drop nodes
- Connect to OpenAI, Anthropic, Ollama, and local models
- Add document loaders (PDF, web, CSV, Notion)
- Integrate vector stores (Pinecone, FAISS, Chroma, Qdrant)
- Add tools (web search, calculator, API calls)
- Deploy as REST API with streaming support
- Embed chatbot widget in websites
When to Use
Trigger phrases:
"flowise builder"
"Flowise visual LLM workflow builder — drag-drop chatflows, API endpoints, docume"
Building LLM apps without writing code
Prototyping RAG chatbots quickly
Needing visual workflow design for AI pipelines
Deploying AI chatbots as APIs or website widgets
Self-hosting AI infrastructure
When NOT to Use
- Task requires custom AI model training (use ML tools)
- You need complex AI agent logic (use LangChain directly)
- Task is about data processing, not AI app building
- You don't have Flowise instance running
- Task requires real-time AI inference (use dedicated AI services)
- You need to build a custom AI application (use development tools)
Pseudo Code
Implementation patterns for common use cases with this skill.
Installation
# npm
npm install -g flowise
npx flowise start
# Docker
docker run -d -p 3000:3000 flowiseai/flowise
# Access at http://localhost:3000
Chatflow Architecture
Document Loader → Text Splitter → Embedding → Vector Store
↓
User Question → Embedding → Vector Store Retriever → LLM Chain → Response
API Usage
# Prediction
curl -X POST http://localhost:3000/api/v1/prediction/{chatflow-id} \
-H "Content-Type: application/json" \
-d '{"question": "What is the return policy?", "overrideConfig": {}}'
# Streaming
curl -X POST http://localhost:3000/api/v1/prediction/{chatflow-id} \
-H "Content-Type: application/json" \
-d '{"question": "Hello", "streaming": true}'
Embed Widget
<script type="module">
import Chatbot from "https://cdn.jsdelivr.net/npm/flowise-embed/dist/web.js"
Chatbot.init({
chatflowid: "your-chatflow-id",
apiHost: "http://localhost:3000",
})
</script>
Node Configuration
| Node |
Config |
| ChatOpenAI |
model, temperature, maxTokens, apiKey |
| OpenAIEmbeddings |
modelName, apiKey |
| VectorStoreRetriever |
topK, filter |
| TextSplitter |
chunkSize, chunkOverlap |
| Calculator |
— |
| RequestsGet |
url, headers |
| CustomJS |
code |
Common Patterns
| Pattern |
When to Use |
| Document Loader → Vector Store |
Index knowledge base |
| Retriever → LLM Chain |
RAG chatbot |
| Agent + Tools |
Autonomous assistant |
| Conditional Branches |
Different paths based on input |
| Memory |
Multi-turn conversations |
Error Handling
| Error |
Cause |
Fix |
| API key not set |
Missing env var |
Set OPENAI_API_KEY in .env |
| Vector store empty |
Documents not indexed |
Re-upload and process documents |
| Node connection error |
Invalid node config |
Check node settings in UI |
| Streaming not working |
Missing streaming flag |
Add streaming: true in API call |
Red Flags
- Not testing flows before deployment
- Ignoring error handling in flows
- Missing logging and monitoring
- Not documenting flow logic
- Ignoring rate limits and quotas
Verification
Process
- Analyze the task requirements
- Apply domain expertise
- Verify output quality
Anti-Rationalization Table
| Rationalization |
Reality |
| "Manual is faster for one-off tasks" |
One-off tasks become recurring. Automate early, save time later. |
| "I will add error handling later" |
You never do. Handle errors from day one. |
| "Automation is overkill" |
If you do it twice, automate it. If you do it daily, it is critical infrastructure. |
1---2name: flowise-builder3description: Use when flowise visual LLM workflow builder — drag-drop chatflows, API endpoints, document loaders, tools. Use when working with flowise builder.4license: Apache-2.05---678## Overview910Flowise is an open-source visual tool for building LLM workflows. It provides a drag-drop interface to connect LLMs, document loaders, vector stores, tools, and chains — then deploy as API endpoints.1112## Capabilities1314- Build chatflows visually with drag-drop nodes15- Connect to OpenAI, Anthropic, Ollama, and local models16- Add document loaders (PDF, web, CSV, Notion)17- Integrate vector stores (Pinecone, FAISS, Chroma, Qdrant)18- Add tools (web search, calculator, API calls)19- Deploy as REST API with streaming support20- Embed chatbot widget in websites2122## When to Use23**Trigger phrases:**24- "flowise builder"25- "Flowise visual LLM workflow builder — drag-drop chatflows, API endpoints, docume"262728- Building LLM apps without writing code29- Prototyping RAG chatbots quickly30- Needing visual workflow design for AI pipelines31- Deploying AI chatbots as APIs or website widgets32- Self-hosting AI infrastructure3334## When NOT to Use3536- Task requires custom AI model training (use ML tools)37- You need complex AI agent logic (use LangChain directly)38- Task is about data processing, not AI app building39- You don't have Flowise instance running40- Task requires real-time AI inference (use dedicated AI services)41- You need to build a custom AI application (use development tools)4243## Pseudo Code4445Implementation patterns for common use cases with this skill.464748### Installation4950```bash51# npm52npm install -g flowise53npx flowise start5455# Docker56docker run -d -p 3000:3000 flowiseai/flowise5758# Access at http://localhost:300059```6061### Chatflow Architecture6263```64Document Loader → Text Splitter → Embedding → Vector Store65 ↓66User Question → Embedding → Vector Store Retriever → LLM Chain → Response67```6869### API Usage7071```bash72# Prediction73curl -X POST http://localhost:3000/api/v1/prediction/{chatflow-id} \74 -H "Content-Type: application/json" \75 -d '{"question": "What is the return policy?", "overrideConfig": {}}'7677# Streaming78curl -X POST http://localhost:3000/api/v1/prediction/{chatflow-id} \79 -H "Content-Type: application/json" \80 -d '{"question": "Hello", "streaming": true}'81```8283### Embed Widget8485```html86<script type="module">87 import Chatbot from "https://cdn.jsdelivr.net/npm/flowise-embed/dist/web.js"88 Chatbot.init({89 chatflowid: "your-chatflow-id",90 apiHost: "http://localhost:3000",91 })92</script>93```9495### Node Configuration9697| Node | Config |98|------|--------|99| ChatOpenAI | model, temperature, maxTokens, apiKey |100| OpenAIEmbeddings | modelName, apiKey |101| VectorStoreRetriever | topK, filter |102| TextSplitter | chunkSize, chunkOverlap |103| Calculator | — |104| RequestsGet | url, headers |105| CustomJS | code |106107## Common Patterns108109| Pattern | When to Use |110|---------|------------|111| Document Loader → Vector Store | Index knowledge base |112| Retriever → LLM Chain | RAG chatbot |113| Agent + Tools | Autonomous assistant |114| Conditional Branches | Different paths based on input |115| Memory | Multi-turn conversations |116117## Error Handling118119| Error | Cause | Fix |120|-------|-------|-----|121| API key not set | Missing env var | Set OPENAI_API_KEY in .env |122| Vector store empty | Documents not indexed | Re-upload and process documents |123| Node connection error | Invalid node config | Check node settings in UI |124| Streaming not working | Missing streaming flag | Add `streaming: true` in API call |125126## Red Flags127128- Not testing flows before deployment129- Ignoring error handling in flows130- Missing logging and monitoring131- Not documenting flow logic132- Ignoring rate limits and quotas133134## Verification135136- [ ] Flows are tested end-to-end137- [ ] Error handling is in place138- [ ] Logging and monitoring are configured139- [ ] Flow logic is documented140- [ ] Rate limits are respected141142## Process1431441. Analyze the task requirements1452. Apply domain expertise1463. Verify output quality147148## Anti-Rationalization Table149150| Rationalization | Reality |151|---|---|152| "Manual is faster for one-off tasks" | One-off tasks become recurring. Automate early, save time later. |153| "I will add error handling later" | You never do. Handle errors from day one. |154| "Automation is overkill" | If you do it twice, automate it. If you do it daily, it is critical infrastructure. |