Extensions
Silo's features are built as extensions — self-contained packages that add panels, editors, commands, themes, workspace badges, and more. You can disable any built-in extension or install new ones without restarting the app.
Find and install
The primary way to discover extensions is the registry:
- In Silo, open Settings → Extensions. The Browse tab is the default view — search, filter by category, and install with one click (you'll get a permissions consent prompt when an extension declares any).
- Or browse the public catalog at extensions.getsilo.dev, then install from Settings → Extensions (or the CLI below).
silo install silo.local-web-viewer # install by registry id
silo uninstall silo.local-web-viewerThe catalog is backed by a static index at registry.getsilo.dev — the same data the app polls for Browse and updates.
Managing extensions
Open Settings → Extensions (or press ⌘, and choose Extensions) for two tabs:
- Browse — the registry catalog
- Installed — everything currently on disk, with enable/disable, detail, and uninstall
When a newer version is on the registry, Silo shows an update badge (also on the settings gear and in the app menu). From Installed you can Update one extension or Update all. If the new version declares different permissions, you'll re-consent before it applies.
silo install <path> # sideload from a local folder
silo install <url-or-npm> # sideload from a tarball URL or npm name
silo uninstall <id> # remove by idExtensions are stored in ~/.config/silo/extensions/ and reload automatically on the next launch. Use Disable / Enable in Settings to unload or reload one without restarting.
Sideloading (folder, URL, npm)
Folder, tarball URL, and npm installs remain supported forever as secondary paths — useful for private packages, work-in-progress builds, or extensions that aren't on the registry yet.
| Path | How |
|---|---|
| Local folder | Settings → Extensions → Install from folder…, or silo install /path/to/ext |
| Tarball URL | Paste a GitHub Release (or other) .tgz URL into Install from npm or URL…, or silo install <url> |
| npm package | Type the package name (e.g. silo-my-extension) into the same field, or silo install silo-my-extension |
See Sharing extensions for packing and distributing outside the registry.
Built-in extensions
Silo ships with a set of first-party extensions that cover the core workflow. They are listed in Settings → Extensions under the Silo publisher (flip Show built-in extensions if they're hidden). Each can be disabled individually; none can be uninstalled (they ship inside the app, so there's nothing on disk to remove).
| Extension | What it adds |
|---|---|
| Workspaces | Workspaces side panel |
| Terminal | Terminal tabs in the center dock |
| File Explorer | Files side panel with a file tree |
| File Search | Search side panel for cross-file content search |
| Git | Git side panel — staged/unstaged changes, commit, branch switcher |
| Markdown Preview | Read-only editor for .md files with rendered output |
| Image Viewer | Read-only viewer for common image formats |
| Themes | Themes side panel and the bundled presets (Tokyo Night, Solarized Light, Gruvbox Dark) |
Official community extensions
silo-code/silo-extensions is the GitHub repo behind several first-party-adjacent extensions (Documents Side Panel, Local Web Viewer, System Monitor, and others). They publish through the same registry as everyone else — install them from Browse or extensions.getsilo.dev, not by cloning the repo (unless you're developing them).
Building your own
Every built-in feature is an extension — you can build one with the same tools. The Building Extensions section of these guides covers everything from the mental model to publishing:
- What is an extension? — the
activate(ctx)model - Your first extension — step-by-step tutorial
- Build with Claude Code — describe what you want; get a working extension
- Sharing extensions — publish to the registry (or sideload)
See also
- Side panels — the panel UI extensions can contribute to
- Permissions & access — what to watch for when installing third-party extensions
- Publishing an extension — the packaging reference
- extensions.getsilo.dev — public catalog