mcpField
T
tgstat

tgstat

github.com/acedatacloudマーケティング・グロース1773 回インストール今日更新
リポジトリ

tgstat について

tgstatは、Telegramのチャンネルやグループに関する公開TGStat情報を調査するスキルです。読み取り専用の検索や確認に対応し、公開指標やウェブ検索の範囲に関する制限も示します。

主な機能

  1. 01テーマ別に公開ソースを検索
  2. 02チャンネルとグループのプロフィール確認
  3. 03チャンネルとグループのランキング閲覧
  4. 04公開された利用者数や反応指標の確認
  5. 05アウトリーチ調査の手順

活用シーン

  1. 01テーマに関連するTelegramソースの発見
  2. 02公開チャンネルのリーチや活発度の比較
  3. 03提携候補の公開情報の確認

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/acedatacloud/skills --skill tgstat

インストール後、Claude Code で/tgstatを入力して読み込まれたか確認します。

同梱ファイルscripts/tgstat.py

詳細

TGStat リサーチ

公開されている TGStat の調査には、scripts/tgstat.py を使用します。Python の標準ライブラリのみを使用します。内部では、プラットフォームのレンダリングサービス(ヘッドレス Chromium)を介して TGStat のページを取得し、公開サイトのボット対策を回避します。そのため、各検索には数秒かかることがあります。Bash の呼び出しごとにシェルが新しく起動するため、各呼び出しの開始時にスクリプトのパスを解決してください。

TGSTAT="$SKILL_DIR/scripts/tgstat.py"; [ -f "$TGSTAT" ] || TGSTAT=$(find /tmp -maxdepth 8 -path '*/skills/*/scripts/tgstat.py' 2>/dev/null | head -1)
[ -f "$TGSTAT" ] || { echo "tgstat script not found (SKILL_DIR=$SKILL_DIR)" >&2; exit 1; }
python3 "$TGSTAT" profile

コネクターは $TGSTAT_USERNAME を設定します。これはログイン認証情報ではなく、公開チャンネル/グループのデフォルトの対象としてのみ使用されます。環境変数全体を表示したり、このユーザー名をユーザーが Telegram アカウントを所有している証拠として扱ったりしないでください。

トピックからソースを見つける

まず search を実行します。

TGSTAT="$SKILL_DIR/scripts/tgstat.py"; [ -f "$TGSTAT" ] || TGSTAT=$(find /tmp -maxdepth 8 -path '*/skills/*/scripts/tgstat.py' 2>/dev/null | head -1)
[ -f "$TGSTAT" ] || { echo "tgstat script not found (SKILL_DIR=$SKILL_DIR)" >&2; exit 1; }
python3 "$TGSTAT" search "Claude API" --type all --language English --country US

公開モードでは、このコマンドは web_queries を返します。クエリごとに web_search を1回呼び出してから、次の手順を実行します。

  1. 公開されている tgstat.com の地域別ホストと t.me の結果だけを残します。
  2. 公開されている @username の値を抽出し、大文字と小文字を区別せずに重複を除外します。
  3. タイトル/スニペットがトピックに直接一致する結果を優先します。
  4. 候補リストの各項目を info または stat で確認してから報告します。
  5. ソース URL を含め、公開検索エンジンのインデックスでは TGStat のデータベース全体を網羅できないため、見つけられない結果がある可能性を伝えます。

TGStat 独自のキーワード検索結果エンドポイントにはサインインが必要です。これを回避したり、非公開の AJAX エンドポイントを再生したり、公開モードで TGStat のインデックス全体を検索できると主張したりしないでください。

--language と --country はウェブインデックス向けの検索語であり、TGStat データベースのフィルターとして保証されるものではありません。

公開ランキングを閲覧する

ユーザーが明確なキーワードを指定せず、大規模または活発な公開ソースを求めている場合は、ランキングを使用します。

TGSTAT="$SKILL_DIR/scripts/tgstat.py"; [ -f "$TGSTAT" ] || TGSTAT=$(find /tmp -maxdepth 8 -path '*/skills/*/scripts/tgstat.py' 2>/dev/null | head -1)
[ -f "$TGSTAT" ] || { echo "tgstat script not found (SKILL_DIR=$SKILL_DIR)" >&2; exit 1; }
python3 "$TGSTAT" rankings --type channel --limit 20
python3 "$TGSTAT" rankings --type chat --limit 20
python3 "$TGSTAT" rankings --type channel --query crypto --limit 10

チャンネルのカードには、購読者数、1件あたりの投稿リーチ、引用インデックスが表示される場合があります。チャットのカードには、参加者数、直近のメッセージ数、MAU が表示される場合があります。これらの指標は現在の公開スナップショットであり、時系列データではありません。

