Coder1 is built on a local-first security principle: your code never leaves your computer. The Bridge acts as a secure relay — it forwards commands and responses, but never stores them.
What we CAN see: What we CANNOT see:✅ "User sent a command" ❌ Your actual code✅ "Command completed" ❌ Your file contents✅ Connection timing ❌ Command contents✅ Bridge version ❌ Your directory structure
Connecting the Bridge requires two factors: the pairing code (generated in your browser session) and the Bridge client running on your machine.
1. You click "Bridge" in the IDE → server generates 6-digit code2. Code is single-use and expires in 5 minutes3. You enter the code in your local terminal4. Server validates code, issues a session JWT5. All subsequent commands use the JWT — no more codes needed
Stolen code scenario: An attacker who intercepts your pairing code still can’t connect — they’d also need access to your browser session AND have the Bridge running on your computer. Residual risk: LOW.
The Bridge runs under your user account — not root. It inherits your shell permissions, so it can only do what you could do yourself in a terminal. No elevated privileges are requested or required.
The Bridge client is open source and fully auditable:
# Review the code before installinggit clone https://github.com/MichaelrKraft/coder1-ide.gitcd coder1-ide/bridge-cli# Read the source, then install:npm install && npm link
Found a vulnerability? Please email us with subject “SECURITY: [issue]” before public disclosure. We commit to responding within 48 hours and will credit you in release notes if desired.GitHub Issues:github.com/MichaelrKraft/coder1-ide/issues
Please don’t post security vulnerabilities publicly before giving us a chance to fix them. We take security seriously and move fast on fixes.
A third-party security audit is planned before General Availability. The Bridge is currently in alpha — code is iterating quickly. Full audit scope: penetration testing, code review, infrastructure assessment, SOC 2 / GDPR compliance.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Coder1","colors":{"primary":"#00FFFF","light":"#07C983","dark":"#15803D"},"logo":{"light":"https://mintcdn.com/coder1/X8Dqu3Sc8rJMBYU8/logo/light.svg?fit=max\u0026auto=format\u0026n=X8Dqu3Sc8rJMBYU8\u0026q=85\u0026s=ae9dbe41fef4e7da10f713b1148695df","dark":"https://mintcdn.com/coder1/X8Dqu3Sc8rJMBYU8/logo/dark.svg?fit=max\u0026auto=format\u0026n=X8Dqu3Sc8rJMBYU8\u0026q=85\u0026s=8358cf869960e70b3d87a8a0e7e079d8"},"favicon":"https://mintcdn.com/coder1/X8Dqu3Sc8rJMBYU8/favicon.svg?fit=max\u0026auto=format\u0026n=X8Dqu3Sc8rJMBYU8\u0026q=85\u0026s=c7b71492eb30abff1db420aa84d01bdf","navbar":{"links":[{"href":"mailto:hello@johnny5.ai","label":"Support"}],"primary":{"type":"button","label":"Open IDE","href":"https://coder1.ai/ide"}},"footer":{"socials":{"github":"https://github.com/MichaelrKraft/coder1-ide"}},"contextual":{"options":["copy","view","chatgpt","claude","perplexity"],"display":"header"},"styling":{"latex":true},"navigation":{"global":{"anchors":[{"anchor":"GitHub","icon":"github","href":"https://github.com/MichaelrKraft/coder1-ide"},{"anchor":"Get Started","icon":"rocket","href":"https://coder1.ai/ide"}]},"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"coder1","hasAudioNarration":false,"actualSubdomain":"coder1","customDomains":["docs.coder1.ai"],"gitSource":{"type":"github","owner":"michaelrkraft","repo":"docs","deployBranch":"main","contentDirectory":"","isPrivate":false,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6a20d279aefcc421c9f6887d","collectionId":"0eb09b8f-5590-4c2b-b695-0ee1d3f25826","schemaVersion":"v2"},"entitlements":{},"buildId":"6a20d279aefcc421c9f6887d:success","clientVersion":"0.0.4021","searchFilterCounts":[{"language":"default","tag":"Guides","count":5},{"language":"default","tag":"Getting Started","count":3},{"language":"default","tag":"Security","count":2},{"language":"default","tag":"Features","count":1},{"language":"default","tag":"Troubleshooting","count":1}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"/docs","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[],"googleFontsInlined":false},"customCss":[],"page":{"pagePath":"security/overview","slug":"/security/overview","pageMetadata":{"title":"Security Overview","description":"How Coder1 keeps your code private and your connection secure.","href":"/security/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: \"How Coder1 keeps your code private and your connection secure.\"\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`,pre:`pre`,span:`span`,strong:`strong`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,ul:`ul`,..._provideComponents(),...props.components},{CodeBlock,Heading,Table,Warning}=_components;if(!CodeBlock)_missingMdxReference(`CodeBlock`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!Table)_missingMdxReference(`Table`,true);if(!Warning)_missingMdxReference(`Warning`,true);return _jsxs(_Fragment,{children:[_jsx(Heading,{level:`2`,id:`the-security-model`,children:`The Security Model`}),`\n`,_jsxs(_components.p,{children:[`Coder1 is built on a `,_jsx(_components.strong,{children:`local-first security`}),` principle: your code never leaves your computer. The Bridge acts as a secure relay — it forwards commands and responses, but never stores them.`]}),`\n`,_jsx(CodeBlock,{numberOfLines:`6`,language:`text`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`text`,children:_jsxs(_components.code,{language:`text`,numberOfLines:`6`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`What we CAN see: What we CANNOT see:`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`✅ \"User sent a command\" ❌ Your actual code`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`✅ \"Command completed\" ❌ Your file contents`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`✅ Connection timing ❌ Command contents`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`✅ Bridge version ❌ Your directory structure`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})})]})})}),`\n`,_jsx(Heading,{level:`2`,id:`what-travels-over-the-connection`,children:`What Travels Over the Connection`}),`\n`,_jsx(_components.p,{children:_jsx(_components.strong,{children:`Travels (encrypted):`})}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`Commands you type in the IDE`}),`\n`,_jsx(_components.li,{children:`Output from those commands`}),`\n`,_jsx(_components.li,{children:`Connection handshakes and heartbeats`}),`\n`]}),`\n`,_jsx(_components.p,{children:_jsx(_components.strong,{children:`Stays local (never sent):`})}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[`Your source files (`,_jsx(_components.code,{children:`.js`}),`, `,_jsx(_components.code,{children:`.py`}),`, `,_jsx(_components.code,{children:`.ts`}),`, etc.)`]}),`\n`,_jsx(_components.li,{children:`Your environment variables`}),`\n`,_jsx(_components.li,{children:`Your Claude API key`}),`\n`,_jsx(_components.li,{children:`Your SSH keys, passwords, secrets`}),`\n`]}),`\n`,_jsx(Heading,{level:`2`,id:`encryption`,children:`Encryption`}),`\n`,_jsxs(_components.p,{children:[`All communication uses `,_jsx(_components.strong,{children:`WSS (WebSocket Secure) over TLS 1.3`}),` — the same encryption used by online banking.`]}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Layer`}),_jsx(_components.th,{children:`Protocol`}),_jsx(_components.th,{children:`What It Does`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Transport`}),_jsx(_components.td,{children:`TLS 1.3`}),_jsx(_components.td,{children:`Encrypts all data in transit`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`WebSocket`}),_jsx(_components.td,{children:`WSS`}),_jsx(_components.td,{children:`Persistent encrypted channel`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Authentication`}),_jsx(_components.td,{children:`JWT + pairing codes`}),_jsx(_components.td,{children:`Proves you authorized the connection`})]})]})]}),`\n`,_jsx(Heading,{level:`2`,id:`authentication-flow`,children:`Authentication Flow`}),`\n`,_jsx(_components.p,{children:`Connecting the Bridge requires two factors: the pairing code (generated in your browser session) and the Bridge client running on your machine.`}),`\n`,_jsx(CodeBlock,{numberOfLines:`6`,language:`text`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`text`,children:_jsxs(_components.code,{language:`text`,numberOfLines:`6`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`1. You click \"Bridge\" in the IDE → server generates 6-digit code`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`2. Code is single-use and expires in 5 minutes`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`3. You enter the code in your local terminal`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`4. Server validates code, issues a session JWT`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`5. All subsequent commands use the JWT — no more codes needed`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})})]})})}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Stolen code scenario:`}),` An attacker who intercepts your pairing code still can’t connect — they’d also need access to your browser session AND have the Bridge running on your computer. Residual risk: LOW.`]}),`\n`,_jsx(Heading,{level:`2`,id:`pairing-code-security`,children:`Pairing Code Security`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Property`}),_jsx(_components.th,{children:`Value`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Length`}),_jsx(_components.td,{children:`6 digits (1,000,000 possibilities)`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Expiry`}),_jsx(_components.td,{children:`5 minutes`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Reuse`}),_jsx(_components.td,{children:`Single-use only`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Binding`}),_jsx(_components.td,{children:`Tied to your browser session`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Rate limit`}),_jsx(_components.td,{children:`Max 5 code generations per minute`})]})]})]}),`\n`,_jsx(Heading,{level:`2`,id:`least-privilege`,children:`Least Privilege`}),`\n`,_jsxs(_components.p,{children:[`The Bridge runs under `,_jsx(_components.strong,{children:`your user account`}),` — not root. It inherits your shell permissions, so it can only do what you could do yourself in a terminal. No elevated privileges are requested or required.`]}),`\n`,_jsx(Heading,{level:`2`,id:`open-source`,children:`Open Source`}),`\n`,_jsx(_components.p,{children:`The Bridge client is open source and fully auditable:`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`5`,language:`shellscript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`shellscript`,children:_jsxs(_components.code,{language:`shellscript`,numberOfLines:`5`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# Review the code before installing`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`git`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` clone`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` https://github.com/MichaelrKraft/coder1-ide.git`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#DCDCAA`},children:`cd`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` coder1-ide/bridge-cli`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# Read the source, then install:`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`npm`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` install`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` \u0026\u0026 `}),_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`npm`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` link`})]}),`\n`]})})}),`\n`,_jsx(Heading,{level:`2`,id:`privacy-\u0026-data-retention`,children:`Privacy \u0026 Data Retention`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Data`}),_jsx(_components.th,{children:`Collected`}),_jsx(_components.th,{children:`Retention`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Connection timestamps`}),_jsx(_components.td,{children:`Yes`}),_jsx(_components.td,{children:`30 days`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Command count (not content)`}),_jsx(_components.td,{children:`Yes`}),_jsx(_components.td,{children:`30 days`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Crash logs`}),_jsx(_components.td,{children:`Yes`}),_jsx(_components.td,{children:`30 days`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Code content`}),_jsx(_components.td,{children:_jsx(_components.strong,{children:`Never`})}),_jsx(_components.td,{children:`—`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Command text`}),_jsx(_components.td,{children:_jsx(_components.strong,{children:`Never`})}),_jsx(_components.td,{children:`—`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`File paths`}),_jsx(_components.td,{children:_jsx(_components.strong,{children:`Never`})}),_jsx(_components.td,{children:`—`})]})]})]}),`\n`,_jsx(Heading,{level:`3`,id:`disable-telemetry`,children:`Disable Telemetry`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`2`,language:`shellscript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`shellscript`,children:_jsxs(_components.code,{language:`shellscript`,numberOfLines:`2`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`export`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` CODER1_TELEMETRY`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`false`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`coder1-bridge`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` start`})]}),`\n`]})})}),`\n`,_jsxs(_components.p,{children:[`Add to `,_jsx(_components.code,{children:`~/.zshrc`}),` or `,_jsx(_components.code,{children:`~/.bashrc`}),` to make permanent.`]}),`\n`,_jsx(Heading,{level:`2`,id:`reporting-security-issues`,children:`Reporting Security Issues`}),`\n`,_jsxs(_components.p,{children:[`Found a vulnerability? Please email us with subject `,_jsx(_components.strong,{children:`“SECURITY: [issue]”`}),` before public disclosure. We commit to responding within 48 hours and will credit you in release notes if desired.`]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`GitHub Issues:`}),` `,_jsx(_components.a,{href:`https://github.com/MichaelrKraft/coder1-ide/issues`,children:`github.com/MichaelrKraft/coder1-ide/issues`})]}),`\n`,_jsx(Warning,{children:_jsx(_components.p,{children:`Please don’t post security vulnerabilities publicly before giving us a chance to fix them. We take security seriously and move fast on fixes.`})}),`\n`,_jsx(Heading,{level:`2`,id:`audit-status`,children:`Audit Status`}),`\n`,_jsx(_components.p,{children:`A third-party security audit is planned before General Availability. The Bridge is currently in alpha — code is iterating quickly. Full audit scope: penetration testing, code review, infrastructure assessment, SOC 2 / GDPR compliance.`})]})}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":"Security Overview","description":"How Coder1 keeps your code private and your connection secure.","href":"/security/overview"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"The Security Model","slug":"the-security-model","depth":2,"children":[]},{"title":"What Travels Over the Connection","slug":"what-travels-over-the-connection","depth":2,"children":[]},{"title":"Encryption","slug":"encryption","depth":2,"children":[]},{"title":"Authentication Flow","slug":"authentication-flow","depth":2,"children":[]},{"title":"Pairing Code Security","slug":"pairing-code-security","depth":2,"children":[]},{"title":"Least Privilege","slug":"least-privilege","depth":2,"children":[]},{"title":"Open Source","slug":"open-source","depth":2,"children":[]},{"title":"Privacy \u0026 Data Retention","slug":"privacy-\u0026-data-retention","depth":2,"children":[{"title":"Disable Telemetry","slug":"disable-telemetry","depth":3,"children":[]}]},{"title":"Reporting Security Issues","slug":"reporting-security-issues","depth":2,"children":[]},{"title":"Audit Status","slug":"audit-status","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":[],"subdomain":"coder1","siteName":"Coder1","title":"Security Overview - Coder1","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-02-22T22:41:45.187Z","originalFileLocation":"security/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=\"How Coder1 keeps your code private and your connection secure.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Coder1\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/docs/mintlify-assets/_mintlify/favicons/coder1/wT0B2i5QS6PB1l6W/_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=\"/docs/mintlify-assets/_mintlify/favicons/coder1/wT0B2i5QS6PB1l6W/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/docs/mintlify-assets/_mintlify/favicons/coder1/wT0B2i5QS6PB1l6W/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/docs/mintlify-assets/_mintlify/favicons/coder1/wT0B2i5QS6PB1l6W/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/docs/mintlify-assets/_mintlify/favicons/coder1/wT0B2i5QS6PB1l6W/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/docs/mintlify-assets/_mintlify/favicons/coder1/wT0B2i5QS6PB1l6W/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/docs/mintlify-assets/_mintlify/favicons/coder1/wT0B2i5QS6PB1l6W/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/docs/mintlify-assets/_mintlify/favicons/coder1/wT0B2i5QS6PB1l6W/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/docs/mintlify-assets/_mintlify/favicons/coder1/wT0B2i5QS6PB1l6W/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Security Overview - Coder1\">\u003cmeta data-mint-head property=\"og:description\" content=\"How Coder1 keeps your code private and your connection secure.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Coder1\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.coder1.ai/docs/security/overview\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://coder1.mintlify.app/_mintlify/api/og/v2?division=Security\u0026amp;title=Security+Overview\u0026amp;description=How+Coder1+keeps+your+code+private+and+your+connection+secure.\u0026amp;theme=660d4bff8ffd80ad2c66808a\u0026amp;signature=fbf0be4f60543a09b835014ef5a7d124a75615766d1c443c459a3f815553a764\">\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=\"Security Overview - Coder1\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"How Coder1 keeps your code private and your connection secure.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://coder1.mintlify.app/_mintlify/api/og/v2?division=Security\u0026amp;title=Security+Overview\u0026amp;description=How+Coder1+keeps+your+code+private+and+your+connection+secure.\u0026amp;theme=660d4bff8ffd80ad2c66808a\u0026amp;signature=fbf0be4f60543a09b835014ef5a7d124a75615766d1c443c459a3f815553a764\">\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=\"/docs/mintlify-assets/_mintlify/favicons/coder1/wT0B2i5QS6PB1l6W/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Coder1\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#00FFFF\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.coder1.ai/docs/security/overview\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/docs/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/docs/security/overview.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.coder1.ai/#organization\",\"name\":\"Coder1\",\"url\":\"https://docs.coder1.ai\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/coder1/X8Dqu3Sc8rJMBYU8/logo/light.svg?fit=max\u0026auto=format\u0026n=X8Dqu3Sc8rJMBYU8\u0026q=85\u0026s=ae9dbe41fef4e7da10f713b1148695df\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.coder1.ai/docs#website\",\"name\":\"Coder1\",\"url\":\"https://docs.coder1.ai/docs\",\"publisher\":{\"@id\":\"https://docs.coder1.ai/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.coder1.ai/docs/security/overview#webpage\",\"url\":\"https://docs.coder1.ai/docs/security/overview\",\"name\":\"Security Overview\",\"description\":\"How Coder1 keeps your code private and your connection secure.\",\"dateModified\":\"2026-02-22T22:41:45.187Z\",\"isPartOf\":{\"@id\":\"https://docs.coder1.ai/docs#website\"},\"breadcrumb\":{\"@id\":\"https://docs.coder1.ai/docs/security/overview#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.coder1.ai/docs/security/overview#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Coder1\",\"item\":\"https://docs.coder1.ai/docs\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Security Overview\",\"item\":\"https://docs.coder1.ai/docs/security/overview\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://docs.coder1.ai/docs/security/overview#article\",\"headline\":\"Security Overview\",\"name\":\"Security Overview\",\"description\":\"How Coder1 keeps your code private and your connection secure.\",\"url\":\"https://docs.coder1.ai/docs/security/overview\",\"mainEntityOfPage\":{\"@id\":\"https://docs.coder1.ai/docs/security/overview#webpage\"},\"dateModified\":\"2026-02-22T22:41:45.187Z\",\"publisher\":{\"@id\":\"https://docs.coder1.ai/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.coder1.ai/docs#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Coder1\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Coder1","nav":{"global":{"anchors":[{"anchor":"GitHub","icon":"github","href":"https://github.com/MichaelrKraft/coder1-ide"},{"anchor":"Get Started","icon":"rocket","href":"https://coder1.ai/ide"}]},"tabs":[{"tab":"Guides","pages":[{"title":"Guides","href":""}]},{"tab":"Security","groups":[{"group":"Security","pages":[{"title":"Security Overview","href":"/security/overview"}]}]}]},"title":"Security Overview - Coder1","buildId":"dpl_DGmhKsAzJdVqypJzon18vViniWRY","deploymentId":"dpl_DGmhKsAzJdVqypJzon18vViniWRY","dynamics":[],"chunks":[]}