Learn how to use the ZKsync CLI to interact with Abstract or a local Abstract node.
As Abstract is built on the ZK Stack, you can use the
ZKsync CLI to interact with Abstract directly, or run your own local Abstract node.
The ZKsync CLI helps simplify the setup, development, testing and deployment of contracts on Abstract.
Prerequisites
Ensure you have the following installed on your machine:
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Abstract","colors":{"primary":"#0D9373","light":"#07C983","dark":"#0D9373"},"logo":{"light":"https://mintcdn.com/abstract/DVQXlXAnGWn0I2rD/logo/light.svg?fit=max\u0026auto=format\u0026n=DVQXlXAnGWn0I2rD\u0026q=85\u0026s=38a6db7ffacc552b39842e1f9c6eacb3","dark":"https://mintcdn.com/abstract/DVQXlXAnGWn0I2rD/logo/dark.svg?fit=max\u0026auto=format\u0026n=DVQXlXAnGWn0I2rD\u0026q=85\u0026s=1c8ad3ffd9051953c017c7b4518ca5f9"},"favicon":"https://mintcdn.com/abstract/DVQXlXAnGWn0I2rD/favicon.svg?fit=max\u0026auto=format\u0026n=DVQXlXAnGWn0I2rD\u0026q=85\u0026s=ee7f2c612a28c072296c08f56da877d1","background":{"decoration":"grid"},"footer":{"socials":{"x":"https://x.com/abstractchain","discord":"https://discord.com/invite/abstractchain","github":"https://github.com/abstract-foundation"}},"banner":{"content":"Abstract Chain is shutting down. Start migrating your assets. [Migrate](https://migrate.abs.xyz)","dismissible":false},"contextual":{"options":["copy","chatgpt","claude","mcp","cursor"],"display":"header"},"styling":{"latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"abstract","hasAudioNarration":false,"actualSubdomain":"abstract","customDomains":["docs.abs.xyz"],"gitSource":{"type":"github","owner":"abstract-foundation","repo":"abstract-docs","deployBranch":"main","contentDirectory":"","isPrivate":false,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6ac54e1abf1a1138cf6134b8","collectionId":"266d5344-ff76-4caa-b0f0-702abdf2436e","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6ac54e1abf1a1138cf6134b8"},"feedback":{"thumbs":true,"issues":true,"edits":true},"entitlements":{"AI_CHAT":{"status":"DISABLED"}},"buildId":"6ac54e1abf1a1138cf6134b8","clientVersion":"0.0.3926","searchFilterCounts":[{"language":"default","tag":"API Reference","count":55},{"language":"default","tag":"Documentation","count":51},{"language":"default","tag":"Abstract Global Wallet","count":40},{"language":"default","tag":"How Abstract Works","count":24},{"language":"default","tag":"Ethereum API","count":24},{"language":"default","tag":"ZKSync API","count":24},{"language":"default","tag":"Ecosystem","count":20},{"language":"default","tag":"AI Agents","count":18},{"language":"default","tag":"Build on Abstract","count":17},{"language":"default","tag":"Smart Contracts","count":12}]},"assistantConfig":{},"hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-v7-file-tree","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"pause-universal-search-reconcile","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"per-site-search-delta","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-private-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-nav-generations","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"byok-sep-25","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-agent-model-picker","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"isAtlas":false,"googleFontsInlined":false},"customCss":[{"filePath":"style.css","content":"#banner{padding:8px 16px;background:#19e783;font-size:12px;line-height:18px;font-weight:500;letter-spacing:-.12px}#banner,#banner *{-webkit-text-fill-color:#181818}#banner>div{width:100%;margin:0}#banner p{display:flex;align-items:center;justify-content:center;gap:16px}#banner a{display:inline-flex;flex-shrink:0;align-items:center;gap:4px;height:24px;padding:0 8px;border-radius:100px;background:#fff;text-decoration:none!important;white-space:nowrap;box-shadow:0 6px 10px -4px rgba(0,0,0,.12),0 0 0 1px rgba(0,0,0,.05);transition:background-color .2s ease,-webkit-text-fill-color .2s ease}#banner a::after{content:'';width:16px;height:16px;background-color:#181818;mask:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M5.75 3C5.33579 3 5 3.33579 5 3.75C5 4.16421 5.33579 4.5 5.75 4.5H10.4393L3.21967 11.7197C2.92678 12.0126 2.92678 12.4874 3.21967 12.7803C3.51256 13.0732 3.98744 13.0732 4.28033 12.7803L11.5 5.56066V10.25C11.5 10.6642 11.8358 11 12.25 11C12.6642 11 13 10.6642 13 10.25V3.75C13 3.33579 12.6642 3 12.25 3H5.75Z'/%3E%3C/svg%3E\") center/16px 16px no-repeat;transition:background-color .2s ease}#banner a:hover{background:#181818;-webkit-text-fill-color:#fff}#banner a:hover::after{background-color:#fff}@media (max-width:1023px){#banner{padding:16px}#banner p{justify-content:space-between;gap:8px;text-align:left}}"}],"page":{"pagePath":"build-on-abstract/zksync-cli","slug":"/build-on-abstract/zksync-cli","pageMetadata":{"title":"ZKsync CLI","description":"Learn how to use the ZKsync CLI to interact with Abstract or a local Abstract node.","href":"/build-on-abstract/zksync-cli"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"Learn how to use the ZKsync CLI to interact with Abstract or a local Abstract node.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,code:`code`,li:`li`,p:`p`,pre:`pre`,span:`span`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,ul:`ul`,..._provideComponents(),...props.components},{Accordion,CodeBlock,Heading,Table}=_components;if(!Accordion)_missingMdxReference(`Accordion`,true);if(!CodeBlock)_missingMdxReference(`CodeBlock`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!Table)_missingMdxReference(`Table`,true);return _jsxs(_Fragment,{children:[_jsxs(_components.p,{children:[`As Abstract is built on the `,_jsx(_components.a,{href:`https://docs.zksync.io/zk-stack`,children:`ZK Stack`}),`, you can use the\n`,_jsx(_components.a,{href:`https://docs.zksync.io/build/zksync-cli`,children:`ZKsync CLI`}),` to interact with Abstract directly, or run your own local Abstract node.\nThe ZKsync CLI helps simplify the setup, development, testing and deployment of contracts on Abstract.`]}),`\n`,_jsxs(Accordion,{title:`Prerequisites`,id:`prerequisites`,children:[_jsx(_components.p,{children:`Ensure you have the following installed on your machine:`}),_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.a,{href:`https://nodejs.org/en/download/`,children:`Node.js`}),` v18.0.0 or later.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.a,{href:`https://docs.docker.com/get-docker/`,children:`Docker`}),` for running a local Abstract\nnode.`]}),`\n`]})]}),`\n`,_jsx(Heading,{level:`2`,id:`install-zksync-cli`,children:`Install ZKsync CLI`}),`\n`,_jsx(_components.p,{children:`To install the ZKsync CLI, run the following command:`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`1`,language:`shellscript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`shellscript`,children:_jsxs(_components.code,{language:`shellscript`,numberOfLines:`1`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`npm`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` install`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -g`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` zksync-cli`})]}),`\n`]})})}),`\n`,_jsx(Heading,{level:`2`,id:`available-commands`,children:`Available Commands`}),`\n`,_jsxs(_components.p,{children:[`Run any of the below commands with the `,_jsx(_components.code,{children:`zksync-cli`}),` prefix:`]}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`2`,language:`shellscript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`shellscript`,children:_jsxs(_components.code,{language:`shellscript`,numberOfLines:`2`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# For example, to create a new project:`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`zksync-cli`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` create`})]}),`\n`]})})}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Command`}),_jsx(_components.th,{children:`Description`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`dev`})}),_jsx(_components.td,{children:`Start a local development environment with Abstract and Ethereum nodes.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`create`})}),_jsx(_components.td,{children:`Scaffold new projects using templates for frontend, contracts, and scripting.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`contract`})}),_jsx(_components.td,{children:`Read and write data to Abstract contracts without building UI.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`transaction`})}),_jsx(_components.td,{children:`Fetch and display detailed information about a specific transaction.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`wallet`})}),_jsx(_components.td,{children:`Manage Abstract wallet assets, including transfers and balance checks.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`bridge`})}),_jsx(_components.td,{children:`Perform deposits and withdrawals between Ethereum and Abstract.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`config chains`})}),_jsx(_components.td,{children:`Add or edit custom chains for flexible testing and development.`})]})]})]}),`\n`,_jsxs(_components.p,{children:[`Learn more on the official `,_jsx(_components.a,{href:`https://docs.zksync.io/build/zksync-cli`,children:`ZKsync CLI documentation`}),`.`]})]})}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":"ZKsync CLI","description":"Learn how to use the ZKsync CLI to interact with Abstract or a local Abstract node.","href":"/build-on-abstract/zksync-cli"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Install ZKsync CLI","slug":"install-zksync-cli","depth":2,"children":[]},{"title":"Available Commands","slug":"available-commands","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":[],"subdomain":"abstract","siteName":"Abstract","title":"ZKsync CLI - Abstract","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-01-07T03:42:29.845Z","originalFileLocation":"build-on-abstract/zksync-cli.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Learn how to use the ZKsync CLI to interact with Abstract or a local Abstract node.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Abstract\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/abstract/TFUvf-HcBH5wtn49/_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/abstract/TFUvf-HcBH5wtn49/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/abstract/TFUvf-HcBH5wtn49/_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/abstract/TFUvf-HcBH5wtn49/_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/abstract/TFUvf-HcBH5wtn49/_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/abstract/TFUvf-HcBH5wtn49/_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/abstract/TFUvf-HcBH5wtn49/_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/abstract/TFUvf-HcBH5wtn49/_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/abstract/TFUvf-HcBH5wtn49/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"ZKsync CLI - Abstract\">\u003cmeta data-mint-head property=\"og:description\" content=\"Learn how to use the ZKsync CLI to interact with Abstract or a local Abstract node.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Abstract\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.abs.xyz/build-on-abstract/zksync-cli\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://abstract.mintlify.app/_mintlify/api/og/v2?division=Build+on+Abstract\u0026amp;title=ZKsync+CLI\u0026amp;description=Learn+how+to+use+the+ZKsync+CLI+to+interact+with+Abstract+or+a+local+Abstract+node.\u0026amp;theme=127f2203acaef8e1635296a7\u0026amp;signature=c961cd05b5235e6b1035961ef02deefca09289d5ff6571564c8ca14c80399cc8\">\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=\"ZKsync CLI - Abstract\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Learn how to use the ZKsync CLI to interact with Abstract or a local Abstract node.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://abstract.mintlify.app/_mintlify/api/og/v2?division=Build+on+Abstract\u0026amp;title=ZKsync+CLI\u0026amp;description=Learn+how+to+use+the+ZKsync+CLI+to+interact+with+Abstract+or+a+local+Abstract+node.\u0026amp;theme=127f2203acaef8e1635296a7\u0026amp;signature=c961cd05b5235e6b1035961ef02deefca09289d5ff6571564c8ca14c80399cc8\">\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/abstract/TFUvf-HcBH5wtn49/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Abstract\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#0D9373\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.abs.xyz/build-on-abstract/zksync-cli\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/build-on-abstract/zksync-cli.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.abs.xyz/#organization\",\"name\":\"Abstract\",\"url\":\"https://docs.abs.xyz\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/abstract/DVQXlXAnGWn0I2rD/logo/light.svg?fit=max\u0026auto=format\u0026n=DVQXlXAnGWn0I2rD\u0026q=85\u0026s=38a6db7ffacc552b39842e1f9c6eacb3\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.abs.xyz#website\",\"name\":\"Abstract\",\"url\":\"https://docs.abs.xyz\",\"publisher\":{\"@id\":\"https://docs.abs.xyz/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.abs.xyz/build-on-abstract/zksync-cli#webpage\",\"url\":\"https://docs.abs.xyz/build-on-abstract/zksync-cli\",\"name\":\"ZKsync CLI\",\"description\":\"Learn how to use the ZKsync CLI to interact with Abstract or a local Abstract node.\",\"dateModified\":\"2026-01-07T03:42:29.845Z\",\"isPartOf\":{\"@id\":\"https://docs.abs.xyz#website\"},\"breadcrumb\":{\"@id\":\"https://docs.abs.xyz/build-on-abstract/zksync-cli#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.abs.xyz/build-on-abstract/zksync-cli#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Build on Abstract\",\"item\":\"https://docs.abs.xyz/build-on-abstract/getting-started\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"ZKsync CLI\",\"item\":\"https://docs.abs.xyz/build-on-abstract/zksync-cli\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://docs.abs.xyz/build-on-abstract/zksync-cli#article\",\"headline\":\"ZKsync CLI\",\"name\":\"ZKsync CLI\",\"description\":\"Learn how to use the ZKsync CLI to interact with Abstract or a local Abstract node.\",\"url\":\"https://docs.abs.xyz/build-on-abstract/zksync-cli\",\"mainEntityOfPage\":{\"@id\":\"https://docs.abs.xyz/build-on-abstract/zksync-cli#webpage\"},\"dateModified\":\"2026-01-07T03:42:29.845Z\",\"publisher\":{\"@id\":\"https://docs.abs.xyz/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.abs.xyz#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Abstract\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Abstract","nav":{"global":null,"tabs":[{"tab":"Documentation","groups":[{"group":"Overview","pages":[{"title":"Introduction","href":"/overview"},{"title":"What is Abstract?","href":"/what-is-abstract"},{"title":"Connect to Abstract","href":"/connect-to-abstract"}]},{"group":"Build on Abstract","pages":[{"title":"Getting Started","href":"/build-on-abstract/getting-started"},{"group":"Smart Contracts","pages":[{"group":"Hardhat","pages":[{"title":"Hardhat - Get Started","sidebarTitle":"Get Started","href":"/build-on-abstract/smart-contracts/hardhat/get-started"},{"title":"Hardhat - Installation","sidebarTitle":"Installing hardhat-zksync","href":"/build-on-abstract/smart-contracts/hardhat/installation"},{"title":"Hardhat - Compiling Contracts","sidebarTitle":"Compiling Contracts","href":"/build-on-abstract/smart-contracts/hardhat/compiling-contracts"},{"title":"Hardhat - Testing Contracts","sidebarTitle":"Testing Contracts","href":"/build-on-abstract/smart-contracts/hardhat/testing-contracts"},{"title":"Hardhat - Deploying Contracts","sidebarTitle":"Deploying Contracts","href":"/build-on-abstract/smart-contracts/hardhat/deploying-contracts"},{"title":"Hardhat - Verifying Contracts","sidebarTitle":"Verifying Contracts","href":"/build-on-abstract/smart-contracts/hardhat/verifying-contracts"}]},{"group":"Foundry","pages":[{"title":"Foundry - Get Started","sidebarTitle":"Get Started","href":"/build-on-abstract/smart-contracts/foundry/get-started"},{"title":"Foundry - Installation","sidebarTitle":"Installing foundry-zksync","href":"/build-on-abstract/smart-contracts/foundry/installation"},{"title":"Foundry - Compiling Contracts","sidebarTitle":"Compiling Contracts","href":"/build-on-abstract/smart-contracts/foundry/compiling-contracts"},{"title":"Foundry - Testing Contracts","sidebarTitle":"Testing Contracts","href":"/build-on-abstract/smart-contracts/foundry/testing-contracts"},{"title":"Foundry - Deploying Contracts","sidebarTitle":"Deploying Contracts","href":"/build-on-abstract/smart-contracts/foundry/deploying-contracts"},{"title":"Foundry - Verifying Contracts","sidebarTitle":"Verifying Contracts","href":"/build-on-abstract/smart-contracts/foundry/verifying-contracts"}]}]},{"group":"Applications","pages":[{"title":"Ethers","href":"/build-on-abstract/applications/ethers"},{"title":"Viem","href":"/build-on-abstract/applications/viem"},{"title":"Thirdweb","description":"Learn how to use thirdweb to build applications on Abstract.","href":"/build-on-abstract/applications/thirdweb"}]},{"title":"ZKsync CLI","href":"/build-on-abstract/zksync-cli"}]},{"group":"How Abstract Works","pages":[{"group":"Architecture","pages":[{"title":"Layer 2s","description":"Learn what a layer 2 is and how Abstract is built as a layer 2 blockchain to inherit the security properties of Ethereum.","href":"/how-abstract-works/architecture/layer-2s"},{"title":"Transaction Lifecycle","href":"/how-abstract-works/architecture/transaction-lifecycle"},{"group":"Components","pages":[{"title":"Sequencer","href":"/how-abstract-works/architecture/components/sequencer"},{"title":"Prover \u0026 Verifier","href":"/how-abstract-works/architecture/components/prover-and-verifier"},{"title":"L1 Rollup Contracts","href":"/how-abstract-works/architecture/components/l1-rollup-contracts"}]}]},{"group":"System Contracts","pages":[{"title":"System Contracts","sidebarTitle":"Overview","href":"/how-abstract-works/system-contracts/overview"},{"title":"Using System Contracts","href":"/how-abstract-works/system-contracts/using-system-contracts"},{"title":"Bootloader","href":"/how-abstract-works/system-contracts/bootloader"},{"title":"List of System Contracts","href":"/how-abstract-works/system-contracts/list-of-system-contracts"}]},{"group":"Native Account Abstraction","pages":[{"title":"Native Account Abstraction","sidebarTitle":"Overview","href":"/how-abstract-works/native-account-abstraction/overview"},{"title":"Transaction Flow","href":"/how-abstract-works/native-account-abstraction/transaction-flow"},{"title":"Smart Contract Wallets","href":"/how-abstract-works/native-account-abstraction/smart-contract-wallets"},{"title":"Paymasters","href":"/how-abstract-works/native-account-abstraction/paymasters"},{"title":"Handling Nonces","href":"/how-abstract-works/native-account-abstraction/handling-nonces"},{"title":"Signature Validation","href":"/how-abstract-works/native-account-abstraction/signature-validation"}]},{"group":"EVM Differences","pages":[{"title":"EVM Differences","sidebarTitle":"Overview","href":"/how-abstract-works/evm-differences/overview"},{"title":"EVM Interpreter","href":"/how-abstract-works/evm-differences/evm-interpreter"},{"title":"Best Practices","href":"/how-abstract-works/evm-differences/best-practices"},{"title":"Contract Deployment","href":"/how-abstract-works/evm-differences/contract-deployment"},{"title":"EVM Opcodes","href":"/how-abstract-works/evm-differences/evm-opcodes"},{"title":"Precompiles","href":"/how-abstract-works/evm-differences/precompiles"},{"title":"Gas Fees","href":"/how-abstract-works/evm-differences/gas-fees"},{"title":"Nonces","href":"/how-abstract-works/evm-differences/nonces"},{"title":"Libraries","href":"/how-abstract-works/evm-differences/libraries"}]}]},{"group":"Tooling","pages":[{"title":"Block Explorers","href":"/tooling/block-explorers"},{"title":"Bridges","href":"/tooling/bridges"},{"title":"Faucets","href":"/tooling/faucets"},{"title":"Deployed Contracts","href":"/tooling/deployed-contracts"}]},{"group":"Infrastructure","pages":[{"group":"Nodes","pages":[{"title":"Introduction","href":"/infrastructure/nodes/introduction"},{"title":"Components","href":"/infrastructure/nodes/components"},{"title":"Running a node","href":"/infrastructure/nodes/running-a-node"}]}]}]},{"tab":"Abstract Global Wallet","pages":[{"title":"Abstract Global Wallet","href":"/abstract-global-wallet/overview"}]},{"tab":"AI Agents","pages":[{"title":"AI Agents","href":"/ai-agents/overview"}]},{"tab":"Ecosystem","pages":[{"title":"Ecosystem","href":"/ecosystem/automation"}]},{"tab":"API Reference","pages":[{"title":"API Reference","href":"/api-reference/overview/abstract-json-rpc-api"}]}]},"title":"ZKsync CLI - Abstract","buildId":"dpl_9DauxEjb9gzCtcuhPQFbquJvx7FJ","deploymentId":"dpl_9DauxEjb9gzCtcuhPQFbquJvx7FJ","dynamics":["10e4515597"],"chunks":["BannerMarkdown-TG4bywHJ.js","dist-Bd0qg17S.js","lib--scc4DXi.js","lib-B8HbPgcC.js","clsx-D-31Aetf.js","html-void-elements-mCSPHezU.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js"]}