Skip to content

DocsApps

Extending the shell and built-in apps

Updated Oct 20, 2026

The shell and the built-in apps (Finder, Notes, Mail, Calendar, Settings) expose a fixed set of places - contribution points - where something else can add to what you see, without touching the app itself. A community script or extension registers into one of these; so does a first-party app when it needs to. Nothing changes in the built-in apps unless something is actually registered.

Every contribution names where it came from, so it can always be found and removed as a group - installing something and later uninstalling it takes every command, keybinding, menu item, section and card it added along with it.

Contribution points

SlotWhere it appearsWhat a contributor provides
CommandThe strip's Commands group, alongside the built-in commandsA title, an optional subtitle and keywords, and what to run
KeybindingAnywhere in the shell, as long as it doesn't collide with a built-in shortcutA key combo and the command it runs
Context menu actionFinder's and Notes' right-click menu, after the built-in itemsA label, an icon, and what to run against the selected file or note
File handlerFinder's "open" behaviour and its "Open with" menuWhich file extensions or types it opens, and what happens when it does
PreviewFinder's Quick Look and its inspector paneWhich files it can preview, and a rendered preview for one
Settings sectionThe Settings sidebar and its searchA label, keywords for search, and the section's own content
Rail cardThe side rail, in its "needs you", running, or event-stream areaWhen to show, and what the card displays
Window actionEvery open window's title bar, for one app or every appAn icon, a label, and what to run

Behaviours

Six moments in the built-in apps can be watched or vetoed before they happen: saving a note, creating a note, creating a folder, sending a message, creating a calendar event, and changing a setting. Something registered against one of these sees the details first and can let it through unchanged, change what's about to happen, or stop it - the person doing the action is told why if it's stopped.

Anything that watches for a moment like this has a couple of seconds to respond; if it takes too long or runs into a problem, that one watcher is skipped and the action goes ahead normally rather than getting stuck.

What's next

This is the plumbing every contribution point is built on. Two things build on it directly: a script is a small piece of logic bound to a command, a key, an event or a schedule; an extension is a packaged set of these same contributions - several slots installed, approved and removed together, with their own settings and panels. Ask the assistant for either in plain language, or start one from its own app.