{% extends "curb_base.html" %} {# Projects › Apps: places where each project's own code calls an LLM, and the export. #} {% block scope %}{{ k.picker(project) }}{% endblock %} {% block part %}
Curb checks the projects on your Projects page. Add one there first.
New project {% endcall %} {% elif view.rows %}No Python file in {{ one.name if one else "your projects" }} calls an AI library Curb knows.
{% endcall %} {% endif %} {% call k.explain("What this is for", "A map of where to look, for a deeper tool to check.") %}Curb finds these by matching the names of AI libraries. It cannot follow your code, so it cannot prove a problem. The export hands the list to Semgrep or CodeQL, which can.