Install any skill in seconds. Free to start, no credit card required.
Get Started Free →majiayu000/agentic-rag-patterns
Advanced RAG with Self-RAG, Corrective-RAG, and knowledge graphs.
Passed 17 of 22 test cases with the skill, and 10 of 22 without it.
and 8 more in the full report
7 fixed10 passed either way5 still failing0 broke
Tokens, turns and time describe resource use, not a dollar price.
One of 7 test cases the skill fixed. Same model, same prompt, with and without the skill.
When defining the RAGState TypedDict for a LangGraph workflow supporting CRAG with retries, a developer suggested using field names query, attempts, and needs_web. What are the explicit field names required instead for the input query, retry tracking, and search flag?
| Checked | Without skill | With skill |
|---|---|---|
| The state dictionary uses question for the user query field name | Passed | Passed |
| The state dictionary uses retry_count for tracking rewrite attempts | Missed | Passed |
| The state dictionary uses web_search_needed for the boolean fallback flag | Missed | Passed |
The instructions your model reads when the skill loads.
Build self-correcting retrieval systems with LLM-driven decision making.
LangGraph 1.0.6 (Jan 2026): langgraph-checkpoint 4.0.0, compile-time checkpointer validation, namespace sanitization.
Query → [Retrieve] → [Grade] → [Generate/Rewrite/Web Search] → Response
↓ ↓
Documents Quality Check
↓
Route Decision:
- Good docs → Generate
- Poor docs → Rewrite query
- No docs → Web fallback
from langgraph.graph import StateGraph, START, END
from typing import TypedDict, List, Annotated
from langchain_core.documents import Document
import operator
class RAGState(TypedDict):
"""State for agentic RAG workflows."""
question: str
documents: Annotated[List[Document], operator.add]
generation: str
web_search_needed: bool
retry_count: int
relevance_scores: dict[str, float]
test cases passed, vs 10 / 22 without
More skills from the same source and nearby in the registry, with their headline benchmark lift.