Slack记忆存储系统Skill slack-memory-store

这是一个综合的记忆存储系统,专为在IT公司中通过Slack通信的AI员工设计。它能自动分类和存储多种信息类型,如Slack消息、Confluence文档、邮件、会议笔记等,提供高效的索引和检索功能。关键词:AI员工、Slack记忆存储、自动分类、信息管理、记忆检索、工作流程优化、数据存储。

AI智能体 0 次安装 0 次浏览 更新于 3/23/2026

名称: slack-memory-store 描述: 为在IT公司中通过Slack通信的AI员工设计的综合记忆存储系统。自动分类和存储多种信息类型(Slack消息、Confluence文档、邮件、会议笔记、项目、决策、反馈),并组织成文件夹结构,提供高效索引和检索。适用于管理或搜索员工记忆、存储对话、记录决策、跟踪项目或组织任何工作相关信息。

Slack记忆存储系统

此技能使AI员工在IT公司环境中通过Slack通信进行系统化的记忆管理。

核心能力

  1. 自动分类 - 自动将传入信息分类到适当的文件夹中
  2. 多格式支持 - 处理Slack消息、Confluence文档、邮件、会议笔记等
  3. 智能索引 - 维护最新的index.md以快速检索信息
  4. 灵活模式 - 支持每种信息类型的结构化元数据
  5. CRUD操作 - 创建、读取、更新和删除记忆条目

快速开始

初始化记忆结构

首次使用记忆系统前,初始化目录结构:

python scripts/init_memory.py /path/to/memory

这将创建:

添加新信息

向记忆添加信息的主要方式:

python scripts/add_memory.py /path/to/memory "标题" "内容" '{"type":"channel", "channel_id":"C123"}'

脚本将:

  1. 分析内容和元数据
  2. 自动分类到适当目录
  3. 生成干净文件名
  4. 格式化带YAML前言的适当格式
  5. 保存到正确位置

更新索引

添加/修改多个条目后,更新索引:

python scripts/update_index.py /path/to/memory

这将刷新:

  • 统计信息(总频道数、用户数、项目数等)
  • 最近更新列表(10个最近更改)
  • 导航链接

搜索记忆

快速查找信息:

# 按内容搜索
python scripts/search_memory.py /path/to/memory content "프로젝트"

# 按标签搜索
python scripts/search_memory.py /path/to/memory tag urgent

# 列出类别中的文件
python scripts/search_memory.py /path/to/memory category projects

记忆组织

目录结构

memory/
├── index.md              # 主导航和快速参考
├── channels/             # Slack频道信息
│   └── C123_마케팅팀.md
├── users/                # 团队成员档案
│   └── U456_김철수.md
├── projects/             # 项目状态和历史
│   ├── 신제품런칭.md
│   └── archive/
├── tasks/                # 已完成和进行中的任务
│   ├── ongoing/
│   └── completed/
├── decisions/            # 决策点和理由
├── meetings/             # 会议笔记和行动项
├── feedback/             # 用户反馈和建议
├── announcements/        # 重要公告
├── resources/            # 内部文档、指南、手册
├── external/             # 外部信息
│   └── news/
└── misc/                 # 未分类信息

文件格式

每个记忆文件遵循此结构:

---
type: channel
channel_id: C01234567
channel_name: "마케팅팀"
participants: [U01234567, U76543210]
tags: [marketing, important]
created: 2025-10-28 10:00:00
updated: 2025-10-28 15:30:00
---

# 마케팅팀 채널

## 커뮤니케이션 지침

- Tone: Professional but friendly
- Response time: Within 1 hour during business hours
- Key topics: Campaign planning, performance metrics

## Recent Discussions

...

存储策略:混合方法

关键:使用混合策略优化检索和文件大小:

1. 配置文件(每个实体一个文件 - 更新,不创建新文件)

  • 目的:持久指南、偏好、静态信息
  • 操作:始终先检查文件是否存在,然后更新它
  • 示例
    • channels/C123_마케팅팀.md - 频道指南、成员、沟通风格
    • users/U456_김철수.md - 用户档案、偏好、工作风格

2. 主题文件(多个 - 创建新文件或更新现有文件)

  • 目的:对话、项目、决策、会议
  • 操作:每个主题创建新文件,或如果同一主题继续则更新
  • 示例
    • projects/신제품런칭.md - 项目讨论
    • decisions/AWS전환_20251117.md - 重要决策(带日期戳)
    • meetings/2025-11-17-Q4전략회의.md - 会议笔记
    • misc/마케팅팀_일상_20251117.md - 日常对话

