用途
Slack Memory Retrieval 用于让 AI 员工在 Slack 对话中检索并利用已存储的记忆,从而给出具备上下文感知的回复。其核心目的是从 {memories_path} 中检索相关记忆,为下一次回复补充关于人员、项目、决策、偏好和工作历史的适当上下文。
主要能力
- 上下文分析:从对话中提取频道、用户和关键词。
- 索引导航:每次检索都从读取 index.md 开始,获取导航结构、统计信息(频道、用户、活跃项目总数)、最近更新(10 条最新变更)以及关键信息快捷链接。
- 按上下文检索:根据频道、用户、项目、关键词等上下文加载对应记忆文件。
- 分层加载策略:Tier 1 始终加载(如 index.md、当前频道文件、当前用户文件);Tier 2 按需加载(项目文件、决策文件、会议记录);Tier 3 选择性加载(任务、资源、外部新闻)。
- 多种检索模式:频道回复、用户特定回复、项目状态查询、决策历史、任务历史。
- 高级技巧:交叉引用(通过 related_to 元数据)、元数据过滤、时间上下文、基于标签的发现。
- 回复构建:综合信息而非直接堆砌,应用频道与用户偏好,保持对话流畅。
使用方式
基本工作流为:分析上下文 → 读取 index.md → 识别相关文件 → 加载记忆 → 综合回复。
示例:用户在 #마케팅팀 提问“Q4 전략 어떻게 되고 있어?”
- 上下文分析:频道 #마케팅팀 (C123),关键词 Q4、전략。
- 读取索引:view {memories_path}/index.md,查看 Recent Updates,定位 Q4 相关条目。
- 加载相关文件:
- view {memories_path}/channels/C123_마케팅팀.md
- view {memories_path}/projects/Q4전략.md
- view {memories_path}/meetings/(查找 Q4 会议)
- 回复:综合频道上下文、项目状态和会议记录。
记忆结构采用混合方式:
- 档案文件(每个实体一个):channels/C123_마케팅팀.md(频道指南、偏好、静态信息)、users/U456_김철수.md(用户档案、沟通风格)。
- 主题文件(每个类别多个):projects/신제품런칭.md、decisions/AWS전환_20251117.md、meetings/2025-11-17-Q4회의.md、misc/마케팅팀_일상_20251117.md。
目录结构:
{memories_path}/ ├── index.md # START HERE - navigation and stats ├── channels/ # Channel profile files (one per channel) ├── users/ # User profile files (one per user) ├── projects/ # Project topic files (multiple) ├── tasks/ # Task records ├── decisions/ # Decision records (date-stamped) ├── meetings/ # Meeting notes (date-stamped) ├── feedback/ # User feedback ├── announcements/ # Important announcements ├── resources/ # Internal docs and guides ├── external/news/ # External information └── misc/ # Uncategorized conversations
检索模式包括:
- Pattern 1 频道回复:加载频道上下文,检查频道指南(tone、response_time、key_topics),据此调整回复。
- Pattern 2 用户特定回复:加载用户档案,检查 communication_style(tone、detail_level、preferences),个性化回复。
- Pattern 3 项目状态查询:查找项目文件,检查元数据(status、priority、milestones、participants),通过 related_to 获取关联信息,提供综合更新。
- Pattern 4 决策历史:搜索 decisions 目录,加载相关决策文件,提取 decision_makers、rationale、alternatives_considered,解释背景。
- Pattern 5 任务历史:查看 tasks/completed/,按负责人/日期过滤,总结工作。
高级技巧:
- 交叉引用:在项目文件中通过 related_to 元数据加载关联文件,构建完整上下文。
- 元数据过滤:先列出目录,检查文件名和元数据,只加载符合条件(如 status: in_progress、priority: high、participants 包含当前用户)的文件。
- 时间上下文:利用 index.md 的 Recent Updates 关注最新变更,检查文件的 created、updated 日期。
- 标签发现:通过 tags(如 urgent、marketing、q4、approval-needed)跨类别收集并呈现。
回复构建原则:综合而非堆砌,不显式引用来源;应用频道指南与用户偏好;保持对话流畅。
适用场景
- 在 Slack 频道中回复时,结合频道指南与项目状态。
- 回复特定用户时,匹配其沟通风格与详细程度。
- 回答项目状态、决策历史、任务历史等问题。
- 生成晨间简报、项目进度检查、决策询问等场景的回复。
示例工作流:
- 晨间简报:用户私信“오늘 뭐부터 시작하면 좋을까?”,依次加载用户档案、index.md、进行中任务、活跃项目,给出优先级建议。
- 项目状态检查:用户在 #개발팀 问“웹사이트 리뉴얼 어디까지 왔어?”,加载频道上下文、索引、项目文件、相关决策与近期会议,给出进度回复。
- 决策询问:用户问“React vs Vue 어떻게 결정했었지?”,加载索引、搜索 decisions、加载决策文件、检查关联会议,解释决策理由。
限制
- 仅访问 {memories_path} 内的文件,不检索该路径之外的信息、系统配置文件、调度请求(由 scheduler agent 处理)或 agent 身份信息(名称、组织、团队)。
- 不应过度加载文件,应先使用目录列表再读取具体文件。
- 如存在 access_level 元数据,应尊重其访问级别,不适当分享敏感信息。
- 遇到信息冲突时,优先较新信息(检查 updated 时间戳),考虑各来源上下文,必要时提及两种观点。
- 遇到信息过多时,按与当前问题的相关性排序,概括而非详述,聚焦可执行洞察。
- 遇到记忆过时,检查 updated 时间戳,查找更新的相关文件,在回复中注明时间范围,必要时建议更新。
- 该技能与 slack-memory-store 互补:后者负责存储新信息、更新现有记忆、维护索引;本技能负责读取已存储信息、查找相关上下文、为回复提供依据。
参考文档
retrieval-patterns.md - 10 detailed patterns for different scenarios with step-by-step examples
性能建议
- 批量读取目录:每会话一次读取 projects/、channels/ 等目录,之后从记忆中引用。
- 有效利用索引:Recent Updates 可快速扫描活跃区域,无需检查每个目录。
- 智能缓存:在一次对话中,频道上下文和用户档案各加载一次,后续消息复用。
- 选择性加载:用户问“quick status”时加载索引加 1-2 个关键文件;问“detailed report”时加载索引加多个相关文件。