💻 システム開発

SCALE_BASE_PILOT_現在状態

最終更新 2026年04月28日 / 31_システム開発部/SCALE_Base_Pilot/_SCALE_BASE_PILOT_現在状態.md

SCALE Base Pilot 現在状態

Phase 1-4 全機能完成(2026-04-28):朝ブリ + MTGアジェンダ(テンプレ+カスタム)+ 議事録(Slack→AI→Task自動登録)+ 週月報 + 部署別レポート + 4種リマインダー 全部稼働。


プロジェクト概要

SCALE Base 内の旧 Docs を「業務オートメーション・ハブ Pilot」に置き換え
- 朝のブリーフィング自動配信(Phase 1 完了)
- MTG アジェンダ自動生成(Phase 1 完了)
- タスク期限切れリマインダー(Phase 1 完了)
- 議事録自動抽出(Phase 3 予定)
- 週月報自動生成(Phase 4 予定)


環境

項目
ローカルパス /Users/oogushiyuuki/scale-base/
本番URL https://scale-base.pages.dev/pilot/
DB Cloudflare D1 (scale-base-db / id: e3b5cd82-99aa-4fe8-811a-70d661ed6953)
新規テーブル pilot_jobs / pilot_templates / pilot_briefs / pilot_reminders / pilot_vault_cache
AI Anthropic Claude Opus 4.7(fallback で Sonnet も可)
実行基盤 Cloudflare Pages Functions(手動 + 外部 Cron)

Phase 進捗

Phase 工数 機能ID ステータス
Phase 1 2週間 A1-A5, B1-B2, E1 完了 2026-04-28
Phase 2 1週間 B3-B5 完了 2026-04-28
Phase 3 1週間 C1-C4 完了 2026-04-28
Phase 4 1週間 D1-D3, E2-E4 完了 2026-04-28

