agent_specs — curumi-ops

定常Claudeエージェント 優先6本 要件定義

対象: B1 / A1 / A2 / A3 / A4 / D2 の6本 構築基盤: Claude Code (Claude Sonnet 4.6 / Opus 4.7) + GitHub Actions (cron) + Cloudflare Workers (Slack webhook) + Turso (ログ/履歴)

設計原則(CLAUDE.md 抜粋): - 終了条件の外部化 / 視覚的品質チェック / 決定論的Hook - スキルは単体で溜めずループとして配線する - HITL は「リスクに応じて介入の強さとタイミングを設計する」 - プロンプトではなく静的ルールで強制できることは ast-grep / linter / schema で処理

共通構造:

cron trigger → Claude agent (sakimemo context + external source) → JSON draft →
  scrubber (規定ルール) → Slack webhook → (HITL レビュー) → 配信完了

共通テンプレ項目: - 目的 / KGI接続 - 入力(データソース) - 処理ロジック(プロンプト骨子) - 出力フォーマット(JSON schema) - 配信先(Slack channel / CL別ch) - 頻度(cron) - HITL(レビュー要否) - ログ(Turso スキーマ) - エラーハンドリング


Agent B1: 週次レポート

状態: 一部稼働 → 全CL展開

目的

クライアント別の週次レポートを自動生成してCL別Slackに配信。②継続率 / NPSを押し上げる定常agentの中核。

入力

処理ロジック

1. 期間指定(先週月〜日)のKPIをデータソースから取得
2. 目標値・前週比・前月比・前年比を計算
3. アラート検知:
   - ROAS -20%超下落 → 赤
   - CPA +30%超上昇 → 赤
   - 予算消化率 <80% or >120% → 橙
4. 勝ちCR/負けCRを実績から抽出(上位/下位 3本ずつ)
5. 次週の示唆を生成(予算配分・CR差し替え候補・LPO候補)
6. Claude で自然言語に整形(Markdown + Slack Block Kit)

出力フォーマット

{
  "client_id": "brass",
  "period": "2026-04-13/2026-04-19",
  "summary_md": "...",
  "kpis": [{"name": "ROAS", "value": 3.2, "wow": "+0.1", "alert": "green"}],
  "winning_creatives": [...],
  "next_week_suggestions": [...]
}

配信

ログ

Turso weekly_report_runs テーブル: id, client_id, period, generated_at, reviewed_by, published_at, feedback

エラーハンドリング


Agent A1: 広告運用tips配信

状態: 構想

目的

広告運用のtips・失敗事例・新機能の使いこなしを日次で全社Slackに配信。②提案頻度と ①営業資料源泉を兼ねる。

入力

処理ロジック

1. 過去24hの投稿・記事を収集(最大100件)
2. クラスタリング(トピック: 運用tips / アプデ / ケーススタディ / その他)
3. 運用tips に分類されたものから Top 3 を抽出(信頼度 × 新規性)
4. 各tipsを「要点 / 実践方法 / 想定成果」の3行で要約
5. 「アドバディで適用可能か」の自己評価(高 / 中 / 低)を付与

出力フォーマット

{
  "date": "2026-04-20",
  "tips": [
    {
      "title": "Metaの新しいAdvantage+オーディエンスの最適化方法",
      "summary_lines": ["要点: ...", "実践: ...", "成果: ..."],
      "applicability": "高",
      "source_url": "..."
    }
  ]
}

配信

ログ

ads_tips_runs: id, date, tips_count, published_at, clicks, reactions


Agent A2: 媒体アップデートまとめ

状態: 構想

目的

各媒体の公式アップデート・仕様変更を週次でまとめる。運用担当が見落とさず、②提案頻度の底上げに使う。

入力

処理ロジック

1. 過去7日の公式アップデートを収集
2. 「アドバディ運用に影響あり/なし/未確認」で分類
3. 影響ありのものだけをピックアップ
4. 「変更点 / 影響 / 対応アクション」の3項目でサマリ
5. 対応期限(媒体側の強制移行日)を抽出

出力フォーマット

{
  "week": "2026-W16",
  "updates": [
    {
      "media": "Google Ads",
      "change": "Performance Max に AI画像拡張機能",
      "impact": "既存PMax キャンペーンで画像バリエーション自動生成が追加",
      "action": "主要CL 5社で来週中に有効化検討",
      "deadline": "2026-06-01(強制適用)"
    }
  ]
}

配信

ログ

media_updates_runs: id, week, updates_count, critical_count, published_at


Agent A3: クリエイティブトレンド

状態: 構想

目的

クリエイティブの勝ちパターン(CTR / CVR / CPA 上位)と外部優秀CRを週次で抽出。②CR勝率向上と業種別CRディレクションの蓄積を狙う。

入力

処理ロジック

1. 過去7日の自社配信CRで CTR / CVR / CPA 上位 20%を「勝ち」、下位 20%を「負け」
2. 勝ち/負けCRのタグ(訴求軸 / 尺 / 構成 / BGM / CTA 等)を抽出
3. 業種別・商材別に分類
4. 外部優秀CRと自社CRを対比し、取り入れ可能な要素を抽出
5. 「この商材にはこの構成で作れ」という次週のCRブリーフ提案を生成

出力フォーマット

