How to use awesome-llm-apps: Run AI Agent, RAG and Skills examples locally

Introducing the directory selection, Agent Skill installation, local running examples and API Key security check of awesome-llm-apps.

awesome-llm-apps collects a large number of runnable AI Agents, RAG applications, and Agent Skills. Its value is not “the number of projects”, but that you can directly pick a small example and understand how models, tools, states and interfaces are connected.

Project address: Shubhamsaboo/awesome-llm-apps

Quick Answer

If you are just starting to learn, first choose the single-file application under starter_ai_agents; if you are already using Codex, Claude Code or Cursor, then look at agent_skills; only enter the RAG example if you need knowledge base Q&A. Do not install all dependencies for the entire repository at once.

Take travel agent as an example:

1
2
3
4
git clone https://github.com/Shubhamsaboo/awesome-llm-apps.git
cd awesome-llm-apps/starter_ai_agents/ai_travel_agent
pip install -r requirements.txt
streamlit run travel_agent.py

It is recommended to create a virtual environment first, read the README of the subdirectory, and confirm the required API Key name before starting it.

How to select examples

Goals Priority Catalog
Learn the minimal Agent loop starter_ai_agents
Add capabilities to programming Agent agent_skills
Q&A on PDF, web page or database RAG related directory
Compare multiple model collaborations Mixture of Agents example
Do data analysis CSV, Excel data analysis Agent

Let’s first look at the number of dependencies and external services. For projects that require databases, vector libraries, and multiple API Keys, the deployment cost is usually higher than the single-file Streamlit example.

Install an Agent Skill

The repository provides Skills that can be installed with npx skills add. For example Project Graveyard:

1
npx skills add https://github.com/Shubhamsaboo/awesome-llm-apps/tree/main/agent_skills/project-graveyard

Before installing a third-party Skill, you should read SKILL.md and the accompanying script to confirm which files it can access, whether it calls the network, and whether it executes commands. Don’t assume that all code is suitable for production just because the repository name has awesome.

API Key Security Check

  1. Use .env, do not write the Key directly into Python;
  2. Confirm that .env has joined .gitignore;
  3. Use an independent Key with a lower limit for the sample project;
  4. Check whether the log and Streamlit page echo the key;
  5. Set clear scopes for file uploads, shells, and browser tools.

How to read the repository directory

Do not open files one by one starting from the root directory. First determine whether you want to learn Agent, Skill or RAG, and then enter the corresponding subdirectory. Each example usually has its own dependencies and environment variables, which are not necessarily compatible with each other.

Starter AI Agents

This type of project is suitable for first time runs. Focus on observing four parts: how user input enters the program, how the model is initialized, how the tool is called, and how the results are displayed. Reading a complete data stream first is more useful than running ten interfaces.

Agent Skills

Skill is not necessarily a standalone application, it may be loaded by Codex, Claude Code or Cursor for specific tasks. In addition to SKILL.md, the review also looks at scripts, dependencies, network requests and writing directories.

RAG APP

RAG examples will include document parsing, segmentation, Embedding, vector storage and retrieval. When answering errors, check them layer by layer and do not attribute all problems to the model.

Multi-Agent Application

Multiple models or roles increase cost and difficulty of debugging. First confirm whether a single Agent is really unable to complete the task, and then introduce planning, execution and summary roles.

Create a separate environment for each example

Take the Python project as an example:

1
python -m venv .venv

Windows PowerShell activation:

1
.\.venv\Scripts\Activate.ps1

Linux or macOS:

1
source .venv/bin/activate

Then install the dependencies of the current subdirectory. After running, use pip freeze or a lock file to record the actual version to avoid reinstalling in a few days and getting different dependency combinations.

Run a complete check of the travel agent

The official example command is:

1
2
3
4
git clone https://github.com/Shubhamsaboo/awesome-llm-apps.git
cd awesome-llm-apps/starter_ai_agents/ai_travel_agent
pip install -r requirements.txt
streamlit run travel_agent.py

Before executing, read the current directory README and source code to confirm which models and search services are required. After starting, test in the following order:

  1. Enter a simple city and date;
  2. Check whether there are unhandled exceptions in the terminal;
  3. Check whether the external search results include the source;
  4. Use a non-existent location to test error handling;
  5. Refresh the page and observe whether the session is lost;
  6. Estimate how many models and tools a complete request calls.

How to change the example into your own application

Don’t stack functionality directly in the cloned repository. First copy the target subdirectory to an independent project, and then complete the following organization:

  • Delete unused Provider;
  • Concentrate environment variables into sample files;
  • Fixed dependency versions;
  • Increase input length and file size limits;
  • Set timeout for tool calls;
  • Desensitize keys and personal information in logs;
  • Added minimum testing and startup instructions.

