CSS intelligence for AI coding agents — surgical style context, fewer tool calls, faster answers. 100% local.
cssgraph provides 13 well-named, domain-specific tools with complete input schemas and descriptions. Naming follows verb_noun convention (cssgraph_explore, cssgraph_search, cssgraph_impact). All tools have descriptions (avg ~120 chars, within 10-1024 baseline). All parameters are typed and described. However, output schemas are NOT documented, LLMs cannot predict response structure for chaining. Error handling is minimal; no recovery guidance or actionable error messages visible. No tool annotations (readOnlyHint, destructiveHint). Parameter descriptions lack format constraints (e.g., maxFiles range, limit bounds). Tools are read-only (low risk) but lack idempotency hints.
Find JSX components that reference a className.
Visualize the cascade path for a className, ordered by specificity.
Quick exact match: find files defining a specific CSS selector string.
Static anchor diagnosis for scroll/height issues. Walks the DOM ancestor chain and classifies each level's height declaration as DEFINITE (absolute unit, usable as anchor), INDEFINITE (%), or UNVERIFIABLE (auto/none). Detects compensation red flags (overflow + large margin, fixed + %, max-height only). Static analysis cannot prove runtime resolution — UNVERIFIABLE levels require DOM Reality Report verification. Pass chain from DOM Reality Report ancestor labels (e.g. ["div.editor-root", "div.s-kit-modal", ...]).
PRIMARY TOOL: Get the full style context for a className — properties, overrides, specificity, and callers in one call.
List project style files from the index.
Output schemas not documented. LLMs cannot predict response structure, field names, or types. This breaks tool chaining, agents cannot extract IDs or references for downstream calls without trial-and-error.
Parameter constraints missing. 'maxFiles' and 'limit' lack min/max bounds; 'exact' boolean lacks default; 'property' is optional but 'value' is required, dependency undocumented. LLMs may pass invalid values.
No tool annotations. All tools are read-only but lack readOnlyHint. No idempotentHint declared. Agents cannot determine retry safety or side-effect risk without external documentation.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | C | 60 | 2026-07-28+ | v2 |
Analyze the impact radius of changing a className.
Find code files (JS/TS/JSX/TSX/es6) affected by a CSS selector — strict (all classes) and loose (any class) impact.
Search selectors by CSS property value (e.g. property="display", value="flex").
Analyze the impact radius of a CSS selector (exact, related selectors, class usage, loose/strict impact).
Search for className selectors by name.
Show index statistics.
Find CSS class selectors that have no incoming references.
Error handling not visible in source. No recovery guidance, error classification, or actionable messages documented. If a query fails, agents have no guidance on retry strategy or alternatives.
Parameter descriptions lack format guidance. 'query' in cssgraph_explore accepts 'Class name or natural language query' but no examples or constraints. 'selector' in cssgraph_rule lacks CSS selector syntax guidance. LLMs may pass malformed input.