Dashboards for OpenCode, Claude Code, Codex CLI, Cursor, Factory Droid, and more. Track session activity, tool usage, and token spend across all your AI coding tools.
Get Started
Sign in and start syncing sessions in under 2 minutes
Self-Host
Deploy your own instance with Convex and WorkOS
Dashboard
Overview, sessions, evals, analytics, and context search
Plugins
Install sync plugins for your CLI tools
API Reference
REST API for RAG, context injection, and integrations
The hosted frontend uses Convex static hosting. Follow the hosted setup for current API URLs and plugin compatibility. The usage leaderboard is optional; sessions remain private unless you choose to share them.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"OpenSync","description":"Sync and analyze your AI coding sessions across tools","colors":{"primary":"#EB5601","light":"#faf8f5","dark":"#0E0E0E"},"logo":{"light":"https://mintcdn.com/opensync/TCeJKqYOfbJLZ9OW/logo-light.svg?fit=max\u0026auto=format\u0026n=TCeJKqYOfbJLZ9OW\u0026q=85\u0026s=63a1130d70d18577161c70415725d080","dark":"https://mintcdn.com/opensync/TCeJKqYOfbJLZ9OW/logo-dark.svg?fit=max\u0026auto=format\u0026n=TCeJKqYOfbJLZ9OW\u0026q=85\u0026s=f1c6d5c0d61192bd1dd3078a7dd21556","href":"https://www.opensync.dev"},"favicon":"https://mintcdn.com/opensync/tRCIwwom7vTlVT4z/favicon.svg?fit=max\u0026auto=format\u0026n=tRCIwwom7vTlVT4z\u0026q=85\u0026s=a50b4c7d1a85aea66b8c78d8dcd18564","appearance":{"default":"system"},"navbar":{"links":[{"href":"https://www.opensync.dev/dashboard","label":"Dashboard"},{"href":"https://github.com/waynesutton/opensync","type":"github"}]},"footer":{"socials":{"github":"https://github.com/waynesutton/opensync"}},"styling":{"latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"opensync","hasAudioNarration":false,"actualSubdomain":"opensync","customDomains":["docs.opensync.dev"],"gitSource":{"type":"github","owner":"waynesutton","repo":"opensync","deployBranch":"main","contentDirectory":"docs","isPrivate":true,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6ac1b61c7b29147f5d7d20ec","collectionId":"6be42c5a-0caa-455c-9973-de81b6caa5a2","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6ac1b61c7b29147f5d7d20ec"},"entitlements":{},"buildId":"6ac1b61c7b29147f5d7d20ec","clientVersion":"0.0.3926","searchFilterCounts":[{"language":"default","tag":"Dashboard","count":7},{"language":"default","tag":"Getting Started","count":4},{"language":"default","tag":"Plugins","count":4},{"language":"default","tag":"API Reference","count":3},{"language":"default","tag":"Fork \u0026 Self-Host","count":3},{"language":"default","tag":"Hosting \u0026 Deploy","count":3},{"language":"default","tag":"Search","count":3},{"language":"default","tag":"Authentication","count":2},{"language":"default","tag":"Troubleshooting","count":2}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableAskAiSearchBar":true},"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":[],"page":{"pagePath":"index","slug":"/","pageMetadata":{"title":"OpenSync Documentation","description":"Cloud-synced dashboards for AI coding sessions. Track sessions, search with semantic lookup, export eval datasets.","href":"/index"},"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: \"Cloud-synced dashboards for AI coding sessions. Track sessions, search with semantic lookup, export eval datasets.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,code:`code`,p:`p`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,..._provideComponents(),...props.components},{Card,CardGroup,Heading,Table}=_components;if(!Card)_missingMdxReference(`Card`,true);if(!CardGroup)_missingMdxReference(`CardGroup`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!Table)_missingMdxReference(`Table`,true);return _jsxs(_Fragment,{children:[_jsx(Heading,{level:`1`,id:`opensync-documentation`,children:`OpenSync Documentation`}),`\n`,_jsx(_components.p,{children:`Dashboards for OpenCode, Claude Code, Codex CLI, Cursor, Factory Droid, and more. Track session activity, tool usage, and token spend across all your AI coding tools.`}),`\n`,_jsxs(CardGroup,{cols:2,children:[_jsx(Card,{title:`Get Started`,icon:`rocket`,href:`/getting-started/hosted`,children:_jsx(_components.p,{children:`Sign in and start syncing sessions in under 2 minutes`})}),_jsx(Card,{title:`Self-Host`,icon:`server`,href:`/getting-started/requirements`,children:_jsx(_components.p,{children:`Deploy your own instance with Convex and WorkOS`})}),_jsx(Card,{title:`Dashboard`,icon:`chart-mixed`,href:`/dashboard/overview`,children:_jsx(_components.p,{children:`Overview, sessions, evals, analytics, and context search`})}),_jsx(Card,{title:`Plugins`,icon:`plug`,href:`/plugins/opencode-sync`,children:_jsx(_components.p,{children:`Install sync plugins for your CLI tools`})}),_jsx(Card,{title:`API Reference`,icon:`code`,href:`/api/endpoints`,children:_jsx(_components.p,{children:`REST API for RAG, context injection, and integrations`})}),_jsx(Card,{title:`Search`,icon:`magnifying-glass`,href:`/search/fulltext`,children:_jsx(_components.p,{children:`Full-text, semantic, and hybrid search`})})]}),`\n`,_jsx(Heading,{level:`2`,id:`supported-cli-tools`,children:`Supported CLI Tools`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Plugin`}),_jsx(_components.th,{children:`Install`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`OpenCode`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`npm install -g opencode-sync-plugin`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Claude Code`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`npm install -g claude-code-sync`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Codex CLI`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`npm install -g codex-sync`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Cursor`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`npm install -g cursor-opensync-plugin`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Factory Droid`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`npm install -g droid-sync`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Pi`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`npm install -g pi-opensync-plugin`})})]})]})]}),`\n`,_jsx(Heading,{level:`2`,id:`links`,children:`Links`}),`\n`,_jsxs(CardGroup,{cols:3,children:[_jsx(Card,{title:`Website`,icon:`globe`,href:`https://opensync.dev`,children:_jsx(_components.p,{children:`opensync.dev`})}),_jsx(Card,{title:`GitHub`,icon:`github`,href:`https://github.com/waynesutton/opensync`,children:_jsx(_components.p,{children:`Source code`})}),_jsx(Card,{title:`npm Plugins`,icon:`npm`,href:`https://www.npmjs.com/search?q=opensync`,children:_jsx(_components.p,{children:`All plugins on npm`})})]}),`\n`,_jsx(Heading,{level:`2`,id:`current-hosting-and-usage-features`,children:`Current hosting and usage features`}),`\n`,_jsxs(_components.p,{children:[`The hosted frontend uses `,_jsx(_components.a,{href:`/hosting/static-hosting`,children:`Convex static hosting`}),`. Follow the `,_jsx(_components.a,{href:`/getting-started/hosted`,children:`hosted setup`}),` for current API URLs and plugin compatibility. The `,_jsx(_components.a,{href:`/dashboard/usage-leaderboard`,children:`usage leaderboard`}),` is optional; sessions remain private unless you choose to share them.`]})]})}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":"OpenSync Documentation","description":"Cloud-synced dashboards for AI coding sessions. Track sessions, search with semantic lookup, export eval datasets.","href":"/index"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"OpenSync Documentation","slug":"opensync-documentation","depth":1,"children":[]},{"title":"Supported CLI Tools","slug":"supported-cli-tools","depth":2,"children":[]},{"title":"Links","slug":"links","depth":2,"children":[]},{"title":"Current hosting and usage features","slug":"current-hosting-and-usage-features","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":[],"subdomain":"opensync","siteName":"OpenSync","title":"OpenSync Documentation - OpenSync","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-10-04T01:42:25.726Z","originalFileLocation":"index.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=\"Cloud-synced dashboards for AI coding sessions. Track sessions, search with semantic lookup, export eval datasets.\">\u003cmeta data-mint-head name=\"application-name\" content=\"OpenSync\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/opensync/mpmarLTyjZFrs2ak/_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/opensync/mpmarLTyjZFrs2ak/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/opensync/mpmarLTyjZFrs2ak/_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/opensync/mpmarLTyjZFrs2ak/_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/opensync/mpmarLTyjZFrs2ak/_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/opensync/mpmarLTyjZFrs2ak/_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/opensync/mpmarLTyjZFrs2ak/_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/opensync/mpmarLTyjZFrs2ak/_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/opensync/mpmarLTyjZFrs2ak/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"OpenSync Documentation - OpenSync\">\u003cmeta data-mint-head property=\"og:description\" content=\"Cloud-synced dashboards for AI coding sessions. Track sessions, search with semantic lookup, export eval datasets.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"OpenSync\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.opensync.dev\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://opensync.mintlify.app/_mintlify/api/og/v2?division=Getting+Started\u0026amp;title=OpenSync+Documentation\u0026amp;description=Cloud-synced+dashboards+for+AI+coding+sessions.+Track+sessions%2C+search+with+semantic+lookup%2C+export+eval+datasets.\u0026amp;theme=82725b596b2cdeb76ade691e\u0026amp;signature=2ef6bbcb098578d234e0f1eca5961d4d376a4377e1b832cc79fd0d39559bdda1\">\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=\"OpenSync Documentation - OpenSync\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Cloud-synced dashboards for AI coding sessions. Track sessions, search with semantic lookup, export eval datasets.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://opensync.mintlify.app/_mintlify/api/og/v2?division=Getting+Started\u0026amp;title=OpenSync+Documentation\u0026amp;description=Cloud-synced+dashboards+for+AI+coding+sessions.+Track+sessions%2C+search+with+semantic+lookup%2C+export+eval+datasets.\u0026amp;theme=82725b596b2cdeb76ade691e\u0026amp;signature=2ef6bbcb098578d234e0f1eca5961d4d376a4377e1b832cc79fd0d39559bdda1\">\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/opensync/mpmarLTyjZFrs2ak/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"OpenSync\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#EB5601\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.opensync.dev\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/index.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.opensync.dev/#organization\",\"name\":\"OpenSync\",\"url\":\"https://docs.opensync.dev\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/opensync/TCeJKqYOfbJLZ9OW/logo-light.svg?fit=max\u0026auto=format\u0026n=TCeJKqYOfbJLZ9OW\u0026q=85\u0026s=63a1130d70d18577161c70415725d080\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.opensync.dev#website\",\"name\":\"OpenSync\",\"url\":\"https://docs.opensync.dev\",\"publisher\":{\"@id\":\"https://docs.opensync.dev/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.opensync.dev/#webpage\",\"url\":\"https://docs.opensync.dev/\",\"name\":\"OpenSync Documentation\",\"description\":\"Cloud-synced dashboards for AI coding sessions. Track sessions, search with semantic lookup, export eval datasets.\",\"dateModified\":\"2026-10-04T01:42:25.726Z\",\"isPartOf\":{\"@id\":\"https://docs.opensync.dev#website\"},\"breadcrumb\":{\"@id\":\"https://docs.opensync.dev/#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.opensync.dev/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Getting Started\",\"item\":\"https://docs.opensync.dev/index\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"OpenSync Documentation\",\"item\":\"https://docs.opensync.dev/\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://docs.opensync.dev/#article\",\"headline\":\"OpenSync Documentation\",\"name\":\"OpenSync Documentation\",\"description\":\"Cloud-synced dashboards for AI coding sessions. Track sessions, search with semantic lookup, export eval datasets.\",\"url\":\"https://docs.opensync.dev/\",\"mainEntityOfPage\":{\"@id\":\"https://docs.opensync.dev/#webpage\"},\"dateModified\":\"2026-10-04T01:42:25.726Z\",\"publisher\":{\"@id\":\"https://docs.opensync.dev/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.opensync.dev#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"OpenSync\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"OpenSync","nav":{"global":null,"groups":[{"group":"Getting Started","pages":[{"title":"OpenSync Documentation","href":""},{"title":"Use the Hosted Version","description":"Start syncing sessions in under 2 minutes with opensync.dev","href":"/getting-started/hosted"},{"title":"Self-Hosting Requirements","href":"/getting-started/requirements"},{"title":"Quick start","href":"/getting-started/quick-start"}]},{"group":"Dashboard","pages":[{"title":"Dashboard Overview","href":"/dashboard/overview"},{"title":"Sessions View","href":"/dashboard/sessions"},{"title":"Evals Export","href":"/dashboard/evals"},{"title":"Analytics","href":"/dashboard/analytics"},{"title":"Context Search","href":"/dashboard/context"},{"title":"Usage leaderboard","href":"/dashboard/usage-leaderboard"},{"title":"Owner console","href":"/dashboard/admin"}]},{"group":"Plugins","pages":[{"title":"OpenCode Plugin","href":"/plugins/opencode-sync"},{"title":"Claude Code Plugin","href":"/plugins/claude-code-sync"},{"title":"Codex CLI Plugin","href":"/plugins/codex-sync"},{"title":"Cursor Plugin","href":"/plugins/cursor-sync"}]},{"group":"API Reference","pages":[{"title":"API Authentication","href":"/api/authentication"},{"title":"API Endpoints","href":"/api/endpoints"},{"title":"Error Handling","href":"/api/errors"}]},{"group":"Search","pages":[{"title":"Full-Text Search","href":"/search/fulltext"},{"title":"Semantic Search","href":"/search/semantic"},{"title":"Hybrid Search","href":"/search/hybrid"}]},{"group":"Authentication","pages":[{"title":"WorkOS AuthKit","href":"/auth/workos"},{"title":"API Keys","href":"/auth/api-keys"}]},{"group":"Hosting \u0026 Deploy","pages":[{"title":"Convex backend","href":"/hosting/convex"},{"title":"Convex static hosting","href":"/hosting/static-hosting"},{"title":"Environment variables","href":"/hosting/env"}]},{"group":"Fork \u0026 Self-Host","pages":[{"title":"Fork guide","href":"/fork/guide"},{"title":"Customization","href":"/fork/customize"},{"title":"Contributing","href":"/fork/contribute"}]},{"group":"Troubleshooting","pages":[{"title":"Common issues","href":"/troubleshooting/common-issues"},{"title":"FAQ","href":"/troubleshooting/faq"}]}]},"title":"OpenSync Documentation - OpenSync","buildId":"dpl_9DauxEjb9gzCtcuhPQFbquJvx7FJ","deploymentId":"dpl_9DauxEjb9gzCtcuhPQFbquJvx7FJ","dynamics":[],"chunks":[]}