Administrative routes require the user’s governance role to be admin. All dashboard data is scoped to the user’s organization. Members can see sessions they own or that were shared with them and managed Gateway key status, but cannot edit organization policy. Only a session owner can change its sharing grants; recipients cannot edit, delete, or re-share it. Revocation does not remove copies that a recipient already restored locally.Portable session bundles can contain raw prompts, tool results, filesystem paths, and other sensitive conversation data. The Sessions detail page displays this disclosure before sharing controls. Legacy single-file captures remain downloadable audit records and are never advertised as resumable.The Extensions page displays curated and custom digest-pinned packages plus organization-managed MCP servers. Package selections, per-harness overrides, and MCP targets create the same immutable governance revisions as policy edits. Packages containing hooks, plugins, or helper binaries are marked as executable before administrators authorize them.
Compose creates one local administrator from HARNESS_BOOTSTRAP_ADMIN_EMAIL and HARNESS_BOOTSTRAP_ADMIN_PASSWORD. Defaults are for loopback development only. Production deployment must supply a unique password, a strong BETTER_AUTH_SECRET, and public issuer/audience URLs.The bootstrap administrator is protected from demotion, suspension, and deletion. See Manage users and invitations for the complete lifecycle and API behavior.
Do not expose a deployment that still uses the documented development password or Better Auth secret.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Blue","description":"Governance and dynamic extension distribution for coding-agent CLIs, with an optional bring-your-own inference gateway and session capture.","colors":{"primary":"#1D4ED8","light":"#3B82F6","dark":"#3B82F6"},"logo":{"light":"https://mintcdn.com/bluee/QAY5d_4-YqkTu0gf/images/blue.png?fit=max\u0026auto=format\u0026n=QAY5d_4-YqkTu0gf\u0026q=85\u0026s=73095e50e2a7be9c7acd6c3dfd6a585e","dark":"https://mintcdn.com/bluee/QAY5d_4-YqkTu0gf/images/blue.png?fit=max\u0026auto=format\u0026n=QAY5d_4-YqkTu0gf\u0026q=85\u0026s=73095e50e2a7be9c7acd6c3dfd6a585e"},"favicon":"https://mintcdn.com/bluee/QAY5d_4-YqkTu0gf/images/favicon.png?fit=max\u0026auto=format\u0026n=QAY5d_4-YqkTu0gf\u0026q=85\u0026s=00cbc87139a299e7453dbd931879fc7b","api":{"playground":{"display":"simple"},"examples":{"defaults":"required","languages":["curl","javascript","python"]}},"navbar":{"links":[{"href":"https://github.com/BlocksOrg/blue","label":"GitHub"},{"href":"https://bluee.sh/manifesto","label":"Why Blue"},{"href":"https://github.com/BlocksOrg/blue/blob/main/LICENSE","label":"MIT License"}],"primary":{"type":"button","label":"Get started","href":"/next/quickstart"}},"footer":{"socials":{"github":"https://github.com/BlocksOrg/blue"}},"styling":{"latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"bluee","hasAudioNarration":false,"actualSubdomain":"bluee","customDomains":["docs.bluee.sh"],"gitSource":{"type":"github","owner":"blocksorg","repo":"blue","deployBranch":"main","contentDirectory":"apps/docs","isPrivate":false,"mountPath":"","label":""},"chroma":{"latestBuiltDeploymentHistoryId":"6ab067269a4ee5cbd9510b51","collectionId":"0d0dce88-db6b-435b-9ba2-2ec550029d72","liveDeploymentHistoryId":"6ab067269a4ee5cbd9510b51","schemaVersion":"v3"},"entitlements":{},"buildId":"6ab067269a4ee5cbd9510b51","clientVersion":"0.0.3990","searchFilterCounts":[{"language":"default","tag":"API reference","count":233},{"language":"default","tag":"Administration","count":69},{"language":"default","tag":"Identity provisioning","count":45},{"language":"default","tag":"User management","count":41},{"language":"default","tag":"System","count":33},{"language":"default","tag":"Gateway","count":27},{"language":"default","tag":"Sessions","count":27},{"language":"default","tag":"Concepts","count":17},{"language":"default","tag":"CLI","count":12},{"language":"default","tag":"Deployment","count":12}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"","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":"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":"vite-origin","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":"billing-updated-9-15","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":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"isAtlas":false,"googleFontsInlined":false},"customCss":[],"page":{"pagePath":"next/admin/dashboard","slug":"/next/admin/dashboard","pageMetadata":{"title":"Dashboard administration","description":"Manage users, policy revisions, clients, and captured sessions in the dashboard.","icon":"gauge-high","href":"/next/admin/dashboard"},"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: \"Manage users, policy revisions, clients, and captured sessions in the dashboard.\"\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},{Heading,Table,Warning}=_components;if(!Heading)_missingMdxReference(`Heading`,true);if(!Table)_missingMdxReference(`Table`,true);if(!Warning)_missingMdxReference(`Warning`,true);return _jsxs(_Fragment,{children:[_jsxs(_components.p,{children:[`The dashboard is the browser interface for organization administrators. In the reference Compose stack it runs at `,_jsx(_components.code,{children:`http://127.0.0.1:3000`}),`.`]}),`\n`,_jsx(Heading,{level:`2`,id:`areas`,children:`Areas`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Area`}),_jsx(_components.th,{children:`Purpose`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Gateway`}),_jsx(_components.td,{children:`When gateway policy is active, see routing readiness and the signed-in user’s single managed gateway key.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Harnesses`}),_jsx(_components.td,{children:`Edit the managed model and execution settings for Codex, Claude, Kimi, and OpenCode.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.a,{href:`/next/admin/managed-packages`,children:`Extensions`})}),_jsx(_components.td,{children:`Select skills, hooks, subagents, plugins, helper binaries, and MCP servers for managed distribution.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Current deployment configuration`}),_jsx(_components.td,{children:`Open the user-menu dialog to copy or download effective deployment YAML.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.a,{href:`/next/admin/user-management`,children:`Members`})}),_jsx(_components.td,{children:`Invite users, manage roles and access state, revoke credentials, and retain account history.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Clients`}),_jsx(_components.td,{children:`See machine, harness, package, revision, drift, and managed-file health.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Sessions`}),_jsx(_components.td,{children:`Search captured sessions by native title or preview, download artifacts, and manage private, workspace, or selected-member sharing.`})]})]})]}),`\n`,_jsx(Heading,{level:`2`,id:`roles-and-visibility`,children:`Roles and visibility`}),`\n`,_jsxs(_components.p,{children:[`Administrative routes require the user’s governance role to be `,_jsx(_components.code,{children:`admin`}),`. All dashboard data is scoped to the user’s organization. Members can see sessions they own or that were shared with them and managed Gateway key status, but cannot edit organization policy. Only a session owner can change its sharing grants; recipients cannot edit, delete, or re-share it. Revocation does not remove copies that a recipient already restored locally.`]}),`\n`,_jsx(_components.p,{children:`Portable session bundles can contain raw prompts, tool results, filesystem paths, and other sensitive conversation data. The Sessions detail page displays this disclosure before sharing controls. Legacy single-file captures remain downloadable audit records and are never advertised as resumable.`}),`\n`,_jsx(_components.p,{children:`The Extensions page displays curated and custom digest-pinned packages plus organization-managed MCP servers. Package selections, per-harness overrides, and MCP targets create the same immutable governance revisions as policy edits. Packages containing hooks, plugins, or helper binaries are marked as executable before administrators authorize them.`}),`\n`,_jsx(Heading,{level:`2`,id:`bootstrap-account`,children:`Bootstrap account`}),`\n`,_jsxs(_components.p,{children:[`Compose creates one local administrator from `,_jsx(_components.code,{children:`HARNESS_BOOTSTRAP_ADMIN_EMAIL`}),` and `,_jsx(_components.code,{children:`HARNESS_BOOTSTRAP_ADMIN_PASSWORD`}),`. Defaults are for loopback development only. Production deployment must supply a unique password, a strong `,_jsx(_components.code,{children:`BETTER_AUTH_SECRET`}),`, and public issuer/audience URLs.`]}),`\n`,_jsxs(_components.p,{children:[`The bootstrap administrator is protected from demotion, suspension, and deletion. See `,_jsx(_components.a,{href:`/next/admin/user-management`,children:`Manage users and invitations`}),` for the complete lifecycle and API behavior.`]}),`\n`,_jsx(Warning,{children:_jsx(_components.p,{children:`Do not expose a deployment that still uses the documented development password or Better Auth secret.`})})]})}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":"Dashboard administration","description":"Manage users, policy revisions, clients, and captured sessions in the dashboard.","icon":"gauge-high","href":"/next/admin/dashboard"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Areas","slug":"areas","depth":2,"children":[]},{"title":"Roles and visibility","slug":"roles-and-visibility","depth":2,"children":[]},{"title":"Bootstrap account","slug":"bootstrap-account","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":[],"subdomain":"bluee","siteName":"Blue","title":"Dashboard administration - Blue","navMaps":{"firstHrefInVersion":{"0.2.0":{"href":"/0.2.0/admin/dashboard","matchLevel":1},"Next":{"href":"/next/admin/dashboard","matchLevel":0},"0.1.0":{"href":"/0.1.0/admin/dashboard","matchLevel":1}},"firstHrefInLanguage":{}},"lastModified":"2026-09-09T05:23:02.932Z","originalFileLocation":"next/admin/dashboard.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=\"Manage users, policy revisions, clients, and captured sessions in the dashboard.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Blue\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/bluee/3l8WFSZ874gogX_t/_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/bluee/3l8WFSZ874gogX_t/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/bluee/3l8WFSZ874gogX_t/_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/bluee/3l8WFSZ874gogX_t/_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/bluee/3l8WFSZ874gogX_t/_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/bluee/3l8WFSZ874gogX_t/_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/bluee/3l8WFSZ874gogX_t/_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/bluee/3l8WFSZ874gogX_t/_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/bluee/3l8WFSZ874gogX_t/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Dashboard administration - Blue\">\u003cmeta data-mint-head property=\"og:description\" content=\"Manage users, policy revisions, clients, and captured sessions in the dashboard.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Blue\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.bluee.sh/next/admin/dashboard\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://bluee.mintlify.app/_mintlify/api/og/v2?division=Administration\u0026amp;title=Dashboard+administration\u0026amp;description=Manage+users%2C+policy+revisions%2C+clients%2C+and+captured+sessions+in+the+dashboard.\u0026amp;theme=9246b0c56022c4ff318736e8\u0026amp;signature=7fb9a8cbb6496c8db2f3f6c17c944d29236720b407c95c34c7d04cc2a3a407fe\">\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=\"Dashboard administration - Blue\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Manage users, policy revisions, clients, and captured sessions in the dashboard.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://bluee.mintlify.app/_mintlify/api/og/v2?division=Administration\u0026amp;title=Dashboard+administration\u0026amp;description=Manage+users%2C+policy+revisions%2C+clients%2C+and+captured+sessions+in+the+dashboard.\u0026amp;theme=9246b0c56022c4ff318736e8\u0026amp;signature=7fb9a8cbb6496c8db2f3f6c17c944d29236720b407c95c34c7d04cc2a3a407fe\">\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/bluee/3l8WFSZ874gogX_t/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Blue\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#1D4ED8\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.bluee.sh/next/admin/dashboard\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/next/admin/dashboard.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.bluee.sh/#organization\",\"name\":\"Blue\",\"url\":\"https://docs.bluee.sh\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/bluee/QAY5d_4-YqkTu0gf/images/blue.png?fit=max\u0026auto=format\u0026n=QAY5d_4-YqkTu0gf\u0026q=85\u0026s=73095e50e2a7be9c7acd6c3dfd6a585e\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.bluee.sh#website\",\"name\":\"Blue\",\"url\":\"https://docs.bluee.sh\",\"publisher\":{\"@id\":\"https://docs.bluee.sh/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.bluee.sh/next/admin/dashboard#webpage\",\"url\":\"https://docs.bluee.sh/next/admin/dashboard\",\"name\":\"Dashboard administration\",\"description\":\"Manage users, policy revisions, clients, and captured sessions in the dashboard.\",\"dateModified\":\"2026-09-09T05:23:02.932Z\",\"isPartOf\":{\"@id\":\"https://docs.bluee.sh#website\"},\"breadcrumb\":{\"@id\":\"https://docs.bluee.sh/next/admin/dashboard#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.bluee.sh/next/admin/dashboard#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Blue\",\"item\":\"https://docs.bluee.sh\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Dashboard administration\",\"item\":\"https://docs.bluee.sh/next/admin/dashboard\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://docs.bluee.sh/next/admin/dashboard#article\",\"headline\":\"Dashboard administration\",\"name\":\"Dashboard administration\",\"description\":\"Manage users, policy revisions, clients, and captured sessions in the dashboard.\",\"url\":\"https://docs.bluee.sh/next/admin/dashboard\",\"mainEntityOfPage\":{\"@id\":\"https://docs.bluee.sh/next/admin/dashboard#webpage\"},\"dateModified\":\"2026-09-09T05:23:02.932Z\",\"publisher\":{\"@id\":\"https://docs.bluee.sh/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.bluee.sh#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Blue\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Blue","nav":{"global":null,"versions":[{"version":"0.2.0","pages":[{"title":"0.2.0","href":"/0.2.0/admin/dashboard"}]},{"version":"Next","groups":[{"group":"Start here","pages":[{"title":"Blue","icon":"shield-halved","href":"/next/introduction"},{"title":"Quickstart","icon":"rocket","href":"/next/quickstart"}]},{"group":"Deployment","pages":[{"title":"Deployment contract","icon":"list-check","href":"/next/deployment/runtime-contract"},{"title":"Kubernetes with Helm","icon":"server","href":"/next/deployment/production"},{"title":"Configure blue.yaml","icon":"file-code","href":"/next/deployment/blue-yaml"},{"title":"Managed repository connections","icon":"folder-tree","href":"/next/deployment/managed-repositories"}]},{"group":"Concepts","pages":[{"title":"Architecture","icon":"diagram-project","href":"/next/concepts/architecture"},{"title":"Configuration lifecycle","icon":"sliders","href":"/next/concepts/configuration"},{"title":"Managed configuration","icon":"layer-group","href":"/next/concepts/managed-configuration"},{"title":"Harness version compatibility","icon":"code-branch","href":"/next/concepts/harness-version-compatibility"},{"title":"Bring your own gateway","icon":"route","href":"/next/concepts/gateway-mode"},{"title":"Authentication and authorization","icon":"key","href":"/next/concepts/authentication"}]},{"group":"CLI","pages":[{"title":"CLI commands","icon":"terminal","href":"/next/cli/commands"},{"title":"Supported harnesses","icon":"code","href":"/next/cli/harnesses"},{"title":"Windows paths and migration","icon":"folder-tree","href":"/next/cli/windows-paths"},{"title":"Troubleshooting","description":"Diagnose authentication, reconciliation, gateway streaming, and session upload failures.","icon":"wrench","href":"/next/cli/troubleshooting"}]},{"group":"Administration","pages":[{"title":"Dashboard administration","icon":"gauge-high","href":"/next/admin/dashboard"},{"title":"Manage users and invitations","description":"Invite accounts, assign roles, suspend access, revoke sessions, and remove login access without deleting governance history.","icon":"users","href":"/next/admin/user-management"},{"title":"Set up Okta SSO and SCIM","icon":"id-card","href":"/next/admin/identity-provisioning"},{"title":"Managed packages","icon":"box-open","href":"/next/admin/managed-packages"},{"title":"Manage organization policy","icon":"file-pen","href":"/next/admin/configuration"},{"title":"Gateway access","icon":"route","href":"/next/admin/gateway-access"},{"title":"Custom gateway provisioners","icon":"gears","href":"/next/admin/custom-gateway-provisioners"},{"title":"Session capture","icon":"file-shield","href":"/next/admin/session-capture"}]},{"group":"Development","pages":[{"title":"Local development with Docker Compose","icon":"docker","href":"/next/development/local-compose"},{"title":"Contributing","icon":"code-pull-request","href":"/next/development/contributing"},{"title":"Harness adapter architecture","icon":"code-branch","href":"/next/development/harness-adapter-architecture"},{"title":"Gateway adapter architecture","icon":"route","href":"/next/development/gateway-adapter-architecture"}]},{"group":"Reference","pages":[{"title":"Governance configuration","icon":"file-code","href":"/next/reference/governance-config"},{"title":"Authentication endpoints","icon":"fingerprint","href":"/next/reference/auth-endpoints"}]},{"group":"API reference","pages":[{"group":"System","pages":[{"title":"Discover Control API and OAuth device-flow settings","deprecated":null,"version":null,"openapi":"/openapi/next.yaml get /.well-known/metaharness","href":"/next/api-reference/system/discover-control-api-and-oauth-device-flow-settings"},{"title":"Liveness probe","deprecated":null,"version":null,"openapi":"/openapi/next.yaml get /health","href":"/next/api-reference/system/liveness-probe"},{"title":"Readiness probe","deprecated":null,"version":null,"openapi":"/openapi/next.yaml get /ready","href":"/next/api-reference/system/readiness-probe"},{"title":"Check database schema compatibility","deprecated":null,"version":null,"openapi":"/openapi/next.yaml get /health/schema","href":"/next/api-reference/system/check-database-schema-compatibility"},{"title":"Check singleton background-worker freshness","deprecated":null,"version":null,"openapi":"/openapi/next.yaml get /health/worker","href":"/next/api-reference/system/check-singleton-background-worker-freshness"},{"title":"Check session and package object stores","deprecated":null,"version":null,"openapi":"/openapi/next.yaml get /health/object-storage","href":"/next/api-reference/system/check-session-and-package-object-stores"},{"title":"Check the gateway credential resolver store","deprecated":null,"version":null,"openapi":"/openapi/next.yaml get /health/credential-resolver","href":"/next/api-reference/system/check-the-gateway-credential-resolver-store"},{"title":"Prometheus metrics","deprecated":null,"version":null,"openapi":"/openapi/next.yaml get /metrics","href":"/next/api-reference/system/prometheus-metrics"},{"title":"Check Control API dependencies","deprecated":null,"version":null,"openapi":"/openapi/next.yaml get /health/dependencies","href":"/next/api-reference/system/check-control-api-dependencies"},{"title":"Fetch deployment-wide dashboard branding","deprecated":null,"version":null,"openapi":"/openapi/next.yaml get /branding","href":"/next/api-reference/system/fetch-deployment-wide-dashboard-branding"},{"title":"Resolve the current OAuth token or dashboard session","deprecated":null,"version":null,"openapi":"/openapi/next.yaml get /auth/me","href":"/next/api-reference/system/resolve-the-current-oauth-token-or-dashboard-session"}]},{"group":"Gateway","pages":[{"title":"Get inference JWT verification keys","deprecated":null,"version":null,"openapi":"/openapi/next.yaml get /gateway/jwks","href":"/next/api-reference/gateway/get-inference-jwt-verification-keys"},{"title":"Revoke the gateway session bound to the current OAuth session","deprecated":null,"version":null,"openapi":"/openapi/next.yaml post /gateway/session/revoke","href":"/next/api-reference/gateway/revoke-the-gateway-session-bound-to-the-current-oauth-session"},{"title":"Describe gateway policy and runtime readiness without contacting the gateway","deprecated":null,"version":null,"openapi":"/openapi/next.yaml get /gateway/status","href":"/next/api-reference/gateway/describe-gateway-policy-and-runtime-readiness-without-contacting-the-gateway"},{"title":"Ping the configured inference proxy","deprecated":null,"version":null,"openapi":"/openapi/next.yaml post /gateway/proxy/health","href":"/next/api-reference/gateway/ping-the-configured-inference-proxy"},{"title":"Get the authenticated user's managed gateway-key status","deprecated":null,"version":null,"openapi":"/openapi/next.yaml get /gateway/key","href":"/next/api-reference/gateway/get-the-authenticated-users-managed-gateway-key-status"},{"title":"Provision or reconcile the authenticated user's managed gateway key","deprecated":null,"version":null,"openapi":"/openapi/next.yaml post /gateway/key/ensure","href":"/next/api-reference/gateway/provision-or-reconcile-the-authenticated-users-managed-gateway-key"},{"title":"Validate the authenticated user's stored upstream gateway key","deprecated":null,"version":null,"openapi":"/openapi/next.yaml post /gateway/key/validate","href":"/next/api-reference/gateway/validate-the-authenticated-users-stored-upstream-gateway-key"},{"title":"List organization inference-proxy request metadata","deprecated":null,"version":null,"openapi":"/openapi/next.yaml get /gateway/request-logs","href":"/next/api-reference/gateway/list-organization-inference-proxy-request-metadata"},{"title":"List organization request-log filter values","deprecated":null,"version":null,"openapi":"/openapi/next.yaml get /gateway/request-logs/facets","href":"/next/api-reference/gateway/list-organization-request-log-filter-values"}]},{"group":"Configuration","pages":[{"title":"Fetch the governance config for the authenticated user/org","deprecated":null,"version":null,"openapi":"/openapi/next.yaml get /governance-config","href":"/next/api-reference/configuration/fetch-the-governance-config-for-the-authenticated-userorg"},{"title":"Return the trusted compiled harness registry","deprecated":null,"version":null,"openapi":"/openapi/next.yaml get /harness-metadata","href":"/next/api-reference/configuration/return-the-trusted-compiled-harness-registry"},{"title":"Watch organization governance revision changes","deprecated":null,"version":null,"openapi":"/openapi/next.yaml get /governance-config/events","href":"/next/api-reference/configuration/watch-organization-governance-revision-changes"},{"title":"Report a local client's applied revision and managed-file health","deprecated":null,"version":null,"openapi":"/openapi/next.yaml post /client-status","href":"/next/api-reference/configuration/report-a-local-clients-applied-revision-and-managed-file-health"}]},{"group":"Sessions","pages":[{"title":"Create a short-lived session artifact upload request","deprecated":null,"version":null,"openapi":"/openapi/next.yaml post /session-uploads/presign","href":"/next/api-reference/sessions/create-a-short-lived-session-artifact-upload-request"},{"title":"List captured sessions visible to the caller","deprecated":null,"version":null,"openapi":"/openapi/next.yaml get /session-uploads","href":"/next/api-reference/sessions/list-captured-sessions-visible-to-the-caller"},{"title":"List users and harnesses available as captured-session filters","deprecated":null,"version":null,"openapi":"/openapi/next.yaml get /session-uploads/facets","href":"/next/api-reference/sessions/list-users-and-harnesses-available-as-captured-session-filters"},{"title":"Search active organization members for session sharing","deprecated":null,"version":null,"openapi":"/openapi/next.yaml get /session-uploads/members","href":"/next/api-reference/sessions/search-active-organization-members-for-session-sharing"},{"title":"Get captured-session metadata and artifact history","deprecated":null,"version":null,"openapi":"/openapi/next.yaml get /session-uploads/{id}","href":"/next/api-reference/sessions/get-captured-session-metadata-and-artifact-history"},{"title":"Verify the uploaded object and commit its metadata","deprecated":null,"version":null,"openapi":"/openapi/next.yaml post /session-uploads/{id}/complete","href":"/next/api-reference/sessions/verify-the-uploaded-object-and-commit-its-metadata"},{"title":"Create a short-lived download request for the current artifact","deprecated":null,"version":null,"openapi":"/openapi/next.yaml post /session-uploads/{id}/download","href":"/next/api-reference/sessions/create-a-short-lived-download-request-for-the-current-artifact"},{"title":"Get the current sharing mode and active recipients","deprecated":null,"version":null,"openapi":"/openapi/next.yaml get /session-uploads/{id}/sharing","href":"/next/api-reference/sessions/get-the-current-sharing-mode-and-active-recipients"},{"title":"Replace owner-managed session sharing grants","deprecated":null,"version":null,"openapi":"/openapi/next.yaml put /session-uploads/{id}/sharing","href":"/next/api-reference/sessions/replace-owner-managed-session-sharing-grants"}]},{"group":"Administration","pages":[{"title":"Read the organization's current editable YAML configuration","deprecated":null,"version":null,"openapi":"/openapi/next.yaml get /admin/governance-config","href":"/next/api-reference/administration/read-the-organizations-current-editable-yaml-configuration"},{"title":"Validate and save a new governance configuration revision","deprecated":null,"version":null,"openapi":"/openapi/next.yaml put /admin/governance-config","href":"/next/api-reference/administration/validate-and-save-a-new-governance-configuration-revision"},{"title":"List recent governance configuration revisions","deprecated":null,"version":null,"openapi":"/openapi/next.yaml get /admin/governance-config/revisions","href":"/next/api-reference/administration/list-recent-governance-configuration-revisions"},{"title":"Export the mounted deployment configuration with current governance","deprecated":null,"version":null,"openapi":"/openapi/next.yaml get /admin/blue-config/export","href":"/next/api-reference/administration/export-the-mounted-deployment-configuration-with-current-governance"},{"title":"Replace deployment-wide dashboard branding","deprecated":null,"version":null,"openapi":"/openapi/next.yaml put /admin/branding","href":"/next/api-reference/administration/replace-deployment-wide-dashboard-branding"},{"title":"List curated extension packages available to the organization","deprecated":null,"version":null,"openapi":"/openapi/next.yaml get /admin/package-catalog","href":"/next/api-reference/administration/list-curated-extension-packages-available-to-the-organization"},{"title":"Resolve, hash, and optionally mirror a managed repository source","deprecated":null,"version":null,"openapi":"/openapi/next.yaml post /admin/package-source/inspect","href":"/next/api-reference/administration/resolve-hash-and-optionally-mirror-a-managed-repository-source"},{"title":"List repository connections allowed for the administrator's organization","deprecated":null,"version":null,"openapi":"/openapi/next.yaml get /admin/package-source/connections","href":"/next/api-reference/administration/list-repository-connections-allowed-for-the-administrators-organization"},{"title":"Save packages, per-harness overrides, and MCP servers as a new revision","deprecated":null,"version":null,"openapi":"/openapi/next.yaml put /admin/governance-extensions","href":"/next/api-reference/administration/save-packages-per-harness-overrides-and-mcp-servers-as-a-new-revision"},{"title":"Read one coding agent's managed configuration as YAML","deprecated":null,"version":null,"openapi":"/openapi/next.yaml get /admin/harnesses/{harness}/managed-config","href":"/next/api-reference/administration/read-one-coding-agents-managed-configuration-as-yaml"},{"title":"Save one coding agent's managed configuration as a new revision","deprecated":null,"version":null,"openapi":"/openapi/next.yaml put /admin/harnesses/{harness}/managed-config","href":"/next/api-reference/administration/save-one-coding-agents-managed-configuration-as-a-new-revision"},{"title":"Read every supported coding agent's managed configuration as YAML","deprecated":null,"version":null,"openapi":"/openapi/next.yaml get /admin/harnesses/managed-configs","href":"/next/api-reference/administration/read-every-supported-coding-agents-managed-configuration-as-yaml"},{"title":"List and filter local client status reports for the organization","deprecated":null,"version":null,"openapi":"/openapi/next.yaml get /admin/client-status","href":"/next/api-reference/administration/list-and-filter-local-client-status-reports-for-the-organization"},{"title":"List users and harnesses available as client-status filters","deprecated":null,"version":null,"openapi":"/openapi/next.yaml get /admin/client-status/facets","href":"/next/api-reference/administration/list-users-and-harnesses-available-as-client-status-filters"},{"title":"Remove an organization client inventory record","deprecated":null,"version":null,"openapi":"/openapi/next.yaml delete /admin/client-status/{id}","href":"/next/api-reference/administration/remove-an-organization-client-inventory-record"}]},{"group":"Governance","pages":[{"title":"Create a short-lived download request for an organization-scoped package artifact","deprecated":null,"version":null,"openapi":"/openapi/next.yaml post /package-artifacts/{id}/download","href":"/next/api-reference/governance/create-a-short-lived-download-request-for-an-organization-scoped-package-artifact"}]},{"group":"User management","pages":[{"title":"Get the deployment-managed identity and provisioning status","deprecated":null,"version":null,"openapi":"/openapi/next.yaml get /admin/identity/status","href":"/next/api-reference/user-management/get-the-deployment-managed-identity-and-provisioning-status"},{"title":"List users in the administrator's organization","deprecated":null,"version":null,"openapi":"/openapi/next.yaml get /admin/users","href":"/next/api-reference/user-management/list-users-in-the-administrators-organization"},{"title":"List non-removed organization users for selection controls","deprecated":null,"version":null,"openapi":"/openapi/next.yaml get /admin/users/options","href":"/next/api-reference/user-management/list-non-removed-organization-users-for-selection-controls"},{"title":"Search active and already-selected organization users","deprecated":null,"version":null,"openapi":"/openapi/next.yaml post /admin/users/options","href":"/next/api-reference/user-management/search-active-and-already-selected-organization-users"},{"title":"Get an organization user","deprecated":null,"version":null,"openapi":"/openapi/next.yaml get /admin/users/{id}","href":"/next/api-reference/user-management/get-an-organization-user"},{"title":"Delete a user's account access while retaining governance history","deprecated":null,"version":null,"openapi":"/openapi/next.yaml delete /admin/users/{id}","href":"/next/api-reference/user-management/delete-a-users-account-access-while-retaining-governance-history"},{"title":"Change a user's role or active/suspended state","deprecated":null,"version":null,"openapi":"/openapi/next.yaml patch /admin/users/{id}","href":"/next/api-reference/user-management/change-a-users-role-or-activesuspended-state"},{"title":"Revoke all browser, OAuth, and device sessions for a user","deprecated":null,"version":null,"openapi":"/openapi/next.yaml post /admin/users/{id}/sessions/revoke","href":"/next/api-reference/user-management/revoke-all-browser-oauth-and-device-sessions-for-a-user"},{"title":"List organization invitations","deprecated":null,"version":null,"openapi":"/openapi/next.yaml get /admin/invitations","href":"/next/api-reference/user-management/list-organization-invitations"},{"title":"Invite an email address to create an organization account","deprecated":null,"version":null,"openapi":"/openapi/next.yaml post /admin/invitations","href":"/next/api-reference/user-management/invite-an-email-address-to-create-an-organization-account"},{"title":"Get an organization invitation","deprecated":null,"version":null,"openapi":"/openapi/next.yaml get /admin/invitations/{id}","href":"/next/api-reference/user-management/get-an-organization-invitation"},{"title":"Cancel a pending invitation","deprecated":null,"version":null,"openapi":"/openapi/next.yaml delete /admin/invitations/{id}","href":"/next/api-reference/user-management/cancel-a-pending-invitation"},{"title":"Resend and renew a pending or expired invitation for 24 hours","deprecated":null,"version":null,"openapi":"/openapi/next.yaml post /admin/invitations/{id}/resend","href":"/next/api-reference/user-management/resend-and-renew-a-pending-or-expired-invitation-for-24-hours"},{"title":"Replace an outstanding invitation with a new invitation link","deprecated":null,"version":null,"openapi":"/openapi/next.yaml post /admin/invitations/{id}/regenerate","href":"/next/api-reference/user-management/replace-an-outstanding-invitation-with-a-new-invitation-link"}]},{"group":"Identity provisioning","pages":[{"title":"List or equality-filter provisioned users","deprecated":null,"version":null,"openapi":"/openapi/next.yaml get /scim/v2/Users","href":"/next/api-reference/identity-provisioning/list-or-equality-filter-provisioned-users"},{"title":"Provision a passwordless user","deprecated":null,"version":null,"openapi":"/openapi/next.yaml post /scim/v2/Users","href":"/next/api-reference/identity-provisioning/provision-a-passwordless-user"},{"title":"Get scimv2users","deprecated":null,"version":null,"openapi":"/openapi/next.yaml get /scim/v2/Users/{id}","href":"/next/api-reference/identity-provisioning/get-scimv2users"},{"title":"Put scimv2users","deprecated":null,"version":null,"openapi":"/openapi/next.yaml put /scim/v2/Users/{id}","href":"/next/api-reference/identity-provisioning/put-scimv2users"},{"title":"Delete scimv2users","deprecated":null,"version":null,"openapi":"/openapi/next.yaml delete /scim/v2/Users/{id}","href":"/next/api-reference/identity-provisioning/delete-scimv2users"},{"title":"Patch scimv2users","deprecated":null,"version":null,"openapi":"/openapi/next.yaml patch /scim/v2/Users/{id}","href":"/next/api-reference/identity-provisioning/patch-scimv2users"},{"title":"Get scimv2groups","deprecated":null,"version":null,"openapi":"/openapi/next.yaml get /scim/v2/Groups","href":"/next/api-reference/identity-provisioning/get-scimv2groups"},{"title":"Post scimv2groups","deprecated":null,"version":null,"openapi":"/openapi/next.yaml post /scim/v2/Groups","href":"/next/api-reference/identity-provisioning/post-scimv2groups"},{"title":"Get scimv2groups 1","deprecated":null,"version":null,"openapi":"/openapi/next.yaml get /scim/v2/Groups/{id}","href":"/next/api-reference/identity-provisioning/get-scimv2groups-1"},{"title":"Put scimv2groups","deprecated":null,"version":null,"openapi":"/openapi/next.yaml put /scim/v2/Groups/{id}","href":"/next/api-reference/identity-provisioning/put-scimv2groups"},{"title":"Delete scimv2groups","deprecated":null,"version":null,"openapi":"/openapi/next.yaml delete /scim/v2/Groups/{id}","href":"/next/api-reference/identity-provisioning/delete-scimv2groups"},{"title":"Patch scimv2groups","deprecated":null,"version":null,"openapi":"/openapi/next.yaml patch /scim/v2/Groups/{id}","href":"/next/api-reference/identity-provisioning/patch-scimv2groups"},{"title":"Get scimv2serviceproviderconfig","deprecated":null,"version":null,"openapi":"/openapi/next.yaml get /scim/v2/ServiceProviderConfig","href":"/next/api-reference/identity-provisioning/get-scimv2serviceproviderconfig"},{"title":"Get scimv2resourcetypes","deprecated":null,"version":null,"openapi":"/openapi/next.yaml get /scim/v2/ResourceTypes","href":"/next/api-reference/identity-provisioning/get-scimv2resourcetypes"},{"title":"Get scimv2schemas","deprecated":null,"version":null,"openapi":"/openapi/next.yaml get /scim/v2/Schemas","href":"/next/api-reference/identity-provisioning/get-scimv2schemas"}]}]}]},{"version":"0.1.0","pages":[{"title":"0.1.0","href":"/0.1.0/admin/dashboard"}]}]},"title":"Dashboard administration - Blue","buildId":"dpl_2oYXwqkEXirXBPk8wV1FtM5USFWi","deploymentId":"dpl_2oYXwqkEXirXBPk8wV1FtM5USFWi","dynamics":[],"chunks":[]}