.nh .TH "GT-EXTENSION-INSTALL" "1" "Nov 2026" "gitea-cli" "gitea-cli Manual" .SH NAME gt-extension-install - Install an extension .SH SYNOPSIS \fBgt extension install [flags]\fP .SH DESCRIPTION Install an extension from a repository named gt-NAME or gh-NAME, which then runs as gt NAME. .PP 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. .PP 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. .PP 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. .PP 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. .SH OPTIONS \fB--allow-credentials\fP[=false] Give the extension your Gitea token .PP \fB--compat-gh\fP[=false] Let the extension call gh, which gt answers for gh api, gh repo view with gt's JSON fields and gh auth token .PP \fB--force\fP[=false] Reinstall an extension that is already installed .PP \fB-h\fP, \fB--help\fP[=false] help for install .PP \fB--pin\fP="" Install the release \fBtag\fR or the commit and never upgrade it .SH OPTIONS INHERITED FROM PARENT COMMANDS \fB--cwd\fP="" Working \fBdirectory\fR for repository discovery .PP \fB--debug\fP[=false] Log the method, URL, status, and duration of each HTTP request to stderr .PP \fB--host\fP="" Gitea instance \fBURL\fR, including any base path .PP \fB--interactive\fP[=false] Allow prompts with machine output .PP \fB--no-input\fP[=false] Disable prompts and implicit editor/browser interactions .PP \fB--sudo\fP="" Perform API requests as this \fBuser\fR (requires an administrator account) .PP \fB--user\fP="" Account \fBname\fR on the selected instance .PP \fB-y\fP, \fB--yes\fP[=false] Accept confirmations without prompting .SH EXAMPLE .EX $ 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 . .EE .SH SEE ALSO \fBgt-extension(1)\fP