共享空间
学习如何创建和管理共享空间,与团队成员协作编辑文档,使用讨论区进行异步沟通,并通过 Git 实现版本控制和多人协作。
3.1 共享空间概述
共享空间的权限控制并非由 MeshWork 实现,而是由你绑定的远程 Git 仓库(如 GitHub)的访问权限决定。
具体来说:
- 数据存放在本地并不意味着被共享,只有当你为共享空间绑定了远程仓库,并且将仓库地址分享给他人时,数据才会被共享。
- 谁能访问这个共享空间,取决于远程仓库平台的权限设置。在 GitHub 上,只有被邀请为协作者(Collaborator)的人才能访问私有仓库。
- 如果你取消远程仓库绑定,或者从协作者列表中移除某人,他们将无法再访问该共享空间的内容。
- 请谨慎管理远程仓库权限,确保只有可信的人员能够访问你的共享空间。
什么是共享空间
共享空间是团队或项目级的数据边界,是 MeshWork 中多人协作的核心单位。每个共享空间包含以下几个核心部分:
- 公共知识库:存放团队共享的文档、知识、资源和长期沉淀的内容。
- 讨论区:围绕共享内容进行异步讨论的地方,支持话题状态、成员参与和智能对话。
- 共享附件:团队共享的图片、文件和其他媒体资源。
- Git 配置:可选的版本控制和远程协作功能。
共享空间的设计理念是先建立自己的私有知识库,再按需加入共享空间。这样可以保持个人思考的独立性,同时与团队和 AI 一起把讨论沉淀为长期知识。
共享空间与私有知识库的关系
在 MeshWork 中,私有知识库和共享空间是两个独立的数据边界:
- 私有知识库:属于当前用户自己,存放个人长期笔记、研究资料、写作草稿、灵感片段和不应自动进入团队共享的内容。
- 共享空间:属于团队或项目,存放团队共享知识、讨论和协作内容。
工作台负责组合一个私有知识库和多个共享空间。你可以同时参与多个不同的共享空间,如公司的产品策划空间、开源项目的文档空间、朋友间的内容创作空间等。
共享空间的应用场景
共享空间适用于各种团队协作场景:
- 产品策划团队:收集市场调研、竞品分析、需求文档和产品规划。
- 内容创作团队:协同写作文章、书籍、视频脚本和营销内容。
- 研究讨论小组:学术论文讨论、研究笔记分享和观点交流。
- 开源项目维护:项目文档、开发指南和社区讨论。
- 教育培训:课程资料共享、学习讨论和作业协作。
侧边栏中的共享空间
在工作台主界面中,共享空间位于侧边栏的下半部分:
- 私有知识库:固定在侧边栏上半部分,始终可见。
- 共享空间列表:位于侧边栏下半部分,可以添加多个共享空间。
- 添加按钮:共享空间区域下方有
+按钮,用于创建或加入新的共享空间。
每个共享空间下可以展开显示两个子项:公共知识库和讨论区。点击相应的子项可以在主内容区中查看对应的内容。
3.2 创建共享空间
创建前的准备
在创建共享空间之前,建议先明确以下几点:
- 团队规模:确定参与团队的成员数量和角色分工。
- 协作目标:明确共享空间的主要用途,如产品文档、内容创作、研究讨论等。
- Git 需求:考虑是否需要远程协作。创建共享空间时可以先不绑定远端,后续在共享空间设置中再配置 Git。
- 目录位置:选择合适的磁盘目录位置存放共享空间数据。
对于初次使用 MeshWork 的团队,建议先创建不带 Git 的共享空间,熟悉产品功能后再配置版本控制。这样可以降低学习曲线,快速上手协作。
创建步骤
创建一个新的共享空间:
- 打开创建界面:在工作台主界面,点击侧边栏下方的
+按钮。 - 选择创建类型:在弹出菜单中选择"创建共享空间"。
- 输入基本信息:
- 输入共享空间名称,如"产品策划团队"或"内容创作工作室"。
- 选择本地存储目录。MeshWork 会在指定目录下创建共享空间的数据结构。
- 选择是否使用模板。如果是第一次创建,建议选择"空模板",后续可以根据实际需求添加内容。
- 完成创建:点击"创建"按钮,MeshWork 会在指定目录下创建共享空间的完整目录结构。需要远程协作时,再到共享空间设置中绑定远端仓库。
目录结构
创建完成后,共享空间的目录结构如下:
<shared-space>/
├── .meshwork/ # MeshWork 元数据和配置
├── public-knowledge/ # 公共知识库文档
├── discussions/ # 讨论区数据
└── assets/ # 共享附件和媒体资源
.meshwork 目录包含共享空间的配置信息、Git 设置和元数据。不要手动编辑此目录中的文件,除非你清楚了解其结构和影响。
初始界面
创建完成后,你会看到以下界面变化:
- 新的共享空间会出现在侧边栏的共享空间列表中。
- 可以展开共享空间,看到"公共知识库"和"讨论区"两个子项。
- 默认会打开公共知识库,显示一个空白的文档树。
- 可以开始创建文档、组织文件夹结构,并邀请团队成员加入。
3.3 加入共享空间
获取邀请信息
要加入一个已有的共享空间,需要先获取该共享空间的邀请信息。邀请信息通常由共享空间的创建者或管理员提供,包含以下关键信息:
- 远程仓库 URL:共享空间绑定的 Git 远程仓库地址。
- 分支名称:共享空间在远程仓库中的分支名。
- 共享空间名称:用于本地目录命名的建议名称。
MeshWork 使用标准化的邀请文本格式,包含人可读说明和机器可解析的 JSON 数据。收到邀请文本后,可以直接粘贴到加入界面中,系统会自动解析并填充相关信息。
加入步骤
加入一个已有的共享空间:
- 打开加入界面:在工作台主界面,点击侧边栏下方的
+按钮。 - 选择加入类型:在弹出菜单中选择"加入共享空间"。
- 输入邀请信息:
- 如果收到了 MeshWork 邀请文本,直接按
Command+V粘贴到界面中。系统会自动解析并填充以下字段:- 远程仓库 URL
- 分支名称
- 本地名称(如果还未输入)
- 如果没有邀请文本,手动输入远程仓库地址和分支名称。
- 输入本地目录名称,用于在本地存储共享空间数据。
- 选择本地存储目录位置。
- 如果收到了 MeshWork 邀请文本,直接按
- 克隆远程内容:
- 点击"加入"按钮后,MeshWork 会从远程仓库克隆指定分支的内容。
- 首次加入可能需要一些时间,具体取决于网络速度和远程仓库的大小。
- 克隆完成后,本地会获得完整的共享空间历史和当前内容。
- 开始协作:
- 加入成功后,共享空间会出现在侧边栏中。
- 可以查看公共知识库中的文档,参与讨论区的话题,并通过同步与团队成员交换最新内容。
权限和访问控制
加入共享空间后,你的权限取决于远程仓库的访问设置:
- 写入权限:可以编辑文档、创建讨论、推送更改到远程仓库。
- 只读权限:可以查看内容,但不能修改或推送更改。
- 管理员权限:除了写入权限外,还可以管理团队成员、调整设置和配置 Git。
如果你发现无法编辑或推送更改,可能是权限不足。请联系共享空间的管理员,请求相应的访问权限。
解决加入问题
在加入共享空间时,可能会遇到一些常见问题:
- 认证失败:检查 SSH 密钥或 Personal Access Token 是否正确配置。
- 仓库不存在:确认远程仓库 URL 是否正确,仓库是否已被删除。
- 分支不存在:确认分支名称是否正确,区分大小写。
- 权限不足:确认你是否有访问该仓库的权限。
如果遇到问题,建议先尝试使用 SSH 方式连接。SSH 方式通常比 HTTPS 更稳定,且不需要管理 Token 的有效期。
3.4 分享共享空间
分享前的准备
在分享共享空间之前,需要确保以下几点:
- 已配置 Git:共享空间必须绑定远程 Git 仓库才能分享。
- 内容已推送:确保本地的更改已推送到远程仓库,这样团队成员才能看到最新内容。
- 权限已设置:在远程仓库托管服务(如 GitHub)中,确保目标用户已被授予相应权限。
如果共享空间未绑定远程仓库,分享功能将不可用。请先在共享空间设置中配置 Git,然后再进行分享。
生成邀请文本
为共享空间生成邀请文本:
- 打开分享界面:在侧边栏中右键点击要分享的共享空间,选择"分享"。
- 查看邀请信息:系统会打开一个 Sheet,显示以下信息:
- 远程仓库 URL
- 分支名称
- 共享空间名称
- 自动生成的邀请文本
- 复制邀请文本:点击"复制邀请"按钮,将邀请文本复制到剪贴板。
邀请文本格式
MeshWork 的邀请文本采用标准化的格式,包含人可读说明和机器可解析的 JSON 数据:
-----BEGIN MESHWORK SHARED SPACE INVITE-----
{
"type": "com.meshwork.shared-space-invite",
"version": 1,
"name": "产品策划团队",
"remoteURL": "[email protected]:example/product-docs.git",
"branch": "meshwork/shared/product-team"
}
-----END MESHWORK SHARED SPACE INVITE-----
这个格式的优势:
- 人可读:即使粘贴到聊天应用或邮件中,收件人也能理解这是 MeshWork 邀请。
- 机器可解析:收件人可以直接粘贴到 MeshWork 中,系统会自动提取必要信息。
- 版本兼容:包含版本号,便于未来的格式升级和兼容性处理。
分享方式
生成邀请文本后,可以通过多种方式分享给团队成员:
- 系统分享:使用 macOS 的系统分享功能,通过 AirDrop、信息、邮件等方式发送。
- 复制粘贴:将邀请文本复制后,粘贴到 Slack、微信、钉钉等团队沟通工具中。
- 邮件发送:将邀请文本作为邮件内容发送给目标用户。
- 文档分享:将邀请文本放入团队协作文档中,便于成员随时获取。
设置远程仓库权限
仅仅发送邀请文本还不够,还需要确保目标用户有权限访问远程仓库:
- 访问远程仓库的托管服务(如 GitHub)。
- 进入仓库的"Settings"页面。
- 在左侧菜单中点击"Collaborators"。
- 点击"Add people"按钮。
- 输入团队成员的 GitHub 用户名或邮箱地址。
- 选择权限级别(建议选择"Write"权限)。
- 点击"Add"发送邀请。
对于大多数团队成员,"Write"权限已经足够。只有在需要管理仓库设置和团队成员时,才需要授予管理员权限。
分享后管理
分享共享空间后,作为创建者或管理员,你需要:
- 定期推送更新:确保本地更改及时推送到远程仓库。
- 解决冲突:当多个成员同时修改同一文档时,需要协助解决合并冲突。
- 维护文档质量:确保公共知识库中的文档结构清晰、内容准确。
- 引导新成员:帮助新加入的成员了解共享空间的使用规范和最佳实践。
3.5 公共知识库协作
公共知识库概述
公共知识库是共享空间中存放团队共享文档的核心区域。与私有知识库类似,它支持文档编辑、文件夹组织、AI 辅助等功能,但内容对所有团队成员可见,并按文档类型提供编辑或只读查看能力。
公共知识库中的文档应该是有长期价值、需要团队共享的知识。临时的讨论、个人想法和未成型的内容更适合放在私有知识库中。
创建和编辑文档
在公共知识库中创建和编辑文档:
- 打开公共知识库:在侧边栏中展开共享空间,点击"公共知识库"。
- 创建新文档:点击文档树中的"新建文档"按钮,输入文档标题。
- 组织文档结构:
- 创建文件夹来组织相关文档。
- 使用有意义的文件夹和文档名称。
- 遵循团队的命名约定和目录结构规范。
- 编辑文档内容:
- 使用富文本编辑器编写内容。
- 插入图片、链接和代码块。
- 使用 AI 助手辅助写作和优化内容。
- 保存更改:编辑会自动保存,也可以手动按
Command+S保存。
共享 PDF 与 Word 资料
公共知识库同样可以保存 PDF、.docx 和 .doc 资料。它们会作为共享空间的数据边界参与 Git 同步,适合放置团队共同阅读的论文、合同、产品手册、调研报告和外部资料。
- 只读查看:PDF 使用 PDFKit 原生查看,Word 使用 macOS 文本系统或 Quick Look 预览;原始文件不会在 MeshWork 中直接编辑。
- 本地 OCR:扫描型 PDF 在文本不足时会通过 Apple Vision 在本机识别正文,便于搜索和 AI 阅读。
- 转换沉淀:需要共同编辑或整理时,可以使用"转换为 Markdown"生成同目录 Markdown,再在新文档中协作修改。
- 讨论引用:在讨论区消息中引用这些文件,AI 可以按需读取可提取正文,把外部资料纳入团队讨论上下文。
文档树排序
公共知识库的文档树也支持排序。入口在左侧边栏中对应共享空间下的"公共知识区"标题行右侧:点击 + 按钮,打开菜单后选择"排序"。
- 按名称排序:适合按文件名或目录名浏览团队文档。
- 按修改时间排序:适合查看团队最近更新的文档,或定位长期未维护的内容。
- 按创建时间排序:适合按资料创建顺序回顾项目积累。
- 切换升降序:再次点击当前排序字段,会在升序和降序之间切换。菜单中的箭头会显示当前方向。
每个共享空间的公共知识库会分别保存自己的排序设置,不会影响私有知识库或其他共享空间。
协作编辑最佳实践
在团队协作编辑文档时,建议遵循以下最佳实践:
- 避免同时编辑同一文档:尽量与团队成员协调,避免多人同时编辑同一文档,以减少冲突。
- 小步提交:频繁地推送小改动,而不是长时间积累大量更改后再一次性推送。这样更容易追踪历史和解决冲突。
- 清晰的提交信息:每次推送时,提供简洁明了的更改说明,帮助团队成员理解你的修改。
- 沟通重大改动:在进行大规模文档重构或删除操作前,先在讨论区或团队沟通工具中告知其他成员。
- 定期同步:养成定期拉取远程更新的习惯,确保本地内容与团队保持同步。
使用讨论区围绕文档进行讨论,而不是直接在文档中进行大量评论。这样可以保持文档内容的整洁,同时保留讨论历史。
文档版本历史
通过 Git 的版本历史功能,你可以:
- 查看历史:查看文档的所有修改历史,包括谁在何时做了什么修改。
- 比较版本:比较不同版本之间的差异,了解具体更改内容。
- 恢复旧版本:如果误删或误改了重要内容,可以从历史版本中恢复。
- 追溯贡献:了解每个团队成员对文档的贡献情况。
处理编辑冲突
当多个团队成员同时修改同一文档时,可能会遇到编辑冲突。解决冲突的步骤:
- 识别冲突:当你尝试推送更改时,如果远程仓库有新的提交,MeshWork 会提示存在冲突。
- 拉取远程更改:先拉取远程的最新更改,MeshWork 会尝试自动合并。
- 手动解决冲突:
- 如果自动合并失败,需要手动解决冲突。
- MeshWork 会显示冲突的内容,让你选择保留哪个版本或合并两个版本。
- 仔细检查每个冲突区域,确保最终内容正确无误。
- 推送解决后的版本:冲突解决后,再次推送更改到远程仓库。
最好的冲突解决方法是预防。通过良好的沟通、合理的任务分工和频繁的同步,可以大大减少冲突的发生。
文档模板和规范
为了保持公共知识库的一致性和可读性,建议:
- 使用文档模板:为常见类型的文档创建模板,如会议记录、需求文档、技术方案等。
- 制定编写规范:约定文档的格式、结构、命名规则和语言风格。
- 建立审核机制:对于重要的文档,可以建立审核流程,确保内容质量。
- 定期维护:定期清理过时文档,更新错误信息,优化目录结构。
3.6 讨论区使用
讨论区概述
讨论区是共享空间中进行异步沟通的核心工具。它支持话题讨论、状态管理、成员参与和 AI 智能对话,帮助团队成员围绕共享内容进行深入讨论。
讨论区采用类似邮件列表和论坛的异步沟通模式,不同于实时聊天工具。这种模式更适合深度思考、长篇讨论和跨时区协作。
创建和管理话题
在讨论区中创建和管理话题:
- 打开讨论区:在侧边栏中展开共享空间,点击"讨论区"。
- 创建新话题:
- 点击"新建话题"按钮。
- 输入话题标题,要求简洁明了地描述讨论主题。
- 设置话题标题和初始消息,让团队成员理解讨论背景。
- 设置话题状态(如"开放"、"进行中"、"已解决"等)。
- 编写话题的初始内容,清楚说明背景、问题和期望的讨论方向。
- 关联相关文档(可选),将讨论与具体的公共知识库文档关联起来。
- 管理话题:
- 更新话题状态,反映当前进展。
- 调整标签,帮助分类和检索。
- 编辑话题标题和内容,修正错误或补充信息。
- 关闭已解决或不再相关的话题。
参与讨论
在讨论区中参与话题讨论:
- 浏览话题:在话题列表中查看所有讨论,并根据状态和时间判断哪些话题需要继续推进。
- 回复话题:
- 点击话题进入详情页。
- 在回复框中输入你的观点、建议或问题。
- 支持富文本格式,可以插入链接、代码块和图片。
- 可以 @ 提及其他团队成员,引起他们的注意。
- 使用 AI 助手辅助整理观点、生成总结或提供智能建议。
- 关注话题:对于重要的话题,可以选择"关注",这样有新回复时会收到通知。
- 引用回复:可以引用特定消息进行回复,使讨论结构更清晰。
使用 AI 助手
讨论区集成了 AI 智能助手,提供以下功能:
- 自动总结:AI 可以自动总结长篇讨论的要点,帮助团队成员快速了解讨论进展。
- 观点提取:从杂乱的讨论中提取不同观点和立场,便于理解各方意见。
- 问题识别:自动识别讨论中的问题和争议点,帮助聚焦关键议题。
- 建议生成:根据讨论内容,提供可能的解决方案或下一步行动建议。
- 智能回复:AI 可以根据上下文生成回复草稿,减少重复性工作。
AI 助手特别适合处理长话题的总结和整理。当一个话题有几十条回复时,可以让 AI 生成一个结构化的总结,帮助新参与的成员快速了解背景和现状。
话题知识卡:把讨论沉淀为当前认知
当一个话题逐渐变长,仅靠消息流很难快速回答“现在已经形成了什么共识”“哪些问题仍然悬而未决”。Topic Knowledge Card 就是为这个场景设计的。它不会替代原始讨论,而是在保留完整消息过程的同时,用一张结构化卡片记录这个话题此刻的认知状态。
Knowledge Card 的意义
在 MeshWork 中,消息流保存讨论过程,Knowledge Card 保存当前总结,Git 历史保存总结如何变化。这样团队既能快速进入当前结论,也能追溯结论是怎样一步步形成的。
在哪里打开
- 进入共享空间中的某个话题。
- 默认情况下,讨论详情右侧会显示"知识卡"侧边栏;如果你之前将它隐藏,可以点击讨论工具栏中的"显示知识卡"重新打开。
- 右侧侧边栏顶部会显示"知识卡"标题,并提供隐藏侧边栏的按钮。
侧边栏里有什么
- 历史版本:上半部分以时间线方式显示这张知识卡的历史版本。每一项会显示版本时间、作者和版本说明,并可展开后对比当前版本。
- 当前卡片:下半部分显示当前完整正文,以及"已总结到第 X / Y 条消息"这样的覆盖范围提示。
- 编辑入口:点击"编辑"可直接手动修改当前知识卡。
- AI 更新入口:点击"用当前讨论更新",让 AI 基于讨论内容生成新的知识卡草稿。
如何更新知识卡
- 点击"用当前讨论更新":系统会打开更新 Sheet。
- 选择消息范围:
- 从上次总结后开始:只处理上次已确认范围之后的新消息,适合持续维护同一个长话题。
- 整段讨论:重新基于整个话题生成卡片,适合早期知识卡质量不高,或讨论方向已经明显变化的情况。
- 查看生成结果:Sheet 中会显示当前正文与新草稿的对比预览,方便确认哪些判断被新增、修改或删除。
- 确认写入:只有点击"确认写入"后,新内容才会真正写入知识卡并形成新版本。
知识卡不会在后台自动改写。AI 生成后必须由用户确认才会写入。当前也不提供一键恢复旧版本,而是通过历史时间线和"对比当前版本"帮助你判断知识如何演化。
典型交互场景
- 长话题持续推进:需求讨论持续一周后,负责人点击"用当前讨论更新",选择"从上次总结后开始",让 AI 只整理新增消息。这样知识卡会跟着讨论持续更新,而不必每次从头总结。
- 新成员快速接手:新加入成员不需要先读完几十条消息,可以先看当前知识卡了解现状,再按需展开历史版本或回到原始消息流追溯背景。
- 关键决策需要人工修正:AI 草稿已经接近可用,但某条结论表述过强,负责人可以先生成草稿,再点击"编辑"手动修正后保存,确保最终版本符合团队真实共识。
话题分支:无限对话的可能
MeshWork 的讨论区支持一个独特的功能:话题分支。这个功能让你可以从任何一条讨论消息开始,创建一个新的话题,实现对话的无限延伸和细分。
✨ 功能亮点:话题分支
话题分支是 MeshWork 讨论区的核心创新功能之一。与传统的聊天工具不同,我们的对话不是线性的,而是可以像思维导图一样分叉、延伸。
- 任意起点:可以从任何一条已完成的用户消息创建分支,不必从头开始
- AI 辅助总结:自动使用 AI 智能体生成分支点的讨论总结,确保上下文连贯
- 无损追溯:新话题保留与原话题的关联,可以随时追溯对话源头
- 无限层级:支持创建多级分支,让讨论可以不断深入细分
为什么需要话题分支?
在团队协作中,讨论经常会演变成多个并行的子话题。传统聊天工具只能线性堆叠消息,导致:
- 焦点分散:一个话题中混杂多个相关但不完全相同的问题,难以聚焦
- 信息淹没:重要的子讨论被大量其他消息淹没,难以回顾
- 重复沟通:为了让新成员了解背景,需要重复解释之前讨论过的内容
- 缺乏结构:讨论变成杂乱的消息流,无法形成清晰的知识结构
想象这样一个场景:团队在讨论"新产品功能规划"时,有人提出了关于定价策略的疑问。这个疑问引发了深入的讨论,但与原始的产品功能规划主题有所偏离。此时,如果继续在原话题中讨论,会混淆主线;如果新建一个话题,又会失去之前的讨论上下文。话题分支功能完美解决了这个问题——你可以从定价策略问题的消息创建分支,让两场讨论并行进行,互不干扰。
如何使用话题分支?
创建话题分支的操作非常简单:
- 选择分支点:在话题中找到你想要作为新话题起点的消息。这条消息必须是已完成的用户消息(非系统消息)。
- 点击分支按钮:将鼠标悬停在目标消息上,点击工具栏中的"分支"图标(箭头分支图标)。
- AI 生成总结:系统会调用 AI 智能体,从这条消息开始,分析到此话题末尾的讨论内容,生成一个结构化的总结。
- 确认分支信息:在弹出的分支确认界面中,你可以:
- 查看 AI 生成的讨论总结
- 编辑新话题的标题(可以基于 AI 建议,也可以自定义)
- 修改总结内容(如果需要)
- 创建分支:确认无误后点击"创建分支",系统会生成一个新的话题,包含:
- 系统消息显示分支来源(原话题标题和链接)
- AI 生成的讨论总结作为第一条消息
- 与原话题的关联信息,便于后续追溯
话题分支的最佳实践
- 及时分支:当你发现讨论开始偏离原主题时,及时创建分支,保持原话题的聚焦
- 有意义的标题:为新分支话题起一个清晰的标题,准确反映分支讨论的主题
- 利用总结:AI 生成的总结包含了关键上下文,确保新参与者能快速了解背景
- 保持关联:分支话题会保留与原话题的关联,必要时可以快速回溯到原始讨论
- 适度分支:虽然支持无限分支,但建议只在真正需要时创建分支,避免话题碎片化
话题分支的技术实现
话题分支功能的技术实现体现了 MeshWork 对数据结构的精心设计:
- 消息级关联:每条消息都可以成为分支的起点,实现细粒度的对话组织
- 元数据追踪:分支消息包含完整的元数据,记录分支来源、创建者、创建时间等信息
- 上下文窗口:AI 生成总结时会考虑上下文窗口限制,确保总结的完整性和准确性
- Git 集成:话题分支数据会按照 Git 规则同步给所有团队成员
话题分支功能特别适合复杂项目的讨论管理。产品团队可以用它来区分功能讨论和实现细节,技术团队可以用它来分离方案讨论和代码审查,市场团队可以用它来并行处理不同渠道的反馈。每个分支都是独立的讨论空间,但又与主线保持联系,形成有机的讨论网络。
消息级文档引用
讨论区与公共知识库紧密集成。需要让 AI 关注具体文档时,请在消息中使用文件引用,而不是为整个话题维护长期关联路径。
- 显式引用:在消息中引用具体文件,表达本轮对话需要参考的材料。
- 按需阅读:如果回答依赖文件内容,AI 需要通过工具读取或搜索对应文档后再作答。
- 讨论沉淀:当讨论形成共识或结论后,可以将讨论内容整理成文档,沉淀到公共知识库中。
讨论区状态管理
讨论区话题有两个简单的状态,帮助你管理讨论的生命周期:
- 开放:活跃的讨论状态,所有开放的话题都会显示在话题列表中,团队成员可以继续参与讨论。这是新创建话题的默认状态。
- 归档:已关闭或不再活跃的话题,归档后不会在默认的话题列表中显示,但仍然可以查看历史记录。归档用于清理话题列表,同时保留讨论历史。
当一个话题的讨论已经结束,或者问题已经解决时,建议将其归档。这样可以保持话题列表的整洁,让团队成员专注于活跃的讨论。归档的话题可以随时重新开放,如果需要继续讨论的话。
讨论区内容与 Git
讨论区中的内容是否进入 Git 遵循以下原则:
- 进入 Git 的内容:
- 话题标题和状态
- 参与者和标签
- 消息正文
- 话题知识卡
discussions/<topic-id>/knowledge-card.md及其版本历史 - 与消息直接相关的可共享渲染结构
- 不进入 Git 的内容:
- 当前用户自己的会话状态
- 当前用户自己的未读状态
- 当前用户自己的草稿
- 当前用户自己的折叠状态
- 当前用户自己的 AI 自动回复窗口状态
这个设计确保了团队成员应该共同看到和同步的内容会进入共享 Git,而个人偏好和本地状态不会影响其他成员。
3.7 共享空间的 Git 配置
Git 配置概述
共享空间的 Git 配置与私有知识库类似,但有一些特殊考虑:
- 多人协作:需要考虑多个成员同时推送更改的情况。
- 权限管理:确保团队成员有适当的仓库访问权限。
- 分支策略:多个共享空间可能使用同一仓库的不同分支。
- 冲突解决:需要建立清晰的冲突解决流程。
Git 配置对于共享空间是可选的。小型团队可以先本地使用,熟悉产品功能后再配置版本控制。但对于有远程协作需求的团队,Git 配置是必不可少的。
绑定远端仓库
共享空间的本地目录由 MeshWork 创建或导入。需要远程协作时,先在"设置 → Git"添加远端仓库条目,再把共享空间绑定到该仓库:
- 准备远端仓库:在 GitHub、Gitee、GitLab 或自建 Git 服务中准备一个仓库,并确认团队成员拥有访问权限。
- 添加仓库条目:在"设置 → Git"中添加仓库 URL、认证方式和代理配置。SSH 使用 SSH Key,HTTPS 使用 Token。
- 打开共享空间设置:在侧边栏中右键点击共享空间,选择"设置"。
- 选择远端仓库:在 Git 设置中选择刚添加的仓库条目。
- 设置分支:填写分支名,或留空使用自动生成的
meshwork/shared/...分支名。 - 保存后同步:返回共享空间后使用同步按钮,把本地待同步内容提交并推送到远端。
分支策略
MeshWork 使用分支隔离不同共享空间的数据:
- 自动分支命名:如果不指定分支名,MeshWork 会根据共享空间名称和 ID 自动生成分支名,如
meshwork/shared/product-team-1a2b3c4d。 - 分支隔离:即使多个共享空间使用同一个远端仓库,它们也会绑定到不同的分支,互不干扰。
- 自定义分支:团队可以根据自己的分支策略自定义分支名称。
对于小型团队,建议每个共享空间使用独立的远程仓库。这样可以简化权限管理,减少误操作的风险。对于大型组织,可以使用单一仓库的多个分支来管理多个共享空间。
同步
绑定远端仓库后,文档工具栏和资源历史中的同步入口会把本地待同步内容提交,然后拉取和推送远端。当前 pull 使用 fast-forward only 策略:远端可直接前进时自动更新;本地与远端分叉时会提示同步问题,不会静默创建合并提交。
- 开始工作前同步:先获取团队成员已推送的内容。
- 完成一组修改后同步:把本地文档、讨论和配置变化推送给团队。
- 出现分叉时先停下:查看历史和差异,确认保留方案后再继续。
查看历史和版本
利用 Git 的历史功能了解共享空间的演进:
- 查看提交历史:查看所有成员的提交记录,了解共享空间的发展历程。
- 比较版本差异:比较不同时间点的差异,了解具体更改内容。
- 追溯责任:查看特定更改的作者和时间,便于沟通和协作。
- 恢复历史版本:如果误删重要内容,可以从历史版本中恢复。
Git 配置最佳实践
为共享空间配置 Git 时,建议遵循以下最佳实践:
- 清晰的同步节奏:重要编辑前后主动同步,减少多人长期分叉。
- 合理的分支策略:每个共享空间使用独立仓库最简单;如果共用仓库,确保每个共享空间绑定不同分支。
- 定期备份:除了远程仓库外,定期备份重要的共享空间数据。
- 权限控制:根据角色和职责,合理分配团队成员的仓库访问权限。
- 冲突解决流程:建立清晰的冲突解决流程,包括协商机制和仲裁方法。
不要手动修改 .meshwork 目录中的 Git 配置文件,除非你非常清楚自己在做什么。错误的配置可能导致数据丢失或同步问题。
3.8 小团队合作场景示例
场景一:产品策划团队
团队背景
一个由 5 人组成的产品策划团队,包括产品经理、设计师、开发工程师和市场专员。团队需要共同管理产品需求文档、竞品分析、用户调研和产品路线图。
共享空间设置
- 创建共享空间:
- 产品经理创建名为"产品策划团队"的共享空间。
- 使用 GitHub 创建私有仓库
product-planning-2024。 - 配置 Git,使用自动生成的分支名。
- 组织公共知识库:
- 创建文件夹结构:
需求文档/:存放功能需求、用户故事和验收标准。竞品分析/:存放竞品研究报告和市场分析。用户调研/:存放用户访谈记录和调研数据。产品路线图/:存放长期规划和里程碑。设计资源/:存放设计稿、原型图和视觉规范。
- 为每种文档类型创建模板,确保格式统一。
- 创建文件夹结构:
- 邀请团队成员:
- 生成邀请文本,通过团队沟通工具发送给成员。
- 在 GitHub 上添加协作者,授予"Write"权限。
- 为新成员提供共享空间使用指南。
协作流程
- 需求讨论:
- 产品经理在讨论区创建"新功能需求讨论"话题。
- 团队成员在讨论中提出观点、建议和疑虑。
- 使用 AI 助手总结讨论要点,提取核心需求。
- 文档编写:
- 产品经理根据讨论结果编写需求文档。
- 设计师添加设计稿链接,开发工程师评估技术可行性。
- 在讨论区围绕文档提出修改建议,确认后再回到公共知识库更新文档。
- 评审和确认:
- 在讨论区创建"需求评审"话题。
- 团队成员确认需求理解一致,明确下一步行动。
- 将评审通过的需求标记为"已确认"状态。
- 跟踪进展:
- 在产品路线图中更新功能状态。
- 定期在讨论区同步产品进展和变更。
- 使用 Git 历史追溯需求变更的时间线和责任人。
最佳实践
- 定期同步:每周在讨论区发布产品进展摘要。
- 版本节点:重要里程碑前后主动同步,并在历史版本中保留清晰记录。
- 决策记录:重大决策在讨论区形成记录,便于后续追溯。
- 跨团队协作:与开发团队共享必要的需求文档,但保持产品讨论的独立性。
通过这种协作模式,产品策划团队可以把需求讨论和文档沉淀放在同一个共享空间中,减少上下文丢失。新成员加入后,可以通过历史文档和讨论快速了解产品背景和决策过程。
场景二:内容创作工作室
团队背景
一个由 3 名自由撰稿人组成的内容创作工作室,他们为不同的客户创作文章、博客内容、营销文案和视频脚本。团队成员分散在不同城市,需要高效的远程协作工具。
共享空间设置
- 创建共享空间:
- 团队成员轮流创建共享空间,根据客户项目命名。
- 使用 GitHub 创建私有仓库,仓库名包含客户名称和项目类型。
- 配置 Git,便于团队成员同步内容。
- 组织公共知识库:
- 创建文件夹结构:
客户资料/:存放客户背景、品牌指南和过往案例。项目规划/:存放内容日历、发布计划和项目进度。文章草稿/:存放正在创作的文章草稿。已发布内容/:存放已发布的最终版本。素材资源/:存放图片、视频和参考资料。
- 为不同类型的内容创建写作模板和检查清单。
- 创建文件夹结构:
- 共享资源库:
- 创建一个通用的"写作资源"共享空间。
- 存放写作指南、参考资料、工具推荐和最佳实践。
- 所有团队成员都可以贡献和维护这个资源库。
协作流程
- 项目启动:
- 在讨论区创建"新项目启动"话题。
- 分享客户需求和项目目标。
- 分配任务和设定截止日期。
- 内容创作:
- 每位成员负责不同的内容部分。
- 在公共知识库中创建文章草稿。
- 使用 AI 助手进行语法检查、风格优化和 SEO 建议。
- 互相审校:
- 完成后在讨论区创建"审校请求"话题。
- 其他成员提供修改建议和反馈。
- 在讨论区列出问题和改进点,确认后由负责人更新对应文档。
- 客户交付:
- 最终确认后,将内容移入"已发布内容"文件夹。
- 记录发布渠道和发布日期。
- 在讨论区总结项目经验和客户反馈。
最佳实践
- 统一风格:维护风格指南,确保不同作者的内容风格一致。
- 版本控制:使用 Git 历史追踪内容修改,方便回滚和比较版本。
- 素材共享:建立可复用的素材库,避免重复收集资料。
- 质量保证:建立检查清单,确保所有内容在交付前符合质量标准。
对于远程创作团队,建议在讨论区设立"虚拟办公室"话题,用于日常闲聊和非正式交流。这样可以保持团队凝聚力,弥补远程协作的社交缺失。
场景三:研究讨论小组
团队背景
一个由研究生和研究人员组成的学术讨论小组,研究方向是人工智能伦理。成员分散在不同大学,需要定期分享研究进展、讨论论文观点和合作撰写学术论文。
共享空间设置
- 创建共享空间:
- 小组负责人创建"AI 伦理研究"共享空间。
- 使用 GitHub 创建私有仓库,便于长期维护。
- 配置 Git,保存研究资料和讨论历史。
- 组织公共知识库:
- 创建文件夹结构:
文献综述/:存放领域内重要论文的阅读笔记和总结。研究想法/:存放研究问题的初步想法和探索。实验设计/:存放实验方案和数据收集计划。论文草稿/:存放合作撰写的学术论文草稿。会议记录/:存放线上会议的记录和行动项。资源链接/:存放有价值的网站、数据库和工具链接。
- 为论文阅读创建统一的模板,包含研究问题、方法、结果和批判性思考。
- 创建文件夹结构:
- 设置讨论区:
- 约定话题标题前缀:
- "论文讨论":针对具体论文的深入讨论。
- "研究想法":新想法的初步探讨和反馈。
- "方法交流":研究方法和实验设计的讨论。
- "写作协作":论文写作的具体问题和分工。
- 建立话题状态规范:
- "讨论中":正在积极讨论的话题。
- "需要反馈":等待成员反馈的话题。
- "已达成共识":讨论完成并形成结论的话题。
- 约定话题标题前缀:
协作流程
- 定期论文分享:
- 每周轮流在讨论区分享一篇重要论文。
- 分享者在公共知识库中创建阅读笔记。
- 其他成员在讨论区提出问题和观点。
- 使用 AI 助手总结不同观点的异同,促进深入思考。
- 研究想法孵化:
- 成员随时可以在讨论区提出新的研究想法。
- 其他成员提供反馈、相关文献和改进建议。
- 成熟的想法转入"研究想法"文件夹,进一步发展。
- 合作论文写作:
- 确定论文主题和大纲。
- 在讨论区创建写作计划话题,明确分工和进度。
- 每位成员负责不同章节,在公共知识库中协作编辑。
- 定期在讨论区同步进展,解决写作中的问题。
- 使用 Git 历史追踪每个人的贡献。
- 会议记录整理:
- 线上会议后,在讨论区创建会议记录话题。
- 记录讨论要点、决策和行动项。
- 使用 AI 助手从会议记录中提取待办事项。
- 将成熟的会议记录整理成文档,存入公共知识库。
最佳实践
- 深度讨论:利用异步讨论的优势,鼓励成员花时间深入思考后再回复,追求质量而非速度。
- 知识沉淀:定期将讨论中的洞见整理成文档,形成小组的知识库。
- 学术规范:在讨论中引用文献时,遵循学术引用规范,便于后续查找和引用。
- 开放包容:鼓励不同观点的表达,创造安全的讨论环境。
- 跨时区协作:考虑到成员可能分布在不同时区,避免要求实时在线。
这种协作模式特别适合学术研究小组。讨论区的异步特性允许成员在不同时间参与,符合研究人员的灵活工作时间。Git 历史可以帮助回看论文草稿的演进,但作者署名和贡献认定仍应由团队按学术规范单独确认。
研究成果管理
- 版本追踪:在重要阶段主动同步并记录版本说明,如初稿、修改稿、投稿版本。
- 反馈整合:将同行评审的意见在讨论区逐一讨论,然后整合到论文中。
- 发表记录:在公共知识库中维护论文发表清单,包括期刊、会议和引用情况。
- 数据共享:对于可公开的数据和代码,可以在共享空间中维护,便于复现研究。
在学术协作中,要特别注意知识产权和学术诚信。明确每位成员的贡献,正确引用他人的观点,避免学术不端行为。讨论区的所有发言都应遵循学术道德规范。