Skip to content

Shelly CLI Reference

Shelly CLI Documentation

Auto-generated by help_compiler.cs. Do not edit manually.

Overview

Package Management

CommandDescription
versionDisplay the application version
syncSynchronize package databases
list-installedList all installed packages
list-local-installedList all locally installed packages (.gz, .zst)
list-availableList all available packages
list-updatesList packages that need updates
list-reposList configured repositories in order
info <packages>Display information about a package
install <packages>Install one or more packages
install-localInstall a local package file (.gz, .zst)
remove <packages>Remove one or more packages
remove-local <packages>Remove a locally installed package file
update <packages>Update one or more packages
upgradePerform a full system upgrade
downgrade <packages>Downgrade a package
newsShows Arch news you haven’t seen before
purifyFind and remove corrupted packages
fix-permissionsRestore user ownership of Shelly XDG directories (config/cache/data)
pacfile [pacfiles]Manage stored pacfiles

Manage IgnorePkg entries in pacman.conf (ignore)

CommandDescription
ignore listList all IgnorePkg packages
ignore add <packages>Add one or more packages to IgnorePkg list
ignore remove <packages>Remove one or more packages from IgnorePkg list

Manage pacman keyring (keyring)

CommandDescription
keyring initInitialize the pacman keyring
keyring populate [keys]Reload keys from keyrings in /usr/share/pacman/keyrings
keyring recv [keys]Receive keys from a keyserver
keyring lsign [keys]Locally sign the specified key(s)
keyring listList all keys in the keyring
keyring refreshRefresh keys from the keyserver

Manage AUR packages (aur)

CommandDescription
aur search <query>Search for AUR packages
aur list-installedList installed AUR packages
aur list-updatesList AUR packages that need updates
aur install <packages>Install AUR packages
aur install-version <package> <commit>Install a specific version of an AUR package by commit hash
aur update <packages>Update specific AUR packages
aur upgradeUpgrade all AUR packages
aur remove <packages>Remove AUR packages
aur get-package-build <packages>Get package build

Manage flatpak (flatpak)

CommandDescription
flatpak install <package>Install flatpak app
flatpak update <package>Update flatpak app
flatpak listList installed flatpak apps
flatpak list-updatesList installed flatpak apps
flatpak runningList running flatpak apps
flatpak repairRepairs Flatpak Installation
flatpak uninstall <package>Remove flatpak app
flatpak run <package>Run flatpak app
flatpak kill <package>Kill running flatpak app
flatpak search <query>Search flatpak
flatpak sync-remote-appstreamSync remote appstream
flatpak get-remote-appstream <query>Returns remote appstream json
flatpak upgradeUpgrade all flatpak apps
flatpak list-remotesReturns all remotes currently added
flatpak add-remotes <remote>Adds a flatpak remote
flatpak remove-remotes <remote>Removes a flatpak remote
flatpak install-ref-file <RefFilePath>Installs flatpak app from ref file
flatpak install-bundle <BundlePath>Installs flatpak app from bundle file
flatpak app-remote-info <remote> <id> <branch>Get app remote info

Manage shelly configuration (config)

CommandDescription
config get <KEY>Get a configuration value
config set <KEY> <VALUE>Set a configuration value
config listList all configuration values
config resetReset configuration to defaults

shelly utils (utility)

CommandDescription
utility exportexport sync file
utility updateschecks for updates as non-root user
utility cache-cleanCleans the cache of all downloaded packages

Configuration setup for shelly (config)

CommandDescription
config parallel <downloadCount>Sets parallel download count

appimage

CommandDescription
appimage list [QUERY]list for installed
appimage installInstall an appimage file
appimage remove <Name>Remove an appimage file
appimage list-updatesFind updates for appimages
appimage upgrade [Name]Update an appimage file
appimage configure-updates <Name>Configure update settings for an AppImage
appimage sync-meta [QUERY]Syncs meta data for an AppImage

Command Reference

shelly

Arguments:

  • <SearchString> — Search

Options:

  • -v, --version — Show version information

shelly version

Display the application version

Examples:

Terminal window
shelly version

shelly sync

Synchronize package databases

Options:

  • -f, --force — Force the operation even if it would normally be skipped or blocked
  • -j, --json — Output results in JSON format for UI integration and scripting
  • --singlepane — Use pacman-style single-stream output instead of the split-pane Live layout
  • -y, --sync — Synchronize package databases before performing the operation

Examples:

Terminal window
shelly sync

shelly list-installed

List all installed packages

