slack-memory-retrieval

Slack Memory Retrieval

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "slack-memory-retrieval" with this command: npx skills add krafton-ai/kira/krafton-ai-kira-slack-memory-retrieval

Slack Memory Retrieval

This skill enables AI employees to efficiently retrieve and utilize stored memories to provide context-aware responses in Slack conversations.

Core Purpose

Retrieve relevant memories from {memories_path} to inform the next response with appropriate context about people, projects, decisions, preferences, and work history.

Quick Start

Basic Workflow

Every memory retrieval follows this pattern:

  • Analyze context - Extract channel, user, keywords from conversation

  • Read index.md - Get overview of available memories

  • Identify relevant files - Based on context and index

  • Load memories - Read specific files needed

  • Synthesize response - Combine memories with current context

Example: Simple Query

User (in #마케팅팀): "Q4 전략 어떻게 되고 있어?"

Step 1: Context Analysis

  • Channel: #마케팅팀 (C123)
  • Keywords: Q4, 전략

Step 2: Read Index view {memories_path}/index.md → See Recent Updates, locate Q4-related items

Step 3: Load Relevant Files view {memories_path}/channels/C123_마케팅팀.md view {memories_path}/projects/Q4전략.md view {memories_path}/meetings/ (find Q4 meetings)

Step 4: Respond Synthesize information from channel context, project status, and meeting notes

Memory Structure

The memory system uses a hybrid approach:

Profile Files (One Per Entity)

  • channels/C123_마케팅팀.md

  • Channel guidelines, preferences, static info

  • users/U456_김철수.md

  • User profile, communication style

Topic Files (Multiple Per Category)

  • projects/신제품런칭.md

  • Project discussions

  • decisions/AWS전환_20251117.md

  • Important decisions

  • meetings/2025-11-17-Q4회의.md

  • Meeting notes

  • misc/마케팅팀_일상_20251117.md

  • Casual conversations

Directory Structure

{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

Essential Rules

Always Start with Index

CRITICAL: Every retrieval session must begin by reading index.md:

view {memories_path}/index.md

The index provides:

  • Navigation structure

  • Statistics (total channels, users, active projects)

  • Recent updates (10 most recent changes)

  • Quick links to key information

This one-time read gives you the complete map of available memories.

Context-Driven Retrieval

Extract context from the conversation:

Channel Context:

Message in #마케팅팀 → Load: {memories_path}/channels/C123_마케팅팀.md → Check related_to metadata for connected info

User Context:

DM from @chulsoo → Load: {memories_path}/users/U123_김철수.md → Get communication_style, preferences

Project Context:

Question about "신제품 런칭" → Load: {memories_path}/projects/신제품런칭.md → Check milestones, status, participants

Keyword Context:

Question mentions "결정", "승인" → Search: {memories_path}/decisions/ → Find relevant decision files

Efficient Loading Strategy

Tier 1: Always Load (if relevant)

  • index.md (overview)

  • Current channel file (if in channel)

  • Current user file (if DM or mentioned)

Tier 2: Load as Needed

  • Project files (if project mentioned)

  • Decision files (if asking about decisions)

  • Meeting notes (if asking about meetings)

Tier 3: Load Selectively

  • Tasks (only if specifically asked)

  • Resources (only if referenced)

  • External news (only if relevant)

Don't over-fetch. Use directory listings first:

view {memories_path}/projects/

See available projects before loading specific files

Retrieval Patterns

Pattern 1: Channel Response

When responding in a channel:

1. Load channel context

view {memories_path}/channels/{channel_id}_{channel_name}.md

2. Check for channel guidelines

Extract: tone, response_time, key_topics

3. Apply guidelines to response

Adjust tone, format based on channel preferences

Pattern 2: User-Specific Response

When responding to a specific user:

1. Load user profile

view {memories_path}/users/{user_id}_{name}.md

2. Check communication_style

Extract: tone, detail_level, preferences

3. Personalize response

Match user's preferred style and detail level

Pattern 3: Project Status Query

When asked about project status:

1. Find project file

view {memories_path}/projects/ view {memories_path}/projects/{project_name}.md

2. Check metadata

status, priority, milestones, participants

3. Get related info

Check related_to for decisions, meetings

4. Provide comprehensive update

Current status + recent activity + next steps

Pattern 4: Decision History

When asked about past decisions:

1. Search decisions

view {memories_path}/decisions/

2. Load relevant decision file

view {memories_path}/decisions/{decision_name}.md

3. Extract key info

decision_makers, rationale, alternatives_considered

4. Explain context

Why decision was made + alternatives + outcome

Pattern 5: Task History

When asked about completed work:

1. Check completed tasks

view {memories_path}/tasks/completed/

2. Filter by assignee/date

Look for relevant assignee, date range

3. Summarize work

List tasks + effort + outcomes

Advanced Techniques

Cross-Referencing

Follow the trail of related information:

In project file:


related_to:

  • decisions/기술스택선택.md
  • meetings/2025-10-20-기획회의.md

Load related files to build complete context.

Metadata Filtering

Use metadata to filter without reading entire files:

List directory first

view {memories_path}/projects/

Check filenames and metadata

Only load files matching criteria:

- status: in_progress

- priority: high

- participants: includes current_user

Temporal Context

Consider time-sensitivity:

Recent Updates in index.md

→ Shows 10 most recent changes → Focus on these for "latest" questions

File metadata: created, updated

→ Check dates to prioritize fresh info

Tag-Based Discovery

Use tags for discovery:

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

When user asks about "urgent items":

  • Scan files for tags: urgent

  • Collect across categories

  • Present by priority

Response Construction

Synthesize, Don't Dump

❌ Bad:

"According to channels/마케팅팀.md, the response time is 1 hour. According to projects/Q4전략.md, the status is in_progress. According to meetings/기획회의.md..."

✅ Good:

"Q4 마케팅 전략은 현재 진행 중이며, 지난 기획회의에서 주요 방향을 확정했습니다. 현재 MVP 개발 단계에 있고..."

Synthesize information naturally without explicitly citing sources.

Apply Context Appropriately

Channel Guidelines: If channel specifies "간결한 답변", keep response concise.

User Preferences: If user prefers "bullet points", format accordingly.

Project Status: Include relevant status without over-explaining.

Maintain Conversational Flow

Integrate memories seamlessly into natural conversation:

User: "이번 주 미팅 어땠어?"

Response: "화요일 기획회의에서 신규 기능 3개를 최종 확정했어요. 전반적으로 개발 일정에 대한 우려가 있었지만, 리소스 조정으로 해결 가능할 것으로 보입니다."

(Draws from: meetings/기획회의.md + projects/신규기능.md)

Important Guardrails

What to Retrieve

✅ Do retrieve:

  • Channel communication guidelines

  • User preferences and profiles

  • Project status and history

  • Decision rationale and history

  • Meeting notes and action items

  • Completed task history

  • Feedback and suggestions

  • Resource documents

What NOT to Retrieve

❌ Don't retrieve:

  • Information outside {memories_path}

  • System configuration files

  • Scheduling requests (handled by scheduler agent)

  • Agent identity info (name, org, team)

Privacy and Access

  • Only access files within {memories_path}

  • Don't share sensitive information inappropriately

  • Respect access_level metadata if present

Efficiency

  • Don't load unnecessary files

  • Use directory listings before file reads

  • Start with index.md, not individual files

  • Follow the efficient loading strategy (Tier 1 → Tier 2 → Tier 3)

Troubleshooting

Issue: Can't find relevant memory

Solution:

  • Check index.md for recent updates

  • Search broader category (e.g., misc/)

  • Check related_to in similar files

  • Inform user if information not available

Issue: Conflicting information

Solution:

  • Prioritize newer information (check updated timestamp)

  • Consider context of each source

  • Mention both perspectives if relevant

Issue: Too much information

Solution:

  • Prioritize by relevance to current question

  • Summarize rather than detail

  • Focus on actionable insights

Issue: Memory seems outdated

Solution:

  • Check updated timestamp

  • Look for newer related files

  • Note timeframe in response

  • Suggest updating if critical

Integration with Memory Management

This skill works in tandem with slack-memory-store :

Memory Management (separate agent):

  • Stores new information

  • Updates existing memories

  • Maintains index

Memory Retrieval (this skill):

  • Reads stored information

  • Finds relevant context

  • Informs responses

These are complementary skills for a complete memory system.

Best Practices Summary

  • Always start with index.md - Get the map before exploring

  • Extract context first - Channel, user, keywords guide retrieval

  • Load efficiently - Directory listing → relevant files only

  • Follow references - Use related_to metadata

  • Synthesize naturally - Don't cite sources explicitly

  • Apply preferences - Use channel/user guidelines

  • Stay current - Prioritize recent updates

  • Don't over-fetch - Load what you need

  • Respect guardrails - Stay within {memories_path}

  • Provide value - Context-aware, relevant responses

Reference Documents

For detailed retrieval patterns and techniques:

  • retrieval-patterns.md - 10 detailed patterns for different scenarios with step-by-step examples

Example Workflows

Example 1: Morning Briefing

User (DM): "오늘 뭐부터 시작하면 좋을까?"

1. Load user profile

view {memories_path}/users/U123_김철수.md → Get role: PM, team: Product

2. Load index

view {memories_path}/index.md → Check Recent Updates

3. Check ongoing tasks

view {memories_path}/tasks/ongoing/ → Find tasks assigned to U123

4. Check active projects

view {memories_path}/projects/ → Filter by participants including U123

Response: "오늘은 Q4 전략 최종안 검토가 가장 시급해 보입니다. 오후 3시 승인 회의가 예정되어 있어서, 오전 중에 마무리하시면 좋을 것 같아요. 그 외 신제품 기획서 작성도 진행 중이신데, 이번 주 금요일까지시니 여유가 있습니다."

Example 2: Project Status Check

User (in #개발팀): "웹사이트 리뉴얼 어디까지 왔어?"

1. Load channel context

view {memories_path}/channels/C456_개발팀.md

2. Load index

view {memories_path}/index.md

3. Find project

view {memories_path}/projects/웹사이트리뉴얼.md → Get status, milestones, recent updates

4. Check related decisions

→ Follow related_to metadata

5. Check recent meetings

view {memories_path}/meetings/ → Find recent discussions about this project

Response: "웹사이트 리뉴얼은 현재 70% 진행됐습니다. 프론트엔드 개발은 완료됐고, 백엔드 API 통합 작업 중이에요. 지난주 회의에서 디자인 시스템을 확정했고, 다음 주 화요일 내부 테스트 예정입니다."

Example 3: Decision Inquiry

User: "React vs Vue 어떻게 결정했었지?"

1. Load index

view {memories_path}/index.md

2. Search decisions

view {memories_path}/decisions/ → Find "프론트엔드프레임워크선택.md"

3. Load decision file

view {memories_path}/decisions/프론트엔드프레임워크선택.md → Get decision_makers, alternatives, rationale

4. Check related meetings

→ Follow related_to for meeting notes

Response: "React를 선택했습니다. 9월 기술 검토 회의에서 Vue도 고려했지만, 팀의 기존 React 경험과 생태계의 풍부함을 이유로 React로 결정했어요. 특히 TypeScript 지원과 대규모 커뮤니티가 주요 요인이었습니다."

Performance Tips

Tip 1: Batch Directory Reads

Once per session

view {memories_path}/projects/ view {memories_path}/channels/

Then reference from memory

Tip 2: Use Index Effectively

Index Recent Updates = quick scan of active areas

No need to check every directory

Tip 3: Smart Caching

Within a conversation:

- Load channel context once

- Load user profile once

- Reuse for subsequent messages

Tip 4: Selective Loading

If user asks "quick status":

→ Load index + 1-2 key files

If user asks "detailed report":

→ Load index + multiple related files

This skill transforms stored memories into actionable context, enabling AI employees to provide informed, personalized, and context-aware responses in every interaction.

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

General

slack-proactive-intervention-patterns

No summary provided by upstream source.

Repository SourceNeeds Review
General

confluence-deep-reader

No summary provided by upstream source.

Repository SourceNeeds Review
General

scratch-pad

No summary provided by upstream source.

Repository SourceNeeds Review
General

it-role-expert

No summary provided by upstream source.

Repository SourceNeeds Review