~/.yachiyo/config.toml holds settings and provider metadata. Model-provider
API keys and Vertex private keys live in the encrypted, device-local
provider-credentials.enc vault. Channel credentials live in
channels.toml .
Edit it through the app, through
yachiyo config set , or by hand. The file is rewritten in a
deterministic section order whenever the app saves, so hand edits survive but may
be reordered. Provider credentials are the exception: update them through
Settings or yachiyo provider update , not by editing the
blank compatibility fields below.
enabledTools = [ " read " , " write " , " edit " , " bash " , " grep " , " glob " , " webSearch " ]
The tool whitelist a run starts from, written by the app. It is not a settings
switch — the run mode you pick in the composer is
what decides a turn’s tool list. skillsRead and reviewThings are
runtime-managed and never appear here. See the tool list .
Default run mode: auto, explore, plan, chat, or custom. Defaults to
auto. See run modes .
Key Type Default Description sidebarVisibility"expanded" | "collapsed"expandedSidebar state language"auto" | "en" | "zh-CN"autoUI language; auto follows the system sidebarPreviewbooleantrueMessage previews in the sidebar toolCallDisplayMode"work-summary" | "tool-deck"tool-deckShow compact completed-work summaries or chronological tool decks themeIdstringmizuOne of mizu, sumi, ume, aoba, mint, fuji, yamabuki, gobyou, murasaki themeAppearance"system" | "light" | "dark"systemLight/dark mode uiFontSizenumber— UI font size chatFontSizenumber— Chat font size chatPanelOpacitynumber— Chat panel opacity updateChannel"stable" | "beta"— Which release channel to update from demoModebooleanfalseDemo/screenshot mode preventSystemSleepbooleanfalseKeep the machine awake during runs notifyRunCompletedbooleantrueNotify when a run finishes notifyCodingTaskStartedbooleantrueNotify when a delegated task starts notifyCodingTaskFinishedbooleantrueNotify when a delegated task finishes translatorShortcutstringCommandOrControl+Shift+TGlobal translator hotkey jotdownShortcutstringCommandOrControl+Shift+JGlobal jot-down hotkey
Key Type Default Description mode"off" | "simple" | "full"simpleHow much foreground-app activity to record accessibilityDeniedboolean— Set when you have explicitly denied accessibility for full mode ocr.enabledbooleanfalseCapture window text via OCR ocr.excludedAppsstring[][]Apps never OCR’d
Key Type Default Description activeRunEnterBehavior"enter-steers" | "enter-queues-follow-up"enter-steersWhat Enter does while a run is streaming stripCompactbooleantrueCompact long thread history stripCompactThresholdTokensnumber— Token count that triggers compaction autoMemoryDistillationbooleantrueDistill memory after runs inputBufferEnabledbooleanfalseBuffer typing before sending recapEnabledbooleantrueRecap context on resume imageToTextModelobject— { providerName, model }; falls back to the tool model
Key Type Description savedPathsstring[]Registered workspace directories pathLabelstablePath → label. Labels for paths no longer saved are pruned on write. editorAppstringApp used to open files terminalAppstringApp used to open a terminal markdownAppstringApp used to open Markdown
Key Type Description syncDirstringSync folder path. Empty disables sync on this device.
Key Type Description enabledstring[]Active skill names disabledstring[]Explicitly disabled skill names
Key Type Default Description mode"default" | "custom" | "disabled"defaultdefault reuses the chat model; disabled skips auxiliary generationproviderIdstring""Provider UUID when mode = "custom" providerNamestring""Provider display name modelstring""Model name
Key Type Description providerNamestringProvider for new chats modelstringModel for new chats
Prefer yachiyo provider set-default over editing this
directly.
Key Type Default Description enabledbooleantrueMaster switch for memory autoRecallbooleantruePull recalled memory into runs
Yachiyo selects and falls back between Bing, Google, Brave, DuckDuckGo, and Exa
automatically. This section stores browser-session metadata and optional Exa access;
it does not choose a provider.
Key Type Default Description browserSession.sourceBrowserstring— Browser the session was imported from browserSession.sourceProfileNamestring""Profile it came from browserSession.importedAtstring""Import timestamp browserSession.lastImportErrorstring""Last import error, if any exa.apiKeystring""Exa API key exa.baseUrlstring""Custom Exa endpoint
An array of tables, one per provider.
Key Type Description idstringStable UUID presetKeystringLinks to a built-in preset (e.g. openai, google-vertex) namestringDisplay name typestringopenai, openai-responses, openai-codex, anthropic, gemini, vertex, or vercel-gatewayapiKeystringBlank compatibility field; the credential is stored in the encrypted local vault baseUrlstringAPI base URL thinkingEnabledbooleanWhether reasoning is on by default reasoningtableEffort defaults and per-model reasoning config codexSessionPathstringPath to Codex auth.json, for openai-codex project, locationstringVertex only serviceAccountEmailstringVertex service-account email serviceAccountPrivateKeystringBlank compatibility field; the private key is stored in the encrypted local vault modelList.enabledstring[]Models shown in the picker modelList.disabledstring[]Known but hidden models modelList.imageIncapablestring[]Models that cannot accept images
Key Type Description keycodestringTrigger code; must start with a letter textstringText it expands to
External ACP agent profiles. Deprecated — see
subagents .
Key Type Description idstringStable identifier namestringDisplay name enabledbooleanWhether the profile is offered descriptionstringShown in the UI commandstringExecutable argsstring[]Arguments envtableExtra environment variables
Key Type Default Description mode"worker" | "acp"workerSubagent runtime backend enabledNamedAgentsstring[]all four Any of explore, plan, review, general preferredModelstable— Per-agent { providerName, model } overrides
Preset thread launchers.
Key Type Description idstringStable identifier iconstringEmoji or image reference iconType"emoji" | "image"How to interpret icon labelstringDisplay label workspacePathstringWorkspace the thread starts in privacyModebooleanStart the thread in privacy mode modelOverridetable{ providerName, model }ordernumberSort position
Caution
Model-provider secrets are not stored in this file; their encrypted vault stays
on this device and is not synced. config.toml can still contain other secrets,
including webSearch.exa.apiKey, and sync copies the file.
Do not commit it or put it in a shared folder.