Expose your backend or connect to Mains running on another machine
Mains Connect lets you use the local backend, share this machine with another device, or connect to a backend on another machine.Older releases and links call this feature Relay. The existing Relay documentation URLs continue to describe Mains Connect.
Open Settings → Mains Connect. This machine controls hosting. Run on lists your local and saved remote backends.Choose a saved backend and connect. Return to Local (this machine) when you want your Mac’s work again.The browser client is already connected to the server that served it. It does not offer the desktop’s backend-switching controls.
Remote clients use one backend’s database. Mains Connect does not merge workspaces or histories from independent machines.Bridge is the separate feature that syncs Atlas and chats between independent backends. Use it when you want another device’s work available even while that device is off. A chat synced through Bridge is read-only on other devices, and Continue with remote control opens Settings → Mains Connect to act on it.
Use device pairing for a phone and one-use login links for browsers. A desktop direct or SSH connection can use the backend’s owner token.Keep client and backend versions compatible. Native desktop features such as Lens and the embedded browser do not become remote capabilities merely because the backend is connected.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Mains","description":"Code, Work, and Chat with AI agents in Mains, with Atlas and connected task context","colors":{"primary":"#878580","light":"#fff","dark":"#0C0C0C"},"logo":{"light":"https://mintcdn.com/truelaurel/5xCc2j6h7zMlnmQQ/images/docs.png?fit=max\u0026auto=format\u0026n=5xCc2j6h7zMlnmQQ\u0026q=85\u0026s=586a97bae16dc9d71532c86534535906","dark":"https://mintcdn.com/truelaurel/5xCc2j6h7zMlnmQQ/images/docs.png?fit=max\u0026auto=format\u0026n=5xCc2j6h7zMlnmQQ\u0026q=85\u0026s=586a97bae16dc9d71532c86534535906"},"favicon":"https://mintcdn.com/truelaurel/b8FimJWSWgesRQSk/favicon.svg?fit=max\u0026auto=format\u0026n=b8FimJWSWgesRQSk\u0026q=85\u0026s=03d7b53377c5ffeb60b5c440bf3ba4a6","appearance":{"default":"system"},"background":{"color":{"dark":"#0C0C0C"}},"navbar":{"links":[{"href":"https://mains.dev","label":"Website"},{"href":"mailto:team@mains.dev","label":"Support"}],"primary":{"type":"button","label":"Download","href":"https://github.com/mainsdotdev/mains/releases/latest"}},"footer":{"socials":{"github":"https://github.com/mainsdotdev/mains"}},"fonts":{"family":"Geist"},"contextual":{"options":["copy","view","chatgpt","claude","perplexity","mcp","cursor","vscode"],"display":"header"},"styling":{"latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"truelaurel","hasAudioNarration":false,"actualSubdomain":"truelaurel","customDomains":["docs.mains.dev"],"gitSource":{"type":"github","owner":"mainsdotdev","repo":"docs","deployBranch":"master","contentDirectory":"","isPrivate":false,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6ae03dfe87a96311da527476","collectionId":"67508890-d3aa-47a1-b62f-29d92008dcd0","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6ae03dfe87a96311da527476"},"entitlements":{},"buildId":"6ae03dfe87a96311da527476","clientVersion":"0.0.4067","searchFilterCounts":[{"language":"default","tag":"Guides","count":46},{"language":"default","tag":"Integrations","count":13},{"language":"default","tag":"Agents","count":11},{"language":"default","tag":"Code workflow","count":10},{"language":"default","tag":"Connections","count":8},{"language":"default","tag":"Core concepts","count":7},{"language":"default","tag":"Working with agents","count":6},{"language":"default","tag":"Mains Connect","count":6},{"language":"default","tag":"Codex","count":5},{"language":"default","tag":"Extend your agents","count":5}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"","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":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"rbac-expansion","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":"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":"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":"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":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","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":"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":"workos-sso-scim","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},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-serve","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":true},"customCss":[],"page":{"pagePath":"relay/overview","slug":"/relay/overview","pageMetadata":{"title":"Mains Connect","description":"Expose your backend or connect to Mains running on another machine","icon":"tower-broadcast","href":"/relay/overview"},"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: \"Expose your backend or connect to Mains running on another machine\"\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`,p:`p`,strong:`strong`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,..._provideComponents(),...props.components},{Heading,Table}=_components;if(!Heading)_missingMdxReference(`Heading`,true);if(!Table)_missingMdxReference(`Table`,true);return _jsxs(_Fragment,{children:[_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Mains Connect`}),` lets you use the local backend, share this machine with another device, or connect to a backend on another machine.`]}),`\n`,_jsxs(_components.p,{children:[`Older releases and links call this feature `,_jsx(_components.strong,{children:`Relay`}),`. The existing Relay documentation URLs continue to describe Mains Connect.`]}),`\n`,_jsx(Heading,{level:`2`,id:`choose-where-work-runs`,children:`Choose where work runs`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Setup`}),_jsx(_components.th,{children:`Use it for`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.a,{href:`/relay/share-this-machine`,children:`Share this machine`})}),_jsx(_components.td,{children:`Let a phone, browser, or another desktop reach the running Mac app`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.a,{href:`/server`,children:`Standalone server`})}),_jsx(_components.td,{children:`Keep a backend available without Electron on macOS or Linux`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.a,{href:`/relay/ssh-tunnel`,children:`SSH tunnel`})}),_jsx(_components.td,{children:`Reach a remote backend without exposing its port to the network`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.a,{href:`/relay/direct-connection`,children:`Direct URL`})}),_jsx(_components.td,{children:`Connect over a trusted LAN or secure Tailscale/TLS endpoint`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.a,{href:`/mobile`,children:`iPhone companion`})}),_jsx(_components.td,{children:`Follow runs, send prompts, and answer requests from your phone`})]})]})]}),`\n`,_jsx(_components.p,{children:`Repositories, provider credentials, and execution stay on the chosen backend. The client displays its work and sends requests.`}),`\n`,_jsx(Heading,{level:`2`,id:`open-connect`,children:`Open Connect`}),`\n`,_jsxs(_components.p,{children:[`Open `,_jsx(_components.strong,{children:`Settings → Mains Connect`}),`. `,_jsx(_components.strong,{children:`This machine`}),` controls hosting. `,_jsx(_components.strong,{children:`Run on`}),` lists your local and saved remote backends.`]}),`\n`,_jsxs(_components.p,{children:[`Choose a saved backend and connect. Return to `,_jsx(_components.strong,{children:`Local (this machine)`}),` when you want your Mac’s work again.`]}),`\n`,_jsx(_components.p,{children:`The browser client is already connected to the server that served it. It does not offer the desktop’s backend-switching controls.`}),`\n`,_jsx(Heading,{level:`2`,id:`it-is-a-connection-not-a-sync`,children:`It is a connection, not a sync`}),`\n`,_jsx(_components.p,{children:`Remote clients use one backend’s database. Mains Connect does not merge workspaces or histories from independent machines.`}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.a,{href:`/bridge/overview`,children:`Bridge`}),` is the separate feature that syncs Atlas and chats between independent backends. Use it when you want another device’s work available even while that device is off. A chat synced through Bridge is read-only on other devices, and `,_jsx(_components.strong,{children:`Continue with remote control`}),` opens `,_jsx(_components.strong,{children:`Settings → Mains Connect`}),` to act on it.`]}),`\n`,_jsx(Heading,{level:`2`,id:`access-and-compatibility`,children:`Access and compatibility`}),`\n`,_jsx(_components.p,{children:`Use device pairing for a phone and one-use login links for browsers. A desktop direct or SSH connection can use the backend’s owner token.`}),`\n`,_jsx(_components.p,{children:`Keep client and backend versions compatible. Native desktop features such as Lens and the embedded browser do not become remote capabilities merely because the backend is connected.`})]})}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":"Mains Connect","description":"Expose your backend or connect to Mains running on another machine","icon":"tower-broadcast","href":"/relay/overview"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Choose where work runs","slug":"choose-where-work-runs","depth":2,"children":[]},{"title":"Open Connect","slug":"open-connect","depth":2,"children":[]},{"title":"It is a connection, not a sync","slug":"it-is-a-connection-not-a-sync","depth":2,"children":[]},{"title":"Access and compatibility","slug":"access-and-compatibility","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":[],"subdomain":"truelaurel","siteName":"Mains","title":"Mains Connect - Mains","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-10-27T06:00:34.730Z","originalFileLocation":"relay/overview.mdx"},"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=\"Expose your backend or connect to Mains running on another machine\">\u003cmeta data-mint-head name=\"application-name\" content=\"Mains\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/truelaurel/NVSVhGTCMe3yQpu6/_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/truelaurel/NVSVhGTCMe3yQpu6/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/truelaurel/NVSVhGTCMe3yQpu6/_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/truelaurel/NVSVhGTCMe3yQpu6/_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/truelaurel/NVSVhGTCMe3yQpu6/_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/truelaurel/NVSVhGTCMe3yQpu6/_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/truelaurel/NVSVhGTCMe3yQpu6/_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/truelaurel/NVSVhGTCMe3yQpu6/_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/truelaurel/NVSVhGTCMe3yQpu6/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Mains Connect - Mains\">\u003cmeta data-mint-head property=\"og:description\" content=\"Expose your backend or connect to Mains running on another machine\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Mains\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.mains.dev/relay/overview\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://truelaurel.mintlify.app/_mintlify/api/og/v2?division=Mains+Connect\u0026amp;title=Mains+Connect\u0026amp;description=Expose+your+backend+or+connect+to+Mains+running+on+another+machine\u0026amp;theme=bc054ea503af9c21eb79f93d\u0026amp;signature=1e3cb7ed15f813eb7a22b0ed0280d4221541596d2ed99bc47e578b55429374c9\">\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=\"Mains Connect - Mains\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Expose your backend or connect to Mains running on another machine\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://truelaurel.mintlify.app/_mintlify/api/og/v2?division=Mains+Connect\u0026amp;title=Mains+Connect\u0026amp;description=Expose+your+backend+or+connect+to+Mains+running+on+another+machine\u0026amp;theme=bc054ea503af9c21eb79f93d\u0026amp;signature=1e3cb7ed15f813eb7a22b0ed0280d4221541596d2ed99bc47e578b55429374c9\">\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/truelaurel/NVSVhGTCMe3yQpu6/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Mains\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#878580\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.mains.dev/relay/overview\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/relay/overview.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.mains.dev/#organization\",\"name\":\"Mains\",\"url\":\"https://docs.mains.dev\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/truelaurel/5xCc2j6h7zMlnmQQ/images/docs.png?fit=max\u0026auto=format\u0026n=5xCc2j6h7zMlnmQQ\u0026q=85\u0026s=586a97bae16dc9d71532c86534535906\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.mains.dev#website\",\"name\":\"Mains\",\"url\":\"https://docs.mains.dev\",\"publisher\":{\"@id\":\"https://docs.mains.dev/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.mains.dev/relay/overview#webpage\",\"url\":\"https://docs.mains.dev/relay/overview\",\"name\":\"Mains Connect\",\"description\":\"Expose your backend or connect to Mains running on another machine\",\"dateModified\":\"2026-10-27T06:00:34.730Z\",\"isPartOf\":{\"@id\":\"https://docs.mains.dev#website\"},\"breadcrumb\":{\"@id\":\"https://docs.mains.dev/relay/overview#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.mains.dev/relay/overview#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Mains\",\"item\":\"https://docs.mains.dev\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Mains Connect\",\"item\":\"https://docs.mains.dev/relay/overview\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://docs.mains.dev/relay/overview#article\",\"headline\":\"Mains Connect\",\"name\":\"Mains Connect\",\"description\":\"Expose your backend or connect to Mains running on another machine\",\"url\":\"https://docs.mains.dev/relay/overview\",\"mainEntityOfPage\":{\"@id\":\"https://docs.mains.dev/relay/overview#webpage\"},\"dateModified\":\"2026-10-27T06:00:34.730Z\",\"publisher\":{\"@id\":\"https://docs.mains.dev/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.mains.dev#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Mains\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Mains","nav":{"global":null,"tabs":[{"tab":"Guides","groups":[{"group":"Getting started","pages":[{"title":"Introduction","icon":"house","href":"/introduction"},{"title":"Install Mains","icon":"download","href":"/install"},{"title":"Quickstart","icon":"bolt","href":"/quickstart"}]},{"group":"Core concepts","pages":[{"title":"Spaces","icon":"layer-group","href":"/spaces"},{"title":"Code, Work, and Chat","icon":"sliders","href":"/modes"},{"title":"Projects","icon":"diagram-project","href":"/projects"},{"title":"Workspaces","icon":"folder-open","href":"/workspaces"},{"title":"Collections and sources","icon":"folder-open","href":"/collections"},{"title":"Runs and conversations","icon":"wave-pulse","href":"/runs"},{"title":"Multiple sessions","icon":"comments","href":"/multi-session"}]},{"group":"Atlas","pages":[{"title":"Atlas","icon":"book-open","href":"/atlas"},{"title":"Atlas Pages","icon":"file-lines","href":"/pages"},{"title":"Documents and deliverables","icon":"file","href":"/documents"}]},{"group":"Working with agents","pages":[{"title":"Context and attachments","icon":"paperclip","href":"/context-injection"},{"title":"Approvals and questions","icon":"hand","href":"/approvals"},{"title":"Voice conversations","icon":"microphone","href":"/voice"},{"title":"In-app browser","icon":"globe","href":"/browser"},{"title":"Lens","icon":"camera","href":"/lens"},{"title":"Search","icon":"magnifying-glass","href":"/search"}]},{"group":"Code workflow","pages":[{"title":"Code workflow","icon":"route","href":"/workflow"},{"title":"Files and editor","icon":"folder-tree","href":"/file-explorer"},{"title":"Review changes","icon":"code-compare","href":"/diff-viewer"},{"title":"Turn changes and Undo","icon":"rotate-left","href":"/turn-changes"},{"title":"Git actions","icon":"code-branch","href":"/git-actions"},{"title":"Linked tasks","icon":"link","href":"/linked-tasks"},{"title":"Tasks","icon":"list-check","href":"/tasks"},{"title":"Pull request review","icon":"code-pull-request","href":"/pull-requests"},{"title":"Agent code reviews","icon":"comment-dots","href":"/reviews"},{"title":"Terminal","icon":"terminal","href":"/terminal"}]},{"group":"Scheduling","pages":[{"title":"Pulse","icon":"clock","href":"/pulse"},{"title":"Connection auto sync","description":"Refresh connected-service data on an interval while the backend runs","icon":"arrows-rotate","href":"/automations"}]},{"group":"Mains Connect","pages":[{"title":"Mains Connect","icon":"tower-broadcast","href":"/relay/overview"},{"title":"Share this machine","description":"Make the running desktop backend reachable and pair another device","icon":"desktop","href":"/relay/share-this-machine"},{"title":"SSH tunnel","icon":"terminal","href":"/relay/ssh-tunnel"},{"title":"Direct connection","icon":"network-wired","href":"/relay/direct-connection"},{"title":"Mains Server","icon":"server","href":"/server"},{"title":"iPhone companion","icon":"mobile-screen","href":"/mobile"}]},{"group":"Bridge","pages":[{"title":"Bridge","icon":"arrows-rotate","href":"/bridge/overview"},{"title":"Get started with Bridge","icon":"right-to-bracket","href":"/bridge/get-started"},{"title":"Work across devices","icon":"laptop","href":"/bridge/work-across-devices"},{"title":"Bridge privacy and security","icon":"lock","href":"/bridge/security"}]},{"group":"Preferences","pages":[{"title":"Settings","icon":"gear","href":"/settings"},{"title":"Keyboard shortcuts","icon":"keyboard","href":"/keyboard-shortcuts"},{"title":"Usage dashboard","icon":"chart-column","href":"/stats"},{"title":"Privacy and data","icon":"shield","href":"/privacy"},{"title":"FAQ and troubleshooting","icon":"circle-question","href":"/faq"}]}]},{"tab":"Agents","pages":[{"title":"Agents","href":"/claude/configuration"}]},{"tab":"Integrations","pages":[{"title":"Integrations","href":"/connections"}]}]},"basePath":"","title":"Mains Connect - Mains","buildId":"dpl_9VVk5y1P8k1ATeJguVngy9Q3cmbD","deploymentId":"dpl_9VVk5y1P8k1ATeJguVngy9Q3cmbD","dynamics":[],"chunks":[]}