{"data":{"node":{"slug":"emmimal-control-layer","name":"control-layer","tagline":"A production-grade control layer for LLM interaction","github_url":"https://github.com/Emmimal/control-layer","owner":"Emmimal","repo":"control-layer","owner_avatar_url":"https://avatars.githubusercontent.com/u/76683323?v=4","primary_language":"Python","stars":62,"forks":8,"topics":["anthropic","circuit-breaker","generative-ai","input-validation","llm","llm-guardrails","llm-ops","production-ai","prompt-engineering","python","structured-output"],"archived":false,"github_pushed_at":"2026-05-25T07:00:39+00:00","maintenance_label":"Slowing","stars_delta_30d":0,"url":"https://www.graphcanon.com/tools/emmimal-control-layer","markdown_url":"https://www.graphcanon.com/tools/emmimal-control-layer.md","api_url":"https://www.graphcanon.com/api/graphcanon/tools/emmimal-control-layer","graph_url":"https://www.graphcanon.com/api/graphcanon/graph?tool=emmimal-control-layer"},"categories":[{"slug":"evaluation-observability","name":"Evaluation & Observability","url":"https://www.graphcanon.com/categories/evaluation-observability","markdown_url":"https://www.graphcanon.com/categories/evaluation-observability.md","api_url":"https://www.graphcanon.com/api/graphcanon/categories/evaluation-observability"},{"slug":"llm-frameworks","name":"LLM Frameworks","url":"https://www.graphcanon.com/categories/llm-frameworks","markdown_url":"https://www.graphcanon.com/categories/llm-frameworks.md","api_url":"https://www.graphcanon.com/api/graphcanon/categories/llm-frameworks"}],"tags":[{"slug":"anthropic","name":"anthropic"},{"slug":"circuit-breaker","name":"circuit breaker"},{"slug":"generative-ai","name":"generative-ai"},{"slug":"input-validation","name":"input-validation"},{"slug":"llm-guardrails","name":"llm-guardrails"},{"slug":"llm-ops","name":"llm-ops"},{"slug":"production-ai","name":"production-ai"},{"slug":"prompt-engineering","name":"prompt-engineering"}],"edges":[],"neighbours":[{"slug":"berriai-litellm","name":"litellm","tagline":"The fastest, lightest AI Gateway","github_url":"https://github.com/BerriAI/litellm","owner":"BerriAI","repo":"litellm","owner_avatar_url":"https://avatars.githubusercontent.com/u/121462774?v=4","primary_language":"Python","stars":59051,"forks":11547,"topics":["ai-gateway","anthropic","azure-openai","bedrock","gateway","langchain","litellm","llm","llm-gateway","llmops","mcp-gateway","openai","openai-proxy","rust","rust-ai","vertex-ai"],"archived":false,"github_pushed_at":"2026-09-18T08:06:17+00:00","maintenance_label":"Very active","url":"https://www.graphcanon.com/tools/berriai-litellm","markdown_url":"https://www.graphcanon.com/tools/berriai-litellm.md","api_url":"https://www.graphcanon.com/api/graphcanon/tools/berriai-litellm","graph_url":"https://www.graphcanon.com/api/graphcanon/graph?tool=berriai-litellm","shared_categories":[]},{"slug":"humanlayer-12-factor-agents","name":"12-factor-agents","tagline":"Principles for building production-ready LLM-powered software","github_url":"https://github.com/humanlayer/12-factor-agents","owner":"humanlayer","repo":"12-factor-agents","owner_avatar_url":"https://avatars.githubusercontent.com/u/177409041?v=4","primary_language":"TypeScript","stars":25353,"forks":1918,"topics":["12-factor","12-factor-agents","agents","ai","context-window","framework","llms","memory","orchestration","prompt-engineering","rag"],"archived":false,"github_pushed_at":"2025-09-21T14:37:40+00:00","maintenance_label":"Slowing","url":"https://www.graphcanon.com/tools/humanlayer-12-factor-agents","markdown_url":"https://www.graphcanon.com/tools/humanlayer-12-factor-agents.md","api_url":"https://www.graphcanon.com/api/graphcanon/tools/humanlayer-12-factor-agents","graph_url":"https://www.graphcanon.com/api/graphcanon/graph?tool=humanlayer-12-factor-agents","shared_categories":["llm-frameworks"]},{"slug":"portkey-ai-gateway","name":"gateway","tagline":"A high-performance AI Gateway connecting to over 1,600 LLMs with guardrails.","github_url":"https://github.com/Portkey-AI/gateway","owner":"Portkey-AI","repo":"gateway","owner_avatar_url":"https://avatars.githubusercontent.com/u/131141116?v=4","primary_language":"TypeScript","stars":12920,"forks":1293,"topics":["ai-gateway","gateway","generative-ai","hacktoberfest","langchain","llm","llm-gateway","llmops","llms","mcp","mcp-client","mcp-gateway","mcp-servers","model-router","openai"],"archived":false,"github_pushed_at":"2026-05-25T13:54:51+00:00","maintenance_label":"Slowing","url":"https://www.graphcanon.com/tools/portkey-ai-gateway","markdown_url":"https://www.graphcanon.com/tools/portkey-ai-gateway.md","api_url":"https://www.graphcanon.com/api/graphcanon/tools/portkey-ai-gateway","graph_url":"https://www.graphcanon.com/api/graphcanon/graph?tool=portkey-ai-gateway","shared_categories":["evaluation-observability","llm-frameworks"]},{"slug":"eth-sri-lmql","name":"lmql","tagline":"A language for constraint-guided and efficient LLM programming.","github_url":"https://github.com/eth-sri/lmql","owner":"eth-sri","repo":"lmql","owner_avatar_url":"https://avatars.githubusercontent.com/u/5363413?v=4","primary_language":"Python","stars":4203,"forks":221,"topics":["chatgpt","huggingface","language-model","programming-language"],"archived":false,"github_pushed_at":"2025-05-22T07:32:31+00:00","maintenance_label":"Dormant","url":"https://www.graphcanon.com/tools/eth-sri-lmql","markdown_url":"https://www.graphcanon.com/tools/eth-sri-lmql.md","api_url":"https://www.graphcanon.com/api/graphcanon/tools/eth-sri-lmql","graph_url":"https://www.graphcanon.com/api/graphcanon/graph?tool=eth-sri-lmql","shared_categories":["llm-frameworks"]},{"slug":"lazyagi-lazyllm","name":"LazyLLM","tagline":"Easiest and laziest way for building multi-agent LLMs applications.","github_url":"https://github.com/LazyAGI/LazyLLM","owner":"LazyAGI","repo":"LazyLLM","owner_avatar_url":"https://avatars.githubusercontent.com/u/171651681?v=4","primary_language":"Python","stars":3880,"forks":411,"topics":["agents","ai-agent","data","deep-learning","documentation-tool","finetuning","framework","knowlege-graph","langchain","lazyllm","llamaindex","llm","llms","rag"],"archived":false,"github_pushed_at":"2026-09-04T11:45:37+00:00","maintenance_label":"Active","url":"https://www.graphcanon.com/tools/lazyagi-lazyllm","markdown_url":"https://www.graphcanon.com/tools/lazyagi-lazyllm.md","api_url":"https://www.graphcanon.com/api/graphcanon/tools/lazyagi-lazyllm","graph_url":"https://www.graphcanon.com/api/graphcanon/graph?tool=lazyagi-lazyllm","shared_categories":[]},{"slug":"antoinezambelli-forge","name":"forge","tagline":"A Python framework for self-hosted LLM tool-calling and multi-step agentic workflows","github_url":"https://github.com/antoinezambelli/forge","owner":"antoinezambelli","repo":"forge","owner_avatar_url":"https://avatars.githubusercontent.com/u/2261593?v=4","primary_language":"Python","stars":2248,"forks":173,"topics":["agentic-ai","agentic-workflow","agents","function-calling","llama-cpp","llamafile","llm","ollama","python","self-hosted","tool-calling"],"archived":false,"github_pushed_at":"2026-09-01T01:05:25+00:00","maintenance_label":"Active","url":"https://www.graphcanon.com/tools/antoinezambelli-forge","markdown_url":"https://www.graphcanon.com/tools/antoinezambelli-forge.md","api_url":"https://www.graphcanon.com/api/graphcanon/tools/antoinezambelli-forge","graph_url":"https://www.graphcanon.com/api/graphcanon/graph?tool=antoinezambelli-forge","shared_categories":["llm-frameworks"]},{"slug":"stoyan-stoyanov-llmflows","name":"llmflows","tagline":"Simple, Explicit and Transparent LLM Apps","github_url":"https://github.com/stoyan-stoyanov/llmflows","owner":"stoyan-stoyanov","repo":"llmflows","owner_avatar_url":"https://avatars.githubusercontent.com/u/14061867?v=4","primary_language":"Python","stars":708,"forks":35,"topics":["ai","chatgpt","gpt-4","llm","llm-inference","llmops","llms","machine-learning","openai","prompt-engineering","python","question-answering","vector-database"],"archived":false,"github_pushed_at":"2025-02-20T16:53:45+00:00","maintenance_label":"Dormant","url":"https://www.graphcanon.com/tools/stoyan-stoyanov-llmflows","markdown_url":"https://www.graphcanon.com/tools/stoyan-stoyanov-llmflows.md","api_url":"https://www.graphcanon.com/api/graphcanon/tools/stoyan-stoyanov-llmflows","graph_url":"https://www.graphcanon.com/api/graphcanon/graph?tool=stoyan-stoyanov-llmflows","shared_categories":["llm-frameworks"]},{"slug":"oxbshw-llm-agents-ecosystem-handbook","name":"LLM-Agents-Ecosystem-Handbook","tagline":"One-stop handbook for building, deploying, and understanding LLM agents","github_url":"https://github.com/oxbshw/LLM-Agents-Ecosystem-Handbook","owner":"oxbshw","repo":"LLM-Agents-Ecosystem-Handbook","owner_avatar_url":"https://avatars.githubusercontent.com/u/212214682?v=4","primary_language":"Python","stars":550,"forks":91,"topics":["ai","ai-agent","ai-agents","fine-tuning","finetuning-llms","freamework","llm","llmops","local-development","mcp-server","memory","rag","rag-chatbot","voice-agent"],"archived":false,"github_pushed_at":"2026-06-30T12:22:57+00:00","maintenance_label":"Steady","url":"https://www.graphcanon.com/tools/oxbshw-llm-agents-ecosystem-handbook","markdown_url":"https://www.graphcanon.com/tools/oxbshw-llm-agents-ecosystem-handbook.md","api_url":"https://www.graphcanon.com/api/graphcanon/tools/oxbshw-llm-agents-ecosystem-handbook","graph_url":"https://www.graphcanon.com/api/graphcanon/graph?tool=oxbshw-llm-agents-ecosystem-handbook","shared_categories":["evaluation-observability"]},{"slug":"blackhc-llm-strategy","name":"llm-strategy","tagline":"Python library for strongly typed interaction with LLMs","github_url":"https://github.com/BlackHC/llm-strategy","owner":"BlackHC","repo":"llm-strategy","owner_avatar_url":"https://avatars.githubusercontent.com/u/729312?v=4","primary_language":"Python","stars":401,"forks":22,"topics":["gpt","langchain","llm","openai","pydantic","python","strongly-typed"],"archived":false,"github_pushed_at":"2025-03-03T20:31:25+00:00","maintenance_label":"Dormant","url":"https://www.graphcanon.com/tools/blackhc-llm-strategy","markdown_url":"https://www.graphcanon.com/tools/blackhc-llm-strategy.md","api_url":"https://www.graphcanon.com/api/graphcanon/tools/blackhc-llm-strategy","graph_url":"https://www.graphcanon.com/api/graphcanon/graph?tool=blackhc-llm-strategy","shared_categories":["llm-frameworks"]},{"slug":"pleisto-flappy","name":"flappy","tagline":"Production-Ready LLM Agent SDK for Every Developer","github_url":"https://github.com/pleisto/flappy","owner":"pleisto","repo":"flappy","owner_avatar_url":"https://avatars.githubusercontent.com/u/107701489?v=4","primary_language":"Rust","stars":304,"forks":24,"topics":["agent","chatgpt","generative-ai","llama","llm","rewoo","transformers"],"archived":true,"github_pushed_at":"2024-04-19T20:02:28+00:00","maintenance_label":"Archived","url":"https://www.graphcanon.com/tools/pleisto-flappy","markdown_url":"https://www.graphcanon.com/tools/pleisto-flappy.md","api_url":"https://www.graphcanon.com/api/graphcanon/tools/pleisto-flappy","graph_url":"https://www.graphcanon.com/api/graphcanon/graph?tool=pleisto-flappy","shared_categories":[]},{"slug":"dipampaul17-agentguard","name":"AgentGuard","tagline":"Real-time guardrail that monitors token spend and manages LLM/agent loops in real time","github_url":"https://github.com/dipampaul17/AgentGuard","owner":"dipampaul17","repo":"AgentGuard","owner_avatar_url":"https://avatars.githubusercontent.com/u/40596409?v=4","primary_language":"JavaScript","stars":173,"forks":11,"topics":["ai-agents","anthropic","anthropic-claude","cost-monitoring","debugging","guardrails","llm","observability","openai","openai-api","prompt-engineering","token-usage"],"archived":false,"github_pushed_at":"2025-07-31T15:20:56+00:00","maintenance_label":"Dormant","url":"https://www.graphcanon.com/tools/dipampaul17-agentguard","markdown_url":"https://www.graphcanon.com/tools/dipampaul17-agentguard.md","api_url":"https://www.graphcanon.com/api/graphcanon/tools/dipampaul17-agentguard","graph_url":"https://www.graphcanon.com/api/graphcanon/graph?tool=dipampaul17-agentguard","shared_categories":["evaluation-observability"]},{"slug":"zenguard-ai-fast-llm-security-guardrails","name":"fast-llm-security-guardrails","tagline":"The fastest Trust Layer for AI Agents","github_url":"https://github.com/ZenGuard-AI/fast-llm-security-guardrails","owner":"ZenGuard-AI","repo":"fast-llm-security-guardrails","owner_avatar_url":"https://avatars.githubusercontent.com/u/163059052?v=4","primary_language":"Python","stars":155,"forks":21,"topics":["agentic-ai","ai-agent","ai-agents","ai-runtime","cx-agent","llm-guard","llm-guardrails","llm-privacy","llm-security","prompt-security","security"],"archived":false,"github_pushed_at":"2026-02-03T18:31:21+00:00","maintenance_label":"Slowing","url":"https://www.graphcanon.com/tools/zenguard-ai-fast-llm-security-guardrails","markdown_url":"https://www.graphcanon.com/tools/zenguard-ai-fast-llm-security-guardrails.md","api_url":"https://www.graphcanon.com/api/graphcanon/tools/zenguard-ai-fast-llm-security-guardrails","graph_url":"https://www.graphcanon.com/api/graphcanon/graph?tool=zenguard-ai-fast-llm-security-guardrails","shared_categories":["evaluation-observability"]}]}}