{"owner":"Arindam200","repo":"awesome-ai-apps","hasSkills":true,"hasMcp":true,"mcpConfig":{"mcpServers":{"awesome-ai-apps":{"command":"npx","args":["-y","@modelcontextprotocol/server-awesome-ai-apps"]}}},"found":["AGENTS.md","CLAUDE.md"],"skills":{"AGENTS.md":"# AGENTS.md\n\nThis file provides guidance to Codex (Codex.ai/code) when working with code in this repository.\n\n## Repository Overview\n\nThis is a comprehensive collection of practical LLM-powered application examples, tutorials, and recipes organized by complexity and use case. The repository contains 70+ example projects demonstrating various AI frameworks and patterns.\n\n## Project Categories\n\nProjects are organized into six main categories:\n\n1. **starter_ai_agents/** - Quick-start boilerplate examples for learning different AI frameworks (Agno, OpenAI SDK, LlamaIndex, CrewAI, PydanticAI, LangChain, AWS Strands, Camel AI, DSPy, Google ADK)\n2. **simple_ai_agents/** - Straightforward, single-purpose agents (finance tracking, web automation, newsletter generation, calendar scheduling, etc.)\n3. **mcp_ai_agents/** - Projects using Model Context Protocol for semantic RAG, database interactions, and external tool integrations\n4. **memory_agents/** - Agents with persistent memory capabilities using frameworks like GibsonAI Memori\n5. **rag_apps/** - Retrieval-Augmented Generation examples with vector databases and document processing\n6. **advance_ai_agents/** - Complex multi-agent workflows and production-ready applications (research agents, job finders, meeting assistants, etc.)\n7. **course/** - Structured learning materials, including the complete AWS Strands course (8 lessons)\n\n## Common Development Commands\n\n### Running Individual Projects\n\nEach project is self-contained with its own dependencies. Navigate to the specific project directory first:\n\n```bash\ncd <category>/<project_name>\n```\n\n### Installing Dependencies\n\nProjects use either `requirements.txt` or `pyproject.toml`:\n\n```bash\n# For requirements.txt projects\npip install -r requirements.txt\n\n# For pyproject.toml projects (newer projects)\npip install -e .\n# or with uv (preferred for faster installs)\nuv pip install -e .\n```\n\n### Running Projects\n\nMost projects use simple Python execution:\n\n```bash\npython main.py\n# or\npython app.py\n```\n\nSome projects (especially RAG and advanced agents) use Streamlit:\n\n```bash\nstreamlit run app.py\n```\n\n### Environment Configuration\n\nAll projects require environment variables for API keys. Each project has a `.env.example` file. Copy it to `.env` and add your keys:\n\n```bash\ncp .env.example .env\n# Then edit .env with your API keys\n```\n\nCommon API keys used across projects:\n- `NEBIUS_API_KEY` - Nebius Token Factory inference provider (used extensively)\n- `OPENAI_API_KEY` - OpenAI models\n- `GITHUB_PERSONAL_ACCESS_TOKEN` - For GitHub MCP agents\n- `SGAI_API_KEY` - ScrapeGraph AI for web scraping agents\n- `MEMORI_API_KEY` - GibsonAI Memori for memory-enabled agents\n\n## High-Level Architecture\n\n### Multi-Stage Workflow Pattern\n\nAdvanced agents (in `advance_ai_agents/`) typically use a multi-stage workflow pattern with specialized sub-agents:\n\n```python\nclass ResearchWorkflow(Workflow):\n    searcher: Agent  # Gathers information\n    analyst: Agent   # Analyzes findings\n    writer: Agent    # Produces final output\n```\n\nExample: `advance_ai_agents/deep_researcher_agent/agents.py`\n\n### MCP Integration Pattern\n\nMCP agents use the Model Context Protocol to integrate external tools:\n\n```python\nasync with MCPServerStdio(\n    params={\n        \"command\": \"npx\",\n        \"args\": [\"-y\", \"@modelcontextprotocol/server-github\"],\n        \"env\": {\"GITHUB_PERSONAL_ACCESS_TOKEN\": os.environ[\"TOKEN\"]}\n    }\n) as server:\n    agent = Agent(mcp_servers=[server], ...)\n```\n\nExample: `mcp_ai_agents/github_mcp_agent/main.py`, `mcp_ai_agents/mcp_starter/main.py`\n\n### Framework-Specific Patterns\n\n**Agno Framework** (most common):\n- Uses `Agent` class with tools, model, and instructions\n- Supports workflow orchestration via `Workflow` class\n- Examples: `starter_ai_agents/agno_starter/`, `advance_ai_agents/deep_researcher_agent/`\n\n**OpenAI Agents SDK**:\n- Uses async `Runner.run()` with agents\n- Examples: `starter_ai_agents/openai_agents_sdk/`, `mcp_ai_agents/mcp_starter/`\n\n**AWS Strands**:\n- Complete course available in `course/aws_strands/`\n- Covers basic agents, session management, MCP, multi-agent patterns, observability, and guardrails\n\n**LangChain/LangGraph**:\n- Graph-based workflows with state management\n- Examples: `starter_ai_agents/langchain_langgraph_starter/`\n\n## Contributing Guidelines\n\n### Adding New Projects\n\n1. Create an issue describing the project first\n2. Submit ONE project per Pull Request\n3. Place in appropriate category folder (see `CONTRIBUTING.md:46-52`)\n4. Use snake_case naming (e.g., `finance_agent`, `blog_writing_agent`)\n5. Must include a `README.md` following the template in `.github/README_TEMPLATE.md`\n6. Include either `requirements.txt` or `pyproject.toml` (pyproject.toml preferred)\n7. Provide `.env.example` file - never commit secrets\n8. Use code formatter (Black or Ruff) for consistent style\n\n### Project README Requirements\n\nEach project README must include:\n- Clear description of what the agent does\n- Prerequisites (Python version, required API keys)\n- Installation steps\n- Usage instructions with example queries/commands\n- Technical details (frameworks used, models)\n\n## AWS Strands Course Structure\n\nLocated in `course/aws_strands/`, this is an 8-lesson progressive course:\n\n1. **01_basic_agent** - First agent with simple tools\n2. **02_session_management** - Persistent conversations and state\n3. **03_structured_output** - Extract structured data with Pydantic\n4. **04_mcp_agent** - External tool integration via MCP\n5. **05_human_in_the_loop_agent** - Request human input/approval\n6. **06_multi_agent_pattern/** - Advanced multi-agent systems\n   - `06_1_agent_as_tools` - Orchestrator with specialized agents\n   - `06_2_swarm_agent` - Dynamic agent handoffs\n   - `06_3_graph_agent` - Graph-based workflows\n   - `06_4_workflow_agent` - Sequential pipelines\n7. **07_observability** - OpenTelemetry and Langfuse monitoring\n8. **08_guardrails** - Safety measures and content filtering\n\nEach lesson builds on the previous, with complete working examples.\n\n## Key Technical Notes\n\n- **Python Version**: Requires Python 3.10 or higher (specified in most pyproject.toml files)\n- **Primary AI Provider**: Nebius Token Factory is used extensively across examples for inference\n- **Dependency Management**: Newer projects use `uv` for faster package installation\n- **MCP Tools**: Many agents integrate with external services via MCP (GitHub, databases, custom servers)\n- **Streaming UI**: Streamlit is the standard for web-based agent interfaces\n- **Memory Systems**: GibsonAI Memori is the primary memory provider for context retention\n- **Web Scraping**: ScrapeGraph AI is used for intelligent web data extraction\n\n## Common Frameworks by Category\n\n- **Starter**: Agno, OpenAI SDK, LlamaIndex, CrewAI, PydanticAI, LangChain, AWS Strands, Camel AI, DSPy, Google ADK\n- **Simple**: Agno (most common), Mastra AI, browser-use\n- **MCP**: OpenAI SDK, AWS Strands, custom MCP servers\n- **Memory**: Agno with GibsonAI Memori, AWS Strands with Memori\n- **RAG**: LlamaIndex, LangChain, Agno, CrewAI with Qdrant/vector stores\n- **Advanced**: Agno workflows, CrewAI multi-agent, Google ADK, FastAPI services\n","CLAUDE.md":"# CLAUDE.md\n\nThis file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.\n\n## Repository Overview\n\nThis is a comprehensive collection of practical LLM-powered application examples, tutorials, and recipes organized by complexity and use case. The repository contains 70+ example projects demonstrating various AI frameworks and patterns.\n\n## Project Categories\n\nProjects are organized into six main categories:\n\n1. **starter_ai_agents/** - Quick-start boilerplate examples for learning different AI frameworks (Agno, OpenAI SDK, LlamaIndex, CrewAI, PydanticAI, LangChain, AWS Strands, Camel AI, DSPy, Google ADK)\n2. **simple_ai_agents/** - Straightforward, single-purpose agents (finance tracking, web automation, newsletter generation, calendar scheduling, etc.)\n3. **mcp_ai_agents/** - Projects using Model Context Protocol for semantic RAG, database interactions, and external tool integrations\n4. **memory_agents/** - Agents with persistent memory capabilities using frameworks like GibsonAI Memori\n5. **rag_apps/** - Retrieval-Augmented Generation examples with vector databases and document processing\n6. **advance_ai_agents/** - Complex multi-agent workflows and production-ready applications (research agents, job finders, meeting assistants, etc.)\n7. **course/** - Structured learning materials, including the complete AWS Strands course (8 lessons)\n\n## Common Development Commands\n\n### Running Individual Projects\n\nEach project is self-contained with its own dependencies. Navigate to the specific project directory first:\n\n```bash\ncd <category>/<project_name>\n```\n\n### Installing Dependencies\n\nProjects use either `requirements.txt` or `pyproject.toml`:\n\n```bash\n# For requirements.txt projects\npip install -r requirements.txt\n\n# For pyproject.toml projects (newer projects)\npip install -e .\n# or with uv (preferred for faster installs)\nuv pip install -e .\n```\n\n### Running Projects\n\nMost projects use simple Python execution:\n\n```bash\npython main.py\n# or\npython app.py\n```\n\nSome projects (especially RAG and advanced agents) use Streamlit:\n\n```bash\nstreamlit run app.py\n```\n\n### Environment Configuration\n\nAll projects require environment variables for API keys. Each project has a `.env.example` file. Copy it to `.env` and add your keys:\n\n```bash\ncp .env.example .env\n# Then edit .env with your API keys\n```\n\nCommon API keys used across projects:\n- `NEBIUS_API_KEY` - Nebius Token Factory inference provider (used extensively)\n- `OPENAI_API_KEY` - OpenAI models\n- `GITHUB_PERSONAL_ACCESS_TOKEN` - For GitHub MCP agents\n- `SGAI_API_KEY` - ScrapeGraph AI for web scraping agents\n- `MEMORI_API_KEY` - GibsonAI Memori for memory-enabled agents\n\n## High-Level Architecture\n\n### Multi-Stage Workflow Pattern\n\nAdvanced agents (in `advance_ai_agents/`) typically use a multi-stage workflow pattern with specialized sub-agents:\n\n```python\nclass ResearchWorkflow(Workflow):\n    searcher: Agent  # Gathers information\n    analyst: Agent   # Analyzes findings\n    writer: Agent    # Produces final output\n```\n\nExample: `advance_ai_agents/deep_researcher_agent/agents.py`\n\n### MCP Integration Pattern\n\nMCP agents use the Model Context Protocol to integrate external tools:\n\n```python\nasync with MCPServerStdio(\n    params={\n        \"command\": \"npx\",\n        \"args\": [\"-y\", \"@modelcontextprotocol/server-github\"],\n        \"env\": {\"GITHUB_PERSONAL_ACCESS_TOKEN\": os.environ[\"TOKEN\"]}\n    }\n) as server:\n    agent = Agent(mcp_servers=[server], ...)\n```\n\nExample: `mcp_ai_agents/github_mcp_agent/main.py`, `mcp_ai_agents/mcp_starter/main.py`\n\n### Framework-Specific Patterns\n\n**Agno Framework** (most common):\n- Uses `Agent` class with tools, model, and instructions\n- Supports workflow orchestration via `Workflow` class\n- Examples: `starter_ai_agents/agno_starter/`, `advance_ai_agents/deep_researcher_agent/`\n\n**OpenAI Agents SDK**:\n- Uses async `Runner.run()` with agents\n- Examples: `starter_ai_agents/openai_agents_sdk/`, `mcp_ai_agents/mcp_starter/`\n\n**AWS Strands**:\n- Complete course available in `course/aws_strands/`\n- Covers basic agents, session management, MCP, multi-agent patterns, observability, and guardrails\n\n**LangChain/LangGraph**:\n- Graph-based workflows with state management\n- Examples: `starter_ai_agents/langchain_langgraph_starter/`\n\n## Contributing Guidelines\n\n### Adding New Projects\n\n1. Create an issue describing the project first\n2. Submit ONE project per Pull Request\n3. Place in appropriate category folder (see `CONTRIBUTING.md:46-52`)\n4. Use snake_case naming (e.g., `finance_agent`, `blog_writing_agent`)\n5. Must include a `README.md` following the template in `.github/README_TEMPLATE.md`\n6. Include either `requirements.txt` or `pyproject.toml` (pyproject.toml preferred)\n7. Provide `.env.example` file - never commit secrets\n8. Use code formatter (Black or Ruff) for consistent style\n\n### Project README Requirements\n\nEach project README must include:\n- Clear description of what the agent does\n- Prerequisites (Python version, required API keys)\n- Installation steps\n- Usage instructions with example queries/commands\n- Technical details (frameworks used, models)\n\n## AWS Strands Course Structure\n\nLocated in `course/aws_strands/`, this is an 8-lesson progressive course:\n\n1. **01_basic_agent** - First agent with simple tools\n2. **02_session_management** - Persistent conversations and state\n3. **03_structured_output** - Extract structured data with Pydantic\n4. **04_mcp_agent** - External tool integration via MCP\n5. **05_human_in_the_loop_agent** - Request human input/approval\n6. **06_multi_agent_pattern/** - Advanced multi-agent systems\n   - `06_1_agent_as_tools` - Orchestrator with specialized agents\n   - `06_2_swarm_agent` - Dynamic agent handoffs\n   - `06_3_graph_agent` - Graph-based workflows\n   - `06_4_workflow_agent` - Sequential pipelines\n7. **07_observability** - OpenTelemetry and Langfuse monitoring\n8. **08_guardrails** - Safety measures and content filtering\n\nEach lesson builds on the previous, with complete working examples.\n\n## Key Technical Notes\n\n- **Python Version**: Requires Python 3.10 or higher (specified in most pyproject.toml files)\n- **Primary AI Provider**: Nebius Token Factory is used extensively across examples for inference\n- **Dependency Management**: Newer projects use `uv` for faster package installation\n- **MCP Tools**: Many agents integrate with external services via MCP (GitHub, databases, custom servers)\n- **Streaming UI**: Streamlit is the standard for web-based agent interfaces\n- **Memory Systems**: GibsonAI Memori is the primary memory provider for context retention\n- **Web Scraping**: ScrapeGraph AI is used for intelligent web data extraction\n\n## Common Frameworks by Category\n\n- **Starter**: Agno, OpenAI SDK, LlamaIndex, CrewAI, PydanticAI, LangChain, AWS Strands, Camel AI, DSPy, Google ADK\n- **Simple**: Agno (most common), Mastra AI, browser-use\n- **MCP**: OpenAI SDK, AWS Strands, custom MCP servers\n- **Memory**: Agno with GibsonAI Memori, AWS Strands with Memori\n- **RAG**: LlamaIndex, LangChain, Agno, CrewAI with Qdrant/vector stores\n- **Advanced**: Agno workflows, CrewAI multi-agent, Google ADK, FastAPI services\n"},"files":{"AGENTS.md":"# AGENTS.md\n\nThis file provides guidance to Codex (Codex.ai/code) when working with code in this repository.\n\n## Repository Overview\n\nThis is a comprehensive collection of practical LLM-powered application examples, tutorials, and recipes organized by complexity and use case. The repository contains 70+ example projects demonstrating various AI frameworks and patterns.\n\n## Project Categories\n\nProjects are organized into six main categories:\n\n1. **starter_ai_agents/** - Quick-start boilerplate examples for learning different AI frameworks (Agno, OpenAI SDK, LlamaIndex, CrewAI, PydanticAI, LangChain, AWS Strands, Camel AI, DSPy, Google ADK)\n2. **simple_ai_agents/** - Straightforward, single-purpose agents (finance tracking, web automation, newsletter generation, calendar scheduling, etc.)\n3. **mcp_ai_agents/** - Projects using Model Context Protocol for semantic RAG, database interactions, and external tool integrations\n4. **memory_agents/** - Agents with persistent memory capabilities using frameworks like GibsonAI Memori\n5. **rag_apps/** - Retrieval-Augmented Generation examples with vector databases and document processing\n6. **advance_ai_agents/** - Complex multi-agent workflows and production-ready applications (research agents, job finders, meeting assistants, etc.)\n7. **course/** - Structured learning materials, including the complete AWS Strands course (8 lessons)\n\n## Common Development Commands\n\n### Running Individual Projects\n\nEach project is self-contained with its own dependencies. Navigate to the specific project directory first:\n\n```bash\ncd <category>/<project_name>\n```\n\n### Installing Dependencies\n\nProjects use either `requirements.txt` or `pyproject.toml`:\n\n```bash\n# For requirements.txt projects\npip install -r requirements.txt\n\n# For pyproject.toml projects (newer projects)\npip install -e .\n# or with uv (preferred for faster installs)\nuv pip install -e .\n```\n\n### Running Projects\n\nMost projects use simple Python execution:\n\n```bash\npython main.py\n# or\npython app.py\n```\n\nSome projects (especially RAG and advanced agents) use Streamlit:\n\n```bash\nstreamlit run app.py\n```\n\n### Environment Configuration\n\nAll projects require environment variables for API keys. Each project has a `.env.example` file. Copy it to `.env` and add your keys:\n\n```bash\ncp .env.example .env\n# Then edit .env with your API keys\n```\n\nCommon API keys used across projects:\n- `NEBIUS_API_KEY` - Nebius Token Factory inference provider (used extensively)\n- `OPENAI_API_KEY` - OpenAI models\n- `GITHUB_PERSONAL_ACCESS_TOKEN` - For GitHub MCP agents\n- `SGAI_API_KEY` - ScrapeGraph AI for web scraping agents\n- `MEMORI_API_KEY` - GibsonAI Memori for memory-enabled agents\n\n## High-Level Architecture\n\n### Multi-Stage Workflow Pattern\n\nAdvanced agents (in `advance_ai_agents/`) typically use a multi-stage workflow pattern with specialized sub-agents:\n\n```python\nclass ResearchWorkflow(Workflow):\n    searcher: Agent  # Gathers information\n    analyst: Agent   # Analyzes findings\n    writer: Agent    # Produces final output\n```\n\nExample: `advance_ai_agents/deep_researcher_agent/agents.py`\n\n### MCP Integration Pattern\n\nMCP agents use the Model Context Protocol to integrate external tools:\n\n```python\nasync with MCPServerStdio(\n    params={\n        \"command\": \"npx\",\n        \"args\": [\"-y\", \"@modelcontextprotocol/server-github\"],\n        \"env\": {\"GITHUB_PERSONAL_ACCESS_TOKEN\": os.environ[\"TOKEN\"]}\n    }\n) as server:\n    agent = Agent(mcp_servers=[server], ...)\n```\n\nExample: `mcp_ai_agents/github_mcp_agent/main.py`, `mcp_ai_agents/mcp_starter/main.py`\n\n### Framework-Specific Patterns\n\n**Agno Framework** (most common):\n- Uses `Agent` class with tools, model, and instructions\n- Supports workflow orchestration via `Workflow` class\n- Examples: `starter_ai_agents/agno_starter/`, `advance_ai_agents/deep_researcher_agent/`\n\n**OpenAI Agents SDK**:\n- Uses async `Runner.run()` with agents\n- Examples: `starter_ai_agents/openai_agents_sdk/`, `mcp_ai_agents/mcp_starter/`\n\n**AWS Strands**:\n- Complete course available in `course/aws_strands/`\n- Covers basic agents, session management, MCP, multi-agent patterns, observability, and guardrails\n\n**LangChain/LangGraph**:\n- Graph-based workflows with state management\n- Examples: `starter_ai_agents/langchain_langgraph_starter/`\n\n## Contributing Guidelines\n\n### Adding New Projects\n\n1. Create an issue describing the project first\n2. Submit ONE project per Pull Request\n3. Place in appropriate category folder (see `CONTRIBUTING.md:46-52`)\n4. Use snake_case naming (e.g., `finance_agent`, `blog_writing_agent`)\n5. Must include a `README.md` following the template in `.github/README_TEMPLATE.md`\n6. Include either `requirements.txt` or `pyproject.toml` (pyproject.toml preferred)\n7. Provide `.env.example` file - never commit secrets\n8. Use code formatter (Black or Ruff) for consistent style\n\n### Project README Requirements\n\nEach project README must include:\n- Clear description of what the agent does\n- Prerequisites (Python version, required API keys)\n- Installation steps\n- Usage instructions with example queries/commands\n- Technical details (frameworks used, models)\n\n## AWS Strands Course Structure\n\nLocated in `course/aws_strands/`, this is an 8-lesson progressive course:\n\n1. **01_basic_agent** - First agent with simple tools\n2. **02_session_management** - Persistent conversations and state\n3. **03_structured_output** - Extract structured data with Pydantic\n4. **04_mcp_agent** - External tool integration via MCP\n5. **05_human_in_the_loop_agent** - Request human input/approval\n6. **06_multi_agent_pattern/** - Advanced multi-agent systems\n   - `06_1_agent_as_tools` - Orchestrator with specialized agents\n   - `06_2_swarm_agent` - Dynamic agent handoffs\n   - `06_3_graph_agent` - Graph-based workflows\n   - `06_4_workflow_agent` - Sequential pipelines\n7. **07_observability** - OpenTelemetry and Langfuse monitoring\n8. **08_guardrails** - Safety measures and content filtering\n\nEach lesson builds on the previous, with complete working examples.\n\n## Key Technical Notes\n\n- **Python Version**: Requires Python 3.10 or higher (specified in most pyproject.toml files)\n- **Primary AI Provider**: Nebius Token Factory is used extensively across examples for inference\n- **Dependency Management**: Newer projects use `uv` for faster package installation\n- **MCP Tools**: Many agents integrate with external services via MCP (GitHub, databases, custom servers)\n- **Streaming UI**: Streamlit is the standard for web-based agent interfaces\n- **Memory Systems**: GibsonAI Memori is the primary memory provider for context retention\n- **Web Scraping**: ScrapeGraph AI is used for intelligent web data extraction\n\n## Common Frameworks by Category\n\n- **Starter**: Agno, OpenAI SDK, LlamaIndex, CrewAI, PydanticAI, LangChain, AWS Strands, Camel AI, DSPy, Google ADK\n- **Simple**: Agno (most common), Mastra AI, browser-use\n- **MCP**: OpenAI SDK, AWS Strands, custom MCP servers\n- **Memory**: Agno with GibsonAI Memori, AWS Strands with Memori\n- **RAG**: LlamaIndex, LangChain, Agno, CrewAI with Qdrant/vector stores\n- **Advanced**: Agno workflows, CrewAI multi-agent, Google ADK, FastAPI services\n","CLAUDE.md":"# CLAUDE.md\n\nThis file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.\n\n## Repository Overview\n\nThis is a comprehensive collection of practical LLM-powered application examples, tutorials, and recipes organized by complexity and use case. The repository contains 70+ example projects demonstrating various AI frameworks and patterns.\n\n## Project Categories\n\nProjects are organized into six main categories:\n\n1. **starter_ai_agents/** - Quick-start boilerplate examples for learning different AI frameworks (Agno, OpenAI SDK, LlamaIndex, CrewAI, PydanticAI, LangChain, AWS Strands, Camel AI, DSPy, Google ADK)\n2. **simple_ai_agents/** - Straightforward, single-purpose agents (finance tracking, web automation, newsletter generation, calendar scheduling, etc.)\n3. **mcp_ai_agents/** - Projects using Model Context Protocol for semantic RAG, database interactions, and external tool integrations\n4. **memory_agents/** - Agents with persistent memory capabilities using frameworks like GibsonAI Memori\n5. **rag_apps/** - Retrieval-Augmented Generation examples with vector databases and document processing\n6. **advance_ai_agents/** - Complex multi-agent workflows and production-ready applications (research agents, job finders, meeting assistants, etc.)\n7. **course/** - Structured learning materials, including the complete AWS Strands course (8 lessons)\n\n## Common Development Commands\n\n### Running Individual Projects\n\nEach project is self-contained with its own dependencies. Navigate to the specific project directory first:\n\n```bash\ncd <category>/<project_name>\n```\n\n### Installing Dependencies\n\nProjects use either `requirements.txt` or `pyproject.toml`:\n\n```bash\n# For requirements.txt projects\npip install -r requirements.txt\n\n# For pyproject.toml projects (newer projects)\npip install -e .\n# or with uv (preferred for faster installs)\nuv pip install -e .\n```\n\n### Running Projects\n\nMost projects use simple Python execution:\n\n```bash\npython main.py\n# or\npython app.py\n```\n\nSome projects (especially RAG and advanced agents) use Streamlit:\n\n```bash\nstreamlit run app.py\n```\n\n### Environment Configuration\n\nAll projects require environment variables for API keys. Each project has a `.env.example` file. Copy it to `.env` and add your keys:\n\n```bash\ncp .env.example .env\n# Then edit .env with your API keys\n```\n\nCommon API keys used across projects:\n- `NEBIUS_API_KEY` - Nebius Token Factory inference provider (used extensively)\n- `OPENAI_API_KEY` - OpenAI models\n- `GITHUB_PERSONAL_ACCESS_TOKEN` - For GitHub MCP agents\n- `SGAI_API_KEY` - ScrapeGraph AI for web scraping agents\n- `MEMORI_API_KEY` - GibsonAI Memori for memory-enabled agents\n\n## High-Level Architecture\n\n### Multi-Stage Workflow Pattern\n\nAdvanced agents (in `advance_ai_agents/`) typically use a multi-stage workflow pattern with specialized sub-agents:\n\n```python\nclass ResearchWorkflow(Workflow):\n    searcher: Agent  # Gathers information\n    analyst: Agent   # Analyzes findings\n    writer: Agent    # Produces final output\n```\n\nExample: `advance_ai_agents/deep_researcher_agent/agents.py`\n\n### MCP Integration Pattern\n\nMCP agents use the Model Context Protocol to integrate external tools:\n\n```python\nasync with MCPServerStdio(\n    params={\n        \"command\": \"npx\",\n        \"args\": [\"-y\", \"@modelcontextprotocol/server-github\"],\n        \"env\": {\"GITHUB_PERSONAL_ACCESS_TOKEN\": os.environ[\"TOKEN\"]}\n    }\n) as server:\n    agent = Agent(mcp_servers=[server], ...)\n```\n\nExample: `mcp_ai_agents/github_mcp_agent/main.py`, `mcp_ai_agents/mcp_starter/main.py`\n\n### Framework-Specific Patterns\n\n**Agno Framework** (most common):\n- Uses `Agent` class with tools, model, and instructions\n- Supports workflow orchestration via `Workflow` class\n- Examples: `starter_ai_agents/agno_starter/`, `advance_ai_agents/deep_researcher_agent/`\n\n**OpenAI Agents SDK**:\n- Uses async `Runner.run()` with agents\n- Examples: `starter_ai_agents/openai_agents_sdk/`, `mcp_ai_agents/mcp_starter/`\n\n**AWS Strands**:\n- Complete course available in `course/aws_strands/`\n- Covers basic agents, session management, MCP, multi-agent patterns, observability, and guardrails\n\n**LangChain/LangGraph**:\n- Graph-based workflows with state management\n- Examples: `starter_ai_agents/langchain_langgraph_starter/`\n\n## Contributing Guidelines\n\n### Adding New Projects\n\n1. Create an issue describing the project first\n2. Submit ONE project per Pull Request\n3. Place in appropriate category folder (see `CONTRIBUTING.md:46-52`)\n4. Use snake_case naming (e.g., `finance_agent`, `blog_writing_agent`)\n5. Must include a `README.md` following the template in `.github/README_TEMPLATE.md`\n6. Include either `requirements.txt` or `pyproject.toml` (pyproject.toml preferred)\n7. Provide `.env.example` file - never commit secrets\n8. Use code formatter (Black or Ruff) for consistent style\n\n### Project README Requirements\n\nEach project README must include:\n- Clear description of what the agent does\n- Prerequisites (Python version, required API keys)\n- Installation steps\n- Usage instructions with example queries/commands\n- Technical details (frameworks used, models)\n\n## AWS Strands Course Structure\n\nLocated in `course/aws_strands/`, this is an 8-lesson progressive course:\n\n1. **01_basic_agent** - First agent with simple tools\n2. **02_session_management** - Persistent conversations and state\n3. **03_structured_output** - Extract structured data with Pydantic\n4. **04_mcp_agent** - External tool integration via MCP\n5. **05_human_in_the_loop_agent** - Request human input/approval\n6. **06_multi_agent_pattern/** - Advanced multi-agent systems\n   - `06_1_agent_as_tools` - Orchestrator with specialized agents\n   - `06_2_swarm_agent` - Dynamic agent handoffs\n   - `06_3_graph_agent` - Graph-based workflows\n   - `06_4_workflow_agent` - Sequential pipelines\n7. **07_observability** - OpenTelemetry and Langfuse monitoring\n8. **08_guardrails** - Safety measures and content filtering\n\nEach lesson builds on the previous, with complete working examples.\n\n## Key Technical Notes\n\n- **Python Version**: Requires Python 3.10 or higher (specified in most pyproject.toml files)\n- **Primary AI Provider**: Nebius Token Factory is used extensively across examples for inference\n- **Dependency Management**: Newer projects use `uv` for faster package installation\n- **MCP Tools**: Many agents integrate with external services via MCP (GitHub, databases, custom servers)\n- **Streaming UI**: Streamlit is the standard for web-based agent interfaces\n- **Memory Systems**: GibsonAI Memori is the primary memory provider for context retention\n- **Web Scraping**: ScrapeGraph AI is used for intelligent web data extraction\n\n## Common Frameworks by Category\n\n- **Starter**: Agno, OpenAI SDK, LlamaIndex, CrewAI, PydanticAI, LangChain, AWS Strands, Camel AI, DSPy, Google ADK\n- **Simple**: Agno (most common), Mastra AI, browser-use\n- **MCP**: OpenAI SDK, AWS Strands, custom MCP servers\n- **Memory**: Agno with GibsonAI Memori, AWS Strands with Memori\n- **RAG**: LlamaIndex, LangChain, Agno, CrewAI with Qdrant/vector stores\n- **Advanced**: Agno workflows, CrewAI multi-agent, Google ADK, FastAPI services\n"},"items":[{"name":"AGENTS.md","path":"AGENTS.md","title":"AGENTS.md","content":"# AGENTS.md\n\nThis file provides guidance to Codex (Codex.ai/code) when working with code in this repository.\n\n## Repository Overview\n\nThis is a comprehensive collection of practical LLM-powered application examples, tutorials, and recipes organized by complexity and use case. The repository contains 70+ example projects demonstrating various AI frameworks and patterns.\n\n## Project Categories\n\nProjects are organized into six main categories:\n\n1. **starter_ai_agents/** - Quick-start boilerplate examples for learning different AI frameworks (Agno, OpenAI SDK, LlamaIndex, CrewAI, PydanticAI, LangChain, AWS Strands, Camel AI, DSPy, Google ADK)\n2. **simple_ai_agents/** - Straightforward, single-purpose agents (finance tracking, web automation, newsletter generation, calendar scheduling, etc.)\n3. **mcp_ai_agents/** - Projects using Model Context Protocol for semantic RAG, database interactions, and external tool integrations\n4. **memory_agents/** - Agents with persistent memory capabilities using frameworks like GibsonAI Memori\n5. **rag_apps/** - Retrieval-Augmented Generation examples with vector databases and document processing\n6. **advance_ai_agents/** - Complex multi-agent workflows and production-ready applications (research agents, job finders, meeting assistants, etc.)\n7. **course/** - Structured learning materials, including the complete AWS Strands course (8 lessons)\n\n## Common Development Commands\n\n### Running Individual Projects\n\nEach project is self-contained with its own dependencies. Navigate to the specific project directory first:\n\n```bash\ncd <category>/<project_name>\n```\n\n### Installing Dependencies\n\nProjects use either `requirements.txt` or `pyproject.toml`:\n\n```bash\n# For requirements.txt projects\npip install -r requirements.txt\n\n# For pyproject.toml projects (newer projects)\npip install -e .\n# or with uv (preferred for faster installs)\nuv pip install -e .\n```\n\n### Running Projects\n\nMost projects use simple Python execution:\n\n```bash\npython main.py\n# or\npython app.py\n```\n\nSome projects (especially RAG and advanced agents) use Streamlit:\n\n```bash\nstreamlit run app.py\n```\n\n### Environment Configuration\n\nAll projects require environment variables for API keys. Each project has a `.env.example` file. Copy it to `.env` and add your keys:\n\n```bash\ncp .env.example .env\n# Then edit .env with your API keys\n```\n\nCommon API keys used across projects:\n- `NEBIUS_API_KEY` - Nebius Token Factory inference provider (used extensively)\n- `OPENAI_API_KEY` - OpenAI models\n- `GITHUB_PERSONAL_ACCESS_TOKEN` - For GitHub MCP agents\n- `SGAI_API_KEY` - ScrapeGraph AI for web scraping agents\n- `MEMORI_API_KEY` - GibsonAI Memori for memory-enabled agents\n\n## High-Level Architecture\n\n### Multi-Stage Workflow Pattern\n\nAdvanced agents (in `advance_ai_agents/`) typically use a multi-stage workflow pattern with specialized sub-agents:\n\n```python\nclass ResearchWorkflow(Workflow):\n    searcher: Agent  # Gathers information\n    analyst: Agent   # Analyzes findings\n    writer: Agent    # Produces final output\n```\n\nExample: `advance_ai_agents/deep_researcher_agent/agents.py`\n\n### MCP Integration Pattern\n\nMCP agents use the Model Context Protocol to integrate external tools:\n\n```python\nasync with MCPServerStdio(\n    params={\n        \"command\": \"npx\",\n        \"args\": [\"-y\", \"@modelcontextprotocol/server-github\"],\n        \"env\": {\"GITHUB_PERSONAL_ACCESS_TOKEN\": os.environ[\"TOKEN\"]}\n    }\n) as server:\n    agent = Agent(mcp_servers=[server], ...)\n```\n\nExample: `mcp_ai_agents/github_mcp_agent/main.py`, `mcp_ai_agents/mcp_starter/main.py`\n\n### Framework-Specific Patterns\n\n**Agno Framework** (most common):\n- Uses `Agent` class with tools, model, and instructions\n- Supports workflow orchestration via `Workflow` class\n- Examples: `starter_ai_agents/agno_starter/`, `advance_ai_agents/deep_researcher_agent/`\n\n**OpenAI Agents SDK**:\n- Uses async `Runner.run()` with agents\n- Examples: `starter_ai_agents/openai_agents_sdk/`, `mcp_ai_agents/mcp_starter/`\n\n**AWS Strands**:\n- Complete course available in `course/aws_strands/`\n- Covers basic agents, session management, MCP, multi-agent patterns, observability, and guardrails\n\n**LangChain/LangGraph**:\n- Graph-based workflows with state management\n- Examples: `starter_ai_agents/langchain_langgraph_starter/`\n\n## Contributing Guidelines\n\n### Adding New Projects\n\n1. Create an issue describing the project first\n2. Submit ONE project per Pull Request\n3. Place in appropriate category folder (see `CONTRIBUTING.md:46-52`)\n4. Use snake_case naming (e.g., `finance_agent`, `blog_writing_agent`)\n5. Must include a `README.md` following the template in `.github/README_TEMPLATE.md`\n6. Include either `requirements.txt` or `pyproject.toml` (pyproject.toml preferred)\n7. Provide `.env.example` file - never commit secrets\n8. Use code formatter (Black or Ruff) for consistent style\n\n### Project README Requirements\n\nEach project README must include:\n- Clear description of what the agent does\n- Prerequisites (Python version, required API keys)\n- Installation steps\n- Usage instructions with example queries/commands\n- Technical details (frameworks used, models)\n\n## AWS Strands Course Structure\n\nLocated in `course/aws_strands/`, this is an 8-lesson progressive course:\n\n1. **01_basic_agent** - First agent with simple tools\n2. **02_session_management** - Persistent conversations and state\n3. **03_structured_output** - Extract structured data with Pydantic\n4. **04_mcp_agent** - External tool integration via MCP\n5. **05_human_in_the_loop_agent** - Request human input/approval\n6. **06_multi_agent_pattern/** - Advanced multi-agent systems\n   - `06_1_agent_as_tools` - Orchestrator with specialized agents\n   - `06_2_swarm_agent` - Dynamic agent handoffs\n   - `06_3_graph_agent` - Graph-based workflows\n   - `06_4_workflow_agent` - Sequential pipelines\n7. **07_observability** - OpenTelemetry and Langfuse monitoring\n8. **08_guardrails** - Safety measures and content filtering\n\nEach lesson builds on the previous, with complete working examples.\n\n## Key Technical Notes\n\n- **Python Version**: Requires Python 3.10 or higher (specified in most pyproject.toml files)\n- **Primary AI Provider**: Nebius Token Factory is used extensively across examples for inference\n- **Dependency Management**: Newer projects use `uv` for faster package installation\n- **MCP Tools**: Many agents integrate with external services via MCP (GitHub, databases, custom servers)\n- **Streaming UI**: Streamlit is the standard for web-based agent interfaces\n- **Memory Systems**: GibsonAI Memori is the primary memory provider for context retention\n- **Web Scraping**: ScrapeGraph AI is used for intelligent web data extraction\n\n## Common Frameworks by Category\n\n- **Starter**: Agno, OpenAI SDK, LlamaIndex, CrewAI, PydanticAI, LangChain, AWS Strands, Camel AI, DSPy, Google ADK\n- **Simple**: Agno (most common), Mastra AI, browser-use\n- **MCP**: OpenAI SDK, AWS Strands, custom MCP servers\n- **Memory**: Agno with GibsonAI Memori, AWS Strands with Memori\n- **RAG**: LlamaIndex, LangChain, Agno, CrewAI with Qdrant/vector stores\n- **Advanced**: Agno workflows, CrewAI multi-agent, Google ADK, FastAPI services\n","category":"root","tokens":1791},{"name":"CLAUDE.md","path":"CLAUDE.md","title":"CLAUDE.md","content":"# CLAUDE.md\n\nThis file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.\n\n## Repository Overview\n\nThis is a comprehensive collection of practical LLM-powered application examples, tutorials, and recipes organized by complexity and use case. The repository contains 70+ example projects demonstrating various AI frameworks and patterns.\n\n## Project Categories\n\nProjects are organized into six main categories:\n\n1. **starter_ai_agents/** - Quick-start boilerplate examples for learning different AI frameworks (Agno, OpenAI SDK, LlamaIndex, CrewAI, PydanticAI, LangChain, AWS Strands, Camel AI, DSPy, Google ADK)\n2. **simple_ai_agents/** - Straightforward, single-purpose agents (finance tracking, web automation, newsletter generation, calendar scheduling, etc.)\n3. **mcp_ai_agents/** - Projects using Model Context Protocol for semantic RAG, database interactions, and external tool integrations\n4. **memory_agents/** - Agents with persistent memory capabilities using frameworks like GibsonAI Memori\n5. **rag_apps/** - Retrieval-Augmented Generation examples with vector databases and document processing\n6. **advance_ai_agents/** - Complex multi-agent workflows and production-ready applications (research agents, job finders, meeting assistants, etc.)\n7. **course/** - Structured learning materials, including the complete AWS Strands course (8 lessons)\n\n## Common Development Commands\n\n### Running Individual Projects\n\nEach project is self-contained with its own dependencies. Navigate to the specific project directory first:\n\n```bash\ncd <category>/<project_name>\n```\n\n### Installing Dependencies\n\nProjects use either `requirements.txt` or `pyproject.toml`:\n\n```bash\n# For requirements.txt projects\npip install -r requirements.txt\n\n# For pyproject.toml projects (newer projects)\npip install -e .\n# or with uv (preferred for faster installs)\nuv pip install -e .\n```\n\n### Running Projects\n\nMost projects use simple Python execution:\n\n```bash\npython main.py\n# or\npython app.py\n```\n\nSome projects (especially RAG and advanced agents) use Streamlit:\n\n```bash\nstreamlit run app.py\n```\n\n### Environment Configuration\n\nAll projects require environment variables for API keys. Each project has a `.env.example` file. Copy it to `.env` and add your keys:\n\n```bash\ncp .env.example .env\n# Then edit .env with your API keys\n```\n\nCommon API keys used across projects:\n- `NEBIUS_API_KEY` - Nebius Token Factory inference provider (used extensively)\n- `OPENAI_API_KEY` - OpenAI models\n- `GITHUB_PERSONAL_ACCESS_TOKEN` - For GitHub MCP agents\n- `SGAI_API_KEY` - ScrapeGraph AI for web scraping agents\n- `MEMORI_API_KEY` - GibsonAI Memori for memory-enabled agents\n\n## High-Level Architecture\n\n### Multi-Stage Workflow Pattern\n\nAdvanced agents (in `advance_ai_agents/`) typically use a multi-stage workflow pattern with specialized sub-agents:\n\n```python\nclass ResearchWorkflow(Workflow):\n    searcher: Agent  # Gathers information\n    analyst: Agent   # Analyzes findings\n    writer: Agent    # Produces final output\n```\n\nExample: `advance_ai_agents/deep_researcher_agent/agents.py`\n\n### MCP Integration Pattern\n\nMCP agents use the Model Context Protocol to integrate external tools:\n\n```python\nasync with MCPServerStdio(\n    params={\n        \"command\": \"npx\",\n        \"args\": [\"-y\", \"@modelcontextprotocol/server-github\"],\n        \"env\": {\"GITHUB_PERSONAL_ACCESS_TOKEN\": os.environ[\"TOKEN\"]}\n    }\n) as server:\n    agent = Agent(mcp_servers=[server], ...)\n```\n\nExample: `mcp_ai_agents/github_mcp_agent/main.py`, `mcp_ai_agents/mcp_starter/main.py`\n\n### Framework-Specific Patterns\n\n**Agno Framework** (most common):\n- Uses `Agent` class with tools, model, and instructions\n- Supports workflow orchestration via `Workflow` class\n- Examples: `starter_ai_agents/agno_starter/`, `advance_ai_agents/deep_researcher_agent/`\n\n**OpenAI Agents SDK**:\n- Uses async `Runner.run()` with agents\n- Examples: `starter_ai_agents/openai_agents_sdk/`, `mcp_ai_agents/mcp_starter/`\n\n**AWS Strands**:\n- Complete course available in `course/aws_strands/`\n- Covers basic agents, session management, MCP, multi-agent patterns, observability, and guardrails\n\n**LangChain/LangGraph**:\n- Graph-based workflows with state management\n- Examples: `starter_ai_agents/langchain_langgraph_starter/`\n\n## Contributing Guidelines\n\n### Adding New Projects\n\n1. Create an issue describing the project first\n2. Submit ONE project per Pull Request\n3. Place in appropriate category folder (see `CONTRIBUTING.md:46-52`)\n4. Use snake_case naming (e.g., `finance_agent`, `blog_writing_agent`)\n5. Must include a `README.md` following the template in `.github/README_TEMPLATE.md`\n6. Include either `requirements.txt` or `pyproject.toml` (pyproject.toml preferred)\n7. Provide `.env.example` file - never commit secrets\n8. Use code formatter (Black or Ruff) for consistent style\n\n### Project README Requirements\n\nEach project README must include:\n- Clear description of what the agent does\n- Prerequisites (Python version, required API keys)\n- Installation steps\n- Usage instructions with example queries/commands\n- Technical details (frameworks used, models)\n\n## AWS Strands Course Structure\n\nLocated in `course/aws_strands/`, this is an 8-lesson progressive course:\n\n1. **01_basic_agent** - First agent with simple tools\n2. **02_session_management** - Persistent conversations and state\n3. **03_structured_output** - Extract structured data with Pydantic\n4. **04_mcp_agent** - External tool integration via MCP\n5. **05_human_in_the_loop_agent** - Request human input/approval\n6. **06_multi_agent_pattern/** - Advanced multi-agent systems\n   - `06_1_agent_as_tools` - Orchestrator with specialized agents\n   - `06_2_swarm_agent` - Dynamic agent handoffs\n   - `06_3_graph_agent` - Graph-based workflows\n   - `06_4_workflow_agent` - Sequential pipelines\n7. **07_observability** - OpenTelemetry and Langfuse monitoring\n8. **08_guardrails** - Safety measures and content filtering\n\nEach lesson builds on the previous, with complete working examples.\n\n## Key Technical Notes\n\n- **Python Version**: Requires Python 3.10 or higher (specified in most pyproject.toml files)\n- **Primary AI Provider**: Nebius Token Factory is used extensively across examples for inference\n- **Dependency Management**: Newer projects use `uv` for faster package installation\n- **MCP Tools**: Many agents integrate with external services via MCP (GitHub, databases, custom servers)\n- **Streaming UI**: Streamlit is the standard for web-based agent interfaces\n- **Memory Systems**: GibsonAI Memori is the primary memory provider for context retention\n- **Web Scraping**: ScrapeGraph AI is used for intelligent web data extraction\n\n## Common Frameworks by Category\n\n- **Starter**: Agno, OpenAI SDK, LlamaIndex, CrewAI, PydanticAI, LangChain, AWS Strands, Camel AI, DSPy, Google ADK\n- **Simple**: Agno (most common), Mastra AI, browser-use\n- **MCP**: OpenAI SDK, AWS Strands, custom MCP servers\n- **Memory**: Agno with GibsonAI Memori, AWS Strands with Memori\n- **RAG**: LlamaIndex, LangChain, Agno, CrewAI with Qdrant/vector stores\n- **Advanced**: Agno workflows, CrewAI multi-agent, Google ADK, FastAPI services\n","category":"root","tokens":1792}]}