Skills DirectorySkills Directory
SkillsLearnSecurityCategoriesDocsBlogPro
Sign InSubmit Skill
Skills Directory

Security-tested agent skills for Claude, coding agents, and AI workflows.

Directory

  • Browse Skills
  • All Skills A–Z
  • Claude Skills
  • Claude Code Skills
  • Agent Skills
  • Categories
  • Authors
  • Submit a Skill

Learn

  • Learn Hub
  • Install Claude Skills
  • Write SKILL.md
  • Skills vs MCP
  • Directories Compared

Security

  • Security
  • Methodology
  • Secure Claude Skills
  • Security Badges
  • Chrome Extension
  • Skill Manager

Company

  • About
  • Community
  • Blog
  • API Docs
  • Advertise

2026 Skills Directory. All rights reserved.

ProTermsPrivacyRefunds
Back to skills

Slack Kb Individual

ASecurity

Collect all Slack conversations a specific person participated in during a date range. Useful for performance reviews, 1:1 prep, or building a picture of someone's contributions. Outputs JSONL via the Slack API.

10 stars
0 votes
0 copies
0 views
Added 10/6/2026
toolspythonbashapiperformance

Works with

cliapi

Security Analysis

A100/100

Pro scans all 2 files and shows the line behind each finding

Scanned 10/6/2026

$npx -y skills add tomzx/agents --skill slack-kb-individual --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Slack Kb Individual?

Add the live security badge to your README — it updates automatically with every re-scan.

Security grade badge for Slack Kb Individual
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/tomzx-slack-kb-individual/badge)](https://www.skillsdirectory.com/skills/tomzx-slack-kb-individual)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
Files
SKILL.md
---
name: slack-kb-individual
description: >-
  Collect all Slack conversations a specific person participated in during a
  date range. Useful for performance reviews, 1:1 prep, or building a picture
  of someone's contributions. Outputs JSONL via the Slack API.
---

# Individual Slack activity collector

Use when collecting all Slack conversations a specific person participated in during a date range — useful for performance reviews, 1:1 prep, or building a picture of someone's contributions.

## What it does

[`collect_individual_threads.py`](collect_individual_threads.py) searches Slack for messages **from** a given user, deduplicates by thread, then fetches each thread root for reply count and preview. It outputs **JSONL** (one object per thread: `thread_ts`, `channel`, `channelName`, `replies`, `preview`, `permalink`).

Uses the Slack API directly (`search.messages` + `conversations.replies`) — no CLI dependencies. Thread fetching is concurrent (8 workers by default). Run via `uv run` for automatic dependency management (`requests`, `python-dotenv`).

Credentials: reads `SLACK_TOKEN` and `SLACK_COOKIE` from `.env` (searches up from cwd).

## Two modes

### Full scan

Searches the entire `--after`/`--before` date range newest-first and fetches every discovered thread. Pagination uses `sort=timestamp&sort_dir=desc` with sliding date windows to work around Slack's 100-page cap. Stops automatically at the retention boundary (older messages return empty).

```bash
uv run collect_individual_threads.py \
  --user tom.rochette --after 2024-10-06 --before 2026-04-08 \
  -o tom-threads.jsonl
```

### Incremental update

Loads the existing output JSONL as a cache, then searches only a recent window (default: last 7 days). Threads found in the window are fetched (or re-fetched if they were already cached — they had recent activity). Cached threads outside the window are kept as-is.

```bash
# Daily — searches last 7 days, merges with existing cache
uv run collect_individual_threads.py \
  --user tom.rochette --incremental -o tom-threads.jsonl

# Custom window — last 14 days
uv run collect_individual_threads.py \
  --user tom.rochette --incremental --recent-days 14 -o tom-threads.jsonl
```

## All options

| Flag | Description |
|------|-------------|
| `--user` (required) | Slack username (e.g. `tom.rochette`) |
| `--after` / `--before` | Full scan date range (`YYYY-MM-DD`). Slack's `after:` is exclusive. |
| `--incremental` | Incremental mode: search recent window, merge with cache. Requires `-o`. |
| `--recent-days N` | Days to search in incremental mode (default 7). |
| `--channel` | Restrict search to a specific channel name. |
| `--skip-threads` | List unique threads without fetching them (search only). |
| `--workers N` | Concurrent thread fetch workers (default 8). |
| `-o` / `--output` | Output path, or `-` for stdout. Default: `<user>-threads.jsonl`. |

## Output format

Each JSONL line:

```json
{
  "thread_ts": "1775582398.721149",
  "channel": "C0ABY4NCBD3",
  "channelName": "example-channel",
  "replies": 12,
  "preview": "First line of the thread root message...",
  "permalink": "https://example.slack.com/archives/C0ABY4NCBD3/p1775582398721149"
}
```

## Workflow

1. **First pull**: full scan with `--after`/`--before` covering the period you care about.
2. **Daily/periodic**: `--incremental` to pick up recent activity cheaply.
3. **Occasional refresh**: re-run full scan to catch threads where others replied but you didn't (not visible to incremental search).
4. Summarize findings into review notes or 1:1 prep docs.

Attribution

tomzxtomzx
View sourceSee grades on GitHubMore from tomzx →
SSkills DirectorySkills Directory

Ship a skill? Prove it's safe.

Free 120-pattern security scan, letter grade, and an embeddable README badge.

Submit a skill

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments (0)

No comments yet. Be the first to comment!

SSkills DirectorySkills Directory

Ship a skill? Prove it's safe.

Free 120-pattern security scan, letter grade, and an embeddable README badge.

Submit a skill

Related Skills

ucoz-landing-skill

Create and edit uCoz homepage landing pages via MCP: custom templates, hero sections, lead forms, navigation menus, SEO, and responsive layout. Includes a visual design system (style selection, layout/grid, section recipes, typography/spacing, color tokens, component states, icons, modern CSS/JS, motion, imagery, social proof, copy/voice, accessibility). Uses ucoz-mcp tools for templates, site file uploads, and site modules.

107 votes

Paperclip

Interact with the Paperclip control plane API for task coordination and governance. Use when checking assignments, updating issue status, posting comments, delegating work, managing routines, or calling Paperclip API endpoints.

953191 votes

Pptx

Presentation toolkit (.pptx). Create/edit slides, layouts, content, speaker notes, comments, for programmatic presentation creation and modification.

471861 votes

Daw Music

Digital Audio Workstation usage, music composition, interactive music systems, and game audio implementation for immersive soundscapes.

761 votes

Instantly Rdsthomas Mission Control

Instantly.ai cold email outreach API - manage campaigns, leads, accounts, and analytics. Use for cold email automation, lead management, campaign creation/monitoring, and email account warmup.

761 votes
View all in tools →