Issue Search
Since v11, Issue search on Forgejo replaced its previously dropdown-defined behavior of searches with a query syntax defined by operators.
Query Syntax
Keywords
- Terms
Performs a fuzzy match search of each term in the query.
For example,
foowill return results that containfoo, or any of its derivatives (such asfororfood)foo barwill return results that containfooand/orbaror any of their derivatives
- Phrase
Performs an exact match for the provided phrase. This is done by wrapping the phrase in double quotes.
For example,
"foo"will return results that contain an exact match offoo"foo bar"will return results that contain an exact match offoo bar
Operators
- Negation
Negates the keyword by returning results that do not contain the keyword. This is done by prefixing the keyword with a minus symbol.
For example,
-foowill return results that do not containfooor its derivatives-"foo bar"will return results that do not containfoo bar
- Required
Denotes that the provided keyword MUST be present. This is done by prefixing the keyword with a plus symbol.
For example,
+foo +barwill return results that contain bothfooandbar(or its fuzzy derivatives)+"foo" +"bar"will return results that contain exactly bothfooandbar+"foo bar" +"baz"will return results that contain exactly bothfoo barandbaz
Escaping
All operators may be escaped by adding a backslash in front of the operators.
For example,
"\"\""will search for""\+1will search for+1
Filters
Filters listed below may be escaped by using a phrase search. For example, "is:open".
State
These filters are mutually exclusive. If multiple state filters are used, then the rightmost filter takes precedence.
| Filter | Description |
|---|---|
is:open or -is:closed | Filters issues/pull requests that are open |
is:closed or -is:open | Filters issues/pull requests that are closed |
is:all | Filters issues/pull requests that are either open or closed |
Examples,
is:open +"bug": Searches forbugamong open issues/PRs.is:all -"backport": Search for all issues/PRs that do not contain the term “backport”."is:all": Literal search foris:all. Matches Issues/PRs that contain the termis:all.
User
These filter issues/pull requests by a username.
| Filter | Description |
|---|---|
author:* | Authored By |
assignee:* | Assigned To |
review:* | Reviewed By |
mentions:* | Mentions the user |
Examples,
author:forgejo is:all: All issues/PRs created by userforgejo.
Label
These filter issues/pull requests by label name.
| Filter | Description |
|---|---|
label:* | Has the given label |
+label:* | Must have the given label (required) |
-label:* | Does not have the given label |
no:label | Has no labels |
Like ordinary terms, multiple label: filters match either label (OR). Use +label: for each label that must be present (AND), the same way +foo +bar requires both terms.
Label matching ignores case and spaces, and also the / scope separator of a label name (which is only shown as a visual separator in the UI). So label:goodfirstissue matches a Good First Issue label, and label:testpresent matches a scoped test/present label. A / that you type yourself is kept literal, so label:test/present matches only the scoped label. To match a name exactly (case, spaces and all), wrap it in quotes, for example label:"good first issue".
Examples,
label:bug: Issues/PRs tagged withbug.label:goodfirstissue: Issues/PRs tagged withGood First Issue(case and spaces are ignored).label:bug label:critical: Issues/PRs tagged withbugorcritical.+label:bug +label:critical: Issues/PRs tagged with bothbugandcritical.-label:wontfix is:open: Open issues/PRs not taggedwontfix.no:label: Issues/PRs that have no labels at all.
Misc.
| Filter | Description |
|---|---|
sort:<by>:[asc/desc] | Sorts issues/PRs. Where, <by> is one of created, comments, updated, deadline |
modified:[>/<]<date> | Last updated date in ISO format |
Examples,
sort:created:desc is:all: Sort by the latest issues/PRs.sort:comments:desc: Sort by the most commented issues.modified:>2025-12-05: Searches for issues/PRs modified after2025-12-05.modified:2025-12-05: Searches for issues/PRs modified exactly on2025-12-05.modified:<2025-12-05: Searches for issues/PRs modified before2025-12-05.