Editing files in Designer uses Code Editor. You can edit a variety of file types, and when you edit .sql or .py files you can then link these to your SQL Script and Python Pushdown components in your orchestration pipelines to run those scripts.Code Editor is powered by the Monaco Editor, which also powers Visual Studio Code and other editors across the web.Code Editor supports basic syntax colorization and works with the command palette in Designer.
Video example
Create files to edit
The following file types can be created within Designer and then edited in Code Editor:
.sql
.py
To create .sql or .py files:
In the Files panel, click the + icon.
Choose what file to create:
Python script (.py)
SQL script (.sql)
This will situate the newly created file outside any folders.To create a file inside a folder, click the three dots … alongside that folder and then click Add → Python script (or other type of file).Creating a new Python script or SQL script will open that new script in Code Editor.
Edit files
If the repository you have connected to a Maia project contains any of the following files, you can edit them in Code Editor:
The Python Pushdown component is not yet available for Databricks projects. You can use Code Editor to edit your .py files, but you cannot run these Python scripts from a Databricks project in Designer yet.
The Python Pushdown component is not yet available for Amazon Redshift projects. You can use Code Editor to edit your .py files, but you cannot run these Python scripts from an Amazon Redshift project in Designer yet.However, you can use the Python Script component to run Python scripts from within that component’s inline editor.
Command palette
Designer
Using the Designer command palette, press cmd + k (Mac) or CTRL + k (Windows) to activate the command palette in Designer. Type the name of the file you wish to open and then press Enter. Alternatively, activate the command palette by clicking the magnifying glass (search) in the top-left.
Monaco Editor
Using the Monaco Editor command palette, press fn + F1 (Mac) or F1 (Windows) to access all command palette actions available in Monaco Editor-powered editors.
Was this page helpful?
{"docsConfig":{"theme":"aspen","$schema":"https://mintlify.com/docs.json","name":"Maia Documentation","colors":{"primary":"#001f1d","light":"#20514e","dark":"#001f1d"},"logo":{"light":"https://mintcdn.com/matillion/GyuNBHAx-GXnVlKX/images/maia-by-matillion-light.svg?fit=max\u0026auto=format\u0026n=GyuNBHAx-GXnVlKX\u0026q=85\u0026s=2c48b854f858c5a835450b3f34360db7","dark":"https://mintcdn.com/matillion/GyuNBHAx-GXnVlKX/images/maia-by-matillion-dark.svg?fit=max\u0026auto=format\u0026n=GyuNBHAx-GXnVlKX\u0026q=85\u0026s=88f8d1e1b1931cefd35c233a56cafe0a","href":"https://docs.maia.ai/"},"favicon":{"light":"https://mintcdn.com/matillion/0xM0A92Owv1nZXX1/images/maia-favicon-dark-green.png?fit=max\u0026auto=format\u0026n=0xM0A92Owv1nZXX1\u0026q=85\u0026s=356295fc83c5c6d1ed4aac2573ae45b1","dark":"https://mintcdn.com/matillion/0xM0A92Owv1nZXX1/images/maia-favicon-white.png?fit=max\u0026auto=format\u0026n=0xM0A92Owv1nZXX1\u0026q=85\u0026s=8709fc6d370155352cb6a4b5bbdd59d6"},"appearance":{"default":"light","strict":true},"background":{"decoration":"gradient"},"navbar":{"links":[{"href":"https://support.matillion.com/s/","label":"Support"}],"primary":{"type":"button","label":"Book your Maia demo","href":"https://www.maia.ai/book-a-demo"}},"footer":{"socials":{"x":"https://x.com/matillion","facebook":"https://www.facebook.com/matillion","youtube":"https://www.youtube.com/user/MatillionVideos","linkedin":"https://www.linkedin.com/company/matillion-limited","instagram":"https://www.instagram.com/matillion_"},"links":[{"header":"Maia","items":[{"label":"Maia.ai","href":"https://maia.ai"},{"label":"Academy","href":"https://academy.matillion.com"},{"label":"Exchange","href":"https://exchange.matillion.com/"},{"label":"Roadmap","href":"https://roadmap.matillion.com/"},{"label":"Support","href":"https://support.matillion.com/s"},{"label":"YouTube","href":"https://www.youtube.com/@Matillion"}]},{"header":"Matillion","items":[{"label":"Matillion.com","href":"https://matillion.com"},{"label":"Status","href":"https://status.matillion.com/"},{"label":"News","href":"https://www.matillion.com/news"},{"label":"Legal","href":"https://www.matillion.com/legal"},{"label":"Trust Center","href":"https://www.matillion.com/trust-center"}]}]},"seo":{"metatags":{"google-site-verification":"0VLXGRESICGHnU66TdhEgUMBRRubPnW8JTkzOpiiNn0"}},"fonts":{"heading":{"family":"Inter, system-ui"},"body":{"family":"Inter, system-ui"}},"integrations":{"ga4":{"measurementId":"G-6T2W93NTXW"},"posthog":{"apiKey":"phc_ky6YtuQApuXUkdApnVTY5PrjvnHx7EQGtYyRVSd9G535","apiHost":"https://us.i.posthog.com"}},"contextual":{"options":["claude","chatgpt","perplexity","copy","view"],"display":"header"},"styling":{"latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"matillion","hasAudioNarration":false,"actualSubdomain":"matillion","customDomains":["docs.maia.ai"],"gitSource":{"type":"github","owner":"matillion","repo":"maia-docs","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"feedback":{"thumbs":true},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"REMOVE_BRANDING":{"status":"DISABLED"},"CONTEXTUAL_FEEDBACK":{"status":"DISABLED"},"CODE_SNIPPET_FEEDBACK":{"status":"DISABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6af73146bd8b0362cded8904","clientVersion":"0.0.4143","searchFilterCounts":[{"language":"default","tag":"Components","count":356},{"language":"default","tag":"Guides","count":210},{"language":"default","tag":"Connectors","count":188},{"language":"default","tag":"API Reference","count":128},{"language":"default","tag":"Endpoints","count":113},{"language":"default","tag":"Orchestration","count":94},{"language":"default","tag":"Admin","count":70},{"language":"default","tag":"Transformation","count":69},{"language":"default","tag":"Runners","count":51},{"language":"default","tag":"Streaming","count":34}],"searchSettings":{"showContentSnippets":false}},"assistantConfig":{},"basePath":"","hasChatPermissions":false,"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","content":"#navbar .bg-background-light,#navbar .bg-background-dark{background-color:#001f1d!important}#navbar a,#navbar button,#navbar span,#navbar p{color:white!important}#navbar svg{color:white!important;stroke:white!important}#navbar #topbar-cta-button a,#navbar #topbar-cta-button a span,#navbar #topbar-cta-button svg{color:#001f1d!important}#navbar #topbar-cta-button a{font-weight:600!important}:root:not(.dark) #search-bar-entry,:root:not(.dark) #nav-anchor,:root:not(.dark) #navbar .navbar-link,:root:not(.dark) .nav-anchor{background-color:#0a3d39!important;border-radius:9999px!important}#topbar-cta-button a span.bg-primary-dark{background:#ffc700!important;border-radius:9999px!important}#navbar svg.bg-gray-500{background-color:white!important}#navbar button.lg\\:hidden div.font-semibold{color:white!important}#navbar button.lg\\:hidden div.text-gray-500 svg{color:white!important;stroke:white!important}#navbar img.nav-logo{content:url('/images/maia-by-matillion-light.svg');height:50px!important;width:auto!important}#footer img.nav-logo{content:url('/images/maia-by-matillion-dark.svg');height:80px!important;width:auto!important}#pagination{display:none}#navigation-items>div{padding-bottom:4rem!important}#navbar a[data-active=\"true\"] div.h-px{height:4px!important;background-color:#ffc700!important;border-radius:9999px!important}[id^=\"headlessui-dialog-panel\"] .navbar-link a{color:white!important}[id^=\"headlessui-dialog-panel\"] nav{padding-top:2.5rem}.accordion{width:100%!important;overflow-x:auto!important}.accordion>div{padding-left:1.375rem!important;padding-right:0!important}.accordion>div[class*=\"overflow\"],.accordion>div>div[class*=\"overflow\"]{overflow:visible!important}@media (min-width: 1920px){body:has(#navbar.is-not-custom) #body-content{max-width:2000px!important}body:has(#navbar.is-not-custom) #content-container{max-width:1650px!important}body:has(#navbar.is-not-custom) #navbar .max-w-8xl{max-width:2000px!important}}body:has(#navbar.is-not-custom) #content{zoom:var(--maia-content-zoom, 100%)}body:has(#navbar.is-not-custom) #content-area>#content+div:has(>p+a){zoom:var(--maia-content-zoom, 100%)}#content-area>#content+div:has(>p+a)>p{font-size:1.5rem;line-height:2rem;font-weight:600;letter-spacing:normal;color:#101828;margin-bottom:0.5rem}.dark #content-area>#content+div:has(>p+a)>p{color:inherit}#content-area>#content+div:has(>p+a)>a{font-size:1rem;line-height:1.75rem}"},{"filePath":"new-features-blog/new-features-blog.css","content":".fos-background-container{position:fixed;top:0;left:0;height:100vh;width:100vw;background:#fff3d1;z-index:-1;background-size:cover}.fos-post-page-container{background-color:#fff;border-radius:20px;padding:20px!important}.fos-roadmap-page-container{background-color:#fff;border-radius:20px;width:95%}@media (min-width: 1024px){.fos-roadmap-page-container{width:70%;margin:0 auto}}.fos-changelog-page-container{background-color:#fff;border-radius:20px}.banner-title,.fos-header-banner-title{color:#00524E;font-size:4rem;font-weight:700;font-family:'Inter', sans-serif}.banner-subtitle,.fos-header-banner-subtitle{color:#001F1D;font-size:1.1487em;margin-top:0.5em;margin-bottom:2em}.fos-header-boards-trigger,.fos-header-roadmap-trigger,.fos-header-changelog-trigger{display:none}.fos-user-side-header{color:white;font-family:'Inter', sans-serif}.fos-header-container{background-color:#001f1d;box-shadow:0px 1px 13px #bfbfbf}.fos-header-boards-dropdown-content span{color:white}.fos-header-links-container{justify-content:center;gap:1em}.fos-header-link{color:white;font-size:14px!important;font-weight:bold;padding:10px 0}.fos-header-logo-container{display:flex}.fos-header-logo-image{width:100px}.fos-header-boards-link{color:white;font-size:16px;padding:10px 0;font-weight:bold}.fos-header-link-icon{color:white}"}],"page":{"pagePath":"docs/guides/code-editor","slug":"/docs/guides/code-editor","pageMetadata":{"title":"Code Editor","description":null,"href":"/docs/guides/code-editor"},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];const maia=`Maia`;const designer=`Designer`;function _createMdxContent(props){const _components={a:`a`,code:`code`,em:`em`,hr:`hr`,li:`li`,ol:`ol`,p:`p`,strong:`strong`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,ul:`ul`,..._provideComponents(),...props.components},{Heading,Note,OptimizedFrame,Table,Warning}=_components;if(!Heading)_missingMdxReference(`Heading`,true);if(!Note)_missingMdxReference(`Note`,true);if(!OptimizedFrame)_missingMdxReference(`OptimizedFrame`,true);if(!Table)_missingMdxReference(`Table`,true);if(!Warning)_missingMdxReference(`Warning`,true);return _jsxs(_Fragment,{children:[_jsxs(_components.p,{children:[`Editing files in `,designer,` uses Code Editor. You can `,_jsx(_components.a,{href:`#edit-files`,children:`edit a variety of file types`}),`, and when you edit .sql or .py files you can then link these to your `,_jsx(_components.a,{href:`/docs/components/sql-script`,children:`SQL Script`}),` and `,_jsx(_components.a,{href:`/docs/components/python-script`,children:`Python Pushdown`}),` components in your orchestration pipelines to run those scripts.`]}),`\n`,_jsxs(_components.p,{children:[`Code Editor is powered by the `,_jsx(_components.a,{href:`https://microsoft.github.io/monaco-editor/`,children:`Monaco Editor`}),`, which also powers Visual Studio Code and other editors across the web.`]}),`\n`,_jsxs(_components.p,{children:[`Code Editor supports basic syntax colorization and works with the `,_jsx(_components.a,{href:`#command-palette`,children:`command palette`}),` in `,designer,`.`]}),`\n`,_jsx(_components.hr,{}),`\n`,_jsx(Heading,{level:`2`,id:`video-example`,children:`Video example`}),`\n`,_jsx(OptimizedFrame,{width:`560`,height:`315`,src:`https://www.youtube.com/embed/e5-mN9KK0Mg?si=jH7P1cCZHXc83Mat\u0026enablejsapi=1`,title:`YouTube video player`,frameBorder:`0`,allow:`accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share; fullscreen`,referrerPolicy:`strict-origin-when-cross-origin`,allowFullScreen:true}),`\n`,_jsx(_components.hr,{}),`\n`,_jsx(Heading,{level:`2`,id:`create-files-to-edit`,children:`Create files to edit`}),`\n`,_jsxs(_components.p,{children:[`The following file types can be created within `,designer,` and then edited in Code Editor:`]}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`.sql`}),`\n`,_jsx(_components.li,{children:`.py`}),`\n`]}),`\n`,_jsx(_components.p,{children:`To create .sql or .py files:`}),`\n`,_jsxs(_components.ol,{children:[`\n`,_jsxs(_components.li,{children:[`In the `,_jsx(_components.strong,{children:`Files`}),` panel, click the `,_jsx(_components.strong,{children:`+`}),` icon.`]}),`\n`,_jsxs(_components.li,{children:[`Choose what file to create:`,`\n`,_jsxs(_components.ol,{children:[`\n`,_jsx(_components.li,{children:`Python script (.py)`}),`\n`,_jsx(_components.li,{children:`SQL script (.sql)`}),`\n`]}),`\n`]}),`\n`]}),`\n`,_jsxs(_components.p,{children:[`This will situate the newly created file `,_jsx(_components.em,{children:`outside`}),` any folders.`]}),`\n`,_jsxs(_components.p,{children:[`To create a file inside a folder, click the three dots `,_jsx(_components.strong,{children:`…`}),` alongside that folder and then click `,_jsx(_components.strong,{children:`Add`}),` → `,_jsx(_components.strong,{children:`Python script`}),` (or other type of file).`]}),`\n`,_jsx(_components.p,{children:`Creating a new Python script or SQL script will open that new script in Code Editor.`}),`\n`,_jsx(_components.hr,{}),`\n`,_jsx(Heading,{level:`2`,id:`edit-files`,children:`Edit files`}),`\n`,_jsxs(_components.p,{children:[`If the repository you have connected to a `,maia,` project contains any of the following files, you can edit them in Code Editor:`]}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`.sql`}),`\n`,_jsx(_components.li,{children:`.py`}),`\n`,_jsxs(_components.li,{children:[`.yaml (`,_jsx(_components.a,{href:`/docs/guides/shared-pipelines#editing-the-configuration-file`,children:`including the shared-pipelines.yaml file`}),`)`]}),`\n`,_jsx(_components.li,{children:`.csv`}),`\n`,_jsx(_components.li,{children:`.md`}),`\n`,_jsx(_components.li,{children:`.txt`}),`\n`,_jsx(_components.li,{children:`.sc`}),`\n`,_jsx(_components.li,{children:`.js`}),`\n`,_jsx(_components.li,{children:`.css`}),`\n`,_jsx(_components.li,{children:`.xml`}),`\n`,_jsx(_components.li,{children:`.html`}),`\n`]}),`\n`,_jsxs(_components.p,{children:[`.sql files can be used in the `,_jsx(_components.a,{href:`/docs/components/sql-script`,children:`SQL Script`}),` component and .py files can be used in the `,_jsx(_components.a,{href:`/docs/components/python-script`,children:`Python Pushdown`}),` component in your orchestration pipelines.`]}),`\n`,_jsx(Note,{children:_jsx(_components.p,{children:`We are working to add support for editing .json files.`})}),`\n`,_jsx(Note,{children:_jsxs(_components.p,{children:[`All the file types in this list can be imported to and exported from `,designer,`.`]})}),`\n`,_jsx(_components.hr,{}),`\n`,_jsx(Heading,{level:`2`,id:`rename-move-and-delete-files`,children:`Rename, move, and delete files`}),`\n`,_jsx(_components.p,{children:`You can rename, move, and delete any files in your project.`}),`\n`,_jsx(_components.hr,{}),`\n`,_jsx(Heading,{level:`2`,id:`using-variables-in-the-code-editor`,children:`Using variables in the code editor`}),`\n`,_jsx(Heading,{level:`3`,id:`snowflake`,children:`Snowflake`}),`\n`,_jsx(Warning,{children:_jsxs(_components.p,{children:[`When naming variables, avoid using `,_jsx(_components.a,{href:`https://docs.snowflake.com/en/sql-reference/reserved-keywords`,children:`Snowflake reserved keywords`}),`.`]})}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Applies to`}),_jsx(_components.th,{children:`Note`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsxs(_components.td,{children:[`Code written inside the `,_jsx(_components.a,{href:`/docs/components/sql-script`,children:`SQL Script`}),` component.`]}),_jsxs(_components.td,{children:[`Supports both existing variable code `,_jsx(_components.code,{children:\"${variable}\"}),` and `,_jsx(_components.a,{href:`https://docs.snowflake.com/en/sql-reference/session-variables`,children:`Snowflake variable`}),` syntax.`]})]}),_jsxs(_components.tr,{children:[_jsxs(_components.td,{children:[`Code written inside the `,_jsx(_components.a,{href:`/docs/components/sql`,children:`SQL`}),` transformation component.`]}),_jsxs(_components.td,{children:[`Supports the existing variable code `,_jsx(_components.code,{children:\"${variable}\"}),`.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Code written inside SQL script files.`}),_jsxs(_components.td,{children:[`Only `,_jsx(_components.a,{href:`https://docs.snowflake.com/en/sql-reference/session-variables`,children:`Snowflake variable`}),` syntax is supported.`]})]}),_jsxs(_components.tr,{children:[_jsxs(_components.td,{children:[`Code written inside the `,_jsx(_components.a,{href:`/docs/components/python-pushdown`,children:`Python Pushdown`}),` component or Python script files.`]}),_jsxs(_components.td,{children:[`Only `,_jsx(_components.a,{href:`/docs/guides/variables#python-scripts`,children:`Python variable syntax`}),` is supported.`]})]})]})]}),`\n`,_jsx(Heading,{level:`3`,id:`databricks`,children:`Databricks`}),`\n`,_jsx(Warning,{children:_jsxs(_components.p,{children:[`When naming variables, avoid using `,_jsx(_components.a,{href:`https://docs.databricks.com/en/sql/language-manual/sql-ref-reserved-words.html`,children:`Databricks reserved keywords`}),`.`]})}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Applies to`}),_jsx(_components.th,{children:`Note`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsxs(_components.td,{children:[`Code written inside the `,_jsx(_components.a,{href:`/docs/components/sql-script`,children:`SQL Script`}),` component.`]}),_jsxs(_components.td,{children:[`Supports both existing variable code `,_jsx(_components.code,{children:\"${variable}\"}),` and `,_jsx(_components.a,{href:`https://docs.databricks.com/en/sql/language-manual/sql-ref-variables.html`,children:`Databricks variable`}),` syntax.`]})]}),_jsxs(_components.tr,{children:[_jsxs(_components.td,{children:[`Code written inside the `,_jsx(_components.a,{href:`/docs/components/sql`,children:`SQL`}),` transformation component.`]}),_jsxs(_components.td,{children:[`Supports the existing variable code `,_jsx(_components.code,{children:\"${variable}\"}),`.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Code written inside SQL script files.`}),_jsxs(_components.td,{children:[`Only `,_jsx(_components.a,{href:`https://docs.databricks.com/en/sql/language-manual/sql-ref-variables.html`,children:`Databricks variable`}),` syntax is supported.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Code written inside Python script files.`}),_jsxs(_components.td,{children:[`Only `,_jsx(_components.a,{href:`/docs/guides/variables#python-scripts`,children:`Python variable syntax`}),` is supported.`]})]})]})]}),`\n`,_jsx(Warning,{children:_jsxs(_components.p,{children:[`The Python Pushdown component is not yet available for Databricks projects. You can use Code Editor to edit your .py files, but you cannot run these Python scripts from a Databricks project in `,designer,` yet.`]})}),`\n`,_jsx(Heading,{level:`3`,id:`amazon-redshift`,children:`Amazon Redshift`}),`\n`,_jsx(Warning,{children:_jsxs(_components.p,{children:[`When naming variables, avoid using `,_jsx(_components.a,{href:`https://docs.aws.amazon.com/redshift/latest/dg/r_pg_keywords.html`,children:`Amazon Redshift reserved keywords`}),`.`]})}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Applies to`}),_jsx(_components.th,{children:`Note`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsxs(_components.td,{children:[`Code written inside the `,_jsx(_components.a,{href:`/docs/components/sql-script`,children:`SQL Script`}),` component.`]}),_jsxs(_components.td,{children:[`Supports the existing variable code `,_jsx(_components.code,{children:\"${variable}\"}),`.`]})]}),_jsxs(_components.tr,{children:[_jsxs(_components.td,{children:[`Code written inside the `,_jsx(_components.a,{href:`/docs/components/sql`,children:`SQL`}),` transformation component.`]}),_jsxs(_components.td,{children:[`Supports the existing variable code `,_jsx(_components.code,{children:\"${variable}\"}),`.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Code written inside SQL script files.`}),_jsx(_components.td,{children:`Variables not supported. Coming soon.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Code written inside Python script files.`}),_jsxs(_components.td,{children:[`Only `,_jsx(_components.a,{href:`/docs/guides/variables#python-scripts`,children:`Python variable syntax`}),` is supported.`]})]})]})]}),`\n`,_jsxs(Warning,{children:[_jsxs(_components.p,{children:[`The Python Pushdown component is not yet available for Amazon Redshift projects. You can use Code Editor to edit your .py files, but you cannot run these Python scripts from an Amazon Redshift project in `,designer,` yet.`]}),_jsxs(_components.p,{children:[`However, you can use the `,_jsx(_components.a,{href:`/docs/components/python-script`,children:`Python Script`}),` component to run Python scripts from within that component’s inline editor.`]})]}),`\n`,_jsx(_components.hr,{}),`\n`,_jsx(Heading,{level:`2`,id:`command-palette`,children:`Command palette`}),`\n`,_jsx(Heading,{level:`3`,id:`designer`,children:`Designer`}),`\n`,_jsxs(_components.p,{children:[`Using the `,designer,` command palette, press `,_jsx(_components.code,{children:`cmd`}),` + `,_jsx(_components.code,{children:`k`}),` (Mac) or `,_jsx(_components.code,{children:`CTRL`}),` + `,_jsx(_components.code,{children:`k`}),` (Windows) to activate the command palette in `,designer,`. Type the name of the file you wish to open and then press Enter. Alternatively, activate the command palette by clicking the magnifying glass (search) in the top-left.`]}),`\n`,_jsx(Heading,{level:`3`,id:`monaco-editor`,children:`Monaco Editor`}),`\n`,_jsxs(_components.p,{children:[`Using the Monaco Editor command palette, press `,_jsx(_components.code,{children:`fn`}),` + `,_jsx(_components.code,{children:`F1`}),` (Mac) or `,_jsx(_components.code,{children:`F1`}),` (Windows) to access all command palette actions available in Monaco Editor-powered editors.`]})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{maia,designer,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":"Code Editor","description":null,"href":"/docs/guides/code-editor"}}},"mdxSourceWithNoJs":null,"noJsSplices":[[792,810,"`Designer`,` uses Co"],[1657,1675,"`Designer`,`.`]}),`\n"],[2345,2363,"`Designer`,` and the"],[3765,3783,"`Maia`,` project con"],[5091,5109,"`Designer`,`.`]})}),"],[9615,9633,"`Designer`,` yet.`]}"],[11532,11550,"`Designer`,` yet.`]}"],[11999,12017,"`Designer`,` command"],[12266,12284,"`Designer`,`. Type t"]]},"mdxExtracts":{"tableOfContents":[{"title":"Video example","slug":"video-example","depth":2,"children":[]},{"title":"Create files to edit","slug":"create-files-to-edit","depth":2,"children":[]},{"title":"Edit files","slug":"edit-files","depth":2,"children":[]},{"title":"Rename, move, and delete files","slug":"rename-move-and-delete-files","depth":2,"children":[]},{"title":"Using variables in the code editor","slug":"using-variables-in-the-code-editor","depth":2,"children":[{"title":"Snowflake","slug":"snowflake","depth":3,"children":[]},{"title":"Databricks","slug":"databricks","depth":3,"children":[]},{"title":"Amazon Redshift","slug":"amazon-redshift","depth":3,"children":[]}]},{"title":"Command palette","slug":"command-palette","depth":2,"children":[{"title":"Designer","slug":"designer","depth":3,"children":[]},{"title":"Monaco Editor","slug":"monaco-editor","depth":3,"children":[]}]}],"codeExamples":{}},"jsLinks":["/_mintlify/custom/matillion/1eecfe13cb8a36b9/scripts/feedback-widget.js","/_mintlify/custom/matillion/b8b092d8d394af0f/scripts/ga4-events.js","/_mintlify/custom/matillion/5baf5b38fe34f41f/scripts/iubenda.js","/_mintlify/custom/matillion/573540f1e9142d9c/scripts/kapa-widget.js","/_mintlify/custom/matillion/a52101786f42c23b/scripts/ph-pageleaves.js","/_mintlify/custom/matillion/b8f0431aaf9ef855/scripts/cookie-preferences-button.js","/_mintlify/custom/matillion/a3d31738f4c89949/scripts/status-badge-nav.js","/_mintlify/custom/matillion/b444958fcc79163d/scripts/text-size-slider.js","/_mintlify/custom/matillion/f7016c1e98f77080/scripts/posthog-events.js"],"subdomain":"matillion","siteName":"Maia Documentation","title":"Code Editor - Maia Documentation","relatedPagesConfig":{"enabled":true,"limit":5,"mode":"manual"},"navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-11-12T18:15:24.877Z","originalFileLocation":"docs/guides/code-editor.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=\"light\";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=\"application-name\" content=\"Maia Documentation\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/matillion/eb7R3mt9l7P1vThW/_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/matillion/eb7R3mt9l7P1vThW/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/matillion/eb7R3mt9l7P1vThW/_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/matillion/eb7R3mt9l7P1vThW/_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/matillion/eb7R3mt9l7P1vThW/_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/matillion/eb7R3mt9l7P1vThW/_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/matillion/eb7R3mt9l7P1vThW/_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/matillion/eb7R3mt9l7P1vThW/_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/matillion/eb7R3mt9l7P1vThW/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Code Editor - Maia Documentation\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Maia Documentation\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.maia.ai/docs/guides/code-editor\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://matillion.mintlify.site/_mintlify/api/og/v2?division=Pipelines\u0026amp;title=Code+Editor\u0026amp;theme=ce57a3e3dfd574362d42229a\u0026amp;signature=dadec878f51dea1167e71f2f76b87bc62cc8053eb64dbf5469bbbf9562c27128\">\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=\"Code Editor - Maia Documentation\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://matillion.mintlify.site/_mintlify/api/og/v2?division=Pipelines\u0026amp;title=Code+Editor\u0026amp;theme=ce57a3e3dfd574362d42229a\u0026amp;signature=dadec878f51dea1167e71f2f76b87bc62cc8053eb64dbf5469bbbf9562c27128\">\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/matillion/eb7R3mt9l7P1vThW/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Maia Documentation\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#001f1d\">\u003cmeta data-mint-head name=\"google-site-verification\" content=\"0VLXGRESICGHnU66TdhEgUMBRRubPnW8JTkzOpiiNn0\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.maia.ai/docs/guides/code-editor\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/docs/guides/code-editor.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.maia.ai/#organization\",\"name\":\"Maia Documentation\",\"url\":\"https://docs.maia.ai\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/matillion/GyuNBHAx-GXnVlKX/images/maia-by-matillion-light.svg?fit=max\u0026auto=format\u0026n=GyuNBHAx-GXnVlKX\u0026q=85\u0026s=2c48b854f858c5a835450b3f34360db7\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.maia.ai#website\",\"name\":\"Maia Documentation\",\"url\":\"https://docs.maia.ai\",\"publisher\":{\"@id\":\"https://docs.maia.ai/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.maia.ai/docs/guides/code-editor#webpage\",\"url\":\"https://docs.maia.ai/docs/guides/code-editor\",\"name\":\"Code Editor\",\"dateModified\":\"2026-11-12T18:15:24.877Z\",\"isPartOf\":{\"@id\":\"https://docs.maia.ai#website\"},\"breadcrumb\":{\"@id\":\"https://docs.maia.ai/docs/guides/code-editor#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.maia.ai/docs/guides/code-editor#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Pipelines\",\"item\":\"https://docs.maia.ai/docs/guides/pipelines\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Code Editor\",\"item\":\"https://docs.maia.ai/docs/guides/code-editor\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://docs.maia.ai/docs/guides/code-editor#article\",\"headline\":\"Code Editor\",\"name\":\"Code Editor\",\"url\":\"https://docs.maia.ai/docs/guides/code-editor\",\"mainEntityOfPage\":{\"@id\":\"https://docs.maia.ai/docs/guides/code-editor#webpage\"},\"dateModified\":\"2026-11-12T18:15:24.877Z\",\"publisher\":{\"@id\":\"https://docs.maia.ai/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.maia.ai#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Maia Documentation\",\"publisher\":{\"@type\":\"Organization\",\"name\":\"Maia Documentation\"},\"provider\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","agentPointerHref":"/docs/guides/code-editor.md","siteName":"Maia Documentation","nav":{"global":null,"tabs":[{"tab":"Home","pages":[{"title":"Home","href":""}]},{"tab":"Admin","pages":[{"title":"Admin","href":"/docs/administration/administration-overview"}]},{"tab":"Components","pages":[{"title":"Components","href":"/docs/components/components-overview"}]},{"tab":"Guides","pages":[{"group":"Platform overview","root":{"title":"Maia product overview","href":"/docs/guides/maia-overview"},"pages":[{"title":"Maia product overview","href":"/docs/guides/maia-overview"},{"title":"Maia product architecture","href":"/docs/guides/architecture-overview"},{"title":"Full SaaS vs Hybrid SaaS","href":"/docs/guides/full-saas-vs-hybrid-saas"},{"title":"Data Pipeline Language (DPL)","href":"/docs/guides/data-pipeline-language"},{"title":"Maia glossary","href":"/docs/guides/glossary"},{"title":"Supported browsers","href":"/docs/guides/supported-browsers"},{"title":"Maia product release FAQ","href":"/docs/guides/release-faq"},{"title":"Migrating from Matillion ETL to Maia","href":"/docs/guides/migrating-from-matillion-etl"}]},{"group":"Setup","root":{"title":"Setup overview","href":"/docs/guides/setup-overview"},"pages":[{"title":"Setup overview","href":"/docs/guides/setup-overview"},{"title":"Services","href":"/docs/guides/services"},{"group":"Full SaaS","pages":[{"title":"Setup guide - Matillion Full SaaS Snowflake","href":"/docs/guides/full-saas-snowflake"},{"title":"Setup guide - Matillion Full SaaS Amazon Redshift","href":"/docs/guides/full-saas-redshift"},{"title":"Setup guide - Matillion Full SaaS Databricks","href":"/docs/guides/full-saas-databricks"},{"title":"Setup guide - Matillion Full SaaS Google BigQuery","href":"/docs/guides/full-saas-bigquery"}]},{"group":"Hybrid SaaS","pages":[{"title":"Setup guide - Hybrid SaaS Snowflake on AWS","href":"/docs/guides/hybrid-saas-snowflake-aws"},{"title":"Setup guide - Hybrid SaaS Snowflake on Azure","href":"/docs/guides/hybrid-saas-snowflake-azure"},{"title":"Setup guide - Hybrid SaaS Snowflake on Google Cloud","href":"/docs/guides/hybrid-saas-snowflake-gcp"},{"title":"Setup guide - Hybrid SaaS Snowflake on Snowpark","href":"/docs/guides/hybrid-saas-snowflake-snowpark"},{"title":"Setup guide - Hybrid SaaS Amazon Redshift on AWS","href":"/docs/guides/hybrid-saas-redshift-aws"},{"title":"Setup guide - Hybrid SaaS Databricks on AWS","href":"/docs/guides/hybrid-saas-databricks-aws"},{"title":"Setup guide - Hybrid SaaS Databricks on Azure","href":"/docs/guides/hybrid-saas-databricks-azure"},{"title":"Setup guide - Hybrid SaaS Google BigQuery","href":"/docs/guides/hybrid-saas-bigquery"}]}]},{"group":"Getting started","root":{"title":"Maia new user tutorial","href":"/docs/guides/new-user-tutorial"},"pages":[{"title":"Maia new user tutorial","href":"/docs/guides/new-user-tutorial"},{"title":"Project quickstart guide","href":"/docs/guides/project-quickstart-guide"},{"title":"Using Designer","href":"/docs/guides/using-designer"},{"title":"Convert workloads from other platforms","tag":"Preview","href":"/docs/guides/convert-workloads-from-other-platforms"},{"title":"Best practices for converting workloads","href":"/docs/guides/convert-workloads-best-practices"},{"title":"Getting started with loading data","href":"/docs/guides/loading-data-overview"},{"title":"Incremental or high water mark data loading","href":"/docs/guides/incremental-load-example"},{"title":"Post-processing","href":"/docs/guides/post-processing"},{"title":"Sampling component output and metadata","href":"/docs/guides/sampling-output"},{"title":"Validating pipelines","href":"/docs/guides/validating-pipelines"},{"title":"Organizing file storage","href":"/docs/guides/organizing-file-storage"}]},{"group":"Projects","root":{"title":"Projects","href":"/docs/guides/projects"},"pages":[{"title":"Projects","href":"/docs/guides/projects"},{"title":"Branches","href":"/docs/guides/branches"},{"title":"Environments","href":"/docs/guides/environments"},{"title":"Artifacts","href":"/docs/guides/artifacts"},{"title":"Schedules","href":"/docs/guides/schedules"},{"group":"Connections","root":{"title":"Connections","href":"/docs/guides/connections"},"pages":[{"title":"Connections","href":"/docs/guides/connections"},{"title":"Secrets and connections","href":"/docs/guides/secrets-and-connections-overview"},{"title":"Understanding the new connections model","href":"/docs/guides/new-connections-model"},{"title":"Secrets and secret definitions","href":"/docs/guides/secrets-and-secret-definitions"},{"title":"Cloud provider credentials","href":"/docs/guides/cloud-credentials"}]},{"title":"Networks","href":"/docs/guides/networks"},{"title":"Upgrade Assistant","href":"/docs/guides/upgrade-assistant"}]},{"group":"Pipelines","root":{"title":"Pipelines","href":"/docs/guides/pipelines"},"pages":[{"title":"Pipelines","href":"/docs/guides/pipelines"},{"title":"Pipelines tutorial","href":"/docs/guides/pipelines-tutorial"},{"group":"Variables","pages":[{"title":"Project and pipeline variables","href":"/docs/guides/variables"},{"title":"Grid variables","href":"/docs/guides/grid-variables"},{"title":"System variables","href":"/docs/guides/system-variables"},{"title":"Variable expressions","description":null,"href":"/docs/guides/variable-expressions"}]},{"title":"Code Editor","href":"/docs/guides/code-editor"},{"title":"Transactions","description":null,"href":"/docs/guides/transactions"},{"title":"Data masking in transformation pipelines","href":"/docs/guides/data-masking-transformation"},{"title":"Matillion data quality framework","href":"/docs/guides/data-quality-framework"},{"title":"Shared pipelines","href":"/docs/guides/shared-pipelines"},{"title":"Reviewing pipeline quality","tag":"Preview","href":"/docs/guides/pipeline-quality"},{"title":"Tutorial: Triggering a pipeline via SQS","href":"/docs/guides/triggering-a-pipeline-via-sqs"}]},{"group":"Git","root":{"title":"Git overview","href":"/docs/guides/git-introduction"},"pages":[{"title":"Git overview","href":"/docs/guides/git-introduction"},{"group":"Using Git in Designer","root":{"title":"Using Git in Designer","href":"/docs/guides/git-overview"},"pages":[{"title":"Using Git in Designer","href":"/docs/guides/git-overview"},{"title":"Commit changes","href":"/docs/guides/git-commit"},{"title":"Push local changes","href":"/docs/guides/git-push"},{"title":"Pull remote changes","href":"/docs/guides/git-pull"},{"title":"Merge from branch","href":"/docs/guides/git-merge"},{"title":"Compare changes","href":"/docs/guides/git-compare"},{"title":"Reset branch","href":"/docs/guides/git-hard-reset"},{"title":"Revert changes","href":"/docs/guides/git-revert"},{"title":"Pull requests","href":"/docs/guides/git-pull-requests"},{"title":"Troubleshooting Git errors","href":"/docs/guides/troubleshooting-git"}]},{"group":"Connect your own Git repository","root":{"title":"Connect your own Git repo","href":"/docs/guides/installing-git-provider-overview"},"pages":[{"title":"Connect your own Git repo","href":"/docs/guides/installing-git-provider-overview"},{"group":"GitHub","root":{"title":"What is the Maia GitHub app?","href":"/docs/guides/matillion-github-app-overview"},"pages":[{"title":"What is the Maia GitHub app?","href":"/docs/guides/matillion-github-app-overview"},{"title":"Installing the Maia app in GitHub","href":"/docs/guides/installing-matillion-app-github-marketplace"},{"title":"Prerequisites for connecting to a GitHub repository","href":"/docs/guides/connect-github-repository-prerequisites"},{"title":"Troubleshooting GitHub repository errors","href":"/docs/guides/troubleshooting-github-repository-connection"}]},{"group":"GitLab","root":{"title":"What is the Maia GitLab App?","href":"/docs/guides/matillion-gitlab-app-overview"},"pages":[{"title":"What is the Maia GitLab App?","href":"/docs/guides/matillion-gitlab-app-overview"},{"title":"Prerequisites for connecting to a GitLab repository","href":"/docs/guides/connect-gitlab-repository-prerequisites"},{"title":"Troubleshooting GitLab repository errors","href":"/docs/guides/troubleshooting-gitlab-repository-connections"}]},{"group":"Azure DevOps","root":{"title":"Maia Azure DevOps app overview","href":"/docs/guides/matillion-azure-devops-app-overview"},"pages":[{"title":"Maia Azure DevOps app overview","href":"/docs/guides/matillion-azure-devops-app-overview"},{"title":"Installing the Maia app in Azure","href":"/docs/guides/installing-matillion-app-azure-devops"},{"title":"Prerequisites for connecting to an Azure DevOps repository","href":"/docs/guides/connect-azure-devops-repository-prerequisites"},{"title":"Troubleshooting Azure DevOps repository errors","href":"/docs/guides/troubleshooting-azure-devops-repository-connection"}]},{"group":"Bitbucket","root":{"title":"Maia Bitbucket app overview","href":"/docs/guides/matillion-bitbucket-app-overview"},"pages":[{"title":"Maia Bitbucket app overview","href":"/docs/guides/matillion-bitbucket-app-overview"},{"title":"Prerequisites for connecting to a Bitbucket repository","href":"/docs/guides/connect-bitbucket-repository-prerequisites"},{"title":"Troubleshooting Bitbucket repository errors","href":"/docs/guides/troubleshooting-bitbucket-repository-connection"}]}]},{"title":"Reconnecting your Git user account","href":"/docs/guides/reconnecting-git-user-account"}]},{"group":"Custom connectors","root":{"title":"Custom connector overview","href":"/docs/guides/custom-connector-overview"},"pages":[{"title":"Custom connector overview","href":"/docs/guides/custom-connector-overview"},{"title":"Flex connector overview","href":"/docs/guides/flex-connector-introduction"},{"title":"Creating custom connectors","href":"/docs/guides/custom-connector-setup"},{"title":"Custom connector authentication","href":"/docs/guides/custom-connector-authentication"},{"title":"Script paging in custom connectors","href":"/docs/guides/custom-connector-script-paging"}]},{"group":"Runners","root":{"title":"Maia runner overview","href":"/docs/guides/runner-overview"},"pages":[{"title":"Maia runner overview","href":"/docs/guides/runner-overview"},{"title":"Maia runner updates","href":"/docs/guides/runner-updates"},{"title":"Scaling best practices","href":"/docs/guides/scaling-best-practices"},{"group":"Managing runners","root":{"title":"Manage runners","href":"/docs/guides/manage-runners"},"pages":[{"title":"Manage runners","href":"/docs/guides/manage-runners"},{"title":"Create a Maia runner in your infrastructure","href":"/docs/guides/create-a-runner"},{"title":"Pause a Maia runner","href":"/docs/guides/pause-runner"},{"title":"Restart a Maia runner","href":"/docs/guides/restart-runner"},{"title":"Refresh Maia runner credentials","href":"/docs/guides/refresh-credentials"},{"title":"Restrict a Maia runner","href":"/docs/guides/restrict-a-runner"},{"group":"Logging","pages":[{"title":"Maia runner logs","href":"/docs/guides/runner-logs"},{"title":"Enable Maia runner heap dumps","href":"/docs/guides/enable-runner-heap-dumps"},{"title":"Export Maia runner logs","href":"/docs/guides/export-logs-hybrid-saas"}]}]},{"group":"AWS runner","pages":[{"title":"Amazon EKS deployment guide for Maia runners","href":"/docs/guides/eks-deployment-guide"},{"group":"ECS Fargate","pages":[{"title":"Maia runner installation using a CloudFormation quick-create link","href":"/docs/guides/runner-installation-cloudformation-quick-create"},{"title":"AWS Fargate manual setup for Maia runners","href":"/docs/guides/aws-fargate-manual-runner-setup"}]},{"group":"AWS configuration","pages":[{"title":"AWS IAM roles","href":"/docs/guides/aws-iam-roles"},{"title":"AWS IAM permissions for runner deployment","href":"/docs/guides/aws-iam-permissions-for-runner"},{"title":"Add Maia runner credentials to AWS Secrets Manager","href":"/docs/guides/add-runner-credentials-to-aws-secrets-manager"}]}]},{"group":"Azure runner","pages":[{"title":"Azure AKS deployment guide for Maia runners","href":"/docs/guides/aks-deployment-guide"},{"group":"Container Apps","pages":[{"title":"Maia runner installation using an ARM template","href":"/docs/guides/azure-arm-runner-install"},{"title":"ARM template permissions","href":"/docs/guides/arm-template-permissions"},{"title":"Download and amend the Azure ARM template","href":"/docs/guides/amend-azure-arm-template"},{"title":"Configuring an Azure key vault for Maia runners","href":"/docs/guides/azure-arm-runner-key-vault"},{"title":"Azure managed identity","href":"/docs/guides/azure-managed-identity"},{"title":"Sizing Maia runners on Azure Container Apps","href":"/docs/guides/azure-arm-runner-sizing"}]},{"title":"Troubleshooting a Maia runner hosted on Azure","href":"/docs/guides/azure-runner-troubleshooting"}]},{"group":"Google Cloud runner","pages":[{"title":"Google Cloud GKE deployment for Maia runners","href":"/docs/guides/gke-deployment-guide"},{"title":"Google Cloud IAM permissions for runner deployment","href":"/docs/guides/gcp-iam-permissions-for-runner"}]},{"group":"Snowflake runner","pages":[{"title":"Installing a Maia runner for Snowflake","href":"/docs/guides/snowflake-runner-install"},{"title":"Using secrets in a Maia runner for Snowflake","href":"/docs/guides/snowflake-runner-secrets"},{"title":"Troubleshooting a Maia runner for Snowflake","href":"/docs/guides/snowflake-runner-troubleshooting"}]},{"title":"Kubernetes deployment guide for runners","href":"/docs/guides/kubernetes-deployment-guide"},{"title":"Connectivity via AWS PrivateLink","href":"/docs/guides/connecting-via-privatelink"},{"title":"Shared script runner","href":"/docs/guides/shared-script-runner"},{"group":"General configuration","pages":[{"title":"Optional Maia runner parameters","href":"/docs/guides/optional-runner-parameters"},{"title":"Customizing Maia runner networking and connectivity","href":"/docs/guides/customizing-runner-networking-and-connectivity"},{"title":"Installing Python libraries","href":"/docs/guides/installing-python-libraries"},{"title":"Uploading external drivers to a Maia runner","href":"/docs/guides/uploading-external-drivers"}]}]},{"group":"Context Engine","root":{"title":"Context Engine overview","href":"/docs/guides/context-engine-overview"},"pages":[{"title":"Context Engine overview","href":"/docs/guides/context-engine-overview"},{"title":"Creating knowledge graphs","href":"/docs/guides/creating-knowledge-graphs"},{"title":"Managing knowledge graphs","href":"/docs/guides/managing-knowledge-graphs"},{"title":"Visualizing knowledge graphs","href":"/docs/guides/visualizing-knowledge-graphs"}]},{"group":"Maia Team","root":{"title":"Maia Team overview","href":"/docs/guides/maia-team-overview"},"pages":[{"title":"Maia Team overview","href":"/docs/guides/maia-team-overview"},{"title":"Building pipelines","href":"/docs/guides/maia-pipelines"},{"title":"Chat features","href":"/docs/guides/maia-sessions-and-tools"},{"title":"Context files","href":"/docs/guides/maia-context-files"},{"title":"Create a custom connector with Maia Team","href":"/docs/guides/create-a-custom-connector-with-maia"},{"title":"Mission Control overview","href":"/docs/guides/mission-control"},{"title":"Mission Control integrations","href":"/docs/guides/mission-control-integrations"},{"title":"Tasks in Mission Control","href":"/docs/guides/mission-control-tasks"},{"title":"Pipeline notes","href":"/docs/guides/ai-note"},{"title":"Prompting best practices","href":"/docs/guides/maia-best-practices"},{"title":"Skills","href":"/docs/guides/maia-skills"},{"title":"AI FAQ","href":"/docs/guides/ai-faq"}]},{"group":"Observability","root":{"title":"Observability overview","href":"/docs/guides/observability-overview"},"pages":[{"title":"Observability overview","href":"/docs/guides/observability-overview"},{"title":"Audit service","href":"/docs/guides/audit-service"},{"group":"Lineage","root":{"title":"Lineage","href":"/docs/guides/data-lineage"},"pages":[{"title":"Send lineage to your data catalog","href":"/docs/guides/lineage-integrations"}]},{"group":"Notifications","pages":[{"title":"Pipeline notifications","href":"/docs/guides/pipeline-notifications"},{"title":"Billing notifications","href":"/docs/guides/billing-notifications"}]},{"title":"Lineage","href":"/docs/guides/data-lineage"},{"title":"Pipeline notifications","href":"/docs/guides/pipeline-notifications"},{"group":"Pipeline observability","pages":[{"title":"Pipeline run history","href":"/docs/guides/pipeline-run-history"},{"title":"Impact stream","href":"/docs/guides/impact-stream"},{"title":"Troubleshoot pipelines with Maia Team","href":"/docs/guides/troubleshoot-pipelines-with-maia-team"}]}]},{"group":"Connections and credentials","root":{"title":"Connections and credentials overview","href":"/docs/guides/connections-and-credentials-overview"},"pages":[{"title":"Connections and credentials overview","href":"/docs/guides/connections-and-credentials-overview"},{"title":"Amazon Redshift connection","href":"/docs/guides/amazon-redshift-connection"},{"title":"Amazon Redshift Serverless connection","href":"/docs/guides/amazon-redshift-serverless-connection"},{"title":"Databricks","href":"/docs/guides/databricks-cdw-guide"},{"title":"Databricks Jobs Compute configuration","href":"/docs/guides/databricks-jobs-compute"},{"title":"Connect your Databricks account to Maia via Partner Connect","href":"/docs/guides/databricks-partner-connect"},{"title":"Connectivity via AWS PrivateLink using Full SaaS","href":"/docs/guides/aws-privatelink"},{"title":"Troubleshooting cloud data warehouse errors","href":"/docs/guides/troubleshooting-connectivity"}]},{"group":"Streaming","root":{"title":"Streaming pipelines","href":"/docs/streaming/streaming-pipelines"},"pages":[{"title":"Streaming pipelines","href":"/docs/streaming/streaming-pipelines"},{"title":"Sync All Tables","href":"/docs/streaming/sync-all-tables"},{"title":"Failover recovery for streaming pipelines","href":"/docs/streaming/failover-recovery"},{"group":"Sources","pages":[{"title":"Modify access to source databases","href":"/docs/streaming/how-to-modify-access-for-each-source-system"},{"group":"Db2 for IBM i","pages":[{"title":"Configure your Db2 for IBM i database","href":"/docs/streaming/db2-for-ibm-i-configure-database"},{"title":"Db2 for IBM i streaming connector","href":"/docs/streaming/db2-for-ibm-i-streaming-source"}]},{"group":"Microsoft SQL Server","pages":[{"title":"Configure your Microsoft SQL Server database","href":"/docs/streaming/microsoft-sql-server-configure-database"},{"title":"Microsoft SQL Server streaming connector","href":"/docs/streaming/microsoft-sql-server-streaming-source"}]},{"group":"MySQL","pages":[{"title":"Configure the Streaming runner for MySQL","href":"/docs/streaming/mysql-configure-runner"},{"title":"Configure your MySQL database","href":"/docs/streaming/mysql-configure-database"},{"title":"MySQL streaming connector","href":"/docs/streaming/mysql-streaming-source"}]},{"group":"Oracle","pages":[{"title":"Configure your Oracle database","href":"/docs/streaming/oracle-configure-database"},{"title":"Oracle streaming connector","href":"/docs/streaming/oracle-streaming-source"}]},{"group":"PostgreSQL","pages":[{"title":"Configure your PostgreSQL database","href":"/docs/streaming/postgresql-configure-database"},{"title":"PostgreSQL streaming connector","href":"/docs/streaming/postgresql-streaming-source"}]}]},{"group":"Destinations","pages":[{"title":"Streaming to an Amazon S3 destination","href":"/docs/streaming/amazon-s3-streaming-destination"},{"title":"Streaming to an Azure Blob Storage destination","href":"/docs/streaming/azure-blob-storage-streaming-destination"},{"title":"Streaming to a Google Cloud Storage destination","href":"/docs/streaming/google-cloud-storage-streaming-destination"},{"title":"Streaming to a Snowflake destination","href":"/docs/streaming/snowflake-streaming-destination"}]},{"group":"Streaming runners","pages":[{"title":"Create a Streaming runner","href":"/docs/streaming/create-streaming-runner"},{"title":"Streaming runner versions","href":"/docs/streaming/runner-versions"},{"title":"Sizing Streaming runners","href":"/docs/streaming/sizing-streaming-runners"},{"title":"Streaming runner logs","href":"/docs/streaming/streaming-runner-logs"},{"title":"Enable Streaming runner heap dumps","href":"/docs/streaming/streaming-runner-heap-dumps"},{"group":"AWS","pages":[{"title":"AWS Fargate Streaming runner setup","href":"/docs/streaming/aws-streaming-runner-manual-setup"},{"title":"AWS IAM roles for Streaming runners","href":"/docs/streaming/streaming-runner-aws-iam-roles"},{"title":"Streaming runner installation using a CloudFormation quick-create link","href":"/docs/streaming/streaming-runner-installation-cloudformation-quick-create"}]},{"group":"Azure","pages":[{"title":"Streaming runner installation on Azure","href":"/docs/streaming/azure-streaming-runner-install"},{"title":"Configuring an Azure key vault for Streaming runners","href":"/docs/streaming/azure-arm-streaming-runner-key-vault"},{"title":"Download and amend the Azure Resource Manager template for a Streaming runner","href":"/docs/streaming/amend-azure-arm-streaming-template"},{"title":"Azure Resource Manager Streaming runner template permissions","href":"/docs/streaming/arm-streaming-template-permissions"},{"title":"Communicating with other Azure services","href":"/docs/streaming/authenticate-streaming-runner-with-azure-services"},{"title":"Azure Streaming runner troubleshooting","href":"/docs/streaming/azure-streaming-runner-troubleshooting"}]},{"group":"GCP","pages":[{"title":"Streaming runner installation on Google Cloud","href":"/docs/streaming/gcp-streaming-runner-install"}]}]}]},{"group":"Videos","pages":[{"title":"Feature videos","href":"/docs/videos/feature-videos"},{"title":"How-to video guides","href":"/docs/videos/how-to-videos"}]}]},{"tab":"API Reference","pages":[{"title":"API Reference","href":"/docs/api-reference/maia-api-overview"}]},{"tab":"Changelog","pages":[{"title":"Changelog","href":"/docs/changelog/2026-changelog"}]}]},"basePath":"","title":"Code Editor - Maia Documentation","buildId":"dpl_Fyv1NbzwP68g2bEH2Roy98uY1zmE","deploymentId":"dpl_Fyv1NbzwP68g2bEH2Roy98uY1zmE","dynamics":[],"chunks":[]}