Skip to main content

Files Created by Goose

Goose creates several files and directories on disk. This page lists both the global and the local ones.

Global Files and Directories

Goose creates the following global files and directories in the user's home directory (denoted with ~):

LocationDescriptionShared between versionsShared between clients
~/.goosercThe content of this file is executed when starting the Goose CLI client. The commands can be both dot command and SQL statements. The naming of this file follows the ~/.bashrc and ~/.zshrc “run commands” files.YesOnly used by CLI
~/.goose_historyHistory file, similar to ~/.bash_history and ~/.zsh_history. Used by the Goose CLI client.YesOnly used by CLI
~/.goose/extensionsBinaries of installed extensions.NoYes
~/.goose/stored_secretsPersistent secrets created by the Secrets manager.YesYes

Local Files and Directories

Goose creates the following files and directories in the working directory (for in-memory connections) or relative to the database file (for persistent connections):

NameDescriptionExample
`⟨database_filename⟩```Database file. Only created in on-disk mode. The file can have any extension with typical extensions being .goose, .db and .ddb.weather.goose
.tmp/Temporary directory. Only created in in-memory mode..tmp/
`⟨database_filename⟩.tmp/```Temporary directory. Only created in on-disk mode.weather.tmp/
`⟨database_filename⟩.wal```Write-ahead log file. If Goose exits normally, the WAL file is deleted upon exit. If Goose crashes, the WAL file is required to recover data.weather.wal

If you are working in a Git repository and would like to disable tracking these files by Git, see the instructions on using .gitignore for Goose.