The plan is to let a session run on an existing coding agent instead of the server harness, selected per agent and without changing the API your app uses:
Platform harness interface (phase H0). The server harness and the external-brain path are put behind one internal interface (submit input, cancel, close, capabilities). Behavior does not change. In progress.
ACP client in bmad (phase H1).bmad hosts the ACP agent process, translates ACP updates into Managed Agents events, and reports them through the agent capability. In progress.
First brain: DeepSeek Harness (DSH) via dsh --profile acp. A feasibility study ran it on Linux with real tool calls, approvals, cancellation, cross-process resume and concurrent sessions. Known limits to resolve: streaming arrives per committed message rather than per token, errors are unstructured text, usage reports only context occupancy, and compaction is not visible over ACP.
Next brains: Codex, then Claude Code. Running an ACP brain on BMA’s servers (rather than in a sandbox or on your computer) is not planned until a brain can delegate all of its tools to BMA’s hands.
On every brain, clients keep receiving the same Managed Agents events. A capability a brain lacks is reported explicitly, never faked.
Nothing on this page is available yet. Dates are not committed.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"BMA Developer Docs","description":"BeeOS Managed Agents (BMA): a managed agent platform with a Claude Managed Agents–compatible API, a native REST API, and the Executor Protocol for bringing your own hands and brains.","colors":{"primary":"#F97316","light":"#FB923C","dark":"#C2410C"},"logo":{"light":"/logo/light.svg","dark":"/logo/dark.svg","href":"/"},"favicon":"/favicon.svg","api":{"playground":{"display":"simple"},"examples":{"languages":["curl","python","javascript","go"]}},"appearance":{"default":"system"},"navbar":{"links":[{"href":"https://github.com/beeos-ai/bma-sdk","label":"bma-sdk"},{"href":"https://github.com/beeos-ai/bma-executor-sdk","label":"bma-executor-sdk"}]},"footer":{"socials":{"github":"https://github.com/beeos-ai"}},"fonts":{"heading":{"family":"Inter","weight":600},"body":{"family":"Inter","weight":400}},"integrations":{"telemetry":{"enabled":false}},"navigation":{"languages":[{"language":"en","default":true,"banner":{"content":"BMA is in **early access**. Pages mark each capability as Available, Preview, or Roadmap.","dismissible":true},"href":""},{"language":"zh","banner":{"content":"BMA 处于**抢先体验**阶段。各页面会把每项能力标注为 Available、Preview 或 Roadmap。","dismissible":true},"href":"zh"}]}},"deployment":{"deploymentMetadataValue":{"hasAudioNarration":false,"customDomains":[],"gitSource":{"type":"github","owner":"local","repo":"local","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":"local","isBase":true},"buildId":"local","clientVersion":"0.0.4064"},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[],"googleFontsInlined":false,"isLoggedInCli":false,"mintExport":{}},"customCss":[],"page":{"pagePath":"executor/brains-roadmap","slug":"/executor/brains-roadmap","pageMetadata":{"title":"Brains roadmap","description":"Today: the BMA server harness and external brains through the agent capability. Next: generic ACP brains.","icon":"road","href":"/executor/brains-roadmap"},"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: \"Today: the BMA server harness and external brains through the agent capability. Next: generic ACP brains.\"\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`,strong:`strong`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,ul:`ul`,..._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(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Brain`}),_jsx(_components.th,{children:`Where it runs`}),_jsx(_components.th,{children:`Status`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`BMA server harness`})}),_jsx(_components.td,{children:`BMA workers. Stateless; the session log is durable, so a turn survives a worker restart.`}),_jsx(_components.td,{children:`Available (default)`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Your own agent loop`})}),_jsxs(_components.td,{children:[`Your computer or app, connected with the `,_jsx(_components.a,{href:`/executor/agent-capability`,children:`agent capability`})]}),_jsx(_components.td,{children:`Preview`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Generic ACP brains`})}),_jsxs(_components.td,{children:[`A coding agent that speaks the `,_jsx(_components.a,{href:`https://agentclientprotocol.com`,children:`Agent Client Protocol`}),`, hosted by `,_jsx(_components.code,{children:`bmad`}),` in a sandbox or on your computer`]}),_jsx(_components.td,{children:`Roadmap`})]})]})]}),`\n`,_jsx(Heading,{level:`2`,id:`generic-acp-brains-roadmap`,children:`Generic ACP brains (Roadmap)`}),`\n`,_jsx(_components.p,{children:`The plan is to let a session run on an existing coding agent instead of the server harness, selected per agent and without changing the API your app uses:`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Platform harness interface (phase H0).`}),` The server harness and the external-brain path are put behind one internal interface (submit input, cancel, close, capabilities). Behavior does not change. In progress.`]}),`\n`,_jsxs(_components.li,{children:[_jsxs(_components.strong,{children:[`ACP client in `,_jsx(_components.code,{children:`bmad`}),` (phase H1).`]}),` `,_jsx(_components.code,{children:`bmad`}),` hosts the ACP agent process, translates ACP updates into Managed Agents events, and reports them through the agent capability. In progress.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`First brain: DeepSeek Harness (DSH)`}),` via `,_jsx(_components.code,{children:`dsh --profile acp`}),`. A feasibility study ran it on Linux with real tool calls, approvals, cancellation, cross-process resume and concurrent sessions. Known limits to resolve: streaming arrives per committed message rather than per token, errors are unstructured text, usage reports only context occupancy, and compaction is not visible over ACP.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Next brains:`}),` Codex, then Claude Code. Running an ACP brain on BMA’s servers (rather than in a sandbox or on your computer) is not planned until a brain can delegate all of its tools to BMA’s hands.`]}),`\n`]}),`\n`,_jsx(_components.p,{children:`On every brain, clients keep receiving the same Managed Agents events. A capability a brain lacks is reported explicitly, never faked.`}),`\n`,_jsx(Warning,{children:_jsx(_components.p,{children:`Nothing on this page is available yet. Dates are not committed.`})})]})}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":"Brains roadmap","description":"Today: the BMA server harness and external brains through the agent capability. Next: generic ACP brains.","icon":"road","href":"/executor/brains-roadmap"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Generic ACP brains (Roadmap)","slug":"generic-acp-brains-roadmap","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":[],"subdomain":"localhost","siteName":"BMA Developer Docs","title":"Brains roadmap - BMA Developer Docs","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{"en":{"href":"/executor/brains-roadmap","matchLevel":0},"zh":{"href":"/zh/executor/brains-roadmap","matchLevel":1}}},"originalFileLocation":"executor/brains-roadmap.mdx","locale":"en"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"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=\"Today: the BMA server harness and external brains through the agent capability. Next: generic ACP brains.\">\u003cmeta data-mint-head name=\"application-name\" content=\"BMA Developer Docs\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/favicons/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/favicons/favicon-32x32.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/favicons/favicon-16x16.png\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/favicons/favicon.ico\">\u003cmeta data-mint-head property=\"og:title\" content=\"Brains roadmap - BMA Developer Docs\">\u003cmeta data-mint-head property=\"og:description\" content=\"Today: the BMA server harness and external brains through the agent capability. Next: generic ACP brains.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"BMA Developer Docs\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://local./executor/brains-roadmap\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Brains roadmap - BMA Developer Docs\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Today: the BMA server harness and external brains through the agent capability. Next: generic ACP brains.\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/favicons/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"BMA Developer Docs\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#F97316\">\u003clink data-mint-head rel=\"canonical\" href=\"https://local./executor/brains-roadmap\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/executor/brains-roadmap.md\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"en\" href=\"https://local./executor/brains-roadmap\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"zh\" href=\"https://local./zh/executor/brains-roadmap\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"x-default\" href=\"https://local./executor/brains-roadmap\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"BMA Developer Docs\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"BMA Developer Docs","nav":{"languages":[{"language":"en","default":true,"banner":{"content":"BMA is in **early access**. Pages mark each capability as Available, Preview, or Roadmap.","dismissible":true},"tabs":[{"tab":"Documentation","groups":[{"group":"Get started","pages":[{"title":"BeeOS Managed Agents","sidebarTitle":"Introduction","icon":"house","href":""},{"title":"Quickstart","icon":"rocket","href":"/quickstart"},{"title":"Claude Managed Agents compatibility","sidebarTitle":"Compatibility","icon":"scale-balanced","href":"/compatibility"}]},{"group":"Concepts","pages":[{"title":"Agents","icon":"robot","href":"/concepts/agents"},{"title":"Environments","icon":"cloud","href":"/concepts/environments"},{"title":"Sessions \u0026 events","icon":"wave-square","href":"/concepts/sessions-and-events"},{"title":"Machines \u0026 pools","icon":"server","href":"/concepts/machines"},{"title":"Files \u0026 outputs","icon":"file","href":"/concepts/files-and-outputs"},{"title":"Memory stores","icon":"brain","href":"/concepts/memory"},{"title":"Skills","icon":"wand-magic-sparkles","href":"/concepts/skills"},{"title":"MCP servers","icon":"plug","href":"/concepts/mcp"},{"title":"Approvals \u0026 questions","icon":"user-check","href":"/concepts/interactions"},{"title":"Desktop \u0026 computer use","icon":"display","href":"/concepts/desktop"},{"title":"Context compaction","icon":"compress","href":"/concepts/context-compaction"}]},{"group":"Executor \u0026 brains","pages":[{"title":"Executor Protocol","icon":"network-wired","href":"/executor/overview"},{"title":"Agent capability (external brain)","description":"Run a BMA agent's sessions on your own agent loop, connected through the Executor Protocol.","sidebarTitle":"Agent capability","icon":"brain","href":"/executor/agent-capability"},{"title":"Brains roadmap","icon":"road","href":"/executor/brains-roadmap"}]}]},{"tab":"SDKs","pages":[{"title":"SDKs","href":"/sdks/overview"}]},{"tab":"API reference","pages":[{"title":"API reference","href":"/api-reference/introduction"}]},{"tab":"Self-hosting","pages":[{"title":"Self-hosting","href":"/self-hosting/overview"}]},{"tab":"Changelog \u0026 roadmap","pages":[{"title":"Changelog \u0026 roadmap","href":"/changelog"}]}]},{"language":"zh","banner":{"content":"BMA 处于**抢先体验**阶段。各页面会把每项能力标注为 Available、Preview 或 Roadmap。","dismissible":true},"pages":[{"title":"zh","href":"/zh/executor/brains-roadmap"}]}]},"basePath":"","title":"Brains roadmap - BMA Developer Docs","buildId":"223f4d0f93b3","dynamics":["10e4515597"],"chunks":["BannerMarkdown-CCxzie0y.js","dist-C8phz87P.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","clsx-DfU2JnNK.js","html-void-elements-mCSPHezU.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js"]}