Abstract Research on adaptive interfaces in the past has lacked support from user interface tools which allow interfaces to be easily created and modified. Also, current user interface tools provide no support for user models which can collect task-oriented information about users. Developing an adaptive interface requires a user model and an adaptation strategy. It also, however, requires a user interface which can be adapted. The latter task is often time-consuming, especially in relation to more sophisticated user interfaces. The paper presents a user interface design environment, UIDE, which has a different software infrastracture. Designers use high-level specifications to create a model of an application and links from the application to various interface components. The model is the heart of all the design and run-time support in UIDE, including automatic dialog sequencing and help generation. UIDE provides automatic support for collecting task-oriented information about users, by the use of its high-level specifications in its application model as a basic construct for a user model. Some examples of adaptive interfaces and adaptive help are presented that use the information that is collectable in UIDE.