Goal: Build an LLM-based RAG App
Here is the MVP Implementation Plan.
Best use case
Goal: Build an LLM-based RAG App is best used when you need a repeatable AI agent workflow instead of a one-off prompt. It is especially useful for teams working in multi. Here is the MVP Implementation Plan.
Here is the MVP Implementation Plan.
Users should expect a more consistent workflow output, faster repeated execution, and less time spent rewriting prompts from scratch.
Practical example
Example input
Use the "Goal: Build an LLM-based RAG App" skill to help with this workflow task. Context: Here is the MVP Implementation Plan.
Example output
A structured workflow result with clearer steps, more consistent formatting, and an output that is easier to reuse in the next run.
When to use this skill
- Use this skill when you want a reusable workflow rather than writing the same prompt again and again.
When not to use this skill
- Do not use this when you only need a one-off answer and do not need a reusable workflow.
- Do not use it if you cannot install or maintain the related files, repository context, or supporting tools.
Installation
Claude Code / Cursor / Codex
Manual Installation
- Download SKILL.md from GitHub
- Place it in
.claude/skills/mvp/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How Goal: Build an LLM-based RAG App Compares
| Feature / Agent | Goal: Build an LLM-based RAG App | Standard Approach |
|---|---|---|
| Platform Support | Not specified | Limited / Varies |
| Context Awareness | High | Baseline |
| Installation Complexity | Unknown | N/A |
Frequently Asked Questions
What does this skill do?
Here is the MVP Implementation Plan.
Where can I find the source code?
You can find the source code on GitHub using the link provided at the top of the page.
SKILL.md Source
Goal: Build an LLM-based RAG App
Here is the MVP Implementation Plan.
MVP Scope
A "second brain" application that leverages Retrieval Augmented Generation (RAG) to integrate external knowledge and data with LLM capabilities. This MVP will allow users to upload their files as a knowledge base and perform natural language queries against that data using LM Studio.
Technical Stack
Frontend: Streamlit
Backend: FastAPI
LLM Integration: LM Studio
Core Features
1. File Upload
Users can upload documents (PDFs, text files, etc.) into the system.
Extract key information from the uploaded files and store them in a vector database or simple on-disk index.
2. Basic Search
Natural language search, powered by LM Studio.
In-context learning approach with few-shot learning to enhance responses.
RAG flow:
Retrieve relevant segments from the knowledge base.
Combine retrieved segments with user query.
Generate a context-enriched answer.
Data Structure
Document Schema
class Document:
id: str # Unique identifier
title: str # File title or name
content: str # Extracted text
metadata: dict # Any additional metadata (e.g., upload date, tags)
Index/Vector Embeddings
Depending on the chosen approach (vector DB vs. local embeddings):
Vector Database: Each Document (or chunk of a document) will have an embedding vector.
Local Index: Store embeddings in a local file or simple database.
Implementation Plan
1. Backend Setup with FastAPI
File Upload Endpoint
Accept file uploads (PDF, TXT, etc.).
Extract and preprocess text (OCR if necessary).
Split text into chunks for indexing.
Generate embeddings via LM Studio or a compatible embedding model.
Store the embeddings and metadata in a vector store local index.
Search Endpoint
Accept natural language queries.
Use embeddings to find the most relevant chunks from the knowledge base.
Construct context from these chunks.
Send context + query to LM Studio for final RAG-based answer.
Data Storage
For MVP, consider a simple JSON or SQLite-based storage for metadata and a local or cloud-based vector index.
Add basic error handling (invalid file format, missing data, etc.).
CORS Setup
Configure CORS in FastAPI to allow calls from the Streamlit frontend.
2. Frontend Development (Streamlit)
File Upload Interface
Simple file upload widget.
On submission, call the FastAPI file upload endpoint.
Provide feedback on success/failure.
Search Interface
Text input for queries.
On submission, call the FastAPI search endpoint.
Display the AI-generated response and (optionally) the top retrieved chunks.
UX & Basic Layout
Show a list of previously uploaded files (titles, metadata, etc.).
Simple and intuitive design with minimal clutter.
Provide error messages or success confirmations.
Error Handling & User Feedback
Show relevant messages for file upload errors, incomplete data, etc.
Display a loading indicator while the system is querying or processing.
API Endpoints
POST /api/files/upload
Description: Upload and store documents.
Payload: File(s) + optional metadata.
Response: Success message with document ID(s).
GET /api/files
Description: List all uploaded documents.
Response: A JSON array of documents with basic metadata.
GET /api/files/{id}
Description: Fetch the details of a specific document by ID.
Response: Document details (title, content if needed, metadata).
POST /api/search
Description: Search the knowledge base with a natural language query.
Payload: { "query": "Your question here" }
Response: RAG-based answer and possibly the top chunks or references.
Future Enhancements (Beyond MVP)
Authentication & Authorization for secure file sharing.
Advanced File Parsing (OCR for scanned PDFs, docx parsing).
Versioning & Revision History for uploaded documents.
UI Improvements such as advanced filtering, summarization, or highlight features.Related Skills
Convert this into a web based slide deck using reveal.js.
Use the following brand colour and logo.
Jump Cut Editor (VAD-based)
Automatically remove silences from talking-head videos using neural voice activity detection (Silero VAD). More accurate than FFmpeg silence detection, especially for videos with background noise, breathing sounds, or quiet speech.
You are a professional Product Manager who has expertise is building AI Agents. Your task is to help a user understand and plan their app idea through a series of questions and generate PRD.
Agent = LLM + Tools + Memory
bazel-build-optimization
Optimize Bazel builds for large-scale monorepos. Use when configuring Bazel, implementing remote execution, or optimizing build performance for enterprise codebases.
You are a professional Landing page designer who is very friendly and supportive.
Your task is to guide a beginner through planning and designing a landing page or personal portfolio.
You are a professional Chief Marketing Officer. Your task is to help a user start and grow their social media presence organically through a series of questions and generate a growthplan.md blueprint.
Follow these instructions:
technical-article-writer
Write compelling technical articles and blog posts for developer audiences. Use this skill whenever the user asks to write a blog post, technical article, or any long-form technical content. Also trigger when the user says 'write about [technical topic]', 'help me draft an article', 'turn this into a blog post', 'write a post about', 'I want to publish something about', or mentions writing for a developer audience. Covers the full pipeline: idea sharpening, hook/title generation, article structure, body drafting, and editing. Even if the user just says 'I want to write about X' without specifying format, use this skill. Do NOT use for platform-specific optimization, newsletter strategy, or ghostwriting voice matching.
substack-ghostwriting
Write, optimize, and grow Substack content — both newsletter issues (email-first) and web posts (web-first articles/essays). Covers ghostwriting with voice matching, Substack algorithm optimization, Notes strategy, email formatting, SEO, growth tactics, and monetization planning. Use when the user mentions Substack, newsletters, write a newsletter issue, Substack post, Substack article, web post on Substack, evergreen content, SEO for Substack, newsletter growth, Notes strategy, ghostwrite for, match someone's voice, write in the style of, newsletter monetization, paid subscribers, or any task involving Substack as a platform. Also trigger for general article/newsletter writing even if Substack isn't named explicitly, or when the user wants to adapt existing content (blog post, talk, thread) into newsletter or web post format. Do NOT use for generic blog post writing without a newsletter/Substack context (-> See samber/cc-skills@technical-article-writer skill).
press-release-writer
Write professional press releases for any occasion, media type, and country. Use when the user wants to write, draft, or improve a press release, communiqué de presse, media announcement, news release, or PR statement — including product launches, funding rounds, partnerships, crisis communications, earnings, executive hires, events, M&A, open source milestones, and media advisories. Covers all release types, media targets (print, digital/wire, broadcast, social/SMPR, trade press), and region-specific conventions (Western/Eastern Europe, Americas, Middle East, Africa, Asia, Oceania). Also trigger when the user says 'I need to announce something' or 'how do I tell the press about X.'
Use this skill whenever the user wants to do anything with PDF files. This includes reading or extracting text/tables from PDFs, combining or merging multiple PDFs into one, splitting PDFs apart, rotating pages, adding watermarks, creating new PDFs, filling PDF forms, encrypting/decrypting PDFs, extracting images, and OCR on scanned PDFs to make them searchable. If the user mentions a .pdf file or asks to produce one, use this skill.
linkedin-ghostwriting
B2B LinkedIn ghostwriting — strategic interview, hook engineering, and post body. Use when the user wants to write LinkedIn content, create ghostwritten posts, ghostwrite for a founder or executive, develop a B2B social strategy, or needs hooks, post structures, or copywriting frameworks for LinkedIn. Apply when the user shares a story, result, or insight and wants it turned into a post.
docx
Use this skill whenever the user wants to create, read, edit, or manipulate Word documents (.docx files). Triggers include: any mention of 'Word doc', 'word document', '.docx', or requests to produce professional documents with formatting like tables of contents, headings, page numbers, or letterheads. Also use when extracting or reorganizing content from .docx files, inserting or replacing images in documents, performing find-and-replace in Word files, working with tracked changes or comments, or converting content into a polished Word document. If the user asks for a 'report', 'memo', 'letter', 'template', or similar deliverable as a Word or .docx file, use this skill. Do NOT use for PDFs, spreadsheets, Google Docs, or general coding tasks unrelated to document generation.