agentsclimarketplace

Ai rag pipeline

Skill marktantongco/opencodelinux/skills/ai-rag-pipeline

Merged opencode config + agents + accomplishments showcase — 217 skills, 17 agent profiles, 6 MCP servers, 78-server registry

Install
npx -y skills add marktantongco/opencodelinux --skill ai-rag-pipeline

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

2 things to look at

  • no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.
  • 0 stars0 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

What its author says it does

Copied from the file, not written here

Build RAG (Retrieval Augmented Generation) pipelines with web search and LLMs. Tools: Tavily Search, Exa Search, Exa Answer, Claude, GPT-4, Gemini via OpenRouter. Capabilities: research, fact-checking, grounded responses, knowledge retrieval. Use for: AI agents, research assistants, fact-checkers, knowledge bases. Triggers: rag, retrieval augmented generation, grounded ai, search and answer, research agent, fact checking, knowledge retrieval, ai research, search + llm, web grounded, perplexity alternative, ai with sources, citation, research pipeline

SKILL.md

8.1 KB, as published. Nobody here has run it

Install the belt CLI skill: npx skills add belt-sh/cli

AI RAG Pipeline

Build RAG (Retrieval Augmented Generation) pipelines via inference.sh CLI.

AI RAG Pipeline

Quick Start

Requires inference.sh CLI (belt). Install instructions

belt login

# Simple RAG: Search + LLM
SEARCH=$(belt app run tavily/search-assistant --input '{"query": "latest AI developments 2024"}')
belt app run openrouter/claude-sonnet-45 --input "{
  \"prompt\": \"Based on this research, summarize the key trends: $SEARCH\"
}"

What is RAG?

RAG combines:

  1. Retrieval: Fetch relevant information from external sources
  2. Augmentation: Add retrieved context to the prompt
  3. Generation: LLM generates response using the context

This produces more accurate, up-to-date, and verifiable AI responses.

RAG Pipeline Patterns

Pattern 1: Simple Search + Answer

[User Query] -> [Web Search] -> [LLM with Context] -> [Answer]

Pattern 2: Multi-Source Research

[Query] -> [Multiple Searches] -> [Aggregate] -> [LLM Analysis] -> [Report]

Pattern 3: Extract + Process

[URLs] -> [Content Extraction] -> [Chunking] -> [LLM Summary] -> [Output]

Available Tools

Search Tools

ToolApp IDBest For
Tavily Searchtavily/search-assistantAI-powered search with answers
Exa Searchexa/searchNeural search, semantic matching
Exa Answerexa/answerDirect factual answers

Extraction Tools

ToolApp IDBest For
Tavily Extracttavily/extractClean content from URLs
Exa Extractexa/extractAnalyze web content

LLM Tools

ModelApp IDBest For
Claude Sonnet 4.5openrouter/claude-sonnet-45Complex analysis
Claude Haiku 4.5openrouter/claude-haiku-45Fast processing
GPT-4oopenrouter/gpt-4oGeneral purpose
Gemini 2.5 Proopenrouter/gemini-25-proLong context

Pipeline Examples

Basic RAG Pipeline

# 1. Search for information
SEARCH_RESULT=$(belt app run tavily/search-assistant --input '{
  "query": "What are the latest breakthroughs in quantum computing 2024?"
}')

# 2. Generate grounded response
belt app run openrouter/claude-sonnet-45 --input "{
  \"prompt\": \"You are a research assistant. Based on the following search results, provide a comprehensive summary with citations.

Search Results:
$SEARCH_RESULT

Provide a well-structured summary with source citations.\"
}"

Multi-Source Research

# Search multiple sources
TAVILY=$(belt app run tavily/search-assistant --input '{"query": "electric vehicle market trends 2024"}')
EXA=$(belt app run exa/search --input '{"query": "EV market analysis latest reports"}')

# Combine and analyze
belt app run openrouter/claude-sonnet-45 --input "{
  \"prompt\": \"Analyze these research results and identify common themes and contradictions.

Source 1 (Tavily):
$TAVILY

Source 2 (Exa):
$EXA

Provide a balanced analysis with sources.\"
}"

