This covers everything you need to customize Frappe's Desk UI through client-side JavaScript. You'll use it when adding custom buttons to forms, dynamically filtering link fields, building dialogs, or scripting form behavior like conditional validation and field visibility. The guide walks through form scripts (both app-level and Client Script DocTypes), list view customization with indicators and bulk actions, and injecting scripts into other apps' DocTypes via hooks. It's comprehensive on the mechanics but assumes you already understand Frappe's architecture. The child table event handling and realtime events sections are especially useful since those patterns aren't always obvious from the framework docs alone.
npx skills add https://github.com/lubusin/agent-skills --skill frappe-desk-customization