Configuration
Global gtl settings are stored in $XDG_CONFIG_HOME/gtl/config.json when XDG_CONFIG_HOME is set. Otherwise, they are stored in ~/.config/gtl/config.json.
Use gtl config list to print the full global config file.
gtl config list
gtl config get default-clone-path
gtl config set default-clone-path /Users/name/projects
gtl config get repo-search-paths
gtl config set repo-search-paths '/Users/name/work:/Users/name/personal'Stored Values
config.json stores durable settings such as:
clone_destination, set withgtl config set default-clone-path <path>repo_search_paths, set withgtl config set repo-search-paths <path-list>repo_paths, saved bygtl find <repo> --set-pathrepo_index, refreshed bygtl clone, saved repo paths, plain-namegtl find <search>searches, and repository scans; checked before walking the filesystemidentity_profiles, used bygtl identity
repo_search_paths is an optional OS path-list used when gtl find, gtl path, gtl repos, or URL-only gtl link need to discover local clones by remote. When it is unset, gtl checks conventional folders such as ~/Documents/GitHub, ~/LOCAL/Github, ~/repos, ~/Projects, and ~/code.
The older clone-destination key is still accepted as an alias for default-clone-path; repo-search-path is accepted as an alias for repo-search-paths. Older identity.json files are read as a migration fallback when config.json does not contain identity profiles; new identity saves write to config.json.
Repository-Local Files
Repository-local generated files are stored under .gtl/ inside the current repository. Examples include:
.gtl/repo-list.json.gtl/pull-requests/.gtl/issues/.gtl/env/AGENT_PRECHECK.md
Commands that write local runtime files add .gtl/ and identity files such as .envrc to .git/info/exclude, keeping them out of commits while allowing local tooling to read them.
Linked Repositories
Repository links are stored in the current folder's gittle.toml using repository URLs as keys:
[link]
"https://github.com/owner/repository" = ""
"https://gitlab.com/group/repository" = ""Running gtl link <repository-url> resolves or clones the repository, creates .gtl/<repository>, and adds the empty-value entry when it is missing. Running gtl link without an argument reloads the configured links. An explicit path value binds a repository URL to a specific local folder:
[link]
"https://github.com/owner/repository" = "../repository"Running gtl link <local-folder> creates only the local .gtl mirror and never adds an entry to gittle.toml.