コミュニティ管理基盤プラットフォーム
AI-Powered by Claude API
クイックアクション
5フェーズ 自動化ワークフロー
①企画・登壇調整
キックオフ・プロフィール収集・合意形成
完了
②準備(会場・ケータリング)
会場予約・発注メール自動生成
進行中
③集客(フライヤー・告知)
フライヤー生成・登壇者確認・SNS投稿
準備中
④当日運営
撮影・録音・アンケート・領収書回収
未着手
⑤事後(レポート・精算)
レポート自動生成・月次集計・会計士提出
未着手
12
今月のイベント数
3
予約申請中
4
領収書処理待ち
7
承認待ちタスク
月次イベント推移
フェーズ別タスク消化状況
最近のアクティビティ
2026-04-17 14:32
Meetup #15 会場予約を仮予約として登録しました
2026-04-17 11:15
B社 ケータリング発注メールを下書き作成しました
2026-04-16 16:44
田中太郎さんの領収書(¥8,500)を受理しました
2026-04-16 09:00
フライヤー T02(サイバーパンク)を生成・承認しました
予約一覧
ワークフロー
カレンダー
予約IDイベント名日時申請者用途ステータス操作
予約フロー(6ステップ)
1
申請投稿(Slack #space-booking)
@Claude 予約申請 / 日時・用途を投稿
2
重複チェック(AI自動実行)
Google Calendar走査・代替案3件を自動提示
3
仮予約作成(AI → Google Calendar)
タイトル「[仮] 申請者名 用途」でTentative登録
4
承認依頼(AI → 管理者 Slack DM)
✅承認 / ❌差戻し のリアクション待機
5
承認判定(管理者)
承認→Confirmed更新 / 差戻し→削除+通知
確定通知(AI → 申請者)
Slackで確定通知・カレンダー招待送信
AIアシスト:空き時間確認
Slackコマンドまたはこのフォームから空き状況をAIに問い合わせできます
2026年5月 予約カレンダー
発注依頼
ベンダー台帳
利用履歴
ワークフロー
発注申請フォーム
ベンダーマッチング待機中
左のフォームを入力してAIマッチングを実行してください
発注IDイベント名ベンダー人数金額立替者評価
2026-001Meetup #14B社28名¥210,000田中太郎⭐⭐⭐ ◎
2026-002LT大会 #3C社15名¥52,500佐藤花子⭐⭐⭐ ◎
2025-012Meetup #13A社35名¥280,000鈴木一郎⭐⭐ ○
ケータリング発注フロー(9ステップ)
1
申請投稿(Slack #catering-request)
@Claude ケータリング依頼 / イベント名・人数・予算等を投稿
2
候補提示(AI自動 / Excelベンダー台帳参照)
マッチングロジックで2〜3社を自動抽出・適合理由付きで提示
3
発注先選定(申請者)
提示候補から1社をSlackスレッドで指定
4
発注メール作成(AI → Gmail下書き)
件名・本文・回答期限を自動生成。CC: 管理者・申請者
5
発注承認(管理者 → Gmail送信)
Slack通知 → ✅承認 → Gmail下書きを確認して送信
6
受注確認取込(AI自動)
Gmail返信を解析・確定金額・受取時刻をSlack投稿
7
リマインダー設定(AI → Googleカレンダー)
前日10:00・当日受取1時間前に自動リマインダー
8
立替精算連携(#receipts チャンネルへ)
領収書を#receiptsに投稿 → 領収書集計フローへ連携
履歴更新(AI自動)
Excel台帳「利用履歴」に実績行を自動追記
新規作成
テンプレート
登壇者マスタ
発行履歴
ワークフロー
フライヤー生成フォーム
フライヤープレビュー
フォームを入力してAI生成を実行すると
ここにプレビューが表示されます
ID氏名所属肩書き写真公開可否操作
S001山田太郎株式会社XXCTO登録済公開
S002佐藤花子株式会社YYエンジニア未登録公開
S003鈴木一郎株式会社ZZデザイナー登録済非公開
発行IDイベント名開催日テンプレート登壇者ステータス操作
2026-F001Meetup #142026/04/20T02 サイバーパンク山田 / 佐藤承認済
2026-F002LT大会 #32026/04/05T07 ターミナル鈴木承認済
2026-F003Meetup #152026/05/20T03 ブループリント山田 / 田中承認待ち
フライヤー作成フロー(10ステップ)
1
申請連携(#flyer-request チャンネル)
イベント企画からの自動連携 または 手動申請
2
登壇者プロフィール収集(AI → DM依頼)
氏名・所属・肩書き・顔写真をSlack DM自動送信で収集
3
プロフィール画像処理(AI自動 / Python)
顔検出・トリミング・背景除去(rembg)・色調調整・Canvaアップロード
4
テンプレート候補提示(AI / Excelマスタ参照)
10種から2〜3案をプレビュー付きで提示
5
テンプレート選定(申請者)
Slackスレッドで番号指定またはリアクション
6
デザイン生成(AI → Canva MCP)
テンプレート複製・テキスト差込・画像合成・プレビュー取得
7
承認(管理者)
Slackプレビュー確認 → ✅承認 / ✏️修正 / ❌差戻し
8
エクスポート(AI自動 / PNG + PDF)
Pro品質でエクスポート・共有フォルダに格納
9
告知展開連携(Peatix / X / Facebook / Mail)
各媒体への投稿下書きを自動連携
履歴更新(AI自動 / Excel台帳)
フライヤー発行履歴シートに実績行を追記
告知投稿
レポート作成
投稿一覧
フロー確認
告知投稿ドラフト生成
投稿ドラフト生成待ち
左のフォームを入力してドラフト生成を実行してください
登壇者確認フロー
基本方針:登壇者の名前・発言・写真が露出するコンテンツは公開前に必ず本人確認を取る。確認・修正のやり取りはSlackで完結させる。
1
下書き作成
Claude AI
2
内部チェック
運営側
3
登壇者確認
Slack DM
4
修正・再確認
必要時のみ
5
公開
承認済みのみ
イベントレポート生成
レポート草案生成待ち
素材情報を入力してAIレポートを生成
Notion CMSへの自動連携も対応
IDタイトル媒体担当者作成日ステータス操作
告知投稿フロー
1
下書き作成(AI)
イベント概要・登壇者情報から媒体別原稿案を生成(X/LinkedIn/Web/Slack)
2
内部チェック(運営側)
事実確認・NG表現・センシティブ引用のレビュー
3
登壇者確認(Slack DM)
原稿案+使用予定画像を送付 / OK・修正・NG を返信
4
修正・再確認
修正依頼を反映し再チェック。軽微なら即対応。
公開(承認済みのみ)
公開後URLを登壇者に共有(透明性確保)
レポート作成フロー
1
素材アップロード
写真・音声・概要メモをGoogle Driveへ
2
草案生成(AI)
音声文字起こし・要点抽出・写真選定・レポート草案を自動生成
3
チャット修正(Slack/Cowork)
「この段落を短く」等の対話修正。差分ベースで反映。
4
登壇者確認(投稿フローと同じ)
発言引用部分を該当登壇者にDM送付・承認取得
公開(Notion → CMS連携)
NotionのEventReportsDBから自動公開。登壇者・参加者へURL通知。
領収書提出
集計一覧
月次集計
ワークフロー
領収書提出フォーム
クリックまたはドラッグ&ドロップ
JPG / PNG / PDF 対応
AI 自動抽出(OCR解析)
画像をアップロードすると、AIが以下を自動抽出します:
  • 発行日・店名・金額・消費税区分
  • インボイス登録番号
  • 支払方法(現金/カード)
今月の集計サマリ
¥29,500
今月合計
4件
提出件数
2件
承認待ち
1件
要確認
ID提出者日付金額カテゴリプロジェクトステータス操作
月次集計レポート
カテゴリ別内訳
ケータリング¥8,500
会場費¥12,000
印刷費¥3,200
飲食費¥5,800
提出ステータス
集計完了
承認待ち
Gmailメール下書き作成
最終送信(管理者)
領収書集計フロー(5フェーズ)
1
領収書提出(提出者 → Slack #receipts)
画像添付+@Claudeメンション+日付/用途/プロジェクトコードを記載
2
月次集計(Claude Scheduled Task / 毎月末23:00)
前月〜当月全投稿を走査。OCR抽出(日付・店名・金額・インボイス番号)→ Excel + PDF生成
3
承認依頼(AI → #receipts-approval)
合計金額・件数・提出者別内訳・注意事項(インボイス欠落等)を投稿
4
Gmail下書き作成(AI → 管理者Gmail)
承認✅検知後、会計士宛メール下書きを自動生成(件名・本文・Excel・PDF添付)
最終送信(管理者 → 会計士)
管理者がGmailで目視確認→送信。完了後Slackに記録が自動付記。
API接続
Slack設定
Notion連携
Google連携
Canva設定
DB設計
システム
🤖
Claude API
claude-3-5-haiku / テキスト生成・OCR解析
💬
Slack API
Bot Token / 申請受付・承認通知
📓
Notion API
登壇者管理・レポートCMS・ナレッジベース
🎨
Canva MCP
テンプレート編集・アセット管理・エクスポート
Slackチャンネル設定
スラッシュコマンド
// 登録済みコマンド
/new-event → 新規イベント作成ウィザード
/weekly-scan → 週次タスクチェック起動
/event-report → レポート自動生成
/catering → ケータリング申請
/receipts → 領収書提出状況確認
Slack App設定でこれらのスラッシュコマンドを登録し、Webhook URLを設定してください。
Notionデータベース設定
ステータス確認・公開可否管理
公開フラグ付きCMS。Next.js ISR連携対応。
運営ノウハウ・テンプレート保管
D-90〜D+14のタスク追跡
CMS連携設定
最小構成:
1. NotionにEventReportsデータベースを作成
2. 公開フラグ=trueの記事をAPIで取得
3. Next.js ISRで10分おきに再生成
📅
Google Calendar API
予約管理・リマインダー自動登録
📧
Gmail API
発注メール・会計士提出・下書き作成
📁
Google Drive API
写真・音声・Excelファイル管理
📊
Google Sheets API
タスク管理・領収書集計シート
🎨
Canva Connect API
MCP接続 / テンプレート管理
テンプレート管理(10種)
T01 和紙ミニマル 稼働中
T02 サイバーパンク 稼働中
T03 ブループリント 稼働中
T04 シンセウェイブ 稼働中
T05 スイス・タイポ 稼働中
T06 水彩オーガニック 稼働中
T07 ターミナル/Matrix 稼働中
T08 新聞エディトリアル 稼働中
T09 リソグラフ印刷 稼働中
T10 バウハウス幾何学 稼働中
データベース設計概要
CommOps Hygiene は Cloudflare D1 (SQLite) をバックエンドに採用したマルチテナント SaaS 構成です。
全テーブルに tenant_id を持たせ、アプリ層でテナント分離を実現しています。
テナント(契約組織)
tenants
ユーザー
users
セッション(認証用)
sessions
イベントマスタ
events
会場予約
bookings
ケータリングベンダー
vendors
ケータリング発注
catering_orders
フライヤーテンプレート
flyer_templates
フライヤー発行履歴
flyers
登壇者マスタ
speakers
投稿・レポート
posts
領収書
receipts
月次集計
monthly_aggregations
テナント設定
tenant_settings
監査ログ
audit_logs
テーブル関連図(ER)
tenants (id PK)
  ├── users (tenant_id FK)
  │     └── sessions (user_id FK)
  ├── events (tenant_id FK, created_by FK→users)
  │     ├── bookings      (tenant_id FK, event_id FK, applicant_id FK→users)
  │     ├── catering_orders (tenant_id FK, event_id FK, vendor_id FK)
  │     ├── flyers        (tenant_id FK, event_id FK, template_id FK, created_by FK→users)
  │     ├── posts         (tenant_id FK, event_id FK, author_id FK→users)
  │     └── receipts      (tenant_id FK, event_id FK, submitter_id FK→users)
  ├── vendors            (tenant_id FK)
  ├── flyer_templates    (tenant_id FK)
  ├── speakers           (tenant_id FK)
  ├── monthly_aggregations (tenant_id FK)
  ├── tenant_settings    (tenant_id PK FK)
  └── audit_logs         (tenant_id FK)
tenant_settings 管理フィールド
フィールド 用途 暗号化
claude_key_enc Claude API キー AES-256
claude_model 使用モデル名 -
slack_token_enc Slack Bot Token AES-256
slack_signing_secret_enc Slack Signing Secret AES-256
slack_workspace_id Slack ワークスペース ID -
slack_channels チャンネルマッピング (JSON) -
notion_token_enc Notion Integration Token AES-256
notion_db_reports レポート DB ID -
notion_db_speakers 登壇者 DB ID -
notion_db_tasks タスク DB ID -
google_sa_enc Google Service Account JSON AES-256
google_calendar_id Google Calendar ID -
gmail_address Gmail アドレス -
gmail_client_id Gmail OAuth Client ID -
gmail_client_secret_enc Gmail Client Secret AES-256
accountant_email 会計士メールアドレス -
gdrive_events_folder_id Drive イベントフォルダ ID -
gdrive_vendors_file_id Drive ベンダー台帳 ID -
gdrive_flyers_file_id Drive フライヤー台帳 ID -
canva_client_id Canva Client ID -
canva_client_secret_enc Canva Client Secret AES-256
canva_access_token_enc Canva Access Token AES-256
canva_brand_kit_id Canva Brand Kit ID -
canva_folder_id Canva フォルダ ID -
初期セットアップ手順・コマンド
1. Cloudflare API トークン権限確認
# 必要な権限: Workers Scripts:Edit, D1:Edit, Pages:Edit
npx wrangler whoami
2. D1 データベース作成
# 本番 D1 を作成(初回のみ)
npx wrangler d1 create commops-production

# 出力された database_id を wrangler.jsonc の
# d1_databases[0].database_id に設定する
3. マイグレーション適用
# ローカル開発用
npx wrangler d1 migrations apply commops-production --local

# 本番環境
npx wrangler d1 migrations apply commops-production --remote
4. シードデータ投入(開発・テスト用)
# ローカルのみ(本番には絶対に適用しないこと)
npx wrangler d1 execute commops-production --local --file=./migrations/0002_seed_data.sql

# シードデータ確認
npx wrangler d1 execute commops-production --local --command="SELECT id,name,plan FROM tenants"
5. ローカル開発サーバー起動
# ビルド
npm run build

# D1 ローカルモードで起動
npx wrangler pages dev dist --d1=commops-production --local --ip 0.0.0.0 --port 3000

# または PM2 で起動(ecosystem.config.cjs の args を以下に変更)
# args: 'wrangler pages dev dist --d1=commops-production --local --ip 0.0.0.0 --port 3000'
6. 本番デプロイ
# ビルド + Cloudflare Pages へデプロイ
npm run build
npx wrangler pages deploy dist --project-name commops-hygiene

# 本番 D1 の接続確認
curl https://commops-hygiene.pages.dev/api/health
curl https://commops-hygiene.pages.dev/api/v1/events
7. DB リセット(ローカル開発時)
# ローカル D1 を完全リセット(テーブル再作成 + シード再投入)
rm -rf .wrangler/state/v3/d1
npx wrangler d1 migrations apply commops-production --local
npx wrangler d1 execute commops-production --local --file=./migrations/0002_seed_data.sql
8. 本番 DB 確認コマンド
# テナント一覧
npx wrangler d1 execute commops-production --remote --command="SELECT id,name,plan,status FROM tenants"

# ユーザー一覧
npx wrangler d1 execute commops-production --remote --command="SELECT id,email,role FROM users"

# 各テーブルのレコード件数
npx wrangler d1 execute commops-production --remote --command="
  SELECT 'tenants' as tbl, COUNT(*) as cnt FROM tenants UNION ALL
  SELECT 'users',   COUNT(*) FROM users   UNION ALL
  SELECT 'events',  COUNT(*) FROM events  UNION ALL
  SELECT 'bookings',COUNT(*) FROM bookings UNION ALL
  SELECT 'receipts',COUNT(*) FROM receipts"
wrangler.jsonc テンプレート
{
  "$schema": "node_modules/wrangler/config-schema.json",
  "name": "commops-hygiene",
  "compatibility_date": "2024-01-01",
  "pages_build_output_dir": "./dist",
  "compatibility_flags": ["nodejs_compat"],
  "d1_databases": [
    {
      "binding": "DB",
      "database_name": "commops-production",
      "database_id": "f1dc0a89-377a-4f35-a848-ab6d038c8478"
    }
  ]
}
API v1 エンドポイント一覧
メソッド パス 説明
GET /api/v1/events イベント一覧
POST /api/v1/events イベント作成
PATCH /api/v1/events/:id イベント更新
GET /api/v1/bookings 会場予約一覧
POST /api/v1/bookings 会場予約作成
PATCH /api/v1/bookings/:id 予約ステータス更新
GET /api/v1/catering/vendors ベンダー一覧
POST /api/v1/catering/vendors ベンダー追加
GET /api/v1/catering/orders 発注一覧
POST /api/v1/catering/orders 発注作成
GET /api/v1/flyers/templates テンプレート一覧
POST /api/v1/flyers/create フライヤー作成
GET /api/v1/posts 投稿一覧
POST /api/v1/posts/draft 投稿下書き作成
PATCH /api/v1/posts/:id 投稿ステータス更新
GET /api/v1/receipts 領収書一覧
POST /api/v1/receipts 領収書提出
PATCH /api/v1/receipts/:id 領収書承認/却下
GET /api/v1/receipts/monthly/:yearMonth 月次集計
GET /api/v1/settings テナント設定取得
POST /api/v1/settings テナント設定保存
POST /api/v1/settings/test-connection API接続テスト
GET /api/v1/users ユーザー一覧
POST /api/ai/chat Claude AI プロキシ
マイグレーションファイル管理
新しいカラム・テーブルを追加する場合は migrations/ ディレクトリに連番 SQL ファイルを追加してください。
# 新規マイグレーションファイルを作成
# ファイル名: migrations/0003_add_xxxx.sql

# 例: events テーブルに capacity カラムを追加
cat > migrations/0003_add_events_capacity.sql << 'EOF'
ALTER TABLE events ADD COLUMN capacity INTEGER DEFAULT NULL;
CREATE INDEX IF NOT EXISTS idx_events_capacity ON events(capacity);
EOF

# ローカルに適用
npx wrangler d1 migrations apply commops-production --local

# 本番に適用
npx wrangler d1 migrations apply commops-production --remote
セキュリティ設定
APIキーの暗号化保存
AES-256で暗号化してlocalStorageに保存
二段階承認(高額発注)
¥100,000以上の発注は追加承認必須
Slack承認ログの保全
監査証跡としてNotionに自動バックアップ
スケジューラー設定
月次領収書集計
毎月末日 23:00 (JST) に自動実行
週次スキャン
毎週月曜 09:00 (JST) に自動実行
承認リマインダー
24時間未承認で自動リマインド
接続状態サマリ
🤖Claude API未設定
💬Slack未設定
📓Notion未設定
📅Google Calendar未設定
🎨Canva未設定
システム情報
バージョンCommOps Hygiene v1.0.0
ランタイムCloudflare Workers (Edge)
フレームワークHono + Tailwind CSS
AIエンジンClaude API (claude-3-5-haiku)
作成日2026-04-17
プラットフォームCommOps Hygiene SaaS
CommOps AI アシスタント
Claude API powered
こんにちは!CommOps Hygiene のAIアシスタントです。
会場予約・ケータリング・フライヤー・告知投稿・領収書集計など、コミュニティ運営に関することなら何でもお気軽にどうぞ。

例:「来月のMeetup会場を予約したい」「B社にケータリングを発注するメールを作って」「領収書の合計を教えて」