Token导航 LogoToken导航TokenDH.com
研究检索需要联网github未标认证来源可访问许可证需确认审计异常

dump-channel转储通道

Agent Skill

dump-channel 用于查找、检索和筛选相关信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要根据关键词、任务场景或来源线索快速定位候选结果时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

412

周安装

17

GitHub Stars

37

下载量

135
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

unknown

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:dump-channel(转储通道)
来源仓库:https://github.com/terrylica/cc-skills
仓库路径:skills/dump-channel
安装命令:
npx skills add https://github.com/terrylica/cc-skills --skill dump-channel
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/terrylica/cc-skills --skill dump-channel

简介

归档 Telegram 频道历史消息至 NDJSON 格式并下载关联媒体文件。

  • 依赖 Telethon 会话文件进行身份认证,要求用户已加入目标群组。
  • 技能会持续迭代改进,发现参数漂移等问题应立即更新指令逻辑。
  • 需提前运行 /tlg:setup 建立有效会话,否则无法获取聊天内容。
  • dump-channel 属于研究检索类 Skill,可作为该场景下的辅助能力补充。

SKILL.md

Dump Telegram Channel History

Archive a complete Telegram channel/group/chat to NDJSON + downloaded media files.

Self-Evolving Skill: This skill improves through use. If instructions are wrong, parameters drifted, or a workaround was needed — fix this file immediately, don't defer. Only update for real, reproducible issues.

Preflight

  1. Session must exist: ~/.local/share/telethon/<profile>.session

- If missing, run /tlg:setup first

  1. User must be subscribed to (or a member of) the target channel/chat

Usage

/usr/bin/env bash << 'EOF'
SCRIPT="${CLAUDE_PLUGIN_ROOT:-$HOME/.claude/plugins/marketplaces/cc-skills/plugins/tlg}/scripts/tg-cli.py"

# Full dump: NDJSON + all media (photos, videos, documents)
uv run --python 3.13 "$SCRIPT" dump @ChannelName ./output/ChannelName

# NDJSON only (skip media downloads — much faster)
uv run --python 3.13 "$SCRIPT" dump @ChannelName ./output/ChannelName --no-media

# Dump by numeric chat ID
uv run --python 3.13 "$SCRIPT" dump -1001234567890 ./output/MyChannel

# Use a different profile
uv run --python 3.13 "$SCRIPT" -p missterryli dump @ChannelName ./output/ChannelName
EOF

Parameters

ParameterTypeDescription
chatstring/intChannel username (@name) or numeric chat ID
outputpathOutput directory (messages.ndjson + media/ created inside)
--no-mediaflagSkip media downloads, produce NDJSON only

Output Structure

output/ChannelName/
├── messages.ndjson   ← one JSON object per line, chronological (oldest first)
└── media/
    ├── 6.jpg         ← named by message ID for cross-referencing
    ├── 12.png
    ├── 45.mp4
    └── ...

NDJSON Record Schema

Each line is a JSON object with these fields:

FieldTypeDescription
idintTelegram message ID
datestringISO 8601 timestamp with timezone
textstring/nullFull message text (no truncation)
has_mediaboolWhether message contains media
media_typestring/nullTelethon class name (MessageMediaPhoto, etc.)
media_filestring/nullFilename in media/ dir (e.g., "6.jpg")
viewsint/nullView count (channels only)
forwardsint/nullForward count
reply_to_msg_idint/nullParent message ID if reply
grouped_idint/nullAlbum group ID (shared across album messages)
edit_datestring/nullISO 8601 timestamp of last edit
sender.idintSender's Telegram user/channel ID
sender.namestringDisplay name (channel title or user first name)
sender.usernamestring/null@username if set

Resume Support

Re-running the same command skips already-downloaded media files (checks dest.exists()). The NDJSON is fully rewritten each run. This makes it safe to resume interrupted downloads.

Querying the Output

# jq: find all GOLD BUY signals with chart screenshots
jq 'select(.text != null and (.text | test("GOLD.*BUY")) and .media_file != null)' messages.ndjson

# DuckDB: aggregate by date
duckdb -c "SELECT date::DATE as day, count(*) FROM read_ndjson('messages.ndjson') GROUP BY day ORDER BY day"

# Python/Polars
import polars as pl
df = pl.read_ndjson("messages.ndjson")

Performance Notes

  • ~3000 messages + 1700 media files takes ~3-5 minutes
  • Telegram may briefly disconnect mid-download (Server closed the connection) — Telethon auto-reconnects
  • For very large channels (10k+ messages), expect 10-15 minutes with media

Recommended Storage Pattern

For git-tracked projects, gitignore the media folder:

# data/telegram/.gitignore
*/media/

This keeps the NDJSON (metadata) in version control while keeping large media files local-only.

Anti-Patterns

  • Don't dump channels you're not subscribed to — Telethon needs access via your account
  • Don't run multiple dumps concurrently on the same profile — session file contention

Post-Execution Reflection

After this skill completes, check before closing:

  1. Did the command succeed? — If not, fix the instruction or error table that caused the failure.
  2. Did parameters or output change? — If tg-cli.py's interface drifted, update Usage examples and Parameters table to match.
  3. Was a workaround needed? — If you had to improvise (different flags, extra steps), update this SKILL.md so the next invocation doesn't need the same workaround.

Only update if the issue is real and reproducible — not speculative.

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Codex

34.66%
按下载量换算47

Claude

31.74%
按下载量换算43

Cursor

21.75%
按下载量换算29

Gemini CLI

9.2%
按下载量换算12

安全审计

Gen Agent Trust Hub

未通过

Socket

通过

Snyk

可疑

权限和风险

需要联网

该 Skill 可能需要联网访问来源站点、仓库或外部 API;具体网络访问范围需要结合源码和 README 复核。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。来源安全扫描存在 warning/failed 结果,不能写成本站确认安全。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills