---
name: "glab-config-path"
section: "1"
platform: "linux"
package: "glab"
version: "1.126.0-1"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/glab-config-path"
---

# glab-config-path(1)

Print the location of the global configuration file.

## NAME

glab-config-path - Print the location of the global configuration file.

## SYNOPSIS

**glab config path \[flags\]**

## DESCRIPTION

Print where **glab** reads and writes its global configuration. The location depends on the platform and whether a legacy configuration directory exists, so use this command instead of hard-coding a path.

The command prints the path even if the file does not exist yet, so it is safe to run before the first **glab auth login**.

Use **--dir** to print the parent directory. Grant write access to that directory rather than to **config.yml** alone, because **glab** writes a temporary file in that directory first and then replaces **config.yml** with it.

Repository-local settings live in the repository's **.git/glab-cli/config.yml** and this command does not report them.

If no user configuration file exists, **glab** falls back to a read-only system-wide one. This command always reports the user location.

Your own configuration file must not be readable by anyone else, so it needs mode **600**. A system-wide one, in a directory listed in **XDG\_CONFIG\_DIRS**, is read whatever its read permissions, but is refused if it is writable by group or others.

## OPTIONS

**--dir**\[=false\]\
 	Print the configuration directory instead of the configuration file.

## OPTIONS INHERITED FROM PARENT COMMANDS

**-h**, **--help**\[=false\]\
 	Show help for this command.

## EXAMPLE

```
# Print the path to the global configuration file
glab config path
# Print the directory that holds the configuration file
glab config path --dir
# Open the configuration file in an editor
$EDITOR "$(glab config path)"
```

## SEE ALSO

**[glab-config(1)](/glab-config/1.md)**
