create-grid-page-interceptor

Generates and registers a TypeScript interceptor class that customizes Glyvio grid page designs, cell cards, and query filters.

1|Updated Jun 11, 2026
One-click install
npx skills add https://github.com/devena/glyvio-forge --skill create-grid-page-interceptor-devena
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: create-grid-page-interceptor
Source: https://github.com/devena/glyvio-forge/tree/main/claude/skills/create-grid-page-interceptor
Command: npx skills add https://github.com/devena/glyvio-forge --skill create-grid-page-interceptor-devena

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Customizing an existing Glyvio SimpleGridPage view requires knowing its exact runtime design tree, the correct abstract interceptor base class, and the proper registration flow. This Skill automates that process by capturing the live page design JSON, analyzing it as ground truth, and generating a correctly typed interceptor class. ## Core Features & Use Cases - Live Design Capture: Uses a temporary SpyInterceptor plus a Chrome remote-debugging inspection script to extract the current page design JSON before writing any code. - Ground-Truth Code Generation: Derives all navigation paths, widget keys, and runtime classes exclusively from the captured JSON, using findWidgetByKey instead of fragile hardcoded traversal. - Full Interceptor Blueprint: Generates overrides for getDesign, getDesignForCell, populateQueryBuilder, populateMainFilter, onInitState, onRefreshState, and onEvent, then registers the listener in src/index.ts. - Use Case: You need to add a sidebar filter, recolor overdue task cards, and exclude inactive records on the TaskTypeGridPage. The Skill captures the page design, saves an analysis file, and produces a registered interceptor implementing all three changes. ## Quick Start Ask the agent to create a grid page interceptor for your target Glyvio grid page, providing the page name, route class, state class, entity name, and the design, cell, and query modifications you want.

Frequently Asked Questions about create-grid-page-interceptor

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I customize a Glyvio SimpleGridPage view with an interceptor?▼

Create a class extending the page's abstract SimpleGridPageInterceptor, override getListenerId and getListenerRoute, then implement hooks like getDesign or getDesignForCell. Register it via glyvio_core.appInterceptorService.registerInterceptors in src/index.ts.

How to capture the current design JSON of a Glyvio grid page?▼

Register a temporary SpyInterceptor that stores the design on window.__finalDesign, then run the chrome_inspector.js script against Chrome with remote debugging on port 9222. The script saves the JSON to .agents/temp/<GridPageName>_design.json.

Which base class should a Glyvio grid page interceptor extend?▼

Search the plugin's .d.ts declaration files for the abstract interceptor whose getListenerRoute returns the target route class. If a subclass carries the JSDoc comment "You MUST extend this instead.", extend that specialized class rather than the generic parent.

Can I modify grid card cell layouts in a Glyvio interceptor?▼

Yes, override getDesignForCell to mutate the CardCellDesign per item, such as changing colorTheme or badges. Collect the current cell design JSON first and target widgets with findWidgetByKey instead of hardcoded indices.

Why should interceptor code avoid hardcoded design tree traversal?▼

Hardcoded indices break when the page layout changes. The design tree provides findWidgetByKey to locate widgets by stable keys, and all navigation paths should be derived from the captured design JSON, which is treated as ground truth.