Recovery is an important aspect of user experience. However, current desktop environments lack a system-wide undo facility. OntoDesk is an ontology-based experimental desktop system that offers this feature. Ontology is used to model the semantic relationships between parts of the system. OntoDesk assembles a global action history of application use. With this information, it provides undo/redo for any part of the system, including applications without native recovery. The framework allows developers to add advanced features to their applications, and it allows users to explore the system with confidence, knowing that their actions will be reversible.