What problem does it solve? Building a searchable lookup dialog for each model normally means rewriting the search box, table, pagination, and select/cancel logic every time. This Skill shows how to build a picker dialog as a thin subclass of the shared ModelPickerBase, so each model picker is only a model key plus a column list. ## Core Features & Use Cases - Thin picker subclasses: Declare only model and columns (ListColumn with key, title, width, muted, sortable) — search, server-side sort, pagination, and keyboard navigation come from QueryTableBase/ModelPickerBase. - Dialog extensions: Add toolbar buttons via renderToolbarExtra(), filter panels via renderFilters(), custom payloads via extraPayload(), and multiple selection via bus.pickMany(). - Tree pickers: Use ModelTreePickerBase for hierarchical catalogs where parent records are selectable, with expand/collapse and revealNode(id) support. - Use Case: You need a bank-picker dialog for a bank catalog showing name and MFO columns — the Skill produces the entire file as a ~15-line subclass importing BankLookupRow from the model schema. ## Quick Start Create a picker dialog for the bank model showing the name and mfo columns by extending ModelPickerBase.