[System]
You are a helpful assistant that answers strictly in JSON. Here's the JSON schema you must adhere to:
<schema>
{"$id":"https://mise.jdx.dev/schema/mise.json","$schema":"http://json-schema.org/2019-09/schema#","title":"mise","type":"object","$defs":{"env":{"additionalProperties":{"oneOf":[{"type":"object","properties":{"value":{"oneOf":[{"type":"string"},{"type":"number"},{"type":"boolean"}]},"tools":{"type":"boolean","description":"load tools before resolving"},"redact":{"type":"boolean","description":"redact the value from logs"}}},{"type":"string"},{"type":"number"},{"type":"boolean"}]},"description":"environment variables","properties":{"_":{"description":"environment modules","additionalProperties":true,"properties":{"file":{"oneOf":[{"type":"object","properties":{"path":{"oneOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}]},"tools":{"type":"boolean","description":"load tools before resolving"},"redact":{"type":"boolean","description":"redact the value from logs"}}},{"description":"dotenv file to load","type":"string"},{"description":"dotenv files to load","items":{"description":"dotenv file to load","type":"string"},"type":"array"}]},"path":{"oneOf":[{"type":"object","properties":{"path":{"oneOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}]}}},{"description":"PATH entry to add","type":"string"},{"description":"PATH entries to add","items":{"description":"PATH entry to add","type":"string"},"type":"array"}]},"python":{"description":"python environment","properties":{"venv":{"oneOf":[{"description":"path to python virtual environment to use","type":"string"},{"description":"virtualenv options","properties":{"create":{"default":false,"description":"create a new virtual environment if one does not exist","type":"boolean"},"path":{"description":"path to python virtual environment to use","type":"string"},"python":{"description":"python version to use","type":"string"},"python_create_args":{"description":"additional arguments to pass to python when creating a virtual environment","type":"array","items":{"type":"string"}},"uv_create_args":{"description":"additional arguments to pass to uv when creating a virtual environment","type":"array","items":{"type":"string"}}},"required":["path"],"type":"object"}]}},"type":"object"},"source":{"oneOf":[{"type":"object","properties":{"path":{"oneOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}]},"tools":{"type":"boolean","description":"load tools before resolving"},"redact":{"type":"boolean","description":"redact the value from logs"}}},{"description":"bash script to load","type":"string"},{"description":"bash scripts to load","items":{"description":"bash script to load","type":"string"},"type":"array"}]}},"type":"object"}},"type":"object"},"settings":{"properties":{"activate_aggressive":{"description":"Pushes tools' bin-paths to the front of PATH instead of allowing modifications of PATH after activation to take precedence.","type":"boolean"},"all_compile":{"description":"do not use precompiled binaries for any tool","type":"boolean"},"always_keep_download":{"description":"should mise keep downloaded files after installation","type":"boolean"},"always_keep_install":{"description":"should mise keep install files after installation even if the installation fails","type":"boolean"},"aqua":{"additionalProperties":false,"properties":{"baked_registry":{"default":true,"description":"Use baked-in aqua registry (if compiled in).","type":"boolean"},"cosign":{"default":true,"description":"Use cosign to verify aqua tool signatures.","type":"boolean"},"cosign_extra_args":{"description":"Extra arguments to pass to cosign when verifying aqua tool signatures.","type":"array","items":{"type":"string"}},"minisign":{"default":true,"description":"Use minisign to verify aqua tool signatures.","type":"boolean"},"registry_url":{"description":"URL to fetch aqua registry from.","type":"string"},"slsa":{"default":true,"description":"Use SLSA to verify aqua tool signatures.","type":"boolean"}}},"arch":{"description":"Architecture to use for precompiled binaries.","type":"string"},"asdf":{"description":"use asdf as a default plugin backend","type":"boolean","deprecated":true},"asdf_compat":{"description":"set to true to ensure .tool-versions will be compatible with asdf","type":"boolean","deprecated":true},"auto_install":{"default":true,"description":"Automatically install missing tools when running `mise x`, `mise run`, or as part of the 'not found' handler.","type":"boolean"},"auto_install_disable_tools":{"description":"List of tools to skip automatically installing when running `mise x`, `mise run`, or as part of the 'not found' handler.","type":"array","items":{"type":"string"}},"cache_prune_age":{"default":"30d","description":"Delete files in cache that have not been accessed in this duration","type":"string"},"cargo":{"additionalProperties":false,"properties":{"binstall":{"default":true,"description":"Use cargo-binstall instead of cargo install if available","type":"boolean"},"registry_name":{"description":"Name of the cargo registry to use.","type":"string"}}},"cargo_binstall":{"description":"Use cargo-binstall instead of cargo install if available","type":"boolean","deprecated":true},"cd":{"description":"Path to change to after launching mise","type":"string"},"ci":{"default":"false","description":"Set to true if running in a CI environment","type":"boolean"},"color":{"default":true,"description":"Use color in mise terminal output","type":"boolean"},"debug":{"description":"Sets log level to debug","type":"boolean"},"default_config_filename":{"default":"mise.toml","description":"The default config filename read. `mise use` and other commands that create new config files will use this value. This must be an env var.","type":"string"},"default_tool_versions_filename":{"default":".tool-versions","description":"The default .tool-versions filename read. This will not ignore .tool-versions\u2014use override_tool_versions_filename for that. This must be an env var.","type":"string"},"disable_backends":{"default":[],"description":"Backends to disable such as `asdf` or `pipx`","type":"array","items":{"type":"string"}},"disable_default_registry":{"description":"Disable the default mapping of short tool names like `go` -> `vfox:version-fox/vfox-golang`. This parameter disables only for the backends `vfox` and `asdf`.","type":"boolean"},"disable_default_shorthands":{"description":"Disables built-in shorthands to asdf/vfox plugins","type":"boolean","deprecated":true},"disable_hints":{"default":[],"description":"Turns off helpful hints when using different mise features","type":"array","items":{"type":"string"}},"disable_tools":{"default":[],"description":"Tools defined in mise.toml that should be ignored","type":"array","items":{"type":"string"}},"dotnet":{"additionalProperties":false,"properties":{"package_flags":{"default":[],"description":"Extends dotnet search and install abilities.","type":"array","items":{"type":"string"}},"registry_url":{"default":"https://api.nuget.org/v3/index.json","description":"URL to fetch dotnet tools from.","type":"string"}}},"enable_tools":{"default":[],"description":"Tools defined in mise.toml that should be used - all other tools are ignored","type":"array","items":{"type":"string"}},"env":{"default":[],"description":"Env to use for mise.<MISE_ENV>.toml files.","type":"array","items":{"type":"string"}},"env_file":{"description":"Path to a file containing environment variables to automatically load.","type":"string"},"erlang":{"additionalProperties":false,"properties":{"compile":{"description":"If true, compile erlang from source. If false, use precompiled binaries. If not set, use precompiled binaries if available.","type":"boolean"}}},"exec_auto_install":{"default":true,"description":"Automatically install missing tools when running `mise x`.","type":"boolean"},"experimental":{"description":"Enable experimental mise features which are incomplete or unstable\u2014breakings changes may occur","type":"boolean"},"fetch_remote_versions_cache":{"default":"1h","description":"How long to cache remote versions for tools.","type":"string"},"fetch_remote_versions_timeout":{"default":"5s","description":"Timeout in seconds for HTTP requests to fetch new tool versions in mise.","type":"string"},"gix":{"default":true,"description":"Use gix for git operations, set to false to shell out to git.","type":"boolean"},"global_config_file":{"description":"Path to the global mise config file. Default is `~/.config/mise/config.toml`. This must be an env var.","type":"string"},"global_config_root":{"description":"Path which is used as `{{config_root}}` for the global config file. Default is `$HOME`. This must be an env var.","type":"string"},"go_default_packages_file":{"default":"~/.default-go-packages","description":"Path to a file containing default go packages to install when installing go","type":"string"},"go_download_mirror":{"default":"https://dl.google.com/go","description":"Mirror to download go sdk tarballs from.","type":"string"},"go_repo":{"default":"https://github.com/golang/go","description":"URL to fetch go from.","type":"string"},"go_set_gobin":{"description":"Changes where `go install` installs binaries to.","type":"boolean"},"go_set_gopath":{"description":"[deprecated] Set to true to set GOPATH=~/.local/share/mise/installs/go/.../packages.","type":"boolean","deprecated":true},"go_set_goroot":{"default":true,"description":"Sets GOROOT=~/.local/share/mise/installs/go/.../.","type":"boolean"},"go_skip_checksum":{"description":"Set to true to skip checksum verification when downloading go sdk tarballs.","type":"boolean"},"gpg_verify":{"description":"Use gpg to verify all tool signatures.","type":"boolean"},"http_timeout":{"default":"30s","description":"Timeout in seconds for all HTTP requests in mise.","type":"string"},"idiomatic_version_file":{"default":true,"description":"Set to false to disable the idiomatic version files such as .node-version, .ruby-version, etc.","type":"boolean","deprecated":true},"idiomatic_version_file_disable_tools":{"default":[],"description":"Specific tools to disable idiomatic version files for.","type":"array","deprecated":true,"items":{"type":"string"}},"idiomatic_version_file_enable_tools":{"description":"Specific tools to enable idiomatic version files for like .node-version, .ruby-version, etc.","type":"array","items":{"type":"string"}},"ignored_config_paths":{"default":[],"description":"This is a list of config paths that mise will ignore.","type":"array","items":{"type":"string"}},"jobs":{"default":8,"description":"How many jobs to run concurrently such as tool installs.","type":"number"},"legacy_version_file":{"default":true,"description":"Set to false to disable the idiomatic version files such as .node-version, .ruby-version, etc.","type":"boolean","deprecated":true},"legacy_version_file_disable_tools":{"default":[],"description":"Specific tools to disable idiomatic version files for.","type":"array","deprecated":true,"items":{"type":"string"}},"libgit2":{"default":true,"description":"Use libgit2 for git operations, set to false to shell out to git.","type":"boolean"},"lockfile":{"default":true,"description":"Create and read lockfiles for tool versions.","type":"boolean"},"log_level":{"default":"info","description":"Show more/less output.","type":"string","enum":["trace","debug","info","warn","error"]},"node":{"additionalProperties":false,"properties":{"compile":{"description":"Compile node from source.","type":"boolean"},"flavor":{"description":"Install a specific node flavor like glibc-217 or musl. Use with unofficial node build repo.","type":"string"},"gpg_verify":{"description":"Use gpg to verify node tool signatures.","type":"boolean"},"mirror_url":{"description":"Mirror to download node tarballs from.","type":"string"}}},"not_found_auto_install":{"default":true,"description":"Set to false to disable the \"command not found\" handler to autoinstall missing tool versions.","type":"boolean"},"npm":{"additionalProperties":false,"properties":{"bun":{"description":"Use bun instead of npm if bun is installed and on PATH.","type":"boolean"}}},"os":{"description":"OS to use for precompiled binaries.","type":"string"},"override_config_filenames":{"default":[],"description":"If set, mise will ignore default config files like `mise.toml` and use these filenames instead. This must be an env var.","type":"array","items":{"type":"string"}},"override_tool_versions_filenames":{"default":[],"description":"If set, mise will ignore .tool-versions files and use these filenames instead. Can be set to `none` to disable .tool-versions. This must be an env var.","type":"array","items":{"type":"string"}},"paranoid":{"description":"Enables extra-secure behavior.","type":"boolean"},"pin":{"description":"Default to pinning versions when running `mise use` in mise.toml files.","type":"boolean"},"pipx":{"additionalProperties":false,"properties":{"registry_url":{"default":"https://pypi.org/pypi/{}/json","description":"URL to use for pipx registry.","type":"string"},"uvx":{"description":"Use uvx instead of pipx if uv is installed and on PATH.","type":"boolean"}}},"pipx_uvx":{"description":"Use uvx instead of pipx if uv is installed and on PATH.","type":"boolean"},"plugin_autoupdate_last_check_duration":{"default":"7d","description":"How long to wait before updating plugins automatically (note this isn't currently implemented).","type":"string"},"profile":{"description":"Profile to use for mise.${MISE_PROFILE}.toml files.","type":"string","deprecated":true},"python":{"additionalProperties":false,"properties":{"compile":{"description":"If true, compile python from source. If false, use precompiled binaries. If not set, use precompiled binaries if available.","type":"boolean"},"default_packages_file":{"description":"Path to a file containing default python packages to install when installing a python version.","type":"string"},"patch_url":{"description":"URL to fetch python patches from to pass to python-build.","type":"string"},"patches_directory":{"description":"Directory to fetch python patches from.","type":"string"},"precompiled_arch":{"description":"Specify the architecture to use for precompiled binaries.","type":"string"},"precompiled_flavor":{"description":"Specify the flavor to use for precompiled binaries.","type":"string"},"precompiled_os":{"description":"Specify the OS to use for precompiled binaries.","type":"string"},"pyenv_repo":{"default":"https://github.com/pyenv/pyenv.git","description":"URL to fetch pyenv from for compiling python with python-build.","type":"string"},"uv_venv_auto":{"description":"Integrate with uv to automatically create/source venvs if uv.lock is present.","type":"boolean"},"uv_venv_create_args":{"description":"Arguments to pass to uv when creating a venv.","type":"array","items":{"type":"string"}},"venv_auto_create":{"description":"Automatically create virtualenvs for python tools.","type":"boolean","deprecated":true},"venv_create_args":{"description":"Arguments to pass to python when creating a venv. (not used for uv venv creation)","type":"array","items":{"type":"string"}},"venv_stdlib":{"description":"Prefer to use venv from Python's standard library.","type":"boolean"}}},"python_compile":{"description":"If true, compile python from source. If false, use precompiled binaries. If not set, use precompiled binaries if available.","type":"boolean","deprecated":true},"python_default_packages_file":{"description":"Path to a file containing default python packages to install when installing python.","type":"string","deprecated":true},"python_patch_url":{"description":"URL to fetch python patches from.","type":"string","deprecated":true},"python_patches_directory":{"description":"Directory to fetch python patches from.","type":"string","deprecated":true},"python_precompiled_arch":{"description":"Specify the architecture to use for precompiled binaries.","type":"string","deprecated":true},"python_precompiled_os":{"description":"Specify the OS to use for precompiled binaries.","type":"string","deprecated":true},"python_pyenv_repo":{"description":"URL to fetch pyenv from for compiling python.","type":"string","deprecated":true},"python_venv_auto_create":{"description":"Automatically create virtualenvs for python tools.","type":"boolean","deprecated":true},"python_venv_stdlib":{"description":"Prefer to use venv from Python's standard library.","type":"boolean","deprecated":true},"quiet":{"description":"Suppress all output except errors.","type":"boolean"},"raw":{"description":"Connect stdin/stdout/stderr to child processes.","type":"boolean"},"ruby":{"additionalProperties":false,"properties":{"apply_patches":{"description":"A list of patch files or URLs to apply to ruby source.","type":"string"},"default_packages_file":{"default":"~/.default-gems","description":"Path to a file containing default ruby gems to install when installing ruby.","type":"string"},"ruby_build_opts":{"description":"Options to pass to ruby-build.","type":"string"},"ruby_build_repo":{"default":"https://github.com/rbenv/ruby-build.git","description":"URL to fetch ruby-build from.","type":"string"},"ruby_install":{"description":"Use ruby-install instead of ruby-build.","type":"boolean"},"ruby_install_opts":{"description":"Options to pass to ruby-install.","type":"string"},"ruby_install_repo":{"default":"https://github.com/postmodern/ruby-install.git","description":"URL to fetch ruby-install from.","type":"string"},"verbose_install":{"description":"Set to true to enable verbose output during ruby installation.","type":"boolean"}}},"rust":{"additionalProperties":false,"properties":{"cargo_home":{"description":"Path to the cargo home directory. Defaults to `~/.cargo` or `%USERPROFILE%\\.cargo`","type":"string"},"rustup_home":{"description":"Path to the rustup home directory. Defaults to `~/.rustup` or `%USERPROFILE%\\.rustup`","type":"string"}}},"shorthands_file":{"description":"Path to a file containing custom tool shorthands.","type":"string"},"silent":{"description":"Suppress all `mise run|watch` output except errors\u2014including what tasks output.","type":"boolean"},"sops":{"additionalProperties":false,"properties":{"age_key":{"description":"The age private key to use for sops secret decryption.","type":"string"},"age_key_file":{"description":"Path to the age private key file to use for sops secret decryption.","type":"string"},"age_recipients":{"description":"The age public keys to use for sops secret encryption.","type":"string"},"rops":{"default":true,"description":"Use rops to decrypt sops files. Disable to shell out to `sops` which will slow down mise but sops may offer features not available in rops.","type":"boolean"}}},"status":{"additionalProperties":false,"properties":{"missing_tools":{"default":"if_other_versions_installed","description":"Show a warning if tools are not installed when entering a directory with a mise.toml file.","type":"string"},"show_env":{"description":"Show configured env vars when entering a directory with a mise.toml file.","type":"boolean"},"show_tools":{"description":"Show configured tools when entering a directory with a mise.toml file.","type":"boolean"},"truncate":{"default":true,"description":"Truncate status messages.","type":"boolean"}}},"swift":{"additionalProperties":false,"properties":{"gpg_verify":{"description":"Use gpg to verify swift tool signatures.","type":"boolean"},"platform":{"description":"Override the platform to use for precompiled binaries.","type":"string"}}},"system_config_file":{"description":"Path to the system mise config file. Default is `/etc/mise/config.toml`. This must be an env var.","type":"string"},"task_disable_paths":{"default":[],"description":"Paths that mise will not look for tasks in.","type":"array","items":{"type":"string"}},"task_output":{"description":"Change output style when executing tasks.","type":"string","enum":["prefix","interleave","keep-order","replacing","timed","quiet","silent"]},"task_remote_no_cache":{"description":"Mise will always fetch the latest tasks from the remote, by default the cache is used.","type":"boolean"},"task_run_auto_install":{"default":true,"description":"Automatically install missing tools when executing tasks.","type":"boolean"},"task_skip":{"default":[],"description":"Tasks to skip when running `mise run`.","type":"array","items":{"type":"string"}},"task_timings":{"description":"Show completion message with elapsed time for each task on `mise run`. Default shows when output type is `prefix`.","type":"boolean"},"trace":{"description":"Sets log level to trace","type":"boolean"},"trusted_config_paths":{"default":[],"description":"This is a list of config paths that mise will automatically mark as trusted.","type":"array","items":{"type":"string"}},"unix_default_file_shell_args":{"default":"sh","description":"List of default shell arguments for unix to be used with `file`. For example `sh`.","type":"string"},"unix_default_inline_shell_args":{"default":"sh -c -o errexit","description":"List of default shell arguments for unix to be used with inline commands. For example, `sh`, `-c` for sh.","type":"string"},"use_file_shell_for_executable_tasks":{"default":false,"description":"Determines whether to use a specified shell for executing tasks in the tasks directory. When set to true, the shell defined in the file will be used, or the default shell specified by `windows_default_file_shell_args` or `unix_default_file_shell_args` will be applied. If set to false, tasks will be executed directly as programs.","type":"boolean"},"use_versions_host":{"default":true,"description":"Set to false to disable using the mise-versions API as a quick way for mise to query for new versions.","type":"boolean"},"verbose":{"description":"Shows more verbose output such as installation logs when installing tools.","type":"boolean"},"vfox":{"description":"Use vfox as a default plugin backend instead of asdf.","type":"boolean","deprecated":true},"windows_default_file_shell_args":{"default":"cmd /c","description":"List of default shell arguments for Windows to be used for file commands. For example, `cmd`, `/c` for cmd.exe.","type":"array","items":{"type":"string"}},"windows_default_inline_shell_args":{"default":"cmd /c","description":"List of default shell arguments for Windows to be used for inline commands. For example, `cmd`, `/c` for cmd.exe.","type":"string"},"windows_executable_extensions":{"default":["exe","bat","cmd","com","ps1","vbs"],"description":"List of executable extensions for Windows. For example, `exe` for .exe files, `bat` for .bat files, and so on.","type":"array","items":{"type":"string"}},"windows_shim_mode":{"default":"file","description":"Shim file mode for Windows. Options: `file`, `hardlink`, `symlink`.","type":"string"},"yes":{"description":"This will automatically answer yes or no to prompts. This is useful for scripting.","type":"boolean"}}},"task":{"oneOf":[{"description":"script to run","type":"string"},{"description":"script to run","items":{"description":"script to run","type":"string"},"type":"array"},{"additionalProperties":false,"properties":{"alias":{"oneOf":[{"description":"alias for this task","type":"string"},{"description":"alias for this task","items":{"description":"alias for this task","type":"string"},"type":"array"}]},"confirm":{"description":"confirmation message before running this task","type":"string"},"depends":{"oneOf":[{"description":"task with args to run before this task","type":"string"},{"description":"task with args to run before this task","items":{"description":"task name and args","type":"string"},"type":"array"}]},"depends_post":{"oneOf":[{"description":"task with args to run after this task","type":"string"},{"description":"task with args to run after this task","items":{"description":"task name and args","type":"string"},"type":"array"}]},"wait_for":{"oneOf":[{"description":"task with args to wait for completion first","type":"string"},{"description":"task with args to wait for completion first","items":{"description":"task name and args","type":"string"},"type":"array"}]},"description":{"description":"description of task","type":"string"},"dir":{"default":"{{ config_root }}","description":"directory to run script in, default is the project's base directory","type":"string"},"env":{"additionalProperties":{"oneOf":[{"type":"string"},{"type":"number"},{"enum":[false],"type":"boolean"}]},"description":"environment variables","type":"object"},"tools":{"description":"tools to install/activate before running this task","additionalProperties":{"oneOf":[{"description":"version of the tool to install","type":"string"},{"properties":{"version":{"description":"version of the tool to install","type":"string"},"os":{"oneOf":[{"description":"operating system to install on","type":"array"},{"description":"option to pass to tool","type":"string"},{"description":"option to pass to tool","type":"boolean"}]}},"required":["version"],"type":"object","additionalProperties":{"oneOf":[{"type":"string"}]}}]},"type":"object"},"hide":{"default":false,"description":"do not display this task","type":"boolean"},"outputs":{"oneOf":[{"description":"files created by this task","items":{"description":"glob pattern or path to files created by this task","type":"string"},"type":"array"},{"description":"glob pattern or path to files created by this task","type":"string"},{"additionalProperties":false,"properties":{"auto":{"description":"automatically touch an internal tracked file instead of specifying outputs","enum":[true],"type":"boolean"}},"required":["auto"],"type":"object"}]},"quiet":{"default":false,"description":"do not display mise information for this task","type":"boolean"},"silent":{"default":false,"description":"suppress all output for this task","oneOf":[{"type":"boolean"},{"enum":["stdout","stderr"],"type":"string"}]},"raw":{"default":false,"description":"directly connect task to stdin/stdout/stderr","type":"boolean"},"run":{"oneOf":[{"description":"script to run","type":"string"},{"description":"script to run","items":{"description":"script to run","type":"string"},"type":"array"}]},"run_windows":{"oneOf":[{"description":"script to run on windows","type":"string"},{"description":"script to run on windows","items":{"description":"script to run on windows","type":"string"},"type":"array"}]},"file":{"description":"Execute an external script","type":"string"},"sources":{"oneOf":[{"description":"files that this task depends on","items":{"description":"glob pattern or path to files that this task depends on","type":"string"},"type":"array"},{"description":"glob pattern or path to files that this task depends on","type":"string"}]},"shell":{"description":"specify a shell command to run the script with","type":"string"},"usage":{"description":"Specify usage (https://usage.jdx.dev/) specs for the task","type":"string"}},"type":"object"}]},"vars":{"description":"variables to set","type":"object","properties":{"_":{"description":"vars modules","additionalProperties":true,"properties":{"file":{"oneOf":[{"description":"dotenv file to load","type":"string"},{"description":"dotenv files to load","items":{"description":"dotenv file to load","type":"string"},"type":"array"}]},"source":{"oneOf":[{"description":"bash script to load","type":"string"},{"description":"bash scripts to load","items":{"description":"bash script to load","type":"string"},"type":"array"}]}},"type":"object"}},"additionalProperties":{"description":"value of variable","type":"string"}},"task_config":{"description":"configuration for task execution/management","type":"object","additionalProperties":false,"properties":{"dir":{"description":"default directory to run tasks in defined in this file","type":"string"},"includes":{"description":"files/directories to include searching for tasks","items":{"description":"file/directory root to include in task execution","type":"string"},"type":"array"}}},"tool":{"oneOf":[{"description":"version of the tool to install","type":"string"},{"properties":{"version":{"description":"version of the tool to install","type":"string"},"os":{"oneOf":[{"description":"operating system to install on","type":"array"},{"description":"option to pass to tool","type":"string"},{"description":"option to pass to tool","type":"boolean"}]},"install_env":{"additionalProperties":{"oneOf":[{"type":"string"},{"type":"number"},{"type":"boolean"}]},"description":"environment variables during tool installation"},"postinstall":{"description":"command to run after tool installation","type":"string"}},"required":["version"],"type":"object","additionalProperties":{"oneOf":[{"type":"string"}]}}]},"hooks":{"description":"hooks to run","type":"object","additionalProperties":{"oneOf":[{"description":"script to run","type":"string"},{"description":"script to run","items":{"description":"script to run","type":"string"},"type":"array"},{"additionalProperties":false,"properties":{"script":{"description":"script to run","type":"string"},"shell":{"description":"specify the shell to run the script inside of","type":"string"}},"type":"object"},{"description":"scripts to run","items":{"additionalProperties":false,"properties":{"script":{"description":"script to run","type":"string"},"shell":{"description":"specify the shell to run the script inside of","type":"string"}},"type":"object"},"type":"array"}]}},"watch_files":{"description":"files to watch for changes","type":"array","items":{"type":"object","description":"file to watch for changes","additionalProperties":false,"properties":{"run":{"type":"string","description":"script to run when file changes","items":{"type":"string"}},"patterns":{"type":"array","description":"patterns to watch for","items":{"type":"string"}}}}}},"additionalProperties":false,"description":"config file for mise version manager (mise.toml)","properties":{"alias":{"description":"custom shorthands","type":"object","additionalProperties":{"oneOf":[{"description":"where the alias goes","type":"string"},{"description":"tool to set aliases for","type":"object","additionalProperties":{"description":"version alias points to","type":"string"}}]}},"env":{"oneOf":[{"$ref":"#/$defs/env"},{"type":"array","items":{"$ref":"#/$defs/env"}}]},"min_version":{"description":"minimum version of mise required to use this config","pattern":"^\\d+\\.\\d+\\.\\d+$","type":"string"},"redactions":{"description":"env or vars keys to redact from logs","type":"array","items":{"type":"string"}},"plugins":{"additionalProperties":{"description":"url to plugin repository","type":"string"},"description":"plugins to use","type":"object"},"settings":{"$ref":"#/$defs/settings","additionalProperties":false,"description":"mise settings","type":"object"},"task_config":{"$ref":"#/$defs/task_config"},"tasks":{"additionalProperties":{"$ref":"#/$defs/task"},"description":"task runner tasks","type":"object"},"tools":{"additionalProperties":{"oneOf":[{"items":{"$ref":"#/$defs/tool"},"type":"array"},{"$ref":"#/$defs/tool"}]},"description":"dev tools to use","type":"object"},"hooks":{"$ref":"#/$defs/hooks"},"vars":{"$ref":"#/$defs/vars"},"watch_files":{"$ref":"#/$defs/watch_files"},"_":{"additionalProperties":true}}}
</schema>

[User] Provide a JSON object that satisfies the schema "mise". Here are the required top‑level fields: none (all optional). Return only the valid JSON object.

mise

load tools before resolving

redact the value from logs

environment variables

environment modules

load tools before resolving

redact the value from logs

dotenv file to load

dotenv files to load

dotenv file to load

PATH entry to add

PATH entries to add

PATH entry to add

python environment

path to python virtual environment to use

virtualenv options

create a new virtual environment if one does not exist

python version to use

additional arguments to pass to python when creating a virtual environment

additional arguments to pass to uv when creating a virtual environment

load tools before resolving

redact the value from logs

bash script to load

bash scripts to load

bash script to load

Pushes tools' bin-paths to the front of PATH instead of allowing modifications of PATH after activation to take precedence.

do not use precompiled binaries for any tool

should mise keep downloaded files after installation

should mise keep install files after installation even if the installation fails

Use baked-in aqua registry (if compiled in).

Use cosign to verify aqua tool signatures.

Extra arguments to pass to cosign when verifying aqua tool signatures.

Use minisign to verify aqua tool signatures.

URL to fetch aqua registry from.

Use SLSA to verify aqua tool signatures.

Architecture to use for precompiled binaries.

use asdf as a default plugin backend

set to true to ensure .tool-versions will be compatible with asdf

Automatically install missing tools when running `mise x`, `mise run`, or as part of the 'not found' handler.

List of tools to skip automatically installing when running `mise x`, `mise run`, or as part of the 'not found' handler.

Delete files in cache that have not been accessed in this duration

Use cargo-binstall instead of cargo install if available

Name of the cargo registry to use.

Path to change to after launching mise

Set to true if running in a CI environment

Use color in mise terminal output

Sets log level to debug

The default config filename read. `mise use` and other commands that create new config files will use this value. This must be an env var.

The default .tool-versions filename read. This will not ignore .tool-versions—use override_tool_versions_filename for that. This must be an env var.

Backends to disable such as `asdf` or `pipx`

Disable the default mapping of short tool names like `go` -> `vfox:version-fox/vfox-golang`. This parameter disables only for the backends `vfox` and `asdf`.

Disables built-in shorthands to asdf/vfox plugins

Turns off helpful hints when using different mise features

Tools defined in mise.toml that should be ignored

Extends dotnet search and install abilities.

URL to fetch dotnet tools from.

Tools defined in mise.toml that should be used - all other tools are ignored

Env to use for mise.<MISE_ENV>.toml files.

Path to a file containing environment variables to automatically load.

If true, compile erlang from source. If false, use precompiled binaries. If not set, use precompiled binaries if available.

Automatically install missing tools when running `mise x`.

Enable experimental mise features which are incomplete or unstable—breakings changes may occur

How long to cache remote versions for tools.

Timeout in seconds for HTTP requests to fetch new tool versions in mise.

Use gix for git operations, set to false to shell out to git.

Path to the global mise config file. Default is `~/.config/mise/config.toml`. This must be an env var.

Path which is used as `{{config_root}}` for the global config file. Default is `$HOME`. This must be an env var.

Path to a file containing default go packages to install when installing go

Mirror to download go sdk tarballs from.

URL to fetch go from.

Changes where `go install` installs binaries to.

[deprecated] Set to true to set GOPATH=~/.local/share/mise/installs/go/.../packages.

Sets GOROOT=~/.local/share/mise/installs/go/.../.

Set to true to skip checksum verification when downloading go sdk tarballs.

Use gpg to verify all tool signatures.

Timeout in seconds for all HTTP requests in mise.

Set to false to disable the idiomatic version files such as .node-version, .ruby-version, etc.

Specific tools to disable idiomatic version files for.

Specific tools to enable idiomatic version files for like .node-version, .ruby-version, etc.

This is a list of config paths that mise will ignore.

How many jobs to run concurrently such as tool installs.

Use libgit2 for git operations, set to false to shell out to git.

Create and read lockfiles for tool versions.

Show more/less output.

Compile node from source.

Install a specific node flavor like glibc-217 or musl. Use with unofficial node build repo.

Use gpg to verify node tool signatures.

Mirror to download node tarballs from.

Set to false to disable the "command not found" handler to autoinstall missing tool versions.

Use bun instead of npm if bun is installed and on PATH.

OS to use for precompiled binaries.

If set, mise will ignore default config files like `mise.toml` and use these filenames instead. This must be an env var.

If set, mise will ignore .tool-versions files and use these filenames instead. Can be set to `none` to disable .tool-versions. This must be an env var.

Enables extra-secure behavior.

Default to pinning versions when running `mise use` in mise.toml files.

URL to use for pipx registry.

Use uvx instead of pipx if uv is installed and on PATH.

How long to wait before updating plugins automatically (note this isn't currently implemented).

Profile to use for mise.${MISE_PROFILE}.toml files.

If true, compile python from source. If false, use precompiled binaries. If not set, use precompiled binaries if available.

Path to a file containing default python packages to install when installing a python version.

URL to fetch python patches from to pass to python-build.

Directory to fetch python patches from.

Specify the architecture to use for precompiled binaries.

Specify the flavor to use for precompiled binaries.

Specify the OS to use for precompiled binaries.

URL to fetch pyenv from for compiling python with python-build.

Integrate with uv to automatically create/source venvs if uv.lock is present.

Arguments to pass to uv when creating a venv.

Automatically create virtualenvs for python tools.

Arguments to pass to python when creating a venv. (not used for uv venv creation)

Prefer to use venv from Python's standard library.

Path to a file containing default python packages to install when installing python.

URL to fetch python patches from.

Directory to fetch python patches from.

URL to fetch pyenv from for compiling python.

Suppress all output except errors.

Connect stdin/stdout/stderr to child processes.

A list of patch files or URLs to apply to ruby source.

Path to a file containing default ruby gems to install when installing ruby.

Options to pass to ruby-build.

URL to fetch ruby-build from.

Use ruby-install instead of ruby-build.

Options to pass to ruby-install.

URL to fetch ruby-install from.

Set to true to enable verbose output during ruby installation.

Path to the cargo home directory. Defaults to `~/.cargo` or `%USERPROFILE%\.cargo`

Path to the rustup home directory. Defaults to `~/.rustup` or `%USERPROFILE%\.rustup`

Path to a file containing custom tool shorthands.

Suppress all `mise run|watch` output except errors—including what tasks output.

The age private key to use for sops secret decryption.

Path to the age private key file to use for sops secret decryption.

The age public keys to use for sops secret encryption.

Use rops to decrypt sops files. Disable to shell out to `sops` which will slow down mise but sops may offer features not available in rops.

Show a warning if tools are not installed when entering a directory with a mise.toml file.

Show configured env vars when entering a directory with a mise.toml file.

Show configured tools when entering a directory with a mise.toml file.

Truncate status messages.

Use gpg to verify swift tool signatures.

Override the platform to use for precompiled binaries.

Path to the system mise config file. Default is `/etc/mise/config.toml`. This must be an env var.

Paths that mise will not look for tasks in.

Change output style when executing tasks.

prefix interleave keep-order replacing timed quiet silent

Mise will always fetch the latest tasks from the remote, by default the cache is used.

Automatically install missing tools when executing tasks.

Tasks to skip when running `mise run`.

Show completion message with elapsed time for each task on `mise run`. Default shows when output type is `prefix`.

Sets log level to trace

This is a list of config paths that mise will automatically mark as trusted.

List of default shell arguments for unix to be used with `file`. For example `sh`.

List of default shell arguments for unix to be used with inline commands. For example, `sh`, `-c` for sh.

Determines whether to use a specified shell for executing tasks in the tasks directory. When set to true, the shell defined in the file will be used, or the default shell specified by `windows_default_file_shell_args` or `unix_default_file_shell_args` will be applied. If set to false, tasks will be executed directly as programs.

Set to false to disable using the mise-versions API as a quick way for mise to query for new versions.

Shows more verbose output such as installation logs when installing tools.

Use vfox as a default plugin backend instead of asdf.

List of default shell arguments for Windows to be used for file commands. For example, `cmd`, `/c` for cmd.exe.

List of default shell arguments for Windows to be used for inline commands. For example, `cmd`, `/c` for cmd.exe.

List of executable extensions for Windows. For example, `exe` for .exe files, `bat` for .bat files, and so on.

Shim file mode for Windows. Options: `file`, `hardlink`, `symlink`.

This will automatically answer yes or no to prompts. This is useful for scripting.

script to run

script to run

script to run

alias for this task

alias for this task

alias for this task

confirmation message before running this task

task with args to run before this task

task with args to run before this task

task name and args

task with args to run after this task

task with args to run after this task

task name and args

task with args to wait for completion first

task with args to wait for completion first

task name and args

description of task

directory to run script in, default is the project's base directory

environment variables

tools to install/activate before running this task

version of the tool to install

version of the tool to install

operating system to install on

option to pass to tool

option to pass to tool

do not display this task

files created by this task

glob pattern or path to files created by this task

glob pattern or path to files created by this task

automatically touch an internal tracked file instead of specifying outputs

do not display mise information for this task

suppress all output for this task

directly connect task to stdin/stdout/stderr

script to run

script to run

script to run

script to run on windows

script to run on windows

script to run on windows

Execute an external script

files that this task depends on

glob pattern or path to files that this task depends on

glob pattern or path to files that this task depends on

specify a shell command to run the script with

Specify usage (https://usage.jdx.dev/) specs for the task

variables to set

vars modules

dotenv file to load

dotenv files to load

dotenv file to load

bash script to load

bash scripts to load

bash script to load

value of variable

configuration for task execution/management

default directory to run tasks in defined in this file

files/directories to include searching for tasks

file/directory root to include in task execution

version of the tool to install

version of the tool to install

operating system to install on

option to pass to tool

option to pass to tool

environment variables during tool installation

command to run after tool installation

hooks to run

script to run

script to run

script to run

script to run

specify the shell to run the script inside of

scripts to run

script to run

files to watch for changes

file to watch for changes

script to run when file changes

patterns to watch for

config file for mise version manager (mise.toml)

custom shorthands

where the alias goes

tool to set aliases for

version alias points to

minimum version of mise required to use this config

env or vars keys to redact from logs

url to plugin repository

plugins to use

mise settings

task runner tasks

dev tools to use

Provide a JSON object that satisfies the schema "mise". Here are the required top‑level fields: none (all optional). Return only the valid JSON object.


[System]
You are a helpful assistant that answers strictly in JSON. Here's the JSON schema you must adhere to:
<schema>
{"$schema":"http://json-schema.org/draft-07/schema#","$id":"https://json.schemastore.org/mkdocs-1.6.json","definitions":{"validationValues":{"type":"string","enum":["warn","info","ignore"]},"validationAbsoluteLinkValues":{"type":"string","enum":["warn","info","ignore","relative_to_docs"]}},"description":"JSON schema for MkDocs configuration file","title":"MkDocs Configuration","type":"object","properties":{"site_name":{"description":"This is a required setting, and should be a string that is used as the main title for the project documentation.\nhttps://www.mkdocs.org/user-guide/configuration/#site_name","type":"string"},"site_url":{"description":"Set the canonical URL of the site. This will add a link tag with the canonical URL to the head section of each HTML page. If the 'root' of the MkDocs site will be within a subdirectory of a domain, be sure to include that subdirectory in the setting (https://example.com/foo/).\nhttps://www.mkdocs.org/user-guide/configuration/#site_url","type":"string"},"repo_url":{"description":"When set, provides a link to your repository (GitHub, Bitbucket, GitLab, ...) on each page.\nhttps://www.mkdocs.org/user-guide/configuration/#repo_url","type":"string"},"repo_name":{"description":"When set, provides the name for the link to your repository on each page.\nhttps://www.mkdocs.org/user-guide/configuration/#repo_name","type":"string"},"edit_uri":{"description":"The path from the base repo_url to the docs directory when directly viewing a page, accounting for specifics of the repository host (e.g. GitHub, Bitbucket, etc), the branch, and the docs directory itself.\nhttps://www.mkdocs.org/user-guide/configuration/#edit_uri","type":"string"},"edit_uri_template":{"description":"The more flexible variant of edit_uri.\nhttps://www.mkdocs.org/user-guide/configuration/#edit_uri_template","type":"string"},"site_description":{"description":"Set the site description. This will add a meta tag to the generated HTML header.\nhttps://www.mkdocs.org/user-guide/configuration/#site_description","type":"string"},"site_author":{"description":"Set the name of the author. This will add a meta tag to the generated HTML header.\nhttps://www.mkdocs.org/user-guide/configuration/#site_author","type":"string"},"copyright":{"description":"Set the copyright information to be included in the documentation by the theme.\nhttps://www.mkdocs.org/user-guide/configuration/#copyright","type":"string"},"remote_branch":{"default":"gh-pages","description":"Set the remote branch to commit to when using gh-deploy to deploy to GitHub Pages. This option can be overridden by a command line option in gh-deploy.\nhttps://www.mkdocs.org/user-guide/configuration/#remote_branch","type":"string"},"remote_name":{"default":"origin","description":"Set the remote name to push to when using gh-deploy to deploy to GitHub Pages. This option can be overridden by a command line option in gh-deploy.\nhttps://www.mkdocs.org/user-guide/configuration/#remote_name","type":"string"},"nav":{"description":"This setting is used to determine the format and layout of the global navigation for the site.\nhttps://www.mkdocs.org/user-guide/configuration/#nav","type":"array","items":{"anyOf":[{"type":"object"},{"type":"string"}]}},"exclude_docs":{"description":"This config defines patterns of files (under docs_dir) to not be picked up into the built site.\nhttps://www.mkdocs.org/user-guide/configuration/#exclude_docs","type":"string"},"draft_docs":{"description":"This config defines patterns of files (under docs_dir) to be treated as a draft. Draft files are available during mkdocs serve and include a \"DRAFT\" mark but will not be included in the build. To prevent this effect and make \"serve\" behave the same as \"build\", you can run mkdocs serve --clean.\nhttps://www.mkdocs.org/user-guide/configuration/#draft_docs","type":"string"},"not_in_nav":{"description":"If you want to include some docs into the site but intentionally exclude them from the nav, normally MkDocs warns about this.\nhttps://www.mkdocs.org/user-guide/configuration/#not_in_nav","type":"string"},"validation":{"description":"Configure the strictness of MkDocs' diagnostic messages when validating links to documents.\nhttps://www.mkdocs.org/user-guide/configuration/#validation","type":"object","properties":{"nav":{"type":"object","properties":{"omitted_files":{"$ref":"#/definitions/validationValues","default":"info"},"not_found":{"$ref":"#/definitions/validationValues","default":"warn"},"absolute_links":{"$ref":"#/definitions/validationValues","default":"info"}}},"links":{"type":"object","properties":{"not_found":{"$ref":"#/definitions/validationValues","default":"warn"},"anchors":{"$ref":"#/definitions/validationValues","default":"info"},"absolute_links":{"$ref":"#/definitions/validationAbsoluteLinkValues","default":"info"},"unrecognized_links":{"$ref":"#/definitions/validationValues","default":"info"}}},"omitted_files":{"$ref":"#/definitions/validationValues"},"not_found":{"$ref":"#/definitions/validationValues"},"absolute_links":{"$ref":"#/definitions/validationAbsoluteLinkValues"},"anchors":{"$ref":"#/definitions/validationValues"},"unrecognized_links":{"$ref":"#/definitions/validationValues"}}},"theme":{"description":"Sets the theme and theme specific configuration of your documentation site.\nhttps://www.mkdocs.org/user-guide/configuration/#theme","anyOf":[{"type":"object","properties":{"name":{"default":"mkdocs","description":"The string name of a known installed theme, or null if using a local custom theme.","type":["string","null"]},"locale":{"default":"en","description":"A code representing the language of your site.","type":"string"},"custom_dir":{"description":"A directory containing a custom theme. This can either be a relative directory, in which case it is resolved relative to the directory containing your configuration file or it can be an absolute directory path from the root of your local file system.","type":"string"},"static_templates":{"description":"A list of templates to render as static pages. The templates must be located in either the theme's template directory or in the custom_dir defined in the theme configuration.","type":"array"}}},{"default":"mkdocs","type":"string"}]},"docs_dir":{"default":"docs","description":"The directory containing the documentation source markdown files. This can either be a relative directory, in which case it is resolved relative to the directory containing your configuration file, or it can be an absolute directory path from the root of your local file system.\nhttps://www.mkdocs.org/user-guide/configuration/#docs_dir","type":"string"},"site_dir":{"default":"site","description":"The directory where the output HTML and other files are created. This can either be a relative directory, in which case it is resolved relative to the directory containing your configuration file, or it can be an absolute directory path from the root of your local file system.\nhttps://www.mkdocs.org/user-guide/configuration/#site_dir","type":"string"},"extra_css":{"default":[],"description":"Set a list of CSS files (relative to docs_dir) to be included by the theme, typically as <link> tags.\nhttps://www.mkdocs.org/user-guide/configuration/#extra_css","type":"array","items":{"type":"string"}},"extra_javascript":{"default":[],"description":"Set a list of JavaScript files in your docs_dir to be included by the theme, as <script> tags.\nhttps://www.mkdocs.org/user-guide/configuration/#extra_javascript","type":"array","items":{"anyOf":[{"type":"string"},{"type":"object","properties":{"path":{"type":"string"},"type":{"type":"string"},"async":{"type":"boolean"},"defer":{"type":"boolean"}},"required":["path"]}]}},"extra_templates":{"default":[],"description":"Set a list of templates in your docs_dir to be built by MkDocs. To see more about writing templates for MkDocs read the documentation about [custom themes] and specifically the section about the [available variables] to templates. See the example in extra_css for usage.\nhttps://www.mkdocs.org/user-guide/configuration/#extra_templates","type":"array","items":{"type":"string"}},"extra":{"default":{},"description":"A set of key-value pairs, where the values can be any valid YAML construct, that will be passed to the template. This allows for great flexibility when creating custom themes.\nhttps://www.mkdocs.org/user-guide/configuration/#extra","type":"object"},"watch":{"description":"Determines additional directories to watch when running mkdocs serve.\nhttps://www.mkdocs.org/user-guide/configuration/#watch","type":"array","items":{"type":"string"}},"use_directory_urls":{"default":true,"description":"This setting controls the style used for linking to pages within the documentation.\nhttps://www.mkdocs.org/user-guide/configuration/#use_directory_urls","type":"boolean"},"strict":{"default":false,"description":"Determines how warnings are handled. Set to true to halt processing when a warning is raised. Set to false to print a warning and continue processing.\nhttps://www.mkdocs.org/user-guide/configuration/#strict","type":"boolean"},"dev_addr":{"default":"127.0.0.1:8000","description":"Determines the address used when running mkdocs serve. Must be of the format IP:PORT.\nhttps://www.mkdocs.org/user-guide/configuration/#dev_addr","type":"string"},"markdown_extensions":{"default":[],"description":"This setting lets you enable a list of extensions beyond the ones that MkDocs uses by default (meta, toc, tables, and fenced_code).\nhttps://www.mkdocs.org/user-guide/configuration/#markdown_extensions","anyOf":[{"type":"array"},{"type":"object"}]},"hooks":{"description":"A list of paths to Python scripts (relative to mkdocs.yml) that are loaded and used as plugin instances.\nhttps://www.mkdocs.org/user-guide/configuration/#hooks","type":"array"},"plugins":{"default":["search"],"description":"A list of plugins (with optional configuration settings) to use when building the site. See the Plugins documentation for full details.\nhttps://www.mkdocs.org/user-guide/configuration/#plugins","anyOf":[{"type":"array"},{"type":"object"}]},"INHERIT":{"description":"Define the parent for a configuration file. The path must be relative to the location of the primary file.\nhttps://www.mkdocs.org/user-guide/configuration/#configuration-inheritance","type":"string"}},"required":["site_name"]}
</schema>

[User] Provide a JSON object that satisfies the schema "MkDocs Configuration". Here are the required top‑level fields: site_name. Return only the valid JSON object.

JSON schema for MkDocs configuration file

MkDocs Configuration

This is a required setting, and should be a string that is used as the main title for the project documentation.
https://www.mkdocs.org/user-guide/configuration/#site_name

Set the canonical URL of the site. This will add a link tag with the canonical URL to the head section of each HTML page. If the 'root' of the MkDocs site will be within a subdirectory of a domain, be sure to include that subdirectory in the setting (https://example.com/foo/).
https://www.mkdocs.org/user-guide/configuration/#site_url

When set, provides a link to your repository (GitHub, Bitbucket, GitLab, ...) on each page.
https://www.mkdocs.org/user-guide/configuration/#repo_url

When set, provides the name for the link to your repository on each page.
https://www.mkdocs.org/user-guide/configuration/#repo_name

The path from the base repo_url to the docs directory when directly viewing a page, accounting for specifics of the repository host (e.g. GitHub, Bitbucket, etc), the branch, and the docs directory itself.
https://www.mkdocs.org/user-guide/configuration/#edit_uri

The more flexible variant of edit_uri.
https://www.mkdocs.org/user-guide/configuration/#edit_uri_template

Set the site description. This will add a meta tag to the generated HTML header.
https://www.mkdocs.org/user-guide/configuration/#site_description

Set the name of the author. This will add a meta tag to the generated HTML header.
https://www.mkdocs.org/user-guide/configuration/#site_author

Set the copyright information to be included in the documentation by the theme.
https://www.mkdocs.org/user-guide/configuration/#copyright

Set the remote branch to commit to when using gh-deploy to deploy to GitHub Pages. This option can be overridden by a command line option in gh-deploy.
https://www.mkdocs.org/user-guide/configuration/#remote_branch

Set the remote name to push to when using gh-deploy to deploy to GitHub Pages. This option can be overridden by a command line option in gh-deploy.
https://www.mkdocs.org/user-guide/configuration/#remote_name

This setting is used to determine the format and layout of the global navigation for the site.
https://www.mkdocs.org/user-guide/configuration/#nav

This config defines patterns of files (under docs_dir) to not be picked up into the built site.
https://www.mkdocs.org/user-guide/configuration/#exclude_docs

This config defines patterns of files (under docs_dir) to be treated as a draft. Draft files are available during mkdocs serve and include a "DRAFT" mark but will not be included in the build. To prevent this effect and make "serve" behave the same as "build", you can run mkdocs serve --clean.
https://www.mkdocs.org/user-guide/configuration/#draft_docs

If you want to include some docs into the site but intentionally exclude them from the nav, normally MkDocs warns about this.
https://www.mkdocs.org/user-guide/configuration/#not_in_nav

Configure the strictness of MkDocs' diagnostic messages when validating links to documents.
https://www.mkdocs.org/user-guide/configuration/#validation

Sets the theme and theme specific configuration of your documentation site.
https://www.mkdocs.org/user-guide/configuration/#theme

The string name of a known installed theme, or null if using a local custom theme.

A code representing the language of your site.

A directory containing a custom theme. This can either be a relative directory, in which case it is resolved relative to the directory containing your configuration file or it can be an absolute directory path from the root of your local file system.

A list of templates to render as static pages. The templates must be located in either the theme's template directory or in the custom_dir defined in the theme configuration.

The directory containing the documentation source markdown files. This can either be a relative directory, in which case it is resolved relative to the directory containing your configuration file, or it can be an absolute directory path from the root of your local file system.
https://www.mkdocs.org/user-guide/configuration/#docs_dir

The directory where the output HTML and other files are created. This can either be a relative directory, in which case it is resolved relative to the directory containing your configuration file, or it can be an absolute directory path from the root of your local file system.
https://www.mkdocs.org/user-guide/configuration/#site_dir

Set a list of CSS files (relative to docs_dir) to be included by the theme, typically as <link> tags.
https://www.mkdocs.org/user-guide/configuration/#extra_css

Set a list of JavaScript files in your docs_dir to be included by the theme, as <script> tags.
https://www.mkdocs.org/user-guide/configuration/#extra_javascript

Set a list of templates in your docs_dir to be built by MkDocs. To see more about writing templates for MkDocs read the documentation about [custom themes] and specifically the section about the [available variables] to templates. See the example in extra_css for usage.
https://www.mkdocs.org/user-guide/configuration/#extra_templates

A set of key-value pairs, where the values can be any valid YAML construct, that will be passed to the template. This allows for great flexibility when creating custom themes.
https://www.mkdocs.org/user-guide/configuration/#extra

Determines additional directories to watch when running mkdocs serve.
https://www.mkdocs.org/user-guide/configuration/#watch

This setting controls the style used for linking to pages within the documentation.
https://www.mkdocs.org/user-guide/configuration/#use_directory_urls

Determines how warnings are handled. Set to true to halt processing when a warning is raised. Set to false to print a warning and continue processing.
https://www.mkdocs.org/user-guide/configuration/#strict

Determines the address used when running mkdocs serve. Must be of the format IP:PORT.
https://www.mkdocs.org/user-guide/configuration/#dev_addr

This setting lets you enable a list of extensions beyond the ones that MkDocs uses by default (meta, toc, tables, and fenced_code).
https://www.mkdocs.org/user-guide/configuration/#markdown_extensions

A list of paths to Python scripts (relative to mkdocs.yml) that are loaded and used as plugin instances.
https://www.mkdocs.org/user-guide/configuration/#hooks

A list of plugins (with optional configuration settings) to use when building the site. See the Plugins documentation for full details.
https://www.mkdocs.org/user-guide/configuration/#plugins

Define the parent for a configuration file. The path must be relative to the location of the primary file.
https://www.mkdocs.org/user-guide/configuration/#configuration-inheritance

Provide a JSON object that satisfies the schema "MkDocs Configuration". Here are the required top‑level fields: site_name. Return only the valid JSON object.


[System]
You are a helpful assistant that answers strictly in JSON. Here's the JSON schema you must adhere to:
<schema>
{"$schema":"https://json-schema.org/draft/2020-12/schema","$id":"https://raw.githubusercontent.com/microsoft/MLOS/main/mlos_bench/mlos_bench/config/schemas/mlos-bench-config-schema.json","title":"mlos_bench config schema","description":"Any mlos_bench config - this is the top level schema that should be used to validate any mlos_bench config","if":{"$comment":"check if the config has a class or services property","type":"object","properties":{"class":{"type":"string"},"services":{"type":"array"}},"oneOf":[{"required":["class"]},{"properties":{"$schema":{"type":"string"},"description":{"type":"string"},"services":{"type":"array"}},"unevaluatedProperties":false,"required":["services"]}]},"then":{"oneOf":[{"description":"environment config","type":"object","$ref":"./environments/environment-schema.json"},{"description":"optimizer config","type":"object","$ref":"./optimizers/optimizer-schema.json"},{"description":"scheduler config","type":"object","$ref":"./schedulers/scheduler-schema.json"},{"description":"service config","type":"object","$ref":"./services/service-schema.json"},{"description":"storage config","type":"object","$ref":"./storage/storage-schema.json"}]},"else":{"$comment":"these configs are *mostly* flat dicts","anyOf":[{"description":"cli config","type":"object","$ref":"./cli/cli-schema.json"},{"description":"globals config","type":"object","$ref":"./cli/globals-schema.json"},{"description":"tunables params config","type":"object","$ref":"./tunables/tunable-params-schema.json"},{"description":"tunables values config","type":"object","$ref":"./tunables/tunable-values-schema.json"}]}}
</schema>

[User] Provide a JSON object that satisfies the schema "mlos_bench config schema". Here are the required top‑level fields: none (all optional). Return only the valid JSON object.

mlos_bench config schema

Any mlos_bench config - this is the top level schema that should be used to validate any mlos_bench config

check if the config has a class or services property

environment config

optimizer config

scheduler config

service config

storage config

cli config

globals config

tunables params config

tunables values config

Provide a JSON object that satisfies the schema "mlos_bench config schema". Here are the required top‑level fields: none (all optional). Return only the valid JSON object.


[User] Provide a JSON object that satisfies the schema "Mocha JS Configuration File Schema". Here are the required top‑level fields: none (all optional). Return only the valid JSON object.

A JSON schema describing a .mocharc.[json|yml|yaml] file

Mocha JS Configuration File Schema

Provide a JSON object that satisfies the schema "Mocha JS Configuration File Schema". Here are the required top‑level fields: none (all optional). Return only the valid JSON object.


[System]
You are a helpful assistant that answers strictly in JSON. Here's the JSON schema you must adhere to:
<schema>
{"$schema":"http://json-schema.org/draft-04/schema#","id":"https://json.schemastore.org/modernizrrc.json","properties":{"classPrefix":{"type":"string","description":"A string that is added before each CSS class"},"minify":{"type":"boolean","description":"A flag indicating whether to minify the Modernizr source"},"options":{"type":"array","description":"A list of Modernizr options to include in the build","uniqueItems":true,"items":{"type":"string","enum":["addTest","atRule","domPrefixes","hasEvent","html5shiv","html5printshiv","load","mq","prefixed","prefixes","prefixedCSS","setClasses","testAllProps","testProp","testStyles"]}},"feature-detects":{"type":"array","description":"A list of the browser features to be detected","uniqueItems":true,"items":{"type":"string","enum":["a/download","ambientlight","applicationcache","audio","audio/loop","audio/preload","audio/webaudio","battery","battery/lowbattery","blob","canvas","canvas/blending","canvas/todataurl","canvas/winding","canvastext","contenteditable","contextmenu","cookies","cors","crypto","crypto/getrandomvalues","css/all","css/animations","css/appearance","css/backdropfilter","css/backgroundblendmode","css/backgroundcliptext","css/backgroundposition-shorthand","css/backgroundposition-xy","css/backgroundrepeat","css/backgroundsize","css/backgroundsizecover","css/borderimage","css/borderradius","css/boxshadow","css/boxsizing","css/calc","css/checked","css/chunit","css/columns","css/cubicbezierrange","css/displayrunin","css/displaytable","css/ellipsis","css/escape","css/exunit","css/filters","css/flexbox","css/flexboxlegacy","css/flexboxtweener","css/flexwrap","css/fontface","css/generatedcontent","css/gradients","css/hairline","css/hsla","css/hyphens","css/invalid","css/lastchild","css/mask","css/mediaqueries","css/multiplebgs","css/nthchild","css/objectfit","css/opacity","css/overflow-scrolling","css/pointerevents","css/positionsticky","css/pseudoanimations","css/pseudotransitions","css/reflections","css/regions","css/remunit","css/resize","css/rgba","css/scrollbars","css/shapes","css/siblinggeneral","css/subpixelfont","css/supports","css/target","css/textalignlast","css/textshadow","css/transforms","css/transforms3d","css/transformstylepreserve3d","css/transitions","css/userselect","css/valid","css/vhunit","css/vmaxunit","css/vminunit","css/vwunit","css/will-change","css/wrapflow","custom-protocol-handler","customevent","dart","dataview-api","dom/classlist","dom/createElement-attrs","dom/dataset","dom/documentfragment","dom/hidden","dom/microdata","dom/mutationObserver","elem/datalist","elem/details","elem/output","elem/picture","elem/progress-meter","elem/ruby","elem/template","elem/time","elem/track","elem/unknown","emoji","es5/array","es5/date","es5/function","es5/object","es5/specification","es5/strictmode","es5/string","es5/syntax","es5/undefined","es6/array","es6/collections","es6/contains","es6/generators","es6/math","es6/number","es6/object","es6/promises","es6/string","event/deviceorientation-motion","event/oninput","eventlistener","exif-orientation","file/api","file/filesystem","flash","forms/capture","forms/fileinput","forms/fileinputdirectory","forms/formattribute","forms/inputnumber-l10n","forms/placeholder","forms/requestautocomplete","forms/validation","fullscreen-api","gamepad","geolocation","hashchange","hiddenscroll","history","htmlimports","ie8compat","iframe/sandbox","iframe/seamless","iframe/srcdoc","img/apng","img/jpeg2000","img/jpegxr","img/sizes","img/srcset","img/webp","img/webp-alpha","img/webp-animation","img/webp-lossless","indexeddb","indexeddbblob","input","input/formaction","input/formenctype","input/formmethod","input/formtarget","inputsearchevent","inputtypes","intl","json","lists-reversed","mathml","network/beacon","network/connection","network/eventsource","network/fetch","network/xhr-responsetype","network/xhr-responsetype-arraybuffer","network/xhr-responsetype-blob","network/xhr-responsetype-document","network/xhr-responsetype-json","network/xhr-responsetype-text","network/xhr2","notification","pagevisibility-api","performance","pointerevents","pointerlock-api","postmessage","proximity","queryselector","quota-management-api","requestanimationframe","script/async","script/defer","serviceworker","speech/speech-recognition","speech/speech-synthesis","storage/localstorage","storage/sessionstorage","storage/websqldatabase","style/scoped","svg","svg/asimg","svg/clippaths","svg/filters","svg/foreignobject","svg/inline","svg/smil","templatestrings","test/css/scrollsnappoints","test/elem/bdi","test/img/crossorigin","test/ligatures","textarea/maxlength","touchevents","typed-arrays","unicode","unicode-range","url/bloburls","url/data-uri","url/parser","url/urlsearchparams","userdata","vibration","video","video/autoplay","video/loop","video/preload","vml","web-intents","webanimations","webgl","webgl/extensions","webrtc/datachannel","webrtc/getusermedia","webrtc/peerconnection","websockets","websockets/binary","window/framed","workers/blobworkers","workers/dataworkers","workers/sharedworkers","workers/transferables","workers/webworkers","xdomainrequest"]}}},"title":"JSON Schema for Webpack's modernizr-loader configuration file","type":"object"}
</schema>

[User] Provide a JSON object that satisfies the schema "JSON Schema for Webpack's modernizr-loader configuration file". Here are the required top‑level fields: none (all optional). Return only the valid JSON object.

A string that is added before each CSS class

A flag indicating whether to minify the Modernizr source

A list of Modernizr options to include in the build

addTest atRule domPrefixes hasEvent html5shiv html5printshiv load mq prefixed prefixes prefixedCSS setClasses testAllProps testProp testStyles

A list of the browser features to be detected

a/download ambientlight applicationcache audio audio/loop audio/preload audio/webaudio battery battery/lowbattery blob canvas canvas/blending canvas/todataurl canvas/winding canvastext contenteditable contextmenu cookies cors crypto crypto/getrandomvalues css/all css/animations css/appearance css/backdropfilter css/backgroundblendmode css/backgroundcliptext css/backgroundposition-shorthand css/backgroundposition-xy css/backgroundrepeat css/backgroundsize css/backgroundsizecover css/borderimage css/borderradius css/boxshadow css/boxsizing css/calc css/checked css/chunit css/columns css/cubicbezierrange css/displayrunin css/displaytable css/ellipsis css/escape css/exunit css/filters css/flexbox css/flexboxlegacy css/flexboxtweener css/flexwrap css/fontface css/generatedcontent css/gradients css/hairline css/hsla css/hyphens css/invalid css/lastchild css/mask css/mediaqueries css/multiplebgs css/nthchild css/objectfit css/opacity css/overflow-scrolling css/pointerevents css/positionsticky css/pseudoanimations css/pseudotransitions css/reflections css/regions css/remunit css/resize css/rgba css/scrollbars css/shapes css/siblinggeneral css/subpixelfont css/supports css/target css/textalignlast css/textshadow css/transforms css/transforms3d css/transformstylepreserve3d css/transitions css/userselect css/valid css/vhunit css/vmaxunit css/vminunit css/vwunit css/will-change css/wrapflow custom-protocol-handler customevent dart dataview-api dom/classlist dom/createElement-attrs dom/dataset dom/documentfragment dom/hidden dom/microdata dom/mutationObserver elem/datalist elem/details elem/output elem/picture elem/progress-meter elem/ruby elem/template elem/time elem/track elem/unknown emoji es5/array es5/date es5/function es5/object es5/specification es5/strictmode es5/string es5/syntax es5/undefined es6/array es6/collections es6/contains es6/generators es6/math es6/number es6/object es6/promises es6/string event/deviceorientation-motion event/oninput eventlistener exif-orientation file/api file/filesystem flash forms/capture forms/fileinput forms/fileinputdirectory forms/formattribute forms/inputnumber-l10n forms/placeholder forms/requestautocomplete forms/validation fullscreen-api gamepad geolocation hashchange hiddenscroll history htmlimports ie8compat iframe/sandbox iframe/seamless iframe/srcdoc img/apng img/jpeg2000 img/jpegxr img/sizes img/srcset img/webp img/webp-alpha img/webp-animation img/webp-lossless indexeddb indexeddbblob input input/formaction input/formenctype input/formmethod input/formtarget inputsearchevent inputtypes intl json lists-reversed mathml network/beacon network/connection network/eventsource network/fetch network/xhr-responsetype network/xhr-responsetype-arraybuffer network/xhr-responsetype-blob network/xhr-responsetype-document network/xhr-responsetype-json network/xhr-responsetype-text network/xhr2 notification pagevisibility-api performance pointerevents pointerlock-api postmessage proximity queryselector quota-management-api requestanimationframe script/async script/defer serviceworker speech/speech-recognition speech/speech-synthesis storage/localstorage storage/sessionstorage storage/websqldatabase style/scoped svg svg/asimg svg/clippaths svg/filters svg/foreignobject svg/inline svg/smil templatestrings test/css/scrollsnappoints test/elem/bdi test/img/crossorigin test/ligatures textarea/maxlength touchevents typed-arrays unicode unicode-range url/bloburls url/data-uri url/parser url/urlsearchparams userdata vibration video video/autoplay video/loop video/preload vml web-intents webanimations webgl webgl/extensions webrtc/datachannel webrtc/getusermedia webrtc/peerconnection websockets websockets/binary window/framed workers/blobworkers workers/dataworkers workers/sharedworkers workers/transferables workers/webworkers xdomainrequest

Provide a JSON object that satisfies the schema "JSON Schema for Webpack's modernizr-loader configuration file". Here are the required top‑level fields: none (all optional). Return only the valid JSON object.


[System]
You are a helpful assistant that answers strictly in JSON. Here's the JSON schema you must adhere to:
<schema>
{"$schema":"http://json-schema.org/draft-07/schema#","$id":"https://json.schemastore.org/monade-stack-config.json","title":"Monade CLI Stack Configuration","description":"The configuration file to get a local stack up and running with Monade CLI","type":"object","properties":{"name":{"type":"string","description":"The name of the stack. It will be used as a prefix for the stack's resources"},"nginx":{"type":"string","enum":["system","local"],"default":"system","description":"Specifies whether to use the system-wide nginx service or spawn a local nginx process among other services. If not specified, 'system' is implied. Local nginx requires an nginx binary in the path. System wide nginx configuration is left to the user."},"services":{"type":"object","description":"The services to be run in the stack. Each service is represented by its name, which is the key","additionalProperties":{"$ref":"#/definitions/ProcConfig"}},"bastion":{"type":"object","description":"The bastion configuration for the stack. Use this to quick connect to the bastion host of the stack with `monade bastion`","additionalProperties":false,"properties":{"host":{"type":"string","format":"hostname","examples":["bastion.app.monadeapps.xyz","10.34.159.55"],"description":"The bastion host to connect to. Can be an ip address or a domain"},"user":{"type":"string","examples":["ubuntu"],"description":"The user to connect to the bastion host"},"key_path":{"type":"string","examples":["~/.config/monade/stack_name/bastion_key.pem"],"description":"The path to the private key to use to connect to the bastion host. Please note that the key should be store in a directory outside the stack directory, to avoid being included in the stack repository"}},"required":["host","user","key_path"]},"additionalProperties":false},"required":["name","services"],"definitions":{"ProcConfig":{"type":"object","properties":{"command":{"type":"string","description":"The command to be run to start the service. If the command has spaces it must be double quoted"},"cwd":{"type":"string","description":"The working directory for the command. This directory will be cd'd into before running the command"},"env":{"type":"array","description":"A list of environment variables to be set for the command. Each item in the list should be a string in the form of `KEY=VALUE`","examples":["FOO=bar","BAZ=qux"],"items":{"type":"string"},"uniqueItems":true},"env_file":{"type":"string","description":"If set all environment variables in the file will be set for the command. The file should be in the format of `KEY=VALUE` with each key-value pair on a new line"},"domains":{"type":"array","description":"A list of domains to be proxied to the service. Each item in the list must be a string. In our local stacks domains should use the `test` tld","examples":["frontend.test","api.test"],"items":{"type":"string"},"uniqueItems":true},"port":{"type":"integer","description":"This is the port the proxy will use to forward requests to the service. It must be unique for each service in the stack. Please note that the process should be configured to run on this port, and concurrent stacks could interfere one with another.The port must be set along with domains for the service to be proxied","minimum":0,"maximum":65535},"proxy_https":{"type":"boolean","default":false,"description":"If set to true, the proxy will forward requests to the service using HTTPS. The service must be configured to accept HTTPS requests. Setting this has no effect on the proxy external connections, that are always https"},"autostart":{"type":"boolean","default":false,"description":"If set to true, the service will be started when the stack is started. If set to false, the service will not be started automatically when the stack is started."},"stop_sequence":{"type":"string","examples":["C-c","C-d"],"description":"The key sequence to be used by the stack runner to stop the service. For docker services use 'C-c'. If not set a SIGTERM will be sent. The sequence must be a combination of keys, emacs-style, for example for ctrl+c use 'C-c'. Do not specify SIGTERM or SIGKILL"},"nginx_server_options":{"type":"object","description":"A list of options to be set for the server block in the nginx configuration for this process. Here should be nginx general configurations. This is a map, the key is the name of the directive, the value is the argument","examples":["client_max_body_size","keepalive_timeout"],"additionalProperties":{"type":"string","examples":["100m","65s"]}},"nginx_location_options":{"type":"object","examples":["proxy_set_header"],"description":"A list of options to be set for the location block in the nginx configuration for this process. Here should be proxy-related configurations. This is a map, the key is the name of the directive, the value is the argument","additionalProperties":{"type":"string","examples":["X-Real-IP $remote_addr","X-Forwarded-For $proxy_add_x_forwarded_for","Host $http_host","X-NginX-Proxy true"]}}},"required":["command"],"additionalProperties":false}}}
</schema>

[User] Provide a JSON object that satisfies the schema "Monade CLI Stack Configuration". Here are the required top‑level fields: name, services. Return only the valid JSON object.

Monade CLI Stack Configuration

The configuration file to get a local stack up and running with Monade CLI

The name of the stack. It will be used as a prefix for the stack's resources

Specifies whether to use the system-wide nginx service or spawn a local nginx process among other services. If not specified, 'system' is implied. Local nginx requires an nginx binary in the path. System wide nginx configuration is left to the user.

The services to be run in the stack. Each service is represented by its name, which is the key

The bastion configuration for the stack. Use this to quick connect to the bastion host of the stack with `monade bastion`

The bastion host to connect to. Can be an ip address or a domain

The user to connect to the bastion host

The path to the private key to use to connect to the bastion host. Please note that the key should be store in a directory outside the stack directory, to avoid being included in the stack repository

The command to be run to start the service. If the command has spaces it must be double quoted

The working directory for the command. This directory will be cd'd into before running the command

A list of environment variables to be set for the command. Each item in the list should be a string in the form of `KEY=VALUE`

If set all environment variables in the file will be set for the command. The file should be in the format of `KEY=VALUE` with each key-value pair on a new line

A list of domains to be proxied to the service. Each item in the list must be a string. In our local stacks domains should use the `test` tld

This is the port the proxy will use to forward requests to the service. It must be unique for each service in the stack. Please note that the process should be configured to run on this port, and concurrent stacks could interfere one with another.The port must be set along with domains for the service to be proxied

If set to true, the proxy will forward requests to the service using HTTPS. The service must be configured to accept HTTPS requests. Setting this has no effect on the proxy external connections, that are always https

If set to true, the service will be started when the stack is started. If set to false, the service will not be started automatically when the stack is started.

The key sequence to be used by the stack runner to stop the service. For docker services use 'C-c'. If not set a SIGTERM will be sent. The sequence must be a combination of keys, emacs-style, for example for ctrl+c use 'C-c'. Do not specify SIGTERM or SIGKILL

A list of options to be set for the server block in the nginx configuration for this process. Here should be nginx general configurations. This is a map, the key is the name of the directive, the value is the argument

A list of options to be set for the location block in the nginx configuration for this process. Here should be proxy-related configurations. This is a map, the key is the name of the directive, the value is the argument

Provide a JSON object that satisfies the schema "Monade CLI Stack Configuration". Here are the required top‑level fields: name, services. Return only the valid JSON object.


[System]
You are a helpful assistant that answers strictly in JSON. Here's the JSON schema you must adhere to:
<schema>
{"$schema":"http://json-schema.org/draft-07/schema#","$id":"https://json.schemastore.org/mongodb-atlas-search-index-definition.json","$comment":"https://www.mongodb.com/docs/atlas/atlas-search/index-definitions/#std-label-ref-index-definitions","additionalProperties":false,"definitions":{"CustomAnalyzer":{"type":"object","additionalProperties":false,"properties":{"name":{"type":"string","pattern":"^(?!^lucene\\.|builtin\\.|mongodb\\.).*","description":"Name of the custom analyzer.\nNames must be unique within an index, and may not start with any of the following strings:\n- lucene.\n- builtin.\n- mongodb."},"charFilters":{"type":"array","items":{"$ref":"#/definitions/CharFilter"},"description":"Array containing zero or more character filters."},"tokenizer":{"$ref":"#/definitions/Tokenizer"},"tokenFilters":{"type":"array","items":{"$ref":"#/definitions/TokenFilter"},"description":"Array containing zero or more token filters."}},"required":["name","tokenizer"],"title":"Analyzer"},"Tokenizer":{"type":"object","additionalProperties":false,"properties":{"type":{"type":"string","enum":["edgeGram","keyword","nGram","regexCaptureGroup","regexSplit","standard","uaxUrlEmail","whitespace"]}},"required":["type"],"title":"Tokenizer","description":"Tokenizer to use to create tokens."},"TokenFilter":{"type":"object","additionalProperties":false,"properties":{"type":{"type":"string","enum":["asciiFolding","daitchMokotoffSoundex","edgeGram","icuFolding","icuNormalizer","length","lowercase","nGram","regex","reverse","shingle","snowballStemming","stopword","trim"],"description":"Human-readable label that identifies this token filter type."}},"required":["type"],"title":"TokenFilter"},"CharFilter":{"type":"object","additionalProperties":false,"properties":{"type":{"type":"string","enum":["htmlStrip","icuNormalize","mapping","persian"],"description":"Human-readable label that identifies this character filter type."},"ignoredTags":{"type":"array","items":{"type":"string"},"description":"List that contains the HTML tags to exclude from filtering."}},"dependencies":{"ignoredTags":{"properties":{"type":{"enum":["htmlStrip"]}}}},"required":["type"],"if":{"properties":{"type":{"const":"mapping"}}},"then":{"properties":{"mappings":{"type":"object"}},"required":["mappings"]},"title":"CharFilter"},"Mappings":{"type":"object","oneOf":[{"additionalProperties":false,"properties":{"dynamic":{"const":true}}},{"additionalProperties":false,"properties":{"dynamic":{"type":"boolean","description":"Enables or disables dynamic mapping of fields for this index.\nIf set to true, Atlas Search recursively indexes all fields and embedded documents in the document except:\nFields of certain data types. To learn more, see BSON Data Types.\nAny fields explicitly excluded by the mappings.fields parameter.\nIf set to false, you must specify individual fields to index using mappings.fields.\nIf omitted, defaults to false."},"fields":{"type":"object","patternProperties":{"^.*$":{"oneOf":[{"$ref":"#/definitions/MappingsField"},{"type":"array","items":{"$ref":"#/definitions/MappingsField"}}]}}}},"required":["fields"]}],"title":"Mappings","description":"Specifies how to index fields at different paths for this index."},"MappingsField":{"type":"object","additionalProperties":false,"properties":{"type":{"type":"string","enum":["autocomplete","boolean","date","dateFacet","document","embeddedDocuments","geo","number","numberFacet","objectId","string","stringFacet","token","uuid"]},"analyzer":{"type":"string"},"maxGrams":{"type":"integer"},"minGrams":{"type":"integer"},"tokenization":{"type":"string","enum":["edgeGram","rightEdgeGram","nGram"]},"foldDiacritics":{"type":"boolean"},"dynamic":{"type":"boolean"},"fields":{"type":"object"},"indexShapes":{"type":"boolean"},"representation":{"type":"string","enum":["int64","double"]},"indexIntegers":{"type":"boolean"},"indexDoubles":{"type":"boolean"},"searchAnalyzer":{"type":"string"},"indexOptions":{"type":"string","enum":["docs","freqs","positions","offsets"]},"store":{"type":"boolean"},"ignoreAbove":{"type":"integer"},"multi":{"type":"object","properties":{"type":{"type":"string","enum":["string"]},"analyzer":{"type":"string"}}},"norms":{"type":"string","enum":["include","omit"]}},"dependencies":{"analyzer":{"properties":{"type":{"enum":["autocomplete","string"]}}},"maxGrams":{"properties":{"type":{"enum":["autocomplete"]}}},"minGrams":{"properties":{"type":{"enum":["autocomplete"]}}},"tokenization":{"properties":{"type":{"enum":["autocomplete"]}}},"foldDiacritics":{"properties":{"type":{"enum":["autocomplete"]}}},"dynamic":{"properties":{"type":{"enum":["document","embeddedDocuments"]}}},"fields":{"properties":{"type":{"enum":["document","embeddedDocuments"]}}},"indexShapes":{"properties":{"type":{"enum":["geo"]}}},"representation":{"properties":{"type":{"enum":["number","numberFacet"]}}},"indexIntegers":{"properties":{"type":{"enum":["number","numberFacet"]}}},"indexDoubles":{"properties":{"type":{"enum":["number","numberFacet"]}}},"searchAnalyzer":{"properties":{"type":{"enum":["string"]}}},"indexOptions":{"properties":{"type":{"enum":["string"]}}},"store":{"properties":{"type":{"enum":["string"]}}},"ignoreAbove":{"properties":{"type":{"enum":["string"]}}},"multi":{"properties":{"type":{"enum":["string"]}}},"norms":{"properties":{"type":{"enum":["string"]}}}}},"StoredSource":{"type":"object","anyOf":[{"additionalProperties":false,"properties":{"include":{"type":"array","items":{"type":"string"},"description":"List that contains the field names or dot-separated paths to fields to store.\nIn addition to the specified fields, Atlas Search stores _id also by default."},"exclude":{"type":"array","items":{"type":"string"},"description":"List that contains the field names or dot-separated paths to fields to exclude from being stored.\nIf specified, Atlas Search stores original documents except the fields listed here."}},"required":["include"]},{"additionalProperties":false,"properties":{"include":{"type":"array","items":{"type":"string"},"description":"List that contains the field names or dot-separated paths to fields to store.\nIn addition to the specified fields, Atlas Search stores _id also by default."},"exclude":{"type":"array","items":{"type":"string"},"description":"List that contains the field names or dot-separated paths to fields to exclude from being stored.\nIf specified, Atlas Search stores original documents except the fields listed here."}},"required":["exclude"]}],"title":"StoredSource"},"Synonym":{"type":"object","additionalProperties":false,"properties":{"name":{"type":"string"},"analyzer":{"type":"string","enum":["lucene.standard","lucene.simple","lucene.whitespace","lucene.keyword","lucene.arabic","lucene.armenian","lucene.basque","lucene.bengali","lucene.brazilian","lucene.bulgarian","lucene.catalan","lucene.chinese","lucene.cjk","lucene.czech","lucene.danish","lucene.dutch","lucene.english","lucene.finnish","lucene.french","lucene.galician","lucene.german","lucene.greek","lucene.hindi","lucene.hungarian","lucene.indonesian","lucene.irish","lucene.italian","lucene.japanese","lucene.korean","lucene.latvian","lucene.lithuanian","lucene.morfologik","lucene.nori","lucene.norwegian","lucene.persian","lucene.portuguese","lucene.romanian","lucene.russian","lucene.smartcn","lucene.sorani","lucene.spanish","lucene.swedish","lucene.thai","lucene.turkish","lucene.ukrainian","nGram","edgeGram","daitchMokotoffSoundex","shingle"]},"source":{"type":"object","properties":{"collection":{"type":"string"}}}}}},"properties":{"analyzer":{"type":"string","description":"Specifies the analyzer to apply to string fields when indexing.\nIf you set this only at the top and do not specify an analyzer for the fields in the index definition, Atlas Search applies this analyzer to all the fields.\nTo use a different analyzer for each field, you must specify a different analyzer for the field.\nIf omitted, defaults to Standard Analyzer."},"analyzers":{"type":"array","items":{"$ref":"#/definitions/CustomAnalyzer"},"description":"Specifies the Custom Analyzers to use in this index."},"mappings":{"$ref":"#/definitions/Mappings"},"name":{"type":"string","description":"Specifies a name for the index. In each namespace, names of all indexes in the namespace must be unique.\nIf omitted, defaults to default."},"searchAnalyzer":{"type":"string","description":"Specifies the analyzer to apply to query text before searching with it.\nIf omitted, defaults to Standard Analyzer."},"storedSource":{"oneOf":[{"type":"boolean"},{"$ref":"#/definitions/StoredSource"}],"description":"Specifies fields in the documents to store for query-time look-ups using the returnedStoredSource option.\nYou can store fields of all BSON Data Types on Atlas Search.\n\nValue can be one of the following:\ntrue, to store all fields\nfalse, to not store any fields\nObject that specifies the fields to include or exclude from storage\n\nIf omitted, defaults to false."},"synonyms":{"type":"array","items":{"$ref":"#/definitions/Synonym"},"description":"Synonym mappings to use in your index."}},"required":["mappings"],"title":"JSON schema for MongoDB Atlas Search index definition","type":"object"}
</schema>

[User] Provide a JSON object that satisfies the schema "JSON schema for MongoDB Atlas Search index definition". Here are the required top‑level fields: mappings. Return only the valid JSON object.

Name of the custom analyzer.
Names must be unique within an index, and may not start with any of the following strings:
- lucene.
- builtin.
- mongodb.

Array containing zero or more character filters.

Array containing zero or more token filters.

Analyzer

edgeGram keyword nGram regexCaptureGroup regexSplit standard uaxUrlEmail whitespace

Tokenizer

Tokenizer to use to create tokens.

asciiFolding daitchMokotoffSoundex edgeGram icuFolding icuNormalizer length lowercase nGram regex reverse shingle snowballStemming stopword trim

Human-readable label that identifies this token filter type.

TokenFilter

Human-readable label that identifies this character filter type.

List that contains the HTML tags to exclude from filtering.

CharFilter

Enables or disables dynamic mapping of fields for this index.
If set to true, Atlas Search recursively indexes all fields and embedded documents in the document except:
Fields of certain data types. To learn more, see BSON Data Types.
Any fields explicitly excluded by the mappings.fields parameter.
If set to false, you must specify individual fields to index using mappings.fields.
If omitted, defaults to false.

Mappings

Specifies how to index fields at different paths for this index.

autocomplete boolean date dateFacet document embeddedDocuments geo number numberFacet objectId string stringFacet token uuid

List that contains the field names or dot-separated paths to fields to store.
In addition to the specified fields, Atlas Search stores _id also by default.

List that contains the field names or dot-separated paths to fields to exclude from being stored.
If specified, Atlas Search stores original documents except the fields listed here.

StoredSource

Specifies the analyzer to apply to string fields when indexing.
If you set this only at the top and do not specify an analyzer for the fields in the index definition, Atlas Search applies this analyzer to all the fields.
To use a different analyzer for each field, you must specify a different analyzer for the field.
If omitted, defaults to Standard Analyzer.

Specifies the Custom Analyzers to use in this index.

Specifies a name for the index. In each namespace, names of all indexes in the namespace must be unique.
If omitted, defaults to default.

Specifies the analyzer to apply to query text before searching with it.
If omitted, defaults to Standard Analyzer.

Specifies fields in the documents to store for query-time look-ups using the returnedStoredSource option.
You can store fields of all BSON Data Types on Atlas Search.

Value can be one of the following:
true, to store all fields
false, to not store any fields
Object that specifies the fields to include or exclude from storage

If omitted, defaults to false.

Synonym mappings to use in your index.

Provide a JSON object that satisfies the schema "JSON schema for MongoDB Atlas Search index definition". Here are the required top‑level fields: mappings. Return only the valid JSON object.