The model the text editor's AI assistant runs on, as JSON { providerId, provider, model }; empty to follow the first configured provider's default.
aiEnabled
aiEnabled:boolean
Whether the AI/LLM features (chat sidebar, LLM chat notes) are enabled.
allowedHtmlTags
allowedHtmlTags:string
allowLanAccess
allowLanAccess:boolean
autoCollapseNoteTree
autoCollapseNoteTree:boolean
autoFixConsistencyIssues
autoFixConsistencyIssues:boolean
autoReadonlySizeCode
autoReadonlySizeCode:number
autoReadonlySizeText
autoReadonlySizeText:number
backdropEffectsEnabled
backdropEffectsEnabled:boolean
backendScriptingEnabled
backendScriptingEnabled:boolean
backgroundEffects
backgroundEffects:boolean
backupEnableCompression
backupEnableCompression:boolean
Whether backups are gzip-compressed. Compression or encryption switches the backup from a
plain database file to a backup container; with both off, backups stay plain .db copies.
backupEnableEncryption
backupEnableEncryption:boolean
Whether backups are encrypted with the stored backup passphrase. Desktop only, and only where
the OS offers a keyring to keep that passphrase in, since unattended backups cannot ask for
it.
centerContent
centerContent:boolean
checkForUpdates
checkForUpdates:boolean
cleanupToolOptions
cleanupToolOptions:string
JSON: what the Content Manager's cleanup tool was last set to erase — see CleanupToolOptions.
clipboardImageEmbedEnabled
clipboardImageEmbedEnabled:boolean
Whether copying note content embeds internal images as data: URIs so they paste into external apps (internal paste stays reference-based). Hidden kill-switch.
closeToTray
closeToTray:boolean
When closing the window on desktop, hide it to the system tray instead of quitting. Requires the tray icon to be enabled.
codeBlockTabWidth
codeBlockTabWidth:number
codeBlockTheme
codeBlockTheme:string
codeBlockThemeDark
codeBlockThemeDark:string
codeBlockThemeLight
codeBlockThemeLight:string
codeBlockThemeMatchesApp
codeBlockThemeMatchesApp:boolean
codeBlockWordWrap
codeBlockWordWrap:boolean
codeLineWrapEnabled
codeLineWrapEnabled:boolean
codeNoteIndentWithTabs
codeNoteIndentWithTabs:boolean
codeNotesMimeTypes
codeNotesMimeTypes:string
codeNoteTabWidth
codeNoteTabWidth:number
codeNoteTheme
codeNoteTheme:string
codeNoteThemeDark
codeNoteThemeDark:string
codeNoteThemeLight
codeNoteThemeLight:string
codeNoteThemeMatchesApp
codeNoteThemeMatchesApp:boolean
compressImages
compressImages:boolean
contentManagerSortOrder
contentManagerSortOrder:string
contentManagerViewMode
contentManagerViewMode:string
customDateTimeFormat
customDateTimeFormat:string
customDbBackupDir
customDbBackupDir:string
Directory the database backups are written to, replacing the default one inside the data
directory. Empty means "use the default". Honoured on the desktop application only; the server
is configured through the TRILIUM_BACKUP_DIR environment variable instead.
customSearchEngineName
customSearchEngineName:string
customSearchEngineUrl
customSearchEngineUrl:string
dailyBackupEnabled
dailyBackupEnabled:boolean
databaseReadonly
databaseReadonly:boolean
dbVersion
dbVersion:string
debugModeEnabled
debugModeEnabled:boolean
defaultContentLanguage
defaultContentLanguage:string
The language a note is written in when it carries no #language label of its own — which is
almost every note, the label being opt-in. Governs what the content language drives: text
direction and which typographic quotes typing produces.
An empty value means "follow the application's language" rather than "no language".
detailFontFamily
detailFontFamily:string
detailFontSize
detailFontSize:number
disableTray
disableTray:boolean
documentId
documentId:string
documentSecret
documentSecret:string
downloadImagesAutomatically
downloadImagesAutomatically:boolean
editedNotesOpenInRibbon
editedNotesOpenInRibbon:boolean
effectiveSyncServerHost
effectiveSyncServerHost:string
Sync address actually in use, with any user:password@ removed, or empty when sync is off.
Read-only: derived from config.ini / environment variables and the stored syncServerHost.
encryptedDataKey
encryptedDataKey:string
encryptedRecoveryCodes
encryptedRecoveryCodes:boolean
eraseEntitiesAfterTimeInSeconds
eraseEntitiesAfterTimeInSeconds:number
eraseEntitiesAfterTimeScale
eraseEntitiesAfterTimeScale:number
eraseUnusedAttachmentsAfterSeconds
eraseUnusedAttachmentsAfterSeconds:number
eraseUnusedAttachmentsAfterTimeScale
eraseUnusedAttachmentsAfterTimeScale:number
experimentalFeatures
experimentalFeatures:string
firstDayOfWeek
firstDayOfWeek:number
firstWeekOfYear
firstWeekOfYear:number
formattingLocale
formattingLocale:string
hardwareAccelerationEnabled
hardwareAccelerationEnabled:boolean
Desktop only: when disabled, Electron starts with GPU hardware acceleration turned off (workaround for GPU driver incompatibilities that cause a blank window). Requires an app restart.
hasUserBackendScripts
hasUserBackendScripts:boolean
headingStyle
headingStyle:string
hideArchivedNotes_main
hideArchivedNotes_main:boolean
hideOnAutoStart
hideOnAutoStart:boolean
When the app is launched automatically at login, start it minimized to the tray instead of showing a window. Requires launchOnStartup and the tray icon.
highlightsList
highlightsList:string
hoistedNoteId
hoistedNoteId:string
imageCompressionToolOptions
imageCompressionToolOptions:string
JSON: how the image compression tool was last set to compress — see ImageCompressionToolOptions.
imageConversionQuality
imageConversionQuality:number
JPEG quality a lossless image is converted at, kept apart from imageJpegQuality.
imageJpegHandling
imageJpegHandling:"keep"|"compress"
What becomes of an already-lossy image on its way in: left as encoded, or recompressed.
imageJpegQuality
imageJpegQuality:number
imageMaxWidthHeight
imageMaxWidthHeight:number
imagePngHandling
imagePngHandling:"keep"|"optimize"|"jpeg"
What becomes of a lossless image on its way in: left alone, quantized, or converted.
imageResize
imageResize:boolean
Whether an image above imageMaxWidthHeight is scaled down on its way in. Off, the
bound governs nothing and only the re-encoding choices below can shrink anything.
Whether the desktop app is launched automatically when the user logs into their computer.
layoutOrientation
layoutOrientation:string
leftPaneVisible
leftPaneVisible:boolean
leftPaneWidth
leftPaneWidth:number
llmProviders
llmProviders:string
JSON array of configured LLM providers with their API keys
locale
locale:string
logRetentionDays
logRetentionDays:number
mainFontFamily
mainFontFamily:string
mainFontSize
mainFontSize:number
maxContentWidth
maxContentWidth:number
mcpEnabled
mcpEnabled:boolean
Whether the MCP (Model Context Protocol) server endpoint is enabled.
mfaMethod
mfaMethod:string
minDaysInFirstWeek
minDaysInFirstWeek:number
minTocHeadings
minTocHeadings:number
monospaceFontFamily
monospaceFontFamily:string
monospaceFontSize
monospaceFontSize:number
monospaceLigaturesEnabled
monospaceLigaturesEnabled:boolean
Whether the monospace font's programming ligatures (!= rendered as ≠, -> as →) are
left on. Off by default: the bundled JetBrains Mono ships them enabled, so users get them
without choosing them and repeatedly mistake them for their characters having been replaced.
monthlyBackupEnabled
monthlyBackupEnabled:boolean
motionEnabled
motionEnabled:boolean
nativeTitleBarVisible
nativeTitleBarVisible:boolean
newLayout
newLayout:boolean
ocrAutoProcessImages
ocrAutoProcessImages:boolean
ocrEnabled
ocrEnabled:boolean
ocrLanguage
ocrLanguage:string
ocrMinConfidence
ocrMinConfidence:string
openNoteContexts
openNoteContexts:string
overrideThemeFonts
overrideThemeFonts:boolean
passwordDerivedKeySalt
passwordDerivedKeySalt:string
passwordVerificationHash
passwordVerificationHash:string
passwordVerificationSalt
passwordVerificationSalt:string
pdfSignatures
pdfSignatures:string
The pdf.js reusable signature library, stored as a JSON string keyed by signature UUID
({ [uuid]: { description, signatureData } }). Persisted here — instead of pdf.js' default
per-browser localStorage — so saved signatures sync across devices.
protectedSessionTimeout
protectedSessionTimeout:number
protectedSessionTimeoutTimeScale
protectedSessionTimeoutTimeScale:number
recoveryCodeInitialVector
recoveryCodeInitialVector:string
recoveryCodeSecurityKey
recoveryCodeSecurityKey:string
recoveryCodesEncrypted
recoveryCodesEncrypted:string
redirectBareDomain
redirectBareDomain:boolean
revisionIgnoreNamedSnapshots
revisionIgnoreNamedSnapshots:boolean
revisionSnapshotNumberLimit
revisionSnapshotNumberLimit:number
revisionSnapshotTimeInterval
revisionSnapshotTimeInterval:number
revisionSnapshotTimeIntervalTimeScale
revisionSnapshotTimeIntervalTimeScale:number
rightPaneCollapsedItems
rightPaneCollapsedItems:string
rightPaneNoteMapType
rightPaneNoteMapType:string
Which map the connections tab draws, link or tree. A preference of the reader's rather than
a property of any one note: the tab is a lens on whatever note is being read, and a note map
that is a note's own thing — a note map note, a hoisted map — is told which to draw by that
note's own mapType label instead.
rightPaneSelectedTab
rightPaneSelectedTab:string
rightPaneVisible
rightPaneVisible:boolean
rightPaneWidth
rightPaneWidth:number
searchAutocompleteFuzzy
searchAutocompleteFuzzy:boolean
Whether fuzzy matching is enabled for autocomplete (typing in search bar). Disabled by default for faster response.
searchEnableFuzzyMatching
searchEnableFuzzyMatching:boolean
Whether fuzzy matching is enabled in search (matches similar words when exact matches are insufficient).
searchResultsPageSize
searchResultsPageSize:number
Number of search results shown per page on the full-search results view.
seenCallToActions
seenCallToActions:string
shadowsEnabled
shadowsEnabled:boolean
showLoginInShareTheme
showLoginInShareTheme:boolean
smoothScrollEnabled
smoothScrollEnabled:boolean
spellCheckEnabled
spellCheckEnabled:boolean
spellCheckLanguageCode
spellCheckLanguageCode:string
splitEditorOrientation
splitEditorOrientation:"horziontal"|"vertical"
sqlConsoleEnabled
sqlConsoleEnabled:boolean
syncIncomplete
syncIncomplete:boolean
syncMaxBlobContentSize
syncMaxBlobContentSize:number
syncProxy
syncProxy:string
syncServerHost
syncServerHost:string
syncServerHostOverridden
syncServerHostOverridden:boolean
Whether config.ini or an environment variable supplies the sync address. Read-only.
syncServerTimeout
syncServerTimeout:string
syncServerTimeoutTimeScale
syncServerTimeoutTimeScale:number
textNoteAutoLinkPreviewsEnabled
textNoteAutoLinkPreviewsEnabled:boolean
Whether a URL typed or pasted into a text note is automatically turned into a link preview. The "Link preview" dialog is unaffected and always inserts one on request.
textNoteCompletionEnabled
textNoteCompletionEnabled:boolean
Whether keyboard auto-completion for notes is triggered when typing @ in text notes (attribute editing is not affected).
textNoteContentHintsEnabled
textNoteContentHintsEnabled:boolean
Whether the editor surfaces content-area hints (bottom-corner popups that document how to interact with the element under the caret or pointer, e.g. task-state cycle, collapsible-summary shortcut, drag-handle label).
textNoteCustomReplacements
textNoteCustomReplacements:string
JSON: the user's own replacements, as { from, to } pairs — see CustomReplacement.
textNoteDoubleQuoteStyle
textNoteDoubleQuoteStyle:string
Which marks a typed "…" becomes: auto to follow the note's content language, off to
leave straight quotes alone, or the id of one of QUOTE_MARK_PRESETS to always use that pair
whatever the note is written in.
textNoteEditorMultilineToolbar
textNoteEditorMultilineToolbar:boolean
textNoteEditorType
textNoteEditorType:string
textNoteEmojiCompletionEnabled
textNoteEmojiCompletionEnabled:boolean
Whether keyboard auto-completion for emojis is triggered when typing :.
textNoteHtmlSupportEnabled
textNoteHtmlSupportEnabled:boolean
Whether the editor preserves the HTML tags it has no editing feature of its own for — the
ones named by allowedHtmlTags, carried through CKEditor's General HTML Support.
Off by default: GHS renders such a tag as an opaque blob that is awkward to navigate and, for
an unknown element, invisible while editing (#10989). The price of leaving it off is that
those tags are dropped from a note the first time it is edited and saved. The server-side
sanitizer reads the same allowedHtmlTags list and keeps accepting them on import either way,
so an imported note shows them correctly until it is edited.
textNoteMathReplacementsEnabled
textNoteMathReplacementsEnabled:boolean
Whether 1/2, !=, -> and their kin become ½, ≠, → as they are typed.
textNotePunctuationReplacementsEnabled
textNotePunctuationReplacementsEnabled:boolean
Whether ... becomes …, and -- / --- become an en/em dash, as they are typed.
textNoteSingleQuoteStyle
textNoteSingleQuoteStyle:string
The same for a typed '…', which conventions set a nested quotation in.
textNoteSlashCommandsEnabled
textNoteSlashCommandsEnabled:boolean
Whether keyboard auto-completion for editing commands is triggered when typing /.
For each keyboard action, there is a corresponding option which identifies the key combination defined by the user.