GT-EXTENSION-INSTALL(1) gitea-cli Manual GT-EXTENSION-INSTALL(1)

gt-extension-install - Install an extension

gt extension install <repository> [flags]

Install an extension from a repository named gt-NAME or gh-NAME, which then runs as gt NAME.

The repository is OWNER/REPO, HOST/OWNER/REPO or a URL on a Gitea instance, or https://github.com/OWNER/gh-NAME for a GitHub CLI extension, which gt reads without any credentials. "." installs the gt-NAME executable of the current directory, which runs in place while you develop it.

gt installs the release asset NAME-OS-ARCH or REPO-OS-ARCH (with .exe on Windows), else one whose name ends in OS-ARCH, of the latest release or of the release that --pin names. Without such an asset, it clones the repository at the release, the --pin commit or the default branch, which must hold an executable gt-NAME at its root.

gt checks a downloaded asset against the SHA-256 GitHub recorded for it, else against the checksums.txt asset of the release. When the release publishes neither, gt asks with a default of no, or installs with --yes. It records the SHA-256 and refuses to run the extension once the executable changes.

Extensions run with your privileges, but without your Gitea token: gt passes it, as GITEA_TOKEN, only to extensions you allow to use it, by answering yes when gt asks or with --allow-credentials. See gt help extensions.

--allow-credentials[=false] Give the extension your Gitea token

--compat-gh[=false] Let the extension call gh, which gt answers for gh api, gh repo view with gt's JSON fields and gh auth token

--force[=false] Reinstall an extension that is already installed

-h, --help[=false] help for install

--pin="" Install the release tag or the commit and never upgrade it

--cwd="" Working directory for repository discovery

--debug[=false] Log the method, URL, status, and duration of each HTTP request to stderr

--host="" Gitea instance URL, including any base path

--interactive[=false] Allow prompts with machine output

--no-input[=false] Disable prompts and implicit editor/browser interactions

--sudo="" Perform API requests as this user (requires an administrator account)

--user="" Account name on the selected instance

-y, --yes[=false] Accept confirmations without prompting

$ gt extension install alice/gt-hello
$ gt extension install https://gitea.com/alice/gt-hello --pin v1.2.0
# A GitHub CLI extension
$ gt extension install https://github.com/owner/gh-hello
# The extension in the current directory
$ gt extension install .

gt-extension(1)

Nov 2026 gitea-cli