daily-meeting-update
GitHubやJira、Claude Codeのセッション履歴から活動実績を取得し、「昨日・今日・ブロッカー・議題」の4項目をインタビュー形式で確認した上で、デイリースタンドアップ用のMarkdownレポートを自動生成します。「daily」「standup」「status update」「prepare for meeting」などと話しかけることで起動します。
description の原文を見る
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.
SKILL.md 本文
Daily Meeting Update
インタラクティブなインタビューを通じて日次スタンドアップ/ミーティングの更新を生成します。ツールが設定されていると仮定しないでください。必ず先に確認してください。
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
利用可能なインテグレーションをサイレントに確認します(エラーを抑制し、ユーザーに表示しません):
| インテグレーション | 検出方法 |
|---|---|
| Claude Code History | ~/.claude/projects ディレクトリが存在し、.jsonl ファイルを含む |
| GitHub CLI | gh auth status が成功する |
| Jira CLI | jira コマンドが存在する |
| Atlassian MCP | mcp__atlassian__* ツールが利用可能 |
| Git | Git リポジトリ内にいる |
Step 2: GitHub/Jira インテグレーションを提供(利用可能な場合)
Claude Code ユーザー: このフェーズのすべての質問に
AskUserQuestionToolツールを使用してください。
GitHub/Git:
HAS_GH または 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"
はいの場合:
"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:
HAS_JIRA_CLI または 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: GitHub/Jira データを取得(承認された場合)
GitHub/Git — 承認された各リポジトリについて:
- ユーザーが昨日以降にコミットしたもの
- ユーザーが開いた/マージしたプルリクエスト
- ユーザーが実施したレビュー
Jira — ユーザーに割り当てられたチケット、過去24時間に更新されたもの
重要な洞察: 結果を保存して、フェーズ2のインタビューでコンテキストとして使用します。
Step 4: Claude Code の履歴を提供
このインテグレーションは Claude Code で行ったすべての作業をキャプチャします。Git や Jira にない作業(調査、デバッグ、計画)を思い出すのに役立ちます。
検出:
ls ~/.claude/projects/*/*.jsonl 2>/dev/null | head -1
Claude Code の履歴が存在する場合、確認してください:
"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"
はいの場合、ダイジェスト スクリプトを実行します:
python3 ~/.claude/skills/daily-meeting-update/scripts/claude_digest.py --format json
その後、マルチセレクトでセッションを表示します:
AskUserQuestionTool を multiSelect: true で使用して、ユーザーが関連する項目を選択できるようにします:
"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)"
重要な洞察: ユーザーは仕事に関連するセッションを選択します。個人的なプロジェクトや実験は除外できます。
ダイジェスト スクリプトを実行しない場合:
- ユーザーが Claude Code の履歴を明確に「いいえ」と答えた場合
- ユーザーがすべてを手動で提供すると言った場合
~/.claude/projectsディレクトリが存在しない場合
ダイジェスト スクリプトが失敗した場合:
- フォールバック: Claude Code インテグレーションをサイレントにスキップし、インタビューを続行
- よくある問題: Python がインストールされていない、昨日のセッションがない、許可エラー
- スタンドアップフローをブロックしないでください。スクリプトは補足的なもので、必須ではありません
Phase 2: Interview (with insights)
Claude Code ユーザー:
AskUserQuestionToolツールを使用してインタビューを実施します。これにより、構造化されたオプションを備えたより優れたUXが提供されます。
取得したデータをコンテキストとして使用して、質問をより賢くします。
Question 1: Yesterday
データが取得された場合、最初にそれを表示します:
"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?"
データが取得されなかった場合:
"What did you work on yesterday/since the last standup?"
ユーザーの応答があいまいな場合、フォローアップを質問します:
- "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]
Jira データが取得された場合、以下を提案できます:
"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
すべての情報をクリーンな 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
- インタビューが主要 — ツールは補足的であり、人間的コンテキストを置き換えません
- アクセス前の同意 — 任意のインテグレーションから取得する前に、常にユーザーに確認します
- コンテキスト対応の質問 — インタビュー中に取得したデータを表示して、メモリをトリガーします(「PR #123 をマージしたのを見ています...」)
Quick Reference
| フェーズ | アクション | ツール |
|---|---|---|
| 1. Detect & Offer | gh/jira/claude 履歴をチェック、ユーザーに確認、データを取得 | Bash (silent), AskUserQuestionTool* |
| 2. Interview | インサイト付きで4つの質問を実施 | AskUserQuestionTool* |
| 3. Generate | Markdown をフォーマット | Output text |
*Claude Code のみ: 構造化された質問に AskUserQuestionTool ツールを使用します。
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
| 回避すべき | 理由(エキスパートナレッジ) | 代わりに |
|---|---|---|
| gh/jira を確認なしで実行 | ユーザーは個人リポジトリが表示される可能性があるか、機密プロジェクトコンテキストにいるかもしれません | 常に最初に確認し、ユーザーがリポジトリを選択できるようにします |
| 現在のディレクトリが唯一のプロジェクトであると仮定 | 開発者は通常2~5個のリポジトリで同時に作業しています(フロントエンド、バックエンド、インフラ) | 「どのプロジェクトで作業していますか?」と質問します |
| ツールデータがあってもインタビューをスキップ | ツールは何が起こったかをキャプチャしますが、なぜ、コンテキスト(調査、会議、計画)を欠いています | インタビューは主要であり、ツールは補足です |
| すべての4つの質問の前に更新を生成 | ユーザーは重大なブロッカーや、ナラティブを変更する議論トピックがあるかもしれません | インタビューを完了してから、生成します |
| 生のコミットメッセージを含める | コミットメッセージはしばしば暗号化されています(「fix」「wip」)、ストーリーを伝えていません | 人間が読める成果にまとめます |
| インタビュー後にデータを要求 | インタビュー中にインサイトを表示すると、質問がより賢くなります(「PR #123 をマージしたのを見ています、他に何かありますか?」) | データを最初に取得してから、コンテキスト付きでインタビューを実施します |
NEVER
- ツールが設定されていると仮定しない — 多くの開発者は gh がインストールされていても認証されていない、または jira CLI が誤ったインスタンスを指している場合があります
- 「Topics for Discussion」の質問をスキップしない — これはしばしばツールがキャプチャできないスタンドアップの最も価値のある部分です
- 15以上の箇条書きを生成しない — スタンドアップは読むのに2分未満である必要があります。長い更新は視聴者を失います
- チケット/PR番号をコンテキストなしで含めない — 「PROJ-123」は意味がありません。常にタイトルまたはサマリーを含めます
- ユーザーが明示的に承認しなかったリポジトリからデータを取得しない — 他のリポジトリを確認できる場合でも、境界を尊重してください
ライセンス: MIT(寛容ライセンスのため全文を引用しています) · 原本リポジトリ
詳細情報
- 作者
- softaworks
- ライセンス
- MIT
- 最終更新
- 不明
Source: https://github.com/softaworks/agent-toolkit / ライセンス: MIT
関連スキル
agent-browser
AI エージェント向けのブラウザ自動化 CLI です。ウェブサイトとの対話が必要な場合に使用します。ページ遷移、フォーム入力、ボタンクリック、スクリーンショット取得、データ抽出、ウェブアプリのテスト、ブラウザ操作の自動化など、あらゆるブラウザタスクに対応できます。「ウェブサイトを開く」「フォームに記入する」「ボタンをクリックする」「スクリーンショットを取得する」「ページからデータを抽出する」「このウェブアプリをテストする」「サイトにログインする」「ブラウザ操作を自動化する」といった要求や、プログラマティックなウェブ操作が必要なタスクで起動します。
anyskill
AnySkill — あなたのプライベート・スキルクラウド。GitHubを基盤としたリポジトリからエージェントスキルを管理、同期、動的にロードできます。自然言語でクラウドスキルを検索し、オンデマンドでプロンプトを自動ロード、カスタムスキルのアップロードと共有、スキルバンドルの一括インストールが可能です。OpenClaw、Antigravity、Claude Code、Cursorに対応しています。
engram
AIエージェント向けの永続的なメモリシステムです。バグ修正、意思決定、発見、設定変更の後はmem_saveを使用してください。ユーザーが「覚えている」「記憶している」と言及した場合、または以前のセッションと重複する作業を開始する際はmem_searchを使用します。セッション終了前にmem_session_summaryを使用して、コンテキストを保持してください。
skyvern
AI駆動のブラウザ自動化により、任意のウェブサイトを自動化できます。フォーム入力、データ抽出、ファイルダウンロード、ログイン、複数ステップのワークフロー実行など、ユーザーがウェブサイトと連携する必要があるときに使用します。Skyvernは、LLMとコンピュータビジョンを活用して、未知のサイトも自動操作可能です。Python SDK、TypeScript SDK、REST API、MCPサーバー、またはCLIを通じて統合できます。
pinchbench
PinchBenchベンチマークを実行して、OpenClawエージェントの実世界タスクにおけるパフォーマンスを評価できます。モデルの機能テスト、モデル間の比較、ベンチマーク結果のリーダーボード提出、またはOpenClawのセットアップがカレンダー、メール、リサーチ、コーディング、複数ステップのワークフローにどの程度対応しているかを確認する際に使用します。
openui
OpenUIとOpenUI Langを使用してジェネレーティブUIアプリを構築できます。これらはLLM生成インターフェースのためのトークン効率的なオープン標準です。OpenUI、@openuidev、ジェネレーティブUI、LLMからのストリーミングUI、AI向けコンポーネントライブラリ、またはjson-render/A2UIの置き換えについて述べる際に使用します。スキャフォルディング、defineComponent、システムプロンプト、Renderer、およびOpenUI Lang出力のデバッグに対応しています。