Crawler Summary

crewai-rag-chatbot answer-first brief

4-agent CrewAI RAG chatbot: query planning, semantic retrieval, cited synthesis, and claim validation. Groq Llama 3.3 70B + ChromaDB + local embeddings. Docker + EC2 deploy. CrewAI RAG Chatbot $1 $1 $1 $1 $1 $1 A **citation-first RAG chatbot** built on a 4-agent CrewAI pipeline. Upload any PDF documents; the system decomposes your question, retrieves relevant passages, synthesises a grounded answer, and then **validates every factual claim** against the source chunks before presenting it to you. LLM inference runs on $1 (Llama 3.3 70B). Embeddings are computed locally (no API cost). The Capability contract not published. No trust telemetry is available yet. Last updated 4/15/2026.

Freshness

Last checked 4/15/2026

Best For

crewai-rag-chatbot is best for crewai, multi-agent workflows where OpenClaw compatibility matters.

Not Ideal For

Contract metadata is missing or unavailable for deterministic execution.

Evidence Sources Checked

editorial-content, GITHUB REPOS, runtime-metrics, public facts pack

Claim this agent
Agent DossierGITHUB REPOSSafety: 66/100

crewai-rag-chatbot

4-agent CrewAI RAG chatbot: query planning, semantic retrieval, cited synthesis, and claim validation. Groq Llama 3.3 70B + ChromaDB + local embeddings. Docker + EC2 deploy. CrewAI RAG Chatbot $1 $1 $1 $1 $1 $1 A **citation-first RAG chatbot** built on a 4-agent CrewAI pipeline. Upload any PDF documents; the system decomposes your question, retrieves relevant passages, synthesises a grounded answer, and then **validates every factual claim** against the source chunks before presenting it to you. LLM inference runs on $1 (Llama 3.3 70B). Embeddings are computed locally (no API cost). The

OpenClawself-declared

Public facts

4

Change events

1

Artifacts

0

Freshness

Apr 15, 2026

Verifiededitorial-contentNo verified compatibility signals

Capability contract not published. No trust telemetry is available yet. Last updated 4/15/2026.

Trust evidence available

Trust score

Unknown

Compatibility

OpenClaw

Freshness

Apr 15, 2026

Vendor

Ashish Code

Artifacts

0

Benchmarks

0

Last release

Unpublished

Executive Summary

Key links, install path, and a quick operational read before the deeper crawl record.

Verifiededitorial-content

Summary

Capability contract not published. No trust telemetry is available yet. Last updated 4/15/2026.

Setup snapshot

  1. 1

    Setup complexity is LOW. This package is likely designed for quick installation with minimal external side-effects.

  2. 2

    Final validation: Expose the agent to a mock request payload inside a sandbox and trace the network egress before allowing access to real customer data.

Evidence Ledger

Everything public we have scraped or crawled about this agent, grouped by evidence type with provenance.

Verifiededitorial-content
Vendor (1)

Vendor

Ashish Code

profilemedium
Observed Apr 15, 2026Source linkProvenance
Compatibility (1)

Protocol compatibility

OpenClaw

contractmedium
Observed Apr 15, 2026Source linkProvenance
Security (1)

Handshake status

UNKNOWN

trustmedium
Observed unknownSource linkProvenance
Integration (1)

Crawlable docs

6 indexed pages on the official domain

search_documentmedium
Observed Apr 15, 2026Source linkProvenance

Release & Crawl Timeline

Merged public release, docs, artifact, benchmark, pricing, and trust refresh events.

Self-declaredagent-index

Artifacts Archive

Extracted files, examples, snippets, parameters, dependencies, permissions, and artifact metadata.

Self-declaredGITHUB REPOS

Extracted files

0

Examples

6

Snippets

0

Languages

python

Executable Examples

mermaid

