Use this skill to operate RAGFlow through scripts/ragflow.js. The CLI wraps the full v0.26.0 REST API - every action goes through node {baseDir}/scripts/ragflow.js . Prefer --json on any command when the output will be parsed or chained into another step.
RAGFLOW_URL and RAGFLOW_API_KEY in the environment or this skill's .env.
RAGFLOW_DELETE_CHUNK_RETRIES and RAGFLOW_DELETE_CHUNK_RETRY_DELAY_MS.
RAGFLOW_REPRO_TIMEOUT_MS, RAGFLOW_REPRO_DELETE_RETRIES, RAGFLOW_REPRO_DELETE_RETRY_DELAY_MS, and RAGFLOW_REPRO_EMBEDDING_MODEL.
https:// for RAGFLOW_URL to protect the API key in transit. Local development (http://localhost) is acceptable for testing.
RAGFLOW_API_KEY in chat messages or commit it to version control. Use environment variables or the skill's .env file.
| Scenario | Commands |
|----------|----------|
| Knowledge base setup | create-dataset, list-datasets, get-dataset, update-dataset, delete-datasets |
| Document ingestion | upload-documents, list-documents, get-document, update-document, delete-documents, download-document, preview-document, metadata-summary |
| Parsing & chunking | start-parsing, stop-parsing, wait-parsing, list-chunks, add-chunk, update-chunk, delete-chunks |
| Direct retrieval | retrieve |
| Chat assistant | create-chat, list-chats, get-chat, update-chat, patch-chat, delete-chats |
| Chat sessions | create-session, list-sessions, delete-sessions, chat, chat-session |
| Agent | create-agent, list-agents, get-agent, update-agent, delete-agents |
| Agent Tags | list-agent-tags, update-agent-tags |
| Agent sessions | create-agent-session, list-agent-sessions, delete-agent-sessions, agent-chat |
| Connector | list-connectors, create-connector, get-connector, update-connector, delete-connector |
| RAPTOR | run-raptor, trace-raptor |
| Embedded website access | list-system-tokens, create-system-token, delete-system-token, embed-code, embed-info, embed-chat, embed-agent-chat |
| Model discovery | list-models, list-added-models, list-default-models, set-default-model |
| Model providers | list-providers, get-provider, add-provider, delete-provider, list-provider-models, list-provider-instances, get-provider-instance, create-provider-instance, delete-provider-instances, verify-provider, list-instance-models, add-instance-model, set-model-status |
| System | system-version, get-log-levels, set-log-level |
create-dataset --name "My KB" --chunk-method naive
upload-documents --dataset --files ./doc1.pdf ./doc2.txt
start-parsing --dataset --doc-ids
wait-parsing --dataset --doc-ids
retrieve --question "What is X?" --datasets
create-chat --name "Q&A" --datasets --llm-id qwen-turbo@Tongyi-Qianwen
create-session --chat
chat-session --chat --session --question "Hello"
create-agent --title "Assistant" --dsl @agent_dsl.json
create-agent-session --agent
agent-chat --agent --session --question "Hello"
list-agent-tags --agent
update-agent-tags --agent --tags "Tag1,Tag2"
create-connector --name "GitHub" --type github --token
list-connectors
get-connector --id
list-providers --available to see configurable providers
add-provider --name
create-provider-instance --name --instance --api-key (credentials live on an instance; a provider can have several)
add-instance-model --name --instance --model-name --model-type chat
set-default-model --model-type chat --model-provider --model-instance --model-name
Use verify-provider --name to test a key without persisting an instance.
run-raptor --dataset --method raptor
trace-raptor --id
agent-chat is streaming by default. Use --stream false when you need the final JSON result in one response.
embed-code --chat --type fullscreen or embed-code --agent --type widget
embed-info --chat or embed-info --agent
embed-chat --chat --question "Hello" or embed-agent-chat --agent --question "Hello"
embed-chat automatically creates the embedded chatbot session when --session is omitted. RAGFlow's shared-site route only creates a session and returns the prologue on the first no-session request, so the CLI bootstraps session_id first and then sends the real question.
The first step in any RAGFlow operation is resolving the target resource ID. After that, choose the right path:
RagflowClient method.
delete-datasets, delete-documents, delete-chunks, delete-chats, delete-sessions, or delete-agents - unless the resource is a temporary artifact you created in the same workflow and the user asked you to clean up.
filename as the document name. If a user attachment is materialized as a task ID or temporary path, pass the original filename inline: upload-documents --files = .
page_size at 100. RAGFlow v0.26.0 rejects page_size > 100 on list endpoints. The CLI clamps --page-size (and retrieve --top-n) to 100 and prints a warning, so oversized requests succeed instead of erroring; page through results when you need more than 100 items.
model@provider format. When creating datasets with --embedding-model or chat assistants with --llm-id, the server expects the full identifier, for example text-embedding-v4@Tongyi-Qianwen or qwen-turbo@Tongyi-Qianwen, not a numeric model row ID. Use list-models to discover model names and providers.
chat-session posts to /api/v1/chat/completions with chat_id and session_id in the body.
POST /api/v1/chat/completions appends only the latest message to stored history. Use --pass-all-history or set pass_all_history_messages: true in the API payload to replace the entire history. conversation_id is accepted as an alias for session_id.
embed-code, embed-info, embed-chat, and embed-agent-chat use the shared-site /api/v1/chatbots/ or /api/v1/agentbots/ routes. If --beta is not supplied, the CLI reuses the first /api/v1/system/tokens item with beta or creates one. For chatbot completions, the CLI auto-bootstraps session_id unless --session is supplied.
beta values, and embed URLs or iframe HTML containing auth= are operational secrets. Use them when needed for the task, but do not print the full values back to the user unless the user explicitly asks for them.
embed-code uses --origin when supplied; otherwise it falls back to RAGFLOW_URL. When the API base URL and the public web origin differ, pass --origin explicitly so the generated iframe points at the actual shared-site page.
AGENT_GUIDE.md. In practice, hand-authored agents should include components, history, path, retrieval, variables, globals, and graph, plus graph.nodes[].data.name for every component-backed node.
create-connector passes --config through verbatim, so v0.26.0's new connector types (OneDrive, Outlook, Microsoft Teams, Slack, SharePoint, Salesforce, Azure Blob Storage) work by setting the type and auth fields in the config JSON.
list-providers, create-provider-instance, set-default-model, etc.) uses the v0.26.0 /api/v1/models and /api/v1/providers routes with RAGFLOW_API_KEY. Credentials live on an instance, and a provider can hold multiple instances (multiple API keys). Treat any --api-key value as sensitive operational secret output - use it for the task but do not print it back to the user unless explicitly asked.
agent-chat posts to /api/v1/agents/chat/completions with agent_id in the body. Pass --chat-template-kwargs '{"enable_thinking": false}' to toggle thinking/reasoning modes on supported models.
Agent produces loop items, prefer an object-shaped structured output such as {"items":[...]} and point Iteration.params.items_ref at agent:0@structured.items. Start from references/examples/agents/04-iteration-agent.json.
rm_chunk deleted chunks 0, expect N due to document-store refresh lag even when the chunk exists. The CLI handles this automatically - it retries after confirming the chunk is still visible via exact ID lookup. If retries still fail, run scripts/repro-delete-chunks.js for a clean diagnosis.
When presenting results to the user, follow the templates in references/REFERENCE.md. Key conventions:
--json output. For the final user-facing response, convert that raw result into a concise summary that follows the reference templates instead of pasting the CLI payload verbatim.
UNSTART, RUNNING, CANCEL, DONE, FAIL
token, beta, and any auth= query value unless the user explicitly asks for the secret
For embed and token-related commands, apply these response rules:
共 5 个版本