mirror of
https://github.com/memohai/Memoh.git
synced 2026-04-27 07:16:19 +09:00
26 lines
19 KiB
HTML
26 lines
19 KiB
HTML
<!DOCTYPE html>
|
||
<html lang="zh" dir="ltr">
|
||
<head>
|
||
<meta charset="utf-8">
|
||
<meta name="viewport" content="width=device-width,initial-scale=1">
|
||
<title>账号模型与绑定 | Memoh Documentation</title>
|
||
<meta name="description" content="Multi-Member, Structured Long-Memory, Containerized AI Agent System.">
|
||
<meta name="generator" content="VitePress v1.6.4">
|
||
<link rel="preload stylesheet" href="/assets/style.CSFKb52n.css" as="style">
|
||
<link rel="preload stylesheet" href="/vp-icons.css" as="style">
|
||
|
||
<script type="module" src="/assets/app.CIi7iTQc.js"></script>
|
||
<link rel="preload" href="/assets/inter-roman-latin.Di8DUHzh.woff2" as="font" type="font/woff2" crossorigin="">
|
||
<link rel="modulepreload" href="/assets/chunks/theme.BcXdEfOE.js">
|
||
<link rel="modulepreload" href="/assets/chunks/framework.DXGyWiRo.js">
|
||
<link rel="modulepreload" href="/assets/zh_concepts_identity-and-binding.md.6tGYa9d_.lean.js">
|
||
<link rel="icon" href="/logo.png">
|
||
<script id="check-dark-mode">(()=>{const e=localStorage.getItem("vitepress-theme-appearance")||"auto",a=window.matchMedia("(prefers-color-scheme: dark)").matches;(!e||e==="auto"?a:e==="dark")&&document.documentElement.classList.add("dark")})();</script>
|
||
<script id="check-mac-os">document.documentElement.classList.toggle("mac",/Mac|iPhone|iPod|iPad/i.test(navigator.platform));</script>
|
||
</head>
|
||
<body>
|
||
<div id="app"><div class="Layout" data-v-ba7c87da><!--[--><!--]--><!--[--><span tabindex="-1" data-v-d63408fd></span><a href="#VPContent" class="VPSkipLink visually-hidden" data-v-d63408fd>Skip to content</a><!--]--><!----><header class="VPNav" data-v-ba7c87da data-v-908bdb68><div class="VPNavBar" data-v-908bdb68 data-v-8d1ffe88><div class="wrapper" data-v-8d1ffe88><div class="container" data-v-8d1ffe88><div class="title" data-v-8d1ffe88><div class="VPNavBarTitle has-sidebar" data-v-8d1ffe88 data-v-66d4ae12><a class="title" href="/zh/" data-v-66d4ae12><!--[--><!--]--><!--[--><img class="VPImage logo" src="/logo.png" alt="Memoh" data-v-21b99582><!--]--><span data-v-66d4ae12>Memoh</span><!--[--><!--]--></a></div></div><div class="content" data-v-8d1ffe88><div class="content-body" data-v-8d1ffe88><!--[--><!--]--><div class="VPNavBarSearch search" data-v-8d1ffe88><!--[--><!----><div id="local-search"><button type="button" class="DocSearch DocSearch-Button" aria-label="Search"><span class="DocSearch-Button-Container"><span class="vp-icon DocSearch-Search-Icon"></span><span class="DocSearch-Button-Placeholder">Search</span></span><span class="DocSearch-Button-Keys"><kbd class="DocSearch-Button-Key"></kbd><kbd class="DocSearch-Button-Key">K</kbd></span></button></div><!--]--></div><nav aria-labelledby="main-nav-aria-label" class="VPNavBarMenu menu" data-v-8d1ffe88 data-v-a23194af><span id="main-nav-aria-label" class="visually-hidden" data-v-a23194af> Main Navigation </span><!--[--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/" tabindex="0" data-v-a23194af data-v-e59bbbee><!--[--><span data-v-e59bbbee>Guides</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/blogs/" tabindex="0" data-v-a23194af data-v-e59bbbee><!--[--><span data-v-e59bbbee>Blogs</span><!--]--></a><!--]--><!--]--></nav><div class="VPFlyout VPNavBarTranslations translations" data-v-8d1ffe88 data-v-2d4849be data-v-c9799874><button type="button" class="button" aria-haspopup="true" aria-expanded="false" aria-label="Change language" data-v-c9799874><span class="text" data-v-c9799874><span class="vpi-languages option-icon" data-v-c9799874></span><!----><span class="vpi-chevron-down text-icon" data-v-c9799874></span></span></button><div class="menu" data-v-c9799874><div class="VPMenu" data-v-c9799874 data-v-b1338896><!----><!--[--><!--[--><div class="items" data-v-2d4849be><p class="title" data-v-2d4849be>简体中文</p><!--[--><div class="VPMenuLink" data-v-2d4849be data-v-859c4b5e><a class="VPLink link" href="/concepts/identity-and-binding.html" data-v-859c4b5e><!--[--><span data-v-859c4b5e>English</span><!--]--></a></div><!--]--></div><!--]--><!--]--></div></div></div><div class="VPNavBarAppearance appearance" data-v-8d1ffe88 data-v-c2b7fe22><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-c2b7fe22 data-v-95390f3d data-v-65cb479b><span class="check" data-v-65cb479b><span class="icon" data-v-65cb479b><!--[--><span class="vpi-sun sun" data-v-95390f3d></span><span class="vpi-moon moon" data-v-95390f3d></span><!--]--></span></span></button></div><div class="VPSocialLinks VPNavBarSocialLinks social-links" data-v-8d1ffe88 data-v-5bf14e4d data-v-ce44a42a><!--[--><a class="VPSocialLink no-icon" href="https://github.com/memohai/Memoh" aria-label="github" target="_blank" rel="noopener" data-v-ce44a42a data-v-9d5b176c><span class="vpi-social-github"></span></a><!--]--></div><div class="VPFlyout VPNavBarExtra extra" data-v-8d1ffe88 data-v-563e76b4 data-v-c9799874><button type="button" class="button" aria-haspopup="true" aria-expanded="false" aria-label="extra navigation" data-v-c9799874><span class="vpi-more-horizontal icon" data-v-c9799874></span></button><div class="menu" data-v-c9799874><div class="VPMenu" data-v-c9799874 data-v-b1338896><!----><!--[--><!--[--><div class="group translations" data-v-563e76b4><p class="trans-title" data-v-563e76b4>简体中文</p><!--[--><div class="VPMenuLink" data-v-563e76b4 data-v-859c4b5e><a class="VPLink link" href="/concepts/identity-and-binding.html" data-v-859c4b5e><!--[--><span data-v-859c4b5e>English</span><!--]--></a></div><!--]--></div><div class="group" data-v-563e76b4><div class="item appearance" data-v-563e76b4><p class="label" data-v-563e76b4>Appearance</p><div class="appearance-action" data-v-563e76b4><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-563e76b4 data-v-95390f3d data-v-65cb479b><span class="check" data-v-65cb479b><span class="icon" data-v-65cb479b><!--[--><span class="vpi-sun sun" data-v-95390f3d></span><span class="vpi-moon moon" data-v-95390f3d></span><!--]--></span></span></button></div></div></div><div class="group" data-v-563e76b4><div class="item social-links" data-v-563e76b4><div class="VPSocialLinks social-links-list" data-v-563e76b4 data-v-ce44a42a><!--[--><a class="VPSocialLink no-icon" href="https://github.com/memohai/Memoh" aria-label="github" target="_blank" rel="noopener" data-v-ce44a42a data-v-9d5b176c><span class="vpi-social-github"></span></a><!--]--></div></div></div><!--]--><!--]--></div></div></div><!--[--><!--]--><button type="button" class="VPNavBarHamburger hamburger" aria-label="mobile navigation" aria-expanded="false" aria-controls="VPNavScreen" data-v-8d1ffe88 data-v-96eb4489><span class="container" data-v-96eb4489><span class="top" data-v-96eb4489></span><span class="middle" data-v-96eb4489></span><span class="bottom" data-v-96eb4489></span></span></button></div></div></div></div><div class="divider" data-v-8d1ffe88><div class="divider-line" data-v-8d1ffe88></div></div></div><!----></header><div class="VPLocalNav has-sidebar empty" data-v-ba7c87da data-v-b2c93339><div class="container" data-v-b2c93339><button class="menu" aria-expanded="false" aria-controls="VPSidebarNav" data-v-b2c93339><span class="vpi-align-left menu-icon" data-v-b2c93339></span><span class="menu-text" data-v-b2c93339>Menu</span></button><div class="VPLocalNavOutlineDropdown" style="--vp-vh:0px;" data-v-b2c93339 data-v-d1ffc3c0><button data-v-d1ffc3c0>Return to top</button><!----></div></div></div><aside class="VPSidebar" data-v-ba7c87da data-v-59945d5d><div class="curtain" data-v-59945d5d></div><nav class="nav" id="VPSidebarNav" aria-labelledby="sidebar-aria-label" tabindex="-1" data-v-59945d5d><span class="visually-hidden" id="sidebar-aria-label" data-v-59945d5d> Sidebar Navigation </span><!--[--><!--]--><!--[--><div class="no-transition group" data-v-5df780f0><section class="VPSidebarItem level-0" data-v-5df780f0 data-v-31549b30><!----><div class="items" data-v-31549b30><!--[--><div class="VPSidebarItem level-1 is-link" data-v-31549b30 data-v-31549b30><div class="item" data-v-31549b30><div class="indicator" data-v-31549b30></div><a class="VPLink link link" href="/zh/index.html" data-v-31549b30><!--[--><p class="text" data-v-31549b30>文档总览</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><!--]--><!--[--><!--]--></nav></aside><div class="VPContent has-sidebar" id="VPContent" data-v-ba7c87da data-v-6c992f05><div class="VPDoc has-sidebar has-aside" data-v-6c992f05 data-v-888acc39><!--[--><!--]--><div class="container" data-v-888acc39><div class="aside" data-v-888acc39><div class="aside-curtain" data-v-888acc39></div><div class="aside-container" data-v-888acc39><div class="aside-content" data-v-888acc39><div class="VPDocAside" data-v-888acc39 data-v-8cfe0409><!--[--><!--]--><!--[--><!--]--><nav aria-labelledby="doc-outline-aria-label" class="VPDocAsideOutline" data-v-8cfe0409 data-v-116d4a1f><div class="content" data-v-116d4a1f><div class="outline-marker" data-v-116d4a1f></div><div aria-level="2" class="outline-title" id="doc-outline-aria-label" role="heading" data-v-116d4a1f>On this page</div><ul class="VPDocOutlineItem root" data-v-116d4a1f data-v-ba57d2ed><!--[--><!--]--></ul></div></nav><!--[--><!--]--><div class="spacer" data-v-8cfe0409></div><!--[--><!--]--><!----><!--[--><!--]--><!--[--><!--]--></div></div></div></div><div class="content" data-v-888acc39><div class="content-container" data-v-888acc39><!--[--><!--]--><main class="main" data-v-888acc39><div style="position:relative;" class="vp-doc _zh_concepts_identity-and-binding" data-v-888acc39><div><h1 id="账号模型与绑定" tabindex="-1">账号模型与绑定 <a class="header-anchor" href="#账号模型与绑定" aria-label="Permalink to "账号模型与绑定""></a></h1><h2 id="账号模型" tabindex="-1">账号模型 <a class="header-anchor" href="#账号模型" aria-label="Permalink to "账号模型""></a></h2><p>Memoh 将平台账号与系统账号视为两类不同实体:</p><ul><li><strong>平台账号(<code>ChannelIdentity</code>)</strong> 是用户在外部接入平台上的账号(例如飞书账号),不是 Memoh 内部账号。</li><li><strong>系统账号(<code>User</code>)</strong> 是 Memoh 系统内账号。</li></ul><p>平台账号在初始阶段可以不绑定系统账号。<br><code>bind</code> 的职责是完成这两类账号的关联。</p><h2 id="接入平台与-bot" tabindex="-1">接入平台与 Bot <a class="header-anchor" href="#接入平台与-bot" aria-label="Permalink to "接入平台与 Bot""></a></h2><ul><li><strong>接入平台(<code>channel</code>)</strong> 是入站消息来源。</li><li><strong>Bot</strong> 是系统内的授权与资源边界。</li></ul><p>Bot 由系统账号管理,入站消息由平台账号产生。</p><h2 id="为什么账号绑定是账号作用域" tabindex="-1">为什么账号绑定是账号作用域 <a class="header-anchor" href="#为什么账号绑定是账号作用域" aria-label="Permalink to "为什么账号绑定是账号作用域""></a></h2><p>账号绑定的目标是建立账号归属关系,而不是直接发放 bot 资源权限:</p><ul><li>它只负责平台账号与系统账号的绑定;</li><li>不把账号绑定与成员管理语义耦合在一起;</li><li>让 bot 访问控制保持独立、可演进。</li></ul><h2 id="账号绑定流程-当前共识" tabindex="-1">账号绑定流程(当前共识) <a class="header-anchor" href="#账号绑定流程-当前共识" aria-label="Permalink to "账号绑定流程(当前共识)""></a></h2><ol><li>用户以自己的系统账号申请 bind code;</li><li>平台账号在支持的接入平台会话中发送 code;</li><li>系统校验 code,完成平台账号到系统账号的绑定;</li><li>bot 成员与授权由独立流程处理。</li></ol><h2 id="bot-类型语义" tabindex="-1">Bot 类型语义 <a class="header-anchor" href="#bot-类型语义" aria-label="Permalink to "Bot 类型语义""></a></h2><ul><li><strong>Public bot</strong>:支持成员协作语义。</li><li><strong>Personal bot</strong>:语义上应为单 owner,不应依赖成员机制。</li></ul><blockquote><p>注:本文档记录的是产品语义与共识方向。<br> 部分运行时细节仍可能处于收敛阶段。</p></blockquote></div></div></main><footer class="VPDocFooter" data-v-888acc39 data-v-64297f89><!--[--><!--]--><div class="edit-info" data-v-64297f89><div class="edit-link" data-v-64297f89><a class="VPLink link vp-external-link-icon no-icon edit-link-button" href="https://github.com/memohai/Memoh/edit/main/docs/docs/zh/concepts/identity-and-binding.md" target="_blank" rel="noreferrer" data-v-64297f89><!--[--><span class="vpi-square-pen edit-link-icon" data-v-64297f89></span> Edit on GitHub<!--]--></a></div><div class="last-updated" data-v-64297f89><p class="VPLastUpdated" data-v-64297f89 data-v-1cbf3ee4>Last Updated: <time datetime="2026-02-12T09:13:03.000Z" data-v-1cbf3ee4></time></p></div></div><nav class="prev-next" aria-labelledby="doc-footer-aria-label" data-v-64297f89><span class="visually-hidden" id="doc-footer-aria-label" data-v-64297f89>Pager</span><div class="pager" data-v-64297f89><!----></div><div class="pager" data-v-64297f89><a class="VPLink link pager-link next" href="/zh/index.html" data-v-64297f89><!--[--><span class="desc" data-v-64297f89>Next page</span><span class="title" data-v-64297f89>文档总览</span><!--]--></a></div></nav></footer><!--[--><!--]--></div></div></div><!--[--><!--]--></div></div><footer class="VPFooter has-sidebar" data-v-ba7c87da data-v-137d0c52><div class="container" data-v-137d0c52><p class="message" data-v-137d0c52>Published under AGPLv3</p><p class="copyright" data-v-137d0c52>Copyright © 2024 Memoh</p></div></footer><!--[--><!--]--></div></div>
|
||
<script>window.__VP_HASH_MAP__=JSON.parse("{\"about.md\":\"B8mz5B7D\",\"blogs_2026-02-16.md\":\"D7X_K9ac\",\"blogs_index.md\":\"CzVqJnkf\",\"channels_discord.md\":\"CgnXVcxj\",\"channels_feishu.md\":\"7xzXC8PR\",\"channels_index.md\":\"CV834U5I\",\"channels_matrix.md\":\"C5lym8OS\",\"channels_qq.md\":\"BiHC52Zm\",\"channels_telegram.md\":\"WGR_O6_O\",\"channels_wecom.md\":\"D7yBtNrz\",\"channels_weixin.md\":\"Ckccg7Ew\",\"getting-started_access.md\":\"Co5O-s2T\",\"getting-started_bot.md\":\"CULM4cGX\",\"getting-started_browser.md\":\"Cjpk7h3a\",\"getting-started_channels.md\":\"DP2fW_sw\",\"getting-started_compaction.md\":\"CQe9KC6f\",\"getting-started_container.md\":\"Do_YGEZB\",\"getting-started_email.md\":\"DLrAWkek\",\"getting-started_files.md\":\"CbhHSLX5\",\"getting-started_heartbeat.md\":\"lBwT6Ivl\",\"getting-started_mcp.md\":\"CfWEkmuE\",\"getting-started_memory.md\":\"DfffnmM0\",\"getting-started_provider-and-model.md\":\"MB4KgxWX\",\"getting-started_schedule.md\":\"7R1TStAB\",\"getting-started_search-provider.md\":\"DDV1py8V\",\"getting-started_sessions.md\":\"CaVKbfb5\",\"getting-started_skills.md\":\"E3JgIlwr\",\"getting-started_slash-commands.md\":\"CBeh4epy\",\"index.md\":\"MTTbinuf\",\"installation_docker.md\":\"DxE7r3rU\",\"memory-providers_builtin.md\":\"DlYtNI3G\",\"memory-providers_index.md\":\"D5MvHNPW\",\"memory-providers_mem0.md\":\"C5B6D9ME\",\"memory-providers_openviking.md\":\"N-8WyFZa\",\"tts-providers_edge.md\":\"DPjdtaQf\",\"tts-providers_index.md\":\"Cgc87EeS\",\"zh_concepts_identity-and-binding.md\":\"6tGYa9d_\",\"zh_concepts_index.md\":\"_zNPjKkD\",\"zh_index.md\":\"Db4hJx1C\",\"zh_style_terminology.md\":\"CzqhSoQX\"}");window.__VP_SITE_DATA__=JSON.parse("{\"lang\":\"en-US\",\"dir\":\"ltr\",\"title\":\"Memoh Documentation\",\"description\":\"Multi-Member, Structured Long-Memory, Containerized AI Agent System.\",\"base\":\"/\",\"head\":[],\"router\":{\"prefetchLinks\":true},\"appearance\":true,\"themeConfig\":{\"siteTitle\":\"Memoh\",\"sidebar\":{\"/blogs/\":[{\"text\":\"Blogs\",\"link\":\"/blogs/index.md\",\"items\":[{\"text\":\"Introduction (Feb 2026)\",\"link\":\"/blogs/2026-02-16.md\"}]}],\"/\":[{\"text\":\"Overview\",\"link\":\"/index.md\"},{\"text\":\"About Memoh\",\"link\":\"/about.md\"},{\"text\":\"Installation\",\"items\":[{\"text\":\"Docker\",\"link\":\"/installation/docker.md\"}]},{\"text\":\"Getting Started\",\"items\":[{\"text\":\"LLM Provider\",\"link\":\"/getting-started/provider-and-model.md\"},{\"text\":\"Bot\",\"link\":\"/getting-started/bot.md\"},{\"text\":\"Sessions\",\"link\":\"/getting-started/sessions.md\"},{\"text\":\"Access Control\",\"link\":\"/getting-started/access.md\"},{\"text\":\"Container\",\"link\":\"/getting-started/container.md\"},{\"text\":\"Files\",\"link\":\"/getting-started/files.md\"},{\"text\":\"Skills\",\"link\":\"/getting-started/skills.md\"},{\"text\":\"MCP\",\"link\":\"/getting-started/mcp.md\"},{\"text\":\"Channels\",\"link\":\"/getting-started/channels.md\"},{\"text\":\"Browser\",\"link\":\"/getting-started/browser.md\"},{\"text\":\"Memory\",\"link\":\"/getting-started/memory.md\"},{\"text\":\"Context Compaction\",\"link\":\"/getting-started/compaction.md\"},{\"text\":\"Heartbeat\",\"link\":\"/getting-started/heartbeat.md\"},{\"text\":\"Scheduled Tasks\",\"link\":\"/getting-started/schedule.md\"},{\"text\":\"Web Search\",\"link\":\"/getting-started/search-provider.md\"},{\"text\":\"Email\",\"link\":\"/getting-started/email.md\"},{\"text\":\"Slash Commands\",\"link\":\"/getting-started/slash-commands.md\"}]},{\"text\":\"Memory Providers\",\"items\":[{\"text\":\"Overview\",\"link\":\"/memory-providers/index.md\"},{\"text\":\"Built-in\",\"link\":\"/memory-providers/builtin.md\"},{\"text\":\"Mem0\",\"link\":\"/memory-providers/mem0.md\"},{\"text\":\"OpenViking\",\"link\":\"/memory-providers/openviking.md\"}]},{\"text\":\"TTS Providers\",\"items\":[{\"text\":\"Overview\",\"link\":\"/tts-providers/index.md\"},{\"text\":\"Edge TTS\",\"link\":\"/tts-providers/edge.md\"}]},{\"text\":\"Channels\",\"items\":[{\"text\":\"Overview\",\"link\":\"/channels/index.md\"},{\"text\":\"Telegram\",\"link\":\"/channels/telegram.md\"},{\"text\":\"Feishu (Lark)\",\"link\":\"/channels/feishu.md\"},{\"text\":\"Discord\",\"link\":\"/channels/discord.md\"},{\"text\":\"QQ\",\"link\":\"/channels/qq.md\"},{\"text\":\"Matrix\",\"link\":\"/channels/matrix.md\"},{\"text\":\"WeCom (WeWork)\",\"link\":\"/channels/wecom.md\"},{\"text\":\"WeChat\",\"link\":\"/channels/weixin.md\"}]}],\"/zh/\":[{\"text\":\"文档总览\",\"link\":\"/zh/index.md\"}]},\"nav\":[{\"text\":\"Guides\",\"link\":\"/\"},{\"text\":\"Blogs\",\"link\":\"/blogs/\"}],\"logo\":{\"src\":\"/logo.png\",\"alt\":\"Memoh\"},\"socialLinks\":[{\"icon\":\"github\",\"link\":\"https://github.com/memohai/Memoh\"}],\"footer\":{\"message\":\"Published under AGPLv3\",\"copyright\":\"Copyright © 2024 Memoh\"},\"search\":{\"provider\":\"local\"},\"editLink\":{\"pattern\":\"https://github.com/memohai/Memoh/edit/main/docs/docs/:path\",\"text\":\"Edit on GitHub\"},\"lastUpdated\":{\"text\":\"Last Updated\",\"formatOptions\":{\"dateStyle\":\"short\",\"timeStyle\":\"medium\"}}},\"locales\":{\"root\":{\"label\":\"English\",\"lang\":\"en\"},\"zh\":{\"label\":\"简体中文\",\"lang\":\"zh\"}},\"scrollOffset\":134,\"cleanUrls\":false}");</script>
|
||
|
||
</body>
|
||
</html> |