| name | daily-report-generator |
| description | GitコミットログとCalendar情報から日報・週報を自動生成するSkill。 「日報を作って」「週報を書いて」「今週何やったか教えて」「スタンドアップノート」 などのリクエストで自動発火する。 |
日報/週報生成 Skill
Gitコミットログから日報・週報を自動生成します。
クイックスタート
- 対象期間を確認(日次 or 週次)
- Gitコミットログを取得
- コミットをカテゴリ分類
- 指定フォーマットで出力
データ収集
Gitコミット取得
# 日次(今日のコミット)
git log --oneline --since="midnight" --author="$(git config user.name)"
# 週次(過去7日間)
git log --oneline --since="7 days ago" --author="$(git config user.name)"
# 詳細表示
git log --pretty=format:"%h %s" --since="midnight"
Calendarイベント(オプション)
ユーザーが提供した場合のみ、Calendar情報を組み込む。
コミット分類
コミットメッセージのプレフィックスで自動分類:
| カテゴリ | キーワード | 例 |
|---|---|---|
| 機能追加 | feat, add, implement | 新機能の実装 |
| バグ修正 | fix, resolve, patch | 不具合の修正 |
| 改善 | refactor, improve, update | コード改善 |
| ドキュメント | doc, readme | ドキュメント更新 |
| その他 | chore, style, test | その他の作業 |
出力フォーマット
1. デイリースタンドアップ形式
## 日報 - [日付]
### 昨日やったこと
- [完了したタスクの箇条書き]
### 今日やること
- [予定タスク]
### 困っていること
- [ブロッカーがあれば記載、なければ「特になし」]
2. 週次サマリー形式
## 週次レポート - [期間]
### 主な成果
- [重要な完了項目]
### 進行中
- [継続タスク]
### 来週の予定
- [次週の優先事項]
### 数値サマリー
- コミット数: [N]
- 機能追加: [N]
- バグ修正: [N]
3. Slack投稿用形式
*日報 - [日付]*
:white_check_mark: 完了: [要約]
:construction: 作業中: [要約]
:warning: ブロッカー: [あれば記載]
ワークフロー
- ユーザーに確認: 「日次と週次どちらですか?フォーマットの希望はありますか?」
- Gitコマンドを実行してコミット取得
- コミットを解析・分類
- テンプレートを適用
- フォーマット済みレポートを出力
- 必要に応じてクリップボードにコピー
使用例
例1: シンプルな日報
ユーザー: 「今日の日報を作って」
アクション: git log実行 → 分類 → デイリースタンドアップ形式で出力
例2: Slack用週報
ユーザー: 「今週の作業をSlack用にまとめて」
アクション: 7日間のgit log → サマリー作成 → Slack形式で出力
例3: 詳細レポート
ユーザー: 「今週何をやったか詳しく教えて」
アクション: 週次log → 各コミットの説明付きで出力
成功基準
- すべてのコミットが適切にカテゴリ分類されている
- 出力が選択されたフォーマットに従っている
- 曖昧な表現がない
- コピペでそのまま使える状態
制限事項
- Gitリポジトリ内でのみ動作
git config user.nameが設定されている必要あり- リモートリポジトリへのアクセスは不要(ローカルログのみ)