flowchart LR
    subgraph Ingest["πŸ“„ Ingestion"]
        PDF["PDF Upload"] --> Parse["pypdf parser"]
        Parse --> Chunk["Sentence chunker\n800 chars, 100 overlap"]
        Chunk --> Embed["all-MiniLM-L6-v2\n(local embeddings)"]
        Embed --> Store["ChromaDB\nPersistent vector store"]
    end

    subgraph Query["πŸ’¬ Query Pipeline (CrewAI)"]
        Q["User question"] --> P["πŸ” Planner Agent\nDecomposes into 2-3 sub-queries"]
        P --> R["πŸ“š Retriever Agent\nSearches ChromaDB per sub-query"]
        R --> S["✍️ Synthesizer Agent\nBuilds cited answer (markdown)"]
        S --> V["βœ… Validator Agent\nFact-checks every claim"]
        V --> A["Final answer\nwith PASS / FLAG labels"]
    end

    Store --> R

bash

git clone https://github.com/ashish-code/crewai-rag-chatbot
cd crewai-rag-chatbot

# Install dependencies
uv sync           # or: pip install -e .

# Configure environment
cp .env.example .env
# Edit .env and set GROQ_API_KEY

# Configure Streamlit password (optional β€” comment out login gate in app.py to skip)
mkdir -p .streamlit
echo 'password = "changeme"' > .streamlit/secrets.toml

