GH-EXTENSION-SEARCH(1) GitHub CLI manual GH-EXTENSION-SEARCH(1)

# [NAME](#NAME)

gh-extension-search - Search extensions to the GitHub CLI

# [SYNOPSIS](#SYNOPSIS)

**gh extension search \[&lt;query&gt;] \[flags]**

# [DESCRIPTION](#DESCRIPTION)

Search for gh extensions.

With no arguments, this command prints out the first 30 extensions available to install sorted by number of stars. More extensions can be fetched by specifying a higher limit with the **--limit** flag.

When connected to a terminal, this command prints out three columns. The first has a ✓ if the extension is already installed locally. The second is the full name of the extension repository in **OWNER/REPO** format. The third is the extension's description.

When not connected to a terminal, the ✓ character is rendered as the word "installed" but otherwise the order and content of the columns are the same.

This command behaves similarly to **gh search repos** but does not support as many search qualifiers. For a finer grained search of extensions, try using:

```
gh search repos --topic "gh-extension"
```

and adding qualifiers as needed. See **gh help search repos** to learn more about repository search.

For listing just the extensions that are already installed locally, see:

```
gh ext list
```

# [OPTIONS](#OPTIONS)

[**-q**, **--jq** **&lt;expression&gt;**](#q)

Filter JSON output using a jq expression

[**--json** **&lt;fields&gt;**](#json)

Output JSON with the specified fields

[**--license** **&lt;strings&gt;**](#license)

Filter based on license type

[**-L**, **--limit** **&lt;int&gt; (default 30)**](#L)

Maximum number of extensions to fetch

[**--order** **&lt;string&gt; (default "desc")**](#order)

Order of repositories returned, ignored unless '--sort' flag is specified: {asc|desc}

[**--owner** **&lt;strings&gt;**](#owner)

Filter on owner

[**--sort** **&lt;string&gt; (default "best-match")**](#sort)

Sort fetched repositories: {forks|help-wanted-issues|stars|updated}

[**-t**, **--template** **&lt;string&gt;**](#t)

Format JSON output using a Go template; see "gh help formatting"

[**-w**, **--web**](#w)

Open the search query in the web browser

# [JSON FIELDS](#JSON_FIELDS)

**createdAt**, **defaultBranch**, **description**, **forksCount**, **fullName**, **hasDownloads**, **hasIssues**, **hasPages**, **hasProjects**, **hasWiki**, **homepage**, **id**, **isArchived**, **isDisabled**, **isFork**, **isPrivate**, **language**, **license**, **name**, **openIssuesCount**, **owner**, **pushedAt**, **size**, **stargazersCount**, **updatedAt**, **url**, **visibility**, **watchersCount**

# [EXIT CODES](#EXIT_CODES)

0: Successful execution

1: Error

2: Command canceled

4: Authentication required

NOTE: Specific commands may have additional exit codes. Refer to the command's help for more information.

# [EXAMPLE](#EXAMPLE)

```
# List the first 30 extensions sorted by star count, descending
$ gh ext search
# List more extensions
$ gh ext search --limit 300
# List extensions matching the term "branch"
$ gh ext search branch
# List extensions owned by organization "github"
$ gh ext search --owner github
# List extensions, sorting by recently updated, ascending
$ gh ext search --sort updated --order asc
# List extensions, filtering by license
$ gh ext search --license MIT
# Open search results in the browser
$ gh ext search -w
```

# [SEE ALSO](#SEE_ALSO)

[**gh-extension(1)**](/man/os/gh/gh-extension.1)

Oct 2026

---

Document: gh-extension-search(1) from gh 2.103.3-r1 (Chainguard OS)
Source: https://github.com/cli/cli