Options:

  • -f, --filter — Filter packages by name (case-insensitive fuzzy match)
  • -j, --json — Output results in JSON format for UI integration and scripting
  • -o, --order — Sort order: ascending, descending (default: ascending
  • -p, --page — The page to render
  • --show-hidden — Show packages that are in the IgnorePkg list in pacman.conf
  • --singlepane — Use pacman-style single-stream output instead of the split-pane Live layout
  • -s, --sort — Sort results by: name, size, popularity (popularity sorts by name for non-aur packages)
  • -y, --sync — Synchronize package databases before performing the operation
  • -t, --take — The number of packages to render per page

Examples:

Terminal window
shelly list-installed
shelly list-installed --sort name
shelly list-installed --sort size
shelly list-installed --sort size --order desc
shelly list-installed --filter linux

shelly list-local-installed

List all locally installed packages (.gz, .zst)

Options:

  • -f, --filter — Filter packages by name (case-insensitive fuzzy match)
  • -j, --json — Output results in JSON format for UI integration and scripting
  • -o, --order — Sort order: ascending, descending (default: ascending
  • -p, --page — The page to render
  • --singlepane — Use pacman-style single-stream output instead of the split-pane Live layout
  • -s, --sort — Sort results by: name, size, popularity (popularity sorts by name for non-aur packages)
  • -y, --sync — Synchronize package databases before performing the operation
  • -t, --take — The number of packages to render per page

Examples:

Terminal window
shelly list-local-installed
shelly list-local-installed --sort name
shelly list-local-installed --sort size
shelly list-local-installed --sort size --order desc
shelly list-local-installed --filter firefox

shelly list-available

List all available packages

Options:

  • -f, --filter — Filter packages by name (case-insensitive fuzzy match)
  • -j, --json — Output results in JSON format for UI integration and scripting
  • -o, --order — Sort order: ascending, descending (default: ascending
  • -p, --page — The page to render
  • --show-hidden — Show packages that are in the IgnorePkg list in pacman.conf
  • --singlepane — Use pacman-style single-stream output instead of the split-pane Live layout
  • -s, --sort — Sort results by: name, size, popularity (popularity sorts by name for non-aur packages)
  • -y, --sync — Synchronize package databases before performing the operation
  • -t, --take — The number of packages to render per page

Examples:

Terminal window
shelly list-available
shelly list-available --sort name
shelly list-available --sort size
shelly list-available --sort size --order desc
shelly list-available --filter firefox

shelly list-updates

List packages that need updates

Options:

  • -f, --filter — Filter packages by name (case-insensitive fuzzy match)
  • -j, --json — Output results in JSON format for UI integration and scripting
  • -o, --order — Sort order: ascending, descending (default: ascending
  • -p, --page — The page to render
  • --singlepane — Use pacman-style single-stream output instead of the split-pane Live layout
  • -s, --sort — Sort results by: name, size, popularity (popularity sorts by name for non-aur packages)
  • -y, --sync — Synchronize package databases before performing the operation
  • -t, --take — The number of packages to render per page

Examples:

Terminal window
shelly list-updates

shelly list-repos

List configured repositories in order

Examples:

Terminal window
shelly list-repos

shelly info

Display information about a package

Arguments:

  • <packages> (required) — One or more package names to operate on (space-separated)

Options:

  • -i, --installed — Searches installed packages
  • -j, --json — Output results in JSON format for UI integration and scripting
  • -n, --no-confirm — Proceed without asking for user confirmation
  • -r, --repository — Searches repository of available packages.
  • --singlepane — Use pacman-style single-stream output instead of the split-pane Live layout
  • -y, --sync — Synchronize package databases before performing the operation

Examples:

Terminal window
shelly info firefox --installed
shelly info firefox --repository
shelly info firefox -i
shelly info firefox -r

shelly install

Install one or more packages

Arguments:

  • <packages> (required) — One or more package names to operate on (space-separated)

Options:

  • -o, --build-deps — Install build dependencies only for the specified packages
  • -j, --json — Output results in JSON format for UI integration and scripting
  • -m, --make-deps — Install make dependencies only for the specified packages
  • -n, --no-confirm — Proceed without asking for user confirmation
  • -d, --no-deps — Install package without checking/installing dependencies
  • --singlepane — Use pacman-style single-stream output instead of the split-pane Live layout
  • -y, --sync — Synchronize package databases before performing the operation
  • -u, --upgrade — Triggers full system upgrade with install

Examples:

Terminal window
shelly install firefox
shelly install firefox vlc gimp
shelly install firefox --no-confirm
shelly install firefox --build-deps
shelly install firefox -o
shelly install firefox --make-deps
shelly install firefox -m
shelly install firefox --build-deps --make-deps
shelly install firefox -o -m
shelly install firefox --no-deps
shelly install firefox -d

shelly install-local

Install a local package file (.gz, .zst)

Options:

  • -l, --location — Location of the .pkg.tar.gz(zst) to be installed
  • -n, --no-confirm — Proceed without asking for user confirmation
  • --singlepane — Use pacman-style single-stream output instead of the split-pane Live layout

Examples:

Terminal window
shelly install-local --location /path/to/package.pkg.tar.zst
shelly install-local -l /path/to/package.pkg.tar.zst
shelly install-local --location /path/to/package.pkg.tar.gz
shelly install-local -l /path/to/package.pkg.tar.gz
shelly install-local --location /path/to/package.pkg.tar.zst --no-confirm
shelly install-local -l /path/to/package.pkg.tar.zst -n
shelly install-local --location /path/to/package.pkg.tar.gz --no-confirm
shelly install-local -l /path/to/package.pkg.tar.gz -n

shelly remove

Remove one or more packages

Arguments:

  • <packages> (required) — One or more package names to operate on (space-separated)

Options:

  • -c, --cascade — Removes all things the removed package(s) are dependent on that have no other uses
  • -j, --json — Output results in JSON format for UI integration and scripting
  • -n, --no-confirm — Proceed without asking for user confirmation
  • -o, --opt-deps — Removes optional dependencies installed with the package, that don’t depend on other packages
  • -r, --remove-config — Removes any files in your ~/.config that can be tied exclusively to the removed package(s). This is EXPERIMENTAL and has no guarantees of working
  • -i, --ripple — Removes packages that depend on the package being removed
  • --singlepane — Use pacman-style single-stream output instead of the split-pane Live layout
  • -y, --sync — Synchronize package databases before performing the operation

Examples:

Terminal window
shelly remove firefox
shelly remove firefox vlc
shelly remove firefox --no-confirm

shelly remove-local

Remove a locally installed package file

Arguments:

  • <packages> (required) — One or more package names to operate on (space-separated)

Options:

  • -j, --json — Output results in JSON format for UI integration and scripting
  • -n, --no-confirm — Proceed without asking for user confirmation
  • --singlepane — Use pacman-style single-stream output instead of the split-pane Live layout
  • -y, --sync — Synchronize package databases before performing the operation

Examples:

Terminal window
shelly remove-local /opt/shelly/vlc
shelly remove-local /opt/shelly/vlc --no-confirm

shelly update

Update one or more packages

Arguments:

  • <packages> (required) — One or more package names to operate on (space-separated)

Options:

  • -j, --json — Output results in JSON format for UI integration and scripting
  • -n, --no-confirm — Proceed without asking for user confirmation
  • --singlepane — Use pacman-style single-stream output instead of the split-pane Live layout
  • -y, --sync — Synchronize package databases before performing the operation

Examples:

Terminal window
shelly update firefox
shelly update firefox vlc
shelly update firefox --no-confirm

shelly upgrade

Perform a full system upgrade

Options:

  • -a, --all — Upgrades all supported sources. (Standard, AUR, Flatpak
  • -u, --aur — Upgrades AUR packages
  • -l, --flatpak — Upgrade Flatpak packages
  • -j, --json — Output results in JSON format for UI integration and scripting
  • -n, --no-confirm — Proceed with system upgrade without asking for user confirmation
  • --singlepane — Use pacman-style single-stream output instead of the split-pane Live layout
  • -y, --sync — Synchronize package databases before performing the operation

Examples:

Terminal window
shelly upgrade
shelly upgrade --no-confirm

shelly downgrade

Downgrade a package

Arguments:

  • <packages> (required) — One or more package names to operate on (space-separated)

Options:

  • -i, --ignore — Add to IgnorePkg list
  • -j, --json — Output results in JSON format for UI integration and scripting
  • --list-options — List available downgrade versions
  • -n, --no-confirm — Proceed without asking for user confirmation
  • -o, --oldest — Installs the oldest matched version (default newest)
  • --singlepane — Use pacman-style single-stream output instead of the split-pane Live layout
  • -y, --sync — Synchronize package databases before performing the operation
  • -t, --target — Install a specific downgrade target by exact version or package filename

Examples:

Terminal window
shelly downgrade firefox
shelly downgrade firefox --oldest
shelly downgrade firefox --exact 67.0.4-2
shelly downgrade firefox --list-options
shelly downgrade firefox --ignore

shelly ignore

Manage IgnorePkg entries in pacman.conf

Branch command — use one of the subcommands below.

Subcommands:

  • shelly ignore list — List all IgnorePkg packages
  • shelly ignore add — Add one or more packages to IgnorePkg list
  • shelly ignore remove — Remove one or more packages from IgnorePkg list

shelly ignore list

List all IgnorePkg packages

Options:

  • -j, --json — Output results in JSON format for UI integration and scripting

Examples:

Terminal window
shelly ignore list

shelly ignore add

Add one or more packages to IgnorePkg list

Arguments:

  • <packages> (required) — One or more package names to add to IgnorePkg (space-separated)

Examples:

Terminal window
shelly ignore add firefox
shelly ignore add firefox vlc

shelly ignore remove

Remove one or more packages from IgnorePkg list

Arguments:

  • <packages> (required) — One or more package names to remove from IgnorePkg (space-separated)

Examples:

Terminal window
shelly ignore remove firefox
shelly ignore remove firefox vlc

shelly news

Shows Arch news you haven’t seen before

Options:

  • -a, --all — Shows all arch news
  • -j, --json — Returns news in JSON format

Examples:

Terminal window
shelly news --all

shelly purify

Find and remove corrupted packages

Options:

  • -d, --dry-run
  • -n, --no-confirm

Examples:

Terminal window
shelly purify
shelly purify --dry-run
shelly purify --no-confirm

shelly fix-permissions

Restore user ownership of Shelly XDG directories (config/cache/data)

Examples:

Terminal window
shelly fix-permissions

shelly pacfile

Manage stored pacfiles

Arguments:

  • <pacfiles> — One or more pacfiles to interact with (space-separated). If empty uses all pacfiles

Options:

  • -d, --delete — Deletes a pacfile however this is still not supported and is here as a placeholder.
  • -j, --json

Examples:

Terminal window
shelly pacfile
shelly pacfile mypacfile
shelly pacfile mypacfile --delete
shelly pacfile --json

shelly keyring

Manage pacman keyring

Branch command — use one of the subcommands below.

Subcommands:

  • shelly keyring init — Initialize the pacman keyring
  • shelly keyring populate — Reload keys from keyrings in /usr/share/pacman/keyrings
  • shelly keyring recv — Receive keys from a keyserver
  • shelly keyring lsign — Locally sign the specified key(s)
  • shelly keyring list — List all keys in the keyring
  • shelly keyring refresh — Refresh keys from the keyserver

shelly keyring init

Initialize the pacman keyring

Examples:

Terminal window
shelly keyring init

shelly keyring populate

Reload keys from keyrings in /usr/share/pacman/keyrings

Arguments:

  • <keys> — GPG key IDs or fingerprints to operate on (e.g., 0x12345678)

Options:

  • --keyserver — URL of the keyserver to fetch keys from (e.g., keyserver.ubuntu.com)

Examples:

Terminal window
shelly keyring populate
shelly keyring populate archlinux

shelly keyring recv

Receive keys from a keyserver

Arguments:

  • <keys> — GPG key IDs or fingerprints to operate on (e.g., 0x12345678)

Options:

  • --keyserver — URL of the keyserver to fetch keys from (e.g., keyserver.ubuntu.com)

Examples:

Terminal window
shelly keyring recv 0x12345678
shelly keyring recv 0x12345678 --keyserver keyserver.ubuntu.com

shelly keyring lsign

Locally sign the specified key(s)

Arguments:

  • <keys> — GPG key IDs or fingerprints to operate on (e.g., 0x12345678)

Options:

  • --keyserver — URL of the keyserver to fetch keys from (e.g., keyserver.ubuntu.com)

Examples:

Terminal window
shelly keyring lsign 0x12345678

shelly keyring list

List all keys in the keyring

Examples:

Terminal window
shelly keyring list

shelly keyring refresh

Refresh keys from the keyserver

Examples:

Terminal window
shelly keyring refresh

shelly aur

Manage AUR packages

Branch command — use one of the subcommands below.

Subcommands:

  • shelly aur search — Search for AUR packages
  • shelly aur list-installed — List installed AUR packages
  • shelly aur list-updates — List AUR packages that need updates
  • shelly aur install — Install AUR packages
  • shelly aur install-version — Install a specific version of an AUR package by commit hash
  • shelly aur update — Update specific AUR packages
  • shelly aur upgrade — Upgrade all AUR packages
  • shelly aur remove — Remove AUR packages
  • shelly aur get-package-build — Get package build

Search for AUR packages

Arguments:

  • <query> (required) — Search term to find packages in the Arch User Repository

Options:

  • -j, --json — Output results in JSON format for UI integration and scripting
  • --singlepane — Use pacman-style single-stream output instead of the split-pane Live layout
  • -y, --sync — Synchronize package databases before performing the operation

Examples:

Terminal window
shelly aur search yay

shelly aur list-installed

List installed AUR packages

Options:

  • -f, --filter — Filter packages by name (case-insensitive fuzzy match)
  • -j, --json — Output results in JSON format for UI integration and scripting
  • -o, --order — Sort order: ascending, descending (default: ascending
  • -p, --page — The page to render
  • --show-hidden — Show packages that are in the IgnorePkg list in pacman.conf
  • --singlepane — Use pacman-style single-stream output instead of the split-pane Live layout
  • -s, --sort — Sort results by: name, size, popularity (popularity sorts by name for non-aur packages)
  • -y, --sync — Synchronize package databases before performing the operation
  • -t, --take — The number of packages to render per page

Examples:

Terminal window
shelly aur list-installed
shelly aur list-installed --sort name
shelly aur list-installed --sort popularity
shelly aur list-installed --sort popularity --order desc
shelly aur list-installed --filter yay

shelly aur list-updates

List AUR packages that need updates

Options:

  • -f, --filter — Filter packages by name (case-insensitive fuzzy match)
  • -j, --json — Output results in JSON format for UI integration and scripting
  • -o, --order — Sort order: ascending, descending (default: ascending
  • -p, --page — The page to render
  • --show-hidden — Show packages that are in the IgnorePkg list in pacman.conf
  • --singlepane — Use pacman-style single-stream output instead of the split-pane Live layout
  • -s, --sort — Sort results by: name, size, popularity (popularity sorts by name for non-aur packages)
  • -y, --sync — Synchronize package databases before performing the operation
  • -t, --take — The number of packages to render per page

Examples:

Terminal window
shelly aur list-updates
shelly aur list-updates --sort name
shelly aur list-updates --sort size
shelly aur list-updates --sort size --order desc
shelly aur list-updates --filter paru

shelly aur install

Install AUR packages

Arguments:

  • <packages> (required) — One or more AUR package names to operate on (space-separated)

Options:

  • -o, --build-deps — Install build dependencies only for the specified AUR packages
  • --check — Run the check() function during AUR package builds (disabled by default)
  • -c, --chroot — Build packages in a clean chroot environment using makechrootpkg
  • -m, --make-deps — Install make dependencies only for the specified AUR packages
  • --no-confirm — Proceed without asking for user confirmation
  • --singlepane — Render output as a single pacman-style linear stream instead of the split two-pane layout

Examples:

Terminal window
shelly aur install yay
shelly aur install yay paru
shelly aur install yay --no-confirm
shelly aur install yay --build-deps
shelly aur install yay -o
shelly aur install yay --make-deps
shelly aur install yay -m
shelly aur install yay --build-deps --make-deps
shelly aur install yay -o -m

shelly aur install-version

Install a specific version of an AUR package by commit hash

Arguments:

  • <package> (required) — Name of the AUR package to install
  • <commit> (required) — Git commit hash specifying the exact version to install

Options:

  • --check — Run the check() function during AUR package builds (disabled by default)

Examples:

Terminal window
shelly aur install-version yay abc1234

shelly aur update

Update specific AUR packages

Arguments:

  • <packages> (required) — One or more AUR package names to operate on (space-separated)

Options:

  • --check — Run the check() function during AUR package builds (disabled by default)
  • --no-confirm — Proceed without asking for user confirmation
  • --singlepane — Render output as a single pacman-style linear stream instead of the split two-pane layout

Examples:

Terminal window
shelly aur update yay
shelly aur update yay paru
shelly aur update yay --no-confirm

shelly aur upgrade

Upgrade all AUR packages

Options:

  • --check — Run the check() function during AUR package builds (disabled by default)
  • --no-confirm — Proceed without asking for user confirmation
  • --singlepane — Render output as a single pacman-style linear stream instead of the split two-pane layout

Examples:

Terminal window
shelly aur upgrade
shelly aur upgrade --no-confirm

shelly aur remove

Remove AUR packages

Arguments:

  • <packages> (required) — One or more AUR package names to operate on (space-separated)

Options:

  • -c, --cascade — Removes all things the removed package(s) are dependent on that have no other uses
  • --check — Run the check() function during AUR package builds (disabled by default)
  • --no-confirm — Proceed without asking for user confirmation
  • -o, --opt-deps — Removes optional dependencies installed with the package, that don’t depend on other packages
  • -i, --ripple — Removes packages that depend on the package being removed
  • --singlepane — Render output as a single pacman-style linear stream instead of the split two-pane layout

Examples:

Terminal window
shelly aur remove yay
shelly aur remove yay paru
shelly aur remove yay --no-confirm

shelly aur get-package-build

Get package build

Arguments:

  • <packages> (required) — One or more AUR package names to operate on (space-separated)

Options:

  • --check — Run the check() function during AUR package builds (disabled by default)
  • --no-confirm — Proceed without asking for user confirmation
  • --singlepane — Render output as a single pacman-style linear stream instead of the split two-pane layout

Examples:

Terminal window
shelly aur get-package-build yay paru

shelly flatpak

Manage flatpak

Branch command — use one of the subcommands below.

Subcommands:

  • shelly flatpak install — Install flatpak app
  • shelly flatpak update — Update flatpak app
  • shelly flatpak list — List installed flatpak apps
  • shelly flatpak list-updates — List installed flatpak apps
  • shelly flatpak running — List running flatpak apps
  • shelly flatpak repair — Repairs Flatpak Installation
  • shelly flatpak uninstall — Remove flatpak app
  • shelly flatpak run — Run flatpak app
  • shelly flatpak kill — Kill running flatpak app
  • shelly flatpak search — Search flatpak
  • shelly flatpak sync-remote-appstream — Sync remote appstream
  • shelly flatpak get-remote-appstream — Returns remote appstream json
  • shelly flatpak upgrade — Upgrade all flatpak apps
  • shelly flatpak list-remotes — Returns all remotes currently added
  • shelly flatpak add-remotes — Adds a flatpak remote
  • shelly flatpak remove-remotes — Removes a flatpak remote
  • shelly flatpak install-ref-file — Installs flatpak app from ref file
  • shelly flatpak install-bundle — Installs flatpak app from bundle file
  • shelly flatpak app-remote-info — Get app remote info

shelly flatpak install

Install flatpak app

Arguments:

  • <package> (required) — Flatpak application ID (e.g., com.spotify.Client)

Options:

  • -b, --branch — Branch to install (e.g., stable, beta). Defaults to stable
  • -r, --remote — Remote to install from (e.g., flathub, flathub-beta)
  • --remove-unused — Remove unused dependencies after uninstalling
  • --runtime — Install as a runtime instead of an application
  • --user — Install to user scope instead of system scope

Examples:

Terminal window
shelly flatpak install com.spotify.Client

shelly flatpak update

Update flatpak app

Arguments:

  • <package> (required) — Flatpak application ID (e.g., com.spotify.Client)

Options:

  • -b, --branch — Branch to install (e.g., stable, beta). Defaults to stable
  • -r, --remote — Remote to install from (e.g., flathub, flathub-beta)
  • --remove-unused — Remove unused dependencies after uninstalling
  • --runtime — Install as a runtime instead of an application
  • --user — Install to user scope instead of system scope

Examples:

Terminal window
shelly flatpak update com.spotify.Client

shelly flatpak list

List installed flatpak apps

Options:

  • -j, --json — Output results in JSON format for UI integration and scripting
  • --singlepane — Use pacman-style single-stream output instead of the split-pane Live layout
  • -y, --sync — Synchronize package databases before performing the operation

Examples:

Terminal window
shelly flatpak list

shelly flatpak list-updates

List installed flatpak apps

Options:

  • -j, --json — Output results in JSON format for UI integration and scripting
  • --singlepane — Use pacman-style single-stream output instead of the split-pane Live layout
  • -y, --sync — Synchronize package databases before performing the operation

Examples:

Terminal window
shelly flatpak list-updates

shelly flatpak running

List running flatpak apps

Examples:

Terminal window
shelly flatpak running

shelly flatpak repair

Repairs Flatpak Installation

Examples:

Terminal window
shelly flatpak repair

shelly flatpak uninstall

Remove flatpak app

Arguments:

  • <package> (required) — Flatpak application ID (e.g., com.spotify.Client)

Options:

  • -c, --config — Removes flatpak configuration for removed app
  • -r, --remove-unused — Remove unused dependencies after uninstalling

Examples:

Terminal window
shelly flatpak uninstall com.spotify.Client

shelly flatpak run

Run flatpak app

Arguments:

  • <package> (required) — Flatpak application ID (e.g., com.spotify.Client)

Options:

  • -b, --branch — Branch to install (e.g., stable, beta). Defaults to stable
  • -r, --remote — Remote to install from (e.g., flathub, flathub-beta)
  • --remove-unused — Remove unused dependencies after uninstalling
  • --runtime — Install as a runtime instead of an application
  • --user — Install to user scope instead of system scope

Examples:

Terminal window
shelly flatpak run com.spotify.Client

shelly flatpak kill

Kill running flatpak app

Arguments:

  • <package> (required) — Flatpak application ID (e.g., com.spotify.Client)

Options:

  • -b, --branch — Branch to install (e.g., stable, beta). Defaults to stable
  • -r, --remote — Remote to install from (e.g., flathub, flathub-beta)
  • --remove-unused — Remove unused dependencies after uninstalling
  • --runtime — Install as a runtime instead of an application
  • --user — Install to user scope instead of system scope

Examples:

Terminal window
shelly flatpak kill com.spotify.Client

Search flatpak

Arguments:

  • <query> (required) — Search term to find Flatpak applications on Flathub

Options:

  • -j, --json — Output results in JSON format for UI integration and scripting
  • -l, --limit — Maximum number of search results to display per page
  • -p, --page — Page number for paginated results (starts at 1)

Examples:

Terminal window
shelly flatpak search spotify
shelly flatpak search spotify --limit 10
shelly flatpak search spotify --page 2

shelly flatpak sync-remote-appstream

Sync remote appstream

Examples:

Terminal window
shelly flatpak sync-remote-appstream

shelly flatpak get-remote-appstream

Returns remote appstream json

Arguments:

  • <query> (required) — Gets appstream data in json (use all to retreive all appstreams)

Examples:

Terminal window
shelly flatpak sync-get-remote-appstream

shelly flatpak upgrade

Upgrade all flatpak apps

Examples:

Terminal window
shelly flatpak upgrade

shelly flatpak list-remotes

Returns all remotes currently added

Options:

  • -j, --json — Output results in JSON format for UI integration and scripting
  • --singlepane — Use pacman-style single-stream output instead of the split-pane Live layout
  • -y, --sync — Synchronize package databases before performing the operation

shelly flatpak add-remotes

Adds a flatpak remote

Arguments:

  • <remote> (required) — Flatpak remote name ID (e.g., flathub)

Options:

  • -g, --gpg-verify
  • -u, --remote-url
  • -s, --system

shelly flatpak remove-remotes

Removes a flatpak remote

Arguments:

  • <remote> (required) — Flatpak remote name ID (e.g., flathub)

Options:

  • -s, --system

shelly flatpak install-ref-file

Installs flatpak app from ref file

Arguments:

  • <RefFilePath> (required) — Path to the ref file

Options:

  • -s, --system

shelly flatpak install-bundle

Installs flatpak app from bundle file

Arguments:

  • <BundlePath> (required) — Path to the .flatpak bundle file

Options:

  • -s, --system

shelly flatpak app-remote-info

Get app remote info

Arguments:

  • <remote> (required)
  • <id> (required)
  • <branch> (required)

Options:

  • -j, --json

shelly config

Manage shelly configuration

Branch command — use one of the subcommands below.

Subcommands:

  • shelly config get — Get a configuration value
  • shelly config set — Set a configuration value
  • shelly config list — List all configuration values
  • shelly config reset — Reset configuration to defaults

shelly config get

Get a configuration value

Arguments:

  • <KEY> (required) — The configuration key to get

Examples:

Terminal window
shelly config get DarkMode

shelly config set

Set a configuration value

Arguments:

  • <KEY> (required) — The configuration key to set
  • <VALUE> (required) — The value to set

Examples:

Terminal window
shelly config set DarkMode true

shelly config list

List all configuration values

Examples:

Terminal window
shelly config list

shelly config reset

Reset configuration to defaults

Examples:

Terminal window
shelly config reset

shelly utility

shelly utils

Branch command — use one of the subcommands below.

Subcommands:

  • shelly utility export — export sync file
  • shelly utility updates — checks for updates as non-root user
  • shelly utility cache-clean — Cleans the cache of all downloaded packages

shelly utility export

export sync file

Options:

  • -n, --name — Set name of the exported sync
  • -o, --output — Output location for the exported sync (defaut: .cache/Shelly/sync.json)

Examples:

Terminal window
shelly utility export utility export -o ~/Downloads/

shelly utility updates

checks for updates as non-root user

Options:

  • -a, --aur — Pass this setting if aur should be checked.
  • -c, --count — Returns the number of updates.
  • -l, --flatpak — Pass this setting if flatpak should be checked.
  • -f, --force — Force the operation even if it would normally be skipped or blocked
  • -j, --json — Output results in JSON format for UI integration and scripting
  • --singlepane — Use pacman-style single-stream output instead of the split-pane Live layout
  • -y, --sync — Synchronize package databases before performing the operation

Examples:

Terminal window
shelly utility updates
shelly utility updates -a
shelly utility updates --aur
shelly utility updates -l
shelly utility updates --flatpak

shelly utility cache-clean

Cleans the cache of all downloaded packages

Options:

  • -c, --cache-dir — Path to the cache directory
  • -d, --dry-run — Show what would be removed
  • -k, --keep — Number of versions to keep
  • --no-confirm — Skips confirmation checks if true
  • -r, --remove — Removes all candidate entries
  • -t, --target — Removes all cached entries related to the selected package
  • -u, --uninstalled — target uninstalled packages

Examples:

Terminal window
shelly utility cache-clean
shelly utility cache-clean --dry-run
shelly utility cache-clean -r
shelly utility cache-clean -r -k 2
shelly utility cache-clean -r --uninstalled
shelly utility cache-clean -r -c /var/cache/pacman/pkg
shelly utility cache-clean -t vivaldi

shelly config

Configuration setup for shelly

Branch command — use one of the subcommands below.

Subcommands:

  • shelly config parallel — Sets parallel download count

shelly config parallel

Sets parallel download count

Arguments:

  • <downloadCount> (required)

Examples:

Terminal window
shelly parallel 10

shelly appimage

Branch command — use one of the subcommands below.

Subcommands:

  • shelly appimage list — list for installed
  • shelly appimage install — Install an appimage file
  • shelly appimage remove — Remove an appimage file
  • shelly appimage list-updates — Find updates for appimages
  • shelly appimage upgrade — Update an appimage file
  • shelly appimage configure-updates — Configure update settings for an AppImage
  • shelly appimage sync-meta — Syncs meta data for an AppImage

shelly appimage list

list for installed

Arguments:

  • <QUERY> — The search query for the AppImage

Options:

  • -j, --json — Json output

Examples:

Terminal window
shelly appimage search firefox

shelly appimage install

Install an appimage file

Options:

  • -l, --location — Location of the .AppImage to be installed
  • -n, --no-confirm — Proceed without asking for user confirmation
  • -t, --type — Set the update type (None, StaticUrl, GitHub, GitLab, Codeberg, Forgejo)
  • -u, --update-url — Set the release URL for update checking (e.g., https://github.com/owner/repo/releases)

Examples:

Terminal window
shelly install-local --location /path/to/package.pkg.tar.zst install-local -l /path/to/package.pkg.tar.zst

shelly appimage remove

Remove an appimage file

Arguments:

  • <Name> (required) — Name of the AppImage to be removed

Options:

  • -n, --no-confirm — Proceed without asking for user confirmation

Examples:

Terminal window
shelly remove-appimage --name firefox remove-appimage -n firefox

shelly appimage list-updates

Find updates for appimages

Options:

  • -j, --json — Json output

shelly appimage upgrade

Update an appimage file

Arguments:

  • <Name> — Name of the AppImage to update. If omitted, all available updates will be processed.

Options:

  • -n, --no-confirm — Proceed without asking for user confirmation

Examples:

Terminal window
shelly appimage update firefox
shelly appimage update --no-confirm

shelly appimage configure-updates

Configure update settings for an AppImage

Arguments:

  • <Name> (required) — Name of the AppImage to configure

Options:

  • -t, --type — Set the update type (None, StaticUrl, GitHub, GitLab, Codeberg, Forgejo)
  • -u, --update-url — Set the update URL (e.g., https://github.com/owner/repo)

Examples:

Terminal window
shelly appimage configure-updates firefox --update-url https://github.com/mozilla/firefox-appimage --type GitHub

shelly appimage sync-meta

Syncs meta data for an AppImage

Arguments:

  • <QUERY> — The search query for the AppImage

Options:

  • -j, --json — Json output
  • -n, --no-confirm — Proceed without asking for user confirmation

Examples:

Terminal window
shelly appimage sync-meta firefox
© 2026 Seafoam Labs Shelly Chel