Understand how Agent reaches GitHub and GitLab through Replit’s Git provider proxy, keeping repository credentials outside the sandbox that runs your code.
When Agent runs git, gh, or glab, Replit routes the request through a secure proxy: github.replit.internal for GitHub and gitlab.replit.internal for GitLab. The proxy adds your connection’s credentials outside the sandbox, so Agent never receives a token it could leak.Only Agent uses the proxy. Your own shell and the Git pane connect to GitHub and GitLab directly with your own account, and your remotes keep their usual URLs.
What Agent can access
Agent can access exactly what your GitHub or GitLab connection allows. To change that, update the connection in Replit or its permissions on your provider. For background builds, see Install the Git Provider App.
Messages you may see
Agent’s Git output names the proxy instead of your provider:
github.replit.internal ✅ is Replit's secure GitHub proxy
If a request fails, the error says what to do, such as reconnecting GitHub in Replit or giving the connection access to the repository. Errors from GitHub or GitLab themselves, such as a rejected push to a protected branch, appear unchanged.
Don’t give Agent a personal access token to work around an error. Fix the connection in Replit instead.
Was this page helpful?
{"docsConfig":{"theme":"aspen","$schema":"https://mintlify.com/docs.json","name":"Replit","colors":{"primary":"#FF3C00","light":"#FF3C00","dark":"#FF3C00"},"logo":{"light":"https://mintcdn.com/replit/j4of5To8jzehz0JK/logo/light.svg?fit=max\u0026auto=format\u0026n=j4of5To8jzehz0JK\u0026q=85\u0026s=6209cb5927b56fd1781133af05428373","dark":"https://mintcdn.com/replit/j4of5To8jzehz0JK/logo/dark.svg?fit=max\u0026auto=format\u0026n=j4of5To8jzehz0JK\u0026q=85\u0026s=9cbba158300d48c49d8b888e71015495","href":"/welcome"},"favicon":"https://mintcdn.com/replit/CmOMKRnamiqG44eH/favicon.ico?fit=max\u0026auto=format\u0026n=CmOMKRnamiqG44eH\u0026q=85\u0026s=c89a6df6f537373c946c7a5f0ac65475","appearance":{"default":"light"},"background":{"color":{"light":"#F6F5F4","dark":"#1E1E1F"}},"navbar":{"links":[],"primary":{"type":"button","label":"Start Building","href":"https://replit.com?ref=docs"}},"footer":{"socials":{"x":"https://x.com/replit","linkedin":"https://www.linkedin.com/company/repl-it","youtube":"https://www.youtube.com/@replit"}},"seo":{"metatags":{"og:site_name":"Replit Docs","twitter:site":"@replit","twitter:creator":"@replit","author":"Replit"},"indexing":"all"},"fonts":{"heading":{"family":"ABC Diatype Plus","weight":400,"source":"https://cdn.replit.com/dotcom/fonts/ABCDiatypePlusVariable.woff2","format":"woff2"},"body":{"family":"ABC Diatype Plus","weight":400,"source":"https://cdn.replit.com/dotcom/fonts/ABCDiatypePlusVariable.woff2","format":"woff2"}},"integrations":{"segment":{"key":"dMePKGC4BqfBivpe0Hvl8IoPpzSHgjdX"}},"contextual":{"options":["copy","view"],"display":"header"},"thumbnails":{"appearance":"light","background":"https://mintcdn.com/replit/j4of5To8jzehz0JK/thumb.png?fit=max\u0026auto=format\u0026n=j4of5To8jzehz0JK\u0026q=85\u0026s=a7db7f0256b2fa06810fb4d378e63cc5","fonts":{"family":"ABC Diatype Plus"}},"styling":{"latex":true},"navigation":{"languages":[{"language":"en","href":"welcome"},{"language":"fr","navbar":{"links":[],"primary":{"type":"button","label":"Commencer à créer","href":"https://replit.com?ref=docs"}},"href":"fr/welcome"},{"language":"pt","hidden":false,"navbar":{"links":[],"primary":{"type":"button","label":"Comece a criar","href":"https://replit.com?ref=docs"}},"href":"pt/welcome"},{"language":"ja","hidden":false,"navbar":{"links":[],"primary":{"type":"button","label":"作成を開始","href":"https://replit.com?ref=docs"}},"href":"ja/welcome"},{"language":"ko","hidden":false,"navbar":{"links":[],"primary":{"type":"button","label":"빌드 시작하기","href":"https://replit.com?ref=docs"}},"href":"ko/welcome"}]}},"deployment":{"deploymentMetadataValue":{"subdomain":"replit","hasAudioNarration":false,"actualSubdomain":"replit","customDomains":["docs.replit.com","docs.repl.it"],"gitSource":{"type":"github","owner":"replit","repo":"replit-docs","deployBranch":"main","contentDirectory":"docs","isPrivate":true,"mountPath":"","label":""},"feedback":{"thumbs":true,"issues":true,"edits":false},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"REMOVE_BRANDING":{"status":"ENABLED"},"CONTEXTUAL_FEEDBACK":{"status":"ENABLED"},"CODE_SNIPPET_FEEDBACK":{"status":"ENABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6af8dd237fd385b08ebd83e4","clientVersion":"0.0.4143","searchFilterCounts":[{"language":"en","tag":"Features","count":367},{"language":"fr","tag":"Fonctionnalités","count":366},{"language":"ja","tag":"機能","count":366},{"language":"ko","tag":"기능","count":366},{"language":"pt","tag":"Funcionalidades","count":366},{"language":"en","tag":"Changelog","count":101},{"language":"fr","tag":"Journal des modifications","count":100},{"language":"ja","tag":"変更履歴","count":100},{"language":"ko","tag":"변경 내역","count":100},{"language":"pt","tag":"Registro de alterações","count":100},{"language":"en","tag":"Apps","count":41},{"language":"fr","tag":"Apps","count":41},{"language":"ja","tag":"Apps","count":41},{"language":"ko","tag":"Apps","count":41},{"language":"pt","tag":"Apps","count":41},{"language":"en","tag":"Enterprise","count":40},{"language":"fr","tag":"Entreprise","count":40},{"language":"ja","tag":"Enterprise","count":40},{"language":"ko","tag":"Enterprise","count":40},{"language":"pt","tag":"Enterprise","count":40},{"language":"en","tag":"Use cases","count":39},{"language":"fr","tag":"Use cases","count":39},{"language":"ja","tag":"Use cases","count":39},{"language":"ko","tag":"Use cases","count":39},{"language":"pt","tag":"Use cases","count":39},{"language":"en","tag":"Chats","count":25},{"language":"en","tag":"Designs","count":25},{"language":"fr","tag":"Chats","count":25},{"language":"fr","tag":"Designs","count":25},{"language":"ja","tag":"Chats","count":25},{"language":"ja","tag":"Designs","count":25},{"language":"ko","tag":"Chats","count":25},{"language":"ko","tag":"Designs","count":25},{"language":"pt","tag":"Chats","count":25},{"language":"pt","tag":"Designs","count":25},{"language":"en","tag":"Trust \u0026 Billing","count":23},{"language":"fr","tag":"Confiance et facturation","count":23},{"language":"ja","tag":"信頼と請求","count":23},{"language":"ko","tag":"신뢰 및 결제","count":23},{"language":"pt","tag":"Confiança e faturamento","count":23},{"language":"en","tag":"Web","count":22},{"language":"fr","tag":"Web","count":22},{"language":"ja","tag":"Web","count":22},{"language":"ko","tag":"Web","count":22},{"language":"pt","tag":"Web","count":22},{"language":"en","tag":"Help","count":20},{"language":"fr","tag":"Help","count":20},{"language":"ja","tag":"Help","count":20},{"language":"ko","tag":"Help","count":20},{"language":"pt","tag":"Help","count":20}]},"assistantConfig":{"deflection":{"enabled":true,"email":"support@replit.com"}},"basePath":"","hasChatPermissions":true,"hasWebMcpPermissions":true,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-rbac-roles","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":"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":"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":"editor-metadata","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},{"name":"live-agents","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}],"googleFontsInlined":false},"customCss":[{"filePath":"styles.css","href":"/_mintlify/custom/replit/d427c49142834eef/styles.css"}],"page":{"pagePath":"build/code/git-provider-proxy","slug":"/build/code/git-provider-proxy","pageMetadata":{"title":"Secure Access to GitHub and GitLab","sidebarTitle":"Git credential protection","description":"Understand how Agent reaches GitHub and GitLab through Replit's Git provider proxy, keeping repository credentials outside the sandbox that runs your code.","href":"/build/code/git-provider-proxy"},"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: \"Understand how Agent reaches GitHub and GitLab through Replit’s Git provider proxy, keeping repository credentials outside the sandbox that runs your code.\"\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`,p:`p`,pre:`pre`,span:`span`,..._provideComponents(),...props.components},{CodeBlock,Heading,Warning}=_components;if(!CodeBlock)_missingMdxReference(`CodeBlock`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!Warning)_missingMdxReference(`Warning`,true);return _jsxs(_Fragment,{children:[_jsxs(_components.p,{children:[`When Agent runs `,_jsx(_components.code,{children:`git`}),`, `,_jsx(_components.code,{children:`gh`}),`, or `,_jsx(_components.code,{children:`glab`}),`, Replit routes the request through a secure proxy: `,_jsx(_components.code,{children:`github.replit.internal`}),` for GitHub and `,_jsx(_components.code,{children:`gitlab.replit.internal`}),` for GitLab. The proxy adds your connection’s credentials outside the sandbox, so Agent never receives a token it could leak.`]}),`\n`,_jsx(_components.p,{children:`Only Agent uses the proxy. Your own shell and the Git pane connect to GitHub and GitLab directly with your own account, and your remotes keep their usual URLs.`}),`\n`,_jsx(Heading,{level:`2`,id:`what-agent-can-access`,children:`What Agent can access`}),`\n`,_jsxs(_components.p,{children:[`Agent can access exactly what your GitHub or GitLab connection allows. To change that, update the connection in Replit or its permissions on your provider. For background builds, see `,_jsx(_components.a,{href:`/build/code/install-git-app`,children:`Install the Git Provider App`}),`.`]}),`\n`,_jsx(Heading,{level:`2`,id:`messages-you-may-see`,children:`Messages you may see`}),`\n`,_jsx(_components.p,{children:`Agent’s Git output names the proxy instead of your provider:`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`2`,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:`2`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`github.replit.internal ✅ is Replit's secure GitHub proxy`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})})]})})}),`\n`,_jsx(_components.p,{children:`If a request fails, the error says what to do, such as reconnecting GitHub in Replit or giving the connection access to the repository. Errors from GitHub or GitLab themselves, such as a rejected push to a protected branch, appear unchanged.`}),`\n`,_jsx(Warning,{children:_jsx(_components.p,{children:`Don’t give Agent a personal access token to work around an error. Fix the connection in Replit instead.`})})]})}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":"Secure Access to GitHub and GitLab","sidebarTitle":"Git credential protection","description":"Understand how Agent reaches GitHub and GitLab through Replit's Git provider proxy, keeping repository credentials outside the sandbox that runs your code.","href":"/build/code/git-provider-proxy"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"What Agent can access","slug":"what-agent-can-access","depth":2,"children":[]},{"title":"Messages you may see","slug":"messages-you-may-see","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":[],"subdomain":"replit","siteName":"Replit","title":"Secure Access to GitHub and GitLab - Replit","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{"en":{"href":"/build/code/git-provider-proxy","matchLevel":0},"fr":{"href":"/fr/build/code/git-provider-proxy","matchLevel":1,"noindex":true,"robots":"noindex, nofollow"},"pt":{"href":"/pt/build/code/git-provider-proxy","matchLevel":1,"noindex":true,"robots":"noindex, nofollow"},"ja":{"href":"/ja/build/code/git-provider-proxy","matchLevel":1,"noindex":true,"robots":"noindex, nofollow"},"ko":{"href":"/ko/build/code/git-provider-proxy","matchLevel":1}}},"lastModified":"2026-10-27T12:23:50.042Z","originalFileLocation":"build/code/git-provider-proxy.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=\"light\"}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=\"Understand how Agent reaches GitHub and GitLab through Replit\u0026#x27;s Git provider proxy, keeping repository credentials outside the sandbox that runs your code.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Replit\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/replit/bmCuvIiWqqoyeE2o/_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/replit/bmCuvIiWqqoyeE2o/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/replit/bmCuvIiWqqoyeE2o/_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/replit/bmCuvIiWqqoyeE2o/_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/replit/bmCuvIiWqqoyeE2o/_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/replit/bmCuvIiWqqoyeE2o/_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/replit/bmCuvIiWqqoyeE2o/_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/replit/bmCuvIiWqqoyeE2o/_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/replit/bmCuvIiWqqoyeE2o/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Secure Access to GitHub and GitLab - Replit\">\u003cmeta data-mint-head property=\"og:description\" content=\"Understand how Agent reaches GitHub and GitLab through Replit\u0026#x27;s Git provider proxy, keeping repository credentials outside the sandbox that runs your code.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Replit Docs\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.replit.com/build/code/git-provider-proxy\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://replit.mintlify.site/_mintlify/api/og/v2?division=Security+and+identity\u0026amp;title=Secure+Access+to+GitHub+and+GitLab\u0026amp;description=Understand+how+Agent+reaches+GitHub+and+GitLab+through+Replit%27s+Git+provider+proxy%2C+keeping+repository+credentials+outside+the+sandbox+that+runs+your+code.\u0026amp;theme=3d900b3257a00c38c6803774\u0026amp;signature=b50dba2d0043d10112f03bd6d80d70b87c54a5bd6b3b731bbd8eeee6b5c6f919\">\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=\"Secure Access to GitHub and GitLab - Replit\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Understand how Agent reaches GitHub and GitLab through Replit\u0026#x27;s Git provider proxy, keeping repository credentials outside the sandbox that runs your code.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://replit.mintlify.site/_mintlify/api/og/v2?division=Security+and+identity\u0026amp;title=Secure+Access+to+GitHub+and+GitLab\u0026amp;description=Understand+how+Agent+reaches+GitHub+and+GitLab+through+Replit%27s+Git+provider+proxy%2C+keeping+repository+credentials+outside+the+sandbox+that+runs+your+code.\u0026amp;theme=3d900b3257a00c38c6803774\u0026amp;signature=b50dba2d0043d10112f03bd6d80d70b87c54a5bd6b3b731bbd8eeee6b5c6f919\">\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/replit/bmCuvIiWqqoyeE2o/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Replit\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#FF3C00\">\u003cmeta data-mint-head name=\"twitter:creator\" content=\"@replit\">\u003cmeta data-mint-head name=\"author\" content=\"Replit\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.replit.com/build/code/git-provider-proxy\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/build/code/git-provider-proxy.md\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"en\" href=\"https://docs.replit.com/build/code/git-provider-proxy\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"ko\" href=\"https://docs.replit.com/ko/build/code/git-provider-proxy\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"x-default\" href=\"https://docs.replit.com/build/code/git-provider-proxy\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.replit.com/#organization\",\"name\":\"Replit\",\"url\":\"https://docs.replit.com\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/replit/j4of5To8jzehz0JK/logo/light.svg?fit=max\u0026auto=format\u0026n=j4of5To8jzehz0JK\u0026q=85\u0026s=6209cb5927b56fd1781133af05428373\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.replit.com#website\",\"name\":\"Replit\",\"url\":\"https://docs.replit.com\",\"publisher\":{\"@id\":\"https://docs.replit.com/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.replit.com/build/code/git-provider-proxy#webpage\",\"url\":\"https://docs.replit.com/build/code/git-provider-proxy\",\"name\":\"Secure Access to GitHub and GitLab\",\"description\":\"Understand how Agent reaches GitHub and GitLab through Replit's Git provider proxy, keeping repository credentials outside the sandbox that runs your code.\",\"dateModified\":\"2026-10-27T12:23:50.042Z\",\"isPartOf\":{\"@id\":\"https://docs.replit.com#website\"},\"breadcrumb\":{\"@id\":\"https://docs.replit.com/build/code/git-provider-proxy#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.replit.com/build/code/git-provider-proxy#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Security and identity\",\"item\":\"https://docs.replit.com/build/code/security\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Secure Access to GitHub and GitLab\",\"item\":\"https://docs.replit.com/build/code/git-provider-proxy\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://docs.replit.com/build/code/git-provider-proxy#article\",\"headline\":\"Secure Access to GitHub and GitLab\",\"name\":\"Secure Access to GitHub and GitLab\",\"description\":\"Understand how Agent reaches GitHub and GitLab through Replit's Git provider proxy, keeping repository credentials outside the sandbox that runs your code.\",\"url\":\"https://docs.replit.com/build/code/git-provider-proxy\",\"mainEntityOfPage\":{\"@id\":\"https://docs.replit.com/build/code/git-provider-proxy#webpage\"},\"dateModified\":\"2026-10-27T12:23:50.042Z\",\"publisher\":{\"@id\":\"https://docs.replit.com/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.replit.com#website\"}}]}\u003c/script>","agentPointerHref":"/build/code/git-provider-proxy.md","siteName":"Replit","nav":{"global":null,"languages":[{"language":"en","tabs":[{"tab":"Home","pages":[{"title":"Home","href":"/welcome"}]},{"tab":"Chats","pages":[{"title":"Chats","href":"/chat/overview"}]},{"tab":"Apps","dropdowns":[{"dropdown":"Web","icon":"globe","pages":[{"group":"Quickstarts","pages":[{"title":"Build your first app","sidebarTitle":"Build your first app","icon":"rocket","href":"/build/your-first-app"},{"title":"Build and publish from a template","sidebarTitle":"Build from a template","icon":"palette","href":"/build/build-and-publish-from-template"},{"title":"Build with Free Mode","sidebarTitle":"Build with Free Mode","icon":"seedling","href":"/build/build-with-free-mode"},{"title":"Publish your app","sidebarTitle":"Publish your app","icon":"cloud-arrow-up","href":"/build/publish-your-app"}]},{"group":"Build paths","pages":[{"title":"Prototype a product idea","sidebarTitle":"Prototype an idea","icon":"lightbulb","href":"/build/prototype-an-idea"},{"title":"Launch a landing page","sidebarTitle":"Launch a landing page","icon":"rectangle-list","href":"/build/landing-page"},{"title":"Build a Shopify storefront","sidebarTitle":"Build a Shopify storefront","icon":"bag-shopping","href":"/build/ecommerce-store"},{"title":"Create a dashboard from data","sidebarTitle":"Create a dashboard","icon":"chart-simple","href":"/build/dashboard"},{"title":"Build a mobile app","sidebarTitle":"Build a mobile app","icon":"mobile-screen","href":"/build/mobile-app"}]},{"group":"Grow your app","pages":[{"title":"Add login","sidebarTitle":"Add login","icon":"user-lock","href":"/build/add-login"},{"title":"Add a database","sidebarTitle":"Add a database","icon":"database","href":"/build/add-database"},{"title":"Add integrations","sidebarTitle":"Add integrations","icon":"plug","href":"/build/add-integrations"},{"title":"Add a custom domain","sidebarTitle":"Add a custom domain","icon":"globe","href":"/build/add-custom-domain"}]},{"group":"Publish and operate","pages":[{"title":"Purchase a domain","sidebarTitle":"Purchase a domain","icon":"cart-shopping","href":"/build/domain-purchasing"},{"title":"Enable Feedback Widget","sidebarTitle":"Enable Feedback Widget","icon":"comment","href":"/build/enable-feedback"},{"title":"Improve your app's SEO","sidebarTitle":"Improve SEO","icon":"magnifying-glass-chart","href":"/build/improve-seo"},{"title":"Troubleshoot publishing","icon":"triangle-exclamation","href":"/build/troubleshooting"}]},{"group":"Connect \u0026 integrate","pages":[{"title":"Use Agent Skills","sidebarTitle":"Use Agent Skills","icon":"puzzle-piece","href":"/build/use-agent-skills"},{"title":"Connect via MCP","sidebarTitle":"Connect via MCP","icon":"server","href":"/build/connect-via-mcp"}]},{"group":"Collaborate","pages":[{"title":"Invite teammates","sidebarTitle":"Invite teammates","icon":"user-plus","href":"/build/invite-teammates"},{"title":"Create a team workspace","sidebarTitle":"Create a team workspace","icon":"users-rectangle","href":"/build/create-a-team-workspace"}]},{"group":"Import","pages":[{"title":"Import from a provider","sidebarTitle":"Import from a provider","icon":"file-import","href":"/build/import-from-providers"}]}]},{"dropdown":"Mobile","icon":"mobile","groups":[{"group":"Quickstarts","pages":[{"title":"Start your first mobile app","sidebarTitle":"Start your mobile app","icon":"wand-magic-sparkles","href":"/build/mobile-first-app"},{"title":"Preview and test on your phone","sidebarTitle":"Test with Expo Go","icon":"mobile","href":"/build/mobile-preview-testing"}]},{"group":"Publish for iOS","pages":[{"title":"Set up your Apple Developer account","sidebarTitle":"Set up your account","icon":"apple","href":"/build/mobile-apple-account"},{"title":"Upload your app to App Store Connect","sidebarTitle":"Upload your app","icon":"cloud-arrow-up","href":"/build/mobile-upload-ios"},{"title":"Beta test with TestFlight","sidebarTitle":"Test on TestFlight","icon":"flask","href":"/build/mobile-testflight"},{"title":"Submit to the App Store","sidebarTitle":"Submit for App Store","icon":"paper-plane","href":"/build/mobile-publish-ios"}]},{"group":"Add features and grow your app","pages":[{"title":"Add login","sidebarTitle":"Add login","icon":"right-to-bracket","href":"/build/mobile-login"},{"title":"Add payments with RevenueCat","sidebarTitle":"Add payments","icon":"credit-card","href":"/build/mobile-payments"},{"title":"Store images in your mobile app","sidebarTitle":"Save player images","icon":"image","href":"/build/mobile-store-images"},{"title":"Add haptics","sidebarTitle":"Add haptics","icon":"wave-square","href":"/build/mobile-haptics"},{"title":"Use iOS native components","sidebarTitle":"Use native UI","icon":"apple","href":"/build/mobile-native-components"},{"title":"Use the camera","sidebarTitle":"Add camera","icon":"camera","href":"/build/mobile-camera"},{"title":"Access contacts","sidebarTitle":"Add contacts","icon":"address-book","href":"/build/mobile-contacts"},{"title":"Send push notifications","sidebarTitle":"Send notifications","icon":"bell","href":"/build/mobile-push-notifications"},{"title":"Collect reviews and ratings","sidebarTitle":"Collect reviews","icon":"star","href":"/build/mobile-collect-reviews"}]},{"group":"Design","pages":[{"title":"Design your app","sidebarTitle":"Design your app","icon":"palette","href":"/build/mobile-design"},{"title":"Generate an app icon","sidebarTitle":"Generate app icon","icon":"image","href":"/build/mobile-app-icon"},{"title":"Generate App Store screenshots","sidebarTitle":"Generate store assets","icon":"images","href":"/build/mobile-store-screenshots"}]},{"group":"Collaborate","pages":[{"title":"Build PixelGames with a team","sidebarTitle":"Invite your team","icon":"users","href":"/build/mobile-invite-team"}]}]}]},{"tab":"Code","pages":[{"group":"Get started","pages":[{"title":"Code with Replit","sidebarTitle":"Code with Replit","href":"/build/code/code-with-replit"},{"title":"Connect to your repository","sidebarTitle":"Connect to your repository","href":"/build/code/connect-your-repository"},{"title":"Run your app in Replit","sidebarTitle":"Run your app in Replit","href":"/build/code/run-your-first-preview"},{"title":"Make a contribution","sidebarTitle":"Make a contribution","href":"/build/code/first-contribution"},{"title":"Respond to review","sidebarTitle":"Respond to review","href":"/build/code/respond-to-review-feedback"},{"title":"Work with a team of agents","sidebarTitle":"Work with a team of agents","href":"/build/code/coordinate-work"}]},{"group":"Setup and access","pages":[{"title":"Install the Git Provider App","sidebarTitle":"Install the Git Provider App","href":"/build/code/install-git-app"},{"title":"Manage repository access","sidebarTitle":"Manage repository access","href":"/build/code/manage-repository-access"},{"title":"Create a reusable environment","sidebarTitle":"Create a reusable environment","href":"/build/code/create-reusable-environment"},{"title":"Add secrets to environments","sidebarTitle":"Add secrets to environments","href":"/build/code/adding-secrets-to-environments"}]},{"group":"Security and identity","pages":[{"title":"Security for Repository Contributions","sidebarTitle":"Security","href":"/build/code/security"},{"title":"Machine Identities for Maintaining Environments","sidebarTitle":"Machine identities","description":"Understand which identity accesses your repositories during interactive work and background environment builds, and choose personal or workspace connections.","href":"/build/code/machine-identities"},{"title":"Secure Access to GitHub and GitLab","sidebarTitle":"Git credential protection","href":"/build/code/git-provider-proxy"}]},{"group":"Concepts","pages":[{"title":"How coding with Replit works","sidebarTitle":"How coding with Replit works","description":"Follow your code from a connected GitHub or GitLab repository to a running development preview, understand the workspace, and prepare a reviewed contribution.","href":"/build/code/working-with-code"},{"title":"Navigate your editor","sidebarTitle":"Navigate your editor","href":"/build/code/navigate-your-workspace"},{"title":"Git essentials","sidebarTitle":"Git essentials","href":"/build/code/git-essentials"}]}]},{"tab":"Designs","pages":[{"title":"Designs","href":"/design/what-is-replit-design"}]},{"tab":"Use cases","pages":[{"title":"Use cases","href":"/use-cases"}]},{"tab":"Learn","pages":[{"title":"Learn","href":"/learn/foundations/what-is-an-app"}]},{"tab":"Features","pages":[{"title":"Features","href":"/features/collaboration/workspaces"}]},{"tab":"Trust \u0026 Billing","pages":[{"title":"Trust \u0026 Billing","href":"/category/billing"}]},{"tab":"Enterprise","pages":[{"title":"Enterprise","href":"/teams/welcome"}]}]},{"language":"fr","navbar":{"links":[],"primary":{"type":"button","label":"Commencer à créer","href":"https://replit.com?ref=docs"}},"pages":[{"title":"fr","href":"/fr/build/code/git-provider-proxy"}]},{"language":"pt","navbar":{"links":[],"primary":{"type":"button","label":"Comece a criar","href":"https://replit.com?ref=docs"}},"hidden":false,"pages":[{"title":"pt","href":"/pt/build/code/git-provider-proxy"}]},{"language":"ja","navbar":{"links":[],"primary":{"type":"button","label":"作成を開始","href":"https://replit.com?ref=docs"}},"hidden":false,"pages":[{"title":"ja","href":"/ja/build/code/git-provider-proxy"}]},{"language":"ko","navbar":{"links":[],"primary":{"type":"button","label":"빌드 시작하기","href":"https://replit.com?ref=docs"}},"hidden":false,"pages":[{"title":"ko","href":"/ko/build/code/git-provider-proxy"}]}]},"basePath":"","title":"Secure Access to GitHub and GitLab - Replit","buildId":"dpl_Fyv1NbzwP68g2bEH2Roy98uY1zmE","deploymentId":"dpl_Fyv1NbzwP68g2bEH2Roy98uY1zmE","dynamics":[],"chunks":[]}