公開 TGStat ページでは、認証またはレート制限の中間ページが断続的に返されることがあります。rankings が status: unavailable を返した場合は、出力された web_fetch_url を試してから、その web_queries を web_search で実行してください。これらの結果は、TGStat の確定的なランキングではなく、ウェブインデックスから見つかった結果として示してください。

既知のチャンネルまたはグループを調べる

公開されている @username、ユーザー名のみの形式、t.me/<username> リンク、または TGStat エンティティ URL を指定できます。対象を省略すると、コネクターから $TGSTAT_USERNAME を取得して調べます。

TGSTAT="$SKILL_DIR/scripts/tgstat.py"; [ -f "$TGSTAT" ] || TGSTAT=$(find /tmp -maxdepth 8 -path '*/skills/*/scripts/tgstat.py' 2>/dev/null | head -1)
[ -f "$TGSTAT" ] || { echo "tgstat script not found (SKILL_DIR=$SKILL_DIR)" >&2; exit 1; }
python3 "$TGSTAT" info
python3 "$TGSTAT" info @durov
python3 "$TGSTAT" stat https://t.me/example_public_chat

公開モードでは、info/stat が対象をチャンネルまたはチャットのどちらかとして特定し、公開されている情報(タイトル、説明)と、表示されている購読者数/参加者数を返します。より詳細なエンゲージメント指標(投稿あたりの平均リーチ、引用インデックス、ER)は TGStat 上でクライアント側にグラフ表示されるため、公開トップ評価に掲載されているエンティティのみ取得できます。その場合、コマンドはランキングのスナップショットから結果を補完します。指標が空または存在しない場合は、TGStat の公開ページで確認できなかったことを意味します。これを全統計として扱わないでください。大規模な公開ソースのリーチ/引用インデックスが必要な場合は、rankings を使用してください。

個別のチャンネル/チャットページは、ランキングページよりも強力にボット対策されています。そのため、info/stat の検索で「render blocked」/「could not render」エラーが返されることがあります。処理はすぐに失敗します(Bash のタイムアウトより十分短時間です)。1回再試行するか、はるかに信頼性の高い rankings と search に切り替えて情報を見つけてください。

広告の選定では、購読者数だけではなく、関連性の高いリーチ/活動度で順位付けしてください。購読者数が多くてもリーチやチャットの MAU が低い場合、オーディエンスが非アクティブ、または水増しされている可能性があります。指標は見込み客の質を保証するものではなく、判断材料として提示してください。

接続済みプロフィールを確認する

TGSTAT="$SKILL_DIR/scripts/tgstat.py"; [ -f "$TGSTAT" ] || TGSTAT=$(find /tmp -maxdepth 8 -path '*/skills/*/scripts/tgstat.py' 2>/dev/null | head -1)
[ -f "$TGSTAT" ] || { echo "tgstat script not found (SKILL_DIR=$SKILL_DIR)" >&2; exit 1; }
python3 "$TGSTAT" profile

profile は、対象を指定しない info と stat で使用される、正規化された公開ユーザー名を報告します。アカウントの所有権を確認したり、Telegram/TGStat に対して認証したりするものではありません。

アウトリーチ調査ワークフロー

見込み顧客の開拓やパートナーシップの調査では、次の手順に従います。

  1. 広範な AI 関連の語句だけでなく、問題や役割を絞り込んだキーワードをいくつか検索します。
  2. まず関連性に基づいて情報源を候補に挙げ、次に対象者層、リーチ、活動状況を確認します。
  3. 公開されている各情報源を検証し、根拠となる URL を記録します。
  4. 各情報源を、チャンネル、グループ/チャット、不明のいずれかに分類します。
  5. 推奨するアプローチと適合する理由を添えて、確認用のキューを作成します。
  6. 別のコネクターを通じてメッセージを送信する前に、必ず人間の承認を得ます。

安全性と制限事項

  • 読み取り専用です。このスキルは、チャンネルやグループへの参加、招待リンクの取り込み、メッセージの送信、メンバーの追加、メンバーリストのダウンロードを行いません。
  • 非公開の招待リンク(t.me/+...、joinchat/...)やメッセージリンクは拒否します。
  • 迷惑な一括アウトリーチを自動化したり、Telegram/TGStat の制御を回避したりしないでください。
  • 公開ページや HTML は変更されることがあります。解析に失敗した場合は、web_fetch を使って公開ページを 1 件だけ取得し、そのページに表示されている値のみを報告してください。
  • 公開ウェブ上の検索結果は不完全であり、地域別の TGStat ページでは内容が異なる場合があります。
  • $TGSTAT_USERNAME は公開プロフィールの情報として扱い、認証情報としては扱わないでください。

コメント