If it is to be deployed publicly, authentication, current limiting, fee capping and abuse handling are also required. A Streamlit example that can be run locally does not mean that it can be directly exposed to the public network.

How to audit before installing Agent Skill

Taking npx skills add as an example, the installation action may write files to the Agent’s skill directory. The review checklist includes:

  1. Whether the repository owner and specific path are correct;
  2. Whether the Skill comes with an executable script;
  3. Whether the script reads the home directory, SSH Key, environment variables or browser data;
  4. Whether to call third-party network services;
  5. Whether administrator rights are required;
  6. Whether the trigger description is too broad and may be automatically run in unrelated tasks.

Team environments should lock commit versions instead of always installing main on changes.

RAG example why “it can run but is not easy to use”

RAG quality depends on the entire link:

1
文件解析 → 文本清洗 → 切分 → Embedding → 检索 → 重排 → 提示词 → 回答

If the PDF is extracted as garbled characters, it cannot be repaired by replacing the larger model. It is recommended to save and view the intermediate results of each step, and at least spot-check the segmented text and the final retrieved fragments.

Cost and Privacy

Examples To demonstrate effects, multiple models, search APIs, or image services may be used. Pre-run statistics:

  • Call the model several times in one request;
  • Whether to upload complete files;
  • Whether the search term contains user privacy;
  • Whether to save the session;
  • Whether to enable telemetry by default;
  • Whether the failed retries may result in repeated billing.

Creating separate API keys for experiments and setting budgets or rate limits are the lowest-cost protection measures.

Troubleshooting table

Problems Common causes Solutions
Module not found The environment is not activated or the dependencies are installed in the wrong directory Check the Python path and virtual environment
401 API Key is invalid or variable name is wrong Check subdirectory README
429 Quota, concurrency, or rate limits Reduce requests and view provider quotas
Streamlit blank Startup exception or browser cache Check the terminal log and reload
RAG answers partial questions Segment or retrieve questions Check the hit text without changing the model first
Skill does not trigger Installation path or description does not match Check Agent’s Skill list

FAQ

pip install What to do if there is a conflict?

Use a separate virtual environment for each example. Do not install requirements.txt in all subdirectories in the same environment. If the example has not been updated for a long time, priority should be given to fixing the Python and dependency versions specified in the README.

Which example is best to get started?

Choose a small project that only requires a model key, a Python file, and a Streamlit page. First look at tool invocation and state saving, and then enter multi-Agent and complex RAG.

Can I upgrade all dependencies in the repository at once?

Not recommended. Different examples may be written for different versions. Only upgrade the subprojects you are using and record the runnable environment before upgrading.

Are the licenses for all examples the same?

The root repository license does not necessarily cover referenced models, data, third-party APIs, and assets. License and service terms should be confirmed individually when using for commercial projects.

How to judge whether an example is worth continuing to maintain

Running through is just the first step. When preparing to turn your example into a long-term project, evaluate:

  • Whether there are any recent maintenance activities;
  • Whether the dependency contains known high-risk vulnerabilities;
  • Whether the Provider SDK is still supported;
  • Whether there are tests covering key tool calls;
  • Whether actions with side effects will be repeated when failed;
  • Can the model be replaced without rewriting the entire application;
  • Whether data and logs can be deleted as required;
  • Whether the license permits the intended use.

If an example is seriously bound to an outdated SDK, has no error handling, and the key is written directly in the code, it is usually more suitable for learning concepts and not suitable for continuing to pile up functional products.

What are the missing layers from sample to production?

A functioning Agent Demo usually lacks authentication, permissions, auditing, current limiting, task queues, retry policies, idempotent controls, monitoring and data governance. Complete at least: before going online:

1
2
3
4
5
6
7
8
9
用户请求
  ↓ 身份认证与输入限制
任务队列
  ↓ 超时、重试、费用预算
Agent 与工具
  ↓ 最小权限、审计日志
结果存储
  ↓ 数据保留与删除策略
用户界面

In particular, it is necessary to distinguish between “you can retry if the model call fails” and “you cannot blindly retry when sending emails, placing orders, and writing to the database.” Tools with side effects must have idempotent keys or manual confirmation.

Avoid overwriting your own changes when updating the repository

Do not modify the upstream clone directly for long periods of time. You can create your own branch after Fork, or copy the target example into an independent repository and keep the source description. If you really need to synchronize upstream, divide dependency updates, upstream merges and business functions into different submissions to facilitate locating problems when they arise.

Summary

The correct way to use awesome-llm-apps is to select examples according to the problem, rather than treating the entire repository as a software installation. Run the smallest project in an independent environment, understand the data flow and permissions, and then migrate the required parts to your own application.