Requirements
- Target platform
- OpenClaw
- Install method
- Manual import
- Extraction
- Extract archive
- Prerequisites
- OpenClaw
- Primary doc
- SKILL.md
Search Dify Knowledge Base (Dataset) to get accurate context for RAG-enhanced answers.
Search Dify Knowledge Base (Dataset) to get accurate context for RAG-enhanced answers.
Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.
I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete.
I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run.
🔍 Search your Dify Knowledge Base to get accurate, contextual answers This skill enables AI agents to query Dify datasets for RAG (Retrieval-Augmented Generation) context retrieval. Perfect for knowledge base Q&A, documentation search, and contextual AI responses.
List Knowledge Bases - Discover all available Dify datasets Smart Search - Query datasets with hybrid, semantic, or keyword search Auto-Discovery - Automatically find available datasets if ID not provided Configurable Results - Adjust top-k, search method, and reranking Error Handling - Graceful error messages for debugging Zero Hardcoding - All configuration via environment variables
Set up in openclaw.json: { "env": { "vars": { "DIFY_API_KEY": "${DIFY_API_KEY}", "DIFY_BASE_URL": "https://dify.example.com/v1" } } } Environment Variables: VariableRequiredDefaultDescriptionDIFY_API_KEY✅ Yes-Your Dify API Key (from Settings → API)DIFY_BASE_URL❌ Nohttp://localhost/v1Your Dify instance base URL
pip3 install requests
Lists all available knowledge bases (datasets) in your Dify instance. Invocation: dify_list tool Example Response: { "status": "success", "count": 2, "datasets": [ { "id": "dataset-abc123", "name": "Product Documentation", "doc_count": 42, "description": "All product guides and tutorials" }, { "id": "dataset-xyz789", "name": "API Reference", "doc_count": 156, "description": "REST API documentation" } ] } Usage: {}
Searches a Dify Dataset for relevant context chunks. Invocation: dify_search tool (mapped to python3 scripts/search.py) Parameters: ParameterTypeRequiredDefaultDescriptionquerystring✅ Yes-Search query or questiondataset_idstring❌ NoAuto-discoverSpecific dataset ID to searchtop_kinteger❌ No3Number of results to returnsearch_methodstring❌ Nohybrid_searchSearch strategyreranking_enableboolean❌ NofalseEnable reranking for better results Search Methods: hybrid_search - Combine semantic + keyword search (recommended) semantic_search - Meaning-based similarity search keyword_search - Exact keyword matching Example Usage: { "query": "How do I configure OpenClaw?", "top_k": 5 } { "query": "API authentication methods", "dataset_id": "dataset-xyz789", "search_method": "semantic_search", "reranking_enable": true } Example Response: { "status": "success", "query": "How do I configure OpenClaw?", "dataset_id": "dataset-abc123", "count": 3, "results": [ { "content": "To configure OpenClaw, edit the openclaw.json file...", "score": 0.8923, "title": "Installation Guide", "document_id": "doc-001" }, { "content": "OpenClaw supports environment variables via...", "score": 0.8451, "title": "Configuration Options", "document_id": "doc-002" } ] }
[ { "tool": "dify_list", "parameters": {} }, { "tool": "dify_search", "parameters": { "query": "What are the system requirements?", "top_k": 5, "search_method": "hybrid_search" } } ]
ErrorSolutionMissing DIFY_API_KEYSet DIFY_API_KEY in environment variablesConnection refusedCheck DIFY_BASE_URL is correct and accessibleNo datasets foundVerify dataset exists in your Dify workspaceAPI request failedCheck network connectivity and API key permissions
Run manually to see detailed errors: DIFY_API_KEY=your-key python3 scripts/search.py <<< '{"query":"test"}'
# Example: Use search results in AI response results = dify_search(query, top_k=5) context = "\n".join([r["content"] for r in results["results"]]) final_prompt = f"Answer based on context:\n\n{context}\n\nQuestion: {query}"
For searching across multiple datasets, loop through them: { "query": "Find information about authentication", "dataset_id": "dataset-api-docs" } Then query another dataset separately.
Never commit API keys - Use environment variables or .env files Rotate keys regularly - Generate new keys in Dify Settings Restrict access - Limit API key permissions where possible
This skill uses the Dify Dataset API: List Datasets: GET /v1/datasets Search: POST /v1/datasets/{id}/retrieve For API documentation, see: https://docs.dify.ai/reference/api-reference
v1.1.0 (2026-02-08): ✅ Added search method selection (hybrid/semantic/keyword) ✅ Added reranking support ✅ Auto-discovery of datasets ✅ Improved error handling ✅ Removed hardcoded URLs (fully configurable) ✅ Added detailed logging v1.0.0 (2026-02-06): Initial release Basic list and search functionality
Code helpers, APIs, CLIs, browser automation, testing, and developer operations.
Largest current source with strong distribution and engagement signals.