CtrlK
BlogDocsLog inGet started
Tessl Logo

pantheon-ai/makefile-toolkit

Complete makefile toolkit with generation and validation capabilities

97

Quality

97%

Does it follow best practices?

Impact

Pending

No eval scenarios have been run

SecuritybySnyk

Advisory

Suggest reviewing before use

Overview
Quality
Evals
Security
Files

criteria.jsongenerator/evals/scenario-5/

{
  "context": "Evaluate a multi-directory C++ project Makefile for correct recursive make usage, dependency ordering, and order-only prerequisites",
  "type": "weighted_checklist",
  "checklist": [
    {
      "name": "Top-level uses $(MAKE) exclusively",
      "description": "All recursive sub-directory calls in the top-level Makefile use $(MAKE) -C <dir>, never bare make",
      "max_score": 20
    },
    {
      "name": "Build order enforced",
      "description": "The top-level all target builds engine before renderer before app, either via explicit prerequisites or sequential $(MAKE) calls with correct dependency declarations",
      "max_score": 20
    },
    {
      "name": "app/Makefile modern header",
      "description": "app/Makefile includes the full modern header (SHELL := bash, .ONESHELL:, .SHELLFLAGS := -eu -o pipefail -c, .DELETE_ON_ERROR:, .SUFFIXES:, MAKEFLAGS += lines)",
      "max_score": 15
    },
    {
      "name": "Order-only prerequisite for build directory",
      "description": "app/Makefile object pattern rule uses | $(BUILDDIR) as an order-only prerequisite; BUILDDIR target creates the directory",
      "max_score": 20
    },
    {
      "name": "Dependency tracking in app/Makefile",
      "description": "app/Makefile compile rule includes -MMD -MP and the Makefile includes *.d files with -include or equivalent",
      "max_score": 15
    },
    {
      "name": ".PHONY in both files",
      "description": "Both top-level Makefile and app/Makefile declare all non-file targets in .PHONY",
      "max_score": 10
    }
  ]
}

generator

evals

instructions.json

summary_infeasible.json

summary.json

SKILL.md

tile.json