OpenClaw作为个人助手工具正掀起自托管风潮,但如何将其架构拓展至企业级应用?本文深度拆解从单用户到多租户的关键设计跃迁,聚焦身份管理、路由隔离、记忆分层等六大核心维度,提供三条可落地的扩展路径,助你避开企业化改造中的架构陷阱。

打开网易新闻 查看精彩图片

最近OpenClaw很火,大家纷纷在「养虾」——自托管、接渠道、玩Agent。但OpenClaw的定位始终是个人助手:单Gateway、单用户(或小范围)、数据与逻辑在自己手里。若想基于这套开源架构,延伸出面向企业场景的产品与架构设计,该从哪儿想、先想什么?本文在OpenClaw现有「个人/自托管」架构(单Gateway、多渠道统一入口、Agent+Memory+Tools+Skills)基础上,从思考维度出发,梳理如何从个人架构扩展到企业场景的架构与选型,少踩坑、可阶段落地。不涉及具体实现,仅作架构与产品思路参考。

打开网易新闻 查看精彩图片

1.先锚定「企业」要解决什么不同

打开网易新闻 查看精彩图片

核心一句话:从「一个控制面、一个身份、一套记忆与工具」扩展到「多租户、多身份、分层记忆与受控工具」,需要系统地在每一层想清楚「边界在哪里、谁做决策」。

个人vs企业:架构视角对比

打开网易新闻 查看精彩图片

2.按架构层次逐层思考

下面按「从外到内」的顺序:入口与身份→租户与路由→会话与Agent→记忆与知识→工具与技能→可观测与治理。每一层都可以单独做最小扩展,再组合。

打开网易新闻 查看精彩图片

2.1入口与身份(谁可以连上Gateway)

当前:单机/单Gateway,连接者通过本地配置或设备配对获得访问。

企业要问:

用户身份从哪来?企业目录(LDAP/AD)、IdP(Okta/AzureAD)、还是内建账号?

一个Gateway是否只服务一个「组织」,还是多组织共用同一套部署(多租户)?

连接Gateway的「客户端」是用户本人,还是某个服务账号(例如部门Bot)?如何区分「人」与「机器」?

设计倾向:先明确「一个企业实例=一个组织」还是「一个实例多组织」;再定身份来源(SSO/SAML/OIDC等),并让后续的会话、路由、权限都基于同一套identity。

2.2租户与路由(消息进哪个会话、哪个Agent)

当前:sessionKey标识「哪条对话」,路由到对应workspace/agent;渠道(Telegram/WhatsApp等)只是入口,最终都进同一套会话与Agent逻辑。

企业要问:

租户:会话/工作区/Agent是否按「团队、部门、项目」做隔离?同一用户在不同租户下是否有不同workspace、不同技能集?

路由:企业里除了「用户

个人助手」,是否还有「用户

部门Bot」「用户

项目Agent」?路由规则由谁配置(管理员/部门负责人)?

渠道与租户:例如「Slack某channel→某团队Agent」「Teams某channel→某项目Agent」,需要把「渠道+空间」映射到tenant+sessionKey(或等价物)。

设计倾向:在现有sessionKey/workspace之上增加一层「租户/上下文」抽象(可以是tenantId、teamId、projectId等),路由时先解析「这条消息属于哪个租户、哪个会话」,再复用现有agent循环;避免为「企业版」重写一套完全不同的路由。

打开网易新闻 查看精彩图片

2.3会话与Agent(并发、排队、配额)

当前:按sessionKey入队,同一session串行;全局maxConcurrent限制;一个agent一个workspace。

企业要问:

并发与配额是否按租户/用户/项目做限流?避免单租户占满全局lane。

企业内是否有「高优先级会话」(VIP、工单升级)需要优先队列或专用lane?

workspace是每租户一个、每项目一个,还是每用户一个?与现有「一个agent一个workspace」如何对应?

设计倾向:在现有「per-session串行+全局lane」上增加「per-tenant或per-user的并发上限」和可选的优先级策略;workspace路径可带租户/项目前缀,便于隔离与备份。

2.4记忆与知识(个人vs组织、谁可以读谁)

当前:文件式记忆MEMORY.md+memory/.md;MEMORY.md随bootstrap注入,memory/.md通过memory_search+memory_get按需读;无多用户/多租户边界。

企业要问:

