Learn how the desktop app selects runtimes, starts Harness, and separates release and debug data.
The desktop shell separates managed application dependencies from Harness user data.
This allows core updates and development builds without mixing profile state.
<AppData> denotes the current user’s application data directory. These are the default paths; each profile lives under profiles/<id>/ in its data root.
Concern
Release
Debug
Default port
3080
3081
Harness data root
Non-empty DSH_HOME, otherwise ~/.dsh
Forced to ~/.dsh.dev; inherited DSH_HOME is ignored
Managed Node
<AppData>/runtime/
<AppData>/dev/runtime/
Default managed core
<AppData>/dependencies/dsh/
<AppData>/dev/dependencies/dsh/
Managed dependencies
<AppData>/dependencies/
<AppData>/dev/dependencies/
Settings store
.store.dat
.store.dev.dat
Service log
<AppData>/logs/dsh-web.log
<AppData>/dev/logs/dsh-web.dev.log
CLI PATH changes
Enabled by default; can be disabled in settings
Does not modify user PATH or overwrite the release dsh shim
The service binds to 127.0.0.1. If the preferred port is already occupied, startup
can select a higher free port and pass the resolved URL back to the desktop client. A
future launch can return to the preferred port after it becomes available.
Release builds enable the dsh / pnpm shims by default; disable them in settings if needed. Windows registers a user-level PATH entry. Unix maintains its own marked blocks in ~/.zshrc and ~/.bashrc, preserving other configuration. Open a new terminal afterward.
Harness and plugins can execute local code with your permissions. Profile and debug directory separation is not an operating-system sandbox.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"DeepSeek Harness Desktop","description":"Install, use, understand, and contribute to DeepSeek Harness Desktop.","colors":{"primary":"#3954D9","light":"#6F86FF","dark":"#3954D9"},"logo":{"light":"https://mintcdn.com/dshtauri/W8JDCavUgt_U5SDh/logo.svg?fit=max\u0026auto=format\u0026n=W8JDCavUgt_U5SDh\u0026q=85\u0026s=c83ecc41f49ccbff67ea22bdd563e21e","dark":"https://mintcdn.com/dshtauri/l-Z_FNNJ6JP59-rj/logo-dark.svg?fit=max\u0026auto=format\u0026n=l-Z_FNNJ6JP59-rj\u0026q=85\u0026s=a7702eccb65f2b1fbae04aaf1e5a6a5e"},"favicon":"https://mintcdn.com/dshtauri/99pBEUWwCU49421p/favicon.svg?fit=max\u0026auto=format\u0026n=99pBEUWwCU49421p\u0026q=85\u0026s=2b71309a55c41024f5d09f2e0e49e276","footer":{"socials":{"github":"https://github.com/dsh-tauri/deepseek-harness-desktop"}},"contextual":{"options":["copy","view","chatgpt","claude","cursor","vscode"],"display":"header"},"styling":{"latex":false},"navigation":{"languages":[{"language":"zh-CN","default":true,"navbar":{"links":[{"href":"/zh-CN/installation","label":"下载版本"}],"primary":{"type":"github","label":"GitHub","href":"https://github.com/dsh-tauri/deepseek-harness-desktop"}},"href":"zh-CN/why"},{"language":"en","navbar":{"links":[{"href":"/en/installation","label":"Downloads"}],"primary":{"type":"github","label":"GitHub","href":"https://github.com/dsh-tauri/deepseek-harness-desktop"}},"href":"en/why"}]}},"deployment":{"deploymentMetadataValue":{"subdomain":"dshtauri","hasAudioNarration":false,"actualSubdomain":"dshtauri","customDomains":[],"gitSource":{"type":"github","owner":"dsh-tauri","repo":"deepseek-harness-desktop-docs","deployBranch":"main","contentDirectory":"","isPrivate":false,"mountPath":"","label":""},"chroma":{"latestBuiltDeploymentHistoryId":"6ade6d43256b020fc34949c2","collectionId":"97e89542-f1a7-4f57-bb76-5103976b5df5","liveDeploymentHistoryId":"6ade6d43256b020fc34949c2","schemaVersion":"v3"},"entitlements":{"AI_CHAT":{"status":"DISABLED"}},"buildId":"6ade6d43256b020fc34949c2","clientVersion":"0.0.3966","searchFilterCounts":[{"language":"en","tag":"Built-in plugins","count":14},{"language":"zh-CN","tag":"内置插件","count":14},{"language":"en","tag":"Use Harness","count":11},{"language":"zh-CN","tag":"使用 Harness","count":11},{"language":"en","tag":"Introduction","count":5},{"language":"zh-CN","tag":"简介","count":5},{"language":"en","tag":"Development","count":4},{"language":"zh-CN","tag":"开发","count":4},{"language":"en","tag":"Architecture","count":3},{"language":"zh-CN","tag":"架构","count":3},{"language":"en","tag":"Troubleshooting and data","count":2},{"language":"zh-CN","tag":"故障排除与数据","count":2}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true},"hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-v7-file-tree","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"pause-universal-search-reconcile","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"per-site-search-delta","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-private-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-nav-generations","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"byok-sep-25","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-agent-model-picker","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"isAtlas":false,"googleFontsInlined":false},"customCss":[{"filePath":"styles.css","content":":root{--dsh-blue:#4d6bfe}.hero-title{letter-spacing:-.03em}code{font-variant-ligatures:none}"}],"page":{"pagePath":"en/architecture/runtime-and-data","slug":"/en/architecture/runtime-and-data","pageMetadata":{"title":"Runtime and data","description":"Learn how the desktop app selects runtimes, starts Harness, and separates release and debug data.","href":"/en/architecture/runtime-and-data"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"Learn how the desktop app selects runtimes, starts Harness, and separates release and debug data.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,code:`code`,li:`li`,p:`p`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,ul:`ul`,..._provideComponents(),...props.components},{Heading,Table,Warning}=_components;if(!Heading)_missingMdxReference(`Heading`,true);if(!Table)_missingMdxReference(`Table`,true);if(!Warning)_missingMdxReference(`Warning`,true);return _jsxs(_Fragment,{children:[_jsx(_components.p,{children:`The desktop shell separates managed application dependencies from Harness user data.\nThis allows core updates and development builds without mixing profile state.`}),`\n`,_jsx(Heading,{level:`2`,id:`runtime-selection`,children:`Runtime selection`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Item`}),_jsx(_components.th,{children:`Current value`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Desktop version`}),_jsxs(_components.td,{children:[_jsx(_components.code,{children:`0.20.0-beta.1`}),` (prerelease)`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Harness core`}),_jsxs(_components.td,{children:[`Recommended `,_jsx(_components.code,{children:`0.2.0-rc.2`}),`; the current manifest and local CLI validation minimum is `,_jsx(_components.code,{children:`0.1.5-rc.1`})]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Managed environment`}),_jsxs(_components.td,{children:[`Node.js `,_jsx(_components.code,{children:`v22.22.0`}),`, pnpm `,_jsx(_components.code,{children:`11.7.0`})]})]})]})]}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`The minimum core version does not guarantee compatibility with every plugin.`}),`\n`,_jsx(_components.li,{children:`Compatible local tools are reused; missing tools or incompatible native-module ABIs can trigger managed fallback.`}),`\n`,_jsxs(_components.li,{children:[`The managed core comes from `,_jsx(_components.a,{href:`https://github.com/dsh-tauri/deepseek-harness-pkg`,children:`deepseek-harness-pkg`}),`, using official GitHub assets first and a mirror on failure.`]}),`\n`,_jsxs(_components.li,{children:[`The `,_jsx(_components.a,{href:`https://github.com/dsh-tauri/deepseek-harness-desktop/blob/main/src-tauri/resources/manifest.jsonc`,children:`runtime manifest`}),` defines the versions.`]}),`\n`]}),`\n`,_jsx(Heading,{level:`2`,id:`release-and-debug-isolation`,children:`Release and debug isolation`}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.code,{children:`\u003cAppData>`}),` denotes the current user’s application data directory. These are the default paths; each profile lives under `,_jsx(_components.code,{children:`profiles/\u003cid>/`}),` in its data root.`]}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Concern`}),_jsx(_components.th,{children:`Release`}),_jsx(_components.th,{children:`Debug`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Default port`}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`3080`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`3081`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Harness data root`}),_jsxs(_components.td,{children:[`Non-empty `,_jsx(_components.code,{children:`DSH_HOME`}),`, otherwise `,_jsx(_components.code,{children:`~/.dsh`})]}),_jsxs(_components.td,{children:[`Forced to `,_jsx(_components.code,{children:`~/.dsh.dev`}),`; inherited `,_jsx(_components.code,{children:`DSH_HOME`}),` is ignored`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Managed Node`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`\u003cAppData>/runtime/`})}),_jsx(_components.td,{children:_jsx(_components.code,{children:`\u003cAppData>/dev/runtime/`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Default managed core`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`\u003cAppData>/dependencies/dsh/`})}),_jsx(_components.td,{children:_jsx(_components.code,{children:`\u003cAppData>/dev/dependencies/dsh/`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Managed dependencies`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`\u003cAppData>/dependencies/`})}),_jsx(_components.td,{children:_jsx(_components.code,{children:`\u003cAppData>/dev/dependencies/`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Settings store`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`.store.dat`})}),_jsx(_components.td,{children:_jsx(_components.code,{children:`.store.dev.dat`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Service log`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`\u003cAppData>/logs/dsh-web.log`})}),_jsx(_components.td,{children:_jsx(_components.code,{children:`\u003cAppData>/dev/logs/dsh-web.dev.log`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`CLI PATH changes`}),_jsx(_components.td,{children:`Enabled by default; can be disabled in settings`}),_jsxs(_components.td,{children:[`Does not modify user PATH or overwrite the release `,_jsx(_components.code,{children:`dsh`}),` shim`]})]})]})]}),`\n`,_jsx(Heading,{level:`2`,id:`port-behavior`,children:`Port behavior`}),`\n`,_jsxs(_components.p,{children:[`The service binds to `,_jsx(_components.code,{children:`127.0.0.1`}),`. If the preferred port is already occupied, startup\ncan select a higher free port and pass the resolved URL back to the desktop client. A\nfuture launch can return to the preferred port after it becomes available.`]}),`\n`,_jsx(Heading,{level:`2`,id:`cli-integration`,children:`CLI integration`}),`\n`,_jsxs(_components.p,{children:[`Release builds enable the `,_jsx(_components.code,{children:`dsh`}),` / `,_jsx(_components.code,{children:`pnpm`}),` shims by default; disable them in settings if needed. Windows registers a user-level PATH entry. Unix maintains its own marked blocks in `,_jsx(_components.code,{children:`~/.zshrc`}),` and `,_jsx(_components.code,{children:`~/.bashrc`}),`, preserving other configuration. Open a new terminal afterward.`]}),`\n`,_jsx(Warning,{children:`Harness and plugins can execute local code with your permissions. Profile and debug directory separation is not an operating-system sandbox.`})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Runtime and data","description":"Learn how the desktop app selects runtimes, starts Harness, and separates release and debug data.","href":"/en/architecture/runtime-and-data"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Runtime selection","slug":"runtime-selection","depth":2,"children":[]},{"title":"Release and debug isolation","slug":"release-and-debug-isolation","depth":2,"children":[]},{"title":"Port behavior","slug":"port-behavior","depth":2,"children":[]},{"title":"CLI integration","slug":"cli-integration","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":[],"subdomain":"dshtauri","siteName":"DeepSeek Harness Desktop","title":"Runtime and data - DeepSeek Harness Desktop","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{"zh-CN":{"href":"/zh-CN/architecture/runtime-and-data","matchLevel":1},"en":{"href":"/en/architecture/runtime-and-data","matchLevel":0}}},"lastModified":"2026-09-30T09:52:59.693Z","originalFileLocation":"en/architecture/runtime-and-data.mdx","locale":"en"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Learn how the desktop app selects runtimes, starts Harness, and separates release and debug data.\">\u003cmeta data-mint-head name=\"application-name\" content=\"DeepSeek Harness Desktop\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/dshtauri/sa3hrL-zQBq16AQF/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/dshtauri/sa3hrL-zQBq16AQF/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/dshtauri/sa3hrL-zQBq16AQF/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/dshtauri/sa3hrL-zQBq16AQF/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/dshtauri/sa3hrL-zQBq16AQF/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/dshtauri/sa3hrL-zQBq16AQF/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/dshtauri/sa3hrL-zQBq16AQF/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/dshtauri/sa3hrL-zQBq16AQF/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/dshtauri/sa3hrL-zQBq16AQF/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Runtime and data - DeepSeek Harness Desktop\">\u003cmeta data-mint-head property=\"og:description\" content=\"Learn how the desktop app selects runtimes, starts Harness, and separates release and debug data.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"DeepSeek Harness Desktop\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://dshtauri.mintlify.app/en/architecture/runtime-and-data\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://dshtauri.mintlify.app/_mintlify/api/og/v2?division=Architecture\u0026amp;title=Runtime+and+data\u0026amp;description=Learn+how+the+desktop+app+selects+runtimes%2C+starts+Harness%2C+and+separates+release+and+debug+data.\u0026amp;theme=e13c86e45fb2958ea825d6d4\u0026amp;signature=91290b09935023ca20e1e8b02d9bbc5187b992fd841e2c73f827076be1748bc6\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Runtime and data - DeepSeek Harness Desktop\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Learn how the desktop app selects runtimes, starts Harness, and separates release and debug data.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://dshtauri.mintlify.app/_mintlify/api/og/v2?division=Architecture\u0026amp;title=Runtime+and+data\u0026amp;description=Learn+how+the+desktop+app+selects+runtimes%2C+starts+Harness%2C+and+separates+release+and+debug+data.\u0026amp;theme=e13c86e45fb2958ea825d6d4\u0026amp;signature=91290b09935023ca20e1e8b02d9bbc5187b992fd841e2c73f827076be1748bc6\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/dshtauri/sa3hrL-zQBq16AQF/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"DeepSeek Harness Desktop\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#3954D9\">\u003clink data-mint-head rel=\"canonical\" href=\"https://dshtauri.mintlify.app/en/architecture/runtime-and-data\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/en/architecture/runtime-and-data.md\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"en\" href=\"https://dshtauri.mintlify.app/en/architecture/runtime-and-data\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"zh-CN\" href=\"https://dshtauri.mintlify.app/zh-CN/architecture/runtime-and-data\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"x-default\" href=\"https://dshtauri.mintlify.app/zh-CN/architecture/runtime-and-data\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://dshtauri.mintlify.app/#organization\",\"name\":\"DeepSeek Harness Desktop\",\"url\":\"https://dshtauri.mintlify.app\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/dshtauri/W8JDCavUgt_U5SDh/logo.svg?fit=max\u0026auto=format\u0026n=W8JDCavUgt_U5SDh\u0026q=85\u0026s=c83ecc41f49ccbff67ea22bdd563e21e\"}},{\"@type\":\"WebSite\",\"@id\":\"https://dshtauri.mintlify.app#website\",\"name\":\"DeepSeek Harness Desktop\",\"url\":\"https://dshtauri.mintlify.app\",\"publisher\":{\"@id\":\"https://dshtauri.mintlify.app/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://dshtauri.mintlify.app/en/architecture/runtime-and-data#webpage\",\"url\":\"https://dshtauri.mintlify.app/en/architecture/runtime-and-data\",\"name\":\"Runtime and data\",\"description\":\"Learn how the desktop app selects runtimes, starts Harness, and separates release and debug data.\",\"dateModified\":\"2026-09-30T09:52:59.693Z\",\"isPartOf\":{\"@id\":\"https://dshtauri.mintlify.app#website\"},\"breadcrumb\":{\"@id\":\"https://dshtauri.mintlify.app/en/architecture/runtime-and-data#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://dshtauri.mintlify.app/en/architecture/runtime-and-data#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Architecture\",\"item\":\"https://dshtauri.mintlify.app/en/architecture/overview\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Runtime and data\",\"item\":\"https://dshtauri.mintlify.app/en/architecture/runtime-and-data\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://dshtauri.mintlify.app/en/architecture/runtime-and-data#article\",\"headline\":\"Runtime and data\",\"name\":\"Runtime and data\",\"description\":\"Learn how the desktop app selects runtimes, starts Harness, and separates release and debug data.\",\"url\":\"https://dshtauri.mintlify.app/en/architecture/runtime-and-data\",\"mainEntityOfPage\":{\"@id\":\"https://dshtauri.mintlify.app/en/architecture/runtime-and-data#webpage\"},\"dateModified\":\"2026-09-30T09:52:59.693Z\",\"publisher\":{\"@id\":\"https://dshtauri.mintlify.app/#organization\"},\"isPartOf\":{\"@id\":\"https://dshtauri.mintlify.app#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"DeepSeek Harness Desktop\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"DeepSeek Harness Desktop","nav":{"global":null,"languages":[{"language":"zh-CN","default":true,"navbar":{"links":[{"href":"/zh-CN/installation","label":"下载版本"}],"primary":{"type":"github","label":"GitHub","href":"https://github.com/dsh-tauri/deepseek-harness-desktop"}},"pages":[{"title":"zh-CN","href":"/zh-CN/architecture/runtime-and-data"}]},{"language":"en","navbar":{"links":[{"href":"/en/installation","label":"Downloads"}],"primary":{"type":"github","label":"GitHub","href":"https://github.com/dsh-tauri/deepseek-harness-desktop"}},"groups":[{"group":"Introduction","icon":"rocket","pages":[{"title":"Why?","href":"/en/why"},{"title":"Quickstart","href":"/en/quickstart"},{"title":"Installation","href":"/en/installation"},{"title":"First run","href":"/en/getting-started/first-run"},{"title":"Configure a model","href":"/en/getting-started/configure-model"}]},{"group":"Use Harness","icon":"desktop","pages":[{"title":"Interface tour","href":"/en/guides/interface"},{"title":"Workspaces and sessions","href":"/en/guides/workspaces-and-sessions"},{"title":"Desktop settings","href":"/en/guides/settings"},{"title":"Appearance","href":"/en/guides/appearance"},{"title":"Profiles and cores","href":"/en/guides/profiles-and-cores"},{"title":"Data management","href":"/en/guides/data-management"},{"title":"Mobile remote access","href":"/en/guides/mobile-remote-access"},{"title":"Plugins","href":"/en/guides/plugins"},{"title":"CLI integration","href":"/en/guides/cli-integration"},{"title":"Updates","href":"/en/guides/updates"},{"title":"Desktop client comparison","href":"/en/guides/comparison"}]},{"group":"Built-in plugins","icon":"puzzle-piece","pages":[{"title":"Built-in plugins overview","href":"/en/built-in-plugins/overview"},{"title":"DSH Tauri","href":"/en/built-in-plugins/dsh-tauri"},{"title":"DSH Tauri UI","href":"/en/built-in-plugins/dsh-tauri-ui"},{"title":"Mobile interface","href":"/en/built-in-plugins/dsh-tauri-mobile-ui"},{"title":"Local Codex and Claude kernels","href":"/en/built-in-plugins/dsh-tauri-kernel"},{"title":"Worktree","href":"/en/built-in-plugins/dsh-tauri-worktree"},{"title":"Extensions","href":"/en/built-in-plugins/dsh-tauri-extension"},{"title":"Scheduled tasks","href":"/en/built-in-plugins/dsh-tauri-scheduler"},{"title":"Archive","href":"/en/built-in-plugins/dsh-tauri-archive"},{"title":"Pet","href":"/en/built-in-plugins/dsh-tauri-pet"},{"title":"Context menu","href":"/en/built-in-plugins/dsh-tauri-rightclick"},{"title":"Model configuration","href":"/en/built-in-plugins/dsh-tauri-model"},{"title":"Remote access","href":"/en/built-in-plugins/dsh-tauri-remote"},{"title":"Native notifications","href":"/en/built-in-plugins/dsh-tauri-notification"}]},{"group":"Troubleshooting and data","icon":"life-ring","pages":[{"title":"Troubleshooting","href":"/en/help/troubleshooting"},{"title":"Data, privacy, and security","href":"/en/help/data-and-privacy"}]},{"group":"Architecture","icon":"diagram-project","pages":[{"title":"Architecture overview","description":"Understand how the Tauri shell, local Harness service, and embedded web UI work together.","href":"/en/architecture/overview"},{"title":"Runtime and data","href":"/en/architecture/runtime-and-data"},{"title":"Plugin system","description":"Understand plugin delivery, profile scope, desktop integration, and recovery.","href":"/en/architecture/plugin-system"}]},{"group":"Development","icon":"code","pages":[{"title":"Development setup","href":"/en/development/setup"},{"title":"Project structure","href":"/en/development/project-structure"},{"title":"Testing and quality checks","href":"/en/development/testing"},{"title":"Build and release","href":"/en/development/release"}]}]}]},"title":"Runtime and data - DeepSeek Harness Desktop","buildId":"dpl_cadrRc5H9XQiJQbDFN5mcYRs2PAj","deploymentId":"dpl_cadrRc5H9XQiJQbDFN5mcYRs2PAj","dynamics":[],"chunks":[]}