Droost: Canvas Component Lint
droost_canvas_component_lint Read-only
Module: Droost CanvasChecks one SDC (or all) against Canvas's real placement requirements — prop schema types, required-prop examples, reserved groups. Run it on every component you scaffold before trying to place it; 0 blockers / 0 advisories is the bar.
{
"tool": "droost_canvas_component_lint",
"arguments": {
"component": "droost_tailwind:code"
}
}
{
"success": true,
"message": "droost_tailwind:code: passes Canvas's requirements. 0 blocker(s), 0 advisory(ies).",
"data": {
"component": "droost_tailwind:code",
"meets_requirements": true,
"blockers": [],
"advisories": [],
"placeable": true,
"component_entity": {
"id": "sdc.droost_tailwind.code",
"exists": true,
"enabled": true
}
}
}
Lints Single Directory Components against Canvas's own requirements checker (the one its discovery runs on cache rebuild), plus Droost advisories for editing/AI quality (missing group, missing prop/slot descriptions, bare object props without $ref). Each result cross-references the live Component entity: an SDC failing requirements may STILL be placeable (Canvas keeps existing components, disabled). Pass "component" (an SDC id like "droost_examples:example_card") for one, or omit to sweep every discoverable SDC. Read-only.
{
"type": "object",
"properties": {
"component": {
"type": "string",
"description": "An SDC plugin id (\"module_or_theme:component\"). Omit to lint all discoverable SDCs."
},
"only_problems": {
"type": "boolean",
"description": "Sweep mode: only return components with blockers or advisories (default true)."
}
}
}
Droost