个人记忆:是否仍保留「每个用户/每个会话」的MEMORY.md+memory/*.md,且严格隔离?

组织知识:是否有一层「组织/团队/项目」共享知识库?若共享,谁可以写、谁可以读、是否要审批或版本管理?

检索边界:memory_search是否只查「当前用户/当前租户」的记忆?组织知识库是否单独索引、单独API(如org_knowledge_search)?

合规:记忆留存策略(保留多久、能否删除、是否支持导出)是否按租户/合规域配置?

设计倾向:记忆分层——「个人记忆」(现有机制+租户/用户边界)与「组织知识」(独立存储与检索、带ACL);先明确「组织知识只读/可写」与「个人记忆仅本人」的边界,再设计索引与注入策略(例如系统提示里「可用的组织知识」仅列出允许的集合)。

打开网易新闻 查看精彩图片

2.5工具与技能(企业API、审批、发布)

当前:MCP与内置工具;skills来自workspace/~/.openclaw/skills/bundled;门控(requires.bins/env/config);用户可/skill或由模型从选用

企业要问:

审批与敏感操作:某些工具(如发邮件、下单、审批)是否必须经人工确认或审批流?与现有execapproval如何扩展(按租户/按工具/按角色)?

技能治理:企业技能库是否集中管理、版本化、需审批后发布?谁可以看到/使用哪些技能?与现有「workspace>managed>bundled」优先级如何兼容(例如企业层=managed的上级)?

模型与成本:企业是否统一指定模型、按团队/项目计费或配额?是否限制某些敏感数据不能发往外部模型?

设计倾向:在现有「工具+MCP+skills」之上增加「企业工具目录」与「技能发布/可见范围」;敏感工具统一走审批链;模型与配额可绑定到租户/项目,便于成本与合规控制。

2.6可观测、成本与治理(谁在用什么、花了多少)

当前:本地日志、Gateway事件;无多租户/多用户的资源与成本拆分。

企业要问:

审计:谁在何时调用了哪个Agent、哪些工具、是否涉及敏感数据?日志是否可导出、保留多久、是否支持合规检索?

成本归属:API调用、模型token、外部工具调用是否按租户/项目/用户统计?是否要做预算与告警?

SLA与健康:企业是否要求Gateway/Agent的可用性、延迟承诺?心跳、健康检查、告警是否按租户或按关键会话配置?

设计倾向:从第一版企业扩展就为「请求/会话」打上tenantId(及可选的userId、projectId),所有日志与指标带这些维度;在此之上再做审计报表与成本分摊,避免事后补标签。

3.三条可选的扩展路径(由简到繁)

路径A:单企业、单租户

一个企业一个部署、一套身份(如企业SSO);不强调「多租户」隔离,只做身份与权限(谁能用哪些渠道、哪些技能)。

适合:单一公司、IT统一运维、先解决「从个人到公司内网」的过渡。

路径B:单实例、多租户

同一套Gateway服务多个团队/部门/项目;租户ID贯穿路由、会话、记忆、工具可见性;数据与日志按租户隔离。

适合:集团内多BU、SaaS形态的「企业版OpenClaw」。

路径C:多实例、多区域/多合规域

不同地区或合规要求下部署多个Gateway(或集群);身份与策略中心统一,数据与执行本地化。

适合:跨国、数据主权、强合规行业。

建议:先想清楚目标客户是A还是B/C,再反推身份、租户、记忆、工具要做到哪一层,避免一次做满「全球多租户」导致复杂度爆炸。

打开网易新闻 查看精彩图片
打开网易新闻 查看精彩图片

4.与现有架构的对应关系

打开网易新闻 查看精彩图片

现有概念到企业扩展:组件关系

打开网易新闻 查看精彩图片

企业加层与现有组件的对应:身份→网关接入;租户→会话/工作区/记忆/审计;权限与审批→工具/技能。

5.总结:怎么想「从架构到企业」

个人助手和企业产品之间,差的不是「功能堆砌」,而是边界分层。想基于OpenClaw这类架构做企业延伸,可以记住四件事:

先定边界—单租户还是多租户?单实例还是多区域?身份和数据谁管?想清楚再动手。再按层拆—从入口身份、租户路由、会话与Agent、记忆与知识、工具与技能,到可观测与治理,一层层问:企业多出来的需求是什么。尽量复用—在现有网关、会话、工作区、Agent、记忆、工具、技能上「加一层」(租户、权限、审批),而不是推倒重写。从最小可行起步—先做「单企业+SSO+按团队隔离+审计日志」,再迭代多租户和组织知识库。

打开网易新闻 查看精彩图片

一句话:把「从个人到企业」拆成可落地的几步,比一上来就做「全球多租户」靠谱得多。如果你也在从个人架构往企业场景探路,欢迎在评论区聊聊你的选型和踩坑经历。