busybutlazy

RAG Sys — AI skill for Claude Code

AI community

Deep Research Agent demo (React + Python FastAPI + ArangoDB) built with Claude Code under a defined plan → implement → review workflow.

How to install RAG Sys

This entry records only its repository, not the path inside it, so there is no exact command to give. Open busybutlazy/rag_sys and copy the folder into ~/.claude/skills/, or the file into ~/.claude/agents/.

What RAG Sys does

Deep Research Agent demo (React + Python FastAPI + ArangoDB) built with Claude Code under a defined plan → implement → review workflow. ReAct agent loop with hybrid BM25+vector search and cited retrieval.

Alternatives in AI

  • Anthropic Quickstarts — by Anthropic - Offers comprehensive development guides for three distinct AI-powered demo projects with standa 15.4k ★
  • Memory Lancedb Pro — Production-grade long-term memory system (v1.1.0-beta.8) for OpenClaw AI agents 222 ★
  • Semble Rs — Fast, AI-agent-native code search in Rust — hybrid BM25 + semantic, Tree-sitter AST chunking, dependency & imp 210 ★

README

Deep Research Agent — Demo

[繁體中文](./README.zh-TW.md) | English

**Demo project, not a product.** No accounts, no persistence beyond a browser session, no backward compatibility. Bring your own OpenAI API key and a handful of documents.


What This Is

A minimal RAG chat agent that decides for itself how many rounds of retrieval it needs before answering. Paste an OpenAI API key into the browser, upload a few documents, ask a question — the agent breaks it down, searches the shared knowledge base as many times as it judges necessary (capped by a simple tool-call/step budget), and answers with a structured, cited research report.

This repo started as a larger multi-tenant product (auth, notebooks, MySQL, GraphRAG — see `ROADMAP.md` / `ROADMAP2.md` / `ROADMAP3.md` for that history) and was stripped down to this demo on `demo/deep-research-agent-minimal`. The full pre-demo code is preserved on the local `backup/pre-demo-simplify-2026-09-05` branch if any of it is needed again.


Architecture

[Browser]
    │  port 5987 (only exposed port)
    ▼
[Frontend: React + Vite + Nginx]  (no login, no router — one page)
    │  /ai/* internal network
    ▼
[AI Server: Python FastAPI]  ──→  OpenAI Chat Completions (user-supplied API key, per request)
    │  internal
    ▼
[RAG Server: Python FastAPI] ──→  [ArangoDB]  (hybrid vector + BM25 search via RRF)
                             ──→  OpenAI Embeddings (server-side key, ingestion only)

Services

Service Stack Internal Port Exposed
frontend React + Vite + Nginx 80 5987
ai-server Python FastAPI 8002 no
rag-server Python FastAPI 8003 no
arangodb ArangoDB 3.12 8529 no

Only the frontend port is exposed to the host. There is no BE server and no MySQL — everything uploaded goes into on