3. 分类决策树

内容类型:
├─ 频道/用户指南或偏好?
│  └─ 是 → 更新 channels/C123_채널명.md 或 users/U456_유저명.md
│
└─ 否 → 主要主题是什么?
    ├─ 项目讨论 → projects/프로젝트명.md
    ├─ 重要决策 → decisions/주제_DATE.md
    ├─ 会议笔记 → meetings/DATE-주제.md
    ├─ 日常对话 → misc/채널명_DATE.md(如果不重要可跳过)
    └─ 任务/反馈/公告 → 相应目录

处理不同内容类型

Slack对话

接收Slack消息线程时:

  1. 识别上下文:频道、参与者、日期范围
  2. 提取关键信息:决策、行动项、重要讨论
  3. 使用混合策略分类(见上方决策树):
    • 频道指南/偏好 → 更新 channels/C123_채널명.md
    • 用户偏好 → 更新 users/U456_유저명.md
    • 项目焦点 → 创建/更新 projects/프로젝트명.md
    • 决策焦点 → 创建 decisions/주제_DATE.md
    • 会议笔记 → 创建 meetings/DATE-주제.md
    • 日常聊天 → 创建 misc/채널명_DATE.md(如果不重要可跳过)
  4. 格式化:按时间顺序排列,保留线程结构
  5. 元数据:channel_id、参与者、date_range、message_count、related_to(链接到配置文件)

示例用法:

from scripts.add_memory import MemoryManager

manager = MemoryManager('/path/to/memory')

# 示例1:主题文件(项目讨论)
manager.add_memory(
    title="Q4 전략 논의",
    content=formatted_slack_thread,
    metadata={
        'type': 'project',  # 将创建 projects/Q4전략논의.md
        'channel_id': 'C123',
        'channel_name': '마케팅팀',
        'participants': ['U01', 'U02'],
        'date_range': '2025-10-28',
        'message_count': 25,
        'tags': ['strategy', 'q4'],
        'related_to': ['channels/C123_마케팅팀.md']  # 链接到频道配置文件
    }
)

# 示例2:配置文件(频道指南更新)
manager.add_memory(
    title="마케팅팀",
    content="频道指南:专业语调,期望快速响应",
    metadata={
        'type': 'channel',  # 将更新 channels/C123_마케팅팀.md
        'channel_id': 'C123',
        'channel_name': '마케팅팀',
        'guidelines': {'tone': 'professional', 'response_time': '1시간 이내'}
    }
)

Confluence文档

导入Confluence文档时:

  1. 转换格式:HTML → Markdown
  2. 保留结构:标题、列表、表格
  3. 添加元数据:source_url、space、last_updated
  4. 分类:通常 → resources/projects/

邮件线程

存储邮件对话时:

  1. 线程结构:保留回复链
  2. 提取元数据:发件人、收件人、主题、日期
  3. 按内容分类
    • 公告 → announcements/
    • 项目更新 → projects/
    • 反馈 → feedback/

会议笔记

记录会议时:

  1. 结构:日期、参与者、议程、讨论、行动项
  2. 始终存储到meetings/
  3. 交叉引用:链接到相关项目/决策
  4. 行动项:提取并考虑添加到 tasks/

外部新闻

保存外部文章时:

  1. 始终存储到external/news/
  2. 添加元数据:来源、source_url、日期、相关性
  3. 总结:专注于与公司相关的关键点
  4. 链接:如果适用,连接到related_project

自动分类

系统使用多级分类策略:

级别1:显式元数据

如果元数据中存在 type 字段 → 直接使用

级别2:结构指示器

  • 存在 channel_idchannels/
  • 存在 user_idusers/
  • 存在 project_idprojects/

级别3:关键词分析

扫描内容中的关键词(见 references/classification-guide.md 获取完整列表):

  • “프로젝트”、“project”、“milestone” → projects/
  • “결정”、“decision”、“승인” → decisions/
  • “회의”、“meeting” → meetings/
  • 等等

级别4:默认

如果无分类匹配 → misc/

高级功能

更新现有记忆

更新现有文件:

manager = MemoryManager('/path/to/memory')
manager.update_memory(
    directory='projects',
    filename='신제품런칭.md',
    new_content=updated_content,
    new_metadata={'updated': '2025-10-28 16:00:00', 'status': 'completed'}
)

