💻 システム開発
SCALE_Base_Pilot_開発依頼書
最終更新 2026年04月28日 / 31_システム開発部/SCALE_Base_Pilot/SCALE_Base_Pilot_開発依頼書.md
SCALE Base Pilot 開発依頼書
「業務の自動操縦パイロット」
SCALE Base 内の旧 Docs を置き換え、MTG アジェンダ・朝のブリーフィング・議事録・週月報・リマインダーを AI が自動生成する業務オートメーション・ハブ。
30秒で全体像
| 観点 | 一言 |
|---|---|
| 核心 | 大串の「定型作業に時間取られる」「あれやらなきゃ」を AI が代替 |
| キーワード | Cron + Claude API + Slack + Vault + Calendar 統合 |
| 使う人 | 大串・細川・各部署PM |
| 読了目安 | 10分 |
1. 概要
SCALE Base 内に新セクション 「Pilot」 を新設。
Cron で定期起動するワーカーが Vault / Slack / Google Calendar / Base 内データを統合し、Claude API で構造化して以下を自動生成する:
- 朝のブリーフィング(毎朝8:30)
- MTG アジェンダ自動下書き(MTG前日 or 6h前)
- 議事録自動抽出(Slack threads / Zoom 文字起こし → Vault化)
- 週報・月報の自動生成(週末 / 月末)
- リマインダー(FB対応・読み返し推奨・期限切れ)
旧 Docs(Notion時代の名残)は アーカイブして Pilot に置き換え。
2. スコープ
含むもの
| 機能 | 内容 |
|---|---|
| 朝のブリーフィング | 平日 8:30 に Slack DM + Base ホーム画面表示 |
| MTG アジェンダ生成 | 幹部週次・パートナー個別・カスタム |
| 議事録自動化 | Slack スレッド / Zoom録音 → 構造化 → Vault MD |
| 週報・月報自動 | 経営層向け / 部署別 / 自動Slack配信 |
| リマインダー | 期限切れ / FB未対応 / 読み返し推奨 |
| 設定UI | テンプレ管理 / スケジュール / 配信先 |
| 履歴UI | 過去の生成物一覧 + 再生成 |
含まないもの(別案で対応)
| 機能 | 対応案 |
|---|---|
| AIチャットUI(横断検索) | 案① 司令AI 本拠地(別途) |
| 意思決定支援(過去事例引き出し) | 案③ Decision Center(別途) |
| 双方向Vault編集 | やらない(編集はObsidian一択) |
3. アーキテクチャ
スタック
| レイヤー | 採用 |
|---|---|
| Frontend | SCALE Base 既存(Next.js風)に統合 |
| Backend | Cloudflare Workers(Cron Triggers) |
| DB | Supabase(既存利用) |
| AI | Anthropic Claude API(Opus 4.7・1M context) |
| Slack 連携 | Slack Web API + Bot Token |
| Calendar | Google Calendar API |
| Vault 読み取り | Drive API(Google Drive 同期版) or rsync後ファイル参照 |
| ファイル出力 | Vault に MD 直接書き戻し(Drive経由) |
| 通知 | Slack DM / Slack channel post |
データフロー
[Cron 8:30 / MTG前夜 / 週末 等]
↓
[Cloudflare Workers]
↓
[並行取得]
├── Vault MD(Drive API)
├── Slack 履歴(Slack API)
├── Calendar 予定(Calendar API)
└── Base DB(Supabase)
↓
[Claude API(要約・構造化)]
↓
[出力]
├── Vault MD 保存(Drive書き戻し)
├── Slack 通知(DM / Channel)
├── Supabase 保存(履歴)
└── Base UI 表示
4. データベース設計(Supabase)
pilot_jobs テーブル
| カラム | 型 | 説明 |
|---|---|---|
| id | uuid | PK |
| type | enum | daily_brief / mtg_agenda / minutes / weekly_report / monthly_report / reminder |
| status | enum | pending / running / completed / failed |
| target | text | 対象(例: "幹部週次MTG") |
| started_at | timestamptz | |
| completed_at | timestamptz | |
| output_path | text | Vault内の出力先パス |
| slack_msg_ts | text | 投稿メッセージID |
| input_summary | jsonb | 入力データのサマリ |
| output_summary | jsonb | 出力結果のサマリ |
| error | text | |
| triggered_by | text | cron / manual / webhook |
pilot_templates テーブル
| カラム | 型 | 説明 |
|---|---|---|
| id | uuid | PK |
| type | enum | jobs.type と同じ |
| name | text | テンプレ名(例: "幹部週次MTG") |
| target_meeting_pattern | text | カレンダー予定の正規表現 |
| schedule_cron | text | Cron式 |
| prompt_template | text | Claude プロンプトテンプレ |
| input_sources | jsonb | どこから取るか(vault_paths / slack_channels / calendar_query / base_modules) |
| output_path_template | text | 例: 15_MTG/経営・幹部MTG/{{date}}_幹部週次MTG_アジェンダ.md |
| slack_destination | text | DM channel ID or user ID |
| is_active | boolean | |
| created_at | timestamptz | |
| updated_at | timestamptz |
pilot_briefs テーブル(朝ブリ専用キャッシュ)
| カラム | 型 | 説明 |
|---|---|---|
| id | uuid | PK |
| date | date | UNIQUE |
| user_email | text | 配信先 |
| content | jsonb | 構造化データ(calendar/slack/vault_updates/kpi_alerts/today_focus) |
| markdown | text | 完成版MD |
| slack_msg_ts | text | |
| generated_at | timestamptz |
pilot_reminders テーブル
| カラム | 型 | 説明 |
|---|---|---|
| id | uuid | PK |
| user_email | text | |
| type | enum | feedback_pending / re_read_recommended / decision_followup / task_overdue |
| target_id | text | 関連オブジェクトID |
| content | text | 通知本文 |
| due_at | timestamptz | いつ通知すべきか |
| sent_at | timestamptz | 実通知時刻 |
| status | enum | pending / sent / dismissed / completed |
5. API 仕様
POST /api/pilot/run
手動実行トリガー。Cron 待たずに即生成。
{
"type": "mtg_agenda",
"template_id": "uuid",
"target": "2026-05-05_幹部週次MTG",
"options": { "force": true }
}
レスポンス: { job_id, status, eta }
GET /api/pilot/jobs
履歴取得。?type=&status=&limit=
GET /api/pilot/briefs/today
今日の朝ブリ取得。なければ生成して返す。
POST /api/pilot/templates
テンプレ追加・編集。
GET /api/pilot/reminders
ペンディング中のリマインダー一覧。
POST /api/pilot/reminders/:id/dismiss
リマインダー dismiss。
6. UI / 画面設計
Base 内 /pilot 配下に5画面
| 画面 | パス | 内容 |
|---|---|---|
| ホーム | /pilot |
今日のブリーフィング・直近のジョブ・ペンディング・リマインダー |
| アジェンダ | /pilot/agendas |
過去生成されたMTGアジェンダ一覧・再生成 |
| 議事録 | /pilot/minutes |
抽出済み議事録一覧 |
| レポート | /pilot/reports |
週報・月報履歴 |
| 設定 | /pilot/settings |
テンプレ管理・スケジュール・配信先 |
ホーム画面のレイアウト
┌─────────────────────────────────────────┐
│ 今日のブリーフィング(4/28 月) │
├─────────────────────────────────────────┤
│ 今日の予定(3件) │
│ 13:00 幹部週次MTG → アジェンダ準備済 ✓ │
│ 16:00 杉山さんMTG → 商談準備中 │
│ KPI 異常検知 │
│ - パートナー稼働率 -8% (要確認) │
│ 重要ノート │
│ - 4/27 報酬体系最終版(未読推奨) │
│ 今日のフォーカス(AI抽出) │
│ 1. 杉山さんMTG クロージング │
│ 2. 4案件アサイン優先順決定 │
│ 3. ... │
└─────────────────────────────────────────┘
7. 実装順序
Phase 1(2週間・最小動作)
このPhaseだけで「毎朝30分・週1時間」の節約が出る
| ID | 機能 |
|---|---|
| A1 | Cron 8:30 daily_brief トリガー |
| A2 | Calendar / Slack / Vault / Base 並行取得 |
| A3 | Claude による要約生成(朝ブリ用プロンプト) |
| A4 | Slack DM 配信 |
| A5 | Base /pilot ホーム画面で表示 |
| B1 | 幹部週次MTG アジェンダ自動生成(テンプレベース) |
| B2 | 生成 MD を Vault 15_MTG/経営・幹部MTG/ 配下に保存 |
| E1 | 期限切れタスク通知(Base タスクから) |
Phase 2(追加1週間・MTG拡張)
| ID | 機能 |
|---|---|
| B3 | パートナーMTG アジェンダ生成(複数テンプレ対応) |
| B4 | カスタムMTG(テンプレ可変・設定UI) |
| B5 | 設定画面(テンプレCRUD) |
Phase 3(追加1週間・議事録)
| ID | 機能 |
|---|---|
| C1 | Slack スレッドから抽出(thread_ts指定) |
| C2 | Claude で「議題 / 決定 / アクション」構造化 |
| C3 | Vault MD 保存 + Base タスク自動登録 |
| C4 | 議事録一覧画面 |
Phase 4(追加1週間・週月報+拡張リマインダー)
| ID | 機能 |
|---|---|
| D1 | 週末 KPI + 進捗レポート(日曜21:00 Cron) |
| D2 | 月末経営レポート(月末23:59 Cron) |
| D3 | 部署別レポート(人事 / 開発 / FS) |
| E2 | FB対応未完了通知(学びストックから) |
| E3 | 読み返し推奨ノート(最終参照から30日経過) |
| E4 | 「あの決定から1ヶ月」フォロー |
8. 機能一覧(IDマップ・全機能)
A. 朝のブリーフィング
- A1: Cron トリガー
- A2: データ収集
- A3: Claude 要約
- A4: Slack DM 配信
- A5: Base ホーム画面表示
B. MTG アジェンダ
- B1: 幹部週次
- B2: Vault 保存
- B3: パートナーMTG
- B4: カスタムMTG
- B5: 設定UI
C. 議事録自動化
- C1: Slack 抽出
- C2: 構造化
- C3: Vault + Task 連携
- C4: 一覧画面
D. 週報・月報
- D1: 週報
- D2: 月報
- D3: 部署別
E. リマインダー
- E1: タスク期限切れ
- E2: FB対応未完了
- E3: 読み返し推奨
- E4: 決定フォロー
9. 評価基準(受け入れ条件)
Phase 1 完了条件
- [ ]
/pilot画面が Base から開ける - [ ] 平日 8:30 に Slack DM が届く
- [ ] 朝ブリの内容が「予定 + KPI + Vault更新 + 重要ノート + 今日のフォーカス」5項目すべて含む
- [ ] 幹部週次MTG前日 18:00 に Vault にアジェンダ下書き MD が配置される
- [ ] アジェンダ MD が「直近1週の更新 + 議論ポイント + 決めごと候補」を含む
- [ ] Base のタスク期限切れが Slack 通知される
Phase 2-4 完了条件
- 各ID単位で「動作する + UI で確認できる + Vault反映される」
全体の品質基準
- 生成物のクオリティが「人が手で作ったレベル」(Phase 1 で 80%、最終で 95%)
- 大串が「これ自動生成?」と気づかないレベルを目指す
10. 完了状況チェックリスト
Phase 1(2026-04-28 完了)
- [x] A1: Cron セットアップ(外部 crontab +
~/Obsidian/scripts/pilot_cron.sh) - [x] A2: データ収集(Calendar / Slack writing_hand / pilot_vault_cache / Base KPI)
- [x] A3: Claude プロンプト調整(フォーカス3つ抽出・Lucide記法)
- [x] A4: Slack DM 配信(lookupByEmail → conversations.open)
- [x] A5: Base UI 表示(/pilot ホーム)
- [x] B1: 幹部週次アジェンダ生成エンジン
- [x] B2: Vault 保存(sync スクリプトと併用)
- [x] E1: タスク期限切れ通知(KV → pilot_reminders → Slack)
- [x] 受け入れテスト:朝ブリAPI HTTP 200 + フォーカス3つAI抽出確認
Phase 2(2026-04-28 完了)
- [x] B3: パートナーMTG(テンプレID連動・vault_paths絞り込み)
- [x] B4: カスタムMTG(プロンプト全面差し替え対応)
- [x] B5: 設定UI(テンプレCRUD・有効/無効・JSON入力編集)
Phase 3(2026-04-28 完了)
- [x] C1: Slack URL → channel/thread_ts parse + conversations.replies
- [x] C2: AI 構造化(議題/決定/アクション/宿題)
- [x] C3: アクション抽出 → scale-task-cron KV へ自動 push
- [x] C4: /pilot/minutes 一覧 + プレビュー + タスク件数表示
Phase 4(2026-04-28 完了)
- [x] D1: 週報(Phase 1 で先行実装)
- [x] D2: 月次経営レポート(月末23時 Cron 自動)
- [x] D3: 部署別レポート 8部署対応
- [x] E2: FB対応未完了通知(22_AI運用ルールから検出)
- [x] E3: 読み返し推奨(30日未更新検出)
- [x] E4: 決定1ヶ月フォロー(10_Daily/15_MTGから決定事項検出)
全Phase 受け入れテスト合格: UI 7画面 HTTP 200、API 4種 HTTP 200、reminder_all API task_overdue 10件検出
11. 特殊要件・プロンプトテンプレ
朝ブリ用プロンプト(A3)
あなたはSCALE社代表・大串勇輝のAI執事です。
以下の情報を統合し、「今日の朝ブリーフィング」を生成してください。
【今日の Calendar 予定】
{{calendar_events}}
【未読 Slack 重要メッセージ(前日17時以降)】
{{slack_priorities}}
【過去24h の Vault 新規・更新ノート】
{{vault_updates}}
【SCALE Base KPI(前日 vs 平均)】
{{kpi_alerts}}
【ペンディング中のタスク・リマインダー】
{{pending_items}}
出力ルール:
- 「今日のフォーカス3つ」を AI が抽出して最後に列挙
- 5分で読める量に圧縮
- 重要度順
- 不要な情報は切り捨てる
- Markdown形式
MTGアジェンダ生成プロンプト(B1)
SCALE社の {{meeting_name}} のアジェンダを生成してください。
【前回MTG議事録】
{{previous_minutes}}
【前回MTGからの主要アップデート(Vault NEW・更新ノート)】
{{vault_updates_since_last}}
【関連 Slack writing_hand(学び・気づき)】
{{slack_writing_hand}}
【最新KPI】
{{kpi_snapshot}}
【既存テンプレ】
{{template_md}}
出力ルール:
- 既存テンプレの構造を踏襲
- 直近1週の主要アップデートを「直近1週の大型アップデート」テーブルに反映
- 議論ポイント・決めごと候補を AI が抽出
- 大串の口調・スタイル(断定形・テーブル多用)に合わせる
- Markdown形式
議事録抽出プロンプト(C2)
以下の Slack スレッドから議事録を構造化してください。
【スレッド】
{{thread_messages}}
出力フォーマット:
1. 議題(箇条書き)
2. 決定事項(箇条書き・背景含む)
3. アクション(担当 / 期限 / 内容)
4. 次回までの宿題
Markdown形式。Vault `15_MTG/` 配下に保存される前提。
12. 守るべきこと
| 観点 | 内容 |
|---|---|
| 退化禁止 | 既存 Docs 機能をいきなり削除せず、/docs-archive に退避 |
| changelog | scale-base の lib/changelog.ts 最上段に毎回追記 |
| バックアップ | 編集前に tar.gz、デプロイ前後で必ず |
| 関数grep | 既存関数を消す前に必ず参照確認 |
| 本番URL確認 | デプロイ後 https://scale-base.pages.dev/pilot/ で動作確認 |
| AIコスト | Claude API 呼び出しはキャッシュ戦略必須(同じ入力なら再利用) |
| Vault 書き戻し | Drive API or 専用エンドポイント経由・直接ファイル操作NG |
| 機密情報 | パートナー比率・SCALE利益率を朝ブリに含めない(対外漏洩リスク) |
13. 関連ノート
- CLAUDE — グローバルルール
- 31_システム開発部/_SCALE_全システム配置マップ — 全システムパス
- 31_システム開発部/_SCALE_全システム実装ルール — 退化禁止フロー
- 31_システム開発部/SCALE_Base/_README — SCALE Base 保護資産
- 22_AI運用ルール/Claude_動き方ガイド — 大串のスタイル
- 22_AI運用ルール/Claude_開発依頼書テンプレート — このノートの元テンプレ
- 15_MTG/経営・幹部MTG/2026-04-28_幹部週次MTG_アジェンダ — アジェンダの実例
14. 完了報告フロー
完了したら、Slack で報告:
# 司令名義で報告
cd /Users/oogushiyuuki/株式会社SCALE/scale-company/
./slack_post.sh shirei "SCALE Base Pilot Phase 1 完了。朝ブリ + 幹部MTGアジェンダ自動生成稼働中。/pilot で確認可能。"
更新履歴
| 日付 | 内容 |
|---|---|
| 2026-04-28 | 初版作成(案②採択を受けて) |