daily-meeting-update
日々の朝会や進捗報告で、GitHubやJiraなどの情報をもとに、昨日やったこと、今日やること、課題、相談事項を質問形式で聞き出し、Markdown形式でまとまった報告文を自動作成するSkill。
📜 元の英語説明(参考)
Interactive daily standup/meeting update generator. Use when user says 'daily', 'standup', 'scrum update', 'status update', 'what did I do yesterday', 'prepare for meeting', 'morning update', or 'team sync'. Pulls activity from GitHub, Jira, and Claude Code session history. Conducts 4-question interview (yesterday, today, blockers, discussion topics) and generates formatted Markdown update.
🇯🇵 日本人クリエイター向け解説
日々の朝会や進捗報告で、GitHubやJiraなどの情報をもとに、昨日やったこと、今日やること、課題、相談事項を質問形式で聞き出し、Markdown形式でまとまった報告文を自動作成するSkill。
※ jpskill.com 編集部が日本のビジネス現場向けに補足した解説です。Skill本体の挙動とは独立した参考情報です。
下記のコマンドをコピーしてターミナル(Mac/Linux)または PowerShell(Windows)に貼り付けてください。 ダウンロード → 解凍 → 配置まで全自動。
mkdir -p ~/.claude/skills && cd ~/.claude/skills && curl -L -o daily-meeting-update.zip https://jpskill.com/download/20846.zip && unzip -o daily-meeting-update.zip && rm daily-meeting-update.zip
$d = "$env:USERPROFILE\.claude\skills"; ni -Force -ItemType Directory $d | Out-Null; iwr https://jpskill.com/download/20846.zip -OutFile "$d\daily-meeting-update.zip"; Expand-Archive "$d\daily-meeting-update.zip" -DestinationPath $d -Force; ri "$d\daily-meeting-update.zip"
完了後、Claude Code を再起動 → 普通に「動画プロンプト作って」のように話しかけるだけで自動発動します。
💾 手動でダウンロードしたい(コマンドが難しい人向け)
- 1. 下の青いボタンを押して
daily-meeting-update.zipをダウンロード - 2. ZIPファイルをダブルクリックで解凍 →
daily-meeting-updateフォルダができる - 3. そのフォルダを
C:\Users\あなたの名前\.claude\skills\(Win)または~/.claude/skills/(Mac)へ移動 - 4. Claude Code を再起動
⚠️ ダウンロード・利用は自己責任でお願いします。当サイトは内容・動作・安全性について責任を負いません。
🎯 このSkillでできること
下記の説明文を読むと、このSkillがあなたに何をしてくれるかが分かります。Claudeにこの分野の依頼をすると、自動で発動します。
📦 インストール方法 (3ステップ)
- 1. 上の「ダウンロード」ボタンを押して .skill ファイルを取得
- 2. ファイル名の拡張子を .skill から .zip に変えて展開(macは自動展開可)
- 3. 展開してできたフォルダを、ホームフォルダの
.claude/skills/に置く- · macOS / Linux:
~/.claude/skills/ - · Windows:
%USERPROFILE%\.claude\skills\
- · macOS / Linux:
Claude Code を再起動すれば完了。「このSkillを使って…」と話しかけなくても、関連する依頼で自動的に呼び出されます。
詳しい使い方ガイドを見る →- 最終更新
- 2026-05-18
- 取得日時
- 2026-05-18
- 同梱ファイル
- 3
📖 Skill本文(日本語訳)
※ 原文(英語/中国語)を Gemini で日本語化したものです。Claude 自身は原文を読みます。誤訳がある場合は原文をご確認ください。
[スキル名] daily-meeting-update
デイリーミーティング更新
対話形式のインタビューを通じて、デイリースタンドアップ/ミーティングの更新を生成します。ツールが設定されていると決して仮定せず、まず尋ねてください。
ワークフロー
START
│
▼
┌─────────────────────────────────────────────────────┐
│ フェーズ1: 統合の検出と提案 │
│ • 確認: Claude Code履歴? gh CLI? jira CLI? │
│ • Claude Code → 昨日のセッションダイジェストをプル│
│ → ユーザーがマルチセレクトで関連アイテムを選択 │
│ • GitHub/Jira → ユーザーに尋ね、承認されればプル │
│ • データは今すぐプルする (インタビュー前) │
├─────────────────────────────────────────────────────┤
│ フェーズ2: インタビュー (洞察を伴う) │
│ • プルしたデータをコンテキストとして表示 │
│ • 昨日: 「PR #123をマージしましたね、他に何か?」 │
│ • 今日: 何に取り組みますか? │
│ • ブロッカー: 何か妨げになっていることはありますか?│
│ • トピック: ミーティングの最後に議論したいことは? │
├─────────────────────────────────────────────────────┤
│ フェーズ3: 更新の生成 │
│ • インタビューの回答 + ツールデータを結合 │
│ • 整然としたMarkdown形式でフォーマット │
│ • ユーザーに提示 │
└─────────────────────────────────────────────────────┘
フェーズ1: 統合の検出と提案
ステップ1: サイレント検出
利用可能な統合をサイレントにチェックします(エラーを抑制し、ユーザーには表示しません)。
| 統合 | 検出 |
|---|---|
| Claude Code履歴 | ~/.claude/projects ディレクトリに .jsonl ファイルが存在する |
| GitHub CLI | gh auth status が成功する |
| Jira CLI | jira コマンドが存在する |
| Atlassian MCP | mcp__atlassian__* ツールが利用可能 |
| Git | Gitリポジトリ内である |
ステップ2: GitHub/Jira統合の提案 (利用可能な場合)
Claude Codeユーザーの方へ: このフェーズのすべての質問には
AskUserQuestionToolツールを使用してください。
GitHub/Git:
HAS_GH または HAS_GIT の場合:
"GitHub/Gitが設定されていることを検出しました。最近のアクティビティ(コミット、PR、レビュー)をプルしますか?"
オプション:
- "はい、情報をプルしてください"
- "いいえ、すべて手動で提供します"
「はい」の場合:
"どのリポジトリ/プロジェクトをチェックすればよいですか?"
オプション:
- "現在のディレクトリのみ" (Gitリポジトリ内の場合)
- "リポジトリをリストします" → ユーザーがリストを提供
Jira:
HAS_JIRA_CLI または HAS_ATLASSIAN_MCP の場合:
"Jiraが設定されていることを検出しました。チケットをプルしますか?"
オプション:
- "はい、チケットをプルしてください"
- "いいえ、すべて手動で提供します"
ステップ3: GitHub/Jiraデータのプル (承認された場合)
GitHub/Git — 承認された各リポジトリについて:
- 昨日以降のユーザーによるコミット
- ユーザーが開いた/マージしたPR
- ユーザーが行ったレビュー
Jira — ユーザーに割り当てられ、過去24時間以内に更新されたチケット
重要な洞察: フェーズ2のインタビューでコンテキストとして使用するために結果を保存します。
ステップ4: Claude Code履歴の提案
この統合は、Claude Codeで作業したすべてをキャプチャします。GitやJiraにない作業を思い出すのに役立ちます。
検出:
ls ~/.claude/projects/*/*.jsonl 2>/dev/null | head -1
Claude Code履歴が存在する場合、尋ねます:
"昨日のClaude Codeセッション履歴もプルできます。これは、Git/Jiraにない作業(調査、デバッグ、計画)を思い出すのに役立ちます。確認しますか?"
オプション:
- "はい、Claude Codeセッションをプルしてください"
- "いいえ、必要なものはすべて揃っています"
「はい」の場合、ダイジェストスクリプトを実行します:
python3 ~/.claude/skills/daily-meeting-update/scripts/claude_digest.py --format json
次に、マルチセレクトでセッションを提示します:
AskUserQuestionTool を multiSelect: true とともに使用して、ユーザーが関連するアイテムを選択できるようにします。
"昨日のClaude Codeセッションです。スタンドアップに関連するものを選択してください:"
オプション (multiSelect):
- "認証バグを修正 (backend-api)"
- "OAuthフローを実装 (backend-api)"
- "ホームページのスタイルを更新 (frontend-app)"
- "決済プロバイダーを調査 (docs)"
重要な洞察: ユーザーはどのセッションが仕事関連であるかを選択します。個人的なプロジェクトや実験は除外できます。
ダイジェストスクリプトを実行しない場合:
- ユーザーがClaude Code履歴に対して明示的に「いいえ」と言った場合
- ユーザーがすべて手動で提供すると言った場合
~/.claude/projectsディレクトリが存在しない場合
ダイジェストスクリプトが失敗した場合:
- フォールバック: Claude Code統合をサイレントにスキップし、インタビューに進みます
- 一般的な問題: Pythonがインストールされていない、昨日からのセッションがない、権限エラー
- スタンドアップフローをブロックしないでください — スクリプトは補足的なものであり、必須ではありません
フェーズ2: インタビュー (洞察を伴う)
Claude Codeユーザーの方へ: インタビューを行うには
AskUserQuestionToolツールを使用してください。これにより、構造化されたオプションでより良いUXが提供されます。
プルしたデータをコンテキストとして使用して、質問をよりスマートにします。
質問1: 昨日
データがプルされた場合、まずそれを表示します。
"あなたのアクティビティから見つかったものです:
- PR #123をマージ: ログインタイムアウトを修正
- backend-apiで3つのコミット
- PR #456をレビュー (承認済み)
他に昨日作業したことで、私が見落としていることはありますか?"
データがプルされなかった場合:
"昨日/前回のスタンドアップ以降、何に取り組みましたか?"
ユーザーの回答が曖昧な場合は、フォローアップを尋ねます。
- 「Xについてもっと詳しく教えていただけますか?」
- 「何か具体的なことを完了しましたか?」
質問2: 今日
"今日、何に取り組みますか?"
オプション:
- [テキスト入力 - ユーザーが自由にタイプ]
Jiraデータがプルされた場合、提案できます。
"以下のチケットが割り当てられているようです:
- PROJ-123: OAuthフローを実装 (進行中)
- PROJ-456: 支払いバグを修正 (未着手)
今日、これらのいずれかに取り組みますか?"
質問3: ブロッカー
"何かブロッカーや障害はありますか?"
オプション:
- "ブロッカーはありません"
- "はい、ブロッカーがあります" → 詳細をフォローアップ
質問4: 議論するトピック
"デイリーの最後に何か議題にしたいことはありますか?"
オプション:
- "いいえ、議論することはありません"
- "はい" → 詳細をフォローアップ
トピックの例:
- 入力が必要な技術的決定
- 他のチームとの連携
- 優先順位に関する質問
- 発表 📜 原文 SKILL.md(Claudeが読む英語/中国語)を展開
Daily Meeting Update
Generate a daily standup/meeting update through an interactive interview. Never assume tools are configured—ask first.
Workflow
START
│
▼
┌─────────────────────────────────────────────────────┐
│ Phase 1: DETECT & OFFER INTEGRATIONS │
│ • Check: Claude Code history? gh CLI? jira CLI? │
│ • Claude Code → Pull yesterday's session digest │
│ → User selects relevant items via multiSelect │
│ • GitHub/Jira → Ask user, pull if approved │
│ • Pull data NOW (before interview) │
├─────────────────────────────────────────────────────┤
│ Phase 2: INTERVIEW (with insights) │
│ • Show pulled data as context │
│ • Yesterday: "I see you merged PR #123, what else?" │
│ • Today: What will you work on? │
│ • Blockers: Anything blocking you? │
│ • Topics: Anything to discuss at end of meeting? │
├─────────────────────────────────────────────────────┤
│ Phase 3: GENERATE UPDATE │
│ • Combine interview answers + tool data │
│ • Format as clean Markdown │
│ • Present to user │
└─────────────────────────────────────────────────────┘
Phase 1: Detect & Offer Integrations
Step 1: Silent Detection
Check for available integrations silently (suppress errors, don't show to user):
| Integration | Detection |
|---|---|
| Claude Code History | ~/.claude/projects directory exists with .jsonl files |
| GitHub CLI | gh auth status succeeds |
| Jira CLI | jira command exists |
| Atlassian MCP | mcp__atlassian__* tools available |
| Git | Inside a git repository |
Step 2: Offer GitHub/Jira Integrations (if available)
Claude Code users: Use
AskUserQuestionTooltool for all questions in this phase.
GitHub/Git:
If HAS_GH or HAS_GIT:
"I detected you have GitHub/Git configured. Want me to pull your recent activity (commits, PRs, reviews)?"
Options:
- "Yes, pull the info"
- "No, I'll provide everything manually"
If yes:
"Which repositories/projects should I check?"
Options:
- "Just the current directory" (if in a git repo)
- "I'll list the repos" → user provides list
Jira:
If HAS_JIRA_CLI or HAS_ATLASSIAN_MCP:
"I detected you have Jira configured. Want me to pull your tickets?"
Options:
- "Yes, pull my tickets"
- "No, I'll provide everything manually"
Step 3: Pull GitHub/Jira Data (if approved)
GitHub/Git — For each approved repo:
- Commits by user since yesterday
- PRs opened/merged by user
- Reviews done by user
Jira — Tickets assigned to user, updated in last 24h
Key insight: Store results to use as context in Phase 2 interview.
Step 4: Offer Claude Code History
This integration captures everything you worked on with Claude Code — useful for recalling work that isn't in git or Jira.
Detection:
ls ~/.claude/projects/*/*.jsonl 2>/dev/null | head -1
If Claude Code history exists, ask:
"I can also pull your Claude Code session history from yesterday. This can help recall work that isn't in git/Jira (research, debugging, planning). Want me to check?"
Options:
- "Yes, pull my Claude Code sessions"
- "No, I have everything I need"
If yes, run the digest script:
python3 ~/.claude/skills/daily-meeting-update/scripts/claude_digest.py --format json
Then present sessions with multiSelect:
Use AskUserQuestionTool with multiSelect: true to let user pick relevant items:
"Here are your Claude Code sessions from yesterday. Select the ones relevant to your standup:"
Options (multiSelect):
- "Fix authentication bug (backend-api)"
- "Implement OAuth flow (backend-api)"
- "Update homepage styles (frontend-app)"
- "Research payment providers (docs)"
Key insight: User selects which sessions are work-related. Personal projects or experiments can be excluded.
Do NOT run digest script when:
- User explicitly says "No" to Claude Code history
- User says they'll provide everything manually
~/.claude/projectsdirectory doesn't exist
If digest script fails:
- Fallback: Skip Claude Code integration silently, proceed with interview
- Common issues: Python not installed, no sessions from yesterday, permission errors
- Do NOT block the standup flow — the script is supplemental, not required
Phase 2: Interview (with insights)
Claude Code users: Use
AskUserQuestionTooltool to conduct the interview. This provides a better UX with structured options.
Use pulled data as context to make questions smarter.
Question 1: Yesterday
If data was pulled, show it first:
"Here's what I found from your activity:
- Merged PR #123: fix login timeout
- 3 commits in backend-api
- Reviewed PR #456 (approved)
Anything else you worked on yesterday that I missed?"
If no data pulled:
"What did you work on yesterday/since the last standup?"
If user response is vague, ask follow-up:
- "Can you give more details about X?"
- "Did you complete anything specific?"
Question 2: Today
"What will you work on today?"
Options:
- [Text input - user types freely]
If Jira data was pulled, you can suggest:
"I see you have these tickets assigned:
- PROJ-123: Implement OAuth flow (In Progress)
- PROJ-456: Fix payment bug (To Do)
Will you work on any of these today?"
Question 3: Blockers
"Do you have any blockers or impediments?"
Options:
- "No blockers"
- "Yes, I have blockers" → follow-up for details
Question 4: Topics for Discussion
"Any topic you want to bring up at the end of the daily?"
Options:
- "No, nothing to discuss"
- "Yes" → follow-up for details
Examples of topics:
- Technical decision that needs input
- Alignment with another team
- Question about prioritization
- Announcement or info for the team
Phase 3: Generate Update
Combine all information into clean Markdown:
# Daily Update - [DATE]
## Yesterday
- [Items from interview]
- [Items from GitHub/Jira if pulled]
## Today
- [Items from interview]
## Blockers
- [Blockers or "No blockers"]
## PRs & Reviews (if pulled from GitHub)
- [PRs opened]
- [PRs merged]
- [Reviews done]
## Jira (if pulled from Jira)
- [Tickets updated]
## Topics for Discussion
- [Topics or "None"]
---
*Links:*
- [PR links]
- [Ticket links]
Core Principles
- Interview is primary — Tools supplement, they don't replace human context
- Consent before access — Always ask before pulling from any integration
- Context-aware questions — Show pulled data during interview to trigger memory ("I see you merged PR #123...")
Quick Reference
| Phase | Action | Tool |
|---|---|---|
| 1. Detect & Offer | Check gh/jira/claude history, ask user, pull data | Bash (silent), AskUserQuestionTool* |
| 2. Interview | Ask 4 questions with insights | AskUserQuestionTool* |
| 3. Generate | Format Markdown | Output text |
*Claude Code only: Use AskUserQuestionTool tool for structured questions.
Claude Code Digest Script
# Get yesterday's sessions as JSON
python3 ~/.claude/skills/daily-meeting-update/scripts/claude_digest.py --format json
# Get today's sessions
python3 ~/.claude/skills/daily-meeting-update/scripts/claude_digest.py --date today --format json
# Filter to specific project
python3 ~/.claude/skills/daily-meeting-update/scripts/claude_digest.py --project ~/my-app --format json
Example Session
Claude: "Let's prepare your daily! I detected GitHub configured. Want me to pull your recent activity?"
User: "Yes"
Claude: "Which repos should I check?"
User: "backend-api and frontend-app"
[Claude pulls GitHub data silently]
Claude: "I can also pull your Claude Code session history from yesterday. Want me to check?"
User: "Yes"
[Claude runs digest script, gets 5 sessions]
Claude: "Here are your Claude Code sessions from yesterday. Select the ones relevant to your standup:"
☑ Fix authentication timeout bug (backend-api)
☑ Implement OAuth flow (backend-api)
☐ Update personal blog (blog) - [user unchecks personal project]
☑ Research payment providers (docs)
☐ Debugging test failures (experiments)
User: [selects 3 relevant items]
Claude: "Here's what I found from your activity:
- Merged PR #120: fix login timeout
- Opened PR #125: feat: add OAuth flow
- Reviewed PR #123 (approved), PR #456 (changes requested)
- 5 commits in backend-api
- [From Claude Code] Fix authentication timeout bug
- [From Claude Code] Implement OAuth flow
- [From Claude Code] Research payment providers
Anything else you worked on yesterday that I missed?"
User: "No, that covers it"
Claude: "What will you work on today?"
User: "Continue the OAuth feature and deploy to staging"
Claude: "Any blockers?"
User: "No"
Claude: "Any topic to bring up at the end of the daily?"
User: "Yes, I want to discuss the architecture of the new payments module"
[Claude generates update]
Output Example
# Daily Update - 2026-01-22
## Yesterday
- Worked on authentication feature
- Research on payment providers
- Merged PR #120 (fix: login timeout)
- Opened PR #125 (feat: add OAuth flow)
## Today
- Continue OAuth feature
- Deploy to staging
## Blockers
- No blockers
## PRs & Reviews
- **Opened:** PR #125 - feat: add OAuth flow
- **Merged:** PR #120 - fix: login timeout
- **Reviews:** PR #123 (approved), PR #456 (changes requested)
## Topics for Discussion
- Architecture of the new payments module
---
*Links:*
- https://github.com/org/repo/pull/125
- https://github.com/org/repo/pull/120
Anti-Patterns
| Avoid | Why (Expert Knowledge) | Instead |
|---|---|---|
| Run gh/jira without asking | Users may have personal repos visible, or be in a sensitive project context they don't want exposed | Always ask first, let user choose repos |
| Assume current directory is the only project | Developers often work on 2-5 repos simultaneously (frontend, backend, infra) | Ask "Which projects are you working on?" |
| Skip interview even with tool data | Tools capture WHAT happened but miss WHY and context (research, meetings, planning) | Interview is primary, tools supplement |
| Generate update before all 4 questions | User might have critical blocker or discussion topic that changes the narrative | Complete interview, then generate |
| Include raw commit messages | Commit messages are often cryptic ("fix", "wip") and don't tell the story | Summarize into human-readable outcomes |
| Ask for data after interview | Showing insights during interview makes questions smarter ("I see you merged PR #123, anything else?") | Pull data first, then interview with context |
NEVER
- NEVER assume tools are configured — Many devs have gh installed but not authenticated, or jira CLI pointing to wrong instance
- NEVER skip the "Topics for Discussion" question — This is often the most valuable part of standup that tools can't capture
- NEVER generate more than 15 bullets — Standup should be <2 minutes to read; long updates lose the audience
- NEVER include ticket/PR numbers without context — "PROJ-123" means nothing; always include title or summary
- NEVER pull data from repos user didn't explicitly approve — Even if you can see other repos, respect boundaries
同梱ファイル
※ ZIPに含まれるファイル一覧。`SKILL.md` 本体に加え、参考資料・サンプル・スクリプトが入っている場合があります。
- 📄 SKILL.md (12,589 bytes)
- 📎 README.md (7,533 bytes)
- 📎 scripts/claude_digest.py (10,692 bytes)