ragflow
// Universal Ragflow API client for RAG operations. Create datasets, upload documents, run chat queries against knowledge bases. Self-hosted RAG platform integration.
$ git log --oneline --stat
stars:1,933
forks:367
updated:March 4, 2026
SKILL.mdreadonly
SKILL.md Frontmatter
nameragflow
descriptionUniversal Ragflow API client for RAG operations. Create datasets, upload documents, run chat queries against knowledge bases. Self-hosted RAG platform integration.
version1.0.2
authorAnia
env[object Object]
metadata[object Object]
Ragflow API Client
Universal client for Ragflow — self-hosted RAG (Retrieval-Augmented Generation) platform.
Features
- Dataset management — Create, list, delete knowledge bases
- Document upload — Upload files or text content
- Chat queries — Run RAG queries against datasets
- Chunk management — Trigger parsing, list chunks
Usage
# List datasets
node {baseDir}/scripts/ragflow.js datasets
# Create dataset
node {baseDir}/scripts/ragflow.js create-dataset --name "My Knowledge Base"
# Upload document
node {baseDir}/scripts/ragflow.js upload --dataset DATASET_ID --file article.md
# Chat query
node {baseDir}/scripts/ragflow.js chat --dataset DATASET_ID --query "What is stroke?"
# List documents in dataset
node {baseDir}/scripts/ragflow.js documents --dataset DATASET_ID
Configuration
Set environment variables in your .env:
RAGFLOW_URL=https://your-ragflow-instance.com
RAGFLOW_API_KEY=your-api-key
API
This skill wraps Ragflow's REST API:
GET /api/v1/datasets— List datasetsPOST /api/v1/datasets— Create datasetDELETE /api/v1/datasets/{id}— Delete datasetPOST /api/v1/datasets/{id}/documents— Upload documentPOST /api/v1/datasets/{id}/chunks— Trigger parsingPOST /api/v1/datasets/{id}/retrieval— RAG query
Full API docs: https://ragflow.io/docs
Examples
// Programmatic usage
const ragflow = require('{baseDir}/lib/api.js');
// Upload and parse
await ragflow.uploadDocument(datasetId, './article.md', { filename: 'article.md' });
await ragflow.triggerParsing(datasetId, [documentId]);
// Query
const answer = await ragflow.chat(datasetId, 'What are the stroke guidelines?');