Type object
File match *.omp.json *.omp.toml *.omp.yaml *.omp.yml
Schema URL https://catalog.lintel.tools/schemas/schemastore/oh-my-posh/latest.json
Source https://raw.githubusercontent.com/JanDeDobbeleer/oh-my-posh/main/themes/schema.json

Validate with Lintel

npx @lintel/lintel check
Type: object

Properties

enable_cursor_positioning boolean
Default: false
shell_integration boolean
Default: false
upgrade object
Default:
{
  "source": "cdn",
  "auto": false,
  "notice": false
}
4 nested properties
interval string

The duration for which the segment will be cached. This is parsed using the time.ParseDuration function from the Go standard library (see https://pkg.go.dev/time#ParseDuration for details).

pattern=^(none|infinite|([0-9]+(h|m|s))+)$
source string
Default: "cdn"
Values: "cdn" "github"
auto boolean
Default: false
notice boolean
Default: false
console_title_template string
Default: "{{ .Shell }} in {{ .Folder }}"
terminal_background color_string | palette_reference
streaming integer
Default: 100
tooltips object[]
Default:
[]
transient_prompt object
Default:
{}
5 nested properties
template string
foreground_templates template[]
Default:
[]
background_templates template[]
Default:
[]
valid_line object
Default:
{}
5 nested properties
template string
foreground_templates template[]
Default:
[]
background_templates template[]
Default:
[]
error_line object
Default:
{}
5 nested properties
template string
foreground_templates template[]
Default:
[]
background_templates template[]
Default:
[]
secondary_prompt object
Default:
{}
5 nested properties
template string
foreground_templates template[]
Default:
[]
background_templates template[]
Default:
[]
debug_prompt object
Default:
{}
5 nested properties
template string
foreground_templates template[]
Default:
[]
background_templates template[]
Default:
[]
palettes object
Default:
{}
2 nested properties
template string
list object
iterm_features string[]
async boolean
Default: false
tooltips_action string
Default: "replace"
Values: "replace" "extend" "prepend"

Definitions

color color_string | palette_reference
templates template[]
home_enabled boolean

Display the segment in the HOME folder

fetch_version boolean

Fetch the version number

http_timeout integer

Milliseconds to use for http request timeouts

expires_in integer

Access token expiration time in seconds

access_token string

The initial access token

refresh_token string

The initial refresh token

display_mode string

Determines whether the segment is displayed always or only if a file matching the extensions are present in the current folder

missing_command_text string

The string to display when the command is not available

status_formats object

Override the status format for a specific change. Example: {"Added": "Added: %d"}

native_fallback boolean

Try to use the WSL 2 native command in a shared Windows drive if the Windows executable is not found.

branch_template string

the temaplate to use for the branch name, supports {{ .Branch }} for the branch name

mapped_branches object

Custom glyph/text for specific branches

cache_duration string

The duration for which the segment will be cached. This is parsed using the time.ParseDuration function from the Go standard library (see https://pkg.go.dev/time#ParseDuration for details).

language_options object

Common options for language segments

home_enabled boolean

Display the segment in the HOME folder

Default: false
fetch_version boolean

Fetch the version number

Default: true
cache_duration string

The duration for which the segment will be cached. This is parsed using the time.ParseDuration function from the Go standard library (see https://pkg.go.dev/time#ParseDuration for details).

pattern=^(none|infinite|([0-9]+(h|m|s))+)$
missing_command_text string

The string to display when the command is not available

Default: ""
display_mode string

Determines whether the segment is displayed always or only if a file matching the extensions are present in the current folder

Default: "context"
Values: "always" "files" "environment" "context"
version_url_template string

Template that creates the URL of the version info / release notes

Default: ""
tooling string[]

The tooling to use for fetching the version

Default:
[]
extensions string[]

The extensions to look for when determining if the current directory is a project

Default:
[]
folders string[]

The folders to look for when determining if a folder is a workspace

Default:
[]
filler string

Right aligned filler text, will span the remaining width.

aliases object

Custom value replacement for template parts

extra_prompt object
template string
foreground_templates template[]
Default:
[]
background_templates template[]
Default:
[]
segment object
type string required
Values: "angular" "argocd" "aurelia" "aws" "az" "azd" "azfunc" "battery" "bazel" "brewfather" "buf" "bun" "carbonintensity" "cds" "cf" "cftarget" "claude" "clojure" "cmake" "copilot" "connection" "crystal" "dart" "deno" "docker" "dotnet" "elixir" "executiontime" "firebase" "flutter" "fortran" "fossil" "gcp" "git" "gitversion" "go" "haskell" "helm" "http" "ipify" "java" "jujutsu" "julia" "kotlin" "kubectl" "lastfm" "lua" "mercurial" "mojo" "mvn" "nba" "nbgv" "nightscout" "nim" "nix-shell" "node" "npm" "nx" "ocaml" "os" "owm" "path" "perl" "php" "plastic" "pnpm" "project" "pulumi" "python" "quasar" "r" "ramadan" "react" "root" "ruby" "rust" "sapling" "session" "shell" "sitecore" "spotify" "status" "strava" "svelte" "svn" "swift" "sysinfo" "talosctl" "taskwarrior" "tauri" "terraform" "text" "time" "todoist" "ui5tooling" "umbraco" "unity" "upgrade" "v" "vala" "wakatime" "winget" "winreg" "withings" "xmake" "yarn" "ytm" "zig"
foreground_templates template[]
Default:
[]
background_templates template[]
Default:
[]
templates_logic string
Values: "first_match" "join"
properties object

DEPRECATED: Use 'options' instead. This field is maintained for backward compatibility with version 3 configs and will be removed in a future version. See https://ohmyposh.dev/docs/configuration/segment#options

Default:
{}
interactive boolean
Default: false
cache object
Default:
{}
2 nested properties
duration string

The duration for which the segment will be cached. This is parsed using the time.ParseDuration function from the Go standard library (see https://pkg.go.dev/time#ParseDuration for details).

pattern=^(none|infinite|([0-9]+(h|m|s))+)$
strategy string
Default: "folder"
Values: "folder" "session" "device"
placeholder string

Text to display while the segment is loading in streaming mode. See https://ohmyposh.dev/docs/experimental/streaming

Default: "..."