交叉引用

使用 related_to 元数据链接相关文件:

---
type: decision
related_to:
  - projects/신제품런칭.md
  - meetings/2025-10-28-전략회의.md
---

版本管理

如果存在同名文件,系统自动:

  1. 检测重复
  2. 添加版本后缀: filename_v2.mdfilename_v3.md

搜索提示

  1. 内容搜索:默认不区分大小写
  2. 标签搜索:查找所有带有特定标签的文件
  3. 类别搜索:列出目录中的所有文件
  4. 索引搜索:在index.md上使用浏览器Ctrl+F快速关键字查找

最佳实践

1. 一致的元数据

始终至少包括:

  • type:内容类型
  • created:创建时间戳
  • tags:相关标签以提高可搜索性

2. 描述性标题

使用清晰、描述性标题:

  • ✅ “Q4 마케팅 전략 회의 - 2025-10-28”
  • ❌ “미팅”

3. 定期索引更新

在以下情况后更新索引:

  • 多个文件添加
  • 文件删除
  • 类别更改
  • 或至少每小时一次

4. 自由使用标签

标签提高可发现性:

tags: [urgent, marketing, q4, strategy, approval-needed]

5. 链接相关信息

当信息相关时,添加交叉引用:

related_to:
  - projects/웹사이트리뉴얼.md
  - decisions/디자인시스템선택.md

参考文档

详细信息,请参见:

工作流示例

示例1:存储Slack讨论

# 1. 格式化Slack线程
slack_content = """
## Participants
- @chulsoo (PM)
- @sarah (Designer)

## Discussion
[10:30] chulsoo: 랜딩 페이지 디자인 리뷰 부탁드립니다
[10:35] sarah: 확인했습니다. 전반적으로 좋은데 CTA 버튼이 더 눈에 띄었으면 좋겠어요
...
"""

# 2. 添加到记忆
manager.add_memory(
    title="랜딩 페이지 디자인 리뷰",
    content=slack_content,
    metadata={
        'type': 'project',
        'channel_id': 'C123',
        'project': '신제품런칭',
        'participants': ['U01', 'U02'],
        'tags': ['design', 'review', 'landing-page']
    }
)

# 3. 更新索引
update_index()

示例2:快速信息查找

# 查找所有与"신제품"相关的文件
python scripts/search_memory.py /memory content "신제품"

# 结果显示:
# 1. projects/신제품런칭.md
# 2. meetings/2025-10-15-신제품기획회의.md
# 3. decisions/신제품가격결정.md

示例3:跟踪项目进度

# 初始项目设置
manager.add_memory(
    title="신제품 런칭 프로젝트",
    content="""
## Overview
AI 기반 추천 시스템 개발 및 런칭

## Milestones
- [ ] MVP 개발 (2025-11-30)
- [ ] 베타 테스트 (2025-12-15)
- [ ] 정식 출시 (2025-12-31)
    """,
    metadata={
        'type': 'project',
        'status': 'in_progress',
        'priority': 'high',
        'participants': ['U01', 'U02', 'U03']
    }
)

# 稍后:更新进度
manager.update_memory(
    'projects',
    '신제품런칭프로젝트.md',
    updated_content_with_progress,
    {'updated': '2025-10-28', 'status': 'on_track'}
)

故障排除

问题:搜索找不到文件

解决方案:确保文件名以 .md 结尾且不是 index.md

问题:错误分类

解决方案:在元数据中提供显式 type 或在内容中添加更具体的关键词

问题:索引过时

解决方案:手动运行 update_index.py

问题:重复文件

解决方案:系统自动处理,通过添加版本后缀(_v2、_v3等)

性能考虑

  • 索引更新:O(n),其中n=总文件数。在批处理后运行,而非每个文件后
  • 搜索:O(n) 线性扫描。对于大数据集(>1000个文件),考虑添加全文搜索
  • 文件大小:保持单个文件在100KB以下以获得最佳性能

集成说明

此技能设计为无缝集成:

  • Slack API集成以自动捕获消息
  • Confluence API以导入文档
  • Gmail API以归档邮件
  • Calendar API以记录会议笔记
  • 任何自定义数据源通过灵活的add_memory接口

记忆结构对AI代理友好:index.md提供快速概览,所有内容为Markdown格式便于解析和理解。