
2/4/2026
What this post added
This post details 15 lessons learned from building ChatGPT Apps, focusing on the technical challenges and solutions for integrating UI widgets with the AI model in an agentic environment. Key contributions include strategies for managing context asymmetry between the UI, model, and user, emphasizing explicit information sharing and visibility. It introduces techniques like using `_meta` fields for UI-specific data, lazy-loading alternatives with aggressive front-loading, declarative UI context updates via `data-llm` attributes and Vite plugins, and mapping interaction paths. The post also covers UI design considerations for multiple display modes, UI consistency using the SDK UI Kit, language-first filtering via Lists of Values (LOVs), and leveraging files for richer interactions. Finally, it addresses production concerns such as Content Security Policies (CSPs) for secure iframe isolation and the use of app manifests for declaring allowed domains.