💻 システム開発

SCALE_TERASU_週次Slack報告_座組

最終更新 2026年07月08日 / 31_システム開発部/_SCALE_TERASU_週次Slack報告_座組.md

TERASU 週次Slack報告 座組(マーケ部署/FS部署)

毎週月曜 朝7:00 に、先週(月〜日)の数値を部署Slackへ自動投稿する仕組み。2026-07-06 大串FBで構築。

何が送られるか

  • 親投稿: ◯/◯〜◯/◯|マーケ部署週次報告(FS版は …|FS部署週次報告
  • スレッド本文: 部署メンバーへのメンション+数値FMT(2026-07-08 大串FBで大幅拡張・全角コロン)
  • マーケ: アポ獲得(先週/前週比/月累計+目標対比着地予測/施策別)・応募ファネル(先週/月累計 応募→返信→アポ率・媒体別)テレアポ(架電社数→アポ率※行更新ベース近似)・LinkedIn承認・新規紹介(紹介者名付き)・商談/受注(受注額¥付き)・受注ヨミ(確度別+ヨミ換算)・参考: 応募→アポ平均リードタイム
  • FS: 商談(先週実施/月累計/今週予定リスト)・受注(先週/月累計/受注率)・目標対比(商談/受注/受注率)・パイプライン(確度別・A/Bは社名)・今月クローズ見込み(受注予定日が当月のA/B)今週のNA一覧(担当・期日・内容)・要フォロー(商談済みNA日超過・担当者ごと)・商談日超過で確度未更新(担当者ごと)・NA日未設定のA〜C案件記録漏れ(商談メモ未入力)参考: 着席率+アポ→商談/商談→契約リードタイム
  • 部署メンバー = TERASU CRM の members の positions(mkt / fs)+ slackUserId
  • FSのメンション除外 = config の fs_mention_exclude(現在: 杉山・2026-07-08 大串FB)
  • 目標値 = 事業数値レポートの月次目標(D1 finance_targets・デフォルト アポ30/商談25/受注10/受注率33%)と自動連動

構成

部品 パス
本体スクリプト ~/Obsidian/scripts/terasu_weekly_report.py
設定(送信先ch) ~/Obsidian/scripts/terasu_weekly_config.json
launchd(月曜7:00) ~/Library/LaunchAgents/com.scale.terasu-weekly-report.plist
ログ ~/Obsidian/scripts/logs/terasu_weekly_report.log

仕組み(データの流れ)

  1. wrangler d1 execute terasu-crm-prod --remote で TERASU CRM の D1 (app_data) を直読み(deals / projects / job_applications / linkedin_approved / apo_manual / apt_meta / apo_excluded / referrals / members / slack_config・チャンク結合対応)
  2. scale-lead-prod から TERASU案件のテレアポアポ獲得も直読み(functions/api/scale-apo.ts と同ロジック)
  3. アポ5系統(LinkedIn/案件応募/手動/テレアポ/紹介)を lib/appointments.js getAutoAppointments と同じルールで統合・apo_excluded 除外
  4. 週次集計(週=月曜はじまり日曜終わり・月累計=対象月の1日〜実行時点=CRMの月フィルタと一致・2026-07-07 大串FBで締めを変更)
  5. Slack投稿は TERASU CRM と同じ Bot(D1 slack_config の botToken)で chat.postMessage(親→スレッド)

運用コマンド

# 送信せず内容プレビュー
python3 ~/Obsidian/scripts/terasu_weekly_report.py --dry

# 手動送信(片方だけなら --dept mkt / --dept fs)
python3 ~/Obsidian/scripts/terasu_weekly_report.py

# 止める/再開
launchctl unload ~/Library/LaunchAgents/com.scale.terasu-weekly-report.plist
launchctl load   ~/Library/LaunchAgents/com.scale.terasu-weekly-report.plist

送信先チャンネルの変更

~/Obsidian/scripts/terasu_weekly_config.jsonmkt_channel / fs_channel にチャンネルID(C0…)を設定。
未設定の部署はスキップされる(エラーにならない)。Botがそのチャンネルに参加している必要あり(プライベートchは /invite で招待)。

注意

  • FMT変更はスクリプト内 fmt_mkt() / fmt_fs() を編集
  • メンバーの部署・SlackIDは TERASU CRM(管理→メンバー)で管理=スクリプト側の変更不要
  • 受注ヨミの係数は商談管理と同じ(S1.0/A0.9/B0.7/C0.5/D0.3/E0.1/F0.03)
  • テレアポ架電数は近似値: SCALE CRM の call_rows に架電日フィールドが無いため「先週更新された架電行数(社数)」で代用。一括同期等でも行が動くため過大に出ることがある(FMTにも「※行更新ベースの近似」と明記済み)
  • 受注額 = 商談のS確定時に入れる初期費用(initialCost・未入力は標準10万で計算)
  • 着席率は アポの着席チェック(apt_meta seated)の入力が前提=未入力だと低く出る