id = "nhost" name = "Nhost CLI" homepage = "https://nhost.io" description = "The Nhost CLI is used to set up a local development environment." icon = "theSVG:nhost" executables = ["nhost"] [dotfiles] # Everything the Nhost CLI reads is inside the project: nhost/nhost.toml, # nhost/config.yaml, the overlays, .nhost/project.json. The only file it puts # under the home directory is the one below. paths = [] exclude = [] # cli/clienv/filesystem.go: # func (p PathStructure) AuthFile() string { # return filepath.Join(PathStateHome(), "auth.json") # } # func PathStateHome() string { # if os.Getenv("XDG_STATE_HOME") != "" { # return filepath.Join(os.Getenv("XDG_STATE_HOME"), "nhost") # } # return filepath.Join(os.Getenv("HOME"), ".nhost", "state") # } # https://github.com/nhost/nhost/blob/main/cli/clienv/filesystem.go # (identical in the retired standalone repo, github.com/nhost/cli). # XDG_STATE_HOME has no default here — it is consulted only when set — so # ~/.nhost/state/auth.json is the path a consumer will find. # # The file is `credentials.Credentials`, `{"id", "personalAccessToken"}` # (nhostclient/credentials/credentials.go). It sits under a *state* directory, # but it holds a personal access token, not session state: `LoadSession` in # clienv/wf_session.go exchanges that PAT for a fresh session on every run. A # PAT is valid from any machine until revoked, so it is a portable credential. secret = ["~/.nhost/state/auth.json"]