LabsThis feature is in Labs.
Bundled extensions
Enable or disable an extension
Four layers control whether an extension is on, merged in order (highest priority first):
Within a layer, an explicit disable beats an explicit enable. For example,
--extension foo --no-extension foo disables foo.
Manage extensions interactively
Run/extensions inside an Otto session to open an interactive editor.
The main picker shows each bundled extension with its current state and a * marker when a CLI flag or environment variable is overriding the settings files. Select an extension to open a per-extension editor with two rows: a User scope row and a Project scope row. Each row has a three-state checkbox:
[x]on — writesenabled: trueto that settings file.[ ]off — writesenabled: falseto that settings file.[~]unset — removes theenabledfield so lower layers win.
Enter or Space to cycle the focused row. The title bar updates to show the predicted next-session state and which layer is winning. Press Escape to save and close.
To apply the change:
- Run
/reloadto re-run the extension list against the fresh settings while keeping your conversation history. - Run
/newto start a fresh session. - Restart Otto for a full reset.
Configure an extension
The settings file accepts either a boolean shorthand or an object withenabled plus any extension-specific config. Both forms can coexist in the same file:
extensions.json
Configurable fields
Extensions that don’t appear in the table take no configuration — they’re either on or off.