Reddit Research Skill は何をしますか?
最も信頼性の高い方法を通じた包括的なRedditリサーチルーティング。どのツールが機能し、どのツールが機能せず、それぞれをいつ使用するかを正確に把握しています。
トリガー
/reddit-research analyze r/homelab engagement
/reddit-research what subs does u/example_user post in
/reddit-research find deleted posts in r/SUBNAME
/reddit-research discover subreddits about topic X
search reddit for discussions about X
check reddit metrics for these subreddits
メソッドランキング — 1つのルートのみ動作、残りは使用不可
2026-09-19 再テスト済み。Arctic Shift のみが動作するソースです。それ以外はすべてブロックされています。 以下のはしごは優雅なフォールバックチェーンではありません。4つのステップのうち3つは消失しており、重要な障害モードは、動作しないステップをWeb検索で静かに代替し、その結果をRedditデータとして提示することです。
| ルート | ステータス (2026-09-19) | エビデンス |
|---|---|---|
| Arctic Shift API | 動作 — 唯一のソース | curl .../api/posts/search?subreddit=selfhosted → 200, 完全な投稿オブジェクト |
reddit.com .json (curl経由) | 使用不可 — 403 | ハーネスレベルのブロック。ブラウザのUser-Agentでも回避不可 |
| reddit.com 上の WebFetch / WebSearch | 使用不可 | WebSearch が 400 domains not accessible を返す |
| old.reddit.com 上の Playwright | 利用不可 | Playwright MCP サーバーが必要だが、接続に頻繁に失敗する |
Arctic Shift — 主要かつ事実上唯一のルート
- ベース:
https://arctic-shift.photon-reddit.com/api - プレーンな
curl。認証不要、ブラウザ不要、プルーフオブワーク不要。 - 削除済み、削除済み、スパムフィルターされた投稿を参照可能 — 他のルートではできない唯一の機能。
履歴調査、メトリクス、ユーザーアクティビティ、ルール、トーン、削除復旧など、すべてに使用します。
実行を静かに台無しにする4つの注意点。すべてライブコールで確認済み。
- パラメータ名が直感的でなく、間違った推測はハードエラーを引き起こします。
/posts/searchでは全文検索がtitle=またはselftext=、/comments/searchではbody=です。qは{"error":"Unknown query parameter: 'q'"}を返します。sortはasc/descのみを受け付けます。 - 1秒以内に
{"error":"Timeout. Maybe slow down a bit"}が返った場合はレート制限であり、遅いクエリではありません。 ペースを調整しない4回の呼び出しでトリガーされます。より長い-mや狭いウィンドウで再試行しても効果はありません。呼び出しの間隔を約4秒空け、そのエラーが発生した場合は指数関数的にバックオフします(8→120秒)。 - エラーが発生すると、レスポンスは
{"data":null,...}になります。json.data.lengthに直接アクセスするコードは、レート制限エラーを報告せずに例外をスローします。dataにアクセスする前に null チェックを行い、errorが設定されている場合はそれを表面化させます。 - 約36時間未満の新しい投稿は
hide_score:trueとscore:1を持ちます — メトリクスを計算する前にこれらを除外しないと、数値が虚偽になります。スコアによるソートはありません。広く取得し、クライアントサイドでソートします。
Redditが本当に答えられない場合
質問がライブランキング、現在の購読者数、またはログインユーザー限定のビューを必要とする場合、Arctic Shift はそれを提供できず、他に利用可能なものはありません。それを成果物に明記してください。 ワークフローがゼロのセンチメントを返し、「何も見つかりませんでした」と読まれるのを許さないでください — この診断が行われる前に、2回の事前調査ランで206のエージェントがRedditデータを生成せずに消費されました。
以下の代替手段は動作確認済みで、「実践者がXについて何と言っているか」に対する正直なフォールバックです。ただし、ソースがRedditではないことを明記してください。
- Hacker News (最良の代替):
https://hn.algolia.com/api/v1/search?query=<terms>&tags=story(または&tags=comment)、次にhttps://hn.algolia.com/api/v1/items/<objectID>で完全なコメントツリーを取得。すべての引用にそのコメントIDを含め、再取得して文字列が存在することを確認します。 - Lobsters:
https://lobste.rs/search?q=<terms>&what=stories&order=relevance - Stack Exchange:
https://api.stackexchange.com/2.3/search/advanced?order=desc&sort=votes&q=<terms>&site=stackoverflow
動作しないメソッド — 決して試行しないこと
| メソッド | 理由 | 結果 |
|---|---|---|
curl / WebFetch to reddit.com (任意のパス、.json含む) | ハーネスレベルのブロック。ブラウザのUser-Agentでも回避不可 | 403 |
site:reddit.com または allowed_domains:["reddit.com"] を使用した WebSearch | ドメインが許可されていない | 400 domains not accessible |
curl 経由の Reddit RSS (.rss) | 特異的にブロック | 403 |
トークンなしの oauth.reddit.com | HTMLにリダイレクト | 301 → HTML |
| redlib / safereddit / libreddit ミラー | Anubis プルーフオブワークインタースティシャル、JSが必要 | チャレンジページ、投稿0件 |
api.pullpush.io (Pushshiftの後継) | ダウン | 502 |
old.reddit.com の前面にある r.jina.ai プロキシ | プロキシは200を返すが、Reddit自身の403をラップ | 403ボディ |
これらの再発見にランを浪費しないでください。Arctic Shift が答えられなければ、ここにあるものは何も答えられません。
API リファレンス
エンドポイント、レスポンスフィールド、および両方のソースの注意点: references/api.md。呼び出しを構築する前に読んでください。エンドポイントを記憶から再構築しないでください。
エンゲージメントメトリクス
4つのメトリクス (Arctic Shiftデータから計算)
| メトリクス | 計算式 | 測定内容 |
|---|---|---|
| コメント/アップ vote 比 (cmtRatio) | avgCmts / avgScore | 議論の深さ |
| アップ vote 比 | upvote_ratio フィールド (0-1) | コミュニティの承認 |
| 投稿あたりの平均コメント数 | sum(num_comments) / count | アクティビティレベル |
| 投稿あたりの平均スコア | sum(score) / count | リーチ/可視性 |
計算
const posts = data.data.filter(p => !p.hide_score && p.score > 1);
const avgScore = posts.reduce((s, p) => s + p.score, 0) / posts.length;
const avgCmts = posts.reduce((s, p) => s + p.num_comments, 0) / posts.length;
const cmtRatio = avgCmts / avgScore;
const avgUpvoteRatio = posts.reduce((s, p) => s + p.upvote_ratio, 0) / posts.length;
議論の深さのティア
| ティア | しきい値 | 意味 |
|---|---|---|
| S | >= 0.70 | 非常に会話的 |
| A | >= 0.25 | 活発な議論 |
| B | >= 0.10 または avg cmts >= 10 | 中程度、関与する価値あり |
| C | 0.05-0.10 | 主に受動的 / リーチサブ |
| D | < 0.05 | 低エンゲージメント |
| E | avg cmts < 1 | 死んでいるか、厳格にゲートされている |
トーン評価
すでに取得した投稿データから評価します(追加の呼び出しは不要):
link_flair_textの値 — テーマデー、カテゴリ、明示的な指標- タイトルのパターン — 言語スタイル、規範
- トップスコア投稿の
selftext— 文化シグナル - スコア分布 — コミュニティが実際に報酬を与えるもの
取得した投稿をクライアントサイドでスコア順にソートします。上位10〜20件がコミュニティの価値観を明らかにします。
標準ワークフロー
繰り返し発生するリクエストごとに最小限の呼び出しレシピ — サブレディットの調査、ユーザーの調査、スレッドの検索、サブの発見、一括チェック、削除された投稿の復旧、シャドウバンの検出: references/workflows.md。
決定フローチャート
Redditデータが必要ですか?
|
+-- 履歴投稿、コメント、メトリクス、ユーザーアクティビティ、ルール、削除コンテンツ?
| --> Arctic Shift。これがこのスキルが実際に答えられるすべての質問です。
|
+-- ライブランキング、現在の購読者数、またはログインユーザー限定のビュー?
| --> 利用不可。reddit.com は curl と WebFetch に対して403、WebSearch は
| ドメインを拒否、Playwright は通常ダウンしている MCP サーバーが必要。
| 成果物にその旨を明記してください。Web検索を静かに代替しないでください。
|
+-- シャドウバンチェック?
| --> 同じ理由で利用不可(/user/NAME/about.json が必要でした)。
|
+-- 「実践者がXについて何と言っているか」、Redditが手段に過ぎなかった場合?
| --> HN Algolia / Lobsters / Stack Exchange、Redditではないとラベル付け。
|
+-- 投稿、コメント、DM、モデレーターメール?
--> リサーチツールでは不可能。Redditの公式インターフェースを使用してください。
正直なギャップルール: このスキルが答えられない質問は、その理由とともに回答不可能として報告されます。ゼロのRedditデータを返し、理由を述べないランは「何も見つかりませんでした」と読まれますが、それは異なる誤った主張です。
スコープの境界
- このスキルは読み取り専用のリサーチです。投稿、コメント、書き込み操作は行いません。
- タスクに投稿やアカウント操作が必要な場合は、Redditのインターフェースまたは認証されたクライアントを通じて行う必要があることをユーザーに伝えてください。