# (Optional) pre-load documents
cp your_docs/*.pdf docs/

# Run
streamlit run app.py

bash

cp .env.example .env          # set GROQ_API_KEY
echo 'password = "changeme"' > .streamlit/secrets.toml

docker compose up --build

toml

password = "your-login-password"

text

crewai-rag-chatbot/
β”œβ”€β”€ app.py                      # Streamlit entry point + login gate
β”œβ”€β”€ src/
β”‚   β”œβ”€β”€ agents/                 # CrewAI agent definitions (planner, retriever, synthesizer, validator)
β”‚   β”œβ”€β”€ crew/                   # Pipeline orchestration (sequential crew)
β”‚   β”œβ”€β”€ ingestion/              # PDF parsing + sentence-level chunker
β”‚   β”œβ”€β”€ models/                 # LLM factory (Groq via LiteLLM)
β”‚   β”œβ”€β”€ ui/                     # Streamlit UI components
β”‚   └── vector_store/           # ChromaDB client + search helpers
β”œβ”€β”€ docs/                       # Drop PDFs here for auto-ingestion on startup
β”œβ”€β”€ infra/
β”‚   β”œβ”€β”€ setup_ec2.sh            # One-time EC2 bootstrap (Docker + swap)
β”‚   └── deploy.sh               # Rsync + rebuild + restart on EC2
β”œβ”€β”€ .env.example                # Environment template
β”œβ”€β”€ docker-compose.yml
β”œβ”€β”€ Dockerfile
└── pyproject.toml

bash

ssh -i key.pem ec2-user@<EC2_IP> 'bash -s' < infra/setup_ec2.sh

Docs & README

Full documentation captured from public sources, including the complete README when available.

Self-declaredGITHUB REPOS

Docs source

GITHUB REPOS

Editorial quality

ready

4-agent CrewAI RAG chatbot: query planning, semantic retrieval, cited synthesis, and claim validation. Groq Llama 3.3 70B + ChromaDB + local embeddings. Docker + EC2 deploy. CrewAI RAG Chatbot $1 $1 $1 $1 $1 $1 A **citation-first RAG chatbot** built on a 4-agent CrewAI pipeline. Upload any PDF documents; the system decomposes your question, retrieves relevant passages, synthesises a grounded answer, and then **validates every factual claim** against the source chunks before presenting it to you. LLM inference runs on $1 (Llama 3.3 70B). Embeddings are computed locally (no API cost). The

Full README

CrewAI RAG Chatbot

Python CrewAI ChromaDB Streamlit Docker License: MIT

A citation-first RAG chatbot built on a 4-agent CrewAI pipeline. Upload any PDF documents; the system decomposes your question, retrieves relevant passages, synthesises a grounded answer, and then validates every factual claim against the source chunks before presenting it to you.

LLM inference runs on Groq (Llama 3.3 70B). Embeddings are computed locally (no API cost). The full pipeline runs in Docker and can be deployed to AWS EC2 in one command.


Architecture

flowchart LR
    subgraph Ingest["πŸ“„ Ingestion"]
        PDF["PDF Upload"] --> Parse["pypdf parser"]
        Parse --> Chunk["Sentence chunker\n800 chars, 100 overlap"]
        Chunk --> Embed["all-MiniLM-L6-v2\n(local embeddings)"]
        Embed --> Store["ChromaDB\nPersistent vector store"]
    end

    subgraph Query["πŸ’¬ Query Pipeline (CrewAI)"]
        Q["User question"] --> P["πŸ” Planner Agent\nDecomposes into 2-3 sub-queries"]
        P --> R["πŸ“š Retriever Agent\nSearches ChromaDB per sub-query"]
        R --> S["✍️ Synthesizer Agent\nBuilds cited answer (markdown)"]
        S --> V["βœ… Validator Agent\nFact-checks every claim"]
        V --> A["Final answer\nwith PASS / FLAG labels"]
    end

    Store --> R

Agent Responsibilities

| Agent | Role | Output | |-------|------|--------| | Planner | Decomposes the user query into 2–3 focused sub-queries | Plain-text sub-query list | | Retriever | Runs each sub-query against ChromaDB; tags every chunk with [source:file, page:N, chunk:N] | Raw chunk bundle | | Synthesizer | Writes a structured markdown answer grounded solely in retrieved chunks | Cited answer | | Validator | Cross-checks every factual claim against the raw chunks; marks each PASS or FLAG | Validation report |

All agents share a single LLM (Groq Llama 3.3 70B, temperature = 0) for fully deterministic, auditable output.


Features

  • 4-agent validation pipeline β€” answers are fact-checked before delivery, surfacing hallucinations proactively
  • Semantic chunking β€” sentence-boundary splitting with 100-character overlap preserves context
  • Idempotent ingestion β€” deterministic chunk IDs (SHA-256 hash) mean re-uploading the same PDF is a no-op
  • Local embeddings β€” all-MiniLM-L6-v2 runs on-device; no embedding API costs
  • Source attribution β€” every claim is linked back to [Doc: filename, Chunk N]
  • Zero-friction uploads β€” drag-and-drop PDFs via sidebar; auto-ingested at app startup from ./docs/
  • Docker-ready β€” embedding model pre-baked into image to avoid cold-start delays
  • One-command EC2 deploy β€” infra/deploy.sh rsyncs, rebuilds, and restarts the container

Quick Start

Prerequisites

  • Python 3.12+
  • Groq API key (free tier available)
  • uv package manager (recommended) or pip

Local development

git clone https://github.com/ashish-code/crewai-rag-chatbot
cd crewai-rag-chatbot

# Install dependencies
uv sync           # or: pip install -e .

# Configure environment
cp .env.example .env
# Edit .env and set GROQ_API_KEY

# Configure Streamlit password (optional β€” comment out login gate in app.py to skip)
mkdir -p .streamlit
echo 'password = "changeme"' > .streamlit/secrets.toml

# (Optional) pre-load documents
cp your_docs/*.pdf docs/

# Run
streamlit run app.py

The app opens at http://localhost:8501.

Docker

cp .env.example .env          # set GROQ_API_KEY
echo 'password = "changeme"' > .streamlit/secrets.toml

docker compose up --build

Chroma data persists in the chroma_data Docker volume between restarts.


Environment Variables

| Variable | Required | Description | |----------|----------|-------------| | GROQ_API_KEY | βœ… | Your Groq API key β€” obtain from console.groq.com |

Streamlit secrets (.streamlit/secrets.toml):

password = "your-login-password"

Project Layout

crewai-rag-chatbot/
β”œβ”€β”€ app.py                      # Streamlit entry point + login gate
β”œβ”€β”€ src/
β”‚   β”œβ”€β”€ agents/                 # CrewAI agent definitions (planner, retriever, synthesizer, validator)
β”‚   β”œβ”€β”€ crew/                   # Pipeline orchestration (sequential crew)
β”‚   β”œβ”€β”€ ingestion/              # PDF parsing + sentence-level chunker
β”‚   β”œβ”€β”€ models/                 # LLM factory (Groq via LiteLLM)
β”‚   β”œβ”€β”€ ui/                     # Streamlit UI components
β”‚   └── vector_store/           # ChromaDB client + search helpers
β”œβ”€β”€ docs/                       # Drop PDFs here for auto-ingestion on startup
β”œβ”€β”€ infra/
β”‚   β”œβ”€β”€ setup_ec2.sh            # One-time EC2 bootstrap (Docker + swap)
β”‚   └── deploy.sh               # Rsync + rebuild + restart on EC2
β”œβ”€β”€ .env.example                # Environment template
β”œβ”€β”€ docker-compose.yml
β”œβ”€β”€ Dockerfile
└── pyproject.toml

Deploying to AWS EC2

  1. Launch an EC2 instance (t2.small or larger recommended; t2.micro works with 1 GB swap).

  2. Bootstrap the instance (first time only):

    ssh -i key.pem ec2-user@<EC2_IP> 'bash -s' < infra/setup_ec2.sh
    
  3. Deploy or re-deploy:

    bash infra/deploy.sh <EC2_IP> key.pem
    

    This rsyncs the project (excluding chroma_db, __pycache__, .git), rebuilds the Docker image, and restarts the service. The Chroma volume is preserved across deploys.

  4. Access the app at http://<EC2_IP>:8501.


How the RAG Pipeline Works

User question
    β”‚
    β–Ό
[Planner]  β†’ "What are the maintenance intervals?"
             "What failure modes exist?"
    β”‚
    β–Ό
[Retriever] β†’ queries ChromaDB with each sub-query
              β†’ returns chunks tagged [source:manual.pdf, page:12, chunk:3]
    β”‚
    β–Ό
[Synthesizer] β†’ "According to [Doc: manual.pdf, Chunk 3], the interval is…"
    β”‚
    β–Ό
[Validator] β†’ Claim: "interval is 6 months" β†’ PASS (found in chunk 3)
              Claim: "costs $500" β†’ FLAG: not found in retrieved chunks
    β”‚
    β–Ό
Final answer with validation report

Dependencies

| Package | Purpose | |---------|---------| | crewai | Multi-agent orchestration | | litellm | Unified LLM gateway (Groq, OpenAI, Anthropic, …) | | chromadb | Persistent vector store | | sentence-transformers | Local embedding model | | torch | Backend for sentence-transformers | | pypdf | PDF text extraction | | streamlit | Web UI |


License

MIT β€” see LICENSE.

Contract & API

Machine endpoints, protocol fit, contract coverage, invocation examples, and guardrails for agent-to-agent use.

MissingGITHUB REPOS

Contract coverage

Status

missing

Auth

None

Streaming

No

Data region

Unspecified

Protocol support

OpenClaw: self-declared

Requires: none

Forbidden: none

Guardrails

Operational confidence: low

No positive guardrails captured.
Invocation examples
curl -s "https://xpersona.co/api/v1/agents/crewai-ashish-code-crewai-rag-chatbot/snapshot"
curl -s "https://xpersona.co/api/v1/agents/crewai-ashish-code-crewai-rag-chatbot/contract"
curl -s "https://xpersona.co/api/v1/agents/crewai-ashish-code-crewai-rag-chatbot/trust"

Reliability & Benchmarks

Trust and runtime signals, benchmark suites, failure patterns, and practical risk constraints.

Missingruntime-metrics

Trust signals

Handshake

UNKNOWN

Confidence

unknown

Attempts 30d

unknown

Fallback rate

unknown

Runtime metrics

Observed P50

unknown

Observed P95

unknown

Rate limit

unknown

Estimated cost

unknown

Do not use if

Contract metadata is missing or unavailable for deterministic execution.
No benchmark suites or observed failure patterns are available.

Media & Demo

Every public screenshot, visual asset, demo link, and owner-provided destination tied to this agent.

Missingno-media
No screenshots, media assets, or demo links are available.

Related Agents

Neighboring agents from the same protocol and source ecosystem for comparison and shortlist building.

Self-declaredprotocol-neighbors
GITHUB_REPOSactivepieces

Rank

70

AI Agents & MCPs & AI Workflow Automation β€’ (~400 MCP servers for AI agents) β€’ AI Automation / AI Agent with MCPs β€’ AI Workflows & AI Agents β€’ MCPs for AI Agents

Traction

No public download signal

Freshness

Updated 2d ago

OPENCLAW
GITHUB_REPOScherry-studio

Rank

70

AI productivity studio with smart chat, autonomous agents, and 300+ assistants. Unified access to frontier LLMs

Traction

No public download signal

Freshness

Updated 5d ago

MCPOPENCLAW
GITHUB_REPOSAionUi

Rank

70

Free, local, open-source 24/7 Cowork app and OpenClaw for Gemini CLI, Claude Code, Codex, OpenCode, Qwen Code, Goose CLI, Auggie, and more | 🌟 Star if you like it!

Traction

No public download signal

Freshness

Updated 6d ago

MCPOPENCLAW
GITHUB_REPOSCopilotKit

Rank

70

The Frontend for Agents & Generative UI. React + Angular

Traction

No public download signal

Freshness

Updated 23d ago

OPENCLAW
Machine Appendix

Contract JSON

{
  "contractStatus": "missing",
  "authModes": [],
  "requires": [],
  "forbidden": [],
  "supportsMcp": false,
  "supportsA2a": false,
  "supportsStreaming": false,
  "inputSchemaRef": null,
  "outputSchemaRef": null,
  "dataRegion": null,
  "contractUpdatedAt": null,
  "sourceUpdatedAt": null,
  "freshnessSeconds": null
}

Invocation Guide

{
  "preferredApi": {
    "snapshotUrl": "https://xpersona.co/api/v1/agents/crewai-ashish-code-crewai-rag-chatbot/snapshot",
    "contractUrl": "https://xpersona.co/api/v1/agents/crewai-ashish-code-crewai-rag-chatbot/contract",
    "trustUrl": "https://xpersona.co/api/v1/agents/crewai-ashish-code-crewai-rag-chatbot/trust"
  },
  "curlExamples": [
    "curl -s \"https://xpersona.co/api/v1/agents/crewai-ashish-code-crewai-rag-chatbot/snapshot\"",
    "curl -s \"https://xpersona.co/api/v1/agents/crewai-ashish-code-crewai-rag-chatbot/contract\"",
    "curl -s \"https://xpersona.co/api/v1/agents/crewai-ashish-code-crewai-rag-chatbot/trust\""
  ],
  "jsonRequestTemplate": {
    "query": "summarize this repo",
    "constraints": {
      "maxLatencyMs": 2000,
      "protocolPreference": [
        "OPENCLEW"
      ]
    }
  },
  "jsonResponseTemplate": {
    "ok": true,
    "result": {
      "summary": "...",
      "confidence": 0.9
    },
    "meta": {
      "source": "GITHUB_REPOS",
      "generatedAt": "2026-04-16T23:35:29.395Z"
    }
  },
  "retryPolicy": {
    "maxAttempts": 3,
    "backoffMs": [
      500,
      1500,
      3500
    ],
    "retryableConditions": [
      "HTTP_429",
      "HTTP_503",
      "NETWORK_TIMEOUT"
    ]
  }
}

Trust JSON

{
  "status": "unavailable",
  "handshakeStatus": "UNKNOWN",
  "verificationFreshnessHours": null,
  "reputationScore": null,
  "p95LatencyMs": null,
  "successRate30d": null,
  "fallbackRate": null,
  "attempts30d": null,
  "trustUpdatedAt": null,
  "trustConfidence": "unknown",
  "sourceUpdatedAt": null,
  "freshnessSeconds": null
}

Capability Matrix

{
  "rows": [
    {
      "key": "OPENCLEW",
      "type": "protocol",
      "support": "unknown",
      "confidenceSource": "profile",
      "notes": "Listed on profile"
    },
    {
      "key": "crewai",
      "type": "capability",
      "support": "supported",
      "confidenceSource": "profile",
      "notes": "Declared in agent profile metadata"
    },
    {
      "key": "multi-agent",
      "type": "capability",
      "support": "supported",
      "confidenceSource": "profile",
      "notes": "Declared in agent profile metadata"
    }
  ],
  "flattenedTokens": "protocol:OPENCLEW|unknown|profile capability:crewai|supported|profile capability:multi-agent|supported|profile"
}

Facts JSON

[
  {
    "factKey": "vendor",
    "category": "vendor",
    "label": "Vendor",
    "value": "Ashish Code",
    "href": "https://github.com/ashish-code/crewai-rag-chatbot",
    "sourceUrl": "https://github.com/ashish-code/crewai-rag-chatbot",
    "sourceType": "profile",
    "confidence": "medium",
    "observedAt": "2026-04-15T06:04:37.219Z",
    "isPublic": true
  },
  {
    "factKey": "protocols",
    "category": "compatibility",
    "label": "Protocol compatibility",
    "value": "OpenClaw",
    "href": "https://xpersona.co/api/v1/agents/crewai-ashish-code-crewai-rag-chatbot/contract",
    "sourceUrl": "https://xpersona.co/api/v1/agents/crewai-ashish-code-crewai-rag-chatbot/contract",
    "sourceType": "contract",
    "confidence": "medium",
    "observedAt": "2026-04-15T06:04:37.219Z",
    "isPublic": true
  },
  {
    "factKey": "docs_crawl",
    "category": "integration",
    "label": "Crawlable docs",
    "value": "6 indexed pages on the official domain",
    "href": "https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fopenclaw%2Fskills%2Ftree%2Fmain%2Fskills%2Fasleep123%2Fcaldav-calendar",
    "sourceUrl": "https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fopenclaw%2Fskills%2Ftree%2Fmain%2Fskills%2Fasleep123%2Fcaldav-calendar",
    "sourceType": "search_document",
    "confidence": "medium",
    "observedAt": "2026-04-15T05:03:46.393Z",
    "isPublic": true
  },
  {
    "factKey": "handshake_status",
    "category": "security",
    "label": "Handshake status",
    "value": "UNKNOWN",
    "href": "https://xpersona.co/api/v1/agents/crewai-ashish-code-crewai-rag-chatbot/trust",
    "sourceUrl": "https://xpersona.co/api/v1/agents/crewai-ashish-code-crewai-rag-chatbot/trust",
    "sourceType": "trust",
    "confidence": "medium",
    "observedAt": null,
    "isPublic": true
  }
]

Change Events JSON

[
  {
    "eventType": "docs_update",
    "title": "Docs refreshed: Sign in to GitHub Β· GitHub",
    "description": "Fresh crawlable documentation was indexed for the official domain.",
    "href": "https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fopenclaw%2Fskills%2Ftree%2Fmain%2Fskills%2Fasleep123%2Fcaldav-calendar",
    "sourceUrl": "https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fopenclaw%2Fskills%2Ftree%2Fmain%2Fskills%2Fasleep123%2Fcaldav-calendar",
    "sourceType": "search_document",
    "confidence": "medium",
    "observedAt": "2026-04-15T05:03:46.393Z",
    "isPublic": true
  }
]

Sponsored

Ads related to crewai-rag-chatbot and adjacent AI workflows.