URL Content Analysis

# 1. Extract content from specific URLs
CONTENT=$(belt app run tavily/extract --input '{
  "urls": [
    "https://example.com/research-paper",
    "https://example.com/industry-report"
  ]
}')

# 2. Analyze extracted content
belt app run openrouter/claude-sonnet-45 --input "{
  \"prompt\": \"Analyze these documents and extract key insights:

$CONTENT

Provide:
1. Key findings
2. Data points
3. Recommendations\"
}"

Fact-Checking Pipeline

# Claim to verify
CLAIM="AI will replace 50% of jobs by 2030"

# 1. Search for evidence
EVIDENCE=$(belt app run tavily/search-assistant --input "{
  \"query\": \"$CLAIM evidence studies research\"
}")

# 2. Verify claim
belt app run openrouter/claude-sonnet-45 --input "{
  \"prompt\": \"Fact-check this claim: '$CLAIM'

Based on the following evidence:
$EVIDENCE

Provide:
1. Verdict (True/False/Partially True/Unverified)
2. Supporting evidence
3. Contradicting evidence
4. Sources\"
}"

Research Report Generator

TOPIC="Impact of generative AI on creative industries"

# 1. Initial research
OVERVIEW=$(belt app run tavily/search-assistant --input "{\"query\": \"$TOPIC overview\"}")
STATISTICS=$(belt app run exa/search --input "{\"query\": \"$TOPIC statistics data\"}")
OPINIONS=$(belt app run tavily/search-assistant --input "{\"query\": \"$TOPIC expert opinions\"}")

# 2. Generate comprehensive report
belt app run openrouter/claude-sonnet-45 --input "{
  \"prompt\": \"Generate a comprehensive research report on: $TOPIC

Research Data:
== Overview ==
$OVERVIEW

== Statistics ==
$STATISTICS

== Expert Opinions ==
$OPINIONS

Format as a professional report with:
- Executive Summary
- Key Findings
- Data Analysis
- Expert Perspectives
- Conclusion
- Sources\"
}"

Quick Answer with Sources

# Use Exa Answer for direct factual questions
belt app run exa/answer --input '{
  "question": "What is the current market cap of NVIDIA?"
}'

Best Practices

1. Query Optimization

# Bad: Too vague
"AI news"

# Good: Specific and contextual
"latest developments in large language models January 2024"

2. Context Management

# Summarize long search results before sending to LLM
SEARCH=$(belt app run tavily/search-assistant --input '{"query": "..."}')

# If too long, summarize first
SUMMARY=$(belt app run openrouter/claude-haiku-45 --input "{
  \"prompt\": \"Summarize these search results in bullet points: $SEARCH\"
}")

# Then use summary for analysis
belt app run openrouter/claude-sonnet-45 --input "{
  \"prompt\": \"Based on this research summary, provide insights: $SUMMARY\"
}"

3. Source Attribution

Always ask the LLM to cite sources:

belt app run openrouter/claude-sonnet-45 --input '{
  "prompt": "... Always cite sources in [Source Name](URL) format."
}'

4. Iterative Research

# First pass: broad search
INITIAL=$(belt app run tavily/search-assistant --input '{"query": "topic overview"}')

# Second pass: dive deeper based on findings
DEEP=$(belt app run tavily/search-assistant --input '{"query": "specific aspect from initial search"}')

Pipeline Templates

Agent Research Tool

#!/bin/bash
# research.sh - Reusable research function

research() {
  local query="$1"

  # Search
  local results=$(belt app run tavily/search-assistant --input "{\"query\": \"$query\"}")

  # Analyze
  belt app run openrouter/claude-haiku-45 --input "{
    \"prompt\": \"Summarize: $results\"
  }"
}

research "your query here"

Related Skills

# Web search tools
npx skills add inference-sh/skills@web-search

# LLM models
npx skills add inference-sh/skills@llm-models

# Content pipelines
npx skills add inference-sh/skills@ai-content-pipeline

# Full platform skill
npx skills add inference-sh/skills@infsh-cli

Browse all apps: belt app list

Documentation

Keep looking

Skills are one crate of 328,083. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.