Phase 1 完了状況

  • [x] A1: Cron セットアップ(外部 cron スクリプト方式 ~/Obsidian/scripts/pilot_cron.sh
  • [x] A2: データ収集(Calendar / Slack writing_hand / pilot_vault_cache / Base KPI)
  • [x] A3: Claude プロンプト調整(lib/pilot/prompts.ts、Lucide記法、フォーカス3つ抽出)
  • [x] A4: Slack DM 配信(lookupByEmailconversations.open
  • [x] A5: Base UI 表示(/pilot ホームに今日のブリーフィング表示)
  • [x] B1: 幹部週次MTGアジェンダ生成エンジン
  • [x] B2: Vault 出力先パス指定 + Markdown 返却(書き戻しは Vault sync スクリプトと併用)
  • [x] E1: タスク期限切れ通知(scale-task-cron KV から取得 → pilot_reminders 登録 → Slack)
  • [x] 受け入れテスト:朝ブリ生成 API 動作確認済(HTTP 200・Markdown生成・フォーカス3つ抽出)

Phase 2 完了状況

  • [x] B3: パートナーMTG(テンプレID連動・vault_paths/vault_recent_days 絞り込み)
  • [x] B4: カスタムMTG(プロンプト全面差し替え対応・/pilot/agendas のトグル)
  • [x] B5: 設定UI(テンプレCRUD・有効/無効切替・JSON 入力ソース編集)

Phase 3 完了状況

  • [x] C1: Slack URL → channel/thread_ts 自動 parse + conversations.replies 取得
  • [x] C2: AI 構造化(議題 / 決定事項 / アクション / 宿題)
  • [x] C3: アクション抽出 → scale-task-cron KV へ自動 push(registerActionsAsTasks
  • [x] C4: /pilot/minutes 一覧 + プレビュー + タスク登録件数表示

Phase 4 完了状況

  • [x] D1: 週報(Phase 1 で実装済)
  • [x] D2: 月次経営レポート(経営判断向け・10分で読める・Cron 月末23時自動発火)
  • [x] D3: 部署別レポート 8部署対応(営業/マーケ/開発/FS/PM/人事/コーポレート/TERASU)
  • [x] E2: FB対応未完了通知(22_AI運用ルール の「未対応」「TODO」「[ ]」検出)
  • [x] E3: 読み返し推奨(22/21 フォルダで 30日以上未更新を検出)
  • [x] E4: 「あの決定から1ヶ月」フォロー(10_Daily / 15_MTG の「決定事項」検出)
  • [x] 受け入れテスト:reminder_all API → task_overdue 10件検出成功

新規ファイル一覧

scale-base 側

migrations/0007_pilot.sql                # D1 5テーブル

lib/pilot/
  types.ts                               # 型定義
  prompts.ts                             # Claude プロンプトテンプレ
  templates.ts                           # デフォルトテンプレ 5件 seed

functions/_lib/
  anthropic.ts                           # Claude API ラッパー(cache 対応)
  slack.ts                               # Slack DM ヘルパー
  pilot-engine.ts                        # 朝ブリ・MTG・期限・週報の生成本体

functions/api/pilot/
  briefs.ts                              # GET/POST 朝ブリ
  jobs.ts                                # GET ジョブ履歴
  templates.ts                           # CRUD テンプレ管理
  reminders.ts                           # CRUD リマインダー
  run.ts                                 # 手動トリガー
  vault-sync.ts                          # Vault → D1 同期受け口
  cron.ts                                # 外部 cron 受け口

app/(dashboard)/pilot/
  page.tsx                               # ホーム(今日のブリ + ジョブ + リマインダー)
  agendas/page.tsx                       # MTGアジェンダ手動生成 + 履歴
  minutes/page.tsx                       # 議事録(Phase 3 で拡張予定)
  reports/page.tsx                       # 週報・月報
  reminders/page.tsx                     # リマインダー管理
  history/page.tsx                       # 全ジョブ履歴
  settings/page.tsx                      # テンプレート CRUD

Vault 側スクリプト

~/Obsidian/scripts/pilot_sync.sh         # Vault → D1 同期(過去 N日 / all)
~/Obsidian/scripts/pilot_cron.sh         # 外部 cron トリガー

crontab 推奨設定(Phase 1-4 全部入り)

# 平日 8:30 朝ブリ + 期限切れチェック(同梱)
30 8 * * 1-5      ~/Obsidian/scripts/pilot_cron.sh daily_brief

# 月曜 18:00 翌日の幹部週次MTGアジェンダ
0 18 * * 1        ~/Obsidian/scripts/pilot_cron.sh mtg_agenda 幹部週次MTG

# 日曜 21:00 週報
0 21 * * 0        ~/Obsidian/scripts/pilot_cron.sh weekly_report

# 月末 23:00 月次経営レポート(auto判定で月最終日のみ動作)
0 23 28-31 * *    ~/Obsidian/scripts/pilot_cron.sh monthly_report

# 1日 3回 期限切れタスクチェック
30 10,15,20 * * * ~/Obsidian/scripts/pilot_cron.sh task_overdue

# 平日 12:00 拡張リマインダー(FB / 読み返し / 決定1ヶ月フォロー)
0 12 * * 1-5      ~/Obsidian/scripts/pilot_cron.sh reminders_extended

# Vault 同期:朝7時に直近1日 + 10/15/20時に直近7日
0 7 * * *         ~/Obsidian/scripts/pilot_sync.sh 1
0 10,15,20 * * *  ~/Obsidian/scripts/pilot_sync.sh 7

初回 Vault 全同期(1回だけ実行・重い):

~/Obsidian/scripts/pilot_sync.sh all

API エンドポイント

メソッド パス 用途
GET /api/pilot/briefs 今日の朝ブリ取得(なければ生成)
POST /api/pilot/briefs 強制再生成(force / skip_slack)
GET /api/pilot/jobs ジョブ履歴
GET/POST/DELETE /api/pilot/templates テンプレ CRUD(初回 GET でデフォルト seed)
GET/POST/PUT /api/pilot/reminders リマインダー CRUD
POST /api/pilot/run 手動トリガー(type 指定)
GET/POST /api/pilot/vault-sync Vault 同期
POST /api/pilot/cron 外部 cron 受け口(PILOT_CRON_TOKEN 認証)

確定事項(Phase 1)

  • 名称: SCALE Base Pilot
  • 配置: SCALE Base 内 /pilot セクション
  • 旧 Docs: ナビ上「Docs (Archive)」に降格、物理ファイル保持
  • DB: D1 採用(Supabase ではなく既存パターンに統一)
  • AIコスト: Claude API キャッシュ戦略適用(system prompt 5分 ephemeral)
  • Vault 連携: Drive API ではなく ローカル sync スクリプト方式 で実装(Worker からは pilot_vault_cache を読むだけ)
  • Slack DM: users.lookupByEmail で大串個人 DM を解決
  • 機密情報: パートナー比率・SCALE利益率は朝ブリプロンプトで明示的に除外指示

残運用作業

# 作業 担当
1 crontab 登録(上記 6行) 大串
2 初回 pilot_sync.sh all 実行 大串
3 (任意)Cloudflare Pages env vars に PILOT_CRON_TOKEN を設定 + ~/.scale_pilot_cron_token に同じ値 大串

完了報告

cd /Users/oogushiyuuki/株式会社SCALE/scale-company/
./slack_post.sh shirei "SCALE Base Pilot Phase 1 完了。/pilot で朝ブリ + MTGアジェンダ + 期限リマインダー稼働中。"

→ 2026-04-28 投稿済


更新履歴

日付 内容
2026-04-28 初版作成(案②採択)
2026-04-28 Phase 1 実装完了 → ステータス更新