Para la caché, usted podría estar buscando en NSURLCache
y el método(s) removeAllCachedResponses
y removeCachedResponseForRequest
Para el LocalStorage, no parece ser una API para hablar directamente a Safari LocalStorage, excepto a través de JS.
Me hizo encontrar este AppleScript sin embargo, que básicamente evita la API y elimina las bases de datos SQLite directamente, obviamente reemplazar el nombre de USUARIO con su nombre de usuario.
indica la aplicación "Finder"
select every item of folder "LocalStorage" of folder "Safari" of folder "Library" of folder "USERNAME" of folder "Users" of startup disk
move selection to the trash
end tell
Por último, hay un proyecto en SourceForge llamado SafariCleaner que hace todo lo que usted está tratando de hacer en un conjunto de AppleScripts.