{
  "week": "2026-W16",
  "winning_patterns": [
    {
      "industry": "結婚式",
      "pattern": "BGMなし + 音声ガイド + 15秒 + 価格訴求",
      "avg_ctr": 3.2,
      "samples": ["url1", "url2"]
    }
  ],
  "next_week_briefs": [
    {
      "client_id": "brass",
      "creative_count": 30,
      "spec": "..."
    }
  ]
}

配信

ログ

cr_trends_runs: id, week, winning_count, brief_count, published_at


Agent A4: SEO / AIO動向

状態: 構想

目的

SEO / LLM検索最適化の業界動向を週次で配信。人月内訳メニュー C2(SEO/LLMO)のアップセル源として機能させる。curumi-corp との連携ポイント。

入力

処理ロジック

1. 過去7日の公式発表・記事・論文を収集
2. 「アルゴリズム変動 / 新機能 / 計測・ツール / 戦略」でタグ付け
3. 影響度(高 / 中 / 低)を付与
4. curumi-corp のSEO基盤への影響ありのものは `[curumi影響]` を付与
5. アクション候補を生成

出力フォーマット

{
  "week": "2026-W16",
  "updates": [
    {
      "category": "アルゴリズム変動",
      "title": "Google 2026年4月 コアアルゴリズム更新",
      "impact": "高",
      "affected_clients": ["cookbiz"],
      "curumi_impact": true,
      "action": "..."
    }
  ]
}

配信

ログ

seo_updates_runs: id, week, updates_count, high_impact_count, published_at


Agent D2: インバウンドリード分析

状態: 構想

目的

週次でインバウンドリード(コーポレートサイト問合せ / 資料DL / ホワイトペーパーDL)を分析し、質・量・転換ファネルを可視化。①セールスの成約率向上に使う。

入力

処理ロジック

1. 過去7日のインバウンドリード全件を集計
2. source別(SEO / LLMO検索 / ホワイトペーパーDL / 事例読了 / 紹介)に分解
3. 業種・規模・予算感で類似クラスタ化
4. 転換ファネル(Lead → Contact → Meeting → Proposal → Won)のボトルネック分析
5. 今週の打ち手提案(例: SEO流入増のキーワード追加、WP DLの後追いメール改善等)

出力フォーマット

{
  "week": "2026-W16",
  "total_leads": 18,
  "by_source": {"SEO": 6, "LLMO": 3, "WP_DL": 5, "紹介": 4},
  "top_clusters": [
    {"industry": "BtoB-SaaS", "size": "中堅", "count": 5}
  ],
  "funnel_bottleneck": "Contact → Meeting の転換率 70%(目標95%)",
  "actions": ["..."]
}

配信

ログ

inbound_lead_analysis_runs: id, week, leads_count, published_at


横断: エージェント開発の優先順と担当

Agent 難易度 データソース 担当 目安
1 B1 週次レポ全CL展開 媒体API × 既存 崎前 3週間
2 A2 媒体アプデ 公式RSS 崎前 1週間
3 A1 広告tips RSS + X 崎前 1週間
4 A4 SEO/AIO動向 RSS + X 崎前 1週間
5 A3 CRトレンド 配信データ + 外部CR 崎前 4週間
6 D2 インバウンド分析 CRM + GA4 崎前 2週間

→ 合計 3ヶ月で優先6本を全稼働できる想定。

横断: Slack チャンネル設計

channel 用途 メンバー
#ads-tips A1 日次tips 全員
#ads-updates A2 週次アプデ 全員
#cr-trends A3 CRトレンド / 次週ブリーフ 全員
#seo-updates A4 SEO/AIO動向 全員 + curumi-corp 開発者
#sales D2 インバウンド分析 / 商談前リサーチ 営業担当 + 崎前
#cl-{name} B1 週次レポ / 各CL対応 CL担当 + 田端 + 崎前
#ops-alert 全agent のエラー通知 崎前(アラート受信)
#exec E1 経営ダッシュ(今回対象外) 経営層

横断: 品質ゲート

全agentに共通で適用: 1. scrubber層: 個人情報 / 機密 / NG表現をregex + LLM で検出 2. schema検証: 出力JSONが定義schemaに準拠しているか 3. duplicate検知: 直近1週間の投稿と類似度80%超なら抑制 4. エラーログ: Turso に全実行ログを保存、週次で崎前にダッシュボード送信

横断: HITL 方針

HITLあり HITLなし
B1 週次レポ(CLに直送するため) A1 / A2 / A4 / D2(社内配信のため)
A3 次週ブリーフ(CR制作を左右するため)

HITLは Slack Block Kit の ✅承認 / ✏️修正依頼 / ❌却下 ボタンで処理。承認後に本配信 or CL共有。


実行タスク

# アクション 責任 期限
1 B1 の現行実装を確認、スケーラブル化 崎前 初動1ヶ月
2 Slack チャンネル #ads-tips / #ads-updates / #cr-trends / #seo-updates 作成 崎前 初動1週
3 A2 / A1 / A4(低難易度3本)のPoC稼働 崎前 初動1ヶ月
4 Turso ログスキーマ設計 崎前 初動1ヶ月
5 scrubber層の共通ライブラリ化(全agent共有) 崎前 初動1ヶ月
6 B1 全CL展開 + D2 構築 崎前 3ヶ月
7 A3(高難易度)の構築 崎前 3ヶ月
8 週次ダッシュボードでagent実行状況を可視化 崎前 3ヶ月