Skip to content

Core runtime state, NTP, and experimental configuration

profile.store-selected and profile.store-fake-ip retain route selection and Fake IP mappings; they do not store Clash Profiles themselves. iOS and macOS retain this runtime state, while tvOS rebuilds it when needed.

NTP

NTP can provide a time offset to protocols that need accurate time. Hako keeps write-to-system: false and never changes the Apple system clock.

Experimental

The current core may parse experimental fields, but they can change with the core version. A basic connection should never depend on them.

2 fields shown

FieldTypeiOSmacOStvOSPlatform notes
profile.store-fake-ipboolSupportedSupportedManaged / limitedConsumed by the Hako core. Small state can persist, but tvOS file-backed data must be treated as clearable.
profile.store-selectedboolSupportedSupportedManaged / limitedConsumed by the Hako core. Small state can persist, but tvOS file-backed data must be treated as clearable.

6 fields shown

FieldTypeiOSmacOStvOSPlatform notes
ntp.dialer-proxystringManaged / limitedManaged / limitedManaged / limitedUsed as protocol time offset; it does not change the Apple system clock.
ntp.enableboolManaged / limitedManaged / limitedManaged / limitedUsed as protocol time offset; it does not change the Apple system clock.
ntp.intervalintManaged / limitedManaged / limitedManaged / limitedUsed as protocol time offset; it does not change the Apple system clock.
ntp.portintManaged / limitedManaged / limitedManaged / limitedUsed as protocol time offset; it does not change the Apple system clock.
ntp.serverstringManaged / limitedManaged / limitedManaged / limitedUsed as protocol time offset; it does not change the Apple system clock.
ntp.write-to-systemboolUnsupportedUnsupportedUnsupportedHako never writes the Apple system clock.

4 fields shown

FieldTypeiOSmacOStvOSPlatform notes
experimental.dialer-ip4p-convertboolAdvancedAdvancedAdvancedParsed by the core, but not a stable product-level promise.
experimental.fingerprints[]stringAdvancedAdvancedAdvancedParsed by the core, but not a stable product-level promise.
experimental.quic-go-disable-ecnboolAdvancedAdvancedAdvancedParsed by the core, but not a stable product-level promise.
experimental.quic-go-disable-gsoboolAdvancedAdvancedAdvancedParsed by the core, but not a stable product-level promise.