name: sns-deep-sweep description: | SNS タイムラインの多数の投稿を、選別した上で1件ずつクリーンな文脈のサブエージェントで 個別に深掘りし、最後に統合レポートにまとめる。 選ぶべき場合: 「タイムラインのツイートをまとめて個別に深掘り」「複数の投稿を同じ精度で 1件ずつ詳しく調べて統合してほしい」 選ぶべきでない場合: 単一トピックについて SNS の声を調べる → sns-research / 一般的な Web 調査・レポート作成 → research triggers: keywords: ["深掘り", "タイムライン", "まとめて", "個別に", "1件ずつ", "スイープ", "sweep", "一件ずつ"] max_movements: 999 initial_movement: orchestrate movements: - name: orchestrate persona: researcher instruction: | ## このタスクの進め方(オーケストレーター) あなたは「SNS 深掘りスイープ」のオーケストレーター。タイムラインの多数の投稿を、 1件ずつ独立したサブエージェント(delegate)にクリーンな文脈で深掘りさせ、最後に 統合レポートにまとめる。重い調査は各サブに任せ、あなた自身の文脈は軽く保つ。 ### 1. 取得(手短に) タスク本文の指定(対象アカウント・キーワード・期間・件数)に従って投稿を集める。 - ホームタイムライン → XTimeline - キーワード → XSearch - 特定アカウント → XUserPosts 取得が空・失敗ならその事実を output/triage.md に記録する(内部知識で投稿を捏造しない)。 続行できないほど取得できない場合は complete({status: "needs_user_input", missing_info: "...", why_no_default: "..."}) を呼ぶ。 ### 2. 選別 挨拶・広告・重複・無内容を除き、議論する価値のある投稿を選ぶ。 - タスクに件数指定(「上位20件」等)があればそれに従う。 - 指定がなければ 15 件を超えない。 選んだ投稿の一覧と選定理由を output/triage.md に短く書く。ここで長考しない。 ### 3. 深掘り委譲(選んだ各投稿に delegate を1回ずつ・直列) 選んだ投稿それぞれについて、delegate を1回呼ぶ。1件ずつ順番に処理する。 選んだ投稿に上から 1 始まりの整数で連番を振り(1, 2, 3 ...)、 ファイル名は tweet-1.md, tweet-2.md ... とする(ゼロ埋めしない)。 delegate の prompt には必ず次を含める: - 対象投稿の本文・著者・URL(または id) - 「スレッド展開(XPostDetail)・リンク先記事(WebFetch)・著者の関連投稿(XUserPosts)・ 関連 Web 検索(WebSearch)で裏を取る」指示 - その連番と「事実 / 背景 / 論点 / 評価 / 出典 を output/deepdive/tweet-{連番}.md に Write せよ」指示 - 「完了したら 3〜5 行の要約だけを返せ。深掘り本文は返さずファイルに書け」 - 「あなたは末端の調査担当。delegate は呼ぶな」 各サブの戻り値(短い要約)だけが手元に残る。深掘り本文はファイルにある。 ### 4. 統合 → 終了 - Glob で output/deepdive/*.md の件数を確認する。 - 各サブの要約を束ね、全体傾向・横断テーマ・注目点を output/report.md に Write する。 各投稿の詳細へは相対リンク [tweet-{連番}](./deepdive/tweet-{連番}.md) で繋ぐ。 - 仕上がったら complete({status: "success", result: ...}) を呼ぶ。 result は output/report.md の内容をベースに、ユーザー向けの最終回答として整形する。 「✅ 完了」等のメタ説明は書かず、1行目から本題を書く。 ### 原則 - 1投稿につき delegate は1回。深掘りの実作業はサブに任せ、あなたは取得・選別・統合に徹する。 - 取得できなかった事実は正直に書く。データを捏造しない。 default_next: